summaryrefslogtreecommitdiff
path: root/lib/compliance/red-flag-resolution.ts
diff options
context:
space:
mode:
Diffstat (limited to 'lib/compliance/red-flag-resolution.ts')
-rw-r--r--lib/compliance/red-flag-resolution.ts44
1 files changed, 11 insertions, 33 deletions
diff --git a/lib/compliance/red-flag-resolution.ts b/lib/compliance/red-flag-resolution.ts
index af69dbf4..47a805bb 100644
--- a/lib/compliance/red-flag-resolution.ts
+++ b/lib/compliance/red-flag-resolution.ts
@@ -2,19 +2,15 @@
import db from "@/db/db"
import { and, eq, inArray } from "drizzle-orm"
-import { complianceResponses, redFlagManagers } from "@/db/schema/compliance"
+import { complianceResponses } from "@/db/schema/compliance"
import { basicContract, basicContractTemplates } from "@/db/schema/basicContractDocumnet"
import { vendors } from "@/db/schema/vendors"
-import { users } from "@/db/schema"
import { getTriggeredRedFlagQuestions, type TriggeredRedFlagInfo } from "./red-flag-notifier"
-import { getServerSession } from "next-auth"
-import { authOptions } from "@/app/api/auth/[...nextauth]/route"
-import { ApprovalSubmissionSaga } from "@/lib/approval"
-import { htmlListConverter, htmlTableConverter } from "@/lib/approval/template-utils"
-import type { ApprovalResult } from "@/lib/approval/types"
import { revalidatePath } from "next/cache"
+import { requestRedFlagResolutionWithApproval } from "./approval-actions"
+import type { ApprovalResult } from "@/lib/approval/types"
-type ContractSummary = {
+export type ContractSummary = {
contractId: number
vendorName: string | null
vendorCode: string | null
@@ -25,6 +21,9 @@ type ContractSummary = {
/**
* RED FLAG 해소요청 - Approval Saga를 통해 상신
+ *
+ * @deprecated 이 함수는 호환성을 위해 유지됩니다.
+ * 새로운 코드는 `requestRedFlagResolutionWithApproval`을 사용하세요.
*/
export async function requestRedFlagResolution(contractIds: number[]): Promise<ApprovalResult> {
if (!contractIds || contractIds.length === 0) {
@@ -180,31 +179,10 @@ export async function resolveRedFlag(
}
}
-async function getPurchasingManagerEpId(): Promise<string | null> {
- const [manager] = await db
- .select({
- purchasingManagerId: redFlagManagers.purchasingManagerId,
- })
- .from(redFlagManagers)
- .orderBy(redFlagManagers.createdAt)
- .limit(1)
-
- if (!manager?.purchasingManagerId) {
- return null
- }
-
- const [user] = await db
- .select({
- epId: users.epId,
- })
- .from(users)
- .where(eq(users.id, manager.purchasingManagerId))
- .limit(1)
-
- return user?.epId ?? null
-}
-
-async function fetchContractsWithFlags(contractIds: number[]): Promise<ContractSummary[]> {
+/**
+ * 계약서와 RED FLAG 정보를 함께 조회
+ */
+export async function fetchContractsWithFlags(contractIds: number[]): Promise<ContractSummary[]> {
const contracts = await db
.select({
contractId: basicContract.id,