|
@@ -10,9 +10,12 @@ |
|
@@ -10,9 +10,12 @@ |
|
10
|
namespace App\Http\Logic\Aside\Ticket;
|
10
|
namespace App\Http\Logic\Aside\Ticket;
|
|
11
|
|
11
|
|
|
12
|
use App\Http\Logic\Aside\BaseLogic;
|
12
|
use App\Http\Logic\Aside\BaseLogic;
|
|
|
|
13
|
+use App\Models\Manage\ManageHr;
|
|
|
|
14
|
+use App\Models\Project\Project;
|
|
13
|
use App\Models\Ticket\TicketDailyCount;
|
15
|
use App\Models\Ticket\TicketDailyCount;
|
|
14
|
use App\Models\Ticket\TicketDailyDeptCount;
|
16
|
use App\Models\Ticket\TicketDailyDeptCount;
|
|
15
|
use App\Models\Ticket\TicketDailyManageCount;
|
17
|
use App\Models\Ticket\TicketDailyManageCount;
|
|
|
|
18
|
+use App\Models\WorkOrder\TicketLog;
|
|
16
|
use App\Models\WorkOrder\Tickets;
|
19
|
use App\Models\WorkOrder\Tickets;
|
|
17
|
use Illuminate\Support\Carbon;
|
20
|
use Illuminate\Support\Carbon;
|
|
18
|
|
21
|
|
|
@@ -41,7 +44,7 @@ class TicketLogic extends BaseLogic |
|
@@ -41,7 +44,7 @@ class TicketLogic extends BaseLogic |
|
41
|
$data['untreated_num'] = $ticketModel->counts(['end_at'=>null]);//今日未处理工单
|
44
|
$data['untreated_num'] = $ticketModel->counts(['end_at'=>null]);//今日未处理工单
|
|
42
|
$submit_a_side = $ticketModel->formatQuery(['submit_side'=>1])->sum('submit_side');
|
45
|
$submit_a_side = $ticketModel->formatQuery(['submit_side'=>1])->sum('submit_side');
|
|
43
|
$submit_b_side = $ticketModel->formatQuery(['submit_side'=>2])->sum('submit_side');
|
46
|
$submit_b_side = $ticketModel->formatQuery(['submit_side'=>2])->sum('submit_side');
|
|
44
|
- $data['source'] = json_encode(['a'=>$submit_a_side,'b'=>$submit_b_side],true);
|
47
|
+ $data['source'] = ['a'=>$submit_a_side,'b'=>$submit_b_side];
|
|
45
|
return $this->success($data);
|
48
|
return $this->success($data);
|
|
46
|
}
|
49
|
}
|
|
47
|
|
50
|
|
|
@@ -55,16 +58,42 @@ class TicketLogic extends BaseLogic |
|
@@ -55,16 +58,42 @@ class TicketLogic extends BaseLogic |
|
55
|
public function getDailyTicketCount(){
|
58
|
public function getDailyTicketCount(){
|
|
56
|
$date = Carbon::yesterday()->toDateString(); //昨日时间
|
59
|
$date = Carbon::yesterday()->toDateString(); //昨日时间
|
|
57
|
$dailyModel = new TicketDailyCount();
|
60
|
$dailyModel = new TicketDailyCount();
|
|
58
|
- $dailyList = $dailyModel->list(['date'=>$date],'average_time',['*'],'desc',5);//取最近5条数据
|
61
|
+ $dailyList = $dailyModel->list(['date'=>$date],'average_time',['*'],'asc',5);//取最近5条数据
|
|
59
|
$manageModel = new TicketDailyManageCount();
|
62
|
$manageModel = new TicketDailyManageCount();
|
|
60
|
- $manageList = $manageModel->list(['date'=>$date],'average_time',['*'],'desc',5);//取最近5条数据
|
63
|
+ $manageList = $manageModel->list(['date'=>$date],'average_time',['*'],'asc',5);//取最近5条数据
|
|
61
|
$deptModel = new TicketDailyDeptCount();
|
64
|
$deptModel = new TicketDailyDeptCount();
|
|
62
|
- $deptList = $deptModel->list(['date'=>$date],'average_time',['*'],'desc',5);
|
65
|
+ $deptList = $deptModel->list(['date'=>$date],'average_time',['*'],'asc',5);
|
|
63
|
$data = ['daily'=>$dailyList,'manage'=>$manageList,'dept'=>$deptList];
|
66
|
$data = ['daily'=>$dailyList,'manage'=>$manageList,'dept'=>$deptList];
|
|
64
|
return $this->success($data);
|
67
|
return $this->success($data);
|
|
65
|
}
|
68
|
}
|
|
66
|
|
69
|
|
|
67
|
/**
|
70
|
/**
|
|
|
|
71
|
+ * @remark :获取随机工单列表(20条)
|
|
|
|
72
|
+ * @name :ticketList
|
|
|
|
73
|
+ * @author :lyh
|
|
|
|
74
|
+ * @method :post
|
|
|
|
75
|
+ * @time :2025/8/12 11:06
|
|
|
|
76
|
+ */
|
|
|
|
77
|
+ public function getTicketList(){
|
|
|
|
78
|
+ $ticketsList = Ticket::select(['project_id','title','end_at','end_time','id'])->inRandomOrder()->limit(20)->get();
|
|
|
|
79
|
+ $projectModel = new Project();
|
|
|
|
80
|
+ $ticketLogModel = new TicketLog();
|
|
|
|
81
|
+ $manageModel = new ManageHr();
|
|
|
|
82
|
+ foreach ($ticketsList as $key => $item){
|
|
|
|
83
|
+ $item['project_name'] = $projectModel->getValue(['id'=>$item['project_id']],'name');
|
|
|
|
84
|
+ $engineer_id = $ticketLogModel->getValue(['ticket_id'=>$item['id'],'is_engineer'=>1],'engineer_id');
|
|
|
|
85
|
+ if(!empty($engineer_id)){
|
|
|
|
86
|
+ $item['manage_name'] = $manageModel->getValue(['manage_id'=>$engineer_id],'name');
|
|
|
|
87
|
+ }else{
|
|
|
|
88
|
+ $item['manage_name'] = '未分配';
|
|
|
|
89
|
+ }
|
|
|
|
90
|
+ $ticketsList[$key] = $item;
|
|
|
|
91
|
+ $item['status'] = (empty($item['end_at']) ? '未完成' : '完成');
|
|
|
|
92
|
+ }
|
|
|
|
93
|
+ return $this->success($ticketsList);
|
|
|
|
94
|
+ }
|
|
|
|
95
|
+
|
|
|
|
96
|
+ /**
|
|
68
|
* @remark :根据技术组获取
|
97
|
* @remark :根据技术组获取
|
|
69
|
* @name :getManageTicketCount
|
98
|
* @name :getManageTicketCount
|
|
70
|
* @author :lyh
|
99
|
* @author :lyh
|