diff --git a/src/views/contract/launch/components/mixedSignModal.vue b/src/views/contract/launch/components/mixedSignModal.vue index bc3c19b..a9227f1 100644 --- a/src/views/contract/launch/components/mixedSignModal.vue +++ b/src/views/contract/launch/components/mixedSignModal.vue @@ -521,30 +521,30 @@ -
+
相对方签署确认
- {{ name }} + {{ item.companyName }} {{ counterpartyConfirmMap[name]?.method === 'manual' ? '(代确认)' : '(已确认)' }} + >{{ item.method === 'manual' ? '(代确认)' : '(已确认)' }} 我已签署完成
@@ -1290,16 +1290,16 @@ const querySealTypes = ref([0, 20, 10, 30, 40, 50, 60]); const fetchingSeals = ref(false); const sealList = ref([]); const sealDefaultScale = ref(1.0); - -/** 解析相对方名单(分号分隔) */ -const counterpartyPartyNames = computed(() => { - const text = businessRecord.value?.counterpartySummary || ''; - return text.split(/[;;]/).map(s => s.trim()).filter(Boolean); -}); +const counterpartyConfirmItems = computed( + () => counterpartyConfirmMap.value?.items || [], +); /** 未确认的相对方名单 */ const unconfirmedPartyNames = computed(() => { - return counterpartyPartyNames.value.filter(name => !counterpartyConfirmMap.value[name]?.confirmed); + return counterpartyConfirmItems.value + .filter((item) => !item.confirmed) + .map((item) => item.companyName) + .filter(Boolean); }); async function loadCounterpartyConfirm() { @@ -1314,13 +1314,19 @@ async function loadCounterpartyConfirm() { counterpartyConfirmLoading.value = false; } -async function handleConfirmCounterparty(companyName) { +async function handleConfirmCounterparty(item = {}) { if (!businessRecord.value?.id) return; + if (!item.partyId) { + message.error("缺少相对方标识,无法确认"); + return; + } try { - const res = await confirmCounterparty(businessRecord.value.id, { companyName }); + const res = await confirmCounterparty(businessRecord.value.id, { + partyId: String(item.partyId), + }); if (isSuccessResponse(res) && res.result) { counterpartyConfirmMap.value = res.result || {}; - message.success(`已确认:${companyName}`); + message.success(`已确认:${item.companyName || "相对方"}`); } else { message.error(getResponseMessage(res, '确认失败')); }