2019-09-06 23:53:10 +08:00

109 lines
4.8 KiB
PHP
Executable File

<?php
namespace wstmart\admin\model;
use think\Db;
/**
* ============================================================================
* 系统业务处理
*/
class Index extends Base{
/**
* 获取基础统计信息
*/
public function summary(){
$data = [];
$m = Model('common/Table');
$m->setTable('sys_summary');
$toPayInfo = $m->getInfo(['id'=>1],'toPayFast,toPaySlow');
$data['qlg']['fastPay'] = $toPayInfo['toPayFast'];
$data['qlg']['slowPay'] = $toPayInfo['toPaySlow'];
//预代付值
$m->setTable('user_vouchers_summary');
$data['qlg']['vouchersSummarySum'] = $m->getSum(['isDisabled'=>0],'expectedProductNum+expectedCouponsNum');
//个体认证数
$m->setTable('users');
$data['qlg']['personalCount'] = $m->getCount(['authType'=>1]);
//合作认证数
$data['qlg']['companyCount'] = $m->getCount(['authType'=>2]);
//合作商数
$m->setTable('user_update');
$data['qlg']['updateCount'] = $m->getCount(['status'=>1]);
//已上线店铺数
$m->setTable('shops');
$data['qlg']['shopCount'] = $m->getCount(['status'=>1,'dataFlag'=>1]);
//已消费用户数
$data['qlg']['payCount'] = Db::name('orders')->where(['orderStatus'=>['BETWEEN','0,2']])->group('userId')->count();
//已完成订单总额
$m->setTable('orders');
//$data['qlg']['orderSum'] = $m->getSum(['orderStatus'=>['BETWEEN','0,2']],'realTotalMoney');
$data['qlg']['orderSum'] = $m->getSum(['orderStatus'=>2],'realTotalMoney');
//个体待审核
$m->setTable('auth_personal');
$data['qlg']['personalWaitCount'] = $m->getCount(['status'=>0]);
//合作待审核
$m->setTable('auth_company');
$data['qlg']['companyWaitCount'] = $m->getCount(['status'=>0]);
//合作商待审核
$m->setTable('user_update');
$data['qlg']['updateWaitCount'] = $m->getCount(['status'=>0]);
//产品券抵现
$m->setTable('orders');
$data['qlg']['productSum'] = $m->getSum(['orderStatus'=>['BETWEEN','0,2']],'productNum-productHandlingFee-productTaxFee');
//优惠券抵现
$data['qlg']['couponsSum'] = $m->getSum(['orderStatus'=>['BETWEEN','0,2']],'couponsNum-couponsHandlingFee-couponsTaxFee');
//旺旺券抵现
$data['qlg']['wangSum'] = $m->getSum(['orderStatus'=>['BETWEEN','0,2']],'wangNum');
//今日统计
$data['tody'] = ['userType0'=>0,'userType1'=>0];
$rs = Db::name('users')->where(['createTime'=>['like',date('Y-m-d').'%'],'dataFlag'=>1])->group('userType')->field('userType,count(userId) counts')->select();
$tmp = [];
if(!empty($rs)){
foreach ($rs as $key => $v){
$tmp[$v['userType']] = $v['counts'];
}
}
if(isset($tmp['0']))$data['tody']['userType0'] = $tmp['0'];
if(isset($tmp['1']))$data['tody']['userType1'] = $tmp['1'];
$data['tody']['shopApplys'] = Db::name('shops')->whereTime('createTime','today')->where(['dataFlag'=>1,'status'=>0])->count();
$data['tody']['compalins'] = Db::name('order_complains')->where(['complainTime'=>['like',date('Y-m-d').'%']])->count();
$data['tody']['saleGoods'] = Db::name('goods')->where(['dataFlag'=>1,'goodsStatus'=>1,'isSale'=>1,'createTime'=>['like',date('Y-m-d').'%']])->count();
$data['tody']['auditGoods'] = Db::name('goods')->where(['dataFlag'=>1,'goodsStatus'=>0,'isSale'=>1,'createTime'=>['like',date('Y-m-d').'%']])->count();
$data['tody']['order'] = Db::name('orders')->where(['dataFlag'=>1,'createTime'=>['like',date('Y-m-d').'%']])->count();
//商城统计
$data['mall'] = ['userType0'=>1,'userType1'=>0];
$rs = Db::name('users')->where(['dataFlag'=>1])->group('userType')->field('userType,count(userId) counts')->select();
$tmp = [];
if(!empty($rs)){
foreach ($rs as $key => $v){
$tmp[$v['userType']] = $v['counts'];
}
}
if(isset($tmp['0']))$data['mall']['userType0'] = $tmp['0'];
if(isset($tmp['1']))$data['mall']['userType1'] = $tmp['1'];
$data['mall']['saleGoods'] = Db::name('goods')->where(['dataFlag'=>1,'goodsStatus'=>1,'isSale'=>1])->count();
$data['mall']['auditGoods'] = Db::name('goods')->where(['dataFlag'=>1,'goodsStatus'=>0,'isSale'=>1])->count();
$data['mall']['order'] = Db::name('orders')->where(['dataFlag'=>1])->count();
$data['mall']['brands'] = Db::name('brands')->where(['dataFlag'=>1])->count();
$data['mall']['appraise'] = Db::name('goods_appraises')->where(['dataFlag'=>1])->count();
$rs = Db::query('select VERSION() as sqlversion');
$data['MySQL_Version'] = $rs[0]['sqlversion'];
$data['time']['startDate'] = date('Y-m-d',strtotime("-1month"));
$data['time']['endDate'] = date('Y-m-d');
return $data;
}
/**
* 保存授权码
*/
public function saveLicense(){
$data = [];
$data['fieldValue'] = input('license');
$result = model('SysConfigs')->where('fieldCode','mallLicense')->update($data);
if(false !== $result){
cache('WST_CONF',null);
return WSTReturn("操作成功",1);
}
return WSTReturn("操作失败");
}
}