Merge branch 'develop'
This commit is contained in:
commit
3b60582e66
5 changed files with 43 additions and 5 deletions
|
|
@ -0,0 +1,2 @@
|
||||||
|
-- AlterTable
|
||||||
|
ALTER TABLE "TaskOrder" ADD COLUMN "urgent" BOOLEAN NOT NULL DEFAULT false;
|
||||||
|
|
@ -1552,6 +1552,8 @@ model TaskOrder {
|
||||||
contactName String
|
contactName String
|
||||||
contactTel String
|
contactTel String
|
||||||
|
|
||||||
|
urgent Boolean @default(false)
|
||||||
|
|
||||||
institution Institution @relation(fields: [institutionId], references: [id])
|
institution Institution @relation(fields: [institutionId], references: [id])
|
||||||
institutionId String
|
institutionId String
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -512,9 +512,7 @@ export class QuotationController extends Controller {
|
||||||
a.vat = precisionRound(a.vat + c.vat);
|
a.vat = precisionRound(a.vat + c.vat);
|
||||||
a.vatExcluded =
|
a.vatExcluded =
|
||||||
c.vat === 0
|
c.vat === 0
|
||||||
? precisionRound(
|
? precisionRound(a.vatExcluded + (c.pricePerUnit * c.amount - (c.discount || 0)))
|
||||||
a.vatExcluded + (c.pricePerUnit * c.amount - (c.discount || 0)) * VAT_DEFAULT,
|
|
||||||
)
|
|
||||||
: a.vatExcluded;
|
: a.vatExcluded;
|
||||||
a.finalPrice = precisionRound(
|
a.finalPrice = precisionRound(
|
||||||
Math.max(a.totalPrice - a.totalDiscount + a.vat - (body.discount || 0), 0),
|
Math.max(a.totalPrice - a.totalDiscount + a.vat - (body.discount || 0), 0),
|
||||||
|
|
|
||||||
|
|
@ -189,7 +189,7 @@ export class RequestDataController extends Controller {
|
||||||
},
|
},
|
||||||
take: pageSize,
|
take: pageSize,
|
||||||
skip: (page - 1) * pageSize,
|
skip: (page - 1) * pageSize,
|
||||||
orderBy: { createdAt: "desc" },
|
orderBy: [{ quotation: { urgent: "desc" } }, { createdAt: "desc" }],
|
||||||
}),
|
}),
|
||||||
prisma.requestData.count({ where }),
|
prisma.requestData.count({ where }),
|
||||||
]);
|
]);
|
||||||
|
|
@ -200,7 +200,7 @@ export class RequestDataController extends Controller {
|
||||||
@Get("{requestDataId}")
|
@Get("{requestDataId}")
|
||||||
@Security("keycloak")
|
@Security("keycloak")
|
||||||
async getRequestData(@Path() requestDataId: string) {
|
async getRequestData(@Path() requestDataId: string) {
|
||||||
return await prisma.requestData.findFirst({
|
const record = await prisma.requestData.findFirst({
|
||||||
where: { id: requestDataId },
|
where: { id: requestDataId },
|
||||||
include: {
|
include: {
|
||||||
quotation: {
|
quotation: {
|
||||||
|
|
@ -224,6 +224,10 @@ export class RequestDataController extends Controller {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
if (!record) throw notFoundError("Request Data");
|
||||||
|
|
||||||
|
return record;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -152,6 +152,7 @@ export class TaskController extends Controller {
|
||||||
) {
|
) {
|
||||||
const record = await prisma.taskOrder.findFirst({
|
const record = await prisma.taskOrder.findFirst({
|
||||||
where: { id: taskOrderId },
|
where: { id: taskOrderId },
|
||||||
|
orderBy: [{ urgent: "desc" }, { createdAt: "desc" }],
|
||||||
include: {
|
include: {
|
||||||
userTask: true,
|
userTask: true,
|
||||||
taskProduct: true,
|
taskProduct: true,
|
||||||
|
|
@ -295,6 +296,21 @@ export class TaskController extends Controller {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const work = await tx.requestWorkStepStatus.findMany({
|
||||||
|
include: {
|
||||||
|
requestWork: {
|
||||||
|
include: {
|
||||||
|
request: {
|
||||||
|
include: {
|
||||||
|
quotation: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
where: { OR: taskList },
|
||||||
|
});
|
||||||
|
|
||||||
return await tx.taskOrder.create({
|
return await tx.taskOrder.create({
|
||||||
include: {
|
include: {
|
||||||
taskList: {
|
taskList: {
|
||||||
|
|
@ -352,6 +368,7 @@ export class TaskController extends Controller {
|
||||||
data: {
|
data: {
|
||||||
...rest,
|
...rest,
|
||||||
code,
|
code,
|
||||||
|
urgent: work.some((v) => v.requestWork.request.quotation.urgent),
|
||||||
registeredBranchId: userAffiliatedBranch.id,
|
registeredBranchId: userAffiliatedBranch.id,
|
||||||
createdByUserId: req.user.sub,
|
createdByUserId: req.user.sub,
|
||||||
taskList: { create: taskList },
|
taskList: { create: taskList },
|
||||||
|
|
@ -437,6 +454,19 @@ export class TaskController extends Controller {
|
||||||
data: { workStatus: RequestWorkStatus.InProgress },
|
data: { workStatus: RequestWorkStatus.InProgress },
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const work = await tx.requestWorkStepStatus.findMany({
|
||||||
|
include: {
|
||||||
|
requestWork: {
|
||||||
|
include: {
|
||||||
|
request: {
|
||||||
|
include: { quotation: true },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
where: { OR: body.taskList },
|
||||||
|
});
|
||||||
|
|
||||||
return await tx.taskOrder.update({
|
return await tx.taskOrder.update({
|
||||||
where: { id: taskOrderId },
|
where: { id: taskOrderId },
|
||||||
include: {
|
include: {
|
||||||
|
|
@ -455,6 +485,7 @@ export class TaskController extends Controller {
|
||||||
},
|
},
|
||||||
data: {
|
data: {
|
||||||
...body,
|
...body,
|
||||||
|
urgent: work.some((v) => v.requestWork.request.quotation.urgent),
|
||||||
taskList: {
|
taskList: {
|
||||||
deleteMany: record?.taskList
|
deleteMany: record?.taskList
|
||||||
.filter(
|
.filter(
|
||||||
|
|
@ -629,6 +660,7 @@ export class TaskActionController extends Controller {
|
||||||
tx.taskOrder.update({
|
tx.taskOrder.update({
|
||||||
where: { id: taskOrderId },
|
where: { id: taskOrderId },
|
||||||
data: {
|
data: {
|
||||||
|
urgent: false,
|
||||||
taskOrderStatus: TaskOrderStatus.Complete,
|
taskOrderStatus: TaskOrderStatus.Complete,
|
||||||
userTask: {
|
userTask: {
|
||||||
updateMany: {
|
updateMany: {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue