From 822503496ca2ad1a6c257cfa442908523a64c06e Mon Sep 17 00:00:00 2001 From: xiezuo003 Date: Thu, 9 Nov 2023 19:45:35 +0800 Subject: [PATCH] update --- src/api/sjzx/gcrlWH.js | 4 +- src/main.js | 7 +- src/views/jhzx/jtsyCX.vue | 151 ++++++++++++++++++++------- src/views/jhzx/jtsyWH.vue | 198 ++++++++++++++++++++++-------------- src/views/jhzx/xbjhCX.vue | 61 ++++++----- src/views/jhzx/xbjhWH.vue | 67 +++++++----- src/views/jhzx/zrcCX.vue | 60 +++++++---- src/views/jhzx/zrcSH.vue | 100 ++++++++++-------- src/views/jhzx/zrcWH.vue | 103 +++++++++++-------- src/views/sjzx/gcrlWH.vue | 5 +- src/views/sjzx/sbryWH.vue | 4 +- src/views/sjzx/sbwxjhWH.vue | 100 +++++++++--------- src/views/sjzx/tzjhGL.vue | 20 ++-- src/views/sjzx/tzjhSH.vue | 20 ++-- 14 files changed, 547 insertions(+), 353 deletions(-) diff --git a/src/api/sjzx/gcrlWH.js b/src/api/sjzx/gcrlWH.js index 50e1576..fb85b7d 100644 --- a/src/api/sjzx/gcrlWH.js +++ b/src/api/sjzx/gcrlWH.js @@ -21,10 +21,10 @@ export function update(data) { } // 一键生成 -export function generate(data) { +export function generate(nf) { return request({ url: "/emGcrl/generate", method: "post", - data, + params:{nf}, }); } \ No newline at end of file diff --git a/src/main.js b/src/main.js index aca8131..116d42c 100644 --- a/src/main.js +++ b/src/main.js @@ -5,7 +5,8 @@ import Cookies from 'js-cookie' import 'normalize.css/normalize.css' // a modern alternative to CSS resets import Element from 'element-ui' -import './styles/element-variables.scss' +// import './styles/element-variables.scss' +import 'element-ui/lib/theme-chalk/index.css' import '@/styles/index.scss' // global css @@ -24,8 +25,8 @@ import 'xe-utils' import VXETable from 'vxe-table' import 'vxe-table/lib/style.css' import cal from './utils/calculation' -import VXETablePluginExportXLSX from 'vxe-table-plugin-export-xlsx' -VXETable.use(VXETablePluginExportXLSX) +// import VXETablePluginExportXLSX from 'vxe-table-plugin-export-xlsx' +// VXETable.use(VXETablePluginExportXLSX) Vue.prototype.cal = cal Vue.use(VXETable) import print from './utils/print' //能不能单独引用 diff --git a/src/views/jhzx/jtsyCX.vue b/src/views/jhzx/jtsyCX.vue index 848aa13..b9ed8e5 100644 --- a/src/views/jhzx/jtsyCX.vue +++ b/src/views/jhzx/jtsyCX.vue @@ -3,23 +3,30 @@ - - - - - +
+
+ +
+ + +
~
+ + +
- - - + - - +
+
查询 - - +
+
@@ -75,7 +82,8 @@ export default { data() { return { request: { - date: "", + dateStart: "", + dateEnd: "", Zt: "", }, list: [], @@ -169,9 +177,10 @@ export default { filterRender: { name: "FilterCombination" }, }, { - field: "bz", - title: "备注", + field: "zt", + title: "状态", align: "center", + slots: { default: "Zt_default" }, filters: [ { data: { @@ -189,8 +198,8 @@ export default { filterRender: { name: "FilterCombination" }, }, { - field: "bzy", - title: "编制人", + field: "bz", + title: "备注", align: "center", filters: [ { @@ -209,8 +218,8 @@ export default { filterRender: { name: "FilterCombination" }, }, { - field: "bzrq", - title: "编制日期", + field: "bzy", + title: "编制人", align: "center", filters: [ { @@ -229,10 +238,9 @@ export default { filterRender: { name: "FilterCombination" }, }, { - field: "zt", - title: "状态", + field: "bzrq", + title: "编制日期", align: "center", - slots: { default: "Zt_default" }, filters: [ { data: { @@ -260,6 +268,12 @@ export default { label: "已审核", }, ], + pickerOptionsEnd: { + disabledDate: this.disabledDateEnd, + }, + pickerOptionsStart: { + disabledDate: this.disabledDateStart, + }, }; }, created() { @@ -268,17 +282,42 @@ export default { this.initList(); }, methods: { + // 获取三个月后日期 + getFutureMonthDay(sourceDate, monthNum = 3) { + const d = new Date(sourceDate); + //来源 + const SY = d.getFullYear(); + const SM = d.getMonth(); + const SD = d.getDate(); + //结果 + const mydate = new Date( + SY, + String(SM + monthNum).padStart(2, "0"), + String(SD).padStart(2, "0") + ); + const yyyy = mydate.getFullYear(); + let MM = (mydate.getMonth() + 1).toString().padStart(2, "0"); + let dd = mydate.getDate().toString().padStart(2, "0"); + //如果月份是2月,就进行闰年和非闰年处理,防止出现类似2月30的情况 + if (MM == 2 && dd > 28) { + if (yyyy % 100 == 0 && yyyy % 400 == 0) { + dd = 29; + } else if (yyyy % 100 != 0 && yyyy % 4 == 0) { + dd = 29; + } else { + dd = 28; + } + } + return `${yyyy}/${MM}/${dd}`; + }, // 获取列表接口 initList() { let params = { Zt: this.request.Zt, jhrq: "", }; - if (this.request.date && this.request.date.length > 0) { - params.jhrq = - this.request.date[0].toLocaleDateString() + - "~" + - this.request.date[1].toLocaleDateString(); + if (this.request.dateStart && this.request.dateEnd) { + params.jhrq = this.request.dateStart + "~" + this.request.dateEnd; } else { params.jhrq = ""; } @@ -289,6 +328,34 @@ export default { } }); }, + + // 选择开始日期 + changeDateStart(value) { + if (value) { + this.request.dateEnd = this.getFutureMonthDay(value, 3); + } + }, + changeDateEnd(value) {}, + // 开始日期限制 + disabledDateStart(time) { + const beginDateVal = this.request.dateEnd; + if (beginDateVal) { + return ( + time.valueOf() >= + new Date(beginDateVal).valueOf() - 24 * 60 * 60 * 1000 + 1 + ); + } + }, + // 结束日期限制 + disabledDateEnd(time) { + const beginDateVal = this.request.dateStart; + if (beginDateVal) { + return ( + time.valueOf() <= + new Date(beginDateVal).valueOf() - 24 * 60 * 60 * 1000 + 1 + ); + } + }, getHeight() { this.height = window.innerHeight - 160; }, @@ -351,4 +418,18 @@ export default { ::v-deep .el-date-editor.el-input__inner { width: auto !important; } +.date-flex { + display: flex; + .center { + margin-left: 5px; + margin-right: 5px; + } +} +.flex-form { + display: flex; + .flex-query { + display: flex; + align-items: center; + } +} diff --git a/src/views/jhzx/jtsyWH.vue b/src/views/jhzx/jtsyWH.vue index b624d09..75c7520 100644 --- a/src/views/jhzx/jtsyWH.vue +++ b/src/views/jhzx/jtsyWH.vue @@ -3,23 +3,30 @@ - - - - - +
+
+ +
+ + +
~
+ + +
- - - + - - +
+
审核 查询 - - +
+
@@ -98,7 +105,8 @@ export default { data() { return { request: { - date: "", + dateStart: "", + dateEnd: "", Zt: "", }, list: [], @@ -113,49 +121,10 @@ export default { fixed: "left", }, { - field: "dcCh", - title: "船号", - align: "center", - filters: [ - { - data: { - checks: [], - sVal: "", - sMenu: "", - fType1: "", - fVal1: "", - fMode: "and", - fType2: "", - fVal2: "", - }, - }, - ], - filterRender: { name: "FilterCombination" }, - }, - { - field: "dcPl", - title: "批量", - align: "center", - filters: [ - { - data: { - checks: [], - sVal: "", - sMenu: "", - fType1: "", - fVal1: "", - fMode: "and", - fType2: "", - fVal2: "", - }, - }, - ], - filterRender: { name: "FilterCombination" }, - }, - { - field: "dcFd", - title: "分段", + field: "zt", + title: "状态", align: "center", + slots: { default: "Zt_default" }, filters: [ { data: { @@ -173,8 +142,8 @@ export default { filterRender: { name: "FilterCombination" }, }, { - field: "jhrq", - title: "计划期", + field: "dcCh", + title: "船号", align: "center", filters: [ { @@ -193,8 +162,8 @@ export default { filterRender: { name: "FilterCombination" }, }, { - field: "bz", - title: "备注", + field: "dcPl", + title: "批量", align: "center", filters: [ { @@ -213,8 +182,8 @@ export default { filterRender: { name: "FilterCombination" }, }, { - field: "bzy", - title: "编制人", + field: "dcFd", + title: "分段", align: "center", filters: [ { @@ -233,8 +202,8 @@ export default { filterRender: { name: "FilterCombination" }, }, { - field: "bzrq", - title: "编制日期", + field: "jhrq", + title: "计划期", align: "center", filters: [ { @@ -253,10 +222,9 @@ export default { filterRender: { name: "FilterCombination" }, }, { - field: "zt", - title: "状态", + field: "bz", + title: "备注", align: "center", - slots: { default: "Zt_default" }, filters: [ { data: { @@ -284,6 +252,12 @@ export default { label: "已审核", }, ], + pickerOptionsEnd: { + disabledDate: this.disabledDateEnd, + }, + pickerOptionsStart: { + disabledDate: this.disabledDateStart, + }, fileList: [], //导入 checkedList: [], }; @@ -294,17 +268,42 @@ export default { this.initList(); }, methods: { + // 获取三个月后日期 + getFutureMonthDay(sourceDate, monthNum = 3) { + const d = new Date(sourceDate); + //来源 + const SY = d.getFullYear(); + const SM = d.getMonth(); + const SD = d.getDate(); + //结果 + const mydate = new Date( + SY, + String(SM + monthNum).padStart(2, "0"), + String(SD).padStart(2, "0") + ); + const yyyy = mydate.getFullYear(); + let MM = (mydate.getMonth() + 1).toString().padStart(2, "0"); + let dd = mydate.getDate().toString().padStart(2, "0"); + //如果月份是2月,就进行闰年和非闰年处理,防止出现类似2月30的情况 + if (MM == 2 && dd > 28) { + if (yyyy % 100 == 0 && yyyy % 400 == 0) { + dd = 29; + } else if (yyyy % 100 != 0 && yyyy % 4 == 0) { + dd = 29; + } else { + dd = 28; + } + } + return `${yyyy}/${MM}/${dd}`; + }, // 获取列表接口 initList() { let params = { Zt: this.request.Zt, jhrq: "", }; - if (this.request.date && this.request.date.length > 0) { - params.jhrq = - this.request.date[0].toLocaleDateString() + - "~" + - this.request.date[1].toLocaleDateString(); + if (this.request.dateStart && this.request.dateEnd) { + params.jhrq = this.request.dateStart + "~" + this.request.dateEnd; } else { params.jhrq = ""; } @@ -315,6 +314,33 @@ export default { } }); }, + // 选择开始日期 + changeDateStart(value) { + if (value) { + this.request.dateEnd = this.getFutureMonthDay(value, 3); + } + }, + changeDateEnd(value) {}, + // 开始日期限制 + disabledDateStart(time) { + const beginDateVal = this.request.dateEnd; + if (beginDateVal) { + return ( + time.valueOf() >= + new Date(beginDateVal).valueOf() - 24 * 60 * 60 * 1000 + 1 + ); + } + }, + // 结束日期限制 + disabledDateEnd(time) { + const beginDateVal = this.request.dateStart; + if (beginDateVal) { + return ( + time.valueOf() <= + new Date(beginDateVal).valueOf() - 24 * 60 * 60 * 1000 + 1 + ); + } + }, // 上传excel actionUpload(file) { const formData = new FormData(); @@ -448,4 +474,18 @@ export default { ::v-deep .el-date-editor.el-input__inner { width: auto !important; } +.date-flex { + display: flex; + .center { + margin-left: 5px; + margin-right: 5px; + } +} +.flex-form { + display: flex; + .flex-query { + display: flex; + align-items: center; + } +} diff --git a/src/views/jhzx/xbjhCX.vue b/src/views/jhzx/xbjhCX.vue index 41ffc1a..db079b0 100644 --- a/src/views/jhzx/xbjhCX.vue +++ b/src/views/jhzx/xbjhCX.vue @@ -31,7 +31,7 @@ - +
{ + data[item].sort(this.compare("nf")); + data[item].sort(this.compare("yf")); + data[item].forEach((em) => { + em.zl = em.zl ? em.zl : null; + }); + }); this.tableData = data; this.leftColumn = []; //左侧列数据 this.topColumn = []; //顶部列数据 @@ -227,8 +243,11 @@ export default { objeckList[i][ "cl" + this.tableData[i][v].nf + this.tableData[i][v].yf ] = this.tableData[i][v].zl; - objeckList[i]["cltotal" + this.tableData[i][v].nf] = - sumArr[i][this.tableData[i][v].nf]; + objeckList[i]["cltotal" + this.tableData[i][v].nf] = sumArr[i][ + this.tableData[i][v].nf + ] + ? sumArr[i][this.tableData[i][v].nf] + : ""; } } this.arrList = Object.values(objeckList); //data数据 @@ -329,7 +348,7 @@ export default { if ($rowIndex == 0) { return "row-gre-header"; } else { - if (column.field === "total1" || column.field === "total2") { + if (column.field.indexOf("cltotal") > -1) { return "row-gre-total-header"; } else { return "row-gre-header"; @@ -338,8 +357,12 @@ export default { }, // 指定列css cellClassName({ column }) { - if (column.field === "total1" || column.field === "total2") { - return "col-gre-total-col"; + if (column.field) { + if (column.field.indexOf("cltotal") > -1) { + return "col-gre-total-col"; + } else { + return "col-gre-col"; + } } else { return "col-gre-col"; } @@ -354,7 +377,7 @@ export default { async toolbarButtonClickEvent(code) { switch (code) { case "submit": - if (!JSON.stringify(this.checkedList) =="{}") { + if (!JSON.stringify(this.checkedList) == "{}") { this.$confirm("是否确认提交选择的数据?", "提示", { confirmButtonText: "确定", cancelButtonText: "取消", @@ -375,7 +398,7 @@ export default { } break; case "save": - if (JSON.stringify(this.checkedList) =="{}") { + if (JSON.stringify(this.checkedList) == "{}") { this.$confirm("是否确认保存选择的数据?", "提示", { confirmButtonText: "确定", cancelButtonText: "取消", @@ -406,7 +429,7 @@ export default { }; - diff --git a/src/views/jhzx/zrcSH.vue b/src/views/jhzx/zrcSH.vue index 29ce45a..9ed89a6 100644 --- a/src/views/jhzx/zrcSH.vue +++ b/src/views/jhzx/zrcSH.vue @@ -3,43 +3,45 @@ - - - - - - - - - - - +
+
+ + - - - - - - 查询 - - + + +
+
+ + + + + + +
+
+ 查询 +
+
+