Kaynağa Gözat

投诉工单列表

whitefang 1 yıl önce
ebeveyn
işleme
c18f4b709f

+ 10 - 0
app/common/model/works/ReturnWork.php

@@ -33,4 +33,14 @@ class ReturnWork extends BaseModel
     {
         return $this->hasOne(ServiceWork::class,'id','service_work_id');
     }
+
+    public function getFinishedImagesAttr($value)
+    {
+        return empty($value)?'':json_decode($value,true);
+    }
+
+    public function setFinishedImagesAttr($value)
+    {
+        return empty($value)?'':json_encode($value,JSON_UNESCAPED_UNICODE);
+    }
 }

+ 12 - 0
app/workerapi/controller/ReturnWorkController.php

@@ -34,4 +34,16 @@ class ReturnWorkController extends BaseApiController
         }
         return $this->data($result);
     }
+
+    public function updateReturn()
+    {
+        $params = (new ReturnWorkValidate())->goCheck('update',[
+            'user_id' => $this->userId,
+        ]);
+        $result = ReturnWorkLogic::updateReturn($params);
+        if (false === $result) {
+            return $this->fail(ReturnWorkLogic::getError());
+        }
+        return $this->data($result);
+    }
 }

+ 19 - 0
app/workerapi/logic/ReturnWorkLogic.php

@@ -24,4 +24,23 @@ class ReturnWorkLogic extends BaseLogic
         return ReturnWork::with(['service_work'=>function ($query) {
         }])->findOrEmpty($params['id'])->toArray();
     }
+
+    /**
+     * 修改工单
+     * @param $params
+     * @return false|void
+     */
+    public static function updateReturn($params)
+    {
+        try {
+            $work = ReturnWork::findOrEmpty($params['id']);
+            $work->appointment_time = strtotime($params['appointment_time']);
+            $work->finished_images = $params['finished_images'];
+            $work->save();
+        }catch (\Exception $e) {
+            Db::rollback();
+            self::setError($e->getMessage());
+            return false;
+        }
+    }
 }

+ 4 - 0
app/workerapi/validate/ReturnWorkValidate.php

@@ -55,4 +55,8 @@ class ReturnWorkValidate extends BaseValidate
         return $this->only(['id']);
     }
 
+    public function sceneUpdate()
+    {
+        return $this->only(['id','appointment_time','finished_images']);
+    }
 }