Browse Source

增加社区首页数据卡片, 在社区列表增加绑定用户数的显示

master
lanzu_qsy 5 years ago
parent
commit
4504537827
  1. 37
      app/Admin/Controllers/HomeController.php
  2. 4
      app/Admin/Controllers/LanzuCsInfoController.php
  3. 32
      app/Admin/Metrics/Community/TotalAmount.php
  4. 34
      app/Admin/Metrics/Community/TotalCommunity.php
  5. 36
      app/Admin/Metrics/Community/TotalUser.php
  6. 4
      app/Admin/routes.php
  7. 21
      app/Models/LanzuUserRelationBind.php

37
app/Admin/Controllers/HomeController.php

@ -2,6 +2,10 @@
namespace App\Admin\Controllers;
use App\Admin\Extensions\CheckRow;
use App\admin\Metrics\Community\TotalAmount;
use App\admin\Metrics\Community\TotalCommunity;
use App\admin\Metrics\Community\TotalUser;
use App\Admin\Metrics\Examples;
use App\Http\Controllers\Controller;
use Dcat\Admin\Controllers\Dashboard;
@ -9,21 +13,23 @@ use Dcat\Admin\Layout\Column;
use Dcat\Admin\Layout\Content;
use Dcat\Admin\Layout\Row;
use Dcat\Admin\Admin;
use Dcat\Admin\Widgets\Box;
use Dcat\Admin\Widgets\Card;
class HomeController extends Controller
{
public function index(Content $content)
{
//dd(Admin::user()->roles);
if (Admin::user()->isRole('lanzu_business')) {
return $this->lanzu_biz($content);
}
if (Admin::user()->isRole('lanzu_mp')) {
}elseif (Admin::user()->isRole('lanzu_mp')) {
return $this->lanzu_mp($content);
}
if (Admin::user()->isRole('lanzu_mm')) {
}elseif (Admin::user()->isRole('lanzu_mm')) {
return $this->lanzu_mm($content);
}elseif (Admin::user()->isRole('lanzu_cs')){
return $this->lanzu_cs($content);
}
return $this->default($content);
}
@ -84,12 +90,29 @@ class HomeController extends Controller
return $content->header('控制面板')
->description('欢迎回到懒族后台')
->body(function (Row $row) {
$row->column(6, function (Column $column) {
$row->column(4, function (Column $column) {
$column->row(new TotalCommunity());
});
$row->column(6, function (Column $column) {
$row->column(4, function (Column $column) {
$column->row(new TotalUser());
});
});
}
protected function lanzu_cs(Content $content)
{
return $content->header('控制面板')
->description('欢迎回到懒族后台')
->body(function (Row $row) {
$row->column(4, function (Column $column) {
$column->row(new TotalUser());
});
$row->column(4, function (Column $column) {
$column->row(new TotalAmount());
});
});
}
}

4
app/Admin/Controllers/LanzuCsInfoController.php

@ -12,6 +12,7 @@ use App\Models\ImsCjdcMarket;
use App\Models\ImsCjdcUser;
use App\Models\LanzuCsWithdraw;
use App\Models\LanzuUserBalance;
use App\Models\LanzuUserRelationBind;
use Dcat\Admin\Admin;
use Dcat\Admin\Form;
use Dcat\Admin\Grid;
@ -41,6 +42,9 @@ class LanzuCsInfoController extends AdminController
$grid->id->sortable();
$grid->name;
$grid->phone;
$grid->column('绑定用户数')->display(function (){
return LanzuUserRelationBind::getCount($this->admin_user_id);
});
$grid->column('userBalance.balance', '可提现金额');
$grid->column('qrcode_path', '二维码')->image('', 50, 50);
$grid->column('market_id', '所属市场')->display(function () {

32
app/Admin/Metrics/Community/TotalAmount.php

@ -0,0 +1,32 @@
<?php
namespace App\admin\Metrics\Community;
use App\Models\LanzuUserBalance;
use Dcat\Admin\Admin;
use Dcat\Admin\Widgets\Metrics\Card;
class TotalAmount extends Card
{
protected function init()
{
parent::init();
$this->title = '可提现金额';
$this->content(LanzuUserBalance::getBalance(Admin::user()->id,3));
}
/**
* 渲染卡片内容
* @return string
*/
public function renderContent()
{
$content = parent::renderContent();
return <<<HTML
<div class="d-flex justify-content-between align-items-center mt-1" style="margin-bottom: 2px">
<h2 class="ml-1 font-large-1">{$content}</h2>
</div>
HTML;
}
}

34
app/Admin/Metrics/Community/TotalCommunity.php

@ -0,0 +1,34 @@
<?php
namespace App\admin\Metrics\Community;
use App\Models\LanzuCsInfo;
use Dcat\Admin\Widgets\Metrics\Card;
class TotalCommunity extends Card
{
protected function init()
{
parent::init();
$this->title = '社区总数';
$this->content(LanzuCsInfo::count());
}
/**
* 渲染卡片内容.
*
* @return string
*/
public function renderContent()
{
$content = parent::renderContent();
return <<<HTML
<div class="d-flex justify-content-between align-items-center mt-1" style="margin-bottom: 2px">
<h2 class="ml-1 font-large-1">{$content}</h2>
</div>
HTML;
}
}

36
app/Admin/Metrics/Community/TotalUser.php

@ -0,0 +1,36 @@
<?php
namespace App\admin\Metrics\Community;
use App\Models\LanzuUserRelationBind;
use Dcat\Admin\Admin;
use Dcat\Admin\Widgets\Metrics\Card;
class TotalUser extends Card
{
protected function init()
{
parent::init();
$this->title = '绑定用户数';
$adu = Admin::user();
if ($adu->isRole('lanzu_cs')){
$this->content(LanzuUserRelationBind::getCount($adu->id));
}else{
$this->content(LanzuUserRelationBind::getCount());
}
}
public function renderContent()
{
$content = parent::renderContent();
return <<<HTML
<div class="d-flex justify-content-between align-items-center mt-1" style="margin-bottom: 2px">
<h2 class="ml-1 font-large-1">{$content}</h2>
</div>
HTML;
}
}

4
app/Admin/routes.php

@ -12,8 +12,8 @@ Route::group([
'middleware' => config('admin.route.middleware'),
], function (Router $router) {
//$router->get('/', 'HomeController@index');
$router->resource('/', 'LanzuCsInfoController');
$router->get('/', 'HomeController@index');
//$router->resource('/', 'LanzuCsInfoController');
$router->resource('/speaker', 'LanzuServiceSpeakerController');
$router->resource('/mp', 'LanzuMpInfoController');
$router->any('/mp_data', 'LanzuMpInfoController@showData');

21
app/Models/LanzuUserRelationBind.php

@ -0,0 +1,21 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class LanzuUserRelationBind extends Model
{
protected $table = 'lanzu_user_relation_bind';
public static function getCount($source_id=null)
{
if ($source_id){
return self::where('source_id',$source_id)->count();
}
return self::count();
}
}
Loading…
Cancel
Save