feat: add cancel
This commit is contained in:
parent
1483336df5
commit
606149da25
2 changed files with 34 additions and 5 deletions
|
|
@ -1,4 +1,4 @@
|
|||
import { Prisma, RequestDataStatus, RequestWorkStatus } from "@prisma/client";
|
||||
import { Prisma, RequestDataStatus, RequestWorkStatus, TaskStatus } from "@prisma/client";
|
||||
import {
|
||||
Body,
|
||||
Controller,
|
||||
|
|
@ -6,6 +6,7 @@ import {
|
|||
Get,
|
||||
Head,
|
||||
Path,
|
||||
Post,
|
||||
Put,
|
||||
Query,
|
||||
Request,
|
||||
|
|
@ -58,6 +59,7 @@ export class RequestDataController extends Controller {
|
|||
[RequestDataStatus.Pending]: 0,
|
||||
[RequestDataStatus.InProgress]: 0,
|
||||
[RequestDataStatus.Completed]: 0,
|
||||
[RequestDataStatus.Canceled]: 0,
|
||||
},
|
||||
);
|
||||
}
|
||||
|
|
@ -172,6 +174,37 @@ export class RequestDataController extends Controller {
|
|||
}
|
||||
}
|
||||
|
||||
@Route("/api/v1/request-data/{requestDataId}")
|
||||
@Tags("Request List")
|
||||
export class RequestDataActionController extends Controller {
|
||||
@Post("cancel")
|
||||
@Security("keycloak")
|
||||
async cancelRequestData(@Path() requestDataId: string) {
|
||||
await prisma.$transaction([
|
||||
prisma.requestData.update({
|
||||
where: { id: requestDataId },
|
||||
data: {
|
||||
requestDataStatus: RequestDataStatus.Canceled,
|
||||
},
|
||||
}),
|
||||
prisma.requestWorkStepStatus.updateMany({
|
||||
where: { requestWork: { requestDataId } },
|
||||
data: {
|
||||
workStatus: RequestWorkStatus.Canceled,
|
||||
},
|
||||
}),
|
||||
prisma.taskOrder.updateMany({
|
||||
where: {
|
||||
taskList: {
|
||||
every: { workStatus: RequestWorkStatus.Canceled },
|
||||
},
|
||||
},
|
||||
data: { taskStatus: TaskStatus.Canceled },
|
||||
}),
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
@Route("/api/v1/request-work")
|
||||
@Tags("Request List")
|
||||
export class RequestListController extends Controller {
|
||||
|
|
|
|||
|
|
@ -345,10 +345,6 @@ export class TaskActionController extends Controller {
|
|||
@Post("complete")
|
||||
@Security("keycloak")
|
||||
async completeTaskOrder(@Request() req: RequestWithUser, @Path() taskId: string) {}
|
||||
|
||||
@Post("cancel")
|
||||
@Security("keycloak")
|
||||
async cancelTaskOrder(@Request() req: RequestWithUser, @Path() taskId: string) {}
|
||||
}
|
||||
|
||||
@Route("api/v1/task-order/{taskId}")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue