spring
2026-05-20 1ffe9b9bf12e1670fbfae0b9acbec95d4aaebe16
src/views/financialManagement/payable/purchaseIn.vue
@@ -6,7 +6,14 @@
        <el-input v-model="filters.inboundBatches" placeholder="请输入入库单号" clearable style="width: 200px;" />
      </el-form-item>
      <el-form-item label="供应商:">
        <el-input v-model="filters.supplierName" placeholder="请输入供应商" clearable style="width: 200px;" />
        <el-select v-model="filters.supplierId" placeholder="请选择供应商" clearable filterable style="width: 200px;">
          <el-option
            v-for="item in supplierList"
            :key="item.id"
            :label="item.supplierName"
            :value="item.id"
          />
        </el-select>
      </el-form-item>
      <el-form-item label="入库日期:">
        <el-date-picker
@@ -45,7 +52,7 @@
        @pagination="changePage"
      >
        <template #inboundDate="{ row }">
          {{ row.InboundDate || row.inboundDate || "" }}
          {{ row.inboundDate ?? row.InboundDate ?? "" }}
        </template>
      </PIMTable>
    </div>
@@ -56,6 +63,7 @@
import { ref, reactive, onMounted, getCurrentInstance } from "vue";
import { ElMessage } from "element-plus";
import { listPageAccountPurchase } from "@/api/financialManagement/accountPurchase";
import { listSupplier } from "@/api/basicData/supplierManageFile.js";
defineOptions({
  name: "采购入库",
@@ -65,7 +73,7 @@
const filters = reactive({
  inboundBatches: "",
  supplierName: "",
  supplierId: "",
  dateRange: [],
});
@@ -80,7 +88,7 @@
  { label: "供应商", prop: "supplierName", minWidth: "180" },
  {
    label: "入库日期",
    prop: "InboundDate",
    prop: "inboundDate",
    minWidth: "170",
    dataType: "slot",
    slot: "inboundDate",
@@ -92,18 +100,30 @@
const dataList = ref([]);
const tableLoading = ref(false);
const supplierList = ref([]);
function buildFilterParams() {
  const params = {
    inboundBatches: filters.inboundBatches || undefined,
    supplierName: filters.supplierName || undefined,
  };
  if (filters.dateRange && filters.dateRange.length === 2) {
const buildFilterParams = () => {
  const params = {};
  if (filters.inboundBatches) {
    params.inboundBatches = filters.inboundBatches;
  }
  if (filters.supplierId) {
    params.supplierId = filters.supplierId;
  }
  if (filters.dateRange?.length === 2) {
    params.startDate = filters.dateRange[0];
    params.endDate = filters.dateRange[1];
  }
  return params;
}
};
const getSupplierList = () => {
  listSupplier({ current: -1, size: -1, isWhite: 0 }).then((res) => {
    if (res.code === 200) {
      supplierList.value = res.data?.records ?? [];
    }
  });
};
const onSearch = () => {
  pagination.currentPage = 1;
@@ -125,10 +145,13 @@
      } else {
        ElMessage.error(res.msg || "查询失败");
        dataList.value = [];
        pagination.total = 0;
      }
    })
    .catch(() => {
      dataList.value = [];
      pagination.total = 0;
      ElMessage.error("查询失败");
    })
    .finally(() => {
      tableLoading.value = false;
@@ -137,7 +160,7 @@
const resetFilters = () => {
  filters.inboundBatches = "";
  filters.supplierName = "";
  filters.supplierId = "";
  filters.dateRange = [];
  pagination.currentPage = 1;
  getTableData();
@@ -153,11 +176,12 @@
  proxy.download(
    "/accountPurchase/exportAccountPurchaseInbound",
    buildFilterParams(),
    `采购入库_${new Date().getTime()}.xlsx`
    `采购入库_${Date.now()}.xlsx`
  );
};
onMounted(() => {
  getSupplierList();
  getTableData();
});
</script>