Browse Source

预约单调整字段

zhangxiaobin 1 year ago
parent
commit
a48961f56c

+ 17 - 8
application/api/controller/PreOrder.php

@@ -26,15 +26,19 @@ class PreOrder extends Api
     public function getList(){
         try {
             $preOrderStatus = input('pre_order_status','');
-            $where['user_id'] = $this->auth->id;
-            if ($preOrderStatus != '') {
-                $where['pre_order_status'] = $preOrderStatus;
-            }
+
             $po = 'pre_order';
             $st = 'servicetype';
-            $field = $po.'.id,name,mobile,car_number,pre_time,order_time,cancel_time,'.$st.'.title,pre_order_status';
+            $o  = 'order';
+            $where[$po.'.user_id'] = $this->auth->id;
+            if ($preOrderStatus != '') {
+                $where[$po.'.pre_order_status'] = $preOrderStatus;
+            }
+            $field = $po.'.id,name,mobile,'.$po.'.car_id,'.$po.'.car_number,pre_time,order_time,'.$po.'.cancel_time,'.
+                $po.'.cancel_reason,'.$st.'.title,pre_order_status,'.$o.'.id as `order_id`';
             $result = $this->model->alias($po)->field($field)
                 ->join($st,$st.'.id = '.$po.'.servicetype_id','LEFT')
+                ->join($o,$o.'.pre_order_id = '.$po.'.id','LEFT')
                 ->where($where)->order($po.'.createtime desc')->autopage()->select();
             if (!empty($result)) {
                 $model = model('PreOrder');
@@ -44,6 +48,7 @@ class PreOrder extends Api
                     foreach ($timeArr as $k => $v) {
                         $value[$v] = !empty($value[$v]) ? date('Y年m月d日 H:i:s', $value[$v]) : '';
                     }
+                    $value['order_id'] = empty($value['order_id']) ? 0 : $value['order_id'];
                     $value['pre_order_status_text'] = isset($statusArr[$value['pre_order_status']]) ? $statusArr[$value['pre_order_status']] : '';
                 }
             }
@@ -82,7 +87,6 @@ class PreOrder extends Api
             }
             $time = time();
             $data = [
-                'company_id'     => $companyId,
                 'name'           => $this->request->param('name', ''),
                 'mobile'         => $this->request->param('mobile', ''),
                 'address'         => $this->request->param('address', ''),
@@ -93,6 +97,7 @@ class PreOrder extends Api
                 'pre_time'       => $preTime,
             ];
             if (empty($id)) {
+                $data['company_id'] = $companyId;
                 $data['pre_order_no'] = createUniqueNo('PO',$userId);
                 $data['user_id'] = $userId;
                 $data['createtime'] = $time;
@@ -147,12 +152,15 @@ class PreOrder extends Api
             $id = $this->request->param('id',0);
             $po = 'pre_order';
             $st = 'servicetype';
+            $o  = 'order';
             $where[$po.'.user_id'] = $this->auth->id;
             $where[$po.'.id'] = $id;
-            $field = $po.'.id,name,mobile,address,remark,car_number,pre_time,order_time,cancel_time,cancel_reason,'.
-            $po.'.createtime,servicetype_id,'.$st.'.title as `servicetype_title`,pre_order_status';
+            $field = $po.'.id,name,mobile,address,remark,'.$po.'.car_id,'.$po.'.car_number,pre_time,order_time,'.
+                $po.'.cancel_time,'.$po.'.cancel_reason,'.$po.'.createtime,'.$po.'.servicetype_id,'.$st.
+                '.title as `servicetype_title`,pre_order_status,'.$o.'.id as `order_id`';
             $result = $this->model->alias($po)->field($field)
                 ->join($st,$st.'.id = '.$po.'.servicetype_id','LEFT')
+                ->join($o,$o.'.pre_order_id = '.$po.'.id','LEFT')
                 ->where($where)->order($po.'.createtime desc')->find();
             if (!empty($result)) {
                 $model = model('PreOrder');
@@ -161,6 +169,7 @@ class PreOrder extends Api
                 foreach ($timeArr as $k => $v) {
                     $result[$v] = !empty($result[$v]) ? date('Y年m月d日 H:i:s', $result[$v]) : '';
                 }
+                $result['order_id'] = empty($result['order_id']) ? 0 : $result['order_id'];
                 $result['pre_order_status_text'] = isset($statusArr[$result['pre_order_status']]) ? $statusArr[$result['pre_order_status']] : '';
             }
             $this->success('获取成功',$result);

+ 1 - 1
application/api/controller/company/Preorder.php

@@ -34,7 +34,7 @@ class Preorder extends Apic
         $cancel_reason = input('cancel_reason','');
         $userService = new UserService();
         $params['pre_order_id'] = $id;
-        $preOrderRes = $userService->msgPreOrder($params);
+        $preOrderRes = $userService->msgPreOrder($params);echo '<pre>';var_dump($preOrderRes);exit;
         $update = [
             'cancel_reason' => $cancel_reason,
             'cancel_time'   => time(),

+ 1 - 1
application/common/model/PreOrder.php

@@ -35,7 +35,7 @@ class PreOrder extends Model
     
     public function getPreOrderStatusList()
     {
-        return ['0' => __('Pre_order_status 0'), '1' => __('Pre_order_status 1'), '2' => __('Pre_order_status 2')];
+        return ['0' => '已取消', '1' => '待处理', '2' => '已开单'];
     }
 
 

+ 5 - 2
application/common/service/UserService.php

@@ -2,6 +2,7 @@
 
 namespace app\common\service;
 
+use app\common\model\PreOrder;
 use GuzzleHttp\Client;
 use think\Db;
 use think\Exception;
@@ -122,6 +123,8 @@ class UserService
             if (empty($preOrder)) {
                 throw new Exception('未找到预约信息');
             }
+            $statusArr = model('PreOrder')->getPreOrderStatusList();
+            $statusText = isset($statusArr[$preOrder['pre_order_status']]) ? $statusArr[$preOrder['pre_order_status']] : '';
             $wechatTemplate = config('param.wechat_template');
             $preOrderMsg = isset($wechatTemplate['pre_order']) ? $wechatTemplate['pre_order'] : [];
             /*预约日期 {{time1.DATA}}
@@ -129,8 +132,8 @@ class UserService
               预约类型{{thing7.DATA}}
               顾客称号{{thing3.DATA}}*/
             $data = [//数据内容
-                "time1"  => ["value" => date('Y年m月d日 H:i:s',$preOrder['pre_time'])],
-                "thing8" => ["value" => $preOrder['company_name'] .'的预约'.$preOrder['pre_order_status_text']],
+                "time1"  => ["value" => date('Y年m月d日 H:i',$preOrder['pre_time'])],
+                "thing8" => ["value" => $preOrder['company_name'] .'的预约'.$statusText],
                 "thing7" => ["value" => $preOrder['service_title']],
                 "thing3" => ["value" => $preOrder['name']],
             ];