作者 lyh

gx

@@ -58,13 +58,20 @@ class TicketCount extends Command @@ -58,13 +58,20 @@ class TicketCount extends Command
58 foreach ($manageList as $item){ 58 foreach ($manageList as $item){
59 $ticketLogModel = new TicketLog(); 59 $ticketLogModel = new TicketLog();
60 $ticket_num = $ticketLogModel->counts(['engineer_id'=>$item['manage_id'],'is_engineer'=>1]); 60 $ticket_num = $ticketLogModel->counts(['engineer_id'=>$item['manage_id'],'is_engineer'=>1]);
  61 + //工单总时长
  62 + $timeCount = $ticketLogModel->formatQuery(['engineer_id'=>$item['manage_id'],'is_engineer'=>1])->sum('end_time');
  63 + $ticket_end_num = $ticketLogModel->counts(['engineer_id'=>$item['manage_id'],'is_engineer'=>1,'end_at'=>['!=',null]]);
  64 + if(!empty($timeCount)){
  65 + $average_time = round($timeCount / $ticket_end_num, 2);
  66 + }
  67 + $fastest_time = $ticketLogModel->formatQuery(['engineer_id'=>$item['manage_id'],'is_engineer'=>1,'end_at'=>['!=',null]])->min('end_time');
61 $data = [ 68 $data = [
62 'date'=>$date, 69 'date'=>$date,
63 'manage_id'=>$item['id'], 70 'manage_id'=>$item['id'],
64 'manage_name'=>$item['name'], 71 'manage_name'=>$item['name'],
65 'ticket_num'=>$ticket_num,//工单总数量 72 'ticket_num'=>$ticket_num,//工单总数量
66 - 'average_time'=>'',//平均完成工单时长  
67 - 'fastest_time'=>'',//最快完成工单时间 73 + 'average_time'=>$average_time ?? '',//平均完成工单时长
  74 + 'fastest_time'=>$fastest_time,//最快完成工单时间
68 'timeout_num'=>'',//超时工单数量 75 'timeout_num'=>'',//超时工单数量
69 'complete_num'=>'',//完成工单数量 76 'complete_num'=>'',//完成工单数量
70 ]; 77 ];
@@ -84,6 +84,7 @@ class Tickets extends Base @@ -84,6 +84,7 @@ class Tickets extends Base
84 if ($log && $log->is_engineer != in_array($engineer_id, $engineer_ids)) 84 if ($log && $log->is_engineer != in_array($engineer_id, $engineer_ids))
85 { 85 {
86 $log->is_engineer = in_array($engineer_id, $engineer_ids); 86 $log->is_engineer = in_array($engineer_id, $engineer_ids);
  87 + $log->plan_end_at = $this->plan_end_at; // 新增时写入 plan_end_at
87 $log->save(); 88 $log->save();
88 }else 89 }else
89 { 90 {
@@ -91,6 +92,7 @@ class Tickets extends Base @@ -91,6 +92,7 @@ class Tickets extends Base
91 $log = new TicketLog(); 92 $log = new TicketLog();
92 $log->engineer_id = $engineer_id; 93 $log->engineer_id = $engineer_id;
93 $log->is_engineer = in_array($engineer_id, $engineer_ids); 94 $log->is_engineer = in_array($engineer_id, $engineer_ids);
  95 + $log->plan_end_at = $this->plan_end_at; // 新增时写入 plan_end_at
94 $this->logs()->save($log); 96 $this->logs()->save($log);
95 } 97 }
96 }catch (\Exception $exception){ 98 }catch (\Exception $exception){