diff --git a/app/admin/lists/goods/GoodsLists.php b/app/admin/lists/goods/GoodsLists.php index d820608..e4d86cb 100644 --- a/app/admin/lists/goods/GoodsLists.php +++ b/app/admin/lists/goods/GoodsLists.php @@ -51,10 +51,10 @@ class GoodsLists extends BaseAdminDataLists implements ListsSearchInterface ->order(['id' => 'desc']) ->select()->each(function($data){ if(!empty($data['sys_labels'])){ - $goodslabel = GoodsLabel::where('id','in',trim($data['sys_labels'],','))->column('name'); - $data['sys_labels_text'] = implode(',',$goodslabel); + $goodslabel = GoodsLabel::where('id','in',$data['sys_labels'])->column('id,name'); + $data['sys_labels_arr'] = $goodslabel; }else{ - $data['sys_labels_text'] = ''; + $data['sys_labels_arr'] = []; } }) ->toArray(); diff --git a/app/admin/lists/supplier/SupplierLists.php b/app/admin/lists/supplier/SupplierLists.php index b46e776..dcd374f 100644 --- a/app/admin/lists/supplier/SupplierLists.php +++ b/app/admin/lists/supplier/SupplierLists.php @@ -48,12 +48,12 @@ class SupplierLists extends BaseAdminDataLists implements ListsSearchInterface ->limit($this->limitOffset, $this->limitLength) ->order(['id' => 'desc']) ->select()->each(function($data){ - if(!empty($data['sys_labels'])){ - $goodslabel = GoodsLabel::where('id','in',trim($data['sys_labels'],','))->column('name'); - $data['sys_labels_text'] = implode(',',$goodslabel); - }else{ - $data['sys_labels_text'] = ''; - } + if(!empty($data['sys_labels'])){ + $goodslabel = GoodsLabel::where('id','in',$data['sys_labels'])->column('id,name'); + $data['sys_labels_arr'] = $goodslabel; + }else{ + $data['sys_labels_arr'] = []; + } }) ->toArray(); } diff --git a/app/admin/logic/goods/GoodsLogic.php b/app/admin/logic/goods/GoodsLogic.php index f3404ef..1a81924 100644 --- a/app/admin/logic/goods/GoodsLogic.php +++ b/app/admin/logic/goods/GoodsLogic.php @@ -27,10 +27,6 @@ class GoodsLogic extends BaseLogic */ public static function add(array $params): bool { - if($params['sys_labels']){ - $sys_labels=explode(',',$params['sys_labels']); - $params['sys_labels']=','.implode(',',$sys_labels).','; - } Db::startTrans(); try { Goods::create([ @@ -75,10 +71,6 @@ class GoodsLogic extends BaseLogic */ public static function edit(array $params): bool { - if($params['sys_labels']){ - $sys_labels=explode(',',$params['sys_labels']); - $params['sys_labels']=','.implode(',',$sys_labels).','; - } Db::startTrans(); try { Goods::where('id', $params['id'])->update([ diff --git a/app/admin/logic/supplier/SupplierLogic.php b/app/admin/logic/supplier/SupplierLogic.php index aff9852..0a25910 100644 --- a/app/admin/logic/supplier/SupplierLogic.php +++ b/app/admin/logic/supplier/SupplierLogic.php @@ -27,10 +27,6 @@ class SupplierLogic extends BaseLogic */ public static function add(array $params): bool { - if($params['sys_labels']){ - $sys_labels=explode(',',$params['sys_labels']); - $params['sys_labels']=','.implode(',',$sys_labels).','; - } Db::startTrans(); try { Supplier::create([ @@ -80,10 +76,6 @@ class SupplierLogic extends BaseLogic */ public static function edit(array $params): bool { - if($params['sys_labels']){ - $sys_labels=explode(',',$params['sys_labels']); - $params['sys_labels']=','.implode(',',$sys_labels).','; - } Db::startTrans(); try { Supplier::where('id', $params['id'])->update([ diff --git a/app/api/controller/order/StatisticsController.php b/app/api/controller/order/StatisticsController.php new file mode 100644 index 0000000..ee1a11b --- /dev/null +++ b/app/api/controller/order/StatisticsController.php @@ -0,0 +1,9 @@ + ['paid','status','source'], + 'between_time' => 'create_time', + '%like%' => ['number'], + ]; + } + + + /** + * @notes 零售订单列表 + * @return array + * @throws \think\db\exception\DataNotFoundException + * @throws \think\db\exception\DbException + * @throws \think\db\exception\ModelNotFoundException + * @date 2024/04/27 11:26 + */ + public function lists(): array + { + $userId=$this->request->userId; + if(!$userId) return []; + return Cashierclass::where($this->searchWhere)->where('uid',$userId) + ->limit($this->limitOffset, $this->limitLength) + ->order(['id' => 'desc']) + ->select() + ->toArray(); + } + + + /** + * @notes 零售订单数量 + * @return int + * @date 2024/04/27 11:26 + */ + public function count(): int + { + return Cashierclass::where($this->searchWhere)->count(); + } + +} \ No newline at end of file diff --git a/app/common/model/goods/Goods.php b/app/common/model/goods/Goods.php index 1c00e10..a90f123 100644 --- a/app/common/model/goods/Goods.php +++ b/app/common/model/goods/Goods.php @@ -23,17 +23,16 @@ class Goods extends BaseModel { return explode(',',$value); } - public function setSysLabelAttr($value) + public function setSysLabelsAttr($value) { if (!empty($value)) { - if (!is_array($value)) - return ','. $value .','; - return ','. implode(',', $value) .','; + $sys_labels=explode(',',$value); + return ','.implode(',',$sys_labels).','; } return $value; } - public function getSysLabelAttr($value) + public function getSysLabelsAttr($value) { if (!$value) return []; return explode(',',rtrim(ltrim($value,','),',')); diff --git a/app/common/model/supplier/Supplier.php b/app/common/model/supplier/Supplier.php index 9a62d47..c048839 100644 --- a/app/common/model/supplier/Supplier.php +++ b/app/common/model/supplier/Supplier.php @@ -19,6 +19,19 @@ class Supplier extends BaseModel protected $name = 'supplier'; protected $deleteTime = 'delete_time'; + public function setSysLabelsAttr($value) + { + if (!empty($value)) { + $sys_labels=explode(',',$value); + return ','.implode(',',$sys_labels).','; + } + return $value; + } + public function getSysLabelsAttr($value) + { + if (!$value) return []; + return explode(',',rtrim(ltrim($value,','),',')); + } public function userAuth() { return $this->hasOne(UserAuth::class, 'id', 'uid')->bind(['openid']);