添加打款单导出
parent
9cb4f693cc
commit
0575f450d2
|
|
@ -0,0 +1,44 @@
|
|||
<?php
|
||||
|
||||
namespace App\Admin\Actions\Grid\Exports;
|
||||
|
||||
use Dcat\Admin\Actions\Response;
|
||||
use Dcat\Admin\Grid\RowAction;
|
||||
use Dcat\Admin\Traits\HasPermissions;
|
||||
use Illuminate\Contracts\Auth\Authenticatable;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class DealerWalletWithdraw extends RowAction
|
||||
{
|
||||
public function title()
|
||||
{
|
||||
if ($this->title) {
|
||||
return $this->title;
|
||||
}
|
||||
return '<i class="feather grid-action-icon icon-download"></i> 导出打款单 ';
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Model|Authenticatable|HasPermissions|null $user
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
protected function authorize($user): bool
|
||||
{
|
||||
return $user->can('dcat.admin.dealer_wallet_to_bank_logs.export');
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle the action request.
|
||||
*
|
||||
* @param Request $request
|
||||
*
|
||||
* @return Response
|
||||
*/
|
||||
public function handle(Request $request)
|
||||
{
|
||||
$last_path_arr = parse_url(session('admin.prev.url'));
|
||||
return $this->response()->download(admin_route('dealer_wallet_to_bank_logs.export').'?'.$last_path_arr['query']);
|
||||
}
|
||||
}
|
||||
|
|
@ -2,15 +2,18 @@
|
|||
|
||||
namespace App\Admin\Controllers;
|
||||
|
||||
use App\Admin\Actions\Grid\Exports\DealerWalletWithdraw;
|
||||
use App\Admin\Actions\Show\DealerWalletPay;
|
||||
use App\Admin\Actions\Show\DealerWalletRefuse;
|
||||
use App\Admin\Repositories\DealerWalletToBankLog;
|
||||
use App\Models\DealerWalletToBankLog as DealerWalletToBankLogModel;
|
||||
use Box\Spout\Writer\Common\Creator\WriterEntityFactory;
|
||||
use Dcat\Admin\Admin;
|
||||
use Dcat\Admin\Form;
|
||||
use Dcat\Admin\Grid;
|
||||
use Dcat\Admin\Http\Controllers\AdminController;
|
||||
use Dcat\Admin\Show;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class DealerWalletToBankLogController extends AdminController
|
||||
{
|
||||
|
|
@ -23,6 +26,9 @@ class DealerWalletToBankLogController extends AdminController
|
|||
{
|
||||
$builder = DealerWalletToBankLog::with(['user']);
|
||||
return Grid::make($builder, function (Grid $grid) {
|
||||
$grid->tools(function (Grid\Tools $tools) {
|
||||
$tools->append(new DealerWalletWithdraw());
|
||||
});
|
||||
$grid->column('id')->sortable();
|
||||
$grid->column('user.phone');
|
||||
$grid->column('amount')->prepend('¥');
|
||||
|
|
@ -169,4 +175,53 @@ class DealerWalletToBankLogController extends AdminController
|
|||
$form->display('updated_at');
|
||||
});
|
||||
}
|
||||
|
||||
public function export(Request $request)
|
||||
{
|
||||
return response()->streamDownload(function () use ($request) {
|
||||
$writer = WriterEntityFactory::createXLSXWriter();
|
||||
$writer->openToBrowser('打款单'.date('Ymd').'.xlsx');
|
||||
$writer->addRow(WriterEntityFactory::createRowFromArray([
|
||||
'提现手机号', '打款金额', '收款人', '收款银行', '收款账号', '开户行', '提现时间',
|
||||
]));
|
||||
$query = DealerWalletToBankLogModel::with('dealer', 'user');
|
||||
foreach ($request->input() as $key => $value) {
|
||||
dump($key);
|
||||
switch ($key) {
|
||||
case 'created_at':
|
||||
$query->whereBetween('created_at', $value);
|
||||
break;
|
||||
case 'status':
|
||||
if ($value) {
|
||||
$query->where('status', $value);
|
||||
}
|
||||
break;
|
||||
case 'user':
|
||||
if (is_array($value)) {
|
||||
foreach ($value as $kk =>$vv) {
|
||||
$query->whereHas($key, function ($q) use ($kk, $vv) {
|
||||
if ($vv) {
|
||||
$q->where($kk, $vv);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
foreach ($query->cursor() as $log) {
|
||||
$payInfo = $log->getPayInfo();
|
||||
$writer->addRow(WriterEntityFactory::createRowFromArray([
|
||||
$log->user->phone,
|
||||
$log->account_amount,
|
||||
$payInfo ? $payInfo['bank']['user_name'] : '',
|
||||
$payInfo ? $payInfo['bank']['bank_name'] : '',
|
||||
$payInfo ? $payInfo['bank']['bank_number'] : '',
|
||||
$payInfo ? $payInfo['bank']['bank_description'] : '',
|
||||
$log->created_at->toDateTimeString(),
|
||||
]));
|
||||
};
|
||||
$writer->close();
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -429,7 +429,7 @@ class OrderController extends AdminController
|
|||
{
|
||||
return response()->streamDownload(function () {
|
||||
$writer = WriterEntityFactory::createXLSXWriter();
|
||||
$writer->openToBrowser('测试'.date('Ymd').'.xlsx');
|
||||
$writer->openToBrowser('发货单'.date('Ymd').'.xlsx');
|
||||
|
||||
$writer->addRow(WriterEntityFactory::createRowFromArray([
|
||||
'订单编号', '下单手机号', '商品编号', '商品名称', '数量', '姓名', '电话', '地址', '下单时间', '快递公司', '发货单号', '发货数量',
|
||||
|
|
|
|||
|
|
@ -77,7 +77,7 @@ class ProductSpuController extends AdminController
|
|||
/** 查询 **/
|
||||
$grid->filter(function (Grid\Filter $filter) {
|
||||
$filter->panel();
|
||||
$filter->equal('name')->width(3);
|
||||
$filter->like('name')->width(3);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
|
|
|||
|
|
@ -187,6 +187,7 @@ Route::group([
|
|||
$router->get('dealer-purchase-logs', 'DealerPurchaseLogController@index')->name('dealer_purchase_logs.index');
|
||||
|
||||
//批零余额提现
|
||||
$router->get('dealer-wallet-to-bank-logs/export', 'DealerWalletToBankLogController@export')->name('dealer_wallet_to_bank_logs.export');
|
||||
$router->resource('dealer-wallet-to-bank-logs', 'DealerWalletToBankLogController')->only([
|
||||
'index', 'show',
|
||||
])->names('dealer_wallet_to_bank_logs');
|
||||
|
|
|
|||
|
|
@ -37,6 +37,11 @@ class DealerWalletToBankLog extends Model
|
|||
return $this->belongsTo(User::class);
|
||||
}
|
||||
|
||||
public function dealer()
|
||||
{
|
||||
return $this->belongsTo(Dealer::class, 'user_id', 'user_id');
|
||||
}
|
||||
|
||||
/**
|
||||
* 待打款状态
|
||||
*
|
||||
|
|
|
|||
Loading…
Reference in New Issue