|
@@ -58,11 +58,62 @@ class Maintain extends Api
|
|
|
|
|
|
//申请材料
|
|
|
public function shenqingcailiao(){
|
|
|
+ $order_id = input('order_id',0);
|
|
|
+
|
|
|
$data = input('data','','htmlspecialchars_decode');
|
|
|
+ $data = json_decode($data,true);
|
|
|
+ if(empty($data)){
|
|
|
+ $this->error();
|
|
|
+ }
|
|
|
+
|
|
|
+ //订单
|
|
|
+ $map = [
|
|
|
+ 'worker_id' => $this->auth->id,
|
|
|
+ 'id' => $order_id,
|
|
|
+ ];
|
|
|
+ $info = Db::name('maintain')->where($map)->find();
|
|
|
+ if(empty($info)){
|
|
|
+ $this->error('不存在的订单');
|
|
|
+ }
|
|
|
+ if($info['status'] != 50){
|
|
|
+ $this->error('状态不正确,请刷新重试');
|
|
|
+ }
|
|
|
+
|
|
|
+ //准备数据
|
|
|
+ foreach($data as $key => $val){
|
|
|
+ $val['order_id'] = $info['id'];
|
|
|
+ $val['company_id'] = $info['company_id'];
|
|
|
+ $val['user_id'] = $info['user_id'];
|
|
|
+ $val['worker_id'] = $info['worker_id'];
|
|
|
+ $val['createtime'] = time();
|
|
|
+
|
|
|
+ $data[$key] = $val;
|
|
|
+ }
|
|
|
+
|
|
|
+ Db::startTrans();
|
|
|
+ $id = Db::name('maintain_cailiao')->insertAll($data);
|
|
|
+ if(!$id){
|
|
|
+ Db::rollback();
|
|
|
+ $this->error('申请失败');
|
|
|
+ }
|
|
|
+
|
|
|
+ $update = [
|
|
|
+ 'status' => 60,
|
|
|
+ 'updatetime' => time(),
|
|
|
+ 'cailiao_time' => time(), //材料申请时间
|
|
|
+ ];
|
|
|
+ $rs2 = Db::name('maintain')->where('id',$order_id)->update($update);
|
|
|
+ if($rs2 === false){
|
|
|
+ Db::rollback();
|
|
|
+ $this->error('申请失败');
|
|
|
+ }
|
|
|
+
|
|
|
+ Db::commit();
|
|
|
+ $this->success('申请成功');
|
|
|
|
|
|
}
|
|
|
//材料计量单位
|
|
|
- public function cailiao_guige(){
|
|
|
+ public function cailiao_danwei(){
|
|
|
$data = [
|
|
|
'个',
|
|
|
'把',
|
|
@@ -70,9 +121,42 @@ class Maintain extends Api
|
|
|
];
|
|
|
$this->success(1,$data);
|
|
|
}
|
|
|
+
|
|
|
//领取材料
|
|
|
public function lingqucailiao(){
|
|
|
+ $order_id = input('order_id',0);
|
|
|
+
|
|
|
+ $images = input('images','','trim');
|
|
|
+ if(empty($images)){
|
|
|
+ $this->error();
|
|
|
+ }
|
|
|
+
|
|
|
+ //订单
|
|
|
+ $map = [
|
|
|
+ 'worker_id' => $this->auth->id,
|
|
|
+ 'id' => $order_id,
|
|
|
+ ];
|
|
|
+ $info = Db::name('maintain')->where($map)->find();
|
|
|
+ if(empty($info)){
|
|
|
+ $this->error('不存在的订单');
|
|
|
+ }
|
|
|
+ if($info['status'] != 60){
|
|
|
+ $this->error('状态不正确,请刷新重试');
|
|
|
+ }
|
|
|
+
|
|
|
+ //
|
|
|
+ $update = [
|
|
|
+ 'status' => 70,
|
|
|
+ 'updatetime' => time(),
|
|
|
+ 'lingqu_time' => time(), //材料申请时间
|
|
|
+ 'lingqu_images' => $images,
|
|
|
+ ];
|
|
|
+ $rs2 = Db::name('maintain')->where('id',$order_id)->update($update);
|
|
|
+ if($rs2 === false){
|
|
|
+ $this->error('领取失败');
|
|
|
+ }
|
|
|
|
|
|
+ $this->success('领取成功');
|
|
|
}
|
|
|
|
|
|
//////////////////////////////循环开始///////////////////////
|
|
@@ -92,23 +176,26 @@ class Maintain extends Api
|
|
|
|
|
|
//状态枚举
|
|
|
private function status_data($status){
|
|
|
- //状态:0=待审核,2=已取消,4=审核未通过,10=待报价,20=报价待审,30=报价用户待审,40=待处理,41=选师傅,60=已完成
|
|
|
$data = [
|
|
|
- 0 => '待审核',
|
|
|
- 2 => '已取消',
|
|
|
- 4 => '审核未通过',
|
|
|
- 10 => '待报价', //等待初次报价
|
|
|
- 12 => '报价审核驳回', //等待再次报价
|
|
|
- 14 => '报价用户审核驳回',//等待再次报价
|
|
|
- 20 => '报价待审', //通过就去30,驳回就到12
|
|
|
- 30 => '报价用户待审', //通过就去40,驳回就到14
|
|
|
- 40 => '待处理', //报价都审核过了,可派师傅了
|
|
|
+ 0 => '待报价', //等待初次报价 或 直接给指派师傅
|
|
|
+ 2 => '已取消',
|
|
|
+
|
|
|
+
|
|
|
+ 20 => '报价待审', //通过就去30,驳回就到22
|
|
|
+ 22 => '报价审核驳回', //等待再次报价
|
|
|
+ 30 => '用户待审', //通过就去40,驳回就到32
|
|
|
+ 32 => '用户审核驳回',//等待再次报价
|
|
|
+ 40 => '待指派', //报价都审核过了,可派师傅了
|
|
|
50 => '已选师傅',
|
|
|
- 60 => '材料已申请待领取',
|
|
|
- 70 => '材料已领取待上门',
|
|
|
- 80 => '已上门',
|
|
|
- 90 => '维修进度',
|
|
|
- 100 => '已完成',
|
|
|
+ 60 => '材料已申请待领取',
|
|
|
+ 70 => '材料已领取待上门', //待上门
|
|
|
+
|
|
|
+ 80 => '已上门',
|
|
|
+ 85 => '维修进度',
|
|
|
+ 90 => '待验收',
|
|
|
+ 92 => '验收驳回',//待二次上门
|
|
|
+
|
|
|
+ 100 => '验收通过已完成',
|
|
|
];
|
|
|
return $data[$status];
|
|
|
}
|