作者 lyh

gx

... ... @@ -58,13 +58,20 @@ class TicketCount extends Command
foreach ($manageList as $item){
$ticketLogModel = new TicketLog();
$ticket_num = $ticketLogModel->counts(['engineer_id'=>$item['manage_id'],'is_engineer'=>1]);
//工单总时长
$timeCount = $ticketLogModel->formatQuery(['engineer_id'=>$item['manage_id'],'is_engineer'=>1])->sum('end_time');
$ticket_end_num = $ticketLogModel->counts(['engineer_id'=>$item['manage_id'],'is_engineer'=>1,'end_at'=>['!=',null]]);
if(!empty($timeCount)){
$average_time = round($timeCount / $ticket_end_num, 2);
}
$fastest_time = $ticketLogModel->formatQuery(['engineer_id'=>$item['manage_id'],'is_engineer'=>1,'end_at'=>['!=',null]])->min('end_time');
$data = [
'date'=>$date,
'manage_id'=>$item['id'],
'manage_name'=>$item['name'],
'ticket_num'=>$ticket_num,//工单总数量
'average_time'=>'',//平均完成工单时长
'fastest_time'=>'',//最快完成工单时间
'average_time'=>$average_time ?? '',//平均完成工单时长
'fastest_time'=>$fastest_time,//最快完成工单时间
'timeout_num'=>'',//超时工单数量
'complete_num'=>'',//完成工单数量
];
... ...
... ... @@ -84,6 +84,7 @@ class Tickets extends Base
if ($log && $log->is_engineer != in_array($engineer_id, $engineer_ids))
{
$log->is_engineer = in_array($engineer_id, $engineer_ids);
$log->plan_end_at = $this->plan_end_at; // 新增时写入 plan_end_at
$log->save();
}else
{
... ... @@ -91,6 +92,7 @@ class Tickets extends Base
$log = new TicketLog();
$log->engineer_id = $engineer_id;
$log->is_engineer = in_array($engineer_id, $engineer_ids);
$log->plan_end_at = $this->plan_end_at; // 新增时写入 plan_end_at
$this->logs()->save($log);
}
}catch (\Exception $exception){
... ...