| | |
| | | <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 |
| | |
| | | @pagination="changePage" |
| | | > |
| | | <template #inboundDate="{ row }"> |
| | | {{ row.InboundDate || row.inboundDate || "" }} |
| | | {{ row.inboundDate ?? row.InboundDate ?? "" }} |
| | | </template> |
| | | </PIMTable> |
| | | </div> |
| | |
| | | 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: "采购入库", |
| | |
| | | |
| | | const filters = reactive({ |
| | | inboundBatches: "", |
| | | supplierName: "", |
| | | supplierId: "", |
| | | dateRange: [], |
| | | }); |
| | | |
| | |
| | | { label: "供应商", prop: "supplierName", minWidth: "180" }, |
| | | { |
| | | label: "入库日期", |
| | | prop: "InboundDate", |
| | | prop: "inboundDate", |
| | | minWidth: "170", |
| | | dataType: "slot", |
| | | slot: "inboundDate", |
| | |
| | | |
| | | 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; |
| | |
| | | } else { |
| | | ElMessage.error(res.msg || "查询失败"); |
| | | dataList.value = []; |
| | | pagination.total = 0; |
| | | } |
| | | }) |
| | | .catch(() => { |
| | | dataList.value = []; |
| | | pagination.total = 0; |
| | | ElMessage.error("查询失败"); |
| | | }) |
| | | .finally(() => { |
| | | tableLoading.value = false; |
| | |
| | | |
| | | const resetFilters = () => { |
| | | filters.inboundBatches = ""; |
| | | filters.supplierName = ""; |
| | | filters.supplierId = ""; |
| | | filters.dateRange = []; |
| | | pagination.currentPage = 1; |
| | | getTableData(); |
| | |
| | | proxy.download( |
| | | "/accountPurchase/exportAccountPurchaseInbound", |
| | | buildFilterParams(), |
| | | `采购入库_${new Date().getTime()}.xlsx` |
| | | `采购入库_${Date.now()}.xlsx` |
| | | ); |
| | | }; |
| | | |
| | | onMounted(() => { |
| | | getSupplierList(); |
| | | getTableData(); |
| | | }); |
| | | </script> |