From 50825913771e6e470805932899d5670a62401923 Mon Sep 17 00:00:00 2001 From: lanzu_qinsheng <334039090@qq.com> Date: Mon, 21 Sep 2020 15:48:49 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=A4=BE=E5=8C=BA?= =?UTF-8?q?=E7=AB=99=E7=82=B9=E6=95=B0=E6=8D=AE=E5=8D=A1=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Admin/Controllers/HomeController.php | 18 +++- .../ImsCjdcOrderMainController.php | 2 +- .../Metrics/Examples/Community/TotalUser.php | 8 +- .../Metrics/Examples/Order/OrderData.php | 93 ++++++++++++------- 4 files changed, 80 insertions(+), 41 deletions(-) diff --git a/app/Admin/Controllers/HomeController.php b/app/Admin/Controllers/HomeController.php index b1f42f2..8e2bf6d 100644 --- a/app/Admin/Controllers/HomeController.php +++ b/app/Admin/Controllers/HomeController.php @@ -7,6 +7,7 @@ use App\Admin\Common\Type; use App\Admin\Metrics\Examples; use App\Http\Controllers\Controller; use App\Models\LanzuMpInfo; +use App\Models\LanzuUserRelationBind; use App\Models\v3\Market; use Dcat\Admin\Controllers\Dashboard; use Dcat\Admin\Layout\Column; @@ -118,15 +119,26 @@ class HomeController extends Controller protected function lanzu_cs(Content $content) { + $uid = LanzuUserRelationBind::where('source_id',Admin::user()->id)->pluck('user_id')->toArray();//获取绑定社区的所有用户 return $content->header('控制面板') ->description('欢迎回到懒族后台') - ->body(function (Row $row) { - $row->column(4, function (Column $column) { + ->body(function (Row $row) use ($uid) { + $row->column(3, function (Column $column) { $column->row(new Examples\Community\TotalAmount(Admin::user()->id,Type::BALANCE_USER_TYPE_CS)); }); - $row->column(4, function (Column $column) { + $row->column(3, function (Column $column) { $column->row(new Examples\Community\TotalUser()); }); + $row->column(3, function (Column $column) use ($uid) { + $column->row(new Examples\Order\OrderData('user',null,'下单人数',$uid)); + }); + $row->column(3, function (Column $column) use ($uid) { + $column->row(new Examples\Order\OrderData('number',null,'订单数',$uid)); + }); + $row->column(3, function (Column $column) use ($uid) { + $column->row(new Examples\Order\OrderData('amount',null,'订单金额(元)',$uid)); + }); + }); } diff --git a/app/Admin/Controllers/ImsCjdcOrderMainController.php b/app/Admin/Controllers/ImsCjdcOrderMainController.php index 0a268c2..6cc972e 100644 --- a/app/Admin/Controllers/ImsCjdcOrderMainController.php +++ b/app/Admin/Controllers/ImsCjdcOrderMainController.php @@ -159,7 +159,7 @@ class ImsCjdcOrderMainController extends AdminController $detail = MyDetailPage::make(['order_id' => $oid]); return $content->header('订单详情') ->breadcrumb( - ['text' => '列表', 'url' => "order?page={$page}"], + ['text' => '返回', 'url' => "order?page={$page}"], ['text' => '详情', 'url' => 'detail'] ) ->body(Lazy::make($detail)); diff --git a/app/Admin/Metrics/Examples/Community/TotalUser.php b/app/Admin/Metrics/Examples/Community/TotalUser.php index e186c71..7ac558c 100644 --- a/app/Admin/Metrics/Examples/Community/TotalUser.php +++ b/app/Admin/Metrics/Examples/Community/TotalUser.php @@ -10,10 +10,16 @@ use Dcat\Admin\Widgets\Metrics\Card; class TotalUser extends Card { + public function __construct($title = null, $icon = null) + { + parent::__construct($title, $icon); + } + + protected function init() { parent::init(); - $this->title = '社区绑定用户数'; + $this->title = '绑定人数'; $adu = Admin::user(); if ($adu->isRole('lanzu_cs')){ $this->content(LanzuUserRelationBind::getCount($adu->id)); diff --git a/app/Admin/Metrics/Examples/Order/OrderData.php b/app/Admin/Metrics/Examples/Order/OrderData.php index 771e803..9001f5b 100644 --- a/app/Admin/Metrics/Examples/Order/OrderData.php +++ b/app/Admin/Metrics/Examples/Order/OrderData.php @@ -1,6 +1,6 @@ title = $title; $this->data_type = $data_type; $this->market_id = $market_id; + $this->user_ids = $uid; parent::__construct($title, $icon); } @@ -26,11 +29,13 @@ class OrderData extends Card { parent::init(); // TODO: Change the autogenerated stub $this->dropdown([ - '1'=>'今日', - '-1'=>'昨日', - '7'=>'过去一周', - '30'=>'本月', - '-30'=>'上月' + '1' => '今日', + '-1' => '昨日', + '7' => '最近7天', + 'w' => '本周', + 'lw' => '上周', + '30' => '本月', + '-30' => '上月' ]); } @@ -40,64 +45,79 @@ class OrderData extends Card $type = $request->get('option');//数据选项 $data_type = $request->get('data_type');//数据类型 $market_id = $request->get('market_id');//市场id - $this->content($this->orderNum($data_type,$type,$market_id)); + $user_ids = $request->get('user_ids');//市场id + $this->content($this->orderNum($data_type, $type, $market_id, $user_ids)); } - public function orderDataBuild($type=null,$marketId=null) + public function orderDataBuild($type = null, $marketId = null, $user_ids = []) { $where = []; $where['type'] = 1; - if ($marketId){ - if (is_array($marketId)){ - $where[] = ['in'=>['market_id'=>$marketId]]; - }else{ + if ($marketId) { + if (is_array($marketId)) { + $where[] = ['in' => ['market_id' => $marketId]]; + } else { $where['market_id'] = $marketId; } } + if (count($user_ids)) { + $where[] = ['in' => ['user_id' => $user_ids]]; + } - switch ($type){ + switch ($type) { case '1': - $beginTime=mktime(0,0,0,date('m'),date('d'),date('Y')); - $endTime=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1; + $beginTime = mktime(0, 0, 0, date('m'), date('d'), date('Y')); + $endTime = mktime(0, 0, 0, date('m'), date('d') + 1, date('Y')) - 1; break; case '-1': - $beginTime=mktime(0,0,0,date('m'),date('d')-1,date('Y')); - $endTime=mktime(0,0,0,date('m'),date('d'),date('Y'))-1; + $beginTime = mktime(0, 0, 0, date('m'), date('d') - 1, date('Y')); + $endTime = mktime(0, 0, 0, date('m'), date('d'), date('Y')) - 1; break; case '7': - $beginTime=mktime(0,0,0,date('m'),date('d')-7,date('Y')); - $endTime=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1; + $beginTime = mktime(0, 0, 0, date('m'), date('d') - 7, date('Y')); + $endTime = mktime(0, 0, 0, date('m'), date('d') + 1, date('Y')) - 1; + break; + case 'w': + $beginTime = mktime(0, 0, 0, date("m"), date("d") - date("w") + 1, date("Y")); + $endTime = mktime(23, 59, 59, date("m"), date("d") - date("w") + 7, date("Y")); + break; + case 'lw': + $beginTime = mktime(0, 0, 0, date("m"), date("d") - date("w") + 1 - 7, date("Y")); + $endTime = mktime(23, 59, 59, date("m"), date("d") - date("w") + 7 - 7, date("Y")); break; case '30': - $beginTime=mktime(0,0,0,date('m'),1,date('Y')); - $endTime=mktime(23,59,59,date('m'),date('t'),date('Y')); + $beginTime = mktime(0, 0, 0, date('m'), 1, date('Y')); + $endTime = mktime(23, 59, 59, date('m'), date('t'), date('Y')); break; case '-30': - $beginTime=mktime(0,0,0,date('m')-1,1,date('Y')); - $endTime=strtotime(date("Y-m-d H:i:s",mktime(23,59,59,date("m") ,0,date("Y")))); + $beginTime = mktime(0, 0, 0, date('m') - 1, 1, date('Y')); + $endTime = strtotime(date("Y-m-d H:i:s", mktime(23, 59, 59, date("m"), 0, date("Y")))); break; default: - $beginTime=mktime(0,0,0,date('m'),date('d'),date('Y')); - $endTime=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1; + $beginTime = mktime(0, 0, 0, date('m'), date('d'), date('Y')); + $endTime = mktime(0, 0, 0, date('m'), date('d') + 1, date('Y')) - 1; break; } $build = ImsCjdcOrderMain - ::whereBetween('created_at',[$beginTime,$endTime]) - ->whereIn('state',[3,4,5,10]) + ::whereBetween('created_at', [$beginTime, $endTime]) + ->whereIn('state', [3, 4, 5, 10]) ->where($where); return $build; } - public function orderNum($data_type,$type,$marketId) + public function orderNum($data_type, $type, $marketId, $user_ids) { - $build = $this->orderDataBuild($type,$marketId); - if ($data_type=='number'){ + $build = $this->orderDataBuild($type, $marketId, $user_ids); + if ($data_type == 'number') { $result = $build->count(); - }elseif ($data_type=='amount'){ + } elseif ($data_type == 'amount') { $result = $build->sum('money'); - }else{ + } elseif ($data_type == 'user') { + $result = $build->groupBy('user_id')->pluck('user_id')->toArray(); + $result = count($result); + } else { $result = 0; } return $result; @@ -105,11 +125,12 @@ class OrderData extends Card // 传递自定义参数到 handle 方法 - public function parameters() : array + public function parameters(): array { return [ - 'data_type'=>$this->data_type, - 'market_id'=>$this->market_id, + 'data_type' => $this->data_type, + 'market_id' => $this->market_id, + 'user_ids' => $this->user_ids ]; } From 2d5714363e7ae2c681116b3e2bb213686167588f Mon Sep 17 00:00:00 2001 From: lanzu_qinsheng <334039090@qq.com> Date: Mon, 21 Sep 2020 16:40:14 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E8=AE=A2=E5=8D=95=E8=AF=A6=E6=83=85?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0"=E8=BF=94=E5=9B=9E"=20=E6=8C=89=E9=92=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Admin/Controllers/ImsCjdcOrderMainController.php | 4 ++-- app/Admin/Extensions/MyDetailPage.php | 2 ++ public/css/detail.css | 4 ++++ resources/views/orderdetail.php | 1 + 4 files changed, 9 insertions(+), 2 deletions(-) diff --git a/app/Admin/Controllers/ImsCjdcOrderMainController.php b/app/Admin/Controllers/ImsCjdcOrderMainController.php index 6cc972e..6eb9f25 100644 --- a/app/Admin/Controllers/ImsCjdcOrderMainController.php +++ b/app/Admin/Controllers/ImsCjdcOrderMainController.php @@ -156,8 +156,8 @@ class ImsCjdcOrderMainController extends AdminController $oid = request()->get('order_id'); $page = request()->get('page'); // 实例化表单类并传递自定义参数 - $detail = MyDetailPage::make(['order_id' => $oid]); - return $content->header('订单详情') + $detail = MyDetailPage::make(['order_id' => $oid,'page'=>$page]); + return $content->header("<<返回") ->breadcrumb( ['text' => '返回', 'url' => "order?page={$page}"], ['text' => '详情', 'url' => 'detail'] diff --git a/app/Admin/Extensions/MyDetailPage.php b/app/Admin/Extensions/MyDetailPage.php index c2f7c07..76c88a9 100644 --- a/app/Admin/Extensions/MyDetailPage.php +++ b/app/Admin/Extensions/MyDetailPage.php @@ -31,6 +31,7 @@ class MyDetailPage extends LazyRenderable $result = ImsCjdcOrder::getOrdersData($order['global_order_id'],$order['id']); $orders = json_encode($result['orders']); $showRefund = json_encode($result['show_refund']); + $path = "order?page=".$this->page; Admin::script( <<

店铺备注: ({{item.note}})

+ <<返回
总金额: {{total_money}} 元    From 4905d3e9d40e1a92cadd0a69079dc7f8caf5204e Mon Sep 17 00:00:00 2001 From: lanzu_qinsheng <334039090@qq.com> Date: Mon, 21 Sep 2020 17:42:14 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E7=A4=BE=E5=8C=BA=E7=AB=99=E7=82=B9?= =?UTF-8?q?=E5=8D=A1=E7=89=87=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Admin/Controllers/HomeController.php | 22 ++++++++++++++----- .../Metrics/Examples/Order/OrderData.php | 21 +++++++++++------- 2 files changed, 29 insertions(+), 14 deletions(-) diff --git a/app/Admin/Controllers/HomeController.php b/app/Admin/Controllers/HomeController.php index 8e2bf6d..3760fa8 100644 --- a/app/Admin/Controllers/HomeController.php +++ b/app/Admin/Controllers/HomeController.php @@ -99,20 +99,30 @@ class HomeController extends Controller protected function lanzu_biz(Content $content) { + $uid = LanzuUserRelationBind::pluck('user_id')->toArray(); return $content->header('控制面板') ->description('欢迎回到懒族后台') - ->body(function (Row $row) { - $row->column(4, function (Column $column) { - $column->row(new Examples\ServiceCard\TotalMp()); - }); + ->body(function (Row $row)use ($uid) { +// $row->column(4, function (Column $column) { +// $column->row(new Examples\ServiceCard\TotalMp()); +// }); - $row->column(4, function (Column $column) { + $row->column(3, function (Column $column) { $column->row(new Examples\Community\TotalCommunity()); }); - $row->column(4, function (Column $column) { + $row->column(3, function (Column $column) { $column->row(new Examples\Community\TotalUser()); }); + $row->column(3, function (Column $column)use ($uid) { + $column->row(new Examples\Order\OrderData('user',null,'下单人数',$uid)); + }); + $row->column(3, function (Column $column)use ($uid) { + $column->row(new Examples\Order\OrderData('number',null,'订单数',$uid)); + }); + $row->column(3, function (Column $column)use ($uid) { + $column->row(new Examples\Order\OrderData('amount',null,'订单金额(元)',$uid)); + }); }); } diff --git a/app/Admin/Metrics/Examples/Order/OrderData.php b/app/Admin/Metrics/Examples/Order/OrderData.php index 9001f5b..a525e30 100644 --- a/app/Admin/Metrics/Examples/Order/OrderData.php +++ b/app/Admin/Metrics/Examples/Order/OrderData.php @@ -49,7 +49,7 @@ class OrderData extends Card $this->content($this->orderNum($data_type, $type, $market_id, $user_ids)); } - public function orderDataBuild($type = null, $marketId = null, $user_ids = []) + public function orderDataBuild($type = null, $marketId = null) { $where = []; $where['type'] = 1; @@ -61,10 +61,6 @@ class OrderData extends Card } } - if (count($user_ids)) { - $where[] = ['in' => ['user_id' => $user_ids]]; - } - switch ($type) { case '1': $beginTime = mktime(0, 0, 0, date('m'), date('d'), date('Y')); @@ -109,14 +105,23 @@ class OrderData extends Card public function orderNum($data_type, $type, $marketId, $user_ids) { - $build = $this->orderDataBuild($type, $marketId, $user_ids); + $build = $this->orderDataBuild($type, $marketId); + if ($user_ids){ + $build = $build->whereIn('user_id',$user_ids); + } if ($data_type == 'number') { $result = $build->count(); } elseif ($data_type == 'amount') { $result = $build->sum('money'); } elseif ($data_type == 'user') { - $result = $build->groupBy('user_id')->pluck('user_id')->toArray(); - $result = count($result); + if ($user_ids){ + $result = $build->groupBy('user_id') + ->pluck('user_id') + ->toArray(); + $result = count($result); + }else{ + $result = 0; + } } else { $result = 0; } From 436af2f46aeee8d7f265d5fa1e8e27cfc5ea2dd4 Mon Sep 17 00:00:00 2001 From: lanzu_qinsheng <334039090@qq.com> Date: Mon, 21 Sep 2020 18:13:35 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E7=A4=BE=E5=8C=BA=E7=BC=96=E8=BE=91?= =?UTF-8?q?=E6=97=B6=20=E6=9B=B4=E6=96=B0=E5=B0=8F=E7=A8=8B=E5=BA=8F?= =?UTF-8?q?=E4=BA=8C=E7=BB=B4=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Admin/Controllers/LanzuCsInfoController.php | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/app/Admin/Controllers/LanzuCsInfoController.php b/app/Admin/Controllers/LanzuCsInfoController.php index a50ed58..fe94edf 100644 --- a/app/Admin/Controllers/LanzuCsInfoController.php +++ b/app/Admin/Controllers/LanzuCsInfoController.php @@ -41,6 +41,7 @@ class LanzuCsInfoController extends AdminController $grid->disableCreateButton(); $grid->disableEditButton(); $grid->disableFilterButton(); + $grid->disableActions(); } $grid->id->sortable(); $grid->name; @@ -152,6 +153,17 @@ class LanzuCsInfoController extends AdminController $row = $model::find($id); $ad = $adu->find($row->admin_user_id); $ad->status = $form->status; + $images = new Images(); + $param = "p=index&sid={$row->admin_user_id}"; + $path = 'zh_cjdianc/pages/Liar/loginindex'; + $qrcode = $images->createQrCode($param, $path); + $fileName = 'public/upload/' . 'qrcode' . '/' . date('Y') . '/' . date('m-d') . '/' . rand(100000000000000, 999999999999999) . '.png'; + $result = $images->uploadOss($qrcode, $fileName); + if ($result == true) { + //>>3.保存二维码路径 + $row->qrcode_path = $fileName; + $row->save(); + } $ad->save(); } });