summaryrefslogtreecommitdiff
path: root/lib/evaluation-target-list/service.ts
diff options
context:
space:
mode:
Diffstat (limited to 'lib/evaluation-target-list/service.ts')
-rw-r--r--lib/evaluation-target-list/service.ts30
1 files changed, 20 insertions, 10 deletions
diff --git a/lib/evaluation-target-list/service.ts b/lib/evaluation-target-list/service.ts
index 6de00329..4559374b 100644
--- a/lib/evaluation-target-list/service.ts
+++ b/lib/evaluation-target-list/service.ts
@@ -276,6 +276,8 @@ export async function createEvaluationTarget(
) {
console.log(input, "input")
try {
+ const session = await getServerSession(authOptions)
+
return await db.transaction(async (tx) => {
// 벤더 정보 조회
const vendor = await tx
@@ -352,18 +354,26 @@ export async function createEvaluationTarget(
.from(users)
.where(inArray(users.id, reviewerIds)); // sql 대신 inArray 사용
- const reviewerAssignments: typeof evaluationTargetReviewers.$inferInsert[] =
- input.reviewers.map(r => {
- const info = reviewerInfos.find(i => i.id === r.reviewerUserId);
- return {
+ const reviewerAssignments: typeof evaluationTargetReviewers.$inferInsert[] = [
+ ...input.reviewers.map(r => {
+ const info = reviewerInfos.find(i => i.id === r.reviewerUserId);
+ return {
+ evaluationTargetId,
+ departmentCode: r.departmentCode,
+ departmentNameFrom: info?.departmentName ?? "TEST 부서",
+ reviewerUserId: r.reviewerUserId,
+ assignedBy: createdBy,
+ };
+ }),
+ // session user 추가
+ {
evaluationTargetId,
- departmentCode: r.departmentCode,
- departmentNameFrom: info?.departmentName ?? "TEST 부서",
- reviewerUserId: r.reviewerUserId,
+ departmentCode: "admin",
+ departmentNameFrom: "정기평가 관리자",
+ reviewerUserId: Number(session.user.id),
assignedBy: createdBy,
- };
- });
-
+ }
+ ];
await tx.insert(evaluationTargetReviewers).values(reviewerAssignments);
}