diff --git a/src/views/basicData/platThicknessRelation/index.vue b/src/views/basicData/platThicknessRelation/index.vue index 6494d86..64a266c 100644 --- a/src/views/basicData/platThicknessRelation/index.vue +++ b/src/views/basicData/platThicknessRelation/index.vue @@ -26,6 +26,23 @@ 导入 + + + {{ console.log('levelNum-form 插槽渲染, type:', type, 'form.levelNum:', form.levelNum, 'form.levelNum类型:', typeof form.levelNum, '是否数组:', Array.isArray(form.levelNum), 'gradeData前3项:', gradeData.slice(0, 3)) }} + + + @@ -40,6 +57,7 @@ import barchSet from "./barchSet.vue"; import basicImport from '@/components/basic-import/main.vue' import {getList,addThickness,updateThickness,deleteThickness} from "@/api/basicData/platThicknessRelation" +import {getProduction} from "@/api/basicData/ruleMaintenance" export default { components: { barchSet, @@ -51,6 +69,7 @@ export default { selectionList: [], loading:false, query:{}, + gradeData: [], option: { height: "auto", calcHeight: 32, @@ -105,37 +124,17 @@ export default { prop: "thicknessCode", sortable: true, filter: true, - span: 12, + labelWidth: 150, + span: 24, search: true, }, - { - label: "质量等级", - prop: "levelNum", - type:"select", - // multiple: true, - // multipleLimit: 0, - dicUrl:"/api/blade-scheduling/qualityGrade/getGrades", - props:{ - label:"qualityGrade", - value:"qualityGrade" - }, - sortable: true, - filter: true, - span: 12, - search: false, - formatter: (row, value, label, column) => { - if (Array.isArray(value)) { - return value.join(', '); - } - return value || ''; - }, - }, + { label: "是否以21E8-210开头", prop: "startF21e8", sortable: true, filter: true, - span: 12, + span: 24, search: false, labelWidth: 150, type: "select", @@ -153,10 +152,29 @@ export default { { label: "厚度", prop: "thickness", + labelWidth: 150, + sortable: true, + filter: true, + span: 24, + search: false, + }, + { + label: "质量等级", + prop: "levelNum", + labelWidth: 150, sortable: true, filter: true, - span: 12, + span: 24, search: false, + addDisplay: true, + editDisplay: true, + formslot: true, + formatter: (row, value, label, column) => { + if (Array.isArray(value)) { + return value.join(', '); + } + return value || ''; + }, }, ], }, @@ -169,7 +187,58 @@ export default { isOpen: false, }; }, + mounted() { + this.loadGradeData() + }, methods: { + loadGradeData() { + getProduction().then(res => { + const rawData = res.data.data || [] + this.gradeData = rawData.map(item => ({ + key: String(item.qualityGrade), + label: String(item.qualityGrade), + qualityGrade: item.qualityGrade + })) + console.log('质量等级数据加载完成:', this.gradeData) + }) + }, + beforeOpen(done, type) { + console.log('beforeOpen 开始, type:', type) + console.log('当前form.levelNum:', this.form.levelNum, '类型:', typeof this.form.levelNum) + + // 确保数据已加载 + if (this.gradeData.length === 0) { + this.loadGradeData() + } + + // 立即进行数据转换 + if (type == 'edit') { + if (this.form.levelNum) { + console.log('编辑模式,原始levelNum:', this.form.levelNum, '类型:', typeof this.form.levelNum) + // 将 levelNum 转换为字符串数组,确保类型一致 + if (typeof this.form.levelNum === 'string') { + this.form.levelNum = this.form.levelNum.split(',').map(item => String(item).trim()).filter(item => item !== '') + } else if (typeof this.form.levelNum === 'number') { + this.form.levelNum = [String(this.form.levelNum)] + } else if (Array.isArray(this.form.levelNum)) { + this.form.levelNum = this.form.levelNum.map(item => String(item).trim()) + } + console.log('编辑模式,处理后levelNum:', this.form.levelNum, '是否数组:', Array.isArray(this.form.levelNum)) + } else { + this.form.levelNum = [] + } + } else if (type == 'add') { + this.form.levelNum = [] + } + + console.log('beforeOpen 结束,form.levelNum:', this.form.levelNum, '是否数组:', Array.isArray(this.form.levelNum)) + // 先调用 done() 让对话框显示 + done() + // 然后在 nextTick 中再次确认数据 + this.$nextTick(() => { + console.log('nextTick 中的 form.levelNum:', this.form.levelNum, '是否数组:', Array.isArray(this.form.levelNum)) + }) + }, // 点击导入按钮 handleImport() { this.isShowImport = true @@ -191,7 +260,11 @@ export default { this.onLoad(this.page); }, rowSave(row, done, loading){ - addThickness(row).then(res =>{ + const params = { + ...row, + levelNum: Array.isArray(row.levelNum) ? row.levelNum.join(',') : row.levelNum + } + addThickness(params).then(res => { if(res.data.code == 200){ this.$message.success('新增成功') this.onLoad() @@ -200,7 +273,11 @@ export default { }) }, rowUpdate(row, index, done, loading){ - updateThickness(row).then(res =>{ + const params = { + ...row, + levelNum: Array.isArray(row.levelNum) ? row.levelNum.join(',') : row.levelNum + } + updateThickness(params).then(res =>{ if(res.data.code == 200){ this.$message.success('修改成功') this.onLoad() diff --git a/src/views/energyManagement/components/waterQuota.vue b/src/views/energyManagement/components/waterQuota.vue index fb83815..95e1ccb 100644 --- a/src/views/energyManagement/components/waterQuota.vue +++ b/src/views/energyManagement/components/waterQuota.vue @@ -131,9 +131,8 @@ export default { sortable: true, filter: true, span: 24, - type: 'datetime', - format: "yyyy-MM-dd", - valueFormat: "yyyy-MM-dd", + type: 'date', + rules: [ { required: true, diff --git a/src/views/energyManagement/components/waterTarget.vue b/src/views/energyManagement/components/waterTarget.vue index 561436b..05216c9 100644 --- a/src/views/energyManagement/components/waterTarget.vue +++ b/src/views/energyManagement/components/waterTarget.vue @@ -114,6 +114,7 @@ export default { type: "month", format: "YYYY-MM", valueFormat: "YYYY-MM", + valueType: "string", rules: [ { required: true, @@ -124,7 +125,7 @@ export default { }, { label: "用水目标(L/d㎡)", - prop: "tapWater", + prop: "target", search: false, sortable: true, filter: true, @@ -262,20 +263,48 @@ export default { }, onLoad() { this.loading = true; + console.log('=== onLoad 开始 ==='); + console.log('请求参数:', { + current: this.page.currentPage, + size: this.page.pageSize, + type: 1 + }); pageList( this.page.currentPage, this.page.pageSize, { type: 1 } ).then(res => { - this.data = res.data.data.records; - this.page.total = res.data.data.total; - this.loading = false; - setTimeout(() => { - this.selectionClear(); - }, 500); - }).catch(() => { + console.log('API返回数据:', res); + console.log('res.data:', res.data); + console.log('res.data.data:', res.data.data); + + if (res.data && res.data.data) { + this.data = res.data.data.records || []; + this.page.total = res.data.data.total || 0; + console.log('最终数据:', { + records: this.data, + total: this.page.total, + dataLength: this.data.length + }); + + } else { + console.error('响应数据格式不正确:', res); + this.data = []; + this.page.total = 0; + } + + // 使用 nextTick 确保 loading 状态更新 + this.$nextTick(() => { + this.loading = false; + setTimeout(() => { + this.selectionClear(); + }, 500); + }); + }).catch(err => { + console.error('请求失败:', err); this.loading = false; }); + console.log('=== onLoad 结束 ==='); }, }, }; diff --git a/src/views/energyManagement/energyMonitoring.vue b/src/views/energyManagement/energyMonitoring.vue index 4293335..fd72144 100644 --- a/src/views/energyManagement/energyMonitoring.vue +++ b/src/views/energyManagement/energyMonitoring.vue @@ -35,7 +35,7 @@ @@ -101,29 +101,19 @@ export default { editBtnIcon: " ", align: "center", column: [ - { - label: "月份", - prop: "month", - sortable: true, - filter: true, - span: 12, - search: true, - width: 130, - type: 'datetimerange', - format: 'YYYY-MM-DD', - valueFormat: 'YYYY-MM-DD', - startPlaceholder: '开始日期', - endPlaceholder: '结束日期', - rangeSeparator: '至', - searchRange: true, - rules: [ - { - required: true, - message: "请选择日期范围", - trigger: "change", - }, - ], - }, + { + label: '月份', + prop: 'month', + type: "month", + sortable: true, + filter: true, + format:'YYYY-MM', + valueFormat:'YYYY-MM', + span: 24, + search: true, + width: 120, + searchLabelWidth: 50, + }, { label: "上年度月用水", prop: "lastWater", @@ -153,7 +143,7 @@ export default { }, { label: "本年度月用水", - prop: "yearWater", + prop: "currentWater", search: false, sortable: true, filter: true, @@ -162,7 +152,7 @@ export default { }, { label: "本年度月用电", - prop: "yearElectric", + prop: "currentElectric", search: false, sortable: true, filter: true, @@ -171,16 +161,16 @@ export default { }, { label: "本年度月产值", - prop: "yearNum", + prop: "currentOutput", search: false, sortable: true, filter: true, span: 12, width: 140, }, - { - label: "本年度月用水目标", - prop: "yearWaterTarget", + { + label: "上年度月用水目标", + prop: "lastWaterTarget", search: false, sortable: true, filter: true, @@ -188,8 +178,8 @@ export default { width: 170, }, { - label: "本月用电目标", - prop: "currentElectricTarget", + label: "上年度月用电目标", + prop: "lastElectricTarget", search: false, sortable: true, filter: true, @@ -197,25 +187,25 @@ export default { width: 170, }, { - label: "本月用水目标", + label: "本年度月用水目标", prop: "currentWaterTarget", search: false, sortable: true, filter: true, span: 12, - width: 200, + width: 170, }, { - label: "上月用电实际完成", - prop: "lastElectricRate", + label: "本年度月用电目标", + prop: "currentElectricTarget", search: false, sortable: true, filter: true, span: 12, - width: 200, + width: 170, }, { - label: "上月用水实际完成", + label: "上年度月用水实际完成", prop: "lastWaterRate", search: false, sortable: true, @@ -224,7 +214,17 @@ export default { width: 200, }, { - label: "本月用电实际完成", + label: "上年度月用电实际完成", + prop: "lastElectricRate", + search: false, + sortable: true, + filter: true, + span: 12, + width: 200, + }, + + { + label: "本年度月用电实际完成", prop: "currentElectricRate", search: false, sortable: true, @@ -233,7 +233,7 @@ export default { width: 200, }, { - label: "本月用水实际完成", + label: "本年度月用水实际完成", prop: "currentWaterRate", search: false, sortable: true, @@ -241,7 +241,24 @@ export default { span: 12, width: 200, }, - + // { + // label: "创建人", + // prop: "userName", + // search: false, + // sortable: true, + // filter: true, + // span: 12, + // width: 140, + // }, + // { + // label: "创建时间", + // prop: "uploadTime", + // search: false, + // sortable: true, + // filter: true, + // span: 12, + // width: 140, + // }, ], }, form: {},