summaryrefslogtreecommitdiff
path: root/lib/bidding/actions.ts
diff options
context:
space:
mode:
Diffstat (limited to 'lib/bidding/actions.ts')
-rw-r--r--lib/bidding/actions.ts22
1 files changed, 21 insertions, 1 deletions
diff --git a/lib/bidding/actions.ts b/lib/bidding/actions.ts
index 6bedbab5..64dc3aa8 100644
--- a/lib/bidding/actions.ts
+++ b/lib/bidding/actions.ts
@@ -20,7 +20,7 @@ import { createPurchaseOrder } from "@/lib/soap/ecc/send/create-po-bidding"
import { getCurrentSAPDate } from "@/lib/soap/utils"
import { generateContractNumber } from "@/lib/general-contracts/service"
import { saveFile } from "@/lib/file-stroage"
-
+import { checkAndSaveChemicalSubstancesForBidding } from "./service"
// TO Contract
export async function transmitToContract(biddingId: number, userId: number) {
try {
@@ -738,6 +738,26 @@ export async function openBiddingAction(biddingId: number) {
})
.where(eq(biddings.id, biddingId))
+ // 4. 화학물질 조회 실행 (비동기로 실행해서 개찰 성능에 영향 없도록)
+ try {
+ // 개찰 트랜잭션이 완료된 후 화학물질 조회 시작
+ setImmediate(async () => {
+ try {
+ const result = await checkAndSaveChemicalSubstancesForBidding(biddingId)
+ if (result.success) {
+ console.log(`입찰 ${biddingId} 화학물질 조회 완료: ${result.results.filter(r => r.success).length}/${result.results.length}개 업체`)
+ } else {
+ console.error(`입찰 ${biddingId} 화학물질 조회 실패:`, result.message)
+ }
+ } catch (error) {
+ console.error(`입찰 ${biddingId} 화학물질 조회 중 오류:`, error)
+ }
+ })
+ } catch (error) {
+ // 화학물질 조회 실패해도 개찰은 성공으로 처리
+ console.error('화학물질 조회 시작 실패:', error)
+ }
+
return { success: true, message: isDeadlinePassed ? '개찰이 완료되었습니다.' : '조기개찰이 완료되었습니다.' }
})