From c8bc54e04bc93ff4ca945c854e5fac55429f83d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=98937886381=E2=80=99?= <‘937886381@qq.com’> Date: Wed, 19 Jun 2024 16:25:50 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E6=8A=A5=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/report/index.js | 19 +- .../report/components/produceLineBar.vue | 220 ++++++++++++ src/views/report/comprehensiveData.vue | 19 +- src/views/report/produceConversion.vue | 257 ++++++++------ src/views/report/productionSituationMW.vue | 175 ++++----- .../report/productionSituationTablets.vue | 186 ++++++---- src/views/report/productionYield.vue | 336 ++++++++++++------ 7 files changed, 812 insertions(+), 400 deletions(-) create mode 100644 src/views/report/components/produceLineBar.vue diff --git a/src/api/report/index.js b/src/api/report/index.js index 8571ad5..9c6ea60 100644 --- a/src/api/report/index.js +++ b/src/api/report/index.js @@ -1,7 +1,7 @@ /* * @Author: zhp * @Date: 2024-06-17 09:41:03 - * @LastEditTime: 2024-06-18 13:47:36 + * @LastEditTime: 2024-06-19 13:30:14 * @LastEditors: zhp * @Description: */ @@ -21,3 +21,20 @@ export function getProduceTransData(data) { data: data }) } + + +export function getProduceSituationData(data) { + return request({ + url: 'ip/production/situation/get/production/situation', + method: 'post', + data: data + }) +} + +export function getProductionSituationMWData(data) { + return request({ + url: 'ip/production/situation/power/get/production/situation', + method: 'post', + data: data + }) +} diff --git a/src/views/report/components/produceLineBar.vue b/src/views/report/components/produceLineBar.vue new file mode 100644 index 0000000..19a58f0 --- /dev/null +++ b/src/views/report/components/produceLineBar.vue @@ -0,0 +1,220 @@ + + + + diff --git a/src/views/report/comprehensiveData.vue b/src/views/report/comprehensiveData.vue index 73a9f68..7d2b818 100644 --- a/src/views/report/comprehensiveData.vue +++ b/src/views/report/comprehensiveData.vue @@ -1,7 +1,7 @@ @@ -21,7 +21,7 @@ + start-placeholder="开始日期" value-format="yyyy-MM-dd" @change="changeDayTime" end-placeholder="结束日期"> @@ -34,9 +34,8 @@ - + @@ -100,9 +99,11 @@ export default { start: undefined, end: undefined, listQuery: { + pageNo: 1, + pageSize: 999, // size: 10, // current: 1, - factory: null, + factory: undefined, // total: 0, type: 2, startDate: undefined, @@ -236,7 +237,7 @@ export default { mounted() { // this.getOverView() const currentMonth = new Date() - this.listQuery.reportTime = [moment(currentMonth).format('yyyy-MM-DD HH:mm:ss'), moment(currentMonth).format('yyyy-MM-DD HH:mm:ss')] + this.listQuery.reportTime = [moment(currentMonth).format('yyyy-MM-DD'), moment(currentMonth).format('yyyy-MM-DD')] this.changeTime() this.getDataList() }, @@ -294,8 +295,8 @@ export default { }, onValueChange(picker, k) { // 选中近k周后触发的操作 if (this.start && this.end) { - this.date1 = moment(this.start.getTime() - 24 * 60 * 60 * 1000).format('YYYY-MM-DD HH:mm:ss') - this.date2 = moment(this.end.getTime() + 5 * 24 * 60 * 60 * 1000).format('YYYY-MM-DD HH:mm:ss') + this.date1 = moment(this.start.getTime() - 24 * 60 * 60 * 1000).format('YYYY-MM-DD') + this.date2 = moment(this.end.getTime() + 5 * 24 * 60 * 60 * 1000).format('YYYY-MM-DD') const numDays = (new Date(this.date2).getTime() - new Date(this.date1).getTime()) / (24 * 3600 * 1000); if (numDays > 168) { console.log(numDays) diff --git a/src/views/report/produceConversion.vue b/src/views/report/produceConversion.vue index f8e9637..1e76b70 100644 --- a/src/views/report/produceConversion.vue +++ b/src/views/report/produceConversion.vue @@ -7,17 +7,17 @@
- + - + + start-placeholder="开始日期" value-format="yyyy-MM-dd" @change="changeDayTime" end-placeholder="结束日期"> - + @@ -29,13 +29,12 @@ {{ date1 }} 至 {{ date2 }},共 {{ weekNum }} 周 --> - - + + - + @@ -79,65 +78,28 @@ - diff --git a/src/views/report/components/produceLineBarYearTarget.vue b/src/views/report/components/produceLineBarYearTarget.vue new file mode 100644 index 0000000..8fb9c80 --- /dev/null +++ b/src/views/report/components/produceLineBarYearTarget.vue @@ -0,0 +1,245 @@ + + + + diff --git a/src/views/report/comprehensiveData.vue b/src/views/report/comprehensiveData.vue index 7d2b818..416d87c 100644 --- a/src/views/report/comprehensiveData.vue +++ b/src/views/report/comprehensiveData.vue @@ -1,7 +1,7 @@ @@ -76,7 +76,7 @@ + diff --git a/src/views/report/comprehensiveData.vue b/src/views/report/comprehensiveData.vue index e3529a6..e46da5e 100644 --- a/src/views/report/comprehensiveData.vue +++ b/src/views/report/comprehensiveData.vue @@ -1,7 +1,7 @@ @@ -57,8 +57,8 @@ 导出 - +
@@ -86,7 +86,7 @@ export default { return { factoryList, factoryArray, - + currentMenu:'邯郸', listQuery: { pageNo: 1, pageSize: 999, @@ -147,7 +147,7 @@ export default { otherProps:[], tableData: [], xAxis: [], - currentMenu:null, + // currentMenu:null, lineData: {}, data: {} // proLineList: [], @@ -200,6 +200,35 @@ export default { this.getDataList() }, methods: { + objectSpanMethod({ row, column, rowIndex, columnIndex }) { + let spanOneArr = [], concatOne = 0; + // let spanTwoArr = [], concatTwo = 0; + + this.tableData.map((item, index) => { + // console.log(inde); + if (index === 0) { + spanOneArr.push(1); + } else { + //第一列需合并相同内容的判断条件 + if (item.type === this.tableData[index - 1].type) { + spanOneArr[concatOne] += 1; + spanOneArr.push(0); + } else { + spanOneArr.push(1); + concatOne = index; + }; + } + }); + + if (columnIndex === 1) { + const _row = spanOneArr[rowIndex]; + const _col = _row > 0 ? 1 : 0; + return { + rowspan: _row, + colspan: _col + } + } + }, getYear(e) { if (this.listQuery.end - this.listQuery.start > 10 * 365 * 24 * 60 * 60 * 1000) { this.$message({ @@ -288,7 +317,7 @@ export default { this.currentMenu === '邯郸' ? arr.push(1) : arr.push(2) this.listQuery.factory = arr const res = await getComprehensiveDataPage(this.listQuery) - this.tableData = res.data.list + // this.tableData = res.data.list let dataArr = [{ type: '芯片', item: 'FTO投入', @@ -412,7 +441,7 @@ export default { // this.chartMsg.xData.push(ele.titleValue) this.otherProps.push({ label: ele.titleValue, - props: 'value' + i + prop: 'value' + i }) }) console.log(this.otherProps) @@ -456,6 +485,7 @@ export default { // props: 'value' + index + 1, // }) }) + console.log(dataArr); if (res.data.length === 0) { this.tableData = [] } else { diff --git a/src/views/report/produceConversion.vue b/src/views/report/produceConversion.vue index 874d994..1f45f91 100644 --- a/src/views/report/produceConversion.vue +++ b/src/views/report/produceConversion.vue @@ -13,54 +13,41 @@
- + - + 至 - + - - - + + - - + ~ - - - 查询 - - 导出 - @@ -77,7 +64,7 @@
{{ title }}
- @@ -97,8 +84,8 @@ :chartMsg="chartMsgYearTarget" :chartId=" 'yearData'" :chartNum="chartNum" /> --> - + - + - + - +