作者 ZhengBing He

B端删除工单

... ... @@ -88,10 +88,10 @@ class WorkOrderController extends BaseController
'engineer:id,name',
])->find($id);
if (!$workOrder) {
$this->response('error', 404, '工单未找到');
$this->response('工单未找到', 404);
}
if ($workOrder->project_id != $this->user['project_id'] && $workOrder->engineer_id != $this->user['id']) {
$this->response('error', 403, '无权限查看该工单');
$this->response('无权限查看该工单', 403);
}
$this->response('success', Code::SUCCESS, $workOrder->toArray());
}
... ... @@ -108,11 +108,11 @@ class WorkOrderController extends BaseController
$request->validated();
$workOrder = WorkOrder::find($id);
if (!$workOrder) {
$this->response('error', 404, '工单未找到');
$this->response('工单未找到', 404);
}
// b端只有自己项目下的账号可以更新工单
if ($workOrder->project_id != $this->user['project_id']) {
$this->response('error', 403, '无权限更新该工单');
$this->response('无权限更新该工单', 403);
}
// 更新工单状态
$workOrder->status = $request->input('status');
... ... @@ -120,4 +120,20 @@ class WorkOrderController extends BaseController
$this->response('success', Code::SUCCESS);
}
public function destroy($id)
{
$workOrder = WorkOrder::find($id);
if (!$workOrder) {
$this->response('工单未找到', 404);
}
if ($this->user['type'] != 1 && $workOrder->project_user_id != $this->user['id']) {
// 只有项目负责人可以删除工单
$this->response('无权限删除该工单', 403);
}
# 删除工单
$workOrder->delete();
$this->response('工单已删除', Code::SUCCESS);
}
}
... ...
... ... @@ -276,6 +276,7 @@ Route::middleware(['bloginauth'])->group(function () {
Route::post('/', [\App\Http\Controllers\Bside\WorkOrder\WorkOrderController::class, 'store'])->name('workorder.store')->summary('B端创建工单');
Route::get('/{id}', [\App\Http\Controllers\Bside\WorkOrder\WorkOrderController::class, 'show'])->name('workorder.show')->summary('B端查看工单');
Route::post('/{id}', [\App\Http\Controllers\Bside\WorkOrder\WorkOrderController::class, 'update'])->name('workorder.update')->summary('B端完结工单');
Route::delete('/{id}', [\App\Http\Controllers\Bside\WorkOrder\WorkOrderController::class, 'destroy'])->name('workorder.destroy')->summary('B端删除工单,已完结的工单无法删除');
});
//产品
... ...