From 680bae71f8707462cb7f3f67a4be0eafde47c6a3 Mon Sep 17 00:00:00 2001 From: liangyuyan <1103300295@qq.com> Date: Thu, 12 Nov 2020 17:59:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B4=BB=E5=8A=A8=E5=95=86=E5=93=81=E7=BB=9F?= =?UTF-8?q?=E8=AE=A1--=E4=BF=AE=E6=94=B9=E9=87=87=E8=B4=AD=E4=BB=B7?= =?UTF-8?q?=E4=BB=8E=E6=B4=BB=E5=8A=A8=E5=95=86=E5=93=81=E8=A1=A8=E6=8B=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Admin/Repositories/v3/GoodsActivityReport.php | 12 +++++++----- app/Models/v3/GoodsActivity.php | 1 + 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/app/Admin/Repositories/v3/GoodsActivityReport.php b/app/Admin/Repositories/v3/GoodsActivityReport.php index b6929e9..c2d6431 100644 --- a/app/Admin/Repositories/v3/GoodsActivityReport.php +++ b/app/Admin/Repositories/v3/GoodsActivityReport.php @@ -8,6 +8,7 @@ use Dcat\Admin\Repositories\EloquentRepository; use Illuminate\Support\Facades\DB; use App\Models\ImsCjdcOrderMain as OrderMainModel; use App\Models\ImsCjdcOrder as OrderModel; +use App\Models\v3\GoodsActivity as GoodsActivityModel; class GoodsActivityReport extends EloquentRepository { @@ -39,9 +40,9 @@ class GoodsActivityReport extends EloquentRepository $where = ['market_id'=>$this->params['market_id']]; } - $selects = 'SUM(number) as total,SUM((purchase_price-price)*number) as subsidy_total,price,purchase_price,'.Model::$tableName.'.goods_id,'.Model::$tableName.'.name,'.Model::$tableName.'.cover_img,'.OrderMainModel::$tableName.'.market_id,'.OrderModel::$tableName.'.store_id'; + $selects = 'SUM(number) as total,SUM(('.GoodsActivityModel::TABLE_NAME.'.purchase_price-'.Model::$tableName.'.price)*number) as subsidy_total,'.Model::$tableName.'.price,'.GoodsActivityModel::TABLE_NAME.'.purchase_price,'.Model::$tableName.'.goods_id,'.Model::$tableName.'.name,'.Model::$tableName.'.cover_img,'.OrderMainModel::$tableName.'.market_id,'.OrderModel::$tableName.'.store_id'; $orderGoodsActivity = $this->getDataModel($selects,$where); - $list = $orderGoodsActivity->orderBy('total','desc')->groupBy('goods_id',Model::$tableName.'.name','cover_img','market_id','store_id','price','purchase_price')->paginate($perPage); + $list = $orderGoodsActivity->orderBy('total','desc')->groupBy('goods_id',Model::$tableName.'.name','cover_img',OrderMainModel::$tableName.'.market_id','store_id',Model::$tableName.'.price',GoodsActivityModel::TABLE_NAME.'.purchase_price')->paginate($perPage); $list = $list->toArray(); return $model->makePaginator( @@ -65,6 +66,7 @@ class GoodsActivityReport extends EloquentRepository $orderGoodsActivity = Model::select(DB::raw($selects)) ->join(OrderModel::$tableName,Model::$tableName.'.order_id','=',OrderModel::$tableName.'.id') ->join(OrderMainModel::$tableName,OrderModel::$tableName.'.order_main_id','=',OrderMainModel::$tableName.'.global_order_id') + ->join(GoodsActivityModel::TABLE_NAME,Model::$tableName.'.goods_id','=',GoodsActivityModel::TABLE_NAME.'.id') ->where(Model::$tableName.'.activity_type',2) ->where(Model::$tableName.'.status',1) ->whereIn(OrderMainModel::$tableName.'.state',[4,5,10,11]); @@ -101,7 +103,7 @@ class GoodsActivityReport extends EloquentRepository */ public function getCountData($params = []) { - $selects = "SUM(".Model::$tableName.".number) as total,SUM((purchase_price-price)*number) as subsidy_total,FROM_UNIXTIME(".Model::$tableName.".created_at,'%Y-%m-%d') as dtime"; + $selects = "SUM(".Model::$tableName.".number) as total,SUM((".GoodsActivityModel::TABLE_NAME.".purchase_price-".Model::$tableName.".price)*number) as subsidy_total,FROM_UNIXTIME(".Model::$tableName.".created_at,'%Y-%m-%d') as dtime"; $orderGoodsActivity = $this->getDataModel($selects,$params); $total = $orderGoodsActivity->orderBy('dtime','desc')->groupBy('dtime')->get()->toArray(); @@ -113,9 +115,9 @@ class GoodsActivityReport extends EloquentRepository */ public function getMarketData($params = []) { - $selects = "SUM(".Model::$tableName.".number) as total,SUM((purchase_price-price)*number) as subsidy_total,market_id"; + $selects = "SUM(".Model::$tableName.".number) as total,SUM((".GoodsActivityModel::TABLE_NAME.".purchase_price-".Model::$tableName.".price)*number) as subsidy_total,".OrderMainModel::$tableName.".market_id"; $orderGoodsActivity = $this->getDataModel($selects,$params); - $total = $orderGoodsActivity->groupBy('market_id')->get()->toArray(); + $total = $orderGoodsActivity->groupBy(OrderMainModel::$tableName.'.market_id')->get()->toArray(); return $total ?? []; } diff --git a/app/Models/v3/GoodsActivity.php b/app/Models/v3/GoodsActivity.php index 2187296..511f07a 100644 --- a/app/Models/v3/GoodsActivity.php +++ b/app/Models/v3/GoodsActivity.php @@ -11,6 +11,7 @@ class GoodsActivity extends Model use HasDateTimeFormatter; use SoftDeletes; + const TABLE_NAME = 'lanzu_goods_activity'; protected $table = 'lanzu_goods_activity'; protected $dateFormat = 'U'; protected $appends = [