gaoluyang
7 天以前 25bec713b204dc5e5792982b2ef6f1ee488aed20
feat(erp): 付款单付款账户/关联来票改为非必填

- 去掉 accountName/invoiceId 的 rules:required
- 去掉新增时自动填默认结算账户
- 允许空付款明细直接保存

Co-Authored-By: Claude Code <noreply@anthropic.com>
已修改3个文件
17 ■■■■■ 文件已修改
src/views/erp/finance/payment/data.ts 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/erp/finance/payment/modules/form.vue 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/erp/finance/payment/modules/item-form.vue 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/erp/finance/payment/data.ts
@@ -77,7 +77,6 @@
              placeholder: '--',
            }
          : undefined,
      rules: 'required',
      dependencies: {
        // 依赖 invoiceId 自身,确保编辑回显时重新加载选项以匹配已选来票
        triggerFields: ['supplierId', 'invoiceId'],
@@ -155,7 +154,6 @@
      fieldName: 'accountName',
      label: '付款账户',
      component: 'Input',
      rules: 'required',
      componentProps: {
        placeholder: '请输入付款账户',
        allowClear: true,
src/views/erp/finance/payment/modules/form.vue
@@ -11,7 +11,6 @@
import { message } from 'ant-design-vue';
import { useVbenForm } from '#/adapter/form';
import { getAccountSimpleList } from '#/api/erp/finance/account';
import {
  createFinancePayment,
  getFinancePayment,
@@ -176,12 +175,6 @@
    formApi.setDisabled(formType.value === 'detail');
    formApi.updateSchema(useFormSchema(formType.value));
    if (!data || !data.id) {
      // 新增时,默认填入默认结算账户名称
      const accountList = await getAccountSimpleList();
      const defaultAccount = accountList.find((item) => item.defaultStatus);
      if (defaultAccount) {
        await formApi.setValues({ accountName: defaultAccount.name });
      }
      return;
    }
    modalApi.lock();
src/views/erp/finance/payment/modules/item-form.vue
@@ -180,11 +180,7 @@
/** 表单校验 */
const validate = () => {
  // 检查是否有明细
  if (tableData.value.length === 0) {
    throw new Error('请先选择关联来票');
  }
  // 检查每行的付款金额
  // 检查每行的付款金额(允许无明细:不关联来票时直接保存)
  for (let i = 0; i < tableData.value.length; i++) {
    const item = tableData.value[i];
    if (!item?.paymentPrice || item.paymentPrice <= 0) {
@@ -240,7 +236,7 @@
          v-if="!invoice && !disabled"
          class="mt-2 flex justify-center text-sm text-muted-foreground"
        >
          请先在上方表单选择关联来票,系统将自动生成付款明细
          选填:选择关联来票后,系统将自动生成付款明细
        </div>
      </template>
    </Grid>