调整经销商详情
parent
76b1da0907
commit
c2210845e7
|
|
@ -4,8 +4,12 @@ namespace App\Admin\Controllers;
|
||||||
|
|
||||||
use App\Admin\Actions\Grid\DealerBonds;
|
use App\Admin\Actions\Grid\DealerBonds;
|
||||||
use App\Admin\Actions\Grid\DealerEditLvl;
|
use App\Admin\Actions\Grid\DealerEditLvl;
|
||||||
|
use App\Admin\Renderable\DealerEarningSimpleTable;
|
||||||
|
use App\Admin\Renderable\DealerUserProductLogSimpleTable;
|
||||||
use App\Admin\Repositories\Dealer;
|
use App\Admin\Repositories\Dealer;
|
||||||
use App\Enums\DealerLvl;
|
use App\Enums\DealerLvl;
|
||||||
|
use App\Models\Dealer as DealerModel;
|
||||||
|
use App\Models\DealerUserProduct;
|
||||||
use Dcat\Admin\Admin;
|
use Dcat\Admin\Admin;
|
||||||
use Dcat\Admin\Form;
|
use Dcat\Admin\Form;
|
||||||
use Dcat\Admin\Grid;
|
use Dcat\Admin\Grid;
|
||||||
|
|
@ -159,13 +163,31 @@ class DealerController extends AdminController
|
||||||
}));
|
}));
|
||||||
});
|
});
|
||||||
$row->column(7, function ($column) use ($id) {
|
$row->column(7, function ($column) use ($id) {
|
||||||
|
$dealer = DealerModel::findOrFail($id);
|
||||||
$tab = Tab::make();
|
$tab = Tab::make();
|
||||||
// 预收益明细
|
// 资金记录
|
||||||
$tab->add('剩余库存', '');
|
$tab->add('资金记录', new DealerEarningSimpleTable(['id'=>$dealer->user_id]));
|
||||||
// 可提明细
|
// 剩余库存
|
||||||
$tab->add('资金记录', '');
|
$builder = DealerUserProduct::query();
|
||||||
|
$builder->with(['product'])->where('user_id', $dealer->user_id);
|
||||||
|
$productGrid = Grid::make($builder, function (Grid $grid) {
|
||||||
|
$grid->column('product.name', '商品名称');
|
||||||
|
$grid->column('product.cover', '商品封面')->image(80, 80);
|
||||||
|
$grid->column('stock', '剩余库存');
|
||||||
|
$grid->column('created_at', '创建时间');
|
||||||
|
$grid->column('logs', '库存记录')->display('查看')->modal(function ($modal) {
|
||||||
|
$modal->title('商品');
|
||||||
|
return DealerUserProductLogSimpleTable::make(['product_id'=>$this->product_id, 'id'=> $this->user_id]);
|
||||||
|
});
|
||||||
|
// $grid->withBorder();
|
||||||
|
$grid->model()->orderBy('created_at', 'desc');
|
||||||
|
$grid->disableRefreshButton();
|
||||||
|
$grid->disableActions();
|
||||||
|
$grid->disablePagination();
|
||||||
|
});
|
||||||
|
$tab->add('剩余库存', $productGrid);
|
||||||
// 上级列表
|
// 上级列表
|
||||||
$tab->add('上级列表', '');
|
// $tab->add('上级列表', '');
|
||||||
$column->row(Box::make('用户记录', $tab));
|
$column->row(Box::make('用户记录', $tab));
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -294,7 +294,7 @@ class OrderController extends AdminController
|
||||||
$grid->disablePagination();
|
$grid->disablePagination();
|
||||||
$grid->disableRefreshButton();
|
$grid->disableRefreshButton();
|
||||||
});
|
});
|
||||||
$packageBuilder = OrderPackage::with('packageProducts')->where('order_id', $id);
|
$packageBuilder = OrderPackage::where('order_id', $id);
|
||||||
$packageGrid = Grid::make($packageBuilder, function (Grid $grid) {
|
$packageGrid = Grid::make($packageBuilder, function (Grid $grid) {
|
||||||
$grid->column('shipping_company', '物流公司');
|
$grid->column('shipping_company', '物流公司');
|
||||||
$grid->column('shipping_number', '物流单号');
|
$grid->column('shipping_number', '物流单号');
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,60 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Admin\Renderable;
|
||||||
|
|
||||||
|
use App\Models\DealerEarning;
|
||||||
|
use Dcat\Admin\Grid;
|
||||||
|
use Dcat\Admin\Grid\LazyRenderable;
|
||||||
|
use Dcat\Admin\Widgets\Card;
|
||||||
|
|
||||||
|
class DealerEarningSimpleTable extends LazyRenderable
|
||||||
|
{
|
||||||
|
public function grid(): Grid
|
||||||
|
{
|
||||||
|
$userId = $this->payload['id']??0;
|
||||||
|
$builder = DealerEarning::query();
|
||||||
|
// dd($userId);
|
||||||
|
$builder->with(['user', 'payer'])->where(function ($q) use ($userId) {
|
||||||
|
return $q->where('user_id', $userId)->orWhere('payer_id', $userId);
|
||||||
|
});
|
||||||
|
return Grid::make($builder, function (Grid $grid) {
|
||||||
|
$grid->column('user.phone', '收款人');
|
||||||
|
$grid->column('payer_id', '付款人')->display(function () {
|
||||||
|
return $this->payer_id ? $this->payer?->phone : '公司';
|
||||||
|
});
|
||||||
|
$grid->column('type_name', '资金类型')->display(function () {
|
||||||
|
return $this->type_name;
|
||||||
|
})->label();
|
||||||
|
$grid->column('remark', '备注')->display('详情') // 设置按钮名称
|
||||||
|
->expand(function () {
|
||||||
|
// 这里返回 content 字段内容,并用 Card 包裹起来
|
||||||
|
$card = new Card(null, $this->remark);
|
||||||
|
|
||||||
|
return "<div style='padding:10px 10px 0;text-align: center'>$card</div>";
|
||||||
|
});
|
||||||
|
$grid->column('lvl')->display(function () {
|
||||||
|
return $this->lvl->text();
|
||||||
|
});
|
||||||
|
// $grid->column('total_amount', '总金额')->prepend('¥');
|
||||||
|
// $grid->column('fee_rate', '手续费率')->append('%');
|
||||||
|
// $grid->column('fee', '手续费')->prepend('¥');
|
||||||
|
$grid->column('total_earnings', '实际金额')->prepend('¥');
|
||||||
|
$grid->column('status_format', '状态')->display(function ($value) {
|
||||||
|
return $this->status_format;
|
||||||
|
})->using([
|
||||||
|
-1=> '待结算',
|
||||||
|
0 => '待打款',
|
||||||
|
1 => '待收款',
|
||||||
|
2 => '已完成',
|
||||||
|
])->dot();
|
||||||
|
$grid->column('created_at', '创建时间');
|
||||||
|
$grid->column('id', '操作')->display('查看')->link(function ($value) {
|
||||||
|
return admin_route('dealer_earnings.show', ['dealer_earning' => $this->id]);
|
||||||
|
});
|
||||||
|
// $grid->withBorder();
|
||||||
|
$grid->model()->orderBy('created_at', 'desc');
|
||||||
|
$grid->disableRefreshButton();
|
||||||
|
$grid->disableActions();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,32 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Admin\Renderable;
|
||||||
|
|
||||||
|
use App\Models\DealerUserProductLog;
|
||||||
|
use Dcat\Admin\Grid;
|
||||||
|
use Dcat\Admin\Grid\LazyRenderable;
|
||||||
|
|
||||||
|
class DealerUserProductLogSimpleTable extends LazyRenderable
|
||||||
|
{
|
||||||
|
public function grid(): Grid
|
||||||
|
{
|
||||||
|
$userId = $this->payload['id'] ?? 0;
|
||||||
|
$productId = $this->payload['product_id'] ?? 0;
|
||||||
|
|
||||||
|
$builder = DealerUserProductLog::query();
|
||||||
|
$builder->with(['product'])->where(['user_id'=>$userId, 'product_id'=>$productId]);
|
||||||
|
return Grid::make($builder, function (Grid $grid) {
|
||||||
|
$grid->column('product.name', '商品名称');
|
||||||
|
$grid->column('remark', '备注');
|
||||||
|
$grid->column('qty', '变动数量')->display(function () {
|
||||||
|
return ($this->type == DealerUserProductLog::TYPE_ORDER_IN ? '+' : '-').$this->qty.$this->product?->unit;
|
||||||
|
});
|
||||||
|
$grid->column('created_at', '创建时间');
|
||||||
|
|
||||||
|
// $grid->withBorder();
|
||||||
|
$grid->model()->orderBy('created_at', 'desc');
|
||||||
|
$grid->disableRefreshButton();
|
||||||
|
$grid->disableActions();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,32 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Admin\Renderable;
|
||||||
|
|
||||||
|
use App\Models\DealerUserProduct;
|
||||||
|
use Dcat\Admin\Grid;
|
||||||
|
use Dcat\Admin\Grid\LazyRenderable;
|
||||||
|
|
||||||
|
class DealerUserProductSimpleTable extends LazyRenderable
|
||||||
|
{
|
||||||
|
public function grid(): Grid
|
||||||
|
{
|
||||||
|
$userId = $this->payload['id']??0;
|
||||||
|
$builder = DealerUserProduct::query();
|
||||||
|
$builder->with(['product'])->where('user_id', $userId);
|
||||||
|
return Grid::make($builder, function (Grid $grid) {
|
||||||
|
$grid->column('product.name', '商品名称');
|
||||||
|
$grid->column('product.cover', '商品封面')->image(80, 80);
|
||||||
|
$grid->column('stock', '剩余库存');
|
||||||
|
$grid->column('created_at', '创建时间');
|
||||||
|
$grid->column('logs', '库存记录')->display('查看')->modal(function ($modal) {
|
||||||
|
$modal->title('库存记录');
|
||||||
|
return DealerUserProductLogSimpleTable::make(['product_id'=>$this->product_id, 'user_id'=> $this->user_id]);
|
||||||
|
});
|
||||||
|
// $grid->withBorder();
|
||||||
|
$grid->model()->orderBy('created_at', 'desc');
|
||||||
|
$grid->disableRefreshButton();
|
||||||
|
$grid->disableActions();
|
||||||
|
$grid->disablePagination();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -2,12 +2,14 @@
|
||||||
|
|
||||||
namespace App\Models;
|
namespace App\Models;
|
||||||
|
|
||||||
|
use Dcat\Admin\Traits\HasDateTimeFormatter;
|
||||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||||
use Illuminate\Database\Eloquent\Model;
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
|
||||||
class DealerUserProduct extends Model
|
class DealerUserProduct extends Model
|
||||||
{
|
{
|
||||||
use HasFactory;
|
use HasFactory;
|
||||||
|
use HasDateTimeFormatter;
|
||||||
|
|
||||||
protected $fillable = [
|
protected $fillable = [
|
||||||
'user_id',
|
'user_id',
|
||||||
|
|
|
||||||
|
|
@ -307,7 +307,7 @@ class AdminMenuSeeder extends Seeder
|
||||||
[
|
[
|
||||||
'title' =>'系统订单',
|
'title' =>'系统订单',
|
||||||
'icon' => '',
|
'icon' => '',
|
||||||
'uri' => 'dealer-manager-orders?type=manager',
|
'uri' => 'dealer-manager-orders?type=manager&filter-status[]=2&filter-status[]=3',
|
||||||
],
|
],
|
||||||
// [
|
// [
|
||||||
// 'title' =>'用户资金',
|
// 'title' =>'用户资金',
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue