R33-1 R33-3: 收口采购资产差旅事务超时
这个提交包含在:
@@ -703,13 +703,12 @@ async function createTravelRequestsRoutes(fastify) {
|
||||
min: 0,
|
||||
});
|
||||
const segments = normalizeSegments(body.segments);
|
||||
await ensureFinancialDimensions(fastify.prisma, {
|
||||
legalEntityId: body.legalEntityId,
|
||||
costCenterId: body.costCenterId,
|
||||
});
|
||||
|
||||
const created = await fastify.prisma.$transaction(async (tx) => {
|
||||
await ensureFinancialDimensions(tx, {
|
||||
legalEntityId: body.legalEntityId,
|
||||
costCenterId: body.costCenterId,
|
||||
});
|
||||
|
||||
const travelRequest = await tx.travelRequest.create({
|
||||
data: {
|
||||
applicant_employee_id: request.employee.id,
|
||||
@@ -741,25 +740,30 @@ async function createTravelRequestsRoutes(fastify) {
|
||||
select: TRAVEL_DETAIL_SELECT,
|
||||
});
|
||||
|
||||
await tx.auditLog.create({
|
||||
data: buildAuditLogData(request, {
|
||||
actorId: request.employee.id,
|
||||
action: "TRAVEL_REQUEST_CREATED",
|
||||
targetType: "travel_request",
|
||||
targetId: travelRequest.id,
|
||||
extra: {
|
||||
tripType: travelRequest.trip_type,
|
||||
startDate: toIsoDate(travelRequest.start_date),
|
||||
endDate: toIsoDate(travelRequest.end_date),
|
||||
estimatedAmount: moneyToFixed(travelRequest.estimated_amount),
|
||||
segmentCount: travelRequest.segments.length,
|
||||
},
|
||||
}),
|
||||
});
|
||||
|
||||
return travelRequest;
|
||||
});
|
||||
|
||||
void fastify.prisma.auditLog.create({
|
||||
data: buildAuditLogData(request, {
|
||||
actorId: request.employee.id,
|
||||
action: "TRAVEL_REQUEST_CREATED",
|
||||
targetType: "travel_request",
|
||||
targetId: created.id,
|
||||
extra: {
|
||||
tripType: created.trip_type,
|
||||
startDate: toIsoDate(created.start_date),
|
||||
endDate: toIsoDate(created.end_date),
|
||||
estimatedAmount: moneyToFixed(created.estimated_amount),
|
||||
segmentCount: created.segments.length,
|
||||
},
|
||||
}),
|
||||
}).catch((error) => {
|
||||
fastify.log.error(
|
||||
{ err: error, travelRequestId: created.id },
|
||||
"Failed to write travel request create audit log",
|
||||
);
|
||||
});
|
||||
|
||||
return sendData(reply, request, mapTravelRequestDetail(created, request));
|
||||
},
|
||||
);
|
||||
|
||||
在新工单中引用
屏蔽一个用户