zhangwencui
3 天以前 39a0bb3afaf5afd7687786b955e60e926d3475a4
src/views/salesManagement/receiptPayment/index.vue
@@ -40,6 +40,7 @@
      <el-table
        :data="tableData"
        border
        ref="tableRef"
        v-loading="tableLoading"
        @selection-change="handleSelectionChange"
        :row-key="(row) => row.id"
@@ -313,6 +314,7 @@
});
const total = ref(0);
const expandedRowKeys = ref([]);
const tableRef = ref(null);
// 用户信息表单弹框数据
const dialogFormVisible = ref(false);
@@ -335,7 +337,7 @@
const getStatusTagType = (statusName = '') => {
  const normalized = statusName.trim();
  if (!normalized) return 'info';
  return normalized === '未完成回款' ? 'danger' : 'success';
  return normalized === '未完成付款' ? 'danger' : 'success';
};
// 查询列表
/** 搜索按钮操作 */
@@ -421,7 +423,11 @@
    proxy.$modal.msgError("请选择至少一条数据");
    return;
  }
  const validRows = selectedRows.value.filter((item) => item.noReceiptAmount !== 0);
  // 仅允许“待回款金额 > 0”的记录进入新增回款弹窗,并过滤掉可能混入的空对象
  const validRows = selectedRows.value.filter((item) => {
    if (!item || !item.id) return false;
    return Number(item.pendingInvoiceTotal ?? 0) > 0;
  });
  if (validRows.length === 0) {
    proxy.$modal.msgWarning("所选记录均无需回款");
    return;
@@ -485,6 +491,9 @@
const closeDia = () => {
  forms.value = [];
  dialogFormVisible.value = false;
  // 避免二次打开弹窗时仍携带上一次的选择导致“多出一行/脏数据”
  selectedRows.value = [];
  tableRef.value?.clearSelection();
};
// 删除回款记录