dev #1
@@ -16,22 +16,21 @@ class Ticket extends BaseController
|
|||||||
*/
|
*/
|
||||||
public function ticketsFind(TicketService $ticketService)
|
public function ticketsFind(TicketService $ticketService)
|
||||||
{
|
{
|
||||||
|
|
||||||
// 在控制器明确接收参数
|
// 在控制器明确接收参数
|
||||||
$params = [
|
$params = [
|
||||||
"page" => $this->request->param('page', 1, 'intval'),
|
"page" => $this->request->param('page', 1, 'intval'),
|
||||||
"limit" => $this->request->param('limit', 20, 'intval'),
|
"limit" => $this->request->param('limit', 20, 'intval'),
|
||||||
"status" => $this->request->param('status', null),
|
|
||||||
"operator_id" => $this->request->param('operator_id', null),
|
"operator_id" => $this->request->param('operator_id', null),
|
||||||
"user_id" => $this->request->param('user_id', null),
|
"user_id" => $this->request->param('user_id', null),
|
||||||
|
"status" => $this->request->param('status', null),
|
||||||
"searchKeyword" => $this->request->param('search', null),
|
"searchKeyword" => $this->request->param('search', null),
|
||||||
"sortOrder" => $this->request->param('sort_order', 'desc'),
|
"sortOrder" => $this->request->param('sort_order', 'desc'),
|
||||||
];
|
];
|
||||||
|
|
||||||
$result = $ticketService->getTicketList($params);
|
$result = $ticketService->getTicketList($params);
|
||||||
|
|
||||||
|
return $this->success('查询成功', $result);
|
||||||
return json(['code' => 200, 'msg' => '查询成功', 'data' => $result]);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -44,9 +43,9 @@ class Ticket extends BaseController
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
$result = $ticketService->createTicket($data);
|
$result = $ticketService->createTicket($data);
|
||||||
return json(['code' => 200, 'msg' => '创建成功', 'data' => $result]);
|
return $this->success('创建成功', $result);
|
||||||
} catch (\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
return json(['code' => 400, 'msg' => $e->getMessage(), 'data' => null]);
|
return $this->error($e->getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -64,9 +63,9 @@ class Ticket extends BaseController
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
$result = $ticketService->updateTicket($id, $data, $allowFields, $adminId, true);
|
$result = $ticketService->updateTicket($id, $data, $allowFields, $adminId, true);
|
||||||
return json(['code' => 200, 'msg' => '更新成功', 'data' => $result]);
|
return $this->success('更新成功', $result);
|
||||||
} catch (\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
return json(['code' => 400, 'msg' => $e->getMessage(), 'data' => []]);
|
return $this->error($e->getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -77,7 +76,7 @@ class Ticket extends BaseController
|
|||||||
public function getTicketDashboardStats(TicketService $ticketService)
|
public function getTicketDashboardStats(TicketService $ticketService)
|
||||||
{
|
{
|
||||||
$result = $ticketService->getTicketDashboardStats();
|
$result = $ticketService->getTicketDashboardStats();
|
||||||
return json(['code' => 200, 'msg' => '查询成功', 'data' => $result]);
|
return $this->success('查询成功', $result);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -90,16 +89,16 @@ class Ticket extends BaseController
|
|||||||
|
|
||||||
$ids = $data['ids'] ?? [];
|
$ids = $data['ids'] ?? [];
|
||||||
if (!is_array($ids) || empty($ids)) {
|
if (!is_array($ids) || empty($ids)) {
|
||||||
return json(['code' => 400, 'msg' => 'ids 必须是非空数组', 'data' => []]);
|
return $this->error('ids 必须是非空数组');
|
||||||
}
|
}
|
||||||
|
|
||||||
$allowFields = ['status', 'lock_time'];
|
$allowFields = ['status', 'lock_time'];
|
||||||
|
|
||||||
try {
|
try {
|
||||||
$result = $ticketService->batchUpdateTickets($ids, $data, $allowFields, $adminId, true);
|
$result = $ticketService->batchUpdateTickets($ids, $data, $allowFields, $adminId, true);
|
||||||
return json(['code' => 200, 'msg' => '批量更新成功', 'data' => $result]);
|
return $this->success('批量更新成功', $result);
|
||||||
} catch (\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
return json(['code' => 400, 'msg' => $e->getMessage(), 'data' => []]);
|
return $this->error($e->getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -109,10 +108,10 @@ class Ticket extends BaseController
|
|||||||
public function deleteTicket($id)
|
public function deleteTicket($id)
|
||||||
{
|
{
|
||||||
$ticket = Tickets::find($id);
|
$ticket = Tickets::find($id);
|
||||||
if (!$ticket) return json(['code' => false, 'msg' => '工单不存在', 'data' => []]);
|
if (!$ticket) return $this->error('工单不存在');
|
||||||
|
|
||||||
return $ticket->delete()
|
return $ticket->delete()
|
||||||
? json(['code' => true, 'msg' => '删除成功', 'data' => []])
|
? $this->success('删除成功', [])
|
||||||
: json(['code' => false, 'msg' => '删除失败', 'data' => []]);
|
: $this->error('删除失败', []);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,4 +26,5 @@ Route::group(function () {
|
|||||||
Route::delete('deleteAccount/:id', 'AccountManagement/deleteAccount');
|
Route::delete('deleteAccount/:id', 'AccountManagement/deleteAccount');
|
||||||
|
|
||||||
Route::post('getExportData', 'Utill/getExportData');
|
Route::post('getExportData', 'Utill/getExportData');
|
||||||
})->middleware([CheckLogin::class, Auth::class]);
|
})->middleware([]);
|
||||||
|
// [CheckLogin::class, Auth::class]
|
||||||
@@ -21,22 +21,15 @@ class TicketService
|
|||||||
|
|
||||||
$query = Tickets::with(['ticketStaff', 'ticketCompany', 'ticketOperator']); // 查询构造器
|
$query = Tickets::with(['ticketStaff', 'ticketCompany', 'ticketOperator']); // 查询构造器
|
||||||
|
|
||||||
// 状态筛选
|
$equalFilters = ['operator_id', 'user_id', 'status'];
|
||||||
if ($params['status'] !== null) {
|
foreach ($equalFilters as $field) {
|
||||||
$query->where('status', $params['status']);
|
if (!empty($params[$field])) {
|
||||||
|
$query->where($field, $params[$field]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 运营人员筛选
|
|
||||||
if (!empty($params['operator_id'])) {
|
|
||||||
$query->where('operator_id', $params['operator_id']);
|
|
||||||
}
|
|
||||||
|
|
||||||
// 负责人筛选
|
// 关键词(模糊搜索)
|
||||||
if (!empty($params['user_id'])) {
|
|
||||||
$query->where('user_id', $params['user_id']);
|
|
||||||
}
|
|
||||||
|
|
||||||
// 关键词搜索
|
|
||||||
if (!empty($params['searchKeyword'])) {
|
if (!empty($params['searchKeyword'])) {
|
||||||
$query->where(function ($q) use ($params) {
|
$query->where(function ($q) use ($params) {
|
||||||
$q->where('website', 'like', '%' . $params['searchKeyword'] . '%')
|
$q->where('website', 'like', '%' . $params['searchKeyword'] . '%')
|
||||||
@@ -46,8 +39,6 @@ class TicketService
|
|||||||
|
|
||||||
$order = strtolower($params['sortOrder']) === 'asc' ? 'asc' : 'desc';
|
$order = strtolower($params['sortOrder']) === 'asc' ? 'asc' : 'desc';
|
||||||
|
|
||||||
|
|
||||||
// order -- 排序 , paginate -- 分页(查询当前页的数据,还会自动计算总记录数)
|
|
||||||
$list = $query->order('create_time', $order)->paginate(
|
$list = $query->order('create_time', $order)->paginate(
|
||||||
$params['limit'],
|
$params['limit'],
|
||||||
false,
|
false,
|
||||||
|
|||||||
@@ -74,7 +74,5 @@ return [
|
|||||||
'prefix' => '',
|
'prefix' => '',
|
||||||
'break_reconnect' => true,
|
'break_reconnect' => true,
|
||||||
],
|
],
|
||||||
|
|
||||||
// 更多的数据库配置信息
|
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
|
|||||||
Reference in New Issue
Block a user