| | |
| | | <template> |
| | | <div class="app-container"> |
| | | <el-form :inline="true" :model="queryParams" class="search-form"> |
| | | <el-form :inline="true" :model="queryParams" class="search-form"> |
| | | <el-form-item label="搜索"> |
| | | <el-input |
| | | v-model="queryParams.searchText" |
| | | placeholder="请输入关键词" |
| | | clearable |
| | | :style="{ width: '100%' }" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="供应商名称"> |
| | |
| | | v-model="queryParams.supplierName" |
| | | placeholder="请输入" |
| | | clearable |
| | | :style="{ width: '100%' }" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="统一人识别号"> |
| | |
| | | v-model="queryParams.identifyNumber" |
| | | placeholder="请输入" |
| | | clearable |
| | | :style="{ width: '100%' }" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="经营地址"> |
| | |
| | | v-model="queryParams.address" |
| | | placeholder="请输入" |
| | | clearable |
| | | :style="{ width: '100%' }" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item> |
| | |
| | | @delete="handleDeleteSuccess" |
| | | :show-selection="true" |
| | | :border="true" |
| | | :maxHeight="440" |
| | | :maxHeight="480" |
| | | /> |
| | | </div> |
| | | <pagination |
| | |
| | | :form="form" |
| | | :title="title" |
| | | @submit="handleSubmit" |
| | | :addOrEdit="addOrEdit" |
| | | @beforeClose="handleBeforeClose" |
| | | /> |
| | | <Coal |
| | |
| | | v-model:coalDialogFormVisible="dialogFormVisible" |
| | | :form="form" |
| | | :title="title" |
| | | :addOrEdit="addOrEdit" |
| | | @submit="handleSubmit" |
| | | /> |
| | | <coalQualityMaintenance |
| | | v-if="tabName === 'coalQualityMaintenance'" |
| | | v-model:coalQualityMaintenanceDialogFormVisible="dialogFormVisible" |
| | | :form="form" |
| | | :title="title" |
| | | :addOrEdit="addOrEdit" |
| | | @submit="handleSubmit" |
| | | /> |
| | | </el-card> |
| | |
| | | import Supplier from "./mould/supplier.vue"; |
| | | import Customer from "./mould/customer.vue"; |
| | | import Coal from "./mould/coal.vue"; |
| | | import coalQualityMaintenance from "./mould/coalQualityMaintenance.vue"; |
| | | const { proxy } = getCurrentInstance() |
| | | // 弹窗 |
| | | const coalQualityMaintenanceDialogFormVisible = ref(false); |
| | | const customerDialogFormVisible = ref(false); |
| | | const coalDialogFormVisible = ref(false); |
| | | const supplierDialogFormVisible = ref(false); |
| | |
| | | const tabName = ref("supplier"); |
| | | // 状态变量 |
| | | const loading = ref(false); |
| | | const total = ref(200); |
| | | const total = ref(0); |
| | | const pageNum = ref(1); |
| | | const pageSize = ref(10); |
| | | const activeTab = ref("supplier"); |
| | |
| | | { name: "supplier", label: "供应商信息" }, |
| | | { name: "customer", label: "客户信息" }, |
| | | { name: "coal", label: "煤种信息" }, |
| | | { name: "coalQualityMaintenance", label: "煤质维护" }, |
| | | ]); |
| | | // 是否编辑 |
| | | const addOrEdit = ref("add"); |
| | |
| | | }, 500); |
| | | }; |
| | | // supplier 供应商数据 |
| | | const supplierColumns = reactive([ |
| | | const supplierColumns = ref([ |
| | | { prop: "supplierName", label: "供应商名称", minWidth: 200 }, |
| | | { prop: "identifyNumber", label: "统一人识别号", minWidth: 120 }, |
| | | { prop: "address", label: "经营地址", minWidth: 150 }, |
| | | { prop: "detailedaddress", label: "详细地址", minWidth: 150 }, |
| | | { prop: "bank", label: "开户行", minWidth: 120 }, |
| | | { prop: "bankAccount", label: "银行账号", minWidth: 150 }, |
| | | { prop: "contacts", label: "联系人", minWidth: 100 }, |
| | |
| | | { prop: "maintainDate", label: "维护日期", minWidth: 100 }, |
| | | ]); |
| | | // customer 客户数据 |
| | | const customerColumns = reactive([ |
| | | const customerColumns = ref([ |
| | | { prop: "customerName", label: "客户名称", minWidth: 200 }, |
| | | { prop: "identifyNumber", label: "统一人识别号", minWidth: 120 }, |
| | | { prop: "address", label: "经营地址", minWidth: 150 }, |
| | | { prop: "detailedaddress", label: "详细地址", minWidth: 150 }, |
| | | { prop: "bank", label: "开户行", minWidth: 120 }, |
| | | { prop: "bankAccount", label: "银行账号", minWidth: 150 }, |
| | | { prop: "contacts", label: "联系人", minWidth: 100 }, |
| | |
| | | { prop: "maintainDate", label: "维护日期", minWidth: 100 }, |
| | | ]); |
| | | // coal 煤种数据 |
| | | const coalColumns = reactive([ |
| | | const coalColumns = ref([ |
| | | { prop: "coalName", label: "煤种名称", minWidth: 200 }, |
| | | { prop: "maintainer", label: "维护人", minWidth: 120 }, |
| | | { prop: "maintenanceDate", label: "维护日期", minWidth: 150 }, |
| | | ]); |
| | | // coalQualityMaintenance 煤质维护数据 |
| | | const coalQualityMaintenanceColumns = ref([ |
| | | { prop: "supplierName", label: "全水(<)", minWidth: 200 }, |
| | | { prop: "identifyNumber", label: "水分析(<)", minWidth: 120 }, |
| | | { prop: "address", label: "灰分", minWidth: 150 }, |
| | | { prop: "bank", label: "挥发(>)", minWidth: 100 }, |
| | | { prop: "bankAccount", label: "硫(<)", minWidth: 100 }, |
| | | { prop: "contacts", label: "固定碳", minWidth: 100 }, |
| | | { prop: "contactAddress", label: "高位发热量", minWidth: 100 }, |
| | | { prop: "maintainer", label: "低位发热量", minWidth: 100 }, |
| | | ]); |
| | | // 标签页点击 |
| | | const handleTabClick = (tab) => { |
| | |
| | | getList(); |
| | | switch (tabName.value) { |
| | | case "supplier": |
| | | columns.value = supplierColumns; |
| | | columns.value = supplierColumns.value; |
| | | dialogFormVisible.value = supplierDialogFormVisible.value; |
| | | break; |
| | | case "customer": |
| | | columns.value = customerColumns; |
| | | columns.value = customerColumns.value; |
| | | dialogFormVisible.value = customerDialogFormVisible.value; |
| | | break; |
| | | case "coal": |
| | | columns.value = coalColumns; |
| | | columns.value = coalColumns.value; |
| | | dialogFormVisible.value = coalDialogFormVisible.value; |
| | | break; |
| | | case "coalQualityMaintenance": |
| | | columns.value = coalQualityMaintenanceColumns.value; |
| | | dialogFormVisible.value = coalQualityMaintenanceDialogFormVisible.value; |
| | | break; |
| | | } |
| | | setTimeout(() => { |
| | |
| | | }; |
| | | // 新增编辑 |
| | | const handleAddEdit = (tabName) => { |
| | | addOrEdit.value == "add" ? (title.value = "新增") : (title.value = "编辑"); |
| | | addOrEdit.value == "add" ? title.value = "新增" : title.value = "编辑"; |
| | | if (tabName === "supplier") { |
| | | dialogFormVisible.value = true; |
| | | title.value = title.value + "供应商信息"; |
| | |
| | | } else if (tabName === "coal") { |
| | | dialogFormVisible.value = true; |
| | | title.value = title.value + "煤种信息"; |
| | | openDialog(); |
| | | } else if (tabName === "coalQualityMaintenance") { |
| | | dialogFormVisible.value = true; |
| | | title.value = title.value + "煤质维护"; |
| | | openDialog(); |
| | | } |
| | | }; |
| | |
| | | dialogFormVisible.value = true; |
| | | }; |
| | | // 提交表单 |
| | | const handleSubmit = (val) => { |
| | | const handleSubmit = () => { |
| | | // 拿到提交数据 |
| | | dialogFormVisible.value = false; |
| | | if (addOrEdit.value === "add") { |
| | | ElMessage.success("新增成功:" + copyForm.value.supplierName); |
| | | } else { |
| | | ElMessage.success("编辑成功:" + copyForm.value.supplierName); |
| | | } |
| | | getList(); |
| | | }; |
| | | const handleDialogFormVisible = (value) => { |
| | |
| | | }; |
| | | const getList = () => { |
| | | loading.value = true; |
| | | |
| | | setTimeout(() => { |
| | | // 暂时引入测试数据 |
| | | tableData.value = [ |
| | |
| | | </script> |
| | | |
| | | <style scoped> |
| | | .app-container{ |
| | | box-sizing: border-box; |
| | | } |
| | | .search-form { |
| | | background-color: #fff; |
| | | padding: 20px 20px 0 20px; |
| | | margin-bottom: 20px; |
| | | border-radius: 4px; |
| | | box-shadow: var(--el-box-shadow-light); |
| | | } |
| | | .search-form :deep(.el-form-item) { |
| | | margin-bottom: 16px; |
| | | width: 100%; |
| | | } |
| | | |
| | | /* 响应式布局 */ |
| | | @media screen and (min-width: 768px) { |
| | | .search-form :deep(.el-form-item) { |
| | |
| | | } |
| | | @media screen and (min-width: 1200px) { |
| | | .search-form :deep(.el-form-item) { |
| | | width: 18%; |
| | | width: 16%; |
| | | } |
| | | } |
| | | .info-tabs { |
| | | margin-bottom: 20px; |
| | | } |
| | | .table-toolbar { |
| | | margin-bottom: 20px; |
| | |
| | | flex-wrap: wrap; |
| | | gap: 10px; |
| | | } |
| | | |
| | | /* 响应式表格 */ |
| | | @media screen and (max-width: 768px) { |
| | | .table-toolbar { |
| | |
| | | .table-toolbar{ |
| | | margin-bottom: 20px !important; |
| | | } |
| | | .el-form--inline .el-form-item { |
| | | margin-right: 25px; |
| | | } |
| | | .main-container{ |
| | | background: red !important; |
| | | } |
| | | </style> |