lizhen_gitee 7 kuukautta sitten
vanhempi
commit
295d8c9aa6

+ 29 - 9
application/api/controller/Maintain.php

@@ -127,6 +127,10 @@ class Maintain extends Api
             ->where($map)
             ->find();
 
+        if(empty($info)){
+            $this->error('没找到该订单');
+        }
+
         $maintain_model = new Maintainmodel();
         $info['status_text'] = $maintain_model->status_data($info['status']);
 
@@ -146,15 +150,30 @@ class Maintain extends Api
         }
 
         //追加进度
-        $info['jindu_list'] = [];
-
-        if($info['weixiu_id'] > 0){
-            $jindu_list = Db::name('maintain_jindu')->field('id,title,images,createtime')->where('weixiu_id',$info['weixiu_id'])->order('id desc')->select();
-            if(!empty($jindu_list)){
-                $jindu_list = list_domain_image($jindu_list,['images']);
-                $info['jindu_list'] = $jindu_list;
+        //追加多次维修+对应进度历史
+        $last_jindulist = [];
+        $new_jindulist = [];
+        $jindu_list = Db::name('maintain_jindu')->alias('jd')
+            ->join('worker','jd.worker_id = worker.id','LEFT')
+            ->field('jd.id,jd.worker_id,jd.weixiu_times,jd.title,jd.images,jd.createtime,worker.avatar,worker.truename')
+            ->where('jd.order_id',$id)
+            ->order('jd.id desc')->select();
+        if(!empty($jindu_list)){
+            for($i=$jindu_list[0]['weixiu_times'];$i>=1;$i--){
+                foreach($jindu_list as $key => $val){
+                    if($i == $val['weixiu_times']){
+                        $new_jindulist[$i][] = $val;
+                    }
+                }
+            }
+            foreach($new_jindulist as $key => $val){
+                $last_jindulist[] = [
+                    'title' => '第'.$val[0]['weixiu_times'].'次',
+                    'child' => $val
+                ];
             }
         }
+        $info['jindu'] = $last_jindulist;
 
         $this->success(1, $info);
     }
@@ -306,6 +325,7 @@ class Maintain extends Api
             ];
 
             $remark = '验收已驳回';
+            $jindutitle = $remark.':'.$reason;
         }else{
             $update = [
                 'status' => 100, //用户验收通过
@@ -319,7 +339,7 @@ class Maintain extends Api
                 'audit_time' => $nowtime,
             ];
 
-            $remark = '验收已通过';
+            $jindutitle = $remark = '验收已通过';
         }
 
         //最后一个轮回,追加验收进度
@@ -332,7 +352,7 @@ class Maintain extends Api
             'weixiu_times' => $info['weixiu_times'],
             'weixiu_id'    => $info['weixiu_id'],
 
-            'title'       => $remark,
+            'title'       => $jindutitle,
             'createtime'  => $nowtime,
         ];
         $jindu_id = Db::name('maintain_jindu')->insertGetId($jindu);

+ 23 - 7
application/api/controller/worker/Maintain.php

@@ -79,16 +79,32 @@ class Maintain extends Api
             ->where($map)
             ->find();
 
-        $result = [];
-
-        if($info['weixiu_id'] > 0){
-            $jindu_list = Db::name('maintain_jindu')->field('id,order_id,title,images,createtime')->where('weixiu_id',$info['weixiu_id'])->order('id desc')->select();
-            if(!empty($jindu_list)){
-                $result = list_domain_image($jindu_list,['images']);
+        //追加进度
+        //追加多次维修+对应进度历史
+        $last_jindulist = [];
+        $new_jindulist = [];
+        $jindu_list = Db::name('maintain_jindu')->alias('jd')
+            ->join('worker','jd.worker_id = worker.id','LEFT')
+            ->field('jd.id,jd.worker_id,jd.weixiu_times,jd.title,jd.images,jd.createtime,worker.avatar,worker.truename')
+            ->where('jd.order_id',$id)
+            ->order('jd.id desc')->select();
+        if(!empty($jindu_list)){
+            for($i=$jindu_list[0]['weixiu_times'];$i>=1;$i--){
+                foreach($jindu_list as $key => $val){
+                    if($i == $val['weixiu_times']){
+                        $new_jindulist[$i][] = $val;
+                    }
+                }
+            }
+            foreach($new_jindulist as $key => $val){
+                $last_jindulist[] = [
+                    'title' => '第'.$val[0]['weixiu_times'].'次',
+                    'child' => $val
+                ];
             }
         }
 
-        $this->success(1, $result);
+        $this->success(1, $last_jindulist);
     }
 
     //申请材料

+ 13 - 2
application/company/controller/Index.php

@@ -72,17 +72,21 @@ class Index extends Apic
         $list = Db::name('user_company')->field('id,projectname,starttime,endtime,longitude,latitude')->where('company_id',$this->auth->company_id)->order('endtime asc')->select();
         if(!empty($list)){
             foreach($list as $key => $val){
-                $total_month = intval(ceil(($val['endtime'] - $val['starttime']) / 2592000)); //总月份
+                //总月份
+                $total_month = intval(ceil(($val['endtime'] - $val['starttime']) / 2592000));
                 $total_month = $total_month < 0 ? 0 : $total_month;
 
-                $end_month   = intval(ceil(($val['endtime'] - time()) / 2592000)); //剩余月份
+                //剩余月份
+                $end_month   = intval(ceil(($val['endtime'] - time()) / 2592000));
                 $end_month   = $end_month < 0 ? 0 : $end_month;
 
+                //比例
                 $bili = 100;
                 if($total_month > 0 && $total_month > $end_month){
                     $bili = bcdiv(($total_month - $end_month) * 100 , $total_month,0);
                 }
 
+                //追加数据
                 $list[$key]['total_month'] = $total_month;
                 $list[$key]['bili'] = $bili;
                 $list[$key]['end_month'] = $end_month;
@@ -101,6 +105,12 @@ class Index extends Apic
         $shanxing_number = $wancheng + $weiwancheng + $jinxingzhong;
 
         //中间地图
+        $map_data = [];
+        if(!empty($list)){
+            foreach($list as $key => $val){
+                $map_data[$val['projectname']] = [$val['longitude'],$val['latitude']];
+            }
+        }
 
 
         //中间底部
@@ -133,6 +143,7 @@ class Index extends Apic
             'week' => $week[date('w')],
             'time' => date('H:i:s'),
             'project' => $list,
+            'map_data'=> $map_data,
             'shanxing' => $shanxing,
             'shanxing_number' => $shanxing_number,
             'maindate' => $maindate,