|
|
|
|
@ -88,8 +88,13 @@
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
<el-form-item label="签订地点" prop="signingPlace">
|
|
|
|
|
<el-input v-model="form.signingPlace" placeholder="请输入签订地点" :disabled="isFormDisabled" />
|
|
|
|
|
<el-form-item label="付款账户" prop="paymentAccountId">
|
|
|
|
|
<el-select v-model="form.paymentAccountId" placeholder="请选择付款账户" :disabled="isFormDisabled"
|
|
|
|
|
clearable >
|
|
|
|
|
<el-option v-for="item in paymentAccountList" :key="item.paymentAccountId"
|
|
|
|
|
:label="`${item.accountType || ''} - ${item.accountNumber || ''}`"
|
|
|
|
|
:value="item.paymentAccountId" />
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
@ -187,16 +192,6 @@
|
|
|
|
|
<el-input v-model="form.capitalizedAmount" placeholder="请输入合同大写金额" />
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col> -->
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
<el-form-item label="付款账户" prop="paymentAccountId">
|
|
|
|
|
<el-select v-model="form.paymentAccountId" placeholder="请选择付款账户" :disabled="isFormDisabled"
|
|
|
|
|
clearable >
|
|
|
|
|
<el-option v-for="item in paymentAccountList" :key="item.paymentAccountId"
|
|
|
|
|
:label="`${item.accountType || ''} - ${item.accountNumber || ''}`"
|
|
|
|
|
:value="item.paymentAccountId" />
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
<el-form-item label="合同总价" prop="totalPrice">
|
|
|
|
|
<el-input v-model="form.totalPrice" placeholder="根据合同物料自动计算" disabled>
|
|
|
|
|
@ -204,6 +199,68 @@
|
|
|
|
|
</el-input>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
<el-form-item label="质保期描述" prop="warrantyPeriodDescription">
|
|
|
|
|
<el-input
|
|
|
|
|
v-model="form.warrantyPeriodDescription"
|
|
|
|
|
placeholder="请输入质保期描述(如:验收合格后12个月或发货后18个月等)"
|
|
|
|
|
:disabled="isFormDisabled"
|
|
|
|
|
/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
<el-form-item label="交货地点" prop="deliveryLocation">
|
|
|
|
|
<el-input
|
|
|
|
|
v-model="form.deliveryLocation"
|
|
|
|
|
placeholder="请输入交货地点(如:甲方指定仓库/项目现场等)"
|
|
|
|
|
:disabled="isFormDisabled"
|
|
|
|
|
/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
<el-form-item label="运输方式" prop="shipMethod">
|
|
|
|
|
<el-input
|
|
|
|
|
v-model="form.shipMethod"
|
|
|
|
|
placeholder="请输入运输方式(如:汽运、空运、海运等)"
|
|
|
|
|
:disabled="isFormDisabled"
|
|
|
|
|
/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
<el-form-item label="交付启动期限" prop="deliveryStart">
|
|
|
|
|
<el-input-number
|
|
|
|
|
v-model="form.deliveryStart"
|
|
|
|
|
placeholder="交付启动期限(天)"
|
|
|
|
|
:disabled="isFormDisabled"
|
|
|
|
|
:min="0"
|
|
|
|
|
controls-position="right"
|
|
|
|
|
style="width: 100%"
|
|
|
|
|
/>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
<el-form-item label="签订地点" prop="signingPlace">
|
|
|
|
|
<el-input v-model="form.signingPlace" placeholder="请输入签订地点" :disabled="isFormDisabled" />
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
<el-form-item label="付款方式" prop="paymentMethod">
|
|
|
|
|
<el-select
|
|
|
|
|
v-model="form.paymentMethod"
|
|
|
|
|
placeholder="请选择付款方式"
|
|
|
|
|
:disabled="isFormDisabled"
|
|
|
|
|
clearable
|
|
|
|
|
style="width: 100%"
|
|
|
|
|
>
|
|
|
|
|
<el-option
|
|
|
|
|
v-for="item in paymentMethodOptions"
|
|
|
|
|
:key="item"
|
|
|
|
|
:label="item"
|
|
|
|
|
:value="item"
|
|
|
|
|
/>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span="12">
|
|
|
|
|
<el-form-item label="备注" prop="remark">
|
|
|
|
|
<el-input v-model="form.remark" type="textarea" placeholder="请输入备注" :disabled="isFormDisabled" />
|
|
|
|
|
@ -624,6 +681,14 @@ const {
|
|
|
|
|
proxy?.useDict('contract_category', 'business_direction', 'contract_flag', 'contract_type', 'account_type', 'contract_status', 'material_flag', 'contract_template_flag')
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
/** 付款方式下拉选项(存储中文) */
|
|
|
|
|
const paymentMethodOptions = [
|
|
|
|
|
'电汇',
|
|
|
|
|
'银行承兑(6个月内)',
|
|
|
|
|
'电汇/银行承兑(6个月内)',
|
|
|
|
|
'商业承兑'
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
const buttonLoading = ref(false);
|
|
|
|
|
const contractInfoFormRef = ref<ElFormInstance>();
|
|
|
|
|
|
|
|
|
|
@ -903,7 +968,11 @@ const initFormData: ContractInfoFormEx = {
|
|
|
|
|
contractPaymentMethodList: [],
|
|
|
|
|
file: undefined,
|
|
|
|
|
signingPlace: undefined,
|
|
|
|
|
materialRemark: undefined
|
|
|
|
|
materialRemark: undefined,
|
|
|
|
|
warrantyPeriodDescription: undefined,
|
|
|
|
|
deliveryLocation: undefined,
|
|
|
|
|
shipMethod: undefined,
|
|
|
|
|
deliveryStart: undefined
|
|
|
|
|
} as any;
|
|
|
|
|
|
|
|
|
|
const data = reactive<{ form: ContractInfoFormEx; rules: any }>({
|
|
|
|
|
@ -1197,6 +1266,13 @@ const handleEditPaymentMethod = (row: any, rowIndex: number) => {
|
|
|
|
|
resetPaymentMethodForm();
|
|
|
|
|
editingPaymentMethodIndex.value = rowIndex;
|
|
|
|
|
paymentMethodForm.value = { ...row };
|
|
|
|
|
// 根据当前行的付款节点恢复条款模板,使编辑时修改支付期限等字段能联动刷新付款条款
|
|
|
|
|
const stage = paymentStageList.value.find(
|
|
|
|
|
(s) => s.paymentStageId === row.paymentStageId || String(s.paymentStageId) === String(row.paymentStageId)
|
|
|
|
|
);
|
|
|
|
|
if (stage?.paymentTemplate) {
|
|
|
|
|
paymentMethodTemplateRaw.value = stage.paymentTemplate;
|
|
|
|
|
}
|
|
|
|
|
paymentMethodDialog.visible = true;
|
|
|
|
|
paymentMethodDialog.title = '编辑付款方式';
|
|
|
|
|
};
|
|
|
|
|
|