You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
<?php
namespace App\Admin\Repositories\v3;
use App\Models\v3\Coupon as Model;use Dcat\Admin\Grid\Model as GridModel;use Dcat\Admin\Repositories\EloquentRepository;use App\Models\v3\CouponUse as CouponUseModel;use Illuminate\Support\Facades\DB;
class Coupon extends EloquentRepository{ /** * Model. * * @var string */ protected $eloquentClass = Model::class;
/** * 查询Grid表格数据. * * @param Grid\Model $model * * @return \Illuminate\Contracts\Pagination\LengthAwarePaginator|Collection|array */ public function get(GridModel $model) { $this->setSort($model); $this->setPaginate($model);
$query = $this->newQuery();
if ($this->relations) { $query->with($this->relations); }
$model->getQueries()->unique()->each(function ($value) use (&$query) { if ($value['method'] == 'paginate') { $value['arguments'][1] = $this->getGridColumns(); } elseif ($value['method'] == 'get') { $value['arguments'] = [$this->getGridColumns()]; }
$query = call_user_func_array([$query, $value['method']], $value['arguments'] ?? []); });
// dd(CouponUseModel::where('system_coupon_id',16)->sum('number'));
// $u = DB::table('ims_system_coupon_user_use')->where('system_coupon_id',16)->count('number');
// dd($u);
// $list = $query->toArray();
// foreach($list as &$value){
// // 查询使用数量
// $value['use_total'] = CouponUseModel::where('system_coupon_id',16)->count('number');
// dd( $value['use_total'] );
// }
return $query; }}
|