瀏覽代碼

完善功能

gorden 6 月之前
父節點
當前提交
c116e61919

+ 4 - 1
app/admin/controller/coupon/CouponController.php

@@ -44,6 +44,10 @@ class CouponController extends Curd
         if (!empty($joinCouponCategoryId)) {
             $where['join_coupon_category_id'] = ['in', implode(',', $joinCouponCategoryId)];
         }
+        if (!empty($where['coupon_addtimes'])){
+            $where['coupon_addtimes'][0] = strtotime($where['coupon_addtimes'][0]);
+            $where['coupon_addtimes'][1] = strtotime($where['coupon_addtimes'][1]);
+        }
         $order = $request->get('order', 'desc');
         $field = $field ?? 'coupon_addtimes';
         $query = $this->doSelect($where, $field, $order);
@@ -110,7 +114,6 @@ class CouponController extends Curd
                             $item['coupon_use_member'] = 'condition';
                             $where = str_replace('`', '', urldecode($couponJson['member']['where']));
                             $whereArr = explode('=', $where);
-//                            dump($whereArr);
                             if (isset($whereArr[0]) && trim($whereArr[0]) == 'member_is_vip') {
                                 $item['condition'] = 'is_vip';
                             } else if (isset($whereArr[0]) && trim($whereArr[0]) == 'member_classify') {

+ 3 - 0
app/admin/controller/member/BenefitController.php

@@ -293,6 +293,9 @@ class BenefitController extends Curd
                     }
                 }
             }
+            if (!empty($quota['member']) && !empty($quota['member']['member_mobile'])) {
+                $quota['member']['member_mobile'] = substr_replace($quota['member']['member_mobile'], '****', 3, 4);
+            }
         }
 
         return json_success('', compact('rows', 'page', 'pageSize', 'total'));

+ 60 - 53
app/admin/controller/member/QuotaController.php

@@ -93,21 +93,24 @@ class QuotaController extends Curd
                 ->first()
                 ->toArray();
             $quotaUsed = MemberQuota::where('join_quota_member_id', $row['join_quota_member_id'])
-            ->where('join_member_rule_added_component_id', $row['join_member_rule_added_component_id'])
-            ->where('member_quota_status', 'USED')
-            ->count();
+                ->where('join_member_rule_added_component_id', $row['join_member_rule_added_component_id'])
+                ->where('member_quota_status', 'USED')
+                ->count();
             $quota['used'] = $quotaUsed;
-            if ($quota['member_quota_nbr'] == '-99.00'){
+            if ($quota['member_quota_nbr'] == '-99.00') {
                 $quota['total'] = '不限次';
                 $quota['unused'] = '不限次';
-            }else{
+            } else {
                 $quotaTotal = MemberQuota::where('join_quota_member_id', $row['join_quota_member_id'])
-                ->where('join_member_rule_added_component_id', $row['join_member_rule_added_component_id'])
-                ->count();
+                    ->where('join_member_rule_added_component_id', $row['join_member_rule_added_component_id'])
+                    ->count();
                 $quota['total'] = $quotaTotal;
                 $quota['unused'] = $quotaTotal - $quotaUsed;
             }
-            
+            if (!empty($quota['member']) && !empty($quota['member']['member_mobile'])) {
+                $quota['member']['member_mobile'] = substr_replace($quota['member']['member_mobile'], '****', 3, 4);
+            }
+
 
             $addedId = RuleAddedComponent::where('rule_added_component_id', $row['join_member_rule_added_component_id'])->value('join_component_rule_added_id');
             $addedName = RuleAdded::where('rule_added_id', $addedId)->value('rule_added_name');
@@ -227,6 +230,7 @@ class QuotaController extends Curd
             if (!empty($quota['member_quota_used_json'])) {
                 $usedJson = json_decode($quota['member_quota_used_json'], true);
                 $quota['premises'] = $usedJson['charge']['charge_premises'] ?? '';
+                $quota['remark'] = $usedJson['charge']['charge_content'] ?? '';
                 if (isset($usedJson['charge']['charge_user_id'])) {
                     $user = SysUser::where('user_id', $usedJson['charge']['charge_user_id'])
                         ->select('user_id', 'user_name')
@@ -237,6 +241,9 @@ class QuotaController extends Curd
                     }
                 }
             }
+            if (!empty($quota['member']) && !empty($quota['member']['member_mobile'])) {
+                $quota['member']['member_mobile'] = substr_replace($quota['member']['member_mobile'], '****', 3, 4);
+            }
         }
 
         return json_success('', compact('rows', 'page', 'pageSize', 'total'));
@@ -292,19 +299,19 @@ class QuotaController extends Curd
         try {
             // 生成核销数据
             $writeOffData = AddedService::generateWriteOffData($params);
-            if($quotas[0]['member_quota_nbr'] != '-99.00'){
+            if ($quotas[0]['member_quota_nbr'] != '-99.00') {
                 foreach ($quotas as $quota) {
                     $writeOffData['member_quota_id'] = $quota['member_quota_id'];
-    
+
                     MemberQuota::where('member_quota_id', $quota['member_quota_id'])->update([
                         'member_quota_status' => 'USED',
                         'member_quota_used_json' => json_encode($writeOffData)
                     ]);
                 }
-            }else{
+            } else {
                 $quota = $quotas[0];
-                for($i=0;$i<$nbr;$i++){
-                    $quota['member_quota_id'] = 'MQ'.date('YmdHis').random_string(6,'up');
+                for ($i = 0; $i < $nbr; $i++) {
+                    $quota['member_quota_id'] = 'MQ' . date('YmdHis') . random_string(6, 'up');
                     $quota['member_quota_status'] = 'USED';
                     $quota['member_quota_used_json'] = json_encode($writeOffData);
                     $quota['member_quota_addtimes'] = strtotime($quota['member_quota_addtimes']);
@@ -312,13 +319,13 @@ class QuotaController extends Curd
                     MemberQuota::insert($quota);
                 }
             }
-            
-            _syslog("核销","核销成功");
+
+            _syslog("核销", "核销成功");
 
             return json_success("核销成功");
         } catch (\Exception $e) {
             dump($e->getMessage());
-            _syslog("核销","核销失败");
+            _syslog("核销", "核销失败");
 
             return json_fail("核销失败");
         }
@@ -351,7 +358,7 @@ class QuotaController extends Curd
         if ($redisCode != $code) {
             return json_fail("验证码错误,请重新输入");
         }
-        
+
         if (!$times) {
             $params['times'] = date('Y-m-d H:i:s');
         } else {
@@ -360,56 +367,56 @@ class QuotaController extends Curd
 
         Db::beginTransaction();
         try {
-            foreach($params['quotaList'] as $quota){
-                if (!isset($quota['nbr']) || intval($quota['nbr']) == 0){
+            foreach ($params['quotaList'] as $quota) {
+                if (!isset($quota['nbr']) || intval($quota['nbr']) == 0) {
                     continue;
                 }
                 $nbr = intval($quota['nbr']);
-                
+
                 $quotas = MemberQuota::where('join_quota_member_id', $memberId)
-                ->where('join_member_rule_added_component_id', $quota['rule_added_component_id'])
-                ->where('member_quota_status', 'PENDING')
-                ->limit($nbr)
-                ->get()
-                ->toArray();
-                
+                    ->where('join_member_rule_added_component_id', $quota['rule_added_component_id'])
+                    ->where('member_quota_status', 'PENDING')
+                    ->limit($nbr)
+                    ->get()
+                    ->toArray();
+
                 if ($quotas[0]['member_quota_nbr'] != '-99.00' && count($quotas) < intval($nbr)) {
                     Db::rollBack();
                     return json_fail("可核销数量不足");
                 }
                 // 生成核销数据
                 $param = [
-                    'component_id'=>$quota['rule_added_component_id'],
-                    'member_id'=>$memberId,
-                    'write_off_member_id'=>$params['write_off_member_id'],
-                    'dept_premises_id'=>$params['dept_premises_id'] ?? '',
-                    'times'=>$params['times'],
-                    'remark'=>$params['remark'] ?? ''
+                    'component_id' => $quota['rule_added_component_id'],
+                    'member_id' => $memberId,
+                    'write_off_member_id' => $params['write_off_member_id'],
+                    'dept_premises_id' => $params['dept_premises_id'] ?? '',
+                    'times' => $params['times'],
+                    'remark' => $params['remark'] ?? ''
                 ];
                 $writeOffData = AddedService::generateWriteOffData($param);
-                if($quotas[0]['member_quota_nbr'] != '-99.00'){
+                if ($quotas[0]['member_quota_nbr'] != '-99.00') {
                     foreach ($quotas as $quota) {
                         $writeOffData['member_quota_id'] = $quota['member_quota_id'];
-        
+
                         MemberQuota::where('member_quota_id', $quota['member_quota_id'])->update([
                             'member_quota_status' => 'USED',
                             'member_quota_used_json' => json_encode($writeOffData)
                         ]);
                     }
-                }else{
+                } else {
                     $quota = $quotas[0];
-                    for($i=0;$i<$nbr;$i++){
-                        $quota['member_quota_id'] = 'MQ'.date('YmdHis').random_string(6,'up');
+                    for ($i = 0; $i < $nbr; $i++) {
+                        $quota['member_quota_id'] = 'MQ' . date('YmdHis') . random_string(6, 'up');
                         $quota['member_quota_status'] = 'USED';
                         $quota['member_quota_used_json'] = json_encode($writeOffData);
                         $quota['member_quota_addtimes'] = strtotime($quota['member_quota_addtimes']);
                         $quota['member_quota_nbr'] = 1;
                         MemberQuota::insert($quota);
                     }
-                }   
+                }
             }
 
-            _syslog("核销","核销成功");
+            _syslog("核销", "核销成功");
 
             //  清除验证码
             // Redis::del($key);
@@ -421,14 +428,14 @@ class QuotaController extends Curd
             Db::rollBack();
 
             dump($e->getMessage());
-            _syslog("核销","核销失败");
+            _syslog("核销", "核销失败");
 
             return json_fail("核销失败");
         }
     }
 
     public static function doWriteOff($params)
-    {    
+    {
         $quotas = MemberQuota::where('join_quota_member_id', $params['member_id'])
             ->where('join_member_rule_added_component_id', $params['component_id'])
             ->where('member_quota_status', 'PENDING')
@@ -456,12 +463,12 @@ class QuotaController extends Curd
                 ]);
             }
 
-            _syslog("核销","核销成功");
+            _syslog("核销", "核销成功");
             return json_success("核销成功");
 
         } catch (\Exception $e) {
-            _syslog("核销","核销失败");
-            
+            _syslog("核销", "核销失败");
+
             throw new BusinessException('核销失败');
             // return json_fail("核销失败");
         }
@@ -476,23 +483,23 @@ class QuotaController extends Curd
         $memberId = $request->get('member_id', '');
         $componentIds = $request->get('component_ids', []);
 
-        if(empty($componentIds) || !$memberId){
+        if (empty($componentIds) || !$memberId) {
             return json_fail("参数异常");
         }
 
-        $components = RuleAddedComponent::whereIn('rule_added_component_id',$componentIds)
-            ->select('rule_added_component_name','rule_added_component_id')
+        $components = RuleAddedComponent::whereIn('rule_added_component_id', $componentIds)
+            ->select('rule_added_component_name', 'rule_added_component_id')
             ->get();
-        foreach ($components as &$component){
-            $component->unused = MemberQuota::where('join_quota_member_id',$memberId)
-                ->where('join_member_rule_added_component_id',$component->rule_added_component_id)
-                ->where('member_quota_status','PENDING')
+        foreach ($components as &$component) {
+            $component->unused = MemberQuota::where('join_quota_member_id', $memberId)
+                ->where('join_member_rule_added_component_id', $component->rule_added_component_id)
+                ->where('member_quota_status', 'PENDING')
                 ->count();
         }
 
-        $member = Member::where('member_id',$memberId)->select('member_id','member_mobile')->first();
+        $member = Member::where('member_id', $memberId)->select('member_id', 'member_mobile')->first();
 
-        return json_success('',['member'=>$member,'quotas'=>$components]);
+        return json_success('', ['member' => $member, 'quotas' => $components]);
     }
 
 }

+ 26 - 33
app/admin/controller/order/DishesController.php

@@ -38,50 +38,43 @@ class DishesController extends Curd
         }
 
         $order = $request->get('order', 'desc');
+        $orderId = $request->get('order_id', '');
         $field = $field ?? 'order_addtimes';
         // $where['order_category'] = 'DISHES';
         if (!empty($where['order_status_system']) && in_array($where['order_status_system'], ['PENDING', 'WAITING', 'SENDING', 'RECVING', 'SIGNED', 'CONFIRM'])) {
             $where['order_is_complete'] = 'N';
             $where['order_category'] = ['<>', 'RETURN'];
         }
-
-        // if (!empty($where['order_status_system']) && $where['order_status_system'] == 'RETURN') {
-        //     unset($where['order_status_system']);
-        //     unset($where['order_is_complete']);
-        //     $where['order_category'] = 'RETURN';
-        // }
-        // if ($request->get('return')){
-        //     $where['order_return.order_return_status'] = $request->get('return');
-        // }
-        // if ($request->get('goods_classify') || $request->get('goods_name')){
-//            $where['order_id'] = '';
-        if (empty($where['order_id'])){
-            $goodsClassify = 'MEALS';
+        $goodsClassify = 'MEALS';
+        $orderIds = [];
+        if (!empty($orderId)) {
+            $orderIds = Order::where('order_id', 'like', '%' . $orderId . '%')->pluck('order_id')->toArray();
         }
-//        $goodsClassify = $request->get('goods_classify', '');
         $goodsName = $request->get('goods_name', '');
-        if (!empty($goodsName) && empty($goodsClassify)) {
-            $goodsIds = Goods::where('goods_name', 'like', '%' . $request->get('goods_name') . '%')->pluck('goods_id')->toArray();
-        } else if (!empty($goodsClassify)) {
-            if ($goodsClassify == 'SERVICE') {
-                $goodsModel = Goods::whereIn('goods_classify', ['SERVICE', 'CHNMED', 'CHNNCD']);
-            } else {
-                $goodsModel = Goods::where('goods_classify', $goodsClassify);
-            }
-
-            if (!empty($goodsName)) {
-                $goodsModel->where('goods_name', 'like', '%' . $goodsName . '%');
-            }
-
-            $goodsIds = $goodsModel->pluck('goods_id')->toArray();
+        if (!empty($goodsName)) {
+            $goodsIds = Goods::where('goods_classify', $goodsClassify)
+                ->where('goods_name', 'like', '%' . $goodsName . '%')
+                ->pluck('goods_id')
+                ->toArray();
+        }else if(empty($orderIds)){
+            $goodsIds = Goods::where('goods_classify', $goodsClassify)
+                ->pluck('goods_id')
+                ->toArray();
         }
-        if (!empty($goodsIds)) {
-            $orderIds = OrderSheet::whereIn('join_sheet_goods_id', $goodsIds)->pluck('join_sheet_order_id')->toArray();
-            if ($orderIds) {
-                $where['order_id'] = ['in', implode(',', $orderIds)];
+        if (!empty($goodsName) && empty($goodsIds)){
+            $orderIds = [];
+        }else if (!empty($goodsIds)) {
+            $goodsOrderIds = OrderSheet::whereIn('join_sheet_goods_id', $goodsIds)->pluck('join_sheet_order_id')->toArray();
+            if (!empty($orderIds)){
+                $orderIds = array_intersect($orderIds, $goodsOrderIds);
+            }else{
+                $orderIds = $goodsOrderIds;
             }
         }
-        // }
+        if ($orderIds) {
+            $where['order_id'] = ['in', implode(',', $orderIds)];
+        }
+
         $query = $this->doSelect($where, $field, $order);
         return $this->doFormat($query, $format, $limit);
     }

+ 29 - 34
app/admin/controller/order/GoodsController.php

@@ -37,7 +37,6 @@ class GoodsController extends Curd{
 
         $order = $request->get('order', 'desc');
         $field = $field ?? 'order_addtimes';
-        // $where['pay_detail.pay_category'] = 'GOODS';
         if (!empty($where['order_status_system']) && in_array($where['order_status_system'], ['PENDING', 'WAITING', 'SENDING', 'RECVING', 'SIGNED', 'CONFIRM'])) {
             if ($where['order_status_system'] == 'SENDING'){
                 $where['order_express.order_express_type'] = '配送';
@@ -45,40 +44,36 @@ class GoodsController extends Curd{
             $where['order_is_complete'] = 'N';
         }
 
-        // if (!empty($where['order_status_system']) && $where['order_status_system'] == 'RETURN') {
-        //     unset($where['order_status_system']);
-        //     unset($where['order_is_complete']);
-        //     $where['order_category'] = 'RETURN';
-        // }
-        // if ($request->get('return')){
-        //     $where['order_return.order_return_status'] = $request->get('return');
-        // }
-        // if ($request->get('goods_classify') || $request->get('goods_name')){
-            $where['order_id'] = '';
-            $goodsClassify = 'GOODS';
-            $goodsName = $request->get('goods_name','');
-            if (!empty($goodsName) && empty($goodsClassify)){
-                $goodsIds = Goods::where('goods_name','like','%'.$request->get('goods_name').'%')->pluck('goods_id')->toArray();
-            }else if(!empty($goodsClassify)){
-                if($goodsClassify == 'SERVICE'){
-                    $goodsModel = Goods::whereIn('goods_classify',['SERVICE','CHNMED','CHNNCD']);
-                }else{
-                    $goodsModel = Goods::where('goods_classify',$goodsClassify);
-                }
-
-                if(!empty($goodsName)){
-                    $goodsModel->where('goods_name','like','%'.$goodsName.'%');
-                }
-
-                $goodsIds = $goodsModel->pluck('goods_id')->toArray();
-            }
-            if($goodsIds){
-                $orderIds = OrderSheet::whereIn('join_sheet_goods_id',$goodsIds)->pluck('join_sheet_order_id')->toArray();
-                if($orderIds){
-                    $where['order_id'] = ['in',implode(',',$orderIds)];
-                }
+        $orderId = $request->get('order_id', '');
+        $goodsClassify = 'GOODS';
+        $orderIds = [];
+        if (!empty($orderId)) {
+            $orderIds = Order::where('order_id', 'like', '%' . $orderId . '%')->pluck('order_id')->toArray();
+        }
+        $goodsName = $request->get('goods_name', '');
+        if (!empty($goodsName)) {
+            $goodsIds = Goods::where('goods_classify', $goodsClassify)
+                ->where('goods_name', 'like', '%' . $goodsName . '%')
+                ->pluck('goods_id')
+                ->toArray();
+        }else if(empty($orderIds)){
+            $goodsIds = Goods::where('goods_classify', $goodsClassify)
+                ->pluck('goods_id')
+                ->toArray();
+        }
+        if (!empty($goodsName) && empty($goodsIds)){
+            $orderIds = [];
+        }else if (!empty($goodsIds)) {
+            $goodsOrderIds = OrderSheet::whereIn('join_sheet_goods_id', $goodsIds)->pluck('join_sheet_order_id')->toArray();
+            if (!empty($orderIds)){
+                $orderIds = array_intersect($orderIds, $goodsOrderIds);
+            }else{
+                $orderIds = $goodsOrderIds;
             }
-        // }
+        }
+        if ($orderIds) {
+            $where['order_id'] = ['in', implode(',', $orderIds)];
+        }
         
         // 自提订单        
         if (!empty($where['order_status_system']) && $where['order_status_system'] == 'PICKUP'){

+ 29 - 34
app/admin/controller/order/PackagesController.php

@@ -36,46 +36,41 @@ class PackagesController extends Curd{
         }
 
         $order = $request->get('order', 'desc');
+        $orderId = $request->get('order_id', '');
         $field = $field ?? 'order_addtimes';
-        // $where['order_category'] = 'PACKAGE';
         if (!empty($where['order_status_system']) && in_array($where['order_status_system'], ['PENDING', 'WAITING', 'SENDING', 'RECVING', 'SIGNED', 'CONFIRM'])) {
             $where['order_is_complete'] = 'N';
         }
 
-        // if (!empty($where['order_status_system']) && $where['order_status_system'] == 'RETURN') {
-        //     unset($where['order_status_system']);
-        //     unset($where['order_is_complete']);
-        //     $where['order_category'] = 'RETURN';
-        // }
-        // if ($request->get('return')){
-        //     $where['order_return.order_return_status'] = $request->get('return');
-        // }
-        // if ($request->get('goods_classify') || $request->get('goods_name')){
-            $where['order_id'] = '';
-            $goodsClassify = 'PACKAGE';
-            $goodsName = $request->get('goods_name','');
-            if (!empty($goodsName) && empty($goodsClassify)){
-                $goodsIds = Goods::where('goods_name','like','%'.$request->get('goods_name').'%')->pluck('goods_id')->toArray();
-            }else if(!empty($goodsClassify)){
-                if($goodsClassify == 'SERVICE'){
-                    $goodsModel = Goods::whereIn('goods_classify',['SERVICE','CHNMED','CHNNCD']);
-                }else{
-                    $goodsModel = Goods::where('goods_classify',$goodsClassify);
-                }
-
-                if(!empty($goodsName)){
-                    $goodsModel->where('goods_name','like','%'.$goodsName.'%');
-                }
-
-                $goodsIds = $goodsModel->pluck('goods_id')->toArray();
-            }
-            if($goodsIds){
-                $orderIds = OrderSheet::whereIn('join_sheet_goods_id',$goodsIds)->pluck('join_sheet_order_id')->toArray();
-                if($orderIds){
-                    $where['order_id'] = ['in',implode(',',$orderIds)];
-                }
+        $goodsClassify = 'PACKAGE';
+        $orderIds = [];
+        if (!empty($orderId)) {
+            $orderIds = Order::where('order_id', 'like', '%' . $orderId . '%')->pluck('order_id')->toArray();
+        }
+        $goodsName = $request->get('goods_name', '');
+        if (!empty($goodsName)) {
+            $goodsIds = Goods::where('goods_classify', $goodsClassify)
+                ->where('goods_name', 'like', '%' . $goodsName . '%')
+                ->pluck('goods_id')
+                ->toArray();
+        }else if(empty($orderIds)){
+            $goodsIds = Goods::where('goods_classify', $goodsClassify)
+                ->pluck('goods_id')
+                ->toArray();
+        }
+        if (!empty($goodsName) && empty($goodsIds)){
+            $orderIds = [];
+        }else if (!empty($goodsIds)) {
+            $goodsOrderIds = OrderSheet::whereIn('join_sheet_goods_id', $goodsIds)->pluck('join_sheet_order_id')->toArray();
+            if (!empty($orderIds)){
+                $orderIds = array_intersect($orderIds, $goodsOrderIds);
+            }else{
+                $orderIds = $goodsOrderIds;
             }
-        // }
+        }
+        if ($orderIds) {
+            $where['order_id'] = ['in', implode(',', $orderIds)];
+        }
 
         $query = $this->doSelect($where, $field, $order);
         return $this->doFormat($query, $format, $limit);

+ 28 - 33
app/admin/controller/order/ServicesController.php

@@ -43,40 +43,35 @@ class ServicesController extends Curd{
             $where['order_category'] = ['<>','RETURN'];
         }
 
-        // if (!empty($where['order_status_system']) && $where['order_status_system'] == 'RETURN') {
-        //     unset($where['order_status_system']);
-        //     unset($where['order_is_complete']);
-        //     $where['order_category'] = 'RETURN';
-        // }
-        // if ($request->get('return')){
-        //     $where['order_return.order_return_status'] = $request->get('return');
-        // }
-        // if ($request->get('goods_classify') || $request->get('goods_name')){
-            $where['order_id'] = '';
-            $goodsClassify = 'SERVICE';
-            $goodsName = $request->get('goods_name','');
-            if (!empty($goodsName) && empty($goodsClassify)){
-                $goodsIds = Goods::where('goods_name','like','%'.$request->get('goods_name').'%')->pluck('goods_id')->toArray();
-            }else if(!empty($goodsClassify)){
-                if($goodsClassify == 'SERVICE'){
-                    $goodsModel = Goods::whereIn('goods_classify',['SERVICE','CHNMED','CHNNCD']);
-                }else{
-                    $goodsModel = Goods::where('goods_classify',$goodsClassify);
-                }
-
-                if(!empty($goodsName)){
-                    $goodsModel->where('goods_name','like','%'.$goodsName.'%');
-                }
-
-                $goodsIds = $goodsModel->pluck('goods_id')->toArray();
-            }
-            if($goodsIds){
-                $orderIds = OrderSheet::whereIn('join_sheet_goods_id',$goodsIds)->pluck('join_sheet_order_id')->toArray();
-                if($orderIds){
-                    $where['order_id'] = ['in',implode(',',$orderIds)];
-                }
+        $orderId = $request->get('order_id', '');
+        $orderIds = [];
+        if (!empty($orderId)) {
+            $orderIds = Order::where('order_id', 'like', '%' . $orderId . '%')->pluck('order_id')->toArray();
+        }
+        $goodsName = $request->get('goods_name', '');
+        if (!empty($goodsName)) {
+            $goodsIds = Goods::whereIn('goods_classify',['SERVICE','CHNMED','CHNNCD'])
+                ->where('goods_name', 'like', '%' . $goodsName . '%')
+                ->pluck('goods_id')
+                ->toArray();
+        }else if(empty($orderIds)){
+            $goodsIds = Goods::whereIn('goods_classify',['SERVICE','CHNMED','CHNNCD'])
+                ->pluck('goods_id')
+                ->toArray();
+        }
+        if (!empty($goodsName) && empty($goodsIds)){
+            $orderIds = [];
+        }else if (!empty($goodsIds)) {
+            $goodsOrderIds = OrderSheet::whereIn('join_sheet_goods_id', $goodsIds)->pluck('join_sheet_order_id')->toArray();
+            if (!empty($orderIds)){
+                $orderIds = array_intersect($orderIds, $goodsOrderIds);
+            }else{
+                $orderIds = $goodsOrderIds;
             }
-        // }
+        }
+        if ($orderIds) {
+            $where['order_id'] = ['in', implode(',', $orderIds)];
+        }
 
         $query = $this->doSelect($where, $field, $order);
         return $this->doFormat($query, $format, $limit);

+ 8 - 0
app/admin/controller/order/WholeController.php

@@ -3436,6 +3436,14 @@ class WholeController extends Curd
             if (isset($params['order_express_person'])) {
                 $model->order_express_person = $params['order_express_person'];
             }
+            if (isset($params['dept_premises_id'])) {
+                $model->join_express_dept_id = $params['dept_premises_id'];
+            }
+            if (!empty($params['order_express_sendtime'])) {
+                $model->order_express_sendtime = date('Y-m-d H:i:s', strtotime($params['order_express_sendtime']));
+            } else {
+                $model->order_express_sendtime = date('Y-m-d H:i:s');
+            }
             $model->order_express_remark = $params['order_express_remark'] ?? null;
             $model->order_express_addtimes = $params['order_express_addtimes'] ?? time();
             $expressExtendJson['delivery_time'] = date('Y-m-d H:i:s');

+ 1 - 0
app/admin/service/member/MemberService.php

@@ -358,6 +358,7 @@ class MemberService
             'member_cert_face' => !empty($member['cert']) && !empty($member['cert']['member_cert_face']) ? getenv('STORAGE_DOMAIN') . $member['cert']['member_cert_face'] : '',
             'member_cert_photo' => !empty($member['cert']) && !empty($member['cert']['member_cert_photo']) ? getenv('STORAGE_DOMAIN') . $member['cert']['member_cert_photo'] : '',
             'member_cert_nation' => $member['cert']['member_cert_nation'] ?? '',
+            'member_cert_addtimes' => $member['cert']['member_cert_addtimes'] ?? '',
         ];
         if (!empty($member['join_invite_member_id'])) {
             $inviteMember = Member::with([

+ 6 - 2
app/model/MemberCert.php

@@ -12,8 +12,12 @@ class MemberCert extends Model
 
     public $keyType = 'string';
 
-
-    const CREATED_AT = null;
+    const CREATED_AT = 'member_cert_addtimes';
 
     const UPDATED_AT = null;
+
+    public function serializeDate(\DateTimeInterface $date)
+    {
+        return $date->format('Y-m-d H:i:s');
+    }
 }