From 02e9c39e8ec8d4a57e874b62907934bc9b605ccf Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期一, 12 一月 2026 10:13:20 +0800
Subject: [PATCH] 湟水峡 1.开票和来票传参修改
---
src/views/salesManagement/invoiceRegistration/index.vue | 96 +++++++++++++++++++++++++++---------------------
1 files changed, 54 insertions(+), 42 deletions(-)
diff --git a/src/views/salesManagement/invoiceRegistration/index.vue b/src/views/salesManagement/invoiceRegistration/index.vue
index e981c6f..fc97095 100644
--- a/src/views/salesManagement/invoiceRegistration/index.vue
+++ b/src/views/salesManagement/invoiceRegistration/index.vue
@@ -208,7 +208,7 @@
<el-row :gutter="30">
<el-col :span="12">
<el-form-item label="閿�鍞悎鍚屽彿锛�" prop="salesContractNo">
- <el-input v-model="form.salesContractNo" disabled></el-input>
+ <el-input v-model="form.salesContractNo" disabled placeholder="澶氬悎鍚屾壒閲忓鐞嗭紙鍏蜂綋鍚堝悓鍙疯浜у搧鍒楄〃锛�"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
@@ -298,6 +298,11 @@
type="index"
width="60"
/>
+ <el-table-column label="鎵�灞炲悎鍚�" prop="salesContractNo" width="200">
+ <template #default="{ row }">
+ <el-tag type="primary">{{ row.salesContractNo }}</el-tag>
+ </template>
+ </el-table-column>
<el-table-column label="浜у搧澶х被" prop="productCategory" />
<el-table-column
label="瑙勬牸鍨嬪彿"
@@ -576,6 +581,8 @@
return;
}
+ // 鍏佽涓嶅悓鐨勯攢鍞悎鍚屽彿鎵归噺澶勭悊锛屾棤闇�妫�鏌ラ噸澶�
+
form.value = {};
productData.value = [];
@@ -585,26 +592,31 @@
);
Promise.all(promises).then(results => {
- // 鍚堝苟鎵�鏈夊悎鍚岀殑浜у搧鏁版嵁锛屽苟涓烘瘡涓骇鍝佹坊鍔犲搴旂殑鍚堝悓ID
+ // 鍚堝苟鎵�鏈夊悎鍚岀殑浜у搧鏁版嵁锛屽苟涓烘瘡涓骇鍝佹坊鍔犲搴旂殑鍚堝悓淇℃伅
const allProductData = [];
results.forEach((result, index) => {
- const contractId = selectedRows.value[index].id;
+ const contract = selectedRows.value[index];
+ const contractId = contract.id;
if (result.productData) {
result.productData.forEach(item => {
allProductData.push({
...item,
- salesLedgerId: contractId // 鏄庣‘璁剧疆鍚堝悓ID
+ id: contractId, // 鏄庣‘璁剧疆鍚堝悓ID
+ salesContractNo: contract.salesContractNo, // 娣诲姞閿�鍞悎鍚屽彿
+ customerName: contract.customerName, // 娣诲姞瀹㈡埛鍚嶇О
+ customerContractNo: contract.customerContractNo // 娣诲姞瀹㈡埛鍚堝悓鍙�
});
});
}
});
- // 璁剧疆琛ㄥ崟鏁版嵁锛堜娇鐢ㄧ涓�涓悎鍚岀殑鍩烘湰淇℃伅锛�
+ // 璁剧疆琛ㄥ崟鏁版嵁锛堜娇鐢ㄧ涓�涓悎鍚岀殑鍩烘湰淇℃伅锛岄攢鍞悎鍚屽彿鐣欑┖锛�
form.value = { ...results[0] };
form.value.createTime = dayjs().format("YYYY-MM-DD");
form.value.issueDate = dayjs().format("YYYY-MM-DD");
form.value.createUer = userStore.nickName;
form.value.selectedContractIds = selectedRows.value.map(row => row.id); // 瀛樺偍鎵�鏈夐�変腑鐨勫悎鍚孖D
+ form.value.salesContractNo = ""; // 閿�鍞悎鍚屽彿鐣欑┖锛屽洜涓轰細鍦ㄤ骇鍝佽〃鏍间腑鍒嗗埆鏄剧ず
productData.value = allProductData;
@@ -616,44 +628,44 @@
const submitForm = () => {
proxy.$refs["formRef"].validate((valid) => {
if (valid) {
- form.value.productData = proxy.HaveJson(productData.value);
- form.value.isBatch = selectedRows.value.length > 1; // 璁剧疆鎵归噺鏍囪瘑
-
- // 濡傛灉鏄壒閲忔搷浣滐紝闇�瑕佷负姣忎釜鍚堝悓鍒涘缓鍗曠嫭鐨勫紑绁ㄧ櫥璁拌褰�
- if (selectedRows.value.length > 1) {
- // 鎵归噺鎻愪氦閫昏緫
- const promises = selectedRows.value.map(contract => {
- // 绛涢�夊嚭灞炰簬褰撳墠鍚堝悓鐨勪骇鍝佹暟鎹�
- const contractProductData = productData.value.filter(item =>
- item.salesLedgerId === contract.id
- );
-
- const batchForm = {
- ...form.value,
- salesLedgerId: contract.id,
- productData: contractProductData,
- selectedContractIds: undefined, // 涓嶄紶閫掓壒閲廔D
- isBatch: true
- };
- return invoiceRegistrationSave(batchForm);
- });
+ // 缁熶竴灏嗘墍鏈夊悎鍚岀殑鏁版嵁鏀惧湪涓�涓暟缁勯噷锛屽崟涓拰鎵归噺閮戒娇鐢ㄦ暟缁勬牸寮�
+ const submitData = selectedRows.value.map(contract => {
+ // 绛涢�夊嚭灞炰簬褰撳墠鍚堝悓鐨勪骇鍝佹暟鎹�
+ const contractProductData = productData.value.filter(item =>
+ item.salesLedgerId === contract.id
+ );
- Promise.all(promises).then(results => {
- proxy.$modal.msgSuccess(`鎴愬姛鎻愪氦${results.length}鏉″紑绁ㄧ櫥璁拌褰昤);
- closeDia();
- getList();
- }).catch(error => {
- proxy.$modal.msgError("閮ㄥ垎鎻愪氦澶辫触锛岃妫�鏌ユ暟鎹�");
- console.error("鎵归噺鎻愪氦閿欒:", error);
- });
- } else {
- // 鍗曚釜鍚堝悓鎻愪氦閫昏緫
- invoiceRegistrationSave(form.value).then((res) => {
- proxy.$modal.msgSuccess("鎻愪氦鎴愬姛");
- closeDia();
- getList();
- });
- }
+ // 涓烘瘡涓攢鍞悎鍚屽彿鍒涘缓鐙珛鐨勫璞�
+ return {
+ // 鍩虹琛ㄥ崟鏁版嵁
+ issueDate: form.value.issueDate,
+ createTime: form.value.createTime,
+ createUer: form.value.createUer,
+ invoiceNo: form.value.invoiceNo,
+
+ // 鍚堝悓瀹為檯淇℃伅
+ id: contract.id, // 浣跨敤id浣滀负瀛楁鍚嶏紝鍊间负salesLedgerId
+ salesContractNo: contract.salesContractNo, // 浣跨敤瀹為檯鐨勯攢鍞悎鍚屽彿
+ customerName: contract.customerName, // 浣跨敤瀹為檯鐨勫鎴峰悕绉�
+ customerId: contract.customerId, // 娣诲姞瀹㈡埛ID
+ customerContractNo: contract.customerContractNo, // 浣跨敤瀹為檯鐨勫鎴峰悎鍚屽彿
+ projectName: contract.projectName, // 浣跨敤瀹為檯鐨勯」鐩悕绉�
+ salesman: contract.salesman, // 浣跨敤瀹為檯鐨勪笟鍔″憳
+
+ // 浜у搧鏁版嵁
+ productData: proxy.HaveJson(contractProductData),
+
+ // 鎵归噺鏍囪瘑
+ isBatch: selectedRows.value.length > 1
+ };
+ });
+
+ // 缁熶竴璋冪敤鎺ュ彛锛屼紶閫掓暟缁勬牸寮忕殑鏁版嵁
+ invoiceRegistrationSave(submitData).then(() => {
+ proxy.$modal.msgSuccess(selectedRows.value.length > 1 ? "鎵归噺鏂板鎴愬姛" : "鎻愪氦鎴愬姛");
+ closeDia();
+ getList();
+ });
}
});
};
--
Gitblit v1.9.3