修复:统计页面部分接口请求错误导致页面内容渲染失败或者渲染数据错误
This commit is contained in:
parent
a8cc8f3d3f
commit
8f61b74200
|
|
@ -939,4 +939,20 @@ class StoreOrderDao extends BaseDao
|
|||
{
|
||||
return StoreOrder::getDB()->where($this->getPk(), $order_id)->value('order_sn', '');
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取订单数量
|
||||
* @param int $store_id
|
||||
* @param int $type
|
||||
* @param string $field
|
||||
* @return int
|
||||
*/
|
||||
public function storeOrderCount(int $val = 0, int $type = -1, string $field = 'store_id')
|
||||
{
|
||||
$where = ['pid' => 0, 'status' => 1];
|
||||
if ($type != -1) $where['type'] = $type;
|
||||
return $this->search($where)->when($field && $val > 0, function ($query) use ($field, $val) {
|
||||
$query->where($field, $val);
|
||||
})->count();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -89,7 +89,7 @@ class Common extends AuthController
|
|||
} else {
|
||||
$data[$key]['type'] = 0;
|
||||
}
|
||||
$data[$key]['menu_path'] = preg_replace('/^\/cashier/', '', $item['menu_path']);
|
||||
$data[$key]['route'] = preg_replace('/^\/cashier/', '', $item['route']);
|
||||
}
|
||||
|
||||
return app('json')->success('' , sort_list_tier($data));
|
||||
|
|
|
|||
|
|
@ -42,206 +42,301 @@ class StoreOrderDao extends BaseDao
|
|||
* @param array $where
|
||||
* @return \crmeb\basic\BaseModel|mixed|\think\Model
|
||||
*/
|
||||
public function search(array $where = [])
|
||||
{
|
||||
if (isset($where['real_name'])) {
|
||||
public function search(array $where = []){
|
||||
if(isset($where['real_name'])){
|
||||
$where['real_name'] = trim($where['real_name']);
|
||||
}
|
||||
$isDel = isset($where['is_del']) && $where['is_del'] !== '' && $where['is_del'] != -1;
|
||||
$isDel = isset($where['is_del']) && $where['is_del'] !== '' && $where['is_del'] != -1;
|
||||
$realName = $where['real_name'] ?? '';
|
||||
$fieldKey = $where['field_key'] ?? '';
|
||||
$fieldKey = $fieldKey == 'all' ? '' : $fieldKey;
|
||||
return parent::search($where)->when($isDel, function ($query) use ($where) {
|
||||
$query->where('is_del', $where['is_del']);
|
||||
})->when(isset($where['plat_type']) && in_array($where['plat_type'], [-1, 0, 1, 2]), function ($query) use($where) {
|
||||
switch ($where['plat_type']) {
|
||||
case -1://所有
|
||||
break;
|
||||
case 0://平台
|
||||
$query->where('store_id', 0)->where('supplier_id', 0);
|
||||
break;
|
||||
case 1://门店
|
||||
$query->where('store_id', '>', 0);
|
||||
break;
|
||||
case 2://供应商
|
||||
$query->where('supplier_id', '>', 0);
|
||||
break;
|
||||
}
|
||||
})->when(isset($where['is_system_del']), function ($query) {
|
||||
$query->where('is_system_del', 0);
|
||||
})->when(isset($where['is_coupon']), function ($query) {
|
||||
$query->where('coupon_id','>', 0);
|
||||
})->when(isset($where['staff_id']) && $where['staff_id'], function ($query) use ($where) {
|
||||
$query->where('staff_id', $where['staff_id']);
|
||||
})->when(isset($where['status']) && $where['status'] !== '', function ($query) use ($where) {
|
||||
switch ((int)$where['status']) {
|
||||
case 0://未支付
|
||||
$query->where('paid', 0)->where('status', 0)->where('refund_status', 0)->where('is_del', 0);
|
||||
break;
|
||||
case 1://已支付 未发货
|
||||
$query->where('paid', 1)->whereIn('status', [0, 4])->whereIn('refund_status', [0, 3])->whereIn('shipping_type', [1, 3, 4])->where('is_del', 0);
|
||||
break;
|
||||
case 7://已支付 部分发货
|
||||
$query->where('paid', 1)->where('status', 4)->whereIn('refund_status', [0, 3])->where('is_del', 0);
|
||||
break;
|
||||
case 2://已支付 待收货
|
||||
$query->where('paid', 1)->whereIn('status', [1, 5])->whereIn('refund_status', [0, 3])->where('is_del', 0);
|
||||
break;
|
||||
case 3:// 已支付 已收货 待评价
|
||||
$query->where('paid', 1)->where('status', 2)->whereIn('refund_status', [0, 3])->where('is_del', 0);
|
||||
break;
|
||||
case 4:// 交易完成
|
||||
$query->where('paid', 1)->where('status', 3)->whereIn('refund_status', [0, 3])->where('is_del', 0);
|
||||
break;
|
||||
case 5://已支付 待核销
|
||||
$query->where('paid', 1)->whereIn('status', [0, 1, 5])->whereIn('refund_status', [0, 3])->where('shipping_type', 2)->where('is_del', 0);
|
||||
break;
|
||||
case 6://已支付 已核销 没有退款
|
||||
$query->where('paid', 1)->where('status', 2)->whereIn('refund_status', [0, 3])->where('shipping_type', 2)->where('is_del', 0);
|
||||
break;
|
||||
case 8://已支付 核销订单
|
||||
$query->where('paid', 1)->whereIn('status', [0, 1, 2, 5])->whereIn('refund_status', [0, 3])->where('shipping_type', 2)->where('is_del', 0);
|
||||
break;
|
||||
case 9://已配送
|
||||
$query->where('paid', 1)->whereIn('status', [2, 3])->whereIn('refund_status', [0, 3])->where('is_del', 0);
|
||||
break;
|
||||
case -1://退款中
|
||||
$query->where('paid', 1)->whereIn('refund_status', [1, 4])->where('is_del', 0);
|
||||
break;
|
||||
case -2://已退款
|
||||
$query->where('paid', 1)->where('refund_status', 2)->where('is_del', 0);
|
||||
break;
|
||||
case -3://退款
|
||||
$query->where('paid', 1)->whereIn('refund_status', [1, 2, 4])->where('is_del', 0);
|
||||
break;
|
||||
case -4://已删除
|
||||
$query->where('is_del', 1);
|
||||
break;
|
||||
}
|
||||
})->when(isset($where['type']) && $where['type'] !== '', function ($query) use ($where) {
|
||||
switch ($where['type']) {
|
||||
case 0://普通
|
||||
$query->where('type', 0);
|
||||
break;
|
||||
case 1://秒杀
|
||||
$query->where('type', 1);
|
||||
break;
|
||||
case 2://砍价
|
||||
$query->where('type', 2);
|
||||
break;
|
||||
case 3://拼团
|
||||
$query->where('type', 3);
|
||||
break;
|
||||
case 4://套餐
|
||||
$query->where('type', 5);
|
||||
break;
|
||||
case 5://核销订单
|
||||
$query->where('shipping_type', 2);
|
||||
break;
|
||||
case 6://收银台订单
|
||||
$query->where('shipping_type', 4);
|
||||
break;
|
||||
case 7://配送订单
|
||||
$query->whereIn('shipping_type', [1, 3]);
|
||||
break;
|
||||
case 8://预售
|
||||
$query->where('type', 6);
|
||||
break;
|
||||
case 9://新人专享
|
||||
$query->where('type', 7);
|
||||
break;
|
||||
case 10://抽奖
|
||||
$query->where('type', 8);
|
||||
break;
|
||||
case 11://拼单
|
||||
$query->where('type', 9);
|
||||
break;
|
||||
case 12://桌码
|
||||
$query->where('type', 10);
|
||||
break;
|
||||
}
|
||||
})->when(isset($where['order_type']) && $where['order_type'] !== '', function ($query) use ($where) {
|
||||
switch ($where['order_type']) {
|
||||
case 5://核销订单
|
||||
$query->where('shipping_type', 2);
|
||||
break;
|
||||
case 6://收银台订单
|
||||
$query->where('shipping_type', 4);
|
||||
break;
|
||||
case 7://配送订单
|
||||
$query->whereIn('shipping_type', [1, 3]);
|
||||
break;
|
||||
}
|
||||
})->when(isset($where['pay_type']), function ($query) use ($where) {
|
||||
switch ($where['pay_type']) {
|
||||
case 1:
|
||||
$query->where('pay_type', 'weixin');
|
||||
break;
|
||||
case 2:
|
||||
$query->where('pay_type', 'yue');
|
||||
break;
|
||||
case 3:
|
||||
$query->where('pay_type', 'offline');
|
||||
break;
|
||||
case 4:
|
||||
$query->where('pay_type', 'alipay');
|
||||
break;
|
||||
}
|
||||
})->when($realName && $fieldKey && in_array($fieldKey, $this->withField), function ($query) use ($where, $realName, $fieldKey) {
|
||||
if ($fieldKey !== 'title') {
|
||||
$query->where(trim($fieldKey), trim($realName));
|
||||
} else {
|
||||
$query->where('id', 'in', function ($que) use ($where) {
|
||||
$que->name('store_order_cart_info')->whereIn('product_id', function ($q) use ($where) {
|
||||
$q->name('store_product')->whereLike('store_name|keyword', '%' . $where['real_name'] . '%')->field(['id'])->select();
|
||||
})->field(['oid'])->select();
|
||||
return parent::search($where)
|
||||
->when($isDel,function($query) use ($where){
|
||||
$query->where('is_del',$where['is_del']);
|
||||
})
|
||||
->when(isset($where['plat_type']) && in_array($where['plat_type'],[-1,0,1,2]),function($query) use ($where){
|
||||
switch($where['plat_type']){
|
||||
case -1://所有
|
||||
break;
|
||||
case 0://平台
|
||||
$query->where('store_id',0)
|
||||
->where('supplier_id',0);
|
||||
break;
|
||||
case 1://门店
|
||||
$query->where('store_id','>',0);
|
||||
break;
|
||||
case 2://供应商
|
||||
$query->where('supplier_id','>',0);
|
||||
break;
|
||||
}
|
||||
})
|
||||
->when(isset($where['is_system_del']),function($query){
|
||||
$query->where('is_system_del',0);
|
||||
})
|
||||
->when(isset($where['is_coupon']),function($query){
|
||||
$query->where('coupon_id','>',0);
|
||||
})
|
||||
->when(isset($where['staff_id']) && $where['staff_id'],function($query) use ($where){
|
||||
$query->where('staff_id',$where['staff_id']);
|
||||
})
|
||||
->when(isset($where['status']) && $where['status'] !== '',function($query) use ($where){
|
||||
switch((int)$where['status']){
|
||||
case 0://未支付
|
||||
$query->where('paid',0)
|
||||
->where('status',0)
|
||||
->where('refund_status',0)
|
||||
->where('is_del',0);
|
||||
break;
|
||||
case 1://已支付 未发货
|
||||
$query->where('paid',1)
|
||||
->whereIn('status',[0,4])
|
||||
->whereIn('refund_status',[0,3])
|
||||
->whereIn('shipping_type',[1,3,4])
|
||||
->where('is_del',0);
|
||||
break;
|
||||
case 7://已支付 部分发货
|
||||
$query->where('paid',1)
|
||||
->where('status',4)
|
||||
->whereIn('refund_status',[0,3])
|
||||
->where('is_del',0);
|
||||
break;
|
||||
case 2://已支付 待收货
|
||||
$query->where('paid',1)
|
||||
->whereIn('status',[1,5])
|
||||
->whereIn('refund_status',[0,3])
|
||||
->where('is_del',0);
|
||||
break;
|
||||
case 3:// 已支付 已收货 待评价
|
||||
$query->where('paid',1)
|
||||
->where('status',2)
|
||||
->whereIn('refund_status',[0,3])
|
||||
->where('is_del',0);
|
||||
break;
|
||||
case 4:// 交易完成
|
||||
$query->where('paid',1)
|
||||
->where('status',3)
|
||||
->whereIn('refund_status',[0,3])
|
||||
->where('is_del',0);
|
||||
break;
|
||||
case 5://已支付 待核销
|
||||
$query->where('paid',1)
|
||||
->whereIn('status',[0,1,5])
|
||||
->whereIn('refund_status',[0,3])
|
||||
->where('shipping_type',2)
|
||||
->where('is_del',0);
|
||||
break;
|
||||
case 6://已支付 已核销 没有退款
|
||||
$query->where('paid',1)
|
||||
->where('status',2)
|
||||
->whereIn('refund_status',[0,3])
|
||||
->where('shipping_type',2)
|
||||
->where('is_del',0);
|
||||
break;
|
||||
case 8://已支付 核销订单
|
||||
$query->where('paid',1)
|
||||
->whereIn('status',[0,1,2,5])
|
||||
->whereIn('refund_status',[0,3])
|
||||
->where('shipping_type',2)
|
||||
->where('is_del',0);
|
||||
break;
|
||||
case 9://已配送
|
||||
$query->where('paid',1)
|
||||
->whereIn('status',[2,3])
|
||||
->whereIn('refund_status',[0,3])
|
||||
->where('is_del',0);
|
||||
break;
|
||||
case -1://退款中
|
||||
$query->where('paid',1)
|
||||
->whereIn('refund_status',[1,4])
|
||||
->where('is_del',0);
|
||||
break;
|
||||
case -2://已退款
|
||||
$query->where('paid',1)
|
||||
->where('refund_status',2)
|
||||
->where('is_del',0);
|
||||
break;
|
||||
case -3://退款
|
||||
$query->where('paid',1)
|
||||
->whereIn('refund_status',[1,2,4])
|
||||
->where('is_del',0);
|
||||
break;
|
||||
case -4://已删除
|
||||
$query->where('is_del',1);
|
||||
break;
|
||||
}
|
||||
})
|
||||
->when(isset($where['type']) && $where['type'] !== '',function($query) use ($where){
|
||||
switch($where['type']){
|
||||
case 0://普通
|
||||
$query->where('type',0);
|
||||
break;
|
||||
case 1://秒杀
|
||||
$query->where('type',1);
|
||||
break;
|
||||
case 2://砍价
|
||||
$query->where('type',2);
|
||||
break;
|
||||
case 3://拼团
|
||||
$query->where('type',3);
|
||||
break;
|
||||
case 4://套餐
|
||||
$query->where('type',5);
|
||||
break;
|
||||
case 5://核销订单
|
||||
$query->where('shipping_type',2);
|
||||
break;
|
||||
case 6://收银台订单
|
||||
$query->where('shipping_type',4);
|
||||
break;
|
||||
case 7://配送订单
|
||||
$query->whereIn('shipping_type',[1,3]);
|
||||
break;
|
||||
case 8://预售
|
||||
$query->where('type',6);
|
||||
break;
|
||||
case 9://新人专享
|
||||
$query->where('type',7);
|
||||
break;
|
||||
case 10://抽奖
|
||||
$query->where('type',8);
|
||||
break;
|
||||
case 11://拼单
|
||||
$query->where('type',9);
|
||||
break;
|
||||
case 12://桌码
|
||||
$query->where('type',10);
|
||||
break;
|
||||
}
|
||||
})
|
||||
->when(isset($where['order_type']) && $where['order_type'] !== '',function($query) use ($where){
|
||||
switch($where['order_type']){
|
||||
case 5://核销订单
|
||||
$query->where('shipping_type',2);
|
||||
break;
|
||||
case 6://收银台订单
|
||||
$query->where('shipping_type',4);
|
||||
break;
|
||||
case 7://配送订单
|
||||
$query->whereIn('shipping_type',[1,3]);
|
||||
break;
|
||||
}
|
||||
})
|
||||
->when(isset($where['pay_type']),function($query) use ($where){
|
||||
switch($where['pay_type']){
|
||||
case 1:
|
||||
$query->where('pay_type','weixin');
|
||||
break;
|
||||
case 2:
|
||||
$query->where('pay_type','yue');
|
||||
break;
|
||||
case 3:
|
||||
$query->where('pay_type','offline');
|
||||
break;
|
||||
case 4:
|
||||
$query->where('pay_type','alipay');
|
||||
break;
|
||||
}
|
||||
})
|
||||
->when($realName && $fieldKey && in_array($fieldKey,$this->withField),function($query) use ($where,$realName,$fieldKey){
|
||||
if($fieldKey !== 'title'){
|
||||
$query->where(trim($fieldKey),trim($realName));
|
||||
}
|
||||
else{
|
||||
$query->where('id','in',function($que) use ($where){
|
||||
$que->name('store_order_cart_info')
|
||||
->whereIn('product_id',function($q) use ($where){
|
||||
$q->name('store_product')
|
||||
->whereLike('store_name|keyword','%'.$where['real_name'].'%')
|
||||
->field(['id'])
|
||||
->select();
|
||||
})
|
||||
->field(['oid'])
|
||||
->select();
|
||||
});
|
||||
}
|
||||
})
|
||||
->when($realName && !$fieldKey,function($query) use ($where){
|
||||
$query->where(function($que) use ($where){
|
||||
$que->whereLike('order_id|real_name|user_phone|verify_code','%'.$where['real_name'].'%')
|
||||
->whereOr('uid','in',function($q) use ($where){
|
||||
$q->name('user')
|
||||
->whereLike('nickname|uid|phone','%'.$where['real_name'].'%')
|
||||
->field(['uid'])
|
||||
->select();
|
||||
})
|
||||
->whereOr('uid','in',function($q) use ($where){
|
||||
$q->name('user_address')
|
||||
->whereLike('real_name|uid|phone','%'.$where['real_name'].'%')
|
||||
->field(['uid'])
|
||||
->select();
|
||||
})
|
||||
->whereOr('id','in',function($que) use ($where){
|
||||
$que->name('store_order_cart_info')
|
||||
->whereIn('product_id',function($q) use ($where){
|
||||
$q->name('store_product')
|
||||
->whereLike('store_name|keyword','%'.$where['real_name'].'%')
|
||||
->field(['id'])
|
||||
->select();
|
||||
})
|
||||
->field(['oid'])
|
||||
->select();
|
||||
})
|
||||
->whereOr('activity_id','in',function($que) use ($where){
|
||||
$que->name('store_seckill')
|
||||
->whereLike('title|info','%'.$where['real_name'].'%')
|
||||
->field(['id'])
|
||||
->select();
|
||||
})
|
||||
->whereOr('activity_id','in',function($que) use ($where){
|
||||
$que->name('store_bargain')
|
||||
->whereLike('title|info','%'.$where['real_name'].'%')
|
||||
->field(['id'])
|
||||
->select();
|
||||
})
|
||||
->whereOr('activity_id','in',function($que) use ($where){
|
||||
$que->name('store_combination')
|
||||
->whereLike('title|info','%'.$where['real_name'].'%')
|
||||
->field(['id'])
|
||||
->select();
|
||||
});
|
||||
});
|
||||
}
|
||||
})->when($realName && !$fieldKey, function ($query) use ($where) {
|
||||
$query->where(function ($que) use ($where) {
|
||||
$que->whereLike('order_id|real_name|user_phone|verify_code', '%' . $where['real_name'] . '%')
|
||||
->whereOr('uid', 'in', function ($q) use ($where) {
|
||||
$q->name('user')->whereLike('nickname|uid|phone', '%' . $where['real_name'] . '%')->field(['uid'])->select();
|
||||
})->whereOr('uid', 'in', function ($q) use ($where) {
|
||||
$q->name('user_address')->whereLike('real_name|uid|phone', '%' . $where['real_name'] . '%')->field(['uid'])->select();
|
||||
})->whereOr('id', 'in', function ($que) use ($where) {
|
||||
$que->name('store_order_cart_info')->whereIn('product_id', function ($q) use ($where) {
|
||||
$q->name('store_product')->whereLike('store_name|keyword', '%' . $where['real_name'] . '%')->field(['id'])->select();
|
||||
})->field(['oid'])->select();
|
||||
})->whereOr('activity_id', 'in', function ($que) use ($where) {
|
||||
$que->name('store_seckill')->whereLike('title|info', '%' . $where['real_name'] . '%')->field(['id'])->select();
|
||||
})->whereOr('activity_id', 'in', function ($que) use ($where) {
|
||||
$que->name('store_bargain')->whereLike('title|info', '%' . $where['real_name'] . '%')->field(['id'])->select();
|
||||
})->whereOr('activity_id', 'in', function ($que) use ($where) {
|
||||
$que->name('store_combination')->whereLike('title|info', '%' . $where['real_name'] . '%')->field(['id'])->select();
|
||||
});
|
||||
})
|
||||
->when(isset($where['unique']),function($query) use ($where){
|
||||
$query->where('unique',$where['unique']);
|
||||
})
|
||||
->when(isset($where['is_remind']),function($query) use ($where){
|
||||
$query->where('is_remind',$where['is_remind']);
|
||||
})
|
||||
->when(isset($where['refundTypes']) && $where['refundTypes'] != '',function($query) use ($where){
|
||||
switch((int)$where['refundTypes']){
|
||||
case 1:
|
||||
$query->where('refund_type','in','1,2');
|
||||
break;
|
||||
case 2:
|
||||
$query->where('refund_type',4);
|
||||
break;
|
||||
case 3:
|
||||
$query->where('refund_type',5);
|
||||
break;
|
||||
case 4:
|
||||
$query->where('refund_type',6);
|
||||
break;
|
||||
}
|
||||
})
|
||||
->when(isset($where['is_refund']) && $where['is_refund'] !== '',function($query) use ($where){
|
||||
if($where['is_refund'] == 1){
|
||||
$query->where('refund_status',2);
|
||||
}
|
||||
else{
|
||||
$query->where('refund_status',0);
|
||||
}
|
||||
})
|
||||
->when(isset($where['supplier_id']) && $where['supplier_id'] !== '',function($query) use ($where){
|
||||
$query->where('supplier_id',$where['supplier_id']);
|
||||
})
|
||||
->when(isset($where['paid']) && $where['paid'] !== '',function($query) use ($where){
|
||||
$query->where('paid',$where['paid']);
|
||||
});
|
||||
})->when(isset($where['unique']), function ($query) use ($where) {
|
||||
$query->where('unique', $where['unique']);
|
||||
})->when(isset($where['is_remind']), function ($query) use ($where) {
|
||||
$query->where('is_remind', $where['is_remind']);
|
||||
})->when(isset($where['refundTypes']) && $where['refundTypes'] != '', function ($query) use ($where) {
|
||||
switch ((int)$where['refundTypes']) {
|
||||
case 1:
|
||||
$query->where('refund_type', 'in', '1,2');
|
||||
break;
|
||||
case 2:
|
||||
$query->where('refund_type', 4);
|
||||
break;
|
||||
case 3:
|
||||
$query->where('refund_type', 5);
|
||||
break;
|
||||
case 4:
|
||||
$query->where('refund_type', 6);
|
||||
break;
|
||||
}
|
||||
})->when(isset($where['is_refund']) && $where['is_refund'] !== '', function ($query) use ($where) {
|
||||
if ($where['is_refund'] == 1) {
|
||||
$query->where('refund_status', 2);
|
||||
} else {
|
||||
$query->where('refund_status', 0);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -967,27 +1062,39 @@ class StoreOrderDao extends BaseDao
|
|||
*/
|
||||
public function getOrderStatistics($where, $time, $timeType, $field, $str, $orderStatus = '')
|
||||
{
|
||||
return $this->getModel()->where($where)->where(function ($query) use ($field, $orderStatus) {
|
||||
if ($field == 'pay_time') {
|
||||
$query->where('paid', 1);
|
||||
} elseif ($field == 'refund_reason_time') {
|
||||
$query->where('paid', 1)->where('refund_status', '>', 0);
|
||||
} elseif ($field == 'add_time') {
|
||||
if ($orderStatus == 'pay') {
|
||||
$query->where('paid', 1)->where('pid', '>=', 0)->whereIn('refund_status', [0, 3]);
|
||||
} elseif ($orderStatus == 'refund') {
|
||||
$query->where('paid', 1)->where('pid', '>=', 0)->where('refund_type', 6);
|
||||
return $this->getModel()
|
||||
->where($where)
|
||||
->where(function($query) use ($field,$orderStatus){
|
||||
if($field == 'pay_time'){
|
||||
$query->where('paid',1)->whereIn('status',[0,1,2,3]);
|
||||
}
|
||||
}
|
||||
})->where(function ($query) use ($time, $field) {
|
||||
if ($time[0] == $time[1]) {
|
||||
$query->whereDay($field, $time[0]);
|
||||
} else {
|
||||
$time[1] = date('Y/m/d', (!is_numeric($time[1]) ? strtotime($time[1]) : $time[1]) + 86400);
|
||||
$query->whereTime($field, 'between', $time);
|
||||
}
|
||||
})->where('is_del', 0)->where('is_system_del', 0)
|
||||
->field("FROM_UNIXTIME($field,'$timeType') as days,$str as num")->group('days')->select()->toArray();
|
||||
elseif($field == 'refund_reason_time'){
|
||||
$query->where('paid',1)->where('status',-1);
|
||||
}
|
||||
elseif($field == 'create_time'){
|
||||
if($orderStatus == 'pay'){
|
||||
$query->where('paid',1)->whereIn('status',[0,1,2,3]);
|
||||
}
|
||||
elseif($orderStatus == 'refund'){
|
||||
$query->where('paid',1)->where('status',-1);
|
||||
}
|
||||
}
|
||||
})
|
||||
->where(function($query) use ($time,$field){
|
||||
if($time[0] == $time[1]){
|
||||
$query->whereDay($field,$time[0]);
|
||||
}
|
||||
else{
|
||||
$time[1] = date('Y/m/d',(!is_numeric($time[1]) ? strtotime($time[1]) : $time[1]) + 86400);
|
||||
$query->whereTime($field,'between',$time);
|
||||
}
|
||||
})
|
||||
->where('is_del',0)
|
||||
->where('is_system_del',0)
|
||||
->field("FROM_UNIXTIME($field,'$timeType') as days,$str as num")
|
||||
->group('days')
|
||||
->select()
|
||||
->toArray();
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -108,9 +108,7 @@ class SupplierOrderServices extends BaseServices
|
|||
{
|
||||
$data = [];
|
||||
$where = ['time' => $time, 'supplier_id' => $supplierId];
|
||||
if ($supplierId < 1) {
|
||||
$where['supplier_id'] = -1;
|
||||
}
|
||||
if ($supplierId < 1) $where['supplier_id'] = -1;
|
||||
$orderWhere = ['paid' => 1, 'is_system_del' => 0, 'refund_status' => 0];
|
||||
$refundWhere = ['refund_type' => 6];
|
||||
|
||||
|
|
@ -177,10 +175,10 @@ class SupplierOrderServices extends BaseServices
|
|||
}
|
||||
}
|
||||
}
|
||||
$pay_price = array_column($this->dao->getOrderStatistics($where, $time, $timeType, 'add_time', 'sum(pay_price)', 'pay'), 'num', 'days');
|
||||
$pay_count = array_column($this->dao->getOrderStatistics($where, $time, $timeType, 'add_time', 'count(id)', 'pay'), 'num', 'days');
|
||||
$refund_price = array_column($this->dao->getOrderStatistics($where, $time, $timeType, 'add_time', 'sum(refund_price)', 'refund'), 'num', 'days');
|
||||
$refund_count = array_column($this->dao->getOrderStatistics($where, $time, $timeType, 'add_time', 'count(id)', 'refund'), 'num', 'days');
|
||||
$pay_price = array_column($this->dao->getOrderStatistics($where, $time, $timeType, 'create_time', 'sum(pay_price)', 'pay'), 'num', 'days');
|
||||
$pay_count = array_column($this->dao->getOrderStatistics($where, $time, $timeType, 'create_time', 'count(order_id)', 'pay'), 'num', 'days');
|
||||
$refund_price = array_column($this->dao->getOrderStatistics($where, $time, $timeType, 'create_time', 'sum(pay_price)', 'refund'), 'num', 'days');
|
||||
$refund_count = array_column($this->dao->getOrderStatistics($where, $time, $timeType, 'create_time', 'count(order_id)', 'refund'), 'num', 'days');
|
||||
|
||||
foreach ($xAxis as $item) {
|
||||
$data['订单金额'][] = isset($pay_price[$item]) ? floatval($pay_price[$item]) : 0;
|
||||
|
|
@ -244,8 +242,8 @@ class SupplierOrderServices extends BaseServices
|
|||
*/
|
||||
public function getOrderType(int $supplierId, array $time): array
|
||||
{
|
||||
$bing_xdata = [0 => '普通订单', 1 => '秒杀订单', 2 => '砍价订单', 3 => '拼团订单', 4 => '', 5 => '套餐订单', 6 => '', 7 => '新人专享'];
|
||||
$order_type = [0 => '0', 1 => '1', 2 => '2', 3 => '3', 4 => '', 5 => '4', 6 => '6' , 7 => '9'];
|
||||
$bing_xdata = [0 => '普通订单', 1 => '秒杀订单', 2 => '预售订单', 3 => '助力订单', 4 => '', 5 => '套餐订单', 6 => '', 7 => '新人专享'];
|
||||
$order_type = [0 => '0', 1 => '1', 2 => '2', 3 => '3', 4 => '', 5 => '10', 6 => '' , 7 => '9'];
|
||||
$color = ['#64a1f4', '#3edeb5', '#70869f', '#ffc653', '', '#fc7d6a', '#fc7d2a', ''];
|
||||
$bing_data = [];
|
||||
|
||||
|
|
@ -258,7 +256,7 @@ class SupplierOrderServices extends BaseServices
|
|||
if (empty($item)) continue;
|
||||
$bing_data[] = [
|
||||
'name' => $item,
|
||||
'value' => $this->dao->together(['paid' => 1, 'pid' => 0, 'type' => $order_type[$key] ?? 0, 'time' => $time] + $where, 'pay_price', 'sum'),
|
||||
'value' => $this->dao->together(['paid' => 1, 'pid' => 0, 'activity_type' => $order_type[$key] ?? 0, 'time' => $time] + $where, 'pay_price', 'sum'),
|
||||
'itemStyle' => ['color' => $color[$key]]
|
||||
];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ class SystemMenusServices extends BaseServices
|
|||
// $item['expand'] = true;
|
||||
$item['selected'] = false;
|
||||
$item['title'] = $item['menu_name'];
|
||||
$item['menu_path'] = preg_replace('/^\/' . ($this->type[$type] ?? 'admin') . '/', '', $item['menu_path']);
|
||||
$item['route'] = preg_replace('/^\/' . ($this->type[$type] ?? 'admin') . '/', '', $item['route']);
|
||||
$data[] = $item->getData();
|
||||
}
|
||||
return $data;
|
||||
|
|
@ -82,8 +82,14 @@ class SystemMenusServices extends BaseServices
|
|||
$rules = $systemRoleServices->getRoleArray(['status' => 1, 'id' => $rouleId], $type == 3 ? 'cashier_rules' : 'rules');
|
||||
$rulesStr = Arr::unique($rules);
|
||||
}
|
||||
$menusList = $this->dao->getMenusRoule(['type' => $type, 'route' => $level ? $rulesStr : '']);
|
||||
$unique = $this->dao->getMenusUnique(['type' => $type, 'unique' => $level ? $rulesStr : '']);
|
||||
// $menusList = $this->dao->getMenusRoule(['type' => $type, 'route' => $level ? $rulesStr : '']);
|
||||
$menusList = $this->dao->getSearch(['is_mer' => $type])
|
||||
->order('sort DESC,menu_id DESC')
|
||||
->failException(false)
|
||||
->select();
|
||||
$unique = [];//$this->dao->getMenusUnique(['type' => $type, 'unique' => $level ? $rulesStr : '']);
|
||||
|
||||
|
||||
return [Arr::getMenuIviewList($this->getMenusData($menusList, $type)), $unique];
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ class Arr
|
|||
$newData = [];
|
||||
foreach ($data as $k => $v) {
|
||||
$temp = [];
|
||||
$temp['path'] = $v['menu_path'];
|
||||
$temp['path'] = $v['route'];
|
||||
$temp['title'] = $v['menu_name'];
|
||||
$temp['icon'] = $v['icon'];
|
||||
$temp['header'] = $v['header'] ?? '';
|
||||
|
|
|
|||
Loading…
Reference in New Issue