fix:开票信息表单修改、发货展示收货地址

dev_1.0.2
jiangpeng 2026-04-24 09:45:43 +08:00
parent ae727d0fdd
commit 4bdbc1daf7
4 changed files with 61 additions and 35 deletions

View File

@ -56,26 +56,12 @@
<div class="column-label">销售方<br>信息</div> <div class="column-label">销售方<br>信息</div>
<div class="column-content"> <div class="column-content">
<el-form-item label="名称" prop="sellerName" class="condensed-item"> <el-form-item label="名称" prop="sellerName" class="condensed-item">
<el-select <div class="fixed-field-text">{{ form.sellerName }}</div>
v-model="form.sellerName"
placeholder="请输入名称"
filterable
clearable
@change="handleSellerChange"
style="width: 100%"
>
<el-option
v-for="item in companyOptions"
:key="item.id"
:label="item.companyName"
:value="item.companyName"
/>
</el-select>
</el-form-item> </el-form-item>
<el-form-item label="统一社会信用代码/纳税人识别号" prop="sellerCreditCode" <el-form-item label="统一社会信用代码/纳税人识别号" prop="sellerCreditCode"
class="condensed-item label-wrap"> class="condensed-item label-wrap">
<span slot="label" style="line-height: 1.2;">统一社会信用代码/<br>纳税人识别号</span> <span slot="label" style="line-height: 1.2;">统一社会信用代码/<br>纳税人识别号</span>
<el-input v-model="form.sellerCreditCode" placeholder="请输入纳税人识别号"/> <div class="fixed-field-text">{{ form.sellerCreditCode }}</div>
</el-form-item> </el-form-item>
</div> </div>
</el-col> </el-col>
@ -213,6 +199,10 @@ import { listCompanyInfo } from "@/api/system/companyInfo";
export default { export default {
name: "ApplyInvoice", name: "ApplyInvoice",
dicts: ['finance_invoice_type'], dicts: ['finance_invoice_type'],
constants: {
FIXED_SELLER_NAME: '紫光汇智信息技术有限公司',
FIXED_SELLER_CREDIT_CODE: '91500108MA6078GXXQ'
},
props: { props: {
visible: { visible: {
type: Boolean, type: Boolean,
@ -242,8 +232,8 @@ export default {
buyerCreditCode: undefined, buyerCreditCode: undefined,
buyerBank: undefined, buyerBank: undefined,
buyerBankAccount: undefined, buyerBankAccount: undefined,
sellerName: undefined, sellerName: this.$options.constants.FIXED_SELLER_NAME,
sellerCreditCode: undefined, sellerCreditCode: this.$options.constants.FIXED_SELLER_CREDIT_CODE,
sellerBank: undefined, sellerBank: undefined,
sellerBankAccount: undefined, sellerBankAccount: undefined,
informationNote: '默认开票', informationNote: '默认开票',
@ -326,8 +316,8 @@ export default {
buyerCreditCode: undefined, buyerCreditCode: undefined,
buyerBank: undefined, buyerBank: undefined,
buyerBankAccount: undefined, buyerBankAccount: undefined,
sellerName: undefined, sellerName: this.$options.constants.FIXED_SELLER_NAME,
sellerCreditCode: undefined, sellerCreditCode: this.$options.constants.FIXED_SELLER_CREDIT_CODE,
sellerBank: undefined, sellerBank: undefined,
sellerBankAccount: undefined, sellerBankAccount: undefined,
informationNote: '默认开票', informationNote: '默认开票',
@ -344,16 +334,8 @@ export default {
this.form.buyerBank = this.rowData.buyerBank ; this.form.buyerBank = this.rowData.buyerBank ;
this.form.buyerBankAccount = this.rowData.buyerBankAccount ; this.form.buyerBankAccount = this.rowData.buyerBankAccount ;
if (this.rowData.sellerName) { this.form.sellerName = this.$options.constants.FIXED_SELLER_NAME;
this.form.sellerName = this.rowData.sellerName; this.form.sellerCreditCode = this.$options.constants.FIXED_SELLER_CREDIT_CODE;
this.form.sellerCreditCode = this.rowData.sellerCreditCode;
this.form.sellerBank = this.rowData.sellerBank;
this.form.sellerBankAccount = this.rowData.sellerBankAccount;
} else if (this.companyOptions.length > 0) {
const defaultCompany = this.companyOptions[0];
this.form.sellerName = defaultCompany.companyName;
this.handleSellerChange(defaultCompany.companyName);
}
this.form.invoiceBillCode = this.rowData.invoiceBillCode; this.form.invoiceBillCode = this.rowData.invoiceBillCode;
this.form.id = this.rowData.id; this.form.id = this.rowData.id;
@ -771,6 +753,12 @@ export default {
line-height: 32px; line-height: 32px;
} }
.fixed-field-text {
min-height: 32px;
line-height: 32px;
color: #606266;
}
/* Table Styling */ /* Table Styling */
.items-table-container { .items-table-container {
padding: 0; padding: 0;

View File

@ -51,7 +51,7 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="6"> <el-col :span="18">
<el-form-item label="收货地址" prop="notifierAddress"> <el-form-item label="收货地址" prop="notifierAddress">
<el-input v-model="detail.notifierAddress"/> <el-input v-model="detail.notifierAddress"/>
</el-form-item> </el-form-item>

View File

@ -45,6 +45,13 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row>
<el-col :span="24">
<el-form-item label="收货地址" prop="notifierAddress">
<el-input v-model="form.notifierAddress" disabled="disabled" />
</el-form-item>
</el-col>
</el-row>
<el-row> <el-row>
<el-col :span="6" v-if="isImported"> <el-col :span="6" v-if="isImported">
<el-form-item label="税率" prop="taxRate"> <el-form-item label="税率" prop="taxRate">
@ -113,6 +120,7 @@ export default {
deliveryTimeType: '0', deliveryTimeType: '0',
deliveryTime: new Date(), deliveryTime: new Date(),
remark: '', remark: '',
notifierAddress: '',
}, },
rules: { rules: {
logisticsCode: [{ required: true, message: "物流单号不能为空", trigger: "blur" }], logisticsCode: [{ required: true, message: "物流单号不能为空", trigger: "blur" }],
@ -147,21 +155,43 @@ export default {
}, },
methods: { methods: {
open(productRow, outerForm) { open(productRow, outerForm) {
console.group('[GenerateDeliveryForm] open 参数');
console.log('productRow:', productRow);
console.log('outerForm:', outerForm);
console.log('productRow 关键字段:', {
productCode: productRow && productRow.productCode,
warehouseId: productRow && productRow.warehouseId,
quantity: productRow && productRow.quantity,
deliveryGenerateQuantity: productRow && productRow.deliveryGenerateQuantity,
deliveryConfirmQuantity: productRow && productRow.deliveryConfirmQuantity,
orderType: productRow && productRow.orderType
});
console.log('outerForm 关键字段:', {
outerCode: outerForm && outerForm.outerCode,
deliveryTime: outerForm && outerForm.deliveryTime,
vendorName: outerForm && outerForm.vendorName,
notifierAddress: outerForm && outerForm.notifierAddress
});
console.groupEnd();
this.selectedSnList.length=0; this.selectedSnList.length=0;
this.reset(); this.reset();
this.productData = productRow; this.productData = productRow;
this.outerData = outerForm; this.outerData = outerForm;
this.requiredDeliveryTime = outerForm.deliveryTime; this.requiredDeliveryTime = outerForm.deliveryTime;
const notifierAddress = (outerForm && outerForm.notifierAddress) || '';
this.form.notifierAddress = notifierAddress;
this.queryParams.productCode = productRow.productCode; this.queryParams.productCode = productRow.productCode;
this.queryParams.warehouseId = productRow.warehouseId; this.queryParams.warehouseId = productRow.warehouseId;
this.queryParams.pageSize = productRow.quantity - productRow.deliveryGenerateQuantity - productRow.deliveryConfirmQuantity; this.queryParams.pageSize = productRow.quantity - productRow.deliveryGenerateQuantity - productRow.deliveryConfirmQuantity;
this.isInitialLoad = true; this.isInitialLoad = true;
this.visible = true;
this.$nextTick(() => { this.$nextTick(() => {
// resetForm/
this.form.notifierAddress = notifierAddress;
this.getSnList(); this.getSnList();
}) })
this.visible = true;
}, },
getSnList() { getSnList() {
listProductSn(this.queryParams).then(response => { listProductSn(this.queryParams).then(response => {
@ -292,6 +322,7 @@ export default {
deliveryTimeType: '0', deliveryTimeType: '0',
deliveryTime: new Date(), deliveryTime: new Date(),
remark: '', remark: '',
notifierAddress: '',
}; };
this.resetForm("form"); this.resetForm("form");
this.snList = []; this.snList = [];

View File

@ -144,7 +144,14 @@ export default {
}, },
// //
handleDeliver(row) { handleDeliver(row) {
this.$refs.deliveryForm.open(row, this.form); const fallbackNotifierAddress = this.deliveryList.length > 0
? this.deliveryList[0].notifierAddress
: '';
const formData = {
...this.form,
notifierAddress: this.form.notifierAddress || row.notifierAddress || fallbackNotifierAddress || ''
};
this.$refs.deliveryForm.open(row, formData);
}, },
// //
handleDeleteDelivery(deliveryId) { handleDeleteDelivery(deliveryId) {