Browse Source

服务商数据卡片

master
lanzu_qinsheng 5 years ago
parent
commit
6a08e72820
  1. 18
      app/Admin/Controllers/HomeController.php
  2. 2
      app/Admin/Metrics/Examples/Community/TotalUser.php
  3. 25
      app/Admin/Metrics/Examples/Order/OrderData.php
  4. 2
      app/Admin/Metrics/Examples/ServiceCard/TotalMp.php
  5. 2
      app/Admin/Metrics/Examples/ServiceCard/TotalStore.php

18
app/Admin/Controllers/HomeController.php

@ -4,6 +4,8 @@ namespace App\Admin\Controllers;
use App\Admin\Metrics\Examples;
use App\Http\Controllers\Controller;
use App\Models\LanzuMpInfo;
use App\Models\v3\Market;
use Dcat\Admin\Controllers\Dashboard;
use Dcat\Admin\Layout\Column;
use Dcat\Admin\Layout\Content;
@ -56,15 +58,23 @@ class HomeController extends Controller
protected function lanzu_mp(Content $content)
{
$mp = LanzuMpInfo::where('admin_user_id',Admin::user()->id)->first();
$marketIds = Market::where('mp_id',$mp->id)->pluck('id')->toArray();
return $content->header('控制面板')
->description('欢迎回到懒族后台')
->body(function (Row $row) {
$row->column(4, function (Column $column) {
->body(function (Row $row) use ($marketIds) {
$row->column(3, function (Column $column) {
$column->row(new Examples\Community\TotalAmount(Admin::user()->id,Type::BALANCE_USER_TYPE_MP));
});
$row->column(4, function (Column $column) {
$column->row(new Examples\ServiceCard\TotalMm());
$row->column(3, function (Column $column) {
$column->row(new Examples\ServiceCard\TotalStore());
});
$row->column(3, function (Column $column)use ($marketIds) {
$column->row(new Examples\Order\OrderData('number',$marketIds,'订单数'));
});
$row->column(3, function (Column $column)use ($marketIds) {
$column->row(new Examples\Order\OrderData('amount',$marketIds,'订单金额'));
});
});
}

2
app/Admin/Metrics/Examples/Community/TotalUser.php

@ -13,7 +13,7 @@ class TotalUser extends Card
protected function init()
{
parent::init();
$this->title = '绑定用户数';
$this->title = '社区绑定用户数';
$adu = Admin::user();
if ($adu->isRole('lanzu_cs')){
$this->content(LanzuUserRelationBind::getCount($adu->id));

25
app/Admin/Metrics/Examples/Order/OrderData.php

@ -7,15 +7,18 @@ use App\Models\ImsCjdcOrder;
use App\Models\ImsCjdcOrderMain;
use Dcat\Admin\Widgets\Metrics\Card;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
class OrderData extends Card
{
protected $title;
protected $data_type;
public function __construct($data_type=null,$title = null, $icon = null)
protected $market_id;
public function __construct($data_type=null,$market_id=null,$title = null, $icon = null)
{
$this->title = $title;
$this->data_type = $data_type;
$this->market_id = $market_id;
parent::__construct($title, $icon);
}
@ -36,16 +39,21 @@ class OrderData extends Card
{
$type = $request->get('option');//数据选项
$data_type = $request->get('data_type');//数据类型
$this->content($this->orderNum($data_type,$type));
$market_id = $request->get('market_id');//市场id
$this->content($this->orderNum($data_type,$type,$market_id));
}
public function orderDataBuild($marketId=null,$type=null)
public function orderDataBuild($type=null,$marketId=null)
{
$where = [];
$where['type'] = 1;
if ($marketId){
$where['market_id'] = $marketId;
if (is_array($marketId)){
$where[] = ['in'=>['market_id'=>$marketId]];
}else{
$where['market_id'] = $marketId;
}
}
switch ($type){
@ -82,9 +90,9 @@ class OrderData extends Card
}
public function orderNum($data_type,$type)
public function orderNum($data_type,$type,$marketId)
{
$build = $this->orderDataBuild($marketId=null,$type);
$build = $this->orderDataBuild($type,$marketId);
if ($data_type=='number'){
$result = $build->count();
}elseif ($data_type=='amount'){
@ -100,7 +108,8 @@ class OrderData extends Card
public function parameters() : array
{
return [
'data_type'=>$this->data_type
'data_type'=>$this->data_type,
'market_id'=>$this->market_id,
];
}

2
app/Admin/Metrics/Examples/ServiceCard/TotalMp.php

@ -12,7 +12,7 @@ class TotalMp extends Card
protected function init()
{
parent::init();
$this->title = '服务商数';
$this->title = '服务商数';
$this->content(LanzuMpInfo::count());
}

2
app/Admin/Metrics/Examples/ServiceCard/TotalStore.php

@ -25,7 +25,7 @@ class TotalStore extends Card
$count = ImsCjdcStore::where('mm_user_id',$mm->user_id)->count();
}
}elseif($aud->isRole('lanzu_mp')){
$count = 0;
$count = ImsCjdcStore::count();
}else{
$count = ImsCjdcStore::count();
}

Loading…
Cancel
Save