diff --git a/app/Admin/Controllers/v3/StoreController.php b/app/Admin/Controllers/v3/StoreController.php index c7da7aa..7a1b7ac 100644 --- a/app/Admin/Controllers/v3/StoreController.php +++ b/app/Admin/Controllers/v3/StoreController.php @@ -19,6 +19,8 @@ use App\Models\v3\Category as CategoryModel; use App\Models\LanzuUserBalance as UserBalanceModel; use App\Models\v3\StoreUsers as StoreUsersModel; use App\Admin\Actions\Grid\v3\StoreSetTime; +use App\Admin\Renderable\StoreBalance; +use Dcat\Admin\Widgets\LazyTable; class StoreController extends AdminController { @@ -49,6 +51,18 @@ class StoreController extends AdminController $grid->id->sortable(); $grid->logo_url->image('',50); $grid->name->width('12%'); + + $grid->column('user_id','余额')->display(function($userId){ + $userId = $this->user_id; + // 查询店铺余额 + $moneyType = 5;// 商户类型 + $balance = UserBalanceModel::getBalance($userId, $moneyType); + return $balance; + })->modal(function($modal){ + $modal->title('商户余额'); + $table = LazyTable::make(StoreBalance::make(['user_id'=>$this->user_id]))->simple(); + return $table; + }); $grid->market_id->display(function ($marketId) use($marketList){ return isset($marketList[$marketId]) ? $marketList[$marketId] : ''; @@ -76,7 +90,6 @@ class StoreController extends AdminController }); // ->image('',50); - $grid->sort->sortable(); $grid->is_rest->switch(); $grid->is_open->switch(); diff --git a/app/Admin/Renderable/StoreBalance.php b/app/Admin/Renderable/StoreBalance.php new file mode 100644 index 0000000..9335321 --- /dev/null +++ b/app/Admin/Renderable/StoreBalance.php @@ -0,0 +1,76 @@ +user_id ?? 0; + + // $data = FinancialRecord::getFinancialRecordModel($userId) + // ::select('user_id','user_type','current_balance','money','money_type','desc','comment','status','created_at') + // ->whereRaw('user_type ='.Type::USER_TYPE_STORE) + // ->where('source_type',Type::SOURCE_TYPE_ORDER) + // ->where('money_type',Type::MONEY_TYPE_STORE_PLAT_NEW_USER) + // ->orderBy('id','desc') + // ->get()->toArray(); + + // return Table::make($this->titles, $data); + return $this->grid(); + } + + public function grid(): Grid + { + // 获取外部传递的参数 + $userId = $this->payload['user_id'] ?? 0; + $model = FinancialRecord::getFinancialRecordModel($userId); + return Grid::make($model, function (Grid $grid) { + $grid->user_type; + $grid->current_balance; + $grid->money; + $grid->money_type; + $grid->comment; + $grid->status; + $grid->created_at->display(function($createdAt){ + return date('Y-m-d H:i:s',$createdAt); + }); + // 搜索 + $grid->filter(function (Grid\Filter $filter){ + $filter->panel(); + $filter->equal('money_type'); + $filter->equal('user_type'); + }); + $grid->model()->orderBy('id','desc'); + // 每页10条 + $grid->paginate(10); + + $grid->disableCreateButton(); + $grid->disableDeleteButton(); + $grid->disableEditButton(); + $grid->disableQuickEditButton(); + $grid->disableViewButton(); + $grid->disableActions(); + $grid->disableRowSelector(); + }); + } + + public function default() + { + // 获取外部传递的参数 + $userId = $this->payload['user_id'] ?? 0; + + return [ + 'user_id' => $userId, + ]; + } +} \ No newline at end of file