diff --git a/attendance-performance-manager-ui/admin/src/assets/mixins/table.js b/attendance-performance-manager-ui/admin/src/assets/mixins/table.js index 5cdf01e901972e08e57f1ad08ccd0c470985669b..b35e4f0e744db2f43f69446e80f38f45ed79ebbe 100644 --- a/attendance-performance-manager-ui/admin/src/assets/mixins/table.js +++ b/attendance-performance-manager-ui/admin/src/assets/mixins/table.js @@ -72,6 +72,8 @@ export default { return; } this.tableData.loading = true; + console.log(this.source.token); + this.$post(this.pageInfo.list, this.query, { cancelToken: this.source.token, }) @@ -100,6 +102,7 @@ export default { return; } this.tableData.loading = true; + return; this.$post("/attendance/stat/summary", this.query, { cancelToken: this.source.token, }) diff --git a/attendance-performance-manager-ui/admin/src/components/SearchForm.vue b/attendance-performance-manager-ui/admin/src/components/SearchForm.vue index 70fafb642623c45ed93f8ad083f5effb2acc22c7..8835ad15bdba6d87a9b1e00b10d0169237dd4ea5 100644 --- a/attendance-performance-manager-ui/admin/src/components/SearchForm.vue +++ b/attendance-performance-manager-ui/admin/src/components/SearchForm.vue @@ -160,6 +160,13 @@ title="鏌ヨ" >鏌ヨ</el-button > + <el-button + icon="el-icon-tickets" + @click="resetTable" + v-if="visible" + title="閲嶆柊姹囨€�" + >閲嶆柊姹囨€�</el-button + > <el-button icon="el-icon-download" @@ -198,9 +205,59 @@ export default { }, }, async created() { + console.log(this.$route); + this.$route.name == "attendance/stat/list" + ? (this.visible = true) + : (this.visible = false); this.initForm(this.$route.query); }, methods: { + resetTable() { + let { path, query } = this.$route; + if (this.form.attendanceDateStart && this.form.attendanceDateEnd) { + let startValue = Date.parse(this.form.attendanceDateStart); + let endValue = Date.parse(this.form.attendanceDateEnd); + if (startValue > endValue) { + this.$message.error("鏌ヨ-缁撴潫鐨勬棩鏈熼渶澶т簬寮€濮嬫棩鏈�"); + this.form.attendanceDateEnd = ""; + return false; + } + } + + if (this.form.startTime && this.form.endTime) { + let startValue = Date.parse(this.form.startTime); + let endValue = Date.parse(this.form.endTime); + if (startValue > endValue) { + this.$message.error("鏌ヨ-缁撴潫鐨勬棩鏈熼渶澶т簬寮€濮嬫棩鏈�"); + this.form.endTime = ""; + return false; + } + } + + if (this.form.summaryTimeStart && this.form.summaryTimeEnd) { + let startValue = Date.parse(this.form.summaryTimeStart); + let endValue = Date.parse(this.form.summaryTimeEnd); + if (startValue > endValue) { + this.$message.error("鏌ヨ-缁撴潫鐨勬棩鏈熼渶澶т簬寮€濮嬫棩鏈�"); + this.form.summaryTimeEnd = ""; + return false; + } + } else { + this.form.summaryTimeStart = getFirstDay(); + this.form.summaryTimeEnd = getLastDay(); + } + + let params = JSON.parse(JSON.stringify(this.form)); //涓嶆洿鏀瑰師濮嬫暟鎹� + let data = this.decode(params); + data.size = -1; + this.$post("/attendance/stat/summary", data).then((res) => { + if (res.code == 1) { + this.$message.success(res.msg); + } else { + this.$message.error(res.msg); + } + }); + }, remoteMethod(query, searchType) { if (query == "") { console.log("鏌ヨ鍙傛暟涓虹┖锛�"); @@ -403,6 +460,7 @@ export default { // groupList: [], }, remoteOptions: {}, + visible: false, }; }, }; diff --git a/attendance-performance-manager-ui/admin/src/views/attendance/class/dialogshow.vue b/attendance-performance-manager-ui/admin/src/views/attendance/class/dialogshow.vue index 51b9f4c6c510787f7ee1c9b5519da4428d2bb08c..9cfb8dba0905cda1fe2cd6689f6c9cad29dcea6e 100644 --- a/attendance-performance-manager-ui/admin/src/views/attendance/class/dialogshow.vue +++ b/attendance-performance-manager-ui/admin/src/views/attendance/class/dialogshow.vue @@ -51,7 +51,7 @@ </el-time-picker> </div> <div> - <span>鎵撳紑鏃舵锛� </span> + <span>鎵撳崱鏃舵锛� </span> <span>涓婄彮鍓嶇鍒�</span> <el-time-picker size="mini" @@ -90,7 +90,7 @@ </el-time-picker> </div> <div> - <span>鎵撳紑鏃舵锛�</span> + <span>鎵撳崱鏃舵锛�</span> <span>涓嬬彮鍓嶇閫€</span> <el-time-picker size="mini" diff --git a/attendance-performance-manager-ui/admin/src/views/attendance/stat/list.vue b/attendance-performance-manager-ui/admin/src/views/attendance/stat/list.vue index 2bdf6c36b3a592e89681f99898eb1f30388406fb..fd79a9d3c6ec773a2b5b7ceca89648d318ceb427 100644 --- a/attendance-performance-manager-ui/admin/src/views/attendance/stat/list.vue +++ b/attendance-performance-manager-ui/admin/src/views/attendance/stat/list.vue @@ -28,14 +28,14 @@ @click="setdialog" >琛ㄦ牸璁剧疆</el-button > - <el-button + <!-- <el-button slot="table-head-left2" style="margin-left: 10px" icon="el-icon-tickets" size="mini" @click="restTable" >閲嶆柊姹囨€�</el-button - > + > --> </LayoutTable> <dialog-show ref="dialogform" @ok="getData" /> <!-- 琛ㄦ牸璁剧疆 --> @@ -47,13 +47,14 @@ <el-checkbox v-for="(item, index) in setcolum" :key="index" - :label="item.label" + :label="item.prop" > + {{ item.label }} </el-checkbox> </el-checkbox-group> <div class="mt20" style="text-align:right"> - <el-button>鍙栨秷</el-button> - <el-button type="primary">纭畾</el-button> + <el-button @click="handleCancel">鍙栨秷</el-button> + <el-button type="primary" @click="handleSubmit">纭畾</el-button> </div> </el-dialog> <!-- 瀵煎嚭璁板綍鏌ョ湅 --> @@ -100,6 +101,16 @@ export default { this.initalArr = this.config.columns; }, methods: { + // 琛ㄦ牸璁剧疆寮圭獥鍙栨秷鎿嶄綔 + handleCancel() { + this.checkList = []; + this.isdialog = false; + }, + // 琛ㄦ牸璁剧疆鎻愪氦鎿嶄綔 + handleSubmit() { + this.doExport(); + this.isdialog = false; + }, // 澶勭悊 handleArr(arr, currentTime) { console.log(currentTime); @@ -172,6 +183,10 @@ export default { this.setcolum = this.config.columns.filter( (item) => item.label && item.prop ); + this.setcolum = this.setcolum.filter( + (val) => val.prop !== "attendanceStaffStatEntities" + ); + console.log(this.setcolum); }, lookexportHis() { this.drawerhistory = true; @@ -188,6 +203,9 @@ export default { if (this.selection.length > 0) { params["idList"] = this.selection; } + if (this.checkList.length > 0) { + params["properties"] = this.checkList; + } this.$download( "/attendance/stat/exportExcelExt", { @@ -195,7 +213,10 @@ export default { }, { type: "excel" } ) - .then(() => (this.isExport = false)) + .then(() => { + this.isExport = false; + this.checkList = []; + }) .catch((error) => { this.isExport = false; this.$message.error(error.message); diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/check/web/CheckAllRecordController.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/check/web/CheckAllRecordController.java index eb088f8b5a2a76ba6d65065e6995d55dc3a7196f..2140e637319e9ed5a3a062b5146e5d610d5b2ff4 100644 --- a/attendance-performance-manager/src/main/java/com/mortals/xhx/module/check/web/CheckAllRecordController.java +++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/module/check/web/CheckAllRecordController.java @@ -138,21 +138,26 @@ public class CheckAllRecordController extends BaseJsonBodyController { CheckAllScoreSummaryVo current = checkAllRecordService.getScoreSummary(query); NumberFormat numberFormat = NumberFormat.getPercentInstance(); numberFormat.setMaximumFractionDigits(2); + BigDecimal zero = new BigDecimal(0); if (current != null) { model.put("initScore", current.getInitScore()); model.put("checkScore", current.getCheckScore()); model.put("appealScore", current.getAppealScore()); model.put("total", current.getTotal()); - BigDecimal checkPercent = current.getCheckScore().divide(current.getInitScore(), 6, BigDecimal.ROUND_HALF_UP); - model.put("checkPercent", numberFormat.format(checkPercent)); - BigDecimal appealPercent = current.getAppealScore().divide(current.getInitScore(), 6, BigDecimal.ROUND_HALF_UP); - model.put("appealPercent", numberFormat.format(appealPercent)); + if(current.getInitScore().compareTo(zero)>0) { + BigDecimal checkPercent = current.getCheckScore().divide(current.getInitScore(), 6, BigDecimal.ROUND_HALF_UP); + model.put("checkPercent", numberFormat.format(checkPercent)); + BigDecimal appealPercent = current.getAppealScore().divide(current.getInitScore(), 6, BigDecimal.ROUND_HALF_UP); + model.put("appealPercent", numberFormat.format(appealPercent)); + } CheckAllScoreSummaryVo last = checkAllRecordService.getScoreSummary(lastQuery); if (last != null) { - BigDecimal huanbi = current.getTotal().subtract(last.getTotal()); - huanbi = huanbi.divide(last.getTotal(), 6, BigDecimal.ROUND_HALF_UP); - model.put("huanbi", numberFormat.format(huanbi)); + if(last.getTotal().compareTo(zero)>0) { + BigDecimal huanbi = current.getTotal().subtract(last.getTotal()); + huanbi = huanbi.divide(last.getTotal(), 6, BigDecimal.ROUND_HALF_UP); + model.put("huanbi", numberFormat.format(huanbi)); + } } if (query.getSummaryType() == SummaryTopTypeEnum.骞�.getValue()) { if (last != null) { @@ -174,9 +179,11 @@ public class CheckAllRecordController extends BaseJsonBodyController { } CheckAllScoreSummaryVo tb = checkAllRecordService.getScoreSummary(lastQuery); if (tb != null) { - BigDecimal tongbi = current.getTotal().subtract(tb.getTotal()); - tongbi = tongbi.divide(last.getTotal(), 6, BigDecimal.ROUND_HALF_UP); - model.put("tongbi", numberFormat.format(tongbi)); + if(last.getTotal().compareTo(zero)>0) { + BigDecimal tongbi = current.getTotal().subtract(tb.getTotal()); + tongbi = tongbi.divide(last.getTotal(), 6, BigDecimal.ROUND_HALF_UP); + model.put("tongbi", numberFormat.format(tongbi)); + } } } }