wujianwei
2026-02-02 7865c2a70e8cf9d0f44e66131bdc98bcea089c7c
ui/admin-ui3/src/components/receivableBillManagementDialog/index.vue
@@ -15,11 +15,11 @@
          <el-input v-model="queryParams.customerName" placeholder="请输入客户名称" style="width: 180px" clearable />
        </el-form-item>
        <el-form-item label="状态:">
        <!-- <el-form-item label="状态:">
          <el-select v-model="queryParams.status" style="width: 150px;" placeholder="请选择状态" clearable>
            <el-option v-for="dict in sys_bill_status" :key="dict.value" :label="dict.label" :value="dict.value" />
          </el-select>
        </el-form-item>
        </el-form-item> -->
        <el-form-item>
          <el-button type="primary" icon="Search" @click="handleSearch">搜索</el-button>
@@ -79,7 +79,9 @@
const props = defineProps({
  visible: { type: Boolean, default: false },
  defaultSelectedId: { type: [String, Number], default: '' }
  defaultSelectedId: { type: [String, Number], default: '' },
  // 新增:接收默认状态
  defaultStatus: { type: [String, Number], default: '' }
});
const emit = defineEmits(['confirm', 'close', 'update:visible']);
@@ -138,11 +140,18 @@
};
const handleReset = () => {
  // 重置字段必须与 queryParams 定义的一致
  // 重置其他搜索字段
  queryParams.systemNo = '';
  queryParams.billName = '';
  queryParams.customerName = '';
  queryParams.status = '';
  // 核心处理:如果有默认状态值就恢复默认值,没有才设为空
  if (props.defaultStatus !== undefined && props.defaultStatus !== null && props.defaultStatus !== '') {
    queryParams.status = props.defaultStatus;
  } else {
    queryParams.status = '';
  }
  handleSearch();
};
@@ -173,6 +182,17 @@
watch(() => props.visible, (newVal) => {
  dialogVisible.value = newVal;
  if (newVal) {
    // 关键逻辑:如果 props 传了默认状态就用它,否则设置为空字符串
    // 使用 queryParams.status = props.defaultStatus || '';
    // 但考虑到 '0' 可能是有效值,建议判断是否为 undefined 或 null
    if (props.defaultStatus !== undefined && props.defaultStatus !== null) {
        queryParams.status = props.defaultStatus;
    } else {
        queryParams.status = '';
    }
    // 重置页码为第一页并加载数据
    queryParams.pageNum = 1;
    getList();
  }
});