Commit 22fa3169 authored by 赵啸非's avatar 赵啸非

Merge remote-tracking branch 'origin/master'

parents fcdf531d a1c3e20c
...@@ -37,6 +37,7 @@ const router = new Router({ ...@@ -37,6 +37,7 @@ const router = new Router({
...restBuilder("user", "system/user"), // 用户管理 -- 管理用户 ...restBuilder("user", "system/user"), // 用户管理 -- 管理用户
...restBuilder("param", "system/param"), // 系统管理--参数管理 ...restBuilder("param", "system/param"), // 系统管理--参数管理
...restBuilder("task", "system/task"), // 系统管理--任务管理 ...restBuilder("task", "system/task"), // 系统管理--任务管理
...restBuilder("parameter", "parameter"), // 系统管理--任务管理
// 绩效负责人 // 绩效负责人
...restBuilder("workman", "workman"), ...restBuilder("workman", "workman"),
...restBuilder("holiday", "holiday"), ...restBuilder("holiday", "holiday"),
......
...@@ -41,7 +41,15 @@ ...@@ -41,7 +41,15 @@
<div class="text_line"> <div class="text_line">
<div class="text_box"> <div class="text_box">
<span style="width: 120px;">加分申报:</span> <span style="width: 120px;">加分申报:</span>
<span>{{ form.bonusReport ? form.bonusReport : "--" }}</span> <span v-if="form.bonusarrText">
<span
style="width: auto;"
v-for="val in form.bonusarrText"
:key="val.id"
>{{ val.content }}</span
>
</span>
<span v-else>--</span>
</div> </div>
</div> </div>
<div class="text_line"> <div class="text_line">
...@@ -62,7 +70,15 @@ ...@@ -62,7 +70,15 @@
<div class="text_line"> <div class="text_line">
<div class="text_box"> <div class="text_box">
<span style="width: 140px;">扣分情况:</span> <span style="width: 140px;">扣分情况:</span>
<span>{{ form.deductStatement ? form.deductStatement : "--" }}</span> <span v-if="form.deductarrText">
<span
style="width: auto;"
v-for="val in form.deductarrText"
:key="val.id"
>{{ val.content }}</span
>
</span>
<span v-else>--</span>
</div> </div>
</div> </div>
<div class="text_line"> <div class="text_line">
...@@ -133,7 +149,7 @@ ...@@ -133,7 +149,7 @@
style="display: flex; justify-content: space-between;" style="display: flex; justify-content: space-between;"
> >
<span class="left"> <span class="left">
{{ form.manageCheckResult }} {{ dict.manageCheckResult[form.manageCheckResult] }}
</span> </span>
<span class="right"> <span class="right">
{{ form.manageCheckPerson }} {{ form.manageCheckPerson }}
...@@ -144,7 +160,7 @@ ...@@ -144,7 +160,7 @@
<el-radio <el-radio
v-for="(val, i) in dict.manageCheckResult" v-for="(val, i) in dict.manageCheckResult"
:key="i" :key="i"
:label="val" :label="i"
>{{ val }}</el-radio >{{ val }}</el-radio
> >
</el-radio-group> </el-radio-group>
...@@ -163,7 +179,7 @@ ...@@ -163,7 +179,7 @@
style="display: flex; justify-content: space-between;" style="display: flex; justify-content: space-between;"
> >
<span class="left"> <span class="left">
{{ form.leaderCheckResult }} {{ dict.leaderCheckResult[form.leaderCheckResult] }}
</span> </span>
<span class="right"> <span class="right">
{{ form.leaderCheckPerson }} {{ form.leaderCheckPerson }}
...@@ -174,7 +190,7 @@ ...@@ -174,7 +190,7 @@
<el-radio <el-radio
v-for="(val, i) in dict.leaderCheckResult" v-for="(val, i) in dict.leaderCheckResult"
:key="i" :key="i"
:label="val" :label="i"
>{{ val }}</el-radio >{{ val }}</el-radio
> >
</el-radio-group> </el-radio-group>
...@@ -379,7 +395,7 @@ export default { ...@@ -379,7 +395,7 @@ export default {
// 遮罩层 // 遮罩层
loading: true, loading: true,
// 弹出层标题 // 弹出层标题
title: "窗口考核核查", title: "市政务服务大厅窗口考核登记表",
// 是否显示弹出层 // 是否显示弹出层
open: false, open: false,
direction: "rtl", direction: "rtl",
...@@ -434,11 +450,40 @@ export default { ...@@ -434,11 +450,40 @@ export default {
(response) => { (response) => {
if (response.code == 1) { if (response.code == 1) {
this.form = { ...this.form, ...response.data }; this.form = { ...this.form, ...response.data };
this.dict = { ...this.dict, ...response.dict }; this.dict = { ...this.dict, ...response.dict };
this.$post("/perform/rules/list", {
page: 1,
size: -1,
}).then((responsed) => {
if (responsed.code == 1) {
if (this.form.bonusReport && this.form.bonusReport != "[]") {
let bonusArr = [];
bonusArr = JSON.parse(this.form.bonusReport);
let bonusarrText = responsed.data.data.filter((item) =>
bonusArr.includes(item.id)
);
this.form.bonusarrText = bonusarrText;
}
if (
this.form.deductStatement &&
this.form.deductStatement != "[]"
) {
let deductArr = [];
deductArr = JSON.parse(this.form.deductStatement);
let deductarrText = responsed.data.data.filter((item) =>
deductArr.includes(item.id)
);
this.form.deductarrText = deductarrText;
}
this.form.view = "修改";
this.open = true;
}
});
} }
} }
); );
this.tableData = []; this.tableData = [];
this.tableData.push({ this.tableData.push({
discipline: this.form["discipline"] ? this.form["discipline"] : "--", discipline: this.form["discipline"] ? this.form["discipline"] : "--",
...@@ -453,11 +498,9 @@ export default { ...@@ -453,11 +498,9 @@ export default {
: "黑旗窗口" : "黑旗窗口"
: "--", : "--",
}); });
this.form.view = "修改";
this.open = true;
}); });
this.pageInfo.type = "edit"; this.pageInfo.type = "edit";
this.title = "自评绩效核查"; this.title = "市政务服务大厅窗口考核登记表";
}, },
/** 新增 */ /** 新增 */
add(row) { add(row) {
...@@ -506,6 +549,34 @@ export default { ...@@ -506,6 +549,34 @@ export default {
this.form = { ...this.form, ...response.data }; this.form = { ...this.form, ...response.data };
this.dict = { ...this.dict, ...response.dict }; this.dict = { ...this.dict, ...response.dict };
this.$post("/perform/rules/list", {
page: 1,
size: -1,
}).then((responsed) => {
if (responsed.code == 1) {
if (this.form.bonusReport && this.form.bonusReport != "[]") {
let bonusArr = [];
bonusArr = JSON.parse(this.form.bonusReport);
let bonusarrText = responsed.data.data.filter((item) =>
bonusArr.includes(item.id)
);
this.form.bonusarrText = bonusarrText;
}
if (
this.form.deductStatement &&
this.form.deductStatement != "[]"
) {
let deductArr = [];
deductArr = JSON.parse(this.form.deductStatement);
let deductarrText = responsed.data.data.filter((item) =>
deductArr.includes(item.id)
);
this.form.deductarrText = deductarrText;
}
this.form.view = "查看";
this.open = true;
}
});
} }
} }
); );
...@@ -523,11 +594,9 @@ export default { ...@@ -523,11 +594,9 @@ export default {
: "黑旗窗口" : "黑旗窗口"
: "--", : "--",
}); });
this.form.view = "查看";
this.open = true;
}); });
this.pageInfo.type = "view"; this.pageInfo.type = "view";
this.title = "自评绩效核查信息详细"; this.title = "市政务服务大厅窗口考核登记表";
}, },
/**取消按钮 */ /**取消按钮 */
cancel() { cancel() {
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
<div class="content_box"> <div class="content_box">
<div class="text_line"> <div class="text_line">
<div class="text_box"> <div class="text_box">
<span>窗口负责人</span> <span style="width: 160px;">窗门 (单位) 名称</span>
<span>{{ form.ownerName || "--" }}</span> <span>{{ form.ownerName || "--" }}</span>
</div> </div>
<div class="text_box"> <div class="text_box">
...@@ -129,7 +129,7 @@ ...@@ -129,7 +129,7 @@
style="display: flex; justify-content: space-between;" style="display: flex; justify-content: space-between;"
> >
<span class="left"> <span class="left">
{{ form.manageCheckResult }} {{ dict.manageCheckResult[form.manageCheckResult] }}
</span> </span>
<span class="right"> <span class="right">
{{ form.manageCheckPerson }} {{ form.manageCheckPerson }}
...@@ -140,7 +140,7 @@ ...@@ -140,7 +140,7 @@
<el-radio <el-radio
v-for="(val, i) in dict.manageCheckResult" v-for="(val, i) in dict.manageCheckResult"
:key="i" :key="i"
:label="val" :label="i"
>{{ val }}</el-radio >{{ val }}</el-radio
> >
</el-radio-group> </el-radio-group>
...@@ -304,7 +304,7 @@ export default { ...@@ -304,7 +304,7 @@ export default {
// 遮罩层 // 遮罩层
loading: true, loading: true,
// 弹出层标题 // 弹出层标题
title: "窗口人员考核汇总核查", title: "市政务服务大厅窗口工作人员考核汇总表",
// 是否显示弹出层 // 是否显示弹出层
open: false, open: false,
direction: "rtl", direction: "rtl",
...@@ -348,7 +348,7 @@ export default { ...@@ -348,7 +348,7 @@ export default {
this.open = true; this.open = true;
}); });
this.pageInfo.type = "edit"; this.pageInfo.type = "edit";
this.title = "窗口人员自评绩效核查"; this.title = "市政务服务大厅窗口工作人员考核汇总表";
// await this.$get("/check/window/workman/perform/info", { // await this.$get("/check/window/workman/perform/info", {
// id: row.id, // id: row.id,
// }).then((res) => { // }).then((res) => {
...@@ -456,7 +456,7 @@ export default { ...@@ -456,7 +456,7 @@ export default {
); );
}); });
this.pageInfo.type = "view"; this.pageInfo.type = "view";
this.title = "窗口人员自评绩效核查信息详细"; this.title = "市政务服务大厅窗口工作人员考核汇总表";
// this.form = row; // this.form = row;
// this.reset(); // this.reset();
// this.query = { id: row.id }; // this.query = { id: row.id };
......
<template>
<div class="layout">
<div class="page">
<div class="form-box">
<div>
<h2 style="text-align: center;padding-bottom: 40px;">累计权重:<span style="color: red;">100%</span></h2>
<el-form ref="form" :model="form" label-width="80px">
<el-form-item label="自评权重">
<el-input v-model.number="form.selfWeight">
<template slot="append">%</template>
</el-input>
</el-form-item>
<el-form-item label="考勤权重">
<el-input v-model.number="form.attendWeight">
<template slot="append">%</template>
</el-input>
</el-form-item>
<el-form-item label="效能权重">
<el-input v-model.number="form.effectWeight">
<template slot="append">%</template>
</el-input>
</el-form-item>
<el-form-item label="办件权重">
<el-input v-model.number="form.goworkWeight">
<template slot="append">%</template>
</el-input>
</el-form-item>
<el-form-item label="评价权重">
<el-input v-model.number="form.reviewWeight">
<template slot="append">%</template>
</el-input>
</el-form-item>
<el-form-item style="text-align: center;">
<el-button type="primary" @click="onSubmit">立即保存</el-button>
</el-form-item>
</el-form>
</div>
</div>
</div>
</div>
</template>
<style lang="less" scoped>
.form-box{
width: 700px;
margin: 0 auto;
padding-top: 10vh;
&>div{
background-color: rgba(246, 246, 246, 1);
padding: 20px;
}
}
</style>
<script>
export default {
data(){
return {
form:{
selfWeight:0,
attendWeight:0,
effectWeight:0,
goworkWeight:0,
reviewWeight:0,
}
}
},
created() {
this.onView()
},
methods: {
//提交
onSubmit(){
const form = {...this.form}
let num = 0
for (const iterator in form) {
num = form[iterator] + num
}
if(num != 100){
this.$message.error(`权重比例${num}%,请检查是否正确`);
return
}
this.$post("/param/save",{paramKey:'weight',paramValue:JSON.stringify(this.form)}).then(res=>{
const {code,msg} = res
if(code == 1){
this.$message.success('保存成功');
}else{
this.$message.error(msg);
}
})
},
//查询
onView(){
this.$post("/param/key?key=weight").then(res=>{
const {code,data} = res
if(code == 1){
this.form = JSON.parse(data)
}
})
}
},
}
</script>
\ No newline at end of file
...@@ -41,7 +41,15 @@ ...@@ -41,7 +41,15 @@
<div class="text_line"> <div class="text_line">
<div class="text_box"> <div class="text_box">
<span style="width: 140px;">加分申报:</span> <span style="width: 140px;">加分申报:</span>
<span>{{ form.bonusReport ? form.bonusReport : "--" }}</span> <span v-if="form.bonusarrText">
<span
style="width: auto;"
v-for="val in form.bonusarrText"
:key="val.id"
>{{ val.content }}</span
>
</span>
<span v-else>--</span>
</div> </div>
</div> </div>
<div class="text_line"> <div class="text_line">
...@@ -62,7 +70,15 @@ ...@@ -62,7 +70,15 @@
<div class="text_line"> <div class="text_line">
<div class="text_box"> <div class="text_box">
<span style="width: 140px;">扣分情况:</span> <span style="width: 140px;">扣分情况:</span>
<span>{{ form.deductStatement ? form.deductStatement : "--" }}</span> <span v-if="form.deductarrText">
<span
style="width: auto;"
v-for="val in form.deductarrText"
:key="val.id"
>{{ val.content }}</span
>
</span>
<span v-else>--</span>
</div> </div>
</div> </div>
<div class="text_line"> <div class="text_line">
...@@ -133,7 +149,7 @@ ...@@ -133,7 +149,7 @@
style="display: flex; justify-content: space-between;" style="display: flex; justify-content: space-between;"
> >
<span class="left"> <span class="left">
{{ form.manageCheckResult }} {{ dict.manageCheckResult[form.manageCheckResult] }}
</span> </span>
<span class="right"> <span class="right">
{{ form.manageCheckPerson }} {{ form.manageCheckPerson }}
...@@ -144,7 +160,7 @@ ...@@ -144,7 +160,7 @@
<el-radio <el-radio
v-for="(val, i) in dict.manageCheckResult" v-for="(val, i) in dict.manageCheckResult"
:key="i" :key="i"
:label="val" :label="i"
>{{ val }}</el-radio >{{ val }}</el-radio
> >
</el-radio-group> </el-radio-group>
...@@ -163,7 +179,7 @@ ...@@ -163,7 +179,7 @@
style="display: flex; justify-content: space-between;" style="display: flex; justify-content: space-between;"
> >
<span class="left"> <span class="left">
{{ form.leaderCheckResult }} {{ dict.leaderCheckResult[form.leaderCheckResult] }}
</span> </span>
<span class="right"> <span class="right">
{{ form.leaderCheckPerson }} {{ form.leaderCheckPerson }}
...@@ -174,7 +190,7 @@ ...@@ -174,7 +190,7 @@
<el-radio <el-radio
v-for="(val, i) in dict.leaderCheckResult" v-for="(val, i) in dict.leaderCheckResult"
:key="i" :key="i"
:label="val" :label="i"
>{{ val }}</el-radio >{{ val }}</el-radio
> >
</el-radio-group> </el-radio-group>
...@@ -379,7 +395,7 @@ export default { ...@@ -379,7 +395,7 @@ export default {
// 遮罩层 // 遮罩层
loading: true, loading: true,
// 弹出层标题 // 弹出层标题
title: "窗口考核核查", title: "市政务服务大厅窗口考核登记表",
// 是否显示弹出层 // 是否显示弹出层
open: false, open: false,
direction: "rtl", direction: "rtl",
...@@ -435,9 +451,38 @@ export default { ...@@ -435,9 +451,38 @@ export default {
this.form = { ...this.form, ...response.data }; this.form = { ...this.form, ...response.data };
this.dict = { ...this.dict, ...response.dict }; this.dict = { ...this.dict, ...response.dict };
this.$post("/perform/rules/list", {
page: 1,
size: -1,
}).then((responsed) => {
if (responsed.code == 1) {
if (this.form.bonusReport && this.form.bonusReport != "[]") {
let bonusArr = [];
bonusArr = JSON.parse(this.form.bonusReport);
let bonusarrText = responsed.data.data.filter((item) =>
bonusArr.includes(item.id)
);
this.form.bonusarrText = bonusarrText;
}
if (
this.form.deductStatement &&
this.form.deductStatement != "[]"
) {
let deductArr = [];
deductArr = JSON.parse(this.form.deductStatement);
let deductarrText = responsed.data.data.filter((item) =>
deductArr.includes(item.id)
);
this.form.deductarrText = deductarrText;
}
this.form.view = "修改";
this.open = true;
}
});
} }
} }
); );
this.tableData = []; this.tableData = [];
this.tableData.push({ this.tableData.push({
discipline: this.form["discipline"] ? this.form["discipline"] : "--", discipline: this.form["discipline"] ? this.form["discipline"] : "--",
...@@ -452,11 +497,9 @@ export default { ...@@ -452,11 +497,9 @@ export default {
: "黑旗窗口" : "黑旗窗口"
: "--", : "--",
}); });
this.form.view = "修改";
this.open = true;
}); });
this.pageInfo.type = "edit"; this.pageInfo.type = "edit";
this.title = "自评绩效核查"; this.title = "市政务服务大厅窗口考核登记表";
}, },
/** 新增 */ /** 新增 */
add(row) { add(row) {
...@@ -464,7 +507,7 @@ export default { ...@@ -464,7 +507,7 @@ export default {
this.urls.currUrl = "check/window/perform/add"; this.urls.currUrl = "check/window/perform/add";
this.getData(); this.getData();
this.pageInfo.type = "add"; this.pageInfo.type = "add";
this.title = "新增窗口考核核查"; this.title = "市政务服务大厅窗口考核登记表";
}, },
/** 查看*/ /** 查看*/
async view(row) { async view(row) {
...@@ -505,9 +548,42 @@ export default { ...@@ -505,9 +548,42 @@ export default {
this.form = { ...this.form, ...response.data }; this.form = { ...this.form, ...response.data };
this.dict = { ...this.dict, ...response.dict }; this.dict = { ...this.dict, ...response.dict };
this.$post("/perform/rules/list", {
page: 1,
size: -1,
}).then((responsed) => {
if (responsed.code == 1) {
if (this.form.bonusReport && this.form.bonusReport != "[]") {
let bonusArr = [];
bonusArr = JSON.parse(this.form.bonusReport);
let bonusarrText = responsed.data.data.filter((item) =>
bonusArr.includes(item.id)
);
this.form.bonusarrText = bonusarrText;
}
if (
this.form.deductStatement &&
this.form.deductStatement != "[]"
) {
let deductArr = [];
deductArr = JSON.parse(this.form.deductStatement);
let deductarrText = responsed.data.data.filter((item) =>
deductArr.includes(item.id)
);
this.form.deductarrText = deductarrText;
}
this.form.view = "查看";
this.open = true;
}
});
} }
} }
); );
// this.$get("/perform/rules/list").then((response) => {
// if (response.code == 1) {
// console.log(response);
// }
// });
this.tableData = []; this.tableData = [];
this.tableData.push({ this.tableData.push({
discipline: this.form["discipline"] ? this.form["discipline"] : "--", discipline: this.form["discipline"] ? this.form["discipline"] : "--",
...@@ -522,11 +598,9 @@ export default { ...@@ -522,11 +598,9 @@ export default {
: "黑旗窗口" : "黑旗窗口"
: "--", : "--",
}); });
this.form.view = "查看";
this.open = true;
}); });
this.pageInfo.type = "view"; this.pageInfo.type = "view";
this.title = "自评绩效核查信息详细"; this.title = "市政务服务大厅窗口考核登记表";
}, },
/**取消按钮 */ /**取消按钮 */
cancel() { cancel() {
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
<div class="content_box"> <div class="content_box">
<div class="text_line"> <div class="text_line">
<div class="text_box"> <div class="text_box">
<span>窗口负责人:</span> <span style="width: 160px;">窗门 (单位) 名称:</span>
<span>{{ form.ownerName || "--" }}</span> <span>{{ form.ownerName || "--" }}</span>
</div> </div>
<div class="text_box"> <div class="text_box">
...@@ -129,7 +129,7 @@ ...@@ -129,7 +129,7 @@
style="display: flex; justify-content: space-between;" style="display: flex; justify-content: space-between;"
> >
<span class="left"> <span class="left">
{{ form.manageCheckResult }} {{ dict.manageCheckResult[form.manageCheckResult] }}
</span> </span>
<span class="right"> <span class="right">
{{ form.manageCheckPerson }} {{ form.manageCheckPerson }}
...@@ -140,7 +140,7 @@ ...@@ -140,7 +140,7 @@
<el-radio <el-radio
v-for="(val, i) in dict.manageCheckResult" v-for="(val, i) in dict.manageCheckResult"
:key="i" :key="i"
:label="val" :label="i"
>{{ val }}</el-radio >{{ val }}</el-radio
> >
</el-radio-group> </el-radio-group>
...@@ -346,7 +346,7 @@ export default { ...@@ -346,7 +346,7 @@ export default {
this.open = true; this.open = true;
}); });
this.pageInfo.type = "edit"; this.pageInfo.type = "edit";
this.title = "窗口人员自评绩效核查"; this.title = "市政务服务大厅窗口工作人员考核汇总表";
// await this.$get("/check/window/workman/perform/info", { // await this.$get("/check/window/workman/perform/info", {
// id: row.id, // id: row.id,
// }).then((res) => { // }).then((res) => {
...@@ -417,7 +417,7 @@ export default { ...@@ -417,7 +417,7 @@ export default {
this.urls.currUrl = "check/window/workman/perform/add"; this.urls.currUrl = "check/window/workman/perform/add";
this.getData(); this.getData();
this.pageInfo.type = "add"; this.pageInfo.type = "add";
this.title = "新增窗口人员考核汇总核查"; this.title = "市政务服务大厅窗口工作人员考核汇总表";
}, },
/** 查看*/ /** 查看*/
async view(row) { async view(row) {
...@@ -492,7 +492,7 @@ export default { ...@@ -492,7 +492,7 @@ export default {
this.open = true; this.open = true;
}); });
this.pageInfo.type = "view"; this.pageInfo.type = "view";
this.title = "窗口人员自评绩效核查信息详细"; this.title = "市政务服务大厅窗口工作人员考核汇总表";
}, },
/**取消按钮 */ /**取消按钮 */
cancel() { cancel() {
......
...@@ -2,6 +2,9 @@ package com.mortals.xhx.module.check.dao; ...@@ -2,6 +2,9 @@ package com.mortals.xhx.module.check.dao;
import com.mortals.framework.dao.ICRUDDao; import com.mortals.framework.dao.ICRUDDao;
import com.mortals.xhx.module.check.model.CheckWindowWorkmanPerformEntity; import com.mortals.xhx.module.check.model.CheckWindowWorkmanPerformEntity;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo;
import java.util.List; import java.util.List;
/** /**
* 窗口人员考核汇总核查Dao * 窗口人员考核汇总核查Dao
...@@ -13,5 +16,10 @@ import java.util.List; ...@@ -13,5 +16,10 @@ import java.util.List;
public interface CheckWindowWorkmanPerformDao extends ICRUDDao<CheckWindowWorkmanPerformEntity,Long>{ public interface CheckWindowWorkmanPerformDao extends ICRUDDao<CheckWindowWorkmanPerformEntity,Long>{
/**
* 汇总已审核的核查记录
* @param query
* @return
*/
List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query);
} }
package com.mortals.xhx.module.check.dao.ibatis; package com.mortals.xhx.module.check.dao.ibatis;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.check.dao.CheckWindowWorkmanPerformDao; import com.mortals.xhx.module.check.dao.CheckWindowWorkmanPerformDao;
import com.mortals.xhx.module.check.model.CheckWindowWorkmanPerformEntity; import com.mortals.xhx.module.check.model.CheckWindowWorkmanPerformEntity;
...@@ -17,5 +19,8 @@ import java.util.List; ...@@ -17,5 +19,8 @@ import java.util.List;
public class CheckWindowWorkmanPerformDaoImpl extends BaseCRUDDaoMybatis<CheckWindowWorkmanPerformEntity,Long> implements CheckWindowWorkmanPerformDao { public class CheckWindowWorkmanPerformDaoImpl extends BaseCRUDDaoMybatis<CheckWindowWorkmanPerformEntity,Long> implements CheckWindowWorkmanPerformDao {
@Override
public List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) {
return this.getSqlSession().selectList(this.getSqlId("getSummaryCheckList"), query);
}
} }
...@@ -15,4 +15,9 @@ public class StaffCheckSummaryQuery { ...@@ -15,4 +15,9 @@ public class StaffCheckSummaryQuery {
private String checkTimeStart; private String checkTimeStart;
/** 结束 核查时间 */ /** 结束 核查时间 */
private String checkTimeEnd; private String checkTimeEnd;
/** 年 */
private Integer year;
/** 月 */
private Integer month;
private Long recordId;
} }
...@@ -111,7 +111,7 @@ public class CheckOtherRecordServiceImpl extends AbstractCRUDServiceImpl<CheckOt ...@@ -111,7 +111,7 @@ public class CheckOtherRecordServiceImpl extends AbstractCRUDServiceImpl<CheckOt
query.setStaffId(entity.getStaffId()); query.setStaffId(entity.getStaffId());
query.setCheckTimeStart(DateUtils.getStrDate(entity.getCheckTime())); query.setCheckTimeStart(DateUtils.getStrDate(entity.getCheckTime()));
query.setCheckTimeEnd(query.getCheckTimeStart()); query.setCheckTimeEnd(query.getCheckTimeStart());
summaryCheck(query); //summaryCheck(query);
} catch (Exception e) { } catch (Exception e) {
log.error("汇总已审核的核查记录出错", e); log.error("汇总已审核的核查记录出错", e);
} }
...@@ -183,7 +183,7 @@ public class CheckOtherRecordServiceImpl extends AbstractCRUDServiceImpl<CheckOt ...@@ -183,7 +183,7 @@ public class CheckOtherRecordServiceImpl extends AbstractCRUDServiceImpl<CheckOt
sendCheckDingTalk(temp); sendCheckDingTalk(temp);
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery(); StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
query.setStaffId(temp.getStaffId()); query.setStaffId(temp.getStaffId());
summaryCheck(query); //summaryCheck(query);
} catch (Exception e) { } catch (Exception e) {
log.error("汇总已审核的核查记录出错", e); log.error("汇总已审核的核查记录出错", e);
......
package com.mortals.xhx.module.check.service.impl; package com.mortals.xhx.module.check.service.impl;
import com.mortals.framework.service.IUser; import com.mortals.framework.service.IUser;
import com.mortals.framework.util.StringUtils;
import com.mortals.xhx.common.code.CheckStatusEnum; import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.model.CheckWindowPerformEntity; import com.mortals.xhx.module.check.model.CheckWindowPerformEntity;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo;
import com.mortals.xhx.module.dept.model.DeptEntity;
import com.mortals.xhx.module.dept.model.DeptPerformStatEntity;
import com.mortals.xhx.module.dept.model.DeptPerformStatQuery;
import com.mortals.xhx.module.staff.model.StaffPerformStatEntity;
import com.mortals.xhx.module.staff.model.StaffPerformStatQuery;
import com.mortals.xhx.module.staff.model.StaffPerformSummaryEntity;
import com.mortals.xhx.module.staff.model.StaffPerformSummaryQuery;
import com.mortals.xhx.module.staff.service.StaffPerformSummaryService;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl; import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException; import com.mortals.framework.exception.AppException;
...@@ -11,7 +26,11 @@ import com.mortals.xhx.module.check.model.CheckWindowWorkmanPerformEntity; ...@@ -11,7 +26,11 @@ import com.mortals.xhx.module.check.model.CheckWindowWorkmanPerformEntity;
import com.mortals.xhx.module.check.service.CheckWindowWorkmanPerformService; import com.mortals.xhx.module.check.service.CheckWindowWorkmanPerformService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
* CheckWindowWorkmanPerformService * CheckWindowWorkmanPerformService
...@@ -24,6 +43,9 @@ import java.util.Date; ...@@ -24,6 +43,9 @@ import java.util.Date;
@Slf4j @Slf4j
public class CheckWindowWorkmanPerformServiceImpl extends AbstractCRUDServiceImpl<CheckWindowWorkmanPerformDao, CheckWindowWorkmanPerformEntity, Long> implements CheckWindowWorkmanPerformService { public class CheckWindowWorkmanPerformServiceImpl extends AbstractCRUDServiceImpl<CheckWindowWorkmanPerformDao, CheckWindowWorkmanPerformEntity, Long> implements CheckWindowWorkmanPerformService {
@Autowired
private StaffPerformSummaryService staffPerformSummaryService;
@Override @Override
public void examine(CheckWindowWorkmanPerformEntity entity, Context context) throws AppException { public void examine(CheckWindowWorkmanPerformEntity entity, Context context) throws AppException {
if (entity.getId() == null) { if (entity.getId() == null) {
...@@ -43,5 +65,75 @@ public class CheckWindowWorkmanPerformServiceImpl extends AbstractCRUDServiceImp ...@@ -43,5 +65,75 @@ public class CheckWindowWorkmanPerformServiceImpl extends AbstractCRUDServiceImp
entity.setUpdateTime(new Date()); entity.setUpdateTime(new Date());
entity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //处理状态(1.未处理,2.已处理) entity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //处理状态(1.未处理,2.已处理)
dao.update(entity); dao.update(entity);
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
query.setRecordId(temp.getRecordId());
query.setYear(temp.getYear());
query.setMonth(temp.getMonth());
summaryCheck(query);
}
private List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) throws AppException {
List<StaffCheckSummaryVo> summaryVoList = dao.summaryCheck(query);
if (CollectionUtils.isNotEmpty(summaryVoList)) {
for (StaffCheckSummaryVo vo : summaryVoList) {
StaffPerformSummaryEntity staffPerformSummaryEntity = new StaffPerformSummaryEntity();
staffPerformSummaryEntity.initAttrValue();
BeanUtils.copyProperties(vo, staffPerformSummaryEntity, BeanUtil.getNullPropertyNames(vo));
staffPerformSummaryEntity.setOtherScore(vo.getSumScore());
StaffPerformSummaryQuery summaryQuery = new StaffPerformSummaryQuery();
summaryQuery.setStaffId(vo.getStaffId());
summaryQuery.setYear(vo.getYear());
summaryQuery.setMonth(vo.getMonth());
StaffPerformSummaryEntity temp = staffPerformSummaryService.selectOne(summaryQuery);
if (temp != null) {
if (temp.getReviewScore() != null) {
staffPerformSummaryEntity.setReviewScore(temp.getReviewScore());
}
if (temp.getAttendScore() != null) {
staffPerformSummaryEntity.setAttendScore(temp.getAttendScore());
}
if (temp.getGoworkScore() != null) {
staffPerformSummaryEntity.setGoworkScore(temp.getGoworkScore());
}
if (temp.getEffectScore() != null) {
staffPerformSummaryEntity.setEffectScore(temp.getEffectScore());
}
if (temp.getComplainScore() != null) {
staffPerformSummaryEntity.setComplainScore(temp.getComplainScore());
} }
BigDecimal erro = new BigDecimal(0);
erro = erro.add(staffPerformSummaryEntity.getReviewScore());
erro = erro.add(staffPerformSummaryEntity.getAttendScore());
erro = erro.add(staffPerformSummaryEntity.getOtherScore());
erro = erro.add(staffPerformSummaryEntity.getGoworkScore());
erro = erro.add(staffPerformSummaryEntity.getEffectScore());
erro = erro.add(staffPerformSummaryEntity.getComplainScore());
staffPerformSummaryEntity.setErrorScore(erro);
BigDecimal total = new BigDecimal(100);
staffPerformSummaryEntity.setTotalScore(total.add(erro));
staffPerformSummaryEntity.setId(temp.getId());
staffPerformSummaryEntity.setUpdateTime(new Date());
staffPerformSummaryService.update(staffPerformSummaryEntity);
staffPerformSummaryEntity.setId(temp.getId());
staffPerformSummaryEntity.setUpdateTime(new Date());
staffPerformSummaryService.update(staffPerformSummaryEntity);
} else {
staffPerformSummaryEntity.setAttendScore(new BigDecimal(0));
staffPerformSummaryEntity.setReviewScore(new BigDecimal(0));
staffPerformSummaryEntity.setGoworkScore(new BigDecimal(0));
staffPerformSummaryEntity.setEffectScore(new BigDecimal(0));
staffPerformSummaryEntity.setComplainScore(new BigDecimal(0));
staffPerformSummaryEntity.setErrorScore(vo.getSumScore());
BigDecimal total = new BigDecimal(100);
staffPerformSummaryEntity.setTotalScore(total.add(vo.getSumScore()));
staffPerformSummaryEntity.setCreateUserId(1l);
staffPerformSummaryEntity.setCreateTime(new Date());
staffPerformSummaryService.save(staffPerformSummaryEntity);
}
}
}
return summaryVoList;
}
} }
\ No newline at end of file
...@@ -59,7 +59,7 @@ public class WindowWorkmanPerformServiceImpl extends AbstractCRUDServiceImpl<Win ...@@ -59,7 +59,7 @@ public class WindowWorkmanPerformServiceImpl extends AbstractCRUDServiceImpl<Win
@Override @Override
protected void saveBefore(WindowWorkmanPerformEntity entity, Context context) throws AppException { protected void saveBefore(WindowWorkmanPerformEntity entity, Context context) throws AppException {
buildWindowInfo(entity); //buildWindowInfo(entity);
StaffEntity staff = staffService.get(entity.getOwnerId()); StaffEntity staff = staffService.get(entity.getOwnerId());
if(staff!=null){ if(staff!=null){
entity.setDeptId(staff.getDeptId()); entity.setDeptId(staff.getDeptId());
...@@ -67,13 +67,13 @@ public class WindowWorkmanPerformServiceImpl extends AbstractCRUDServiceImpl<Win ...@@ -67,13 +67,13 @@ public class WindowWorkmanPerformServiceImpl extends AbstractCRUDServiceImpl<Win
entity.setSalaId(staff.getSalaId()); entity.setSalaId(staff.getSalaId());
entity.setSalaName(staff.getSalaName()); entity.setSalaName(staff.getSalaName());
} }
if(entity.getWindowId()!=null) { // if(entity.getWindowId()!=null) {
WindowOwnerDetailEntity windowOwnerDetailEntity = windowOwnerDetailService.selectOne(new WindowOwnerDetailQuery().windowId(entity.getWindowId())); // WindowOwnerDetailEntity windowOwnerDetailEntity = windowOwnerDetailService.selectOne(new WindowOwnerDetailQuery().windowId(entity.getWindowId()));
if(windowOwnerDetailEntity!=null){ // if(windowOwnerDetailEntity!=null){
entity.setWindowCode(windowOwnerDetailEntity.getWindowCode()); // entity.setWindowCode(windowOwnerDetailEntity.getWindowCode());
entity.setWindowName(windowOwnerDetailEntity.getWindowName()); // entity.setWindowName(windowOwnerDetailEntity.getWindowName());
} // }
} // }
super.saveBefore(entity, context); super.saveBefore(entity, context);
} }
...@@ -89,7 +89,7 @@ public class WindowWorkmanPerformServiceImpl extends AbstractCRUDServiceImpl<Win ...@@ -89,7 +89,7 @@ public class WindowWorkmanPerformServiceImpl extends AbstractCRUDServiceImpl<Win
@Override @Override
protected void updateBefore(WindowWorkmanPerformEntity entity, Context context) throws AppException { protected void updateBefore(WindowWorkmanPerformEntity entity, Context context) throws AppException {
buildWindowInfo(entity); //buildWindowInfo(entity);
super.updateBefore(entity, context); super.updateBefore(entity, context);
} }
...@@ -144,7 +144,7 @@ public class WindowWorkmanPerformServiceImpl extends AbstractCRUDServiceImpl<Win ...@@ -144,7 +144,7 @@ public class WindowWorkmanPerformServiceImpl extends AbstractCRUDServiceImpl<Win
BeanUtils.copyProperties(entity, perform, BeanUtil.getNullPropertyNames(entity)); BeanUtils.copyProperties(entity, perform, BeanUtil.getNullPropertyNames(entity));
perform.setId(null); perform.setId(null);
perform.setRecordId(entity.getId()); perform.setRecordId(entity.getId());
perform.setWindowName(entity.getWindowName()+"("+entity.getWindowCode()+")"); //perform.setWindowName(entity.getWindowName()+"("+entity.getWindowCode()+")");
perform.setFromName("市政务服务大厅窗口工作人员考核汇总表"); perform.setFromName("市政务服务大厅窗口工作人员考核汇总表");
perform.setSubmitDate(entity.getFillDate()); perform.setSubmitDate(entity.getFillDate());
perform.setUpdateTime(null); perform.setUpdateTime(null);
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.check.dao.ibatis.CheckWindowWorkmanPerformDaoImpl">
<!-- 汇总已审核的核查记录 -->
<select id="getSummaryCheckList" parameterType="com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery" resultType="com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo">
SELECT
p.`year`,p.`month`,d.staffId,d.staffName,s.deptId,s.deptName,sum(d.sumScore) as sumScore
FROM
mortals_xhx_check_window_workman_perform p,
mortals_xhx_window_workman_perform w,
mortals_xhx_window_workman_perform_detail d,
mortals_xhx_staff s
WHERE
p.recordId = w.id
AND d.performId = w.id
AND s.id = d.staffId
AND checkStatus = 2
AND manageCheckResult = 1
<if test="recordId != null and recordId!=''"> AND p.recordId = #{recordId} </if>
<if test="year != null and year!=''"> AND p.`year` = #{year} </if>
<if test="month != null and month!=''"> AND p.`month` = #{month} </if>
GROUP BY p.`year`,p.`month`,d.staffId,d.staffName,s.deptId,s.deptName
</select>
</mapper>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment