Commit e73d4be8 authored by 王启林's avatar 王启林

合并

parents 08b2c6de f906d2fb
...@@ -113,8 +113,6 @@ export default { ...@@ -113,8 +113,6 @@ export default {
}, },
}, },
mounted() { mounted() {
console.log(this.tableData);
console.log(this.loading);
}, },
watch: { watch: {
tableData(val) { tableData(val) {
......
...@@ -22,9 +22,11 @@ ...@@ -22,9 +22,11 @@
<span>&nbsp;</span> <span>&nbsp;</span>
<el-switch <el-switch
v-if="switchBtn" v-if="switchBtn"
v-model="row.check"
@change="$emit('view', row)" @change="$emit('view', row)"
title="核查" title="核查"
v-model="row.check" :active-value="true"
:inactive-value="false"
></el-switch> ></el-switch>
<span>&nbsp;</span> <span>&nbsp;</span>
<el-button <el-button
......
...@@ -7,7 +7,124 @@ ...@@ -7,7 +7,124 @@
:destroy-on-close="true" :destroy-on-close="true"
size="50%" size="50%"
> >
<el-form ref="form" :model="form" :rules="rules" label-width="120px"> <el-form
ref="form"
class="dra_content"
:model="form"
:rules="rules"
label-width="120px"
>
<div class="box">
<div class="title">异常情况</div>
<div class="content">
<el-row>
<el-col :span="8"
>员工:{{ form.staffName ? form.staffName : "--" }}</el-col
>
<el-col :span="8"
>所属部门:{{ form.deptName ? form.deptName : "--" }}</el-col
>
<el-col :span="8"
>窗口编号:{{ form.windowNum ? form.windowNum : "--" }}</el-col
>
</el-row>
<el-row>
<el-col :span="8"
>考勤组:{{
form.attendanceGroupName ? form.attendanceGroupName : "--"
}}</el-col
>
<el-col :span="8"
>异常时间:{{ form.errorTime ? form.errorTime : "--" }}</el-col
>
<el-col :span="8"
>上下班时间:{{
form.goOffTimeStr ? form.goOffTimeStr : "--"
}}</el-col
>
</el-row>
<el-row>
<el-col :span="10"
>实际打卡时间:{{
form.actualAttendTime ? form.actualAttendTime : "--"
}}</el-col
>
<el-col :span="9"
>异常结果:{{ form.errorTime ? form.errorTime : "--" }}</el-col
>
<el-col :span="5"
>扣分方式:{{ form.subMethod ? form.subMethod : "--" }}</el-col
>
</el-row>
<el-row>
<el-col :span="8"
>扣分时间:{{ form.deductTime ? form.deductTime : "--" }}</el-col
>
<el-col :span="8"
>扣分人员:{{
form.deductPerson ? form.deductPerson : "--"
}}</el-col
>
</el-row>
</div>
</div>
<div class="box">
<div class="title">核查情况</div>
<div class="content">
<el-row>
<el-col :span="8"
>核查结果:{{
form.checkResult ? form.checkResult : "--"
}}</el-col
>
<el-col :span="8"
>绩效规则:{{ form.ruleName ? form.ruleName : "--" }}</el-col
>
<el-col :span="8"
>加分/扣除分值:{{ form.score ? form.score : "--" }}</el-col
>
</el-row>
<el-row>
<el-col :span="8"
>说明:{{ form.checkDesc ? form.checkDesc : "--" }}</el-col
>
<el-col :span="8"
>核查人员:{{
form.checkPerson ? form.checkPerson : "--"
}}</el-col
>
<el-col :span="8"
>核查时间:{{ form.checkTime ? form.checkTime : "--" }}</el-col
>
</el-row>
</div>
</div>
<div class="box">
<div class="title">申诉情况</div>
<div class="content">
<el-row>
<el-col :span="24"
>申诉说明:{{
form.appealDesc ? form.appealDesc : "--"
}}</el-col
>
<el-col :span="24"
>申诉时间:{{ form.appealTime ? form.appealTime : "--" }}</el-col
>
<el-col :span="24"
>申诉附件:{{ form.performAttendAppealFilesList ? form.performAttendAppealFilesList : "--" }}</el-col
>
</el-row>
</div>
</div>
<div class="box"></div>
<form-buttons
@submit="submitForm"
v-if="pageInfo.type != 'view'"
noCancelBtn
/>
</el-form>
<!-- <el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row> <el-row>
<Field <Field
label="核查记录Id" label="核查记录Id"
...@@ -270,7 +387,7 @@ ...@@ -270,7 +387,7 @@
v-if="pageInfo.type != 'view'" v-if="pageInfo.type != 'view'"
noCancelBtn noCancelBtn
/> />
</el-form> </el-form> -->
</el-drawer> </el-drawer>
</template> </template>
...@@ -442,3 +559,51 @@ export default { ...@@ -442,3 +559,51 @@ export default {
}, },
}; };
</script> </script>
<style lang="less" scoped>
.dra_content {
width: 100%;
height: 100%;
padding: 20px;
.box {
width: 100%;
height: auto;
background: inherit;
background-color: rgba(242, 246, 252, 1);
border: none;
border-radius: 8px;
-moz-box-shadow: none;
-webkit-box-shadow: none;
box-shadow: none;
padding: 15px 0 0 15px;
.title {
color: #1890ff;
font-size: 16px;
padding-left: 10px;
position: relative;
margin-bottom: 30px;
&::after {
content: "";
display: block;
border-left: 3px solid #1890ff;
left: 0;
top: 0;
bottom: 0;
position: absolute;
}
}
.content {
width: 100%;
padding: 10px;
font-family: "微软雅黑", sans-serif;
font-weight: 400;
font-style: normal;
font-size: 14px;
margin-left: 0 auto;
margin-bottom: 30px;
/deep/.el-row {
margin-bottom: 20px;
}
}
}
}
</style>
<template> <template>
<div class="page"> <div class="page">
<el-tabs v-model="activeName"> <el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="未处理" name="1"> <el-tab-pane label="未处理" name="1">
<LayoutTable :data="tableData" notAdd notDel :config="tableConfig"> <LayoutTable :data="tableData" notAdd notDel :config="tableConfig">
</LayoutTable> </LayoutTable>
...@@ -61,8 +61,25 @@ export default { ...@@ -61,8 +61,25 @@ export default {
BarCharts, BarCharts,
}, },
mixins: [table], mixins: [table],
created() { }, created() {
this.getData();
},
methods: { methods: {
handleClick() {
this.getData();
},
getData() {
this.activeName == 1 || this.activeName == 2
? this.$post("/perform/attend/appeal/list", {
processStatus: this.activeName,
}).then((res) => {
console.log(res);
if (res.code == 1) {
this.tableData = res.data;
}
})
: "";
},
renderTable(tableData) { renderTable(tableData) {
return ( return (
<el-table stripe data={tableData} class="total-table"> <el-table stripe data={tableData} class="total-table">
...@@ -103,18 +120,41 @@ export default { ...@@ -103,18 +120,41 @@ export default {
], ],
config: { config: {
isshowTabPane: false, isshowTabPane: false,
search: [], search: [
{
name: "irregularOtherType",
type: "select",
label: "全部类型",
fuzzy: false,
},
{
name: "deptId",
type: "select",
label: "全部部门",
fuzzy: false,
},
{
name: "date",
type: "date",
label: "请选择日期",
fuzzy: false,
},
{
name: "staffName",
type: "text",
label: "员工姓名搜索",
fuzzy: false,
},
],
columns: [ columns: [
{ type: "selection", width: 60 }, { type: "selection", width: 60 },
{ type: "index", label: "序号", width: 50 }, { type: "index", label: "序号", width: 50 },
{ label: "姓名", prop: "staffName" }, { label: "姓名", prop: "staffName" },
{ label: "窗口工号", prop: "workNum" },
{ label: "所属部门", prop: "deptName" }, { label: "所属部门", prop: "deptName" },
{ label: "违规类型", prop: "ruleName" }, { label: "违规类型", prop: "irregularOtherType" },
{ label: "绩效规则", prop: "ruleName" }, { label: "绩效规则", prop: "ruleName" },
{ label: "扣分方式", prop: "subMethod", formatter: this.formatter }, { label: "扣分方式", prop: "subMethod", formatter: this.formatter },
...@@ -156,11 +196,12 @@ export default { ...@@ -156,11 +196,12 @@ export default {
},*/ },*/
{ {
label: "操作", label: "操作",
width: 240,
formatter: (row) => { formatter: (row) => {
return ( return (
<table-buttons <table-buttons
noAdd noAdd
noDel
noEdit
row={row} row={row}
onEdit={this.toEdit} onEdit={this.toEdit}
onView={this.toView} onView={this.toView}
......
...@@ -66,6 +66,7 @@ ...@@ -66,6 +66,7 @@
notAdd notAdd
notDel notDel
notSearch notSearch
notPagination
:config="tableConfig" :config="tableConfig"
> >
</LayoutTable> </LayoutTable>
...@@ -107,6 +108,7 @@ ...@@ -107,6 +108,7 @@
notAdd notAdd
notDel notDel
notSearch notSearch
notPagination
:config="tableConfig" :config="tableConfig"
> >
</LayoutTable> </LayoutTable>
...@@ -148,6 +150,7 @@ ...@@ -148,6 +150,7 @@
notAdd notAdd
notDel notDel
notSearch notSearch
notPagination
:config="tableConfig" :config="tableConfig"
> >
</LayoutTable> </LayoutTable>
...@@ -189,6 +192,7 @@ ...@@ -189,6 +192,7 @@
notAdd notAdd
notDel notDel
notSearch notSearch
notPagination
:config="tableConfig" :config="tableConfig"
> >
</LayoutTable> </LayoutTable>
...@@ -230,6 +234,7 @@ ...@@ -230,6 +234,7 @@
notAdd notAdd
notDel notDel
notSearch notSearch
notPagination
:config="tableConfig" :config="tableConfig"
> >
</LayoutTable> </LayoutTable>
...@@ -310,7 +315,7 @@ export default { ...@@ -310,7 +315,7 @@ export default {
mixins: [form, table], mixins: [form, table],
components: {}, components: {},
created() { created() {
this.changePath("perform/dept/conf"); this.changePath("perform//staff/conf");
// 获取部门列表 // 获取部门列表
this.$post("/dept/list", { page: 1, size: -1 }).then((res) => { this.$post("/dept/list", { page: 1, size: -1 }).then((res) => {
if (res.code == 1) { if (res.code == 1) {
...@@ -319,6 +324,7 @@ export default { ...@@ -319,6 +324,7 @@ export default {
this.deptArr = []; this.deptArr = [];
} }
}); });
this.checkArr = [];
// this.getKaoQin(); // this.getKaoQin();
}, },
data() { data() {
...@@ -333,30 +339,17 @@ export default { ...@@ -333,30 +339,17 @@ export default {
direction: "rtl", direction: "rtl",
toString: [], toString: [],
toDate: [], toDate: [],
tableData: [ tableData: [],
{
core: "-0.5",
name: "迟到",
simple: "迟到5分钟以内(包含5分钟)",
check: false,
},
],
// 表单校验 // 表单校验
rules: {}, rules: {},
activeName: "1", activeName: "1",
options: [ options: [],
{
value: "1",
label: "工作纪律",
},
{
value: "2",
label: "工作效能",
},
],
type: "", type: "",
keywords: "", keywords: "",
deptArr: [], deptArr: [],
urls: {
saveUrl: "/perform/dept/conf/save",
},
config: { config: {
isshowTabPane: false, isshowTabPane: false,
search: [], search: [],
...@@ -373,36 +366,39 @@ export default { ...@@ -373,36 +366,39 @@ export default {
label: "操作", label: "操作",
width: 100, width: 100,
formatter: (row) => { formatter: (row) => {
return ( if (row.check) {
<table-buttons return <span>不选择</span>;
noAdd } else {
noView return <span style="cursor:pointer">选择</span>;
noEdit }
noDel
switchBtn
row={row}
onEdit={this.eddRules}
onDel={this.toDelRules}
onView={this.switchChange}
/>
);
}, },
}, },
], ],
}, },
cateObj: {}, cateObj: {},
dataArr: [], dataArr: [],
checkArr: [],
}; };
}, },
// watch: {
// query: {
// deep,
// handler(val) {
// console.log(val);
// },
// },
// },
methods: { methods: {
handleRowClick(val) {
val.check = !val.check;
val.check
? this.checkArr.push(val)
: (this.checkArr = this.checkArr.filter((v) => v.id !== val.id));
this.checkArr.length > 0
? this.checkArr.forEach((val) => {
val.ruleId = val.id;
val.ruleName = val.name;
this.tableData.data.forEach((v) => {
val.id == v.id ? (v.check = val.check) : "";
});
})
: "";
this.form.deptConfDetail = this.checkArr;
this.tableData.data = [...this.tableData.data];
this.$forceUpdate(this.tableData.data);
},
typeSelect(val) { typeSelect(val) {
this.getKaoQin(val); this.getKaoQin(val);
}, },
...@@ -423,29 +419,56 @@ export default { ...@@ -423,29 +419,56 @@ export default {
categoryId, categoryId,
type: this.activeName, type: this.activeName,
page: this.query.page, page: this.query.page,
size: -1,
orderColList: this.typeArr, orderColList: this.typeArr,
name: this.searchValue, name: this.searchValue,
}).then((res) => { }).then((res) => {
if (res.code == 1) { if (res.code == 1) {
this.tableData = res.data; this.tableData = res.data;
this.checkArr.length > 0
? this.checkArr.forEach((val) => {
this.tableData.data.forEach((v) => {
val.id == v.id ? (v.check = val.check) : "";
});
})
: this.tableData.data.forEach((v) => {
v.check = false;
});
this.tableData.data = [...this.tableData.data];
this.$forceUpdate(this.tableData); this.$forceUpdate(this.tableData);
} else { } else {
this.tableData = {}; this.tableData = {};
} }
}); });
}, },
switchChange(val) {},
handleClick(val) { handleClick(val) {
this.getData(); this.getData();
this.cateObj = {};
this.type = "";
}, },
/** 编辑 */ /** 编辑 */
edit(row) { edit(row) {
this.reset(); this.reset();
this.query = { id: row.id }; this.query = { id: row.id };
// this.urls.currUrl = "perform/dept/conf/edit"; this.checkArr = [];
this.type = "";
this.activeName = "1";
this.$get("/perform/dept/conf/info", { id: row.id }).then((res) => { this.$get("/perform/dept/conf/info", { id: row.id }).then((res) => {
if (res.code == 1) { if (res.code == 1) {
this.form = res.data; this.form = res.data;
this.checkArr = res.data.deptConfDetail;
res.data.deptConfDetail.length > 0
? res.data.deptConfDetail.forEach((val) => {
val.check = true;
val.id = val.ruleId;
this.tableData.data.forEach((v) => {
v.check = false;
val.ruleId == v.id ? (v.check = true) : "";
});
})
: "";
this.tableData.data = [...this.tableData.data];
this.$forceUpdate(this.tableData);
} else { } else {
this.form = {}; this.form = {};
} }
...@@ -459,14 +482,18 @@ export default { ...@@ -459,14 +482,18 @@ export default {
/** 新增 */ /** 新增 */
add(row) { add(row) {
this.reset(); this.reset();
// this.urls.currUrl = "perform/dept/conf/add";
this.getData(); this.getData();
this.open = true; this.open = true;
this.checkArr = [];
this.type = "";
this.activeName = "1";
this.pageInfo.type = "add"; this.pageInfo.type = "add";
this.title = "新增部门自动考核信息"; this.title = "新增部门自动考核信息";
}, },
/** 查看*/ /** 查看*/
view(row) { view(row) {
console.log(123);
return;
this.reset(); this.reset();
this.query = { id: row.id }; this.query = { id: row.id };
this.urls.currUrl = "perform/dept/conf/view"; this.urls.currUrl = "perform/dept/conf/view";
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
<el-row style="width: 100%;margin-bottom: 10px;"> <el-row style="width: 100%;margin-bottom: 10px;">
<el-col style="width: 100%;margin-left: 20px;" :span="24"> <el-col style="width: 100%;margin-left: 20px;" :span="24">
<span>选择人员:</span> <span>选择人员:</span>
<el-button type="primary" @click="() => (dialog = true)">{{ <el-button type="primary" @click="handleDialog">{{
selectArr && selectArr.length > 0 selectArr && selectArr.length > 0
? `已选择(${selectArr.length})` ? `已选择(${selectArr.length})`
: "点击选择人员" : "点击选择人员"
...@@ -33,12 +33,16 @@ ...@@ -33,12 +33,16 @@
请选择自动考核指标: 请选择自动考核指标:
</div> </div>
<div class="search_box"> <div class="search_box">
<el-select v-model="type" placeholder="请选择分类"> <el-select
v-model="type"
placeholder="请选择分类"
@change="typeSelect"
>
<el-option <el-option
v-for="item in options" v-for="item in dataArr"
:key="item.value" :key="item.id"
:label="item.label" :label="item.name"
:value="item.value" :value="item.id"
style="width: 200px;" style="width: 200px;"
> >
</el-option> </el-option>
...@@ -52,29 +56,15 @@ ...@@ -52,29 +56,15 @@
</div> </div>
</div> </div>
<div class="mid_table"> <div class="mid_table">
<el-table :data="tableData" border style="width: 100%"> <LayoutTable
<el-table-column type="index" label="序号" width="50"> :data="tableData"
</el-table-column> notAdd
<el-table-column notDel
prop="name" notSearch
label="考核内容简称" notPagination
width="180" :config="tableConfig"
>
</el-table-column>
<el-table-column prop="simple" label="评分标准">
</el-table-column>
<el-table-column prop="core" label="扣分分值">
</el-table-column>
<el-table-column fixed="right" label="操作" width="120">
<template slot-scope="scope">
<el-switch
v-model="scope.row.check"
@change="handleChange(scope.row)"
> >
</el-switch> </LayoutTable>
</template>
</el-table-column>
</el-table>
</div> </div>
</div> </div>
</el-tab-pane> </el-tab-pane>
...@@ -85,12 +75,16 @@ ...@@ -85,12 +75,16 @@
请选择自动考核指标: 请选择自动考核指标:
</div> </div>
<div class="search_box"> <div class="search_box">
<el-select v-model="type" placeholder="请选择分类"> <el-select
v-model="type"
placeholder="请选择分类"
@change="typeSelect"
>
<el-option <el-option
v-for="item in options" v-for="item in dataArr"
:key="item.value" :key="item.id"
:label="item.label" :label="item.name"
:value="item.value" :value="item.id"
style="width: 200px;" style="width: 200px;"
> >
</el-option> </el-option>
...@@ -104,29 +98,15 @@ ...@@ -104,29 +98,15 @@
</div> </div>
</div> </div>
<div class="mid_table"> <div class="mid_table">
<el-table :data="tableData" border style="width: 100%"> <LayoutTable
<el-table-column type="index" label="序号" width="50"> :data="tableData"
</el-table-column> notAdd
<el-table-column notDel
prop="name" notSearch
label="考核内容简称" notPagination
width="180" :config="tableConfig"
> >
</el-table-column> </LayoutTable>
<el-table-column prop="simple" label="评分标准">
</el-table-column>
<el-table-column prop="core" label="扣分分值">
</el-table-column>
<el-table-column fixed="right" label="操作" width="120">
<template slot-scope="scope">
<el-switch
v-model="scope.row.check"
@change="handleChange(scope.row)"
>
</el-switch>
</template>
</el-table-column>
</el-table>
</div> </div>
</div> </div>
</el-tab-pane> </el-tab-pane>
...@@ -137,12 +117,16 @@ ...@@ -137,12 +117,16 @@
请选择自动考核指标: 请选择自动考核指标:
</div> </div>
<div class="search_box"> <div class="search_box">
<el-select v-model="type" placeholder="请选择分类"> <el-select
v-model="type"
placeholder="请选择分类"
@change="typeSelect"
>
<el-option <el-option
v-for="item in options" v-for="item in dataArr"
:key="item.value" :key="item.id"
:label="item.label" :label="item.name"
:value="item.value" :value="item.id"
style="width: 200px;" style="width: 200px;"
> >
</el-option> </el-option>
...@@ -156,29 +140,15 @@ ...@@ -156,29 +140,15 @@
</div> </div>
</div> </div>
<div class="mid_table"> <div class="mid_table">
<el-table :data="tableData" border style="width: 100%"> <LayoutTable
<el-table-column type="index" label="序号" width="50"> :data="tableData"
</el-table-column> notAdd
<el-table-column notDel
prop="name" notSearch
label="考核内容简称" notPagination
width="180" :config="tableConfig"
>
</el-table-column>
<el-table-column prop="simple" label="评分标准">
</el-table-column>
<el-table-column prop="core" label="扣分分值">
</el-table-column>
<el-table-column fixed="right" label="操作" width="120">
<template slot-scope="scope">
<el-switch
v-model="scope.row.check"
@change="handleChange(scope.row)"
> >
</el-switch> </LayoutTable>
</template>
</el-table-column>
</el-table>
</div> </div>
</div> </div>
</el-tab-pane> </el-tab-pane>
...@@ -189,12 +159,16 @@ ...@@ -189,12 +159,16 @@
请选择自动考核指标: 请选择自动考核指标:
</div> </div>
<div class="search_box"> <div class="search_box">
<el-select v-model="type" placeholder="请选择分类"> <el-select
v-model="type"
placeholder="请选择分类"
@change="typeSelect"
>
<el-option <el-option
v-for="item in options" v-for="item in dataArr"
:key="item.value" :key="item.id"
:label="item.label" :label="item.name"
:value="item.value" :value="item.id"
style="width: 200px;" style="width: 200px;"
> >
</el-option> </el-option>
...@@ -208,29 +182,57 @@ ...@@ -208,29 +182,57 @@
</div> </div>
</div> </div>
<div class="mid_table"> <div class="mid_table">
<el-table :data="tableData" border style="width: 100%"> <LayoutTable
<el-table-column type="index" label="序号" width="50"> :data="tableData"
</el-table-column> notAdd
<el-table-column notDel
prop="name" notSearch
label="考核内容简称" notPagination
width="180" :config="tableConfig"
>
</LayoutTable>
</div>
</div>
</el-tab-pane>
<el-tab-pane label="其他绩效指标" name="5">
<div class="content">
<div class="top">
<div>
请选择自动考核指标:
</div>
<div class="search_box">
<el-select
v-model="type"
placeholder="请选择分类"
@change="typeSelect"
>
<el-option
v-for="item in dataArr"
:key="item.id"
:label="item.name"
:value="item.id"
style="width: 200px;"
> >
</el-table-column> </el-option>
<el-table-column prop="simple" label="评分标准"> </el-select>
</el-table-column> <el-input
<el-table-column prop="core" label="扣分分值"> v-model="keywords"
</el-table-column> placeholder="请输入评分标准关键字搜索"
<el-table-column fixed="right" label="操作" width="120"> style="width: 200px;margin: 0 10px;"
<template slot-scope="scope"> ></el-input>
<el-switch <el-button type="primary"> 搜索 </el-button>
v-model="scope.row.check" </div>
@change="handleChange(scope.row)" </div>
<div class="mid_table">
<LayoutTable
:data="tableData"
notAdd
notDel
notSearch
notPagination
:config="tableConfig"
> >
</el-switch> </LayoutTable>
</template>
</el-table-column>
</el-table>
</div> </div>
</div> </div>
</el-tab-pane> </el-tab-pane>
...@@ -310,7 +312,8 @@ ...@@ -310,7 +312,8 @@
:data="treeData" :data="treeData"
:props="defaultProps" :props="defaultProps"
show-checkbox show-checkbox
node-key="label" style="height: 240px; overflow-y: auto;"
node-key="name"
@check="handleCheckChange" @check="handleCheckChange"
ref="tree" ref="tree"
></el-tree> ></el-tree>
...@@ -322,12 +325,12 @@ ...@@ -322,12 +325,12 @@
<div class="select_content"> <div class="select_content">
<el-tag <el-tag
v-for="tag in selectArr" v-for="tag in selectArr"
:key="tag.label" :key="tag.id"
closable closable
@close="hanleTagClose(tag)" @close="hanleTagClose(tag)"
style="margin-right: 10px;" style="margin-right: 10px;margin-bottom: 10px;"
> >
{{ tag.label }} {{ tag.name }}
</el-tag> </el-tag>
</div> </div>
</div> </div>
...@@ -342,12 +345,22 @@ ...@@ -342,12 +345,22 @@
<script> <script>
import form from "@/assets/mixins/formdialog"; import form from "@/assets/mixins/formdialog";
import table from "@/assets/mixins/table";
export default { export default {
name: "PerformStaffConfDetail", name: "PerformStaffConfDetail",
mixins: [form], mixins: [form, table],
components: {}, components: {},
created() { created() {
this.changePath("perform/staff/conf"); this.changePath("perform/staff/conf");
// 获取工作人员列表
this.$post("/staff/list", { page: 1, size: -1 }).then((res) => {
if (res.code == 1) {
this.treeData = res.data.data;
} else {
this.treeData = [];
}
});
}, },
data() { data() {
return { return {
...@@ -362,103 +375,177 @@ export default { ...@@ -362,103 +375,177 @@ export default {
toString: [], toString: [],
toDate: [], toDate: [],
selectArr: [], selectArr: [],
tableData: [ tableData: [],
{
core: "-0.5",
name: "迟到",
simple: "迟到5分钟以内(包含5分钟)",
check: false,
},
],
// 表单校验 // 表单校验
rules: {}, rules: {},
activeName: "1", activeName: "1",
options: [ options: [],
{
value: "1",
label: "工作纪律",
},
{
value: "2",
label: "工作效能",
},
],
type: "", type: "",
keywords: "", keywords: "",
treeData: [ treeData: [],
{ defaultProps: {
label: "市民中心", children: "children",
children: [ label: "name",
{
label: "部门1",
children: [
{
label: "人员1",
},
{
label: "人员2",
},
{
label: "人员3",
},
],
}, },
{ urls: {
label: "部门2", saveUrl: "/perform/staff/conf/save",
children: [
{
label: "人员4",
}, },
config: {
isshowTabPane: false,
search: [],
columns: [
{ type: "index", label: "序号", width: 50 },
{ label: "考核内容简称", prop: "name" },
{ label: "评分标准", prop: "content" },
{ label: "分值", prop: "score" },
{ {
label: "人员5", label: "操作",
width: 100,
formatter: (row) => {
if (row.check) {
return <span>不选择</span>;
} else {
return <span style="cursor:pointer">选择</span>;
}
}, },
{
label: "人员6",
}, },
], ],
}, },
{ cateObj: {},
label: "部门3", dataArr: [],
children: [ checkArr: [],
{ };
label: "人员7",
label: "人员8",
label: "人员9",
label: "人员10",
}, },
],
methods: {
handleDialog() {
this.dialog = true;
this.$nextTick(() => {
this.$refs.tree.setCheckedNodes(this.selectArr);
});
}, },
], handleRowClick(val) {
val.check = !val.check;
val.check
? this.checkArr.push(val)
: (this.checkArr = this.checkArr.filter((v) => v.id !== val.id));
this.checkArr.length > 0
? this.checkArr.forEach((val) => {
val.ruleId = val.id;
val.ruleName = val.name;
this.tableData.data.forEach((v) => {
val.id == v.id ? (v.check = val.check) : "";
});
})
: "";
this.form.staffConfDetail = this.checkArr;
this.tableData.data = [...this.tableData.data];
this.$forceUpdate(this.tableData.data);
}, },
], typeSelect(val) {
defaultProps: { this.getKaoQin(val);
children: "children",
label: "label",
}, },
}; async getData() {
await this.$post("/perform/rules/category/list", {
type: this.activeName,
}).then((res) => {
this.getKaoQin(this.cateObj ? this.cateObj.id : "");
if (res.code == 1) {
this.dataArr = res.data.data;
} else {
this.dataArr = [];
}
});
},
async getKaoQin(categoryId) {
await this.$post("/perform/rules/list", {
categoryId,
type: this.activeName,
page: this.query.page,
size: -1,
orderColList: this.typeArr,
name: this.searchValue,
}).then((res) => {
if (res.code == 1) {
this.tableData = res.data;
this.checkArr.length > 0
? this.checkArr.forEach((val) => {
this.tableData.data.forEach((v) => {
val.id == v.id ? (v.check = val.check) : "";
});
})
: this.tableData.data.forEach((v) => {
v.check = false;
});
this.tableData.data = [...this.tableData.data];
this.$forceUpdate(this.tableData);
} else {
this.tableData = {};
}
});
}, },
methods: {
hanleTagClose(val) { hanleTagClose(val) {
this.selectArr = this.selectArr.filter((v) => v.label !== val.label); this.selectArr = this.selectArr.filter((v) => v.name != val.name);
this.$refs.tree.setCheckedNodes(this.selectArr); this.$refs.tree.setCheckedNodes(this.selectArr);
this.form.staffIds = this.selectArr.map((v) => v.id).join(",");
}, },
handleCheckChange(checkedNodes, checkedKeys) { handleCheckChange(checkedNodes, checkedKeys) {
console.log(checkedNodes); // checkedKeys.checkedNodes.forEach((v) => {
console.log(checkedKeys); // v.children ? "" : (this.selectArr = [...this.selectArr, v]);
checkedKeys.checkedNodes.forEach((v) => { // });
v.children ? "" : (this.selectArr = [...this.selectArr, v]); this.selectArr = checkedKeys.checkedNodes;
}); this.form.staffIds = this.selectArr.map((v) => v.id).join(",");
}, },
handleChange(val) { handleChange(val) {
console.log(val); console.log(val);
}, },
handleClick() {}, handleClick(val) {
this.getData();
this.cateObj = {};
this.type = "";
},
/** 编辑 */ /** 编辑 */
edit(row) { edit(row) {
this.reset(); this.reset();
this.query = { id: row.id }; this.query = { id: row.id };
this.urls.currUrl = "perform/staff/conf/edit"; // this.urls.currUrl = "perform/staff/conf/edit";
this.checkArr = [];
this.selectArr = [];
this.type = "";
this.activeName = "1";
this.$get("/perform/staff/conf/info", { id: row.id }).then((res) => {
if (res.code == 1) {
this.form = res.data;
console.log(this.treeData);
let arr = res.data.staffIds.split(",");
this.selectArr = [];
arr.forEach((v) => {
this.treeData.forEach((val) => {
v == val.id ? this.selectArr.push(val) : "";
});
});
this.checkArr = res.data.staffConfDetail;
res.data.staffConfDetail.length > 0
? res.data.staffConfDetail.forEach((val) => {
val.check = true;
val.id = val.ruleId;
this.tableData.data.forEach((v) => {
v.check = false;
val.ruleId == v.id ? (v.check = true) : "";
});
})
: "";
this.tableData.data = [...this.tableData.data];
this.$forceUpdate(this.tableData);
} else {
this.form = {};
}
this.open = true;
});
this.getData(); this.getData();
this.pageInfo.type = "edit"; this.pageInfo.type = "edit";
this.title = "修改人员自动考核信息"; this.title = "修改人员自动考核信息";
...@@ -466,8 +553,13 @@ export default { ...@@ -466,8 +553,13 @@ export default {
/** 新增 */ /** 新增 */
add(row) { add(row) {
this.reset(); this.reset();
this.urls.currUrl = "perform/staff/conf/add"; // this.urls.currUrl = "perform/staff/conf/add";
this.checkArr = [];
this.selectArr = [];
this.type = "";
this.activeName = "1";
this.getData(); this.getData();
this.open = true;
this.pageInfo.type = "add"; this.pageInfo.type = "add";
this.title = "新增人员自动考核信息"; this.title = "新增人员自动考核信息";
}, },
...@@ -519,15 +611,18 @@ export default { ...@@ -519,15 +611,18 @@ export default {
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.form_content { .form_content {
overflow-x: hidden;
/deep/.el-col-12 { /deep/.el-col-12 {
width: 98% !important; width: 98% !important;
} }
.content { .content {
width: 100%; width: 100%;
height: 500px; height: 720px;
border: 1px solid #e4e7ed; border: 1px solid #e4e7ed;
border-top: 0; border-top: 0;
padding: 20px; padding: 20px;
overflow-x: hidden;
.top { .top {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
<div class="goal_title"> <div class="goal_title">
<img src="../../../../assets/images/u17641.svg" alt="" /> <img src="../../../../assets/images/u17641.svg" alt="" />
<span> <span>
{{ val.deptName ? val.deptName : "--" }} {{ val.deptName ? val.deptName : val.staffNames }}
</span> </span>
</div> </div>
<p class="goal_txt"> <p class="goal_txt">
...@@ -25,19 +25,19 @@ ...@@ -25,19 +25,19 @@
</p> </p>
<p> <p>
<el-tag style="margin: 0 5px 5px 0" <el-tag style="margin: 0 5px 5px 0"
>考勤绩效指标/工作纪律{{ val.attendCount }}</el-tag >考勤绩效指标:{{ val.attendCount }}</el-tag
> >
<el-tag style="margin: 0 5px 5px 0" <el-tag style="margin: 0 5px 5px 0"
>评价绩效指标/工作纪律{{ val.assessCount }}</el-tag >评价绩效指标:{{ val.assessCount }}</el-tag
> >
<el-tag style="margin: 0 5px 5px 0" <el-tag style="margin: 0 5px 5px 0"
>办件绩效指标/工作效能{{ val.workCount }}</el-tag >办件绩效指标:{{ val.workCount }}</el-tag
> >
<el-tag style="margin: 0 5px 5px 0" <el-tag style="margin: 0 5px 5px 0"
>效能绩效指标/工作纪律{{ val.effectCount }}</el-tag >效能绩效指标:{{ val.effectCount }}</el-tag
> >
<el-tag style="margin: 0 5px 5px 0" <el-tag style="margin: 0 5px 5px 0"
>其他绩效指标/工作纪律{{ val.otherCount }}</el-tag >其他绩效指标:{{ val.otherCount }}</el-tag
> >
</p> </p>
<p class="goal_txt"> <p class="goal_txt">
...@@ -68,7 +68,7 @@ ...@@ -68,7 +68,7 @@
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="窗口负责人管理" name="2"> <el-tab-pane label="窗口负责人管理" name="2">
<div class="content"> <div class="content">
<LayoutTable :data="tableData" notSearch :config="tableConfig"> <LayoutTable :data="tableData" notSearch notDel :config="tableConfig">
</LayoutTable> </LayoutTable>
</div> </div>
</el-tab-pane> </el-tab-pane>
...@@ -99,7 +99,6 @@ export default { ...@@ -99,7 +99,6 @@ export default {
}, },
mixins: [table], mixins: [table],
created() { created() {
console.log(this.tableData);
sessionStorage.removeItem("type"); sessionStorage.removeItem("type");
sessionStorage.setItem("type", this.type); sessionStorage.setItem("type", this.type);
}, },
...@@ -168,6 +167,13 @@ export default { ...@@ -168,6 +167,13 @@ export default {
}) })
: ""; : "";
}, },
// 窗口负责人删除方法
toDel(row) {
this.$get("/window/owner/delete", { id: row }).then((res) => {
this.$message.success(res.msg);
this.getData();
});
},
}, },
data() { data() {
return { return {
...@@ -182,13 +188,11 @@ export default { ...@@ -182,13 +188,11 @@ export default {
{ type: "selection", width: 60 }, { type: "selection", width: 60 },
{ type: "index", label: "序号", width: 50 }, { type: "index", label: "序号", width: 50 },
{ label: "部门名称", prop: "deptName" }, { label: "负责人姓名", prop: "name" },
{ label: "姓名", prop: "name" },
{ label: "工号", prop: "number" }, { label: "所属部门", prop: "deptName" },
{ label: "电话号码", prop: "phone" }, { label: "联系电话", prop: "phone" },
{ {
label: "负责窗口数量", label: "负责窗口数量",
...@@ -197,10 +201,17 @@ export default { ...@@ -197,10 +201,17 @@ export default {
}, },
{ {
label: "创建时间", label: "更新时间",
prop: "createTime", prop: "updateTime",
formatter: this.formatterDate, formatter: this.formatterDate,
}, },
{
label: "更新人员",
prop: "updateUserId",
formatter: this.formatter,
},
{ {
label: "操作", label: "操作",
width: 240, width: 240,
...@@ -208,6 +219,7 @@ export default { ...@@ -208,6 +219,7 @@ export default {
return ( return (
<table-buttons <table-buttons
noAdd noAdd
noView
row={row} row={row}
onEdit={this.toEdit} onEdit={this.toEdit}
onView={this.toView} onView={this.toView}
...@@ -319,6 +331,9 @@ export default { ...@@ -319,6 +331,9 @@ export default {
margin-right: 10px; margin-right: 10px;
} }
} }
/deep/.el-tag {
width: 114px !important;
}
.goal_txt { .goal_txt {
font-family: "微软雅黑", sans-serif; font-family: "微软雅黑", sans-serif;
font-weight: 400; font-weight: 400;
......
...@@ -23,18 +23,22 @@ ...@@ -23,18 +23,22 @@
<Field <Field
label="联系电话:" label="联系电话:"
prop="phone" prop="phone"
maxLength="11"
v-model="form.phone" v-model="form.phone"
placeholder="请输入联系电话" placeholder="请输入联系电话"
/> />
<el-col style="width: 100%;" :span="24"> <el-col style="width: 100%;" :span="12">
<Field <el-form-item label="选择部门">
label="选择部门:" <el-select v-model="form.deptId" style="width: 100%;">
prop="deptId" <el-option
v-model="form.deptId" v-for="item in deptArr"
placeholder="选择部门" :key="item.id"
:enumData="deptGroup" :label="item.deptName"
type="select" :value="item.id"
/> >
</el-option
></el-select>
</el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
...@@ -42,48 +46,33 @@ ...@@ -42,48 +46,33 @@
<div class="content_top"> <div class="content_top">
<span>请选择窗口工作人员:</span> <span>请选择窗口工作人员:</span>
<div class="search_box"> <div class="search_box">
<el-select v-model="type" placeholder="请选择部门"> <el-select v-model="deptValue" style="width: 100%;">
<el-option <el-option
v-for="item in options" v-for="item in deptArr"
:key="item.value" :key="item.id"
:label="item.label" :label="item.deptName"
:value="item.value" :value="item.id"
style="width: 200px;"
> >
</el-option> </el-option
</el-select> ></el-select>
<el-input <el-input
v-model="keywords" v-model="keywords"
placeholder="请输入姓名关键字搜索" placeholder="请输入姓名关键字搜索"
style="width: 200px;margin: 0 10px;" style="width: 200px;margin: 0 10px;"
></el-input> ></el-input>
<el-button type="primary"> 搜索 </el-button> <el-button type="primary" @click="handleSearch"> 搜索 </el-button>
</div> </div>
</div> </div>
<div class="table_box"> <div class="table_box">
<el-table <LayoutTable
:data="tableData" :data="tableData"
border notAdd
style="width: 100%" notDel
height="520" notSearch
@selection-change="handleSelectionChange" notPagination
:config="tableConfig"
> >
<el-table-column type="selection" width="55"> </el-table-column> </LayoutTable>
<el-table-column type="index" label="序号" width="50">
</el-table-column>
<el-table-column prop="name" label="姓名" width="180">
</el-table-column>
<el-table-column prop="id" label="工号"> </el-table-column>
<el-table-column prop="deptaName" label="部门"> </el-table-column>
<el-table-column prop="zhiwei" label="职位"> </el-table-column>
<el-table-column prop="status" label="状态"> </el-table-column>
<el-table-column prop="phone" label="手机号"> </el-table-column>
<el-table-column fixed="right" label="操作" width="120">
<template slot-scope="scope">
<span>{{ scope.row.check ? "已选择" : "选择" }}</span>
</template>
</el-table-column>
</el-table>
</div> </div>
</div> </div>
</el-row> </el-row>
...@@ -143,12 +132,23 @@ ...@@ -143,12 +132,23 @@
<script> <script>
import form from "@/assets/mixins/formdialog"; import form from "@/assets/mixins/formdialog";
import table from "@/assets/mixins/table";
export default { export default {
name: "WindowOwnerDetail", name: "WindowOwnerDetail",
mixins: [form], mixins: [form, table],
components: {}, components: {},
created() { created() {
this.changePath("window/owner"); this.changePath("window/owner");
// 获取部门列表
this.$post("/dept/list", { page: 1, size: -1 }).then((res) => {
if (res.code == 1) {
this.deptArr = res.data.data;
} else {
this.deptArr = [];
}
});
// this.getData();
}, },
data() { data() {
return { return {
...@@ -159,68 +159,144 @@ export default { ...@@ -159,68 +159,144 @@ export default {
// 是否显示弹出层 // 是否显示弹出层
open: false, open: false,
direction: "rtl", direction: "rtl",
deptValue: "",
toString: [], toString: [],
toDate: [], toDate: [],
deptArr: [],
// 表单校验 // 表单校验
rules: {}, rules: {},
deptGroup: { 1: "部门1", 2: "部门2", 3: "部门3", 4: "部门4", 5: "部门5" },
options: [
{
value: "1",
label: "部门1",
},
{
value: "2",
label: "部门2",
},
],
type: "",
keywords: "", keywords: "",
tableData: [ checkArr: [],
{ urls: {
id: "123456", saveUrl: "/window/owner/save",
name: "xxx",
deptName: "部门1",
zhiwei: "工作人员",
status: "正式",
phone: "130****8888",
check: false,
}, },
config: {
isshowTabPane: false,
search: [],
columns: [
{ type: "index", label: "序号", width: 50 },
{ label: "姓名", prop: "name" },
{ label: "工号", prop: "workNum" },
{ label: "部门", prop: "deptName" },
{ label: "职位", prop: "positionName" },
{ label: "员工状态", prop: "status", formatter: this.formatter },
{ label: "手机号码", prop: "phoneNumber" },
{ {
id: "123456", label: "操作",
name: "xxx", width: 100,
deptName: "部门1", formatter: (row) => {
zhiwei: "工作人员", if (row.check) {
status: "正式", return <span>不选择</span>;
phone: "130****8888", } else {
check: false, return <span style="cursor:pointer">选择</span>;
}
},
}, },
], ],
},
}; };
}, },
methods: { methods: {
handleSelectionChange(val) { handleSearch() {
console.log(val); this.getData();
this.tableData.forEach((v) => (v.check = false)); },
val.forEach((v) => { getData() {
v.check = true; this.$post("/staff/list", {
page: 1,
size: -1,
deptId: this.deptValue,
name: this.keywords,
}).then((res) => {
if (res.code == 1) {
this.tableData = res.data;
this.checkArr.length > 0
? this.checkArr.forEach((val) => {
this.tableData.data.forEach((v) => {
val.id == v.id ? (v.check = val.check) : "";
});
})
: this.tableData.data.forEach((v) => {
v.check = false;
});
this.tableData.data = [...this.tableData.data];
this.$forceUpdate(this.tableData);
} else {
this.deptArr = [];
}
});
},
handleRowClick(val) {
val.check = !val.check;
val.check
? this.checkArr.push(val)
: (this.checkArr = this.checkArr.filter((v) => v.id !== val.id));
this.checkArr.length > 0
? this.checkArr.forEach((val) => {
val.staffId = val.id;
this.tableData.data.forEach((v) => {
val.id == v.id ? (v.check = val.check) : "";
}); });
})
: "";
this.tableData.data = [...this.tableData.data];
this.form.windowOwnerDetailList = this.checkArr;
this.$forceUpdate(this.tableData.data);
}, },
/** 编辑 */ /** 编辑 */
edit(row) { edit(row) {
this.reset(); this.reset();
this.query = { id: row.id }; this.query = { id: row.id };
this.urls.currUrl = "window/owner/edit"; this.deptValue = "";
this.keywords = "";
this.checkArr = [];
this.$get("/window/owner/info", { id: row.id }).then((res) => {
if (res.code == 1) {
this.form = res.data;
this.checkArr = res.data.windowOwnerDetailList;
res.data.windowOwnerDetailList.length > 0
? res.data.windowOwnerDetailList.forEach((val) => {
val.check = true;
val.id = val.staffId;
this.tableData.data.forEach((v) => {
v.check = false;
val.staffId == v.id ? (v.check = true) : "";
});
})
: "";
this.tableData.data = [...this.tableData.data];
this.$forceUpdate(this.tableData);
} else {
this.form = {};
}
this.open = true;
});
this.getData(); this.getData();
// this.urls.currUrl = "window/owner/edit";
// this.getData();
this.pageInfo.type = "edit"; this.pageInfo.type = "edit";
this.title = "修改窗口负责人"; this.title = "修改窗口负责人";
}, },
/** 新增 */ /** 新增 */
add(row) { add(row) {
this.reset(); this.reset();
this.urls.currUrl = "window/owner/add"; // this.urls.currUrl = "window/owner/add";
// this.getData();
this.deptValue = "";
this.checkArr = [];
this.keywords = "";
this.getData(); this.getData();
this.open = true;
this.pageInfo.type = "add"; this.pageInfo.type = "add";
this.title = "新增窗口负责人"; this.title = "新增窗口负责人";
}, },
...@@ -228,8 +304,8 @@ export default { ...@@ -228,8 +304,8 @@ export default {
view(row) { view(row) {
this.reset(); this.reset();
this.query = { id: row.id }; this.query = { id: row.id };
this.urls.currUrl = "window/owner/view"; // this.urls.currUrl = "window/owner/view";
this.getData(); // this.getData();
this.pageInfo.type = "view"; this.pageInfo.type = "view";
this.title = "窗口负责人详细"; this.title = "窗口负责人详细";
}, },
...@@ -250,7 +326,7 @@ export default { ...@@ -250,7 +326,7 @@ export default {
// 表单重置 // 表单重置
reset() { reset() {
this.form = { this.form = {
deptId: 0, deptId: "",
deptName: "", deptName: "",
name: "", name: "",
number: "", number: "",
...@@ -275,7 +351,7 @@ export default { ...@@ -275,7 +351,7 @@ export default {
padding: 0 20px; padding: 0 20px;
.bottom_content { .bottom_content {
width: 100%; width: 100%;
height: 600px; height: 680px;
background-color: rgba(242, 246, 252, 1); background-color: rgba(242, 246, 252, 1);
box-sizing: border-box; box-sizing: border-box;
border-width: 1px; border-width: 1px;
......
...@@ -21,26 +21,52 @@ export default { ...@@ -21,26 +21,52 @@ export default {
}, },
styleObj: { styleObj: {
type: Object, type: Object,
default: () => {}, default: () => { },
}, },
parameter: {
type: Object,
default: () => { }
}
}, },
data() { data() {
return {}; return {
myChart: null
};
}, },
watch: { watch: {
title(val) { title(val) {
console.log(val); this.myChart && this.myChart.setOption({title:{text:val}})
this.drawLine();
}, },
parameter: {
handler: function (v) {
this.drawLine(v)
},
deep: true
}
}, },
mounted() { mounted() {
this.drawLine(); this.drawLine();
}, },
methods: { methods: {
drawLine() { drawLine(obj) {
if (obj && this.myChart) {
// 更新
this.myChart.setOption({
xAxis: {
data: obj.x
},
series: [
{
data: obj.y,
},
]
})
return
}
// 基于dom,初始化echarts实例 // 基于dom,初始化echarts实例
let myChart = this.$echarts.init(document.getElementById(this.id)); let myChart = this.$echarts.init(document.getElementById(this.id));
this.myChart = myChart
// 绘制图表 // 绘制图表
myChart.setOption({ myChart.setOption({
title: { title: {
...@@ -50,7 +76,7 @@ export default { ...@@ -50,7 +76,7 @@ export default {
fontSize: this.legendName == "旷工率" ? 24 : 18, fontSize: this.legendName == "旷工率" ? 24 : 18,
}, },
}, },
color:'#6e98ed', color: '#6e98ed',
legend: { legend: {
orient: "horizontal", orient: "horizontal",
right: "50px", right: "50px",
...@@ -65,7 +91,7 @@ export default { ...@@ -65,7 +91,7 @@ export default {
}, },
tooltip: {}, tooltip: {},
xAxis: { xAxis: {
data: ["部门1", "部门2", "部门3", "部门4", "部门5", "部门6"], data: [],
}, },
grid: { grid: {
left: "5%", left: "5%",
...@@ -79,7 +105,7 @@ export default { ...@@ -79,7 +105,7 @@ export default {
{ {
name: this.legendName, name: this.legendName,
type: "bar", type: "bar",
data: [5, 20, 36, 10, 10, 20], data: [],
itemStyle: { itemStyle: {
lineStyle: { lineStyle: {
......
...@@ -23,23 +23,50 @@ export default { ...@@ -23,23 +23,50 @@ export default {
type: Object, type: Object,
default: () => {}, default: () => {},
}, },
parameter: {
type: Object,
default: () => {}
}
}, },
data() { data() {
return {}; return {
myChart: null
};
}, },
watch: { watch: {
title(val) { title(val) {
console.log(val); this.myChart && this.myChart.setOption({title:{text:val}})
},
parameter: {
handler: function (v) {
this.drawLine(v)
}, },
deep: true
}
}, },
mounted() { mounted() {
this.drawLine(); this.drawLine();
}, },
methods: { methods: {
drawLine() { drawLine(obj) {
if (obj && this.myChart) {
// 更新
this.myChart.setOption({
xAxis: {
data: obj.x
},
series: [
{
data: obj.y,
},
]
})
return
}
// 基于dom,初始化echarts实例 // 基于dom,初始化echarts实例
let myChart = this.$echarts.init(document.getElementById(this.id)); let myChart = this.$echarts.init(document.getElementById(this.id));
this.myChart = myChart
// 绘制图表 // 绘制图表
myChart.setOption({ myChart.setOption({
title: { text: this.title }, title: { text: this.title },
...@@ -59,7 +86,7 @@ export default { ...@@ -59,7 +86,7 @@ export default {
color:'#6e98ed', color:'#6e98ed',
xAxis: { xAxis: {
type: "category", type: "category",
data: ["部门1", "部门2", "部门3", "部门4", "部门5", "部门6"], data: [],
}, },
grid: { grid: {
left: "3%", left: "3%",
...@@ -72,7 +99,7 @@ export default { ...@@ -72,7 +99,7 @@ export default {
{ {
name: this.legendName, name: this.legendName,
type: "line", type: "line",
data: [10, 20, 30, 90, 100, 100, 120], data: [],
smooth: true, smooth: true,
// itemStyle: { // itemStyle: {
// lineStyle: { // lineStyle: {
......
...@@ -23,23 +23,47 @@ export default { ...@@ -23,23 +23,47 @@ export default {
type: Object, type: Object,
default: () => {}, default: () => {},
}, },
parameter: {
type: Array,
default: () => []
}
}, },
data() { data() {
return {}; return {
myChart: null
};
}, },
watch: { watch: {
title(val) { title(val) {
console.log(val); this.myChart && this.myChart.setOption({title:{text:val}})
}, },
parameter: {
handler: function (v) {
this.drawLine(v)
},
deep: true
}
}, },
mounted() { mounted() {
this.drawLine(); this.drawLine();
}, },
methods: { methods: {
drawLine() { drawLine(obj) {
if (obj && this.myChart) {
// 更新
this.myChart.setOption({
series: [
{
data: obj,
},
]
})
return
}
// 基于dom,初始化echarts实例 // 基于dom,初始化echarts实例
let myChart = this.$echarts.init(document.getElementById(this.id)); let myChart = this.$echarts.init(document.getElementById(this.id));
this.myChart = myChart
// 绘制图表 // 绘制图表
myChart.setOption({ myChart.setOption({
title: { text: this.title }, title: { text: this.title },
...@@ -70,13 +94,7 @@ export default { ...@@ -70,13 +94,7 @@ export default {
name: this.legendName, name: this.legendName,
type: "pie", type: "pie",
radius: "65%", radius: "65%",
data: [ data: this.parameter,
{ value: 1048, name: "部门1" },
{ value: 735, name: "部门2" },
{ value: 580, name: "部门3" },
{ value: 484, name: "部门4" },
{ value: 300, name: "部门5" },
],
emphasis: { emphasis: {
itemStyle: { itemStyle: {
shadowBlur: 10, shadowBlur: 10,
......
...@@ -3,130 +3,110 @@ ...@@ -3,130 +3,110 @@
<el-dialog :title="title" :visible.sync="open" width="90%" append-to-body> <el-dialog :title="title" :visible.sync="open" width="90%" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="180px"> <el-form ref="form" :model="form" :rules="rules" label-width="180px">
<el-row> <el-row>
<Field <el-col :span="8">
label="负责人id号" <Field label="请假类型" :span="24" prop="assessmentType" v-model="form.assessmentType" type="select"
prop="ownerId" :enumData="dict.assessmentType" placeholder="请选择请假类型" />
v-model="form.ownerId" </el-col>
placeholder="请输入负责人id号" <el-col :span="6">
/> <Field label="考比较类型" :span="24" prop="compareScope" v-model="form.compareScope" type="select"
<Field :enumData="dict.compareScope" placeholder="请选择考比较类型" />
label="负责人名称" </el-col>
prop="ownerName" <el-col :span="6">
v-model="form.ownerName" <Field :span="24" label="比例" prop="ratio" v-model="form.ratio" placeholder="请输入比例" />
placeholder="请输入负责人名称" </el-col>
/>
<Field
label="窗口工作人员id号"
prop="staffId"
v-model="form.staffId"
placeholder="请输入窗口工作人员id号"
/>
<Field
label="请假类型"
prop="assessmentType"
v-model="form.assessmentType"
type="select"
:enumData="dict.assessmentType"
placeholder="请选择请假类型"
/>
<Field
label="考核范围"
prop="assessmentScope"
v-model="form.assessmentScope"
type="select"
:enumData="dict.assessmentScope"
placeholder="请选择考核范围"
/>
<Field
label="考比较类型"
prop="compareScope"
v-model="form.compareScope"
type="select"
:enumData="dict.compareScope"
placeholder="请选择考比较类型"
/>
<Field
label="比例"
prop="ratio"
v-model="form.ratio"
placeholder="请输入比例"
/>
<Field
label="周期类型"
prop="periodType"
v-model="form.periodType"
type="select"
:enumData="dict.periodType"
placeholder="请选择周期类型"
/>
<Field
label="年"
prop="year"
v-model="form.year"
placeholder="请输入年"
/>
<Field
label="月"
prop="month"
v-model="form.month"
type="select"
:enumData="dict.month"
placeholder="请选择月"
/>
<Field
label="半年类型"
prop="halfYear"
v-model="form.halfYear"
type="select"
:enumData="dict.halfYear"
placeholder="请选择半年类型"
/>
<Field
label="半年类型"
prop="halfYear"
v-model="form.halfYear"
type="select"
:enumData="dict.halfYear"
placeholder="请选择半年类型"
/>
<Field
label="季度类型"
prop="quarter"
v-model="form.quarter"
type="select"
:enumData="dict.quarter"
placeholder="请选择季度类型"
/>
<Field
label="负责人,多个逗号分割"
prop="leaders"
v-model="form.leaders"
type="textarea"
placeholder="请输入负责人,多个逗号分割"
/>
<Field
label="负责人电话,多个逗号分割"
prop="leaderMobiles"
v-model="form.leaderMobiles"
type="textarea"
placeholder="请输入负责人电话,多个逗号分割"
/>
<Field
label="备注"
prop="remark"
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
</el-row> </el-row>
<el-row>
<el-col :span="8">
<el-form-item label="周期" prop="year">
<el-date-picker style="width: 100%;" format="yyyy" value-format="yyyy" v-model="form.year" type="year"
placeholder="选择年">
</el-date-picker>
</el-form-item>
<!-- <Field label="年" :span="24" prop="year" v-model="form.year" placeholder="请输入年" /> -->
</el-col>
<el-col :span="6">
<Field label="周期类型" :span="24" prop="periodType" v-model="form.periodType" type="select"
:enumData="dict.periodType" placeholder="请选择周期类型" />
</el-col>
</el-row>
<!-- <el-row>
<el-col :span="8">
<Field label="考核范围" :span="24" prop="assessmentScope" v-model="form.assessmentScope" type="select"
:enumData="dict.assessmentScope" placeholder="请选择考核范围" />
</el-col>
</el-row> -->
<el-row v-if="form.assessmentScope == 1">
<el-col :span="8">
<el-form-item label="选择部门">
<el-select v-model="deptId" filterable multiple collapse-tags style="width: 100%;" placeholder="请选择">
<el-option v-for="item in deptArr" :key="item.id" :label="item.deptName" :value="item.id">
</el-option>
</el-select>
<!-- <el-button type="primary">选择部门</el-button> -->
</el-form-item>
</el-col>
</el-row>
<el-row v-if="form.assessmentScope == 2">
<el-col :span="8">
<el-form-item label="选择个人">
<el-select v-model="staffId" filterable multiple collapse-tags style="width: 100%;" placeholder="请选择">
<el-option v-for="item in staffArr" :key="item.id" :label="item.name" :value="item.id">
</el-option>
</el-select>
<!-- <el-button type="primary">选择个人</el-button> -->
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="负责人">
<el-row v-for="(item, index) in ownerList" :key="index" :style="{ 'margin-top': index > 0 ? '10px' : '' }">
<el-col :span="8">
<el-input v-model="item.ownerName" placeholder="请输入姓名"></el-input>
</el-col>
<el-col :span="12" style="padding:0 10px">
<el-input v-model="item.leaderMobiles" placeholder="请输入电话"></el-input>
</el-col>
<el-col :span="2">
<el-button type="primary" icon="el-icon-plus" circle v-if="index == 0" @click="addOwner"></el-button>
<el-button type="danger" icon="el-icon-delete" circle v-else @click="delOwner(index)"></el-button>
</el-col>
</el-row>
</el-form-item>
</el-col>
</el-row>
<!-- <el-row>
<Field label="负责人id号" prop="ownerId" v-model="form.ownerId" placeholder="请输入负责人id号" />
<Field label="负责人名称" prop="ownerName" v-model="form.ownerName" placeholder="请输入负责人名称" />
<Field label="窗口工作人员id号" prop="staffId" v-model="form.staffId" placeholder="请输入窗口工作人员id号" />
<Field label="请假类型" prop="assessmentType" v-model="form.assessmentType" type="select"
:enumData="dict.assessmentType" placeholder="请选择请假类型" />
<Field label="考核范围" prop="assessmentScope" v-model="form.assessmentScope" type="select"
:enumData="dict.assessmentScope" placeholder="请选择考核范围" />
<Field label="考比较类型" prop="compareScope" v-model="form.compareScope" type="select" :enumData="dict.compareScope"
placeholder="请选择考比较类型" />
<Field label="比例" prop="ratio" v-model="form.ratio" placeholder="请输入比例" />
<Field label="周期类型" prop="periodType" v-model="form.periodType" type="select" :enumData="dict.periodType"
placeholder="请选择周期类型" />
<Field label="年" prop="year" v-model="form.year" placeholder="请输入年" />
<Field label="月" prop="month" v-model="form.month" type="select" :enumData="dict.month" placeholder="请选择月" />
<Field label="半年类型" prop="halfYear" v-model="form.halfYear" type="select" :enumData="dict.halfYear"
placeholder="请选择半年类型" />
<Field label="半年类型" prop="halfYear" v-model="form.halfYear" type="select" :enumData="dict.halfYear"
placeholder="请选择半年类型" />
<Field label="季度类型" prop="quarter" v-model="form.quarter" type="select" :enumData="dict.quarter"
placeholder="请选择季度类型" />
<Field label="负责人,多个逗号分割" prop="leaders" v-model="form.leaders" type="textarea" placeholder="请输入负责人,多个逗号分割" />
<Field label="负责人电话,多个逗号分割" prop="leaderMobiles" v-model="form.leaderMobiles" type="textarea"
placeholder="请输入负责人电话,多个逗号分割" />
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注" />
</el-row> -->
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button <el-button type="primary" v-if="pageInfo.type !== 'view'" @click="submitForm">确 定</el-button>
type="primary"
v-if="pageInfo.type !== 'view'"
@click="submitForm"
>确 定</el-button
>
<el-button @click="cancel">取 消</el-button> <el-button @click="cancel">取 消</el-button>
</div> </div>
</el-dialog> </el-dialog>
...@@ -163,10 +143,73 @@ export default { ...@@ -163,10 +143,73 @@ export default {
year: [{ required: true, message: "请输入年", trigger: "blur" }], year: [{ required: true, message: "请输入年", trigger: "blur" }],
month: [{ required: true, message: "请输入月", trigger: "blur" }], month: [{ required: true, message: "请输入月", trigger: "blur" }],
}, },
// 负责人
ownerList: [
{ ownerId: "", ownerName: "", leaderMobiles: "" }
],
deptArr: [],//部门下拉
staffArr: [],//人员下拉
deptId: [],//部门选中
staffId: [],//人员选中数据
}; };
}, },
created() {
this.deptList()
this.staffList()
},
methods: { methods: {
beforeSubmit(form) {
// 个人/部门
const perposeStaffList = []//选中人员
const perposeDeptList = []//选中部门
this.deptId.forEach(element => {
perposeDeptList.push({ deptId: element })
});
this.staffId.forEach(element => {
perposeStaffList.push({ staffId: element })
});
form.perposeStaffList = perposeStaffList
form.perposeDeptList = perposeDeptList
// 负责人
const leaders = []//名
const leaderMobiles = []//电话
this.ownerList.forEach(element => {
leaders.push(element.ownerName)
leaderMobiles.push(element.leaderMobiles)
});
form.leaders = leaders.length > 0 ? leaders.join(",") : ""
form.leaderMobiles = leaderMobiles.length > 0 ? leaderMobiles.join(',') : ""
console.log(form, "入参")
return form
},
// 查询部门列表
deptList() {
this.$post("/dept/list", { page: 1, size: -1 }).then((res) => {
const { code, data, dict } = res
if (code == 1) {
this.deptArr = data.data
console.log(data.data, "部门")
}
});
},
// 查询部门列表
staffList() {
this.$post("/staff/list", { page: 1, size: -1 }).then((res) => {
const { code, data, dict } = res
if (code == 1) {
this.staffArr = data.data
}
});
},
/** 负责人添加 */
addOwner() {
this.ownerList.push({ ownerId: "", ownerName: "", leaderMobiles: "" })
},
/** 负责人删除 */
delOwner(index) {
this.ownerList.splice(index, 1)
},
/** 编辑 */ /** 编辑 */
edit(row) { edit(row) {
this.reset(); this.reset();
...@@ -178,9 +221,9 @@ export default { ...@@ -178,9 +221,9 @@ export default {
}, },
/** 新增 */ /** 新增 */
add(row) { add(row) {
this.reset();
this.urls.currUrl = "perform/perpose/add"; this.urls.currUrl = "perform/perpose/add";
this.getData(); this.getData();
this.reset();
this.pageInfo.type = "add"; this.pageInfo.type = "add";
this.title = "新增考核目标"; this.title = "新增考核目标";
}, },
...@@ -200,6 +243,33 @@ export default { ...@@ -200,6 +243,33 @@ export default {
/**获取数据后弹框 */ /**获取数据后弹框 */
afterRender(data) { afterRender(data) {
this.open = true; this.open = true;
if (this.pageInfo.type == "add") {
// 新增
this.reset()
this.form.assessmentScope = this.$parent.query.assessmentScope + ''
}else{
// 编辑
this.form.year = this.form.year+''
const leaderMobiles = this.form.leaderMobiles.split(',')
// 回显负责人
const ownerList = []
this.form.leaders.split(',').forEach((v,i)=>{
ownerList.push({ ownerId: "", ownerName: v, leaderMobiles: leaderMobiles[i] || '' })
})
this.ownerList = ownerList
// 回显选中人员
const staffId = []
this.form.perposeStaffList && this.form.perposeStaffList.forEach(v=>{
staffId.push(v.staffId)
})
this.staffId = staffId
// 回显选中部门
const deptId = []
this.form.perposeDeptList && this.form.perposeDeptList.forEach(v=>{
deptId.push(v.deptId)
})
this.deptId = deptId
}
}, },
afterSubmit(data) { afterSubmit(data) {
...@@ -213,20 +283,26 @@ export default { ...@@ -213,20 +283,26 @@ export default {
ownerId: null, ownerId: null,
ownerName: "", ownerName: "",
staffId: null, staffId: null,
assessmentType: null, assessmentType: '1',
assessmentScope: 1, assessmentScope: '1',
compareScope: 1, compareScope: '1',
ratio: 0.0, ratio: 0.0,
periodType: 1, periodType: '1',
year: null, year: "",
month: null, // month: null,
halfYear: 1, // halfYear: 1,
halfYear: 1, // quarter: 1,
quarter: 1,
leaders: "", leaders: "",
leaderMobiles: "", leaderMobiles: "",
remark: "", remark: "",
perposeStaffList: [],
perposeDeptList: []
}; };
this.ownerList = [
{ ownerId: "", ownerName: "", leaderMobiles: "" }
]
this.deptId = []
this.staffId = []
this.resetForm("form"); this.resetForm("form");
}, },
resetForm(refName) { resetForm(refName) {
......
...@@ -4,13 +4,13 @@ ...@@ -4,13 +4,13 @@
<el-tab-pane label="目标看板" name="1"> <el-tab-pane label="目标看板" name="1">
<div class="content"> <div class="content">
<div class="top search_top"> <div class="top search_top">
<el-radio-group v-model="type"> <el-radio-group v-model="type" @change="onAssessmentScope">
<el-radio-button label="1">按部门</el-radio-button> <el-radio-button :label="1">按部门</el-radio-button>
<el-radio-button label="2">按个人</el-radio-button> <el-radio-button :label="2">按个人</el-radio-button>
</el-radio-group> </el-radio-group>
<div class="search_box"> <div class="search_box">
<el-select <el-select
v-model="dateValue" v-model="boardQuery.month"
placeholder="请选择" placeholder="请选择"
style="margin: 0 10px;" style="margin: 0 10px;"
> >
...@@ -32,6 +32,7 @@ ...@@ -32,6 +32,7 @@
:title="'绩效总分排名'" :title="'绩效总分排名'"
:id="'jixiaozongfen'" :id="'jixiaozongfen'"
:legendName="'绩效总分'" :legendName="'绩效总分'"
:parameter="depStatObj.totalScore"
:styleObj="{ width: '100%', height: '300px' }" :styleObj="{ width: '100%', height: '300px' }"
/> />
</div> </div>
...@@ -39,6 +40,7 @@ ...@@ -39,6 +40,7 @@
<line-charts <line-charts
:title="'绩效平均分排名'" :title="'绩效平均分排名'"
:id="'jixiaopingjunfen'" :id="'jixiaopingjunfen'"
:parameter="depStatObj.averageScore"
:legendName="'绩效平均分'" :legendName="'绩效平均分'"
:styleObj="{ width: '100%', height: '300px' }" :styleObj="{ width: '100%', height: '300px' }"
/> />
...@@ -49,6 +51,7 @@ ...@@ -49,6 +51,7 @@
<bar-charts <bar-charts
:title="'部门加分排名TOP10'" :title="'部门加分排名TOP10'"
:id="'top_10'" :id="'top_10'"
:parameter="depStatObj.totalAddScore"
:legendName="'部门加分分值'" :legendName="'部门加分分值'"
:styleObj="{ width: '100%', height: '300px' }" :styleObj="{ width: '100%', height: '300px' }"
/> />
...@@ -57,6 +60,7 @@ ...@@ -57,6 +60,7 @@
<pie-charts <pie-charts
:title="'部门加分整体分布'" :title="'部门加分整体分布'"
:id="'jiafen'" :id="'jiafen'"
:parameter="depStatObj.pieAddScore"
:legendName="'部门加分'" :legendName="'部门加分'"
:styleObj="{ width: '100%', height: '300px' }" :styleObj="{ width: '100%', height: '300px' }"
/> />
...@@ -65,16 +69,18 @@ ...@@ -65,16 +69,18 @@
<bar-charts <bar-charts
:title="'部门扣分排名TOP10'" :title="'部门扣分排名TOP10'"
:id="'koufen_10'" :id="'koufen_10'"
:parameter="depStatObj.totalSubScore"
:legendName="'部门扣分分值'" :legendName="'部门扣分分值'"
:styleObj="{ width: '100%', height: '300px' }" :styleObj="{ width: '100%', height: '300px' }"
/> />
</div> </div>
<div class="koufen box"> <div class="koufen box">
<pie-charts <pie-charts
:parameter="depStatObj.pieSubScore"
:title="'部门扣分整体分布'" :title="'部门扣分整体分布'"
:id="'koufen'" :id="'koufen'"
:legendName="'部门扣分'" :legendName="'部门扣分'"
:styleObj="{ width: '100%', height: '300px' }" :styleObj="{ onAssessmentScope2width: '100%', height: '300px' }"
/> />
</div> </div>
</div> </div>
...@@ -84,12 +90,12 @@ ...@@ -84,12 +90,12 @@
<el-tab-pane label="目标对齐" name="2"> <el-tab-pane label="目标对齐" name="2">
<div class="content"> <div class="content">
<div class="top search_top"> <div class="top search_top">
<el-radio-group v-model="type"> <el-radio-group v-model="type1" @change="onAssessmentScope1">
<el-radio-button label="1">按部门</el-radio-button> <el-radio-button :label="1">按部门</el-radio-button>
<el-radio-button label="2">按个人</el-radio-button> <el-radio-button :label="2">按个人</el-radio-button>
</el-radio-group> </el-radio-group>
<div class="search_box"> <div class="search_box">
<el-select v-model="value" placeholder="请选择"> <el-select v-model="value" @change="deptList" placeholder="请选择">
<el-option <el-option
v-for="item in options" v-for="item in options"
:key="item.value" :key="item.value"
...@@ -99,7 +105,8 @@ ...@@ -99,7 +105,8 @@
</el-option> </el-option>
</el-select> </el-select>
<el-select <el-select
v-model="dateValue" @change="deptList"
v-model="StatQuery.month"
placeholder="请选择" placeholder="请选择"
style="margin: 0 10px;" style="margin: 0 10px;"
> >
...@@ -111,16 +118,15 @@ ...@@ -111,16 +118,15 @@
> >
</el-option> </el-option>
</el-select> </el-select>
<el-button type="primary">搜索</el-button> <el-button type="primary" @click="deptList">搜索</el-button>
</div> </div>
</div> </div>
<div class="bar_content"> <div class="bar_content">
<bar-charts <bar-charts
:title=" :title="`${type1 == 1 ? '各部门' : '个人'}${StatQuery.month}月${alignmentName}对齐情况`"
`${type == 1 ? '各部门' : '个人'}${dateValue}月旷工率对齐情况`
"
:id="'bar_content'" :id="'bar_content'"
:legendName="'旷工率'" :legendName="'旷工率'"
:parameter="depStatObj.alignment"
:styleObj="{ width: '1800px', height: '650px' }" :styleObj="{ width: '1800px', height: '650px' }"
/> />
</div> </div>
...@@ -129,9 +135,9 @@ ...@@ -129,9 +135,9 @@
<el-tab-pane label="目标管理" name="3"> <el-tab-pane label="目标管理" name="3">
<div class="content"> <div class="content">
<div class="top"> <div class="top">
<el-radio-group v-model="type"> <el-radio-group v-model="type2" @change="onAssessmentScope2">
<el-radio-button label="1">按部门</el-radio-button> <el-radio-button :label="1">按部门</el-radio-button>
<el-radio-button label="2">按个人</el-radio-button> <el-radio-button :label="2">按个人</el-radio-button>
</el-radio-group> </el-radio-group>
<el-button type="primary" style="margin: 0 20px;" @click="addGoal"> <el-button type="primary" style="margin: 0 20px;" @click="addGoal">
+ 创建目标</el-button + 创建目标</el-button
...@@ -142,25 +148,25 @@ ...@@ -142,25 +148,25 @@
<div class="goal_title"> <div class="goal_title">
<img src="../../../../assets/images/u17641.svg" alt="" /> <img src="../../../../assets/images/u17641.svg" alt="" />
<span> <span>
旷工率不高于10% {{dictString('assessmentType',val.assessmentType)}}{{dictString('compareScope',val.compareScope)}}{{val.ratio}}%
</span> </span>
</div> </div>
<p class="goal_txt"> <p class="goal_txt">
<span>{{ type == 1 ? "目标部门:" : "目标个人:" }}</span <span>{{ type2 == 1 ? "目标部门:" : "目标个人:" }}</span
><span>{{ ><span>{{
type == 1 ? "全部部门" : "张三、李四、王武、陈真" type2 == 1 ? val.deptPerpose : val.staffPerpose
}}</span> }}</span>
</p> </p>
<p class="goal_txt"> <p class="goal_txt">
<span>周期:</span><span>2023年/全年</span> <span>周期:</span><span>{{val.year}} {{dictString('periodType',val.periodType)}}</span>
</p> </p>
<p class="goal_txt"> <p class="goal_txt">
<span>负责人:</span><span>张三、李四、王武 </span> <span>负责人:</span><span>{{val.leaders}}</span>
</p> </p>
<p class="goal_txt"> <p class="goal_txt">
<span>最近更新:</span><span>2023-05-11 10:00:00</span> <span>最近更新:</span><span>{{val.updateTime}}</span>
</p> </p>
<p class="goal_txt"><span>更新人员:</span><span>言若海</span></p> <p class="goal_txt"><span>更新人员:</span><span>{{dictString('updateUserId',val.updateUserId)}}</span></p>
<div class="button_box"> <div class="button_box">
<el-button <el-button
type="primary" type="primary"
...@@ -191,6 +197,7 @@ import BarCharts from "./components/BarCharts.vue"; ...@@ -191,6 +197,7 @@ import BarCharts from "./components/BarCharts.vue";
import LineCharts from "./components/LineCharts.vue"; import LineCharts from "./components/LineCharts.vue";
import PieCharts from "./components/PieCharts.vue"; import PieCharts from "./components/PieCharts.vue";
import dialogShow from "./dialogshow"; import dialogShow from "./dialogshow";
import moment from 'moment'
export default { export default {
components: { components: {
...@@ -203,8 +210,138 @@ export default { ...@@ -203,8 +210,138 @@ export default {
created() { created() {
this.getData(); this.getData();
this.deptList()
this.statList()
}, },
methods: { methods: {
// 个人绩效分数统计
staffStatList(){
this.$post("/staff/perform/stat/list", this.boardQuery).then((res) => {
const {code,data,dict} = res
if(code == 1){
const row = data.data || []
// this.statArr = row
const x = []
const y = []
row.forEach(element => {
x.push(element.deptName)
y.push(element.totalScore)
});
this.depStatObj.totalScore.x = x
this.depStatObj.totalScore.y = y
}
});
// 加分top10
const top10 = {...this.boardQuery,size:10}
this.$post("/staff/perform/stat/list", top10).then((res) => {
const {code,data,dict} = res
if(code == 1){
const row = data.data || []
// this.statArr = row
const x = []
const y = []
row.forEach(element => {
x.push(element.deptName)
y.push(element.attendScoreAdd)
});
this.depStatObj.attendScoreAdd.x = x
this.depStatObj.attendScoreAdd.y = y
}
});
},
// 部门绩效分数统计
statList(){
this.$post("/dept/perform/stat/list",this.boardQuery).then((res) => {
const {code,data,dict} = res
if(code == 1){
const row = data.data || []
// this.statArr = row
const x = []
const y = []
const averageScore = [] //平均分数
row.forEach(element => {
x.push(element.deptName)
y.push(element.totalScore)
averageScore.push(element.averageScore)
});
this.depStatObj.totalScore.x = x
this.depStatObj.totalScore.y = y
// 平均值
this.depStatObj.averageScore.x = x
this.depStatObj.averageScore.y = averageScore
}
});
// 加分top10
const top10 = {...this.boardQuery,size:10,orderColList:[{colName:'totalAddScore',sortKind:'desc'}]}
this.$post("/staff/perform/stat/list", top10).then((res) => {
const {code,data,dict} = res
if(code == 1){
const row = data.data || []
// this.statArr = row
const x = []
const y = []
row.forEach(element => {
x.push(element.deptName)
y.push(element.totalAddScore)
});
this.depStatObj.totalAddScore.x = x
this.depStatObj.totalAddScore.y = y
}
});
// 减分
const top10Sub = {...this.boardQuery,size:10,orderColList:[{colName:'totalSubScore',sortKind:'desc'}]}
this.$post("/staff/perform/stat/list", top10Sub).then((res) => {
const {code,data,dict} = res
if(code == 1){
const row = data.data || []
// this.statArr = row
const x = []
const y = []
row.forEach(element => {
x.push(element.deptName)
y.push(element.totalSubScore)
});
this.depStatObj.totalSubScore.x = x
this.depStatObj.totalSubScore.y = y
}
});
},
// 部门目标对齐
deptList(){
this.$post("/perform/perpose/dept/stat/list", this.StatQuery).then((res) => {
const {code,data,dict} = res
if(code == 1){
const row = data.data || []
const x = []
const y = []
row.forEach(element => {
x.push(element.deptName)
y.push(element[this.value])
});
this.depStatObj.alignment.x = x
this.depStatObj.alignment.y = y
}
});
},
// 个人对齐方式
staffList(){
this.$post("/perform/perpose/staff/stat/list", this.StatQuery).then((res) => {
const {code,data,dict} = res
if(code == 1){
const row = data.data || []
const x = []
const y = []
row.forEach(element => {
x.push(element.deptName)
y.push(element[this.value])
});
this.depStatObj.alignment.x = x
this.depStatObj.alignment.y = y
}
});
},
handleClick(tab, event) { handleClick(tab, event) {
console.log(tab, event); console.log(tab, event);
}, },
...@@ -221,116 +358,214 @@ export default { ...@@ -221,116 +358,214 @@ export default {
this.getData(); this.getData();
}); });
}, },
// 目标管理
getData() { getData() {
this.$post("/perform/perpose/list").then((res) => { this.$post("/perform/perpose/list",this.query).then((res) => {
console.log(res); console.log(res,"@@@@@@@@@@@@");
if (res.code == 1) { const {code,data,dict} = res
this.dataList = res.data.data; this.dict = dict || {}
if (code == 1) {
this.dataList = data.data;
} else { } else {
this.dataList = []; this.dataList = [];
} }
}); });
}, },
// 字典转换
dictString(key,id){
const keyName = this.dict[key]
return keyName?keyName[id]:""
},
// TAB个人/法人
onAssessmentScope(v){
if(v == 1){
this.statList()
}else{
this.staffStatList()
}
},
// 目标看齐
onAssessmentScope1(v){
if(v == 1){
this.deptList()
}else{
this.staffList()
}
},
onAssessmentScope2(v){
if(v == 1){
this.query.assessmentScope = 1
}else{
this.query.assessmentScope = 2
}
this.getData()
}
},
computed: {
alignmentName:function(){
const obj = this.options.find(v=>v.value == this.value)
return obj.label
}
}, },
data() { data() {
return { return {
activeName: "1", activeName: "1",
type: "1", type: 1,//目标看板
type1: 1,//目标对齐
type2: 1,//目标管理
dateValue: "1", dateValue: "1",
options: [ options: [
{ {
value: "1", value: "absentRate",
label: "旷工率", label: "旷工率",
}, },
{ {
value: "2", value: "absenceRate",
label: "缺卡率", label: "缺卡率",
}, },
{ {
value: "3", value: "lateRate",
label: "迟到率", label: "迟到率",
}, },
{ {
value: "4", value: "earlyRate",
label: "早退率", label: "早退率",
}, },
{ {
value: "5", value: "leaveRate",
label: "请假率", label: "请假率",
}, },
{ {
value: "6", value: "turnoverRate",
label: "离岗率", label: "离岗率",
}, },
{ {
value: "7", value: "sleepRate",
label: "睡觉率", label: "睡觉率",
}, },
{ {
value: "8", value: "playPhoneRate",
label: "玩手机率", label: "玩手机率",
}, },
{ {
value: "9", value: "expireWorkRate",
label: "办件超期率", label: "办件超期率",
}, },
{ {
value: "10", value: "negaReviewRate",
label: "差评率", label: "差评率",
}, },
], ],
optionsMonths: [ optionsMonths: [
{ {
value: "1", value: 1,
label: "1月", label: "1月",
}, },
{ {
value: "2", value: 2,
label: "2月", label: "2月",
}, },
{ {
value: "3", value: 3,
label: "3月", label: "3月",
}, },
{ {
value: "4", value: 4,
label: "4月", label: "4月",
}, },
{ {
value: "5", value: 5,
label: "5月", label: "5月",
}, },
{ {
value: "6", value: 6,
label: "6月", label: "6月",
}, },
{ {
value: "7", value: 7,
label: "7月", label: "7月",
}, },
{ {
value: "8", value: 8,
label: "8月", label: "8月",
}, },
{ {
value: "9", value: 9,
label: "9月", label: "9月",
}, },
{ {
value: "10", value: 10,
label: "10月", label: "10月",
}, },
{ {
value: "11", value: 11,
label: "11月", label: "11月",
}, },
{ {
value: "12", value: 12,
label: "12月", label: "12月",
}, },
], ],
value: "", value: "lateRate",//默认显示迟到类型
dataList: [], dataList: [],
depStatObj:{
totalScore:{
x:[],
y:[]
},//绩效总分排名
averageScore:{
x:[],
y:[]
},//绩效平均排名
totalAddScore:{
x:[],
y:[]
},//加分
totalSubScore:{
x:[],
y:[]
},//减分
alignment:{
x:[],
y:[]
},//目标对齐
pieAddScore:[
{value:0,name:'考勤绩效'},
{value:0,name:'评价绩效'},
{value:0,name:'办件绩效'},
{value:0,name:'效能绩效'},
{value:0,name:'投诉绩效'},
{value:0,name:'其它绩效'},
],//部门加分分布
pieSubScore:[
{value:0,name:'考勤绩效'},
{value:0,name:'评价绩效'},
{value:0,name:'办件绩效'},
{value:0,name:'效能绩效'},
{value:0,name:'投诉绩效'},
{value:0,name:'其它绩效'},
]//部门减分分布
},//按部门
month:"",//月份
boardQuery:{
page:1,
size:-1,
year:parseInt(moment().format('YYYY')),
month:parseInt(moment().format('MM')),
},//看板查询条件
query:{
page:1,
size:8,
assessmentScope:1//考核范围(1.部门,2.个人)
},//目标管理查询条件
StatQuery:{
page:1,
size:-1,
year:parseInt(moment().format('YYYY')),
month:parseInt(moment().format('MM')),
},//对齐方式入参
dict:{}//字典
}; };
}, },
}; };
......
...@@ -145,7 +145,14 @@ ...@@ -145,7 +145,14 @@
<dependency> <dependency>
<groupId>com.aliyun</groupId> <groupId>com.aliyun</groupId>
<artifactId>dingtalk</artifactId> <artifactId>dingtalk</artifactId>
<version>2.0.19</version> <version>2.0.22</version>
</dependency>
<!--dingdingtalk service sdk-->
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>alibaba-dingtalk-service-sdk</artifactId>
<version>2.0.0</version>
</dependency> </dependency>
<dependency> <dependency>
......
...@@ -6,11 +6,10 @@ import com.mortals.xhx.common.code.ProcessStatusEnum; ...@@ -6,11 +6,10 @@ import com.mortals.xhx.common.code.ProcessStatusEnum;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date;
@Data @Data
public abstract class BaseReq implements Serializable { public abstract class BaseReq implements Serializable {
/** /**
* 当前页 * 当前页
*/ */
...@@ -21,4 +20,35 @@ public abstract class BaseReq implements Serializable { ...@@ -21,4 +20,35 @@ public abstract class BaseReq implements Serializable {
private Integer size; private Integer size;
/**
* 工号
*/
private String workNum;
/**
* 标题
*/
private String title;
/**
* 扣分时间
*/
private Date happenTime;
/**
* 规则编码
*/
private String ruleCode;
private String phone;
/**
* 类型
*/
private String performType;
} }
...@@ -2,19 +2,29 @@ package com.mortals.xhx.busiz.dingtalk.api; ...@@ -2,19 +2,29 @@ package com.mortals.xhx.busiz.dingtalk.api;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.dingtalk.api.DefaultDingTalkClient;
import com.dingtalk.api.DingTalkClient;
import com.dingtalk.api.request.*;
import com.dingtalk.api.response.*;
import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.mortals.framework.annotation.UnAuth;
import com.mortals.framework.common.Rest; import com.mortals.framework.common.Rest;
import com.mortals.framework.exception.AppException;
import com.mortals.xhx.busiz.dingtalk.config.TalkConfiguration; import com.mortals.xhx.busiz.dingtalk.config.TalkConfiguration;
import com.mortals.xhx.busiz.dingtalk.req.DingTalkBaseReq; import com.mortals.xhx.busiz.dingtalk.req.DingTalkBaseReq;
import com.mortals.xhx.busiz.dingtalk.req.UserPageReq;
import com.mortals.xhx.busiz.req.MobileReq;
import com.mortals.xhx.busiz.req.ReviewSaveReq;
import com.mortals.xhx.common.code.YesNoEnum; import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.pdu.ApiRespPdu; import com.mortals.xhx.common.pdu.ApiRespPdu;
import lombok.extern.apachecommons.CommonsLog; import lombok.extern.apachecommons.CommonsLog;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.poi.ss.formula.functions.T;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestBody; import sun.security.krb5.internal.APOptions;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import java.util.List;
/** /**
* 钉钉相关外部接口 * 钉钉相关外部接口
...@@ -28,6 +38,7 @@ public class TalkApiController { ...@@ -28,6 +38,7 @@ public class TalkApiController {
@Autowired @Autowired
private TalkConfiguration talkConfiguration; private TalkConfiguration talkConfiguration;
private String dingToken;
/** /**
* 获取token * 获取token
...@@ -35,35 +46,194 @@ public class TalkApiController { ...@@ -35,35 +46,194 @@ public class TalkApiController {
* @return * @return
*/ */
@PostMapping("/dingtalk/gettoken") @PostMapping("/dingtalk/gettoken")
public Rest<String> getToken(@RequestBody DingTalkBaseReq dingTalkBaseReq) { @UnAuth
log.info("收到【getToken】请求【请求体】--> {}", JSON.toJSONString(dingTalkBaseReq)); public ApiRespPdu<String> getToken() {
ApiRespPdu<String> apiRespPdu = new ApiRespPdu<>();
try { try {
DingTalkClient client = new DefaultDingTalkClient(talkConfiguration.getGetTokneUrl());
// DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/gettoken");
// OapiGettokenRequest req = new OapiGettokenRequest();
// req.setHttpMethod("GET");
// OapiGettokenResponse rsp = client.execute(req);
/* DingTalkClient client = new DefaultDingTalkClient(talkConfiguration.getGetTokneUrl());
OapiGettokenRequest req = new OapiGettokenRequest(); OapiGettokenRequest req = new OapiGettokenRequest();
req.setAppkey(apiKey); req.setAppkey(talkConfiguration.getAppKey());
req.setAppsecret(appsecret); req.setAppsecret(talkConfiguration.getAppSecret());
req.setHttpMethod("GET"); req.setHttpMethod("GET");
OapiGettokenResponse rsp = client.execute(req); OapiGettokenResponse rsp = client.execute(req);
log.info("gettoken rsp:" + rsp.getBody()); log.info("gettoken rsp:" + rsp.getBody());
if (rsp.getErrcode() == 0) { if (rsp.getErrcode() == 0) {
dingToken = rsp.getAccessToken();
apiRespPdu.setCode(0);
apiRespPdu.setData(rsp.getAccessToken()); apiRespPdu.setData(rsp.getAccessToken());
apiRespPdu.setMsg(rsp.getMsg());
} else { } else {
throw new AppException(String.format("errorCode:%s,errorMsg:%s", rsp.getErrcode(), rsp.getErrmsg())); apiRespPdu.setCode(-1);
apiRespPdu.setData("");
apiRespPdu.setMsg(rsp.getMsg());
} }
*/
} catch (Exception e) { } catch (Exception e) {
log.error("异常", e); log.error("异常", e);
return Rest.fail(e.getMessage()); apiRespPdu.setCode(-1);
apiRespPdu.setData("");
apiRespPdu.setMsg(e.toString());
}
return apiRespPdu;
}
/**
* 获取部门列表
* @return
*/
@PostMapping("/dingtalk/getSubList")
@UnAuth
public ApiRespPdu<List<OapiV2DepartmentListsubResponse.DeptBaseResponse>> getSubList(){
ApiRespPdu<List<OapiV2DepartmentListsubResponse.DeptBaseResponse>> apiRespPdu = new ApiRespPdu<>();
try {
DingTalkClient client = new DefaultDingTalkClient(talkConfiguration.getGetSubList());
OapiV2DepartmentListsubRequest req = new OapiV2DepartmentListsubRequest();
if(dingToken == null){
dingToken = getToken().getData();
}
OapiV2DepartmentListsubResponse rsp = client.execute(req, dingToken);
if(rsp.getErrcode() == 0){
apiRespPdu.setCode(0);
apiRespPdu.setData(rsp.getResult());
apiRespPdu.setMsg(rsp.getMsg());
}else {
if(getToken().getCode() == 0){
getSubList();
}else {
apiRespPdu.setCode(-1);
apiRespPdu.setData(null);
apiRespPdu.setMsg("获取token失败");
}
}
} catch (Exception e) {
e.printStackTrace();
apiRespPdu.setCode(-1);
apiRespPdu.setData(null);
apiRespPdu.setMsg(e.toString());
} }
return Rest.ok();
return apiRespPdu;
} }
/**
* 根据部门id查询该部门下所有用户完整信息
* @return
*/
@PostMapping("/dingtalk/getUserList")
@UnAuth
public ApiRespPdu<OapiV2UserListResponse.PageResult> getUserList(@RequestBody UserPageReq res){
ApiRespPdu<OapiV2UserListResponse.PageResult> apiRespPdu = new ApiRespPdu<>();
try {
DingTalkClient client = new DefaultDingTalkClient(talkConfiguration.getGetuserlist());
OapiV2UserListRequest req = new OapiV2UserListRequest();
if(dingToken == null){
dingToken = getToken().getData();
}
req.setDeptId(res.getDeptid());
req.setCursor(res.getCursor());
req.setSize(res.getSize());
OapiV2UserListResponse rsp = client.execute(req, dingToken);
if(rsp.getErrcode() == 0){
apiRespPdu.setCode(0);
apiRespPdu.setData(rsp.getResult());
apiRespPdu.setMsg(rsp.getMsg());
}else {
if(getToken().getCode() == 0){
getUserList(res);
}else {
apiRespPdu.setCode(-1);
apiRespPdu.setData(null);
apiRespPdu.setMsg("获取token失败");
}
}
} catch (Exception e) {
e.printStackTrace();
apiRespPdu.setCode(-1);
apiRespPdu.setData(null);
apiRespPdu.setMsg(e.toString());
}
return apiRespPdu;
}
/**
* 根据手机号查询用户
* @return
*/
@GetMapping("/dingtalk/getByMobile")
@UnAuth
public ApiRespPdu<OapiV2UserGetResponse.UserGetResponse> getByMobile(@RequestBody MobileReq mobile){
ApiRespPdu<OapiV2UserGetResponse.UserGetResponse> apiRespPdu = new ApiRespPdu<>();
try {
DingTalkClient client = new DefaultDingTalkClient(talkConfiguration.getGetbymobile());
OapiV2UserGetbymobileRequest req = new OapiV2UserGetbymobileRequest();
if(dingToken == null){
dingToken = getToken().getData();
}
req.setMobile(mobile.getMobile());
OapiV2UserGetbymobileResponse rsp = client.execute(req, dingToken);
if(rsp.getErrcode() == 0){
//根据获取到的userid去获取用户详情
ApiRespPdu<OapiV2UserGetResponse.UserGetResponse> userRsp = getUserInfo(rsp.getResult().getUserid());
if(userRsp.getCode() == 0){
apiRespPdu.setCode(userRsp.getCode());
apiRespPdu.setData(userRsp.getData());
apiRespPdu.setMsg(userRsp.getMsg());
}else {
apiRespPdu.setCode(-1);
apiRespPdu.setData(null);
apiRespPdu.setMsg(userRsp.getMsg());
}
}else {
if(getToken().getCode() == 0){
getByMobile(mobile);
}else {
apiRespPdu.setCode(-1);
apiRespPdu.setData(null);
apiRespPdu.setMsg("获取token失败");
}
}
} catch (Exception e) {
e.printStackTrace();
apiRespPdu.setCode(-1);
apiRespPdu.setData(null);
apiRespPdu.setMsg(e.toString());
}
return apiRespPdu;
}
/**
* 根据userid查询用户详情
* @return
*/
@GetMapping("/dingtalk/getUserInfo")
@UnAuth
public ApiRespPdu<OapiV2UserGetResponse.UserGetResponse> getUserInfo(@RequestBody String userid){
ApiRespPdu<OapiV2UserGetResponse.UserGetResponse> apiRespPdu = new ApiRespPdu<>();
try {
DingTalkClient client = new DefaultDingTalkClient(talkConfiguration.getGetuserinfo());
OapiV2UserGetRequest req = new OapiV2UserGetRequest();
if(dingToken == null){
dingToken = getToken().getData();
}
req.setUserid(userid);
OapiV2UserGetResponse rsp = client.execute(req, dingToken);
apiRespPdu.setCode(0);
apiRespPdu.setData(rsp.getResult());
apiRespPdu.setMsg(rsp.getMsg());
} catch (Exception e) {
e.printStackTrace();
apiRespPdu.setCode(-1);
apiRespPdu.setData(null);
apiRespPdu.setMsg(e.toString());
}
return apiRespPdu;
}
} }
...@@ -19,19 +19,47 @@ public class TalkConfiguration { ...@@ -19,19 +19,47 @@ public class TalkConfiguration {
@Value("${dingtalk.agentId:''}") @Value("${dingtalk.agentId:''}")
private String getAgentId; private String getAgentId;
/**
* appKey
*/
@Value("${dingtalk.AppKey:''}")
private String AppKey;
/**
* AppSecret
*/
@Value("${dingtalk.AppSecret:''}")
private String AppSecret;
/** /**
* getToken * getToken
*/ */
@Value("${dingtalk.gettoken:''}") @Value("${dingtalk.gettoken:https://oapi.dingtalk.com/gettoken}")
private String getTokneUrl; private String getTokneUrl;
/** /**
* getbymobile * 获取部门列表
*/ */
@Value("${dingtalk.getbymobile:''}") @Value("${dingtalk.listsub:https://oapi.dingtalk.com/topapi/v2/department/listsub}")
private String getbymobile; private String getSubList;
/**
* 根据部门id获取用户详情列表
*/
@Value("${dingtalk.getUserList:https://oapi.dingtalk.com/topapi/v2/user/list}")
private String getuserlist;
/**
* 根据电话查询用户信息
*/
@Value("${dingtalk.getbymobile:https://oapi.dingtalk.com/topapi/v2/user/getbymobile}")
private String getbymobile;
/**
* 根据userid查询用户信息
*/
@Value("${dingtalk.getuserinfo:https://oapi.dingtalk.com/topapi/v2/user/get}")
private String getuserinfo;
/** /**
* getDeptbyUser * getDeptbyUser
*/ */
......
package com.mortals.xhx.busiz.dingtalk.req;
/**
* @author ZYW
* @date 2023-07-12 11:38
*/
public class UserPageReq {
//部门id
private Long deptid;
//起始页码
private Long cursor;
//每页条数
private Long size;
public Long getDeptid() {
return deptid;
}
public void setDeptid(Long deptid) {
this.deptid = deptid;
}
public Long getCursor() {
return cursor;
}
public void setCursor(Long cursor) {
this.cursor = cursor;
}
public Long getSize() {
return size;
}
public void setSize(Long size) {
this.size = size;
}
}
package com.mortals.xhx.busiz.req; package com.mortals.xhx.busiz.req;
import com.mortals.framework.annotation.Excel;
import com.mortals.xhx.busiz.BaseReq; import com.mortals.xhx.busiz.BaseReq;
import com.mortals.xhx.module.perform.model.PerformAttendAppealFilesEntity;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List;
@Data @Data
...@@ -20,16 +24,28 @@ public class AppealReq extends BaseReq { ...@@ -20,16 +24,28 @@ public class AppealReq extends BaseReq {
private Integer appealResult; private Integer appealResult;
private Integer processStatus; private Integer processStatus;
/** /**
* 当前员工id * 当前员工id
*/ */
private Long staffId; private Long staffId;
/**
* 核查记录id
*/
private Long Id; private Long Id;
/**
* 申诉说明
*/
private String appealDesc;
/**
* 绩效记录申诉附件信息信息
*/
private List<PerformAttendAppealFilesEntity> performAttendAppealFilesList = new ArrayList<>();
;
} }
package com.mortals.xhx.busiz.req;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.xhx.busiz.BaseReq;
import lombok.Data;
import java.util.Date;
@Data
public class AttendSaveReq extends BaseReq {
/**
* 所属考勤组ID
*/
private Long attendanceGroupId;
/**
* 所属考勤组名称
*/
private String attendanceGroupName;
/**
* 考勤时间
*/
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
private Date attendanceDate;
/**
* 异常时间
*/
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
private Date errorTime;
/**
* 上下班时间
*/
private String goOffTimeStr;
/**
* 实际打卡时间
*/
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
private Date actualAttendTime;
/**
* 异常处理结果
*/
private String errorResult;
/**
* 扩展字段
*/
private String ext;
}
package com.mortals.xhx.busiz.req;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.xhx.busiz.BaseReq;
import lombok.Data;
import java.util.Date;
@Data
public class ComplainSaveReq extends BaseReq {
/**
* 投诉标题
*/
private String complainTitle;
/**
* 投诉内容
*/
private String complainContent;
/**
* 投诉人真实姓名
*/
private String complainRealName;
/**
* 联系电话
*/
private String contact;
/**
* 投诉时间
*/
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
private Date complainTime;
/**
* 投诉来源
*/
private String complainSource;
/**
* 投诉设备
*/
private String complainDevice;
}
package com.mortals.xhx.busiz.req;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.xhx.busiz.BaseReq;
import lombok.Data;
import java.util.Date;
@Data
public class EffectSaveReq extends BaseReq {
/**
* 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
*/
private Integer irregularType;
/**
* 发生时间
*/
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
private Date happenTime;
/**
* 持续时间,秒
*/
private Integer duration;
/**
* 报警时间
*/
private Date alarmTime;
}
package com.mortals.xhx.busiz.req;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.xhx.busiz.BaseReq;
import com.mortals.xhx.module.feedback.model.FeedbackAnswerEntity;
import lombok.Data;
import java.util.Date;
import java.util.List;
@Data
public class FeedbackSaveReq extends BaseReq {
private Long feedbackId;
/**
* 用户id号
*/
private Long staffId;
private List<FeedbackAnswerEntity> feedbackAnswerList;
}
package com.mortals.xhx.busiz.req;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.xhx.busiz.BaseReq;
import lombok.Data;
import java.util.Date;
@Data
public class GoWorkSaveReq extends BaseReq {
/**
* 办件编码
*/
private String goworkCode;
/**
* 办件所属部门
*/
private String goworkDepts;
/**
* 事项名称
*/
private String matterlName;
/**
* 办理时间
*/
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
private Date goworkTime;
/**
* 扩展字段
*/
private String ext;
}
package com.mortals.xhx.busiz.req;
/**
* @author ZYW
* @date 2023-07-12 13:47
*/
public class MobileReq {
String mobile;
public String getMobile() {
return mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
}
package com.mortals.xhx.busiz.req;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.xhx.busiz.BaseReq;
import lombok.Data;
import java.util.Date;
@Data
public class OtherSaveReq extends BaseReq {
/**
* 违规类型(1.工作纪律)
*/
private Integer irregularOtherType;
/**
* 发生时间
*/
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
private Date happenTime;
/**
* 评分标准
*/
private String ruleDesc;
/**
* 扩展字段
*/
private String ext;
}
package com.mortals.xhx.busiz.req; package com.mortals.xhx.busiz.req;
import com.mortals.framework.annotation.Excel; import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.xhx.busiz.BaseReq; import com.mortals.xhx.busiz.BaseReq;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
@Data @Data
public class PerformSaveReq extends BaseReq { public class ReviewSaveReq extends BaseReq {
/**
* 工号
*/
private String workNum;
/**
* 标题
*/
private String title;
/**
* 扣分时间
*/
private Date happenTime;
/**
* 规则编码
*/
private String ruleCode;
private String phone;
/**
* 类型
*/
private String performType;
/** /**
* 评价结果(1.非常不满意,2.差评) * 评价结果(1.非常不满意,2.差评)
...@@ -47,6 +17,7 @@ public class PerformSaveReq extends BaseReq { ...@@ -47,6 +17,7 @@ public class PerformSaveReq extends BaseReq {
/** /**
* 评价时间 * 评价时间
*/ */
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
private Date reviewTime; private Date reviewTime;
/** /**
* 评价来源(窗口评价系统,导视系统,自助服务系统,微官网,其它) * 评价来源(窗口评价系统,导视系统,自助服务系统,微官网,其它)
...@@ -57,4 +28,6 @@ public class PerformSaveReq extends BaseReq { ...@@ -57,4 +28,6 @@ public class PerformSaveReq extends BaseReq {
*/ */
private String reviewDevice; private String reviewDevice;
} }
package com.mortals.xhx.busiz.rsp;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class AppealDetailInfo {
/**
* id
*/
private Long id;
/**
* 记录ID
*/
private Long recordId;
/**
* 员工ID
*/
private Long staffId;
/**
* 员工姓名
*/
private String staffName;
/**
* 工号
*/
private String workNum;
/**
* 所属部门
*/
private Long deptId;
/**
* 所属部门名称
*/
private String deptName;
/**
* 所属考勤组ID
*/
private Long attendanceGroupId;
/**
* 所属考勤组名称
*/
private String attendanceGroupName;
/**
* 考勤时间
*/
private Date attendanceDate;
/**
* 绩效规则id
*/
private Long ruleId;
/**
* 规则名称
*/
private String ruleName;
/**
* 增减类型(1.增加,2.扣除)
*/
private Integer subAddType;
/**
* 扣分或增加分值
*/
private BigDecimal score;
/**
* 上下班时间
*/
private String goOffTimeStr;
/**
* 异常时间
*/
private Date errorTime;
/**
* 实际打卡时间
*/
private Date actualAttendTime;
/**
* 异常处理结果
*/
private String errorResult;
/**
* 核查人员
*/
private String checkPerson;
/**
* 核查时间
*/
private Date checkTime;
/**
* 核查说明
*/
private String checkDesc;
/**
* 核查结果
*/
private String checkResult;
/**
* 处理状态(1.未处理,2.已处理)
*/
private Integer checkStatus;
/**
* 扣分方式(1.系统自动,2.人工添加,3.大厅巡查)
*/
private Integer subMethod;
/**
* 说明
*/
private String remark;
/**
* 评价结果(1.非常不满意,2.差评)
*/
private Integer reviewResult;
/**
* 评价时间
*/
private Date reviewTime;
/**
* 评价来源(窗口评价系统,导视系统,自助服务系统,微官网,其它)
*/
private String reviewSource;
/**
* 评价设备
*/
private String reviewDevice;
/**
* 投诉标题
*/
private String complainTitle;
/**
* 投诉内容
*/
private String complainContent;
/**
* 投诉人真实姓名
*/
private String complainRealName;
/**
* 联系电话
*/
private String contact;
/**
* 投诉时间
*/
private Date complainTime;
/**
* 投诉来源
*/
private String complainSource;
/**
* 投诉设备
*/
private String complainDevice;
/**
* 办件编码
*/
private String goworkCode;
/**
* 办件所属部门
*/
private String goworkDepts;
/**
* 事项名称
*/
private String matterlName;
/**
* 办理时间
*/
private Date goworkTime;
/**
* 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
*/
private Integer irregularType;
/**
* 发生时间
*/
private Date happenTime;
/**
* 持续时间,秒
*/
private Integer duration;
/**
* 报警时间
*/
private Date alarmTime;
/**
* 图片凭证地址
*/
private String snapPath;
/**
* 窗口编号
*/
private String windowNum;
/**
* 违规类型(1.工作纪律)
*/
private Integer irregularOtherType;
/**
* 附件名称,多个逗号分割
*/
private String fileNames;
/**
* 附件下载地址,多个逗号分割
*/
private String filePaths;
}
...@@ -119,6 +119,8 @@ public class PerformDetailInfo { ...@@ -119,6 +119,8 @@ public class PerformDetailInfo {
*/ */
private String filePaths; private String filePaths;
/** /**
* 评价结果(1.非常不满意,2.差评) * 评价结果(1.非常不满意,2.差评)
*/ */
......
...@@ -60,5 +60,10 @@ public class PerformInfo { ...@@ -60,5 +60,10 @@ public class PerformInfo {
*/ */
private String performType; private String performType;
/**
* 申诉状态(0.未申诉,1.申诉中,2.申诉拒绝,3.申诉通过)
*/
private Integer appealStatus;
} }
...@@ -80,8 +80,9 @@ public class ApiLoginController extends BaseJsonBodyController { ...@@ -80,8 +80,9 @@ public class ApiLoginController extends BaseJsonBodyController {
data.put("userType", userEntity.getUserType()); data.put("userType", userEntity.getUserType());
HashSet<Integer> set = new HashSet<>(); HashSet<Integer> set = new HashSet<>();
set.add(1); set.add(0);
set.add(2); set.add(2);
set.add(3);
if (ObjectUtils.isEmpty(userEntity.getUserType()) || !set.contains(userEntity.getUserType())) { if (ObjectUtils.isEmpty(userEntity.getUserType()) || !set.contains(userEntity.getUserType())) {
throw new AppException("当前用户不支持H5登录!"); throw new AppException("当前用户不支持H5登录!");
...@@ -89,7 +90,7 @@ public class ApiLoginController extends BaseJsonBodyController { ...@@ -89,7 +90,7 @@ public class ApiLoginController extends BaseJsonBodyController {
userEntity.setLoginTime(System.currentTimeMillis()); userEntity.setLoginTime(System.currentTimeMillis());
userEntity.setToken(IdUtil.fastSimpleUUID()); userEntity.setToken(IdUtil.fastSimpleUUID());
userEntity.setExpireTime(DateUtils.addCurrDate(7).getTime()); userEntity.setExpireTime(DateUtils.addCurrDate(3).getTime());
String token = authTokenService.createToken(userEntity); String token = authTokenService.createToken(userEntity);
data.put("token", token); data.put("token", token);
ret.put(KEY_RESULT_DATA, data); ret.put(KEY_RESULT_DATA, data);
......
...@@ -2,20 +2,20 @@ package com.mortals.xhx.busiz.web; ...@@ -2,20 +2,20 @@ package com.mortals.xhx.busiz.web;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.mortals.framework.annotation.UnAuth;
import com.mortals.framework.common.Rest;
import com.mortals.framework.exception.AppException; import com.mortals.framework.exception.AppException;
import com.mortals.xhx.base.framework.annotation.ApiUserAuth; import com.mortals.xhx.base.framework.annotation.ApiUserAuth;
import com.mortals.xhx.busiz.req.PerformReq; import com.mortals.xhx.busiz.req.*;
import com.mortals.xhx.busiz.req.PerformSaveReq;
import com.mortals.xhx.busiz.rsp.ApiResp; import com.mortals.xhx.busiz.rsp.ApiResp;
import com.mortals.xhx.common.code.ApiRespCodeEnum; import com.mortals.xhx.common.code.ApiRespCodeEnum;
import com.mortals.xhx.common.code.PerformTypeEnum; import com.mortals.xhx.common.code.PerformTypeEnum;
import com.mortals.xhx.module.perform.model.PerformAttendRecordEntity; import com.mortals.xhx.module.perform.model.*;
import com.mortals.xhx.module.perform.model.PerformReviewRecordEntity;
import com.mortals.xhx.module.perform.model.PerformRulesEntity;
import com.mortals.xhx.module.perform.service.*; import com.mortals.xhx.module.perform.service.*;
import com.mortals.xhx.module.staff.model.StaffEntity; import com.mortals.xhx.module.staff.model.StaffEntity;
import com.mortals.xhx.module.staff.model.StaffQuery; import com.mortals.xhx.module.staff.model.StaffQuery;
import com.mortals.xhx.module.staff.service.StaffService; import com.mortals.xhx.module.staff.service.StaffService;
import javafx.scene.effect.Effect;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -30,7 +30,7 @@ import java.util.Date; ...@@ -30,7 +30,7 @@ import java.util.Date;
@RestController @RestController
@Slf4j @Slf4j
@RequestMapping("/api/v1/web/perform") @RequestMapping("/api/v1/web/")
public class ApiWebPerformController extends AbstractBaseController<PerformReq> { public class ApiWebPerformController extends AbstractBaseController<PerformReq> {
@Autowired @Autowired
...@@ -52,65 +52,173 @@ public class ApiWebPerformController extends AbstractBaseController<PerformReq> ...@@ -52,65 +52,173 @@ public class ApiWebPerformController extends AbstractBaseController<PerformReq>
/** /**
* 绩效外部新增 * 考勤新增
* *
* @param req * @param req
* @return * @return
*/ */
@PostMapping("save") @PostMapping("attend/save")
@ApiUserAuth @UnAuth
public String receive(HttpServletRequest request, @RequestBody PerformSaveReq req) { public Rest<Void> attendSave(@RequestBody AttendSaveReq req) {
ApiResp<String> rsp = new ApiResp<>();
rsp.setMsg(ApiRespCodeEnum.SUCCESS.getLabel()); String busiDesc = "外部考勤新增";
rsp.setCode(ApiRespCodeEnum.SUCCESS.getValue()); Rest rest = Rest.ok(busiDesc + "成功!");
StringBuilder message = new StringBuilder(); StringBuilder message = new StringBuilder();
message.append(String.format("【外部请求】类型【%s】 内容:%s", PerformTypeEnum.getByValue(req.getPerformType()).getDesc(), JSONObject.toJSONString(req))); message.append(String.format("【外部请求】类型【%s】 内容:%s", PerformTypeEnum.getByValue(req.getPerformType()).getDesc(), JSONObject.toJSONString(req)));
try { try {
if (ObjectUtils.isEmpty(req.getPhone())) throw new AppException("手机号码不能为空!"); if (ObjectUtils.isEmpty(req.getPhone())) throw new AppException("手机号码不能为空!");
if (ObjectUtils.isEmpty(req.getRuleCode())) throw new AppException("绩效规则编码不能为空!"); if (ObjectUtils.isEmpty(req.getRuleCode())) throw new AppException("绩效规则编码不能为空!");
boolean bool = attend(req);
if (!bool) throw new AppException(busiDesc + "失败!");
} catch (Exception e) {
log.error(busiDesc, e);
return Rest.fail(e.getMessage());
}
log.info("响应【{}】【响应体】--> {} ", busiDesc, JSONObject.toJSONString(rest));
return rest;
}
/**
* 评价新增
*
* @param req
* @return
*/
@PostMapping("review/save")
@UnAuth
public Rest<Void> reviewSave(@RequestBody ReviewSaveReq req) {
switch (PerformTypeEnum.getByValue(req.getPerformType())) { String busiDesc = "外部评价新增";
case 考勤绩效: Rest rest = Rest.ok(busiDesc + "成功!");
attend(req); StringBuilder message = new StringBuilder();
break; message.append(String.format("【外部请求】类型【%s】 内容:%s", PerformTypeEnum.getByValue(req.getPerformType()).getDesc(), JSONObject.toJSONString(req)));
case 评价差评绩效: try {
review(req); if (ObjectUtils.isEmpty(req.getPhone())) throw new AppException("手机号码不能为空!");
break; if (ObjectUtils.isEmpty(req.getRuleCode())) throw new AppException("绩效规则编码不能为空!");
case 评价投诉绩效: boolean bool = review(req);
complain(req); if (!bool) throw new AppException(busiDesc + "失败!");
break; } catch (Exception e) {
case 办件绩效: log.error(busiDesc, e);
gowork(req); return Rest.fail(e.getMessage());
break; }
case 效能绩效: log.info("响应【{}】【响应体】--> {} ", busiDesc, JSONObject.toJSONString(rest));
effect(req); return rest;
break; }
case 其它绩效:
other(req); /**
break; * 投诉新增
} *
} catch (AppException e) { * @param req
log.error("接收数据失败", e); * @return
rsp.setCode(e.getCode()); */
rsp.setMsg(e.getMessage()); @PostMapping("complain/save")
return JSON.toJSONString(rsp); @UnAuth
public Rest<Void> complainSave(@RequestBody ComplainSaveReq req) {
String busiDesc = "外部投诉新增";
Rest rest = Rest.ok(busiDesc + "成功!");
StringBuilder message = new StringBuilder();
message.append(String.format("【外部请求】类型【%s】 内容:%s", PerformTypeEnum.getByValue(req.getPerformType()).getDesc(), JSONObject.toJSONString(req)));
try {
if (ObjectUtils.isEmpty(req.getPhone())) throw new AppException("手机号码不能为空!");
if (ObjectUtils.isEmpty(req.getRuleCode())) throw new AppException("绩效规则编码不能为空!");
boolean bool = complain(req);
if (!bool) throw new AppException(busiDesc + "失败!");
} catch (Exception e) {
log.error(busiDesc, e);
return Rest.fail(e.getMessage());
}
log.info("响应【{}】【响应体】--> {} ", busiDesc, JSONObject.toJSONString(rest));
return rest;
}
/**
* 办件新增
*
* @param req
* @return
*/
@PostMapping("gowork/save")
@UnAuth
public Rest<Void> goworkSave(@RequestBody GoWorkSaveReq req) {
String busiDesc = "外部办件新增";
Rest rest = Rest.ok(busiDesc + "成功!");
StringBuilder message = new StringBuilder();
message.append(String.format("【外部请求】类型【%s】 内容:%s", PerformTypeEnum.getByValue(req.getPerformType()).getDesc(), JSONObject.toJSONString(req)));
try {
if (ObjectUtils.isEmpty(req.getPhone())) throw new AppException("手机号码不能为空!");
if (ObjectUtils.isEmpty(req.getRuleCode())) throw new AppException("绩效规则编码不能为空!");
boolean bool = gowork(req);
if (!bool) throw new AppException(busiDesc + "失败!");
} catch (Exception e) {
log.error(busiDesc, e);
return Rest.fail(e.getMessage());
}
log.info("响应【{}】【响应体】--> {} ", busiDesc, JSONObject.toJSONString(rest));
return rest;
}
/**
* 效能新增
*
* @param req
* @return
*/
@PostMapping("effect/save")
@UnAuth
public Rest<Void> effectSave(@RequestBody EffectSaveReq req) {
String busiDesc = "外部效能新增";
Rest rest = Rest.ok(busiDesc + "成功!");
StringBuilder message = new StringBuilder();
message.append(String.format("【外部请求】类型【%s】 内容:%s", PerformTypeEnum.getByValue(req.getPerformType()).getDesc(), JSONObject.toJSONString(req)));
try {
if (ObjectUtils.isEmpty(req.getPhone())) throw new AppException("手机号码不能为空!");
if (ObjectUtils.isEmpty(req.getRuleCode())) throw new AppException("绩效规则编码不能为空!");
boolean bool = effect(req);
if (!bool) throw new AppException(busiDesc + "失败!");
} catch (Exception e) {
log.error(busiDesc, e);
return Rest.fail(e.getMessage());
}
log.info("响应【{}】【响应体】--> {} ", busiDesc, JSONObject.toJSONString(rest));
return rest;
}
/**
* 其它新增
*
* @param req
* @return
*/
@PostMapping("other/save")
@UnAuth
public Rest<Void> otherSave(@RequestBody OtherSaveReq req) {
String busiDesc = "外部其它绩效新增";
Rest rest = Rest.ok(busiDesc + "成功!");
StringBuilder message = new StringBuilder();
message.append(String.format("【外部请求】类型【%s】 内容:%s", PerformTypeEnum.getByValue(req.getPerformType()).getDesc(), JSONObject.toJSONString(req)));
try {
if (ObjectUtils.isEmpty(req.getPhone())) throw new AppException("手机号码不能为空!");
if (ObjectUtils.isEmpty(req.getRuleCode())) throw new AppException("绩效规则编码不能为空!");
boolean bool = other(req);
if (!bool) throw new AppException(busiDesc + "失败!");
} catch (Exception e) { } catch (Exception e) {
log.error("接收数据失败", e); log.error(busiDesc, e);
rsp.setCode(ApiRespCodeEnum.FAILED.getValue()); return Rest.fail(e.getMessage());
rsp.setMsg(e.getMessage());
return JSON.toJSONString(rsp);
} }
recordSysLog(request, message.toString()); log.info("响应【{}】【响应体】--> {} ", busiDesc, JSONObject.toJSONString(rest));
log.info("响应【设备接收】【响应体】--> " + JSONObject.toJSONString(rsp)); return rest;
return JSON.toJSONString(rsp);
} }
private void attend(PerformSaveReq req) throws AppException {
private boolean attend(AttendSaveReq req) throws AppException {
//考勤保存 //考勤保存
//通过手机号码查询员工属性 //通过手机号码查询员工属性
StaffEntity staffEntity = getStaff(req); PerformRulesEntity rule = getRule(req.getRuleCode());
PerformRulesEntity rule = getRule(req); StaffEntity staffEntity = getStaff(req.getPhone());
PerformAttendRecordEntity recordEntity = new PerformAttendRecordEntity(); PerformAttendRecordEntity recordEntity = new PerformAttendRecordEntity();
recordEntity.initAttrValue(); recordEntity.initAttrValue();
...@@ -126,17 +234,19 @@ public class ApiWebPerformController extends AbstractBaseController<PerformReq> ...@@ -126,17 +234,19 @@ public class ApiWebPerformController extends AbstractBaseController<PerformReq>
recordEntity.setCategoryId(rule.getCategoryId()); recordEntity.setCategoryId(rule.getCategoryId());
recordEntity.setCategoryName(rule.getCategoryName()); recordEntity.setCategoryName(rule.getCategoryName());
recordEntity.setCreateUserId(1L); recordEntity.setCreateUserId(1L);
recordEntity.setCreateTime(new Date()); recordEntity.setCreateTime(new Date());
attendRecordService.save(recordEntity); PerformAttendRecordEntity save = attendRecordService.save(recordEntity);
return save.newEntity();
} }
private void review(PerformSaveReq req) throws AppException { private boolean review(ReviewSaveReq req) throws AppException {
//评价保存 //评价保存
StaffEntity staffEntity = getStaff(req); StaffEntity staffEntity = getStaff(req.getPhone());
PerformRulesEntity rule = getRule(req); PerformRulesEntity rule = getRule(req.getRuleCode());
PerformReviewRecordEntity recordEntity = new PerformReviewRecordEntity(); PerformReviewRecordEntity recordEntity = new PerformReviewRecordEntity();
...@@ -144,8 +254,6 @@ public class ApiWebPerformController extends AbstractBaseController<PerformReq> ...@@ -144,8 +254,6 @@ public class ApiWebPerformController extends AbstractBaseController<PerformReq>
BeanUtils.copyProperties(req, recordEntity); BeanUtils.copyProperties(req, recordEntity);
recordEntity.setStaffId(staffEntity.getId()); recordEntity.setStaffId(staffEntity.getId());
recordEntity.setStaffName(staffEntity.getName()); recordEntity.setStaffName(staffEntity.getName());
recordEntity.setSubAddType(rule.getSubAddType()); recordEntity.setSubAddType(rule.getSubAddType());
recordEntity.setScore(rule.getScore()); recordEntity.setScore(rule.getScore());
recordEntity.setRuleId(rule.getId()); recordEntity.setRuleId(rule.getId());
...@@ -153,49 +261,130 @@ public class ApiWebPerformController extends AbstractBaseController<PerformReq> ...@@ -153,49 +261,130 @@ public class ApiWebPerformController extends AbstractBaseController<PerformReq>
recordEntity.setCategoryId(rule.getCategoryId()); recordEntity.setCategoryId(rule.getCategoryId());
recordEntity.setCategoryName(rule.getCategoryName()); recordEntity.setCategoryName(rule.getCategoryName());
recordEntity.setCreateUserId(1L); recordEntity.setCreateUserId(1L);
recordEntity.setCreateTime(new Date()); recordEntity.setCreateTime(new Date());
reviewRecordService.save(recordEntity); PerformReviewRecordEntity save = reviewRecordService.save(recordEntity);
return save.newEntity();
} }
private void complain(PerformSaveReq req) throws AppException { private boolean complain(ComplainSaveReq req) throws AppException {
//投诉保存 //投诉保存
StaffEntity staffEntity = getStaff(req.getPhone());
PerformRulesEntity rule = getRule(req.getRuleCode());
PerformComplainRecordEntity recordEntity = new PerformComplainRecordEntity();
recordEntity.initAttrValue();
BeanUtils.copyProperties(req, recordEntity);
recordEntity.setStaffId(staffEntity.getId());
recordEntity.setStaffName(staffEntity.getName());
recordEntity.setSubAddType(rule.getSubAddType());
recordEntity.setScore(rule.getScore());
recordEntity.setRuleId(rule.getId());
recordEntity.setRuleName(rule.getName());
recordEntity.setCategoryId(rule.getCategoryId());
recordEntity.setCategoryName(rule.getCategoryName());
recordEntity.setCreateUserId(1L);
recordEntity.setCreateTime(new Date());
PerformComplainRecordEntity save = complainRecordService.save(recordEntity);
return save.newEntity();
} }
private void gowork(PerformSaveReq req) throws AppException { private boolean gowork(GoWorkSaveReq req) throws AppException {
//办件保存 //办件保存
StaffEntity staffEntity = getStaff(req.getPhone());
PerformRulesEntity rule = getRule(req.getRuleCode());
PerformGoworkRecordEntity recordEntity = new PerformGoworkRecordEntity();
recordEntity.initAttrValue();
BeanUtils.copyProperties(req, recordEntity);
recordEntity.setStaffId(staffEntity.getId());
recordEntity.setStaffName(staffEntity.getName());
recordEntity.setSubAddType(rule.getSubAddType());
recordEntity.setScore(rule.getScore());
recordEntity.setRuleId(rule.getId());
recordEntity.setRuleName(rule.getName());
recordEntity.setCategoryId(rule.getCategoryId());
recordEntity.setCategoryName(rule.getCategoryName());
recordEntity.setCreateUserId(1L);
recordEntity.setCreateTime(new Date());
PerformGoworkRecordEntity save = performGoworkRecordService.save(recordEntity);
return save.newEntity();
} }
private void effect(PerformSaveReq req) throws AppException { private boolean effect(EffectSaveReq req) throws AppException {
//效能保存 //效能保存
StaffEntity staffEntity = getStaff(req.getPhone());
PerformRulesEntity rule = getRule(req.getRuleCode());
PerformEffectRecordEntity recordEntity = new PerformEffectRecordEntity();
recordEntity.initAttrValue();
BeanUtils.copyProperties(req, recordEntity);
recordEntity.setStaffId(staffEntity.getId());
recordEntity.setStaffName(staffEntity.getName());
recordEntity.setSubAddType(rule.getSubAddType());
recordEntity.setScore(rule.getScore());
recordEntity.setRuleId(rule.getId());
recordEntity.setRuleName(rule.getName());
recordEntity.setCategoryId(rule.getCategoryId());
recordEntity.setCategoryName(rule.getCategoryName());
recordEntity.setCreateUserId(1L);
recordEntity.setCreateTime(new Date());
PerformEffectRecordEntity save = effectRecordService.save(recordEntity);
return save.newEntity();
} }
private void other(PerformSaveReq req) throws AppException { private boolean other(OtherSaveReq req) throws AppException {
//其它保存 //其它保存
}
StaffEntity staffEntity = getStaff(req.getPhone());
PerformRulesEntity rule = getRule(req.getRuleCode());
PerformOtherRecordEntity recordEntity = new PerformOtherRecordEntity();
recordEntity.initAttrValue();
BeanUtils.copyProperties(req, recordEntity);
recordEntity.setStaffId(staffEntity.getId());
recordEntity.setStaffName(staffEntity.getName());
recordEntity.setSubAddType(rule.getSubAddType());
recordEntity.setScore(rule.getScore());
recordEntity.setRuleId(rule.getId());
recordEntity.setRuleName(rule.getName());
recordEntity.setCategoryId(rule.getCategoryId());
recordEntity.setCategoryName(rule.getCategoryName());
recordEntity.setCreateUserId(1L);
recordEntity.setCreateTime(new Date());
PerformOtherRecordEntity save = otherRecordService.save(recordEntity);
return save.newEntity();
}
private PerformRulesEntity getRule(PerformSaveReq req) { private PerformRulesEntity getRule(String ruleCode) {
PerformRulesEntity rule = rulesService.getCache(req.getRuleCode()); PerformRulesEntity rule = rulesService.getCache(ruleCode);
if (ObjectUtils.isEmpty(rule)) if (ObjectUtils.isEmpty(rule))
throw new AppException(String.format("当前手机号码未找到匹配的员工!rule:%s", req.getPhone())); throw new AppException(String.format("当前手机号码未找到匹配的员工!rule:%s", ruleCode));
return rule; return rule;
} }
private StaffEntity getStaff(PerformSaveReq req) { private StaffEntity getStaff(String phone) {
StaffEntity staffEntity = staffService.selectOne(new StaffQuery().phoneNumber(req.getPhone())); StaffEntity staffEntity = staffService.selectOne(new StaffQuery().phoneNumber(phone));
if (ObjectUtils.isEmpty(staffEntity)) if (ObjectUtils.isEmpty(staffEntity))
throw new AppException(String.format("当前手机号码未找到匹配的员工!phone:%s", req.getPhone())); throw new AppException(String.format("当前手机号码未找到匹配的员工!phone:%s", phone));
return staffEntity; return staffEntity;
} }
public static void main(String[] args) { public static void main(String[] args) {
} }
......
...@@ -10,14 +10,11 @@ import com.mortals.framework.exception.AppException; ...@@ -10,14 +10,11 @@ import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.framework.model.PageInfo; import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result; import com.mortals.framework.model.Result;
import com.mortals.framework.web.BaseJsonBodyController;
import com.mortals.xhx.busiz.req.AppealReq; import com.mortals.xhx.busiz.req.AppealReq;
import com.mortals.xhx.busiz.req.PerformReq; import com.mortals.xhx.busiz.req.PerformReq;
import com.mortals.xhx.busiz.rsp.AppealStatInfo; import com.mortals.xhx.busiz.rsp.AppealStatInfo;
import com.mortals.xhx.busiz.rsp.PerformDetailInfo;
import com.mortals.xhx.busiz.rsp.PerformInfo;
import com.mortals.xhx.busiz.rsp.PerformStatInfo;
import com.mortals.xhx.common.code.PerformTypeEnum; import com.mortals.xhx.common.code.PerformTypeEnum;
import com.mortals.xhx.common.code.ProcessStatusEnum;
import com.mortals.xhx.common.utils.BeanUtil; import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.model.*; import com.mortals.xhx.module.check.model.*;
import com.mortals.xhx.module.check.service.*; import com.mortals.xhx.module.check.service.*;
...@@ -25,7 +22,6 @@ import com.mortals.xhx.module.perform.model.PerformAttendAppealEntity; ...@@ -25,7 +22,6 @@ import com.mortals.xhx.module.perform.model.PerformAttendAppealEntity;
import com.mortals.xhx.module.perform.model.PerformAttendAppealQuery; import com.mortals.xhx.module.perform.model.PerformAttendAppealQuery;
import com.mortals.xhx.module.perform.service.PerformAttendAppealService; import com.mortals.xhx.module.perform.service.PerformAttendAppealService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.checkerframework.checker.units.qual.A;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
...@@ -36,9 +32,7 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -36,9 +32,7 @@ import org.springframework.web.bind.annotation.RestController;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors;
import static com.mortals.framework.ap.SysConstains.*; import static com.mortals.framework.ap.SysConstains.*;
import static com.mortals.xhx.common.key.ErrorCode.ERROR_TOKEN_EXPIRED; import static com.mortals.xhx.common.key.ErrorCode.ERROR_TOKEN_EXPIRED;
...@@ -56,7 +50,22 @@ import static com.mortals.xhx.common.key.ErrorCode.ERROR_TOKEN_EXPIRED_CONTENT; ...@@ -56,7 +50,22 @@ import static com.mortals.xhx.common.key.ErrorCode.ERROR_TOKEN_EXPIRED_CONTENT;
public class AppealApiController extends AbstractBaseController<PerformReq> { public class AppealApiController extends AbstractBaseController<PerformReq> {
@Autowired @Autowired
private PerformAttendAppealService attendAppealService; private CheckAttendRecordService checkAttendRecordService;
@Autowired
private CheckReviewRecordService checkReviewRecordService;
@Autowired
private CheckComplainRecordService checkComplainRecordService;
@Autowired
private CheckEffectRecordService checkEffectRecordService;
@Autowired
private CheckGoworkRecordService checkGoworkRecordService;
@Autowired
private CheckOtherRecordService checkOtherRecordService;
@Autowired
private PerformAttendAppealService appealService;
/** /**
* 个人申诉绩效统计 * 个人申诉绩效统计
...@@ -105,6 +114,10 @@ public class AppealApiController extends AbstractBaseController<PerformReq> { ...@@ -105,6 +114,10 @@ public class AppealApiController extends AbstractBaseController<PerformReq> {
//未设置时间的情况,默认为当月 //未设置时间的情况,默认为当月
appealReq.setApperalStartDate(DateUtil.beginOfMonth(new Date()).toDateStr()); appealReq.setApperalStartDate(DateUtil.beginOfMonth(new Date()).toDateStr());
appealReq.setAppealEndDate(DateUtil.today()); appealReq.setAppealEndDate(DateUtil.today());
}else{
//格式化到指定日期的当月
appealReq.setApperalStartDate(DateUtil.beginOfMonth(DateUtil.parse(appealReq.getApperalStartDate()).toJdkDate()).toDateStr());
appealReq.setAppealEndDate(DateUtil.endOfMonth(DateUtil.parse(appealReq.getApperalStartDate()).toJdkDate()).toDateStr());
} }
PageInfo pageInfo = buildPageInfo(appealReq); PageInfo pageInfo = buildPageInfo(appealReq);
PerformAttendAppealQuery query = new PerformAttendAppealQuery(); PerformAttendAppealQuery query = new PerformAttendAppealQuery();
...@@ -112,7 +125,7 @@ public class AppealApiController extends AbstractBaseController<PerformReq> { ...@@ -112,7 +125,7 @@ public class AppealApiController extends AbstractBaseController<PerformReq> {
query.setAppealTimeEnd(appealReq.getAppealEndDate()); query.setAppealTimeEnd(appealReq.getAppealEndDate());
query.setStaffId(context.getUser().getCustomerId()); query.setStaffId(context.getUser().getCustomerId());
Result<PerformAttendAppealEntity> result = attendAppealService.find(query, pageInfo, context); Result<PerformAttendAppealEntity> result = appealService.find(query, pageInfo, context);
model.put(KEY_RESULT_DATA, result.getList()); model.put(KEY_RESULT_DATA, result.getList());
model.put(PAGEINFO_KEY, result.getPageInfo()); model.put(PAGEINFO_KEY, result.getPageInfo());
parsePageInfo(model, result.getPageInfo()); parsePageInfo(model, result.getPageInfo());
...@@ -139,7 +152,7 @@ public class AppealApiController extends AbstractBaseController<PerformReq> { ...@@ -139,7 +152,7 @@ public class AppealApiController extends AbstractBaseController<PerformReq> {
if (ObjectUtils.isEmpty(appealReq.getId())) { if (ObjectUtils.isEmpty(appealReq.getId())) {
throw new AppException("详细查询id不能为空!"); throw new AppException("详细查询id不能为空!");
} }
PerformAttendAppealEntity performAttendAppealEntity = attendAppealService.get(appealReq.getId(), context); PerformAttendAppealEntity performAttendAppealEntity = appealService.get(appealReq.getId(), context);
rest.setData(performAttendAppealEntity); rest.setData(performAttendAppealEntity);
recordSysLog(request, busiDesc + " 【成功】"); recordSysLog(request, busiDesc + " 【成功】");
...@@ -155,21 +168,62 @@ public class AppealApiController extends AbstractBaseController<PerformReq> { ...@@ -155,21 +168,62 @@ public class AppealApiController extends AbstractBaseController<PerformReq> {
* 申诉新增 * 申诉新增
*/ */
@PostMapping(value = "save") @PostMapping(value = "save")
public Rest<PerformAttendAppealEntity> appealSave(@RequestBody PerformAttendAppealEntity appealEntity) { public Rest<PerformAttendAppealEntity> appealSave(@RequestBody AppealReq req) {
String busiDesc = "个人申诉新增"; String busiDesc = "个人申诉新增";
log.info("【{}】【请求体】--> {}", busiDesc, JSONObject.toJSONString(appealEntity)); log.info("【{}】【请求体】--> {}", busiDesc, JSONObject.toJSONString(req));
Rest<PerformAttendAppealEntity> rest = Rest.ok(busiDesc + " 【成功】"); Rest<PerformAttendAppealEntity> rest = Rest.ok(busiDesc + " 【成功】");
Context context = this.getContext(); Context context = this.getContext();
try { try {
//校验 去重 //根据状态 查询 当前是否已经存在正在进行的申诉
PerformAttendAppealEntity saveEntity = attendAppealService.save(appealEntity, context); if (ObjectUtils.isEmpty(req.getId())) throw new AppException("核查记录Id不能为空!");
if (ObjectUtils.isEmpty(req.getPerformType())) throw new AppException("绩效类型不能为空!");
//查询当前核查是否已存在进行中的申诉记录
PerformAttendAppealEntity appealEntity = appealService.selectOne(new PerformAttendAppealQuery().checkRecordId(req.getId()));
if (!ObjectUtils.isEmpty(appealEntity) && appealEntity.getProcessStatus() == ProcessStatusEnum.未处理.getValue()) {
throw new AppException("当前绩效核查已经存在正在进行中的申诉记录!");
}
PerformAttendAppealEntity entity = new PerformAttendAppealEntity();
entity.initAttrValue();
if (PerformTypeEnum.考勤绩效.getValue().equals(req.getPerformType())) {
CheckAttendRecordEntity checkEntity = checkAttendRecordService.get(req.getId(), context);
BeanUtils.copyProperties(checkEntity, entity, BeanUtil.getNullPropertyNames(checkEntity));
} else if (PerformTypeEnum.评价差评绩效.getValue().equals(req.getPerformType())) {
CheckReviewRecordEntity checkEntity = checkReviewRecordService.get(req.getId(), context);
BeanUtils.copyProperties(checkEntity, entity, BeanUtil.getNullPropertyNames(checkEntity));
} else if (PerformTypeEnum.评价投诉绩效.getValue().equals(req.getPerformType())) {
CheckComplainRecordEntity checkEntity = checkComplainRecordService.get(req.getId(), context);
BeanUtils.copyProperties(checkEntity, entity, BeanUtil.getNullPropertyNames(checkEntity));
} else if (PerformTypeEnum.办件绩效.getValue().equals(req.getPerformType())) {
CheckGoworkRecordEntity checkEntity = checkGoworkRecordService.get(req.getId(), context);
BeanUtils.copyProperties(checkEntity, entity, BeanUtil.getNullPropertyNames(checkEntity));
} else if (PerformTypeEnum.效能绩效.getValue().equals(req.getPerformType())) {
CheckEffectRecordEntity checkEntity = checkEffectRecordService.get(req.getId(), context);
BeanUtils.copyProperties(checkEntity, entity, BeanUtil.getNullPropertyNames(checkEntity));
} else if (PerformTypeEnum.其它绩效.getValue().equals(req.getPerformType())) {
CheckOtherRecordEntity checkEntity = checkOtherRecordService.get(req.getId(), context);
BeanUtils.copyProperties(checkEntity, entity, BeanUtil.getNullPropertyNames(checkEntity));
} else {
throw new AppException("不支持当前绩效类型");
}
entity.setPerformType(req.getPerformType());
entity.setPerformAttendAppealFilesList(req.getPerformAttendAppealFilesList());
entity.setProcessStatus(1);
entity.setAppealDesc(req.getAppealDesc());
PerformAttendAppealEntity saveEntity = appealService.save(entity, context);
rest.setData(saveEntity); rest.setData(saveEntity);
recordSysLog(request, busiDesc + " 【成功】"); recordSysLog(request, busiDesc + " 【成功】");
} catch (Exception e) { } catch (Exception e) {
log.error(busiDesc, e); log.error(busiDesc, e);
rest = Rest.fail(super.convertException(e)); rest = Rest.fail(super.convertException(e));
} }
log.info("【{}】【响应体】--> {}", busiDesc, JSONObject.toJSONString(appealEntity)); log.info("【{}】【响应体】--> {}", busiDesc, JSONObject.toJSONString(req));
return rest; return rest;
} }
......
...@@ -7,19 +7,13 @@ import com.mortals.framework.common.Rest; ...@@ -7,19 +7,13 @@ import com.mortals.framework.common.Rest;
import com.mortals.framework.exception.AppException; import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.framework.model.PageInfo; import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result;
import com.mortals.framework.web.BaseJsonBodyController;
import com.mortals.xhx.busiz.req.AppealReq;
import com.mortals.xhx.busiz.req.FeedbackReq; import com.mortals.xhx.busiz.req.FeedbackReq;
import com.mortals.xhx.busiz.req.PerformReq; import com.mortals.xhx.busiz.req.FeedbackSaveReq;
import com.mortals.xhx.busiz.rsp.AppealStatInfo;
import com.mortals.xhx.common.code.YesNoEnum; import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.module.check.service.*; import com.mortals.xhx.module.feedback.model.*;
import com.mortals.xhx.module.feedback.model.FeedbackEntity; import com.mortals.xhx.module.feedback.service.FeedbackAnswerService;
import com.mortals.xhx.module.feedback.model.FeedbackStaffEntity;
import com.mortals.xhx.module.feedback.service.FeedbackService; import com.mortals.xhx.module.feedback.service.FeedbackService;
import com.mortals.xhx.module.perform.model.PerformAttendAppealEntity; import com.mortals.xhx.module.feedback.service.FeedbackStaffService;
import com.mortals.xhx.module.perform.model.PerformAttendAppealQuery;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
...@@ -32,6 +26,7 @@ import java.util.Date; ...@@ -32,6 +26,7 @@ import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors;
import static com.mortals.framework.ap.SysConstains.*; import static com.mortals.framework.ap.SysConstains.*;
import static com.mortals.xhx.common.key.ErrorCode.ERROR_TOKEN_EXPIRED; import static com.mortals.xhx.common.key.ErrorCode.ERROR_TOKEN_EXPIRED;
...@@ -50,6 +45,10 @@ public class FeedbackApiController extends AbstractBaseController<FeedbackReq> { ...@@ -50,6 +45,10 @@ public class FeedbackApiController extends AbstractBaseController<FeedbackReq> {
@Autowired @Autowired
private FeedbackService feedbackService; private FeedbackService feedbackService;
@Autowired
private FeedbackStaffService feedbackStaffService;
@Autowired
private FeedbackAnswerService answerService;
/** /**
* 反馈列表 * 反馈列表
...@@ -70,20 +69,41 @@ public class FeedbackApiController extends AbstractBaseController<FeedbackReq> { ...@@ -70,20 +69,41 @@ public class FeedbackApiController extends AbstractBaseController<FeedbackReq> {
//未设置时间的情况,默认为当月 //未设置时间的情况,默认为当月
feedbackReq.setFeedBackStartDate(DateUtil.beginOfMonth(new Date()).toDateStr()); feedbackReq.setFeedBackStartDate(DateUtil.beginOfMonth(new Date()).toDateStr());
feedbackReq.setFeedBackEndDate(DateUtil.today()); feedbackReq.setFeedBackEndDate(DateUtil.today());
} else {
//格式化到指定日期的当月
feedbackReq.setFeedBackStartDate(DateUtil.beginOfMonth(DateUtil.parse(feedbackReq.getFeedBackStartDate()).toJdkDate()).toDateStr());
feedbackReq.setFeedBackEndDate(DateUtil.endOfMonth(DateUtil.parse(feedbackReq.getFeedBackStartDate()).toJdkDate()).toDateStr());
} }
PageInfo pageInfo = buildPageInfo(feedbackReq); //PageInfo pageInfo = buildPageInfo(feedbackReq);
//todo //todo
PageInfo pageAllInfo = new PageInfo();
if (YesNoEnum.YES.getValue() == feedbackReq.getFeedbackStatus()) { if (YesNoEnum.YES.getValue() == feedbackReq.getFeedbackStatus()) {
//已反馈 //已反馈
//查询我已经回答过的
List<Long> feedbackIdList = answerService.find(new FeedbackAnswerQuery().staffId(context.getUser().getCustomerId())).stream().map(i -> i.getFeedbackId()).distinct().collect(Collectors.toList());
FeedbackQuery feedbackQuery = new FeedbackQuery();
feedbackQuery.setIdList(feedbackIdList);
List<FeedbackEntity> feedbackEntities = feedbackService.find(feedbackQuery);
model.put(KEY_RESULT_DATA, feedbackEntities);
pageAllInfo.setTotalResult(feedbackEntities.size());
} else { } else {
//未反馈 //未反馈
} //查询我的反馈 但是还未回答的
List<Long> feedbackIdList = answerService.find(new FeedbackAnswerQuery().staffId(context.getUser().getCustomerId())).stream().map(i -> i.getFeedbackId()).distinct().collect(Collectors.toList());
FeedbackStaffQuery feedbackStaffQuery = new FeedbackStaffQuery();
feedbackStaffQuery.setFeedbackIdNotList(feedbackIdList);
feedbackStaffQuery.setStaffId(context.getUser().getCustomerId());
List<Long> unfinFeedbackList = feedbackStaffService.find(feedbackStaffQuery).stream().map(i -> i.getFeedbackId()).distinct().collect(Collectors.toList());
model.put(KEY_RESULT_DATA, unfinFeedbackList);
pageAllInfo.setTotalResult(unfinFeedbackList.size());
}
// model.put(KEY_RESULT_DATA, result.getList()); pageAllInfo.setCurrPage(1);
// model.put(PAGEINFO_KEY, result.getPageInfo()); pageAllInfo.setPrePageResult(-1);
// parsePageInfo(model, result.getPageInfo()); model.put(PAGEINFO_KEY, pageAllInfo);
parsePageInfo(model, pageAllInfo);
recordSysLog(request, busiDesc + " 【成功】"); recordSysLog(request, busiDesc + " 【成功】");
} catch (Exception e) { } catch (Exception e) {
...@@ -97,19 +117,40 @@ public class FeedbackApiController extends AbstractBaseController<FeedbackReq> { ...@@ -97,19 +117,40 @@ public class FeedbackApiController extends AbstractBaseController<FeedbackReq> {
* 反馈问卷新增 * 反馈问卷新增
*/ */
@PostMapping(value = "save") @PostMapping(value = "save")
public Rest<FeedbackEntity> feedbackSave(@RequestBody FeedbackEntity feedbackEntity) { public Rest<FeedbackEntity> feedbackAnswerSave(@RequestBody FeedbackSaveReq req) {
Context context = this.getContext(); Context context = this.getContext();
String busiDesc = "反馈回答"; String busiDesc = "反馈回答";
Rest<FeedbackEntity> rest = Rest.ok(busiDesc + " 【成功】"); Rest<FeedbackEntity> rest = Rest.ok(busiDesc + " 【成功】");
try {
if (ObjectUtils.isEmpty(context) || ObjectUtils.isEmpty(context.getUser())) { if (ObjectUtils.isEmpty(context) || ObjectUtils.isEmpty(context.getUser())) {
throw new AppException(ERROR_TOKEN_EXPIRED, ERROR_TOKEN_EXPIRED_CONTENT); throw new AppException(ERROR_TOKEN_EXPIRED, ERROR_TOKEN_EXPIRED_CONTENT);
} }
try { if (ObjectUtils.isEmpty(req.getFeedbackId())) throw new AppException("反馈信息ID不能为空!");
//todo
//如果时间已经结束 则不能再提交
FeedbackEntity feedbackEntity = feedbackService.get(req.getFeedbackId(), context);
if (DateUtil.compare(new Date(), feedbackEntity.getFeedbackTimeStart()) < 0)
throw new AppException("当前反馈问卷信息还未开始!");
if (DateUtil.compare(new Date(), feedbackEntity.getFeedbackTimeEnd()) > 0)
throw new AppException("当前反馈问卷信息已经过了截止日期!");
//判断是否已经回答过,已经回答了的 不重复提交
int count = answerService.count(new FeedbackAnswerQuery().feedbackId(req.getFeedbackId()).staffId(context.getUser().getCustomerId()), context);
if (count > 0) throw new AppException("该问卷反馈已经提交过,不能重复提交!");
//添加问答
List<FeedbackAnswerEntity> feedbackAnswerList = req.getFeedbackAnswerList();
for (FeedbackAnswerEntity feedbackAnswerEntity : feedbackAnswerList) {
feedbackAnswerEntity.setCreateUserId(context.getUser().getId());
feedbackAnswerEntity.setCreateTime(new Date());
List<FeedbackAnswerOptionEntity> feedbackAnswerOptionList = feedbackAnswerEntity.getFeedbackAnswerOptionList();
for (FeedbackAnswerOptionEntity feedbackAnswerOptionEntity : feedbackAnswerOptionList) {
feedbackAnswerOptionEntity.setCreateUserId(context.getUser().getId());
feedbackAnswerOptionEntity.setCreateTime(new Date());
}
}
answerService.save(feedbackAnswerList, context);
FeedbackEntity saveEntity = feedbackService.save(feedbackEntity, context);
rest.setData(saveEntity);
recordSysLog(request, busiDesc + " 【成功】"); recordSysLog(request, busiDesc + " 【成功】");
} catch (Exception e) { } catch (Exception e) {
log.error(busiDesc, e); log.error(busiDesc, e);
......
...@@ -16,13 +16,20 @@ import com.mortals.xhx.busiz.req.PerformReq; ...@@ -16,13 +16,20 @@ import com.mortals.xhx.busiz.req.PerformReq;
import com.mortals.xhx.busiz.rsp.PerformDetailInfo; import com.mortals.xhx.busiz.rsp.PerformDetailInfo;
import com.mortals.xhx.busiz.rsp.PerformInfo; import com.mortals.xhx.busiz.rsp.PerformInfo;
import com.mortals.xhx.busiz.rsp.PerformStatInfo; import com.mortals.xhx.busiz.rsp.PerformStatInfo;
import com.mortals.xhx.common.code.AppealResultEnum;
import com.mortals.xhx.common.code.AppealStatusEnum;
import com.mortals.xhx.common.code.PerformTypeEnum; import com.mortals.xhx.common.code.PerformTypeEnum;
import com.mortals.xhx.common.code.ProcessStatusEnum;
import com.mortals.xhx.common.utils.BeanUtil; import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.attendance.model.AttendanceRecordEntity; import com.mortals.xhx.module.attendance.model.AttendanceRecordEntity;
import com.mortals.xhx.module.attendance.model.AttendanceRecordQuery; import com.mortals.xhx.module.attendance.model.AttendanceRecordQuery;
import com.mortals.xhx.module.attendance.service.AttendanceRecordService; import com.mortals.xhx.module.attendance.service.AttendanceRecordService;
import com.mortals.xhx.module.check.model.*; import com.mortals.xhx.module.check.model.*;
import com.mortals.xhx.module.check.model.vo.CheckAllRecordVo;
import com.mortals.xhx.module.check.service.*; import com.mortals.xhx.module.check.service.*;
import com.mortals.xhx.module.perform.model.PerformAttendAppealEntity;
import com.mortals.xhx.module.perform.model.PerformAttendAppealQuery;
import com.mortals.xhx.module.perform.service.PerformAttendAppealService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.poi.ss.formula.functions.T; import org.apache.poi.ss.formula.functions.T;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
...@@ -65,6 +72,11 @@ public class PerformApiController extends AbstractBaseController<PerformReq> { ...@@ -65,6 +72,11 @@ public class PerformApiController extends AbstractBaseController<PerformReq> {
private CheckGoworkRecordService checkGoworkRecordService; private CheckGoworkRecordService checkGoworkRecordService;
@Autowired @Autowired
private CheckOtherRecordService checkOtherRecordService; private CheckOtherRecordService checkOtherRecordService;
@Autowired
private CheckAllRecordService checkAllRecordService;
@Autowired
private PerformAttendAppealService appealService;
/** /**
...@@ -115,10 +127,31 @@ public class PerformApiController extends AbstractBaseController<PerformReq> { ...@@ -115,10 +127,31 @@ public class PerformApiController extends AbstractBaseController<PerformReq> {
//未设置时间的情况,默认为当月 //未设置时间的情况,默认为当月
performReq.setPerformStartDate(DateUtil.beginOfMonth(new Date()).toDateStr()); performReq.setPerformStartDate(DateUtil.beginOfMonth(new Date()).toDateStr());
performReq.setPerformEndDate(DateUtil.today()); performReq.setPerformEndDate(DateUtil.today());
} else {
performReq.setPerformStartDate(DateUtil.beginOfMonth(DateUtil.parse(performReq.getPerformStartDate()).toJdkDate()).toDateStr());
performReq.setPerformEndDate(DateUtil.endOfMonth(DateUtil.parse(performReq.getPerformStartDate()).toJdkDate()).toDateStr());
} }
PageInfo pageInfo = buildPageInfo(performReq); PageInfo pageInfo = buildPageInfo(performReq);
//todo 查询全部扣分绩效 //todo 查询全部扣分绩效
if (PerformTypeEnum.全部.getValue().equals(performReq.getPerformType())) { if (PerformTypeEnum.全部.getValue().equals(performReq.getPerformType())) {
CheckAllRecordQuery query = new CheckAllRecordQuery();
query.setCheckTimeStart(performReq.getPerformStartDate());
query.setCheckTimeEnd(performReq.getPerformEndDate());
query.setStaffId(context.getUser().getCustomerId());
List<CheckAllRecordVo> allCheckRecord = checkAllRecordService.getAllCheckRecord(query);
List<PerformInfo> collect = allCheckRecord.stream().map(item -> {
PerformInfo performInfo = new PerformInfo();
BeanUtils.copyProperties(item, performInfo, BeanUtil.getNullPropertyNames(item));
return performInfo;
}).collect(Collectors.toList());
model.put(KEY_RESULT_DATA, collect);
PageInfo pageAllInfo = new PageInfo();
pageAllInfo.setTotalResult(collect.size());
pageAllInfo.setCurrPage(1);
pageAllInfo.setPrePageResult(-1);
model.put(PAGEINFO_KEY, pageAllInfo);
parsePageInfo(model, pageAllInfo);
} else if (PerformTypeEnum.考勤绩效.getValue().equals(performReq.getPerformType())) { } else if (PerformTypeEnum.考勤绩效.getValue().equals(performReq.getPerformType())) {
CheckAttendRecordQuery query = new CheckAttendRecordQuery(); CheckAttendRecordQuery query = new CheckAttendRecordQuery();
...@@ -131,8 +164,15 @@ public class PerformApiController extends AbstractBaseController<PerformReq> { ...@@ -131,8 +164,15 @@ public class PerformApiController extends AbstractBaseController<PerformReq> {
PerformInfo performInfo = new PerformInfo(); PerformInfo performInfo = new PerformInfo();
BeanUtils.copyProperties(item, performInfo, BeanUtil.getNullPropertyNames(item)); BeanUtils.copyProperties(item, performInfo, BeanUtil.getNullPropertyNames(item));
performInfo.setPerformType(PerformTypeEnum.考勤绩效.getValue()); performInfo.setPerformType(PerformTypeEnum.考勤绩效.getValue());
//判断是否存在申诉
PerformAttendAppealEntity entity = appealService.selectOne(new PerformAttendAppealQuery().checkRecordId(item.getId()));
Boolean bool = entity.newEntity();
updateAppealStatus(performInfo, bool, entity.getProcessStatus(), entity.getAppealResult());
return performInfo; return performInfo;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
model.put(KEY_RESULT_DATA, collect); model.put(KEY_RESULT_DATA, collect);
model.put(PAGEINFO_KEY, result.getPageInfo()); model.put(PAGEINFO_KEY, result.getPageInfo());
parsePageInfo(model, result.getPageInfo()); parsePageInfo(model, result.getPageInfo());
...@@ -147,6 +187,11 @@ public class PerformApiController extends AbstractBaseController<PerformReq> { ...@@ -147,6 +187,11 @@ public class PerformApiController extends AbstractBaseController<PerformReq> {
PerformInfo performInfo = new PerformInfo(); PerformInfo performInfo = new PerformInfo();
BeanUtils.copyProperties(item, performInfo, BeanUtil.getNullPropertyNames(item)); BeanUtils.copyProperties(item, performInfo, BeanUtil.getNullPropertyNames(item));
performInfo.setPerformType(PerformTypeEnum.评价差评绩效.getValue()); performInfo.setPerformType(PerformTypeEnum.评价差评绩效.getValue());
//判断是否存在申诉
PerformAttendAppealEntity entity = appealService.selectOne(new PerformAttendAppealQuery().checkRecordId(item.getId()));
Boolean bool = entity.newEntity();
updateAppealStatus(performInfo, bool, entity.getProcessStatus(), entity.getAppealResult());
return performInfo; return performInfo;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
model.put(KEY_RESULT_DATA, collect); model.put(KEY_RESULT_DATA, collect);
...@@ -163,6 +208,11 @@ public class PerformApiController extends AbstractBaseController<PerformReq> { ...@@ -163,6 +208,11 @@ public class PerformApiController extends AbstractBaseController<PerformReq> {
PerformInfo performInfo = new PerformInfo(); PerformInfo performInfo = new PerformInfo();
BeanUtils.copyProperties(item, performInfo, BeanUtil.getNullPropertyNames(item)); BeanUtils.copyProperties(item, performInfo, BeanUtil.getNullPropertyNames(item));
performInfo.setPerformType(PerformTypeEnum.评价投诉绩效.getValue()); performInfo.setPerformType(PerformTypeEnum.评价投诉绩效.getValue());
//判断是否存在申诉
PerformAttendAppealEntity entity = appealService.selectOne(new PerformAttendAppealQuery().checkRecordId(item.getId()));
Boolean bool = entity.newEntity();
updateAppealStatus(performInfo, bool, entity.getProcessStatus(), entity.getAppealResult());
return performInfo; return performInfo;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
model.put(KEY_RESULT_DATA, collect); model.put(KEY_RESULT_DATA, collect);
...@@ -179,6 +229,10 @@ public class PerformApiController extends AbstractBaseController<PerformReq> { ...@@ -179,6 +229,10 @@ public class PerformApiController extends AbstractBaseController<PerformReq> {
PerformInfo performInfo = new PerformInfo(); PerformInfo performInfo = new PerformInfo();
BeanUtils.copyProperties(item, performInfo, BeanUtil.getNullPropertyNames(item)); BeanUtils.copyProperties(item, performInfo, BeanUtil.getNullPropertyNames(item));
performInfo.setPerformType(PerformTypeEnum.办件绩效.getValue()); performInfo.setPerformType(PerformTypeEnum.办件绩效.getValue());
//判断是否存在申诉
PerformAttendAppealEntity entity = appealService.selectOne(new PerformAttendAppealQuery().checkRecordId(item.getId()));
Boolean bool = entity.newEntity();
updateAppealStatus(performInfo, bool, entity.getProcessStatus(), entity.getAppealResult());
return performInfo; return performInfo;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
model.put(KEY_RESULT_DATA, collect); model.put(KEY_RESULT_DATA, collect);
...@@ -195,6 +249,10 @@ public class PerformApiController extends AbstractBaseController<PerformReq> { ...@@ -195,6 +249,10 @@ public class PerformApiController extends AbstractBaseController<PerformReq> {
PerformInfo performInfo = new PerformInfo(); PerformInfo performInfo = new PerformInfo();
BeanUtils.copyProperties(item, performInfo, BeanUtil.getNullPropertyNames(item)); BeanUtils.copyProperties(item, performInfo, BeanUtil.getNullPropertyNames(item));
performInfo.setPerformType(PerformTypeEnum.效能绩效.getValue()); performInfo.setPerformType(PerformTypeEnum.效能绩效.getValue());
//判断是否存在申诉
PerformAttendAppealEntity entity = appealService.selectOne(new PerformAttendAppealQuery().checkRecordId(item.getId()));
Boolean bool = entity.newEntity();
updateAppealStatus(performInfo, bool, entity.getProcessStatus(), entity.getAppealResult());
return performInfo; return performInfo;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
model.put(KEY_RESULT_DATA, collect); model.put(KEY_RESULT_DATA, collect);
...@@ -211,6 +269,10 @@ public class PerformApiController extends AbstractBaseController<PerformReq> { ...@@ -211,6 +269,10 @@ public class PerformApiController extends AbstractBaseController<PerformReq> {
PerformInfo performInfo = new PerformInfo(); PerformInfo performInfo = new PerformInfo();
BeanUtils.copyProperties(item, performInfo, BeanUtil.getNullPropertyNames(item)); BeanUtils.copyProperties(item, performInfo, BeanUtil.getNullPropertyNames(item));
performInfo.setPerformType(PerformTypeEnum.其它绩效.getValue()); performInfo.setPerformType(PerformTypeEnum.其它绩效.getValue());
//判断是否存在申诉
PerformAttendAppealEntity entity = appealService.selectOne(new PerformAttendAppealQuery().checkRecordId(item.getId()));
Boolean bool = entity.newEntity();
updateAppealStatus(performInfo, bool, entity.getProcessStatus(), entity.getAppealResult());
return performInfo; return performInfo;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
model.put(KEY_RESULT_DATA, collect); model.put(KEY_RESULT_DATA, collect);
...@@ -221,7 +283,6 @@ public class PerformApiController extends AbstractBaseController<PerformReq> { ...@@ -221,7 +283,6 @@ public class PerformApiController extends AbstractBaseController<PerformReq> {
} }
rest.setData(model); rest.setData(model);
recordSysLog(request, busiDesc + " 【成功】"); recordSysLog(request, busiDesc + " 【成功】");
} catch (Exception e) { } catch (Exception e) {
log.error(busiDesc, e); log.error(busiDesc, e);
...@@ -230,6 +291,22 @@ public class PerformApiController extends AbstractBaseController<PerformReq> { ...@@ -230,6 +291,22 @@ public class PerformApiController extends AbstractBaseController<PerformReq> {
return rest; return rest;
} }
private void updateAppealStatus(PerformInfo performInfo, Boolean bool, Integer processStatus, Integer appealResult) {
if (!bool) {
performInfo.setAppealStatus(AppealStatusEnum.未申诉.getValue());
} else {
if (ProcessStatusEnum.未处理.getValue() == processStatus) {
performInfo.setAppealStatus(AppealStatusEnum.申诉中.getValue());
} else {
if (AppealResultEnum.通过.getValue() == appealResult) {
performInfo.setAppealStatus(AppealStatusEnum.申诉通过.getValue());
} else if (AppealResultEnum.不通过.getValue() == appealResult) {
performInfo.setAppealStatus(AppealStatusEnum.申诉拒绝.getValue());
}
}
}
}
/** /**
* 详细 * 详细
...@@ -278,7 +355,6 @@ public class PerformApiController extends AbstractBaseController<PerformReq> { ...@@ -278,7 +355,6 @@ public class PerformApiController extends AbstractBaseController<PerformReq> {
} }
public static void main(String[] args) { public static void main(String[] args) {
} }
......
...@@ -34,8 +34,7 @@ public class TestController { ...@@ -34,8 +34,7 @@ public class TestController {
public String idGens() { public String idGens() {
log.info("测试id生成"); log.info("测试id生成");
String stringId = idgeneratorService.getLongId(IdgeneratorServiceImpl.IdGeneratorKey.EFFECT).toString(); String stringId = idgeneratorService.getLongId(IdgeneratorServiceImpl.IdGeneratorKey.EFFECT_KEY).toString();
return stringId; return stringId;
} }
......
package com.mortals.xhx.common.code;
import java.util.LinkedHashMap;
import java.util.Map;
/**
* 申诉状态(0.未申诉,1.申诉中,2.申诉拒绝,3.申诉通过)
*
* @author zxfei
*/
public enum AppealStatusEnum {
未申诉(0, "未申诉"),
申诉中(1, "申诉中"),
申诉拒绝(2, "申诉拒绝"),
申诉通过(3, "申诉通过");
private Integer value;
private String desc;
AppealStatusEnum(Integer value, String desc) {
this.value = value;
this.desc = desc;
}
public Integer getValue() {
return this.value;
}
public String getDesc() {
return this.desc;
}
public static AppealStatusEnum getByValue(Integer value) {
for (AppealStatusEnum deviceStatusEnum : AppealStatusEnum.values()) {
if (deviceStatusEnum.getValue() == value) {
return deviceStatusEnum;
}
}
return null;
}
/**
* 获取Map集合
*
* @param eItem 不包含项
* @return
*/
public static Map<String, String> getEnumMap(Integer... eItem) {
Map<String, String> resultMap = new LinkedHashMap<>();
for (AppealStatusEnum item : AppealStatusEnum.values()) {
try {
boolean hasE = false;
for (Integer e : eItem) {
if (item.getValue() == e) {
hasE = true;
break;
}
}
if (!hasE) {
resultMap.put(item.getValue() + "", item.getDesc());
}
} catch (Exception ex) {
}
}
return resultMap;
}
}
\ No newline at end of file
...@@ -8,11 +8,10 @@ import java.util.Map; ...@@ -8,11 +8,10 @@ import java.util.Map;
*/ */
public enum CheckTypeEnum { public enum CheckTypeEnum {
考勤绩效(1, "考勤绩效"), 考勤绩效(1, "考勤绩效"),
效能绩效(2, "效能绩效"), 评价绩效(2, "评价绩效"),
评价绩效(3, "评价绩效"), 办件绩效(3, "办件绩效"),
办件绩效(4, "办件绩效"), 效能绩效(4, "效能绩效"),
差评绩效(5, "差评绩效"), 其它绩效(5, "其它绩效"),
其它绩效(6, "其它绩效"),
; ;
private Integer value; private Integer value;
private String desc; private String desc;
......
...@@ -4,13 +4,13 @@ import java.util.LinkedHashMap; ...@@ -4,13 +4,13 @@ import java.util.LinkedHashMap;
import java.util.Map; import java.util.Map;
/** /**
* 处理状态(1.未核查,2.已核查)枚举类 * 处理状态(1.未处理,2.已处理)枚举类
* *
* @author zxfei * @author zxfei
*/ */
public enum ProcessStatusEnum { public enum ProcessStatusEnum {
核查(1, "未核查"), 处理(1, "未处理"),
核查(2, "已核查"); 处理(2, "已处理");
private Integer value; private Integer value;
private String desc; private String desc;
......
...@@ -4,13 +4,14 @@ import java.util.LinkedHashMap; ...@@ -4,13 +4,14 @@ import java.util.LinkedHashMap;
import java.util.Map; import java.util.Map;
/** /**
* 扣分方式(1.系统自动,2.人工添加)枚举类 * 扣分方式(1.系统自动,2.人工添加,3.大厅巡查)枚举类
* *
* @author zxfei * @author zxfei
*/ */
public enum SubMethodEnum { public enum SubMethodEnum {
系统自动(1, "系统自动"), 系统自动(1, "系统自动"),
人工添加(2, "人工添加"); 人工添加(2, "人工添加"),
大厅巡查(3, "大厅巡查");
private Integer value; private Integer value;
private String desc; private String desc;
......
...@@ -11,7 +11,8 @@ import java.util.Map; ...@@ -11,7 +11,8 @@ import java.util.Map;
public enum UserType { public enum UserType {
SYSTEM(0, "系统用户"), SYSTEM(0, "系统用户"),
WORK(1, "后台管理"), WORK(1, "后台管理"),
WORK_PERSON(2, "工作人员"); WORK_PERSON(2, "工作人员"),
INSPECT_PERSON(3, "巡查人员");;
private int value; private int value;
private String desc; private String desc;
......
...@@ -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.CheckAttendRecordEntity; import com.mortals.xhx.module.check.model.CheckAttendRecordEntity;
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 CheckAttendRecordDao extends ICRUDDao<CheckAttendRecordEntity,Long>{ public interface CheckAttendRecordDao extends ICRUDDao<CheckAttendRecordEntity,Long>{
/**
* 汇总已审核的核查记录
* @param query
* @return
*/
List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query);
} }
...@@ -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.CheckComplainRecordEntity; import com.mortals.xhx.module.check.model.CheckComplainRecordEntity;
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 CheckComplainRecordDao extends ICRUDDao<CheckComplainRecordEntity,Long>{ public interface CheckComplainRecordDao extends ICRUDDao<CheckComplainRecordEntity,Long>{
/**
* 汇总已审核的核查记录
* @param query
* @return
*/
List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query);
} }
...@@ -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.CheckEffectRecordEntity; import com.mortals.xhx.module.check.model.CheckEffectRecordEntity;
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 CheckEffectRecordDao extends ICRUDDao<CheckEffectRecordEntity,Long>{ public interface CheckEffectRecordDao extends ICRUDDao<CheckEffectRecordEntity,Long>{
/**
* 汇总已审核的核查记录
* @param query
* @return
*/
List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query);
} }
...@@ -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.CheckGoworkRecordEntity; import com.mortals.xhx.module.check.model.CheckGoworkRecordEntity;
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 CheckGoworkRecordDao extends ICRUDDao<CheckGoworkRecordEntity,Long>{ public interface CheckGoworkRecordDao extends ICRUDDao<CheckGoworkRecordEntity,Long>{
/**
* 汇总已审核的核查记录
* @param query
* @return
*/
List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query);
} }
...@@ -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.CheckOtherRecordEntity; import com.mortals.xhx.module.check.model.CheckOtherRecordEntity;
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 CheckOtherRecordDao extends ICRUDDao<CheckOtherRecordEntity,Long>{ public interface CheckOtherRecordDao extends ICRUDDao<CheckOtherRecordEntity,Long>{
/**
* 汇总已审核的核查记录
* @param query
* @return
*/
List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query);
} }
...@@ -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.CheckReviewRecordEntity; import com.mortals.xhx.module.check.model.CheckReviewRecordEntity;
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 CheckReviewRecordDao extends ICRUDDao<CheckReviewRecordEntity,Long>{ public interface CheckReviewRecordDao extends ICRUDDao<CheckReviewRecordEntity,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.CheckAttendRecordDao; import com.mortals.xhx.module.check.dao.CheckAttendRecordDao;
import com.mortals.xhx.module.check.model.CheckAttendRecordEntity; import com.mortals.xhx.module.check.model.CheckAttendRecordEntity;
...@@ -17,5 +19,8 @@ import java.util.List; ...@@ -17,5 +19,8 @@ import java.util.List;
public class CheckAttendRecordDaoImpl extends BaseCRUDDaoMybatis<CheckAttendRecordEntity,Long> implements CheckAttendRecordDao { public class CheckAttendRecordDaoImpl extends BaseCRUDDaoMybatis<CheckAttendRecordEntity,Long> implements CheckAttendRecordDao {
@Override
public List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) {
return this.getSqlSession().selectList(this.getSqlId("getSummaryCheckList"), 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.CheckComplainRecordDao; import com.mortals.xhx.module.check.dao.CheckComplainRecordDao;
import com.mortals.xhx.module.check.model.CheckComplainRecordEntity; import com.mortals.xhx.module.check.model.CheckComplainRecordEntity;
...@@ -17,5 +19,8 @@ import java.util.List; ...@@ -17,5 +19,8 @@ import java.util.List;
public class CheckComplainRecordDaoImpl extends BaseCRUDDaoMybatis<CheckComplainRecordEntity,Long> implements CheckComplainRecordDao { public class CheckComplainRecordDaoImpl extends BaseCRUDDaoMybatis<CheckComplainRecordEntity,Long> implements CheckComplainRecordDao {
@Override
public List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) {
return this.getSqlSession().selectList(this.getSqlId("getSummaryCheckList"), 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.CheckEffectRecordDao; import com.mortals.xhx.module.check.dao.CheckEffectRecordDao;
import com.mortals.xhx.module.check.model.CheckEffectRecordEntity; import com.mortals.xhx.module.check.model.CheckEffectRecordEntity;
...@@ -17,5 +19,8 @@ import java.util.List; ...@@ -17,5 +19,8 @@ import java.util.List;
public class CheckEffectRecordDaoImpl extends BaseCRUDDaoMybatis<CheckEffectRecordEntity,Long> implements CheckEffectRecordDao { public class CheckEffectRecordDaoImpl extends BaseCRUDDaoMybatis<CheckEffectRecordEntity,Long> implements CheckEffectRecordDao {
@Override
public List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) {
return this.getSqlSession().selectList(this.getSqlId("getSummaryCheckList"), 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.CheckGoworkRecordDao; import com.mortals.xhx.module.check.dao.CheckGoworkRecordDao;
import com.mortals.xhx.module.check.model.CheckGoworkRecordEntity; import com.mortals.xhx.module.check.model.CheckGoworkRecordEntity;
...@@ -17,5 +19,8 @@ import java.util.List; ...@@ -17,5 +19,8 @@ import java.util.List;
public class CheckGoworkRecordDaoImpl extends BaseCRUDDaoMybatis<CheckGoworkRecordEntity,Long> implements CheckGoworkRecordDao { public class CheckGoworkRecordDaoImpl extends BaseCRUDDaoMybatis<CheckGoworkRecordEntity,Long> implements CheckGoworkRecordDao {
@Override
public List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) {
return this.getSqlSession().selectList(this.getSqlId("getSummaryCheckList"), 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.CheckOtherRecordDao; import com.mortals.xhx.module.check.dao.CheckOtherRecordDao;
import com.mortals.xhx.module.check.model.CheckOtherRecordEntity; import com.mortals.xhx.module.check.model.CheckOtherRecordEntity;
...@@ -17,5 +19,8 @@ import java.util.List; ...@@ -17,5 +19,8 @@ import java.util.List;
public class CheckOtherRecordDaoImpl extends BaseCRUDDaoMybatis<CheckOtherRecordEntity,Long> implements CheckOtherRecordDao { public class CheckOtherRecordDaoImpl extends BaseCRUDDaoMybatis<CheckOtherRecordEntity,Long> implements CheckOtherRecordDao {
@Override
public List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) {
return this.getSqlSession().selectList(this.getSqlId("getSummaryCheckList"), 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.CheckReviewRecordDao; import com.mortals.xhx.module.check.dao.CheckReviewRecordDao;
import com.mortals.xhx.module.check.model.CheckReviewRecordEntity; import com.mortals.xhx.module.check.model.CheckReviewRecordEntity;
...@@ -17,5 +19,8 @@ import java.util.List; ...@@ -17,5 +19,8 @@ import java.util.List;
public class CheckReviewRecordDaoImpl extends BaseCRUDDaoMybatis<CheckReviewRecordEntity,Long> implements CheckReviewRecordDao { public class CheckReviewRecordDaoImpl extends BaseCRUDDaoMybatis<CheckReviewRecordEntity,Long> implements CheckReviewRecordDao {
@Override
public List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) {
return this.getSqlSession().selectList(this.getSqlId("getSummaryCheckList"), query);
}
} }
...@@ -133,7 +133,7 @@ public class CheckAttendRecordEntity extends CheckAttendRecordVo { ...@@ -133,7 +133,7 @@ public class CheckAttendRecordEntity extends CheckAttendRecordVo {
*/ */
private Long categoryId; private Long categoryId;
/** /**
* 规则名称 * 规则分类名称
*/ */
private String categoryName; private String categoryName;
@Override @Override
......
package com.mortals.xhx.module.check.model.vo;
import lombok.Data;
/**
* 员工绩效核查汇总查询条件
*/
@Data
public class StaffCheckSummaryQuery {
/**员工ID*/
private Long staffId;
/** 开始 核查时间 */
private String checkTimeStart;
/** 结束 核查时间 */
private String checkTimeEnd;
}
package com.mortals.xhx.module.check.model.vo;
import lombok.Data;
import java.math.BigDecimal;
/**
* 员工绩效核查汇总结果视图
*/
@Data
public class StaffCheckSummaryVo {
/**
* 员工ID
*/
private Long staffId;
/**
* 员工姓名
*/
private String staffName;
/**
* 工号
*/
private String workNum;
/**
* 所属部门
*/
private Long deptId;
/**
* 所属部门名称
*/
private String deptName;
/**
* 汇总分值
*/
private BigDecimal sumScore;
/**
* 年
*/
private Integer year;
/**
* 月
*/
private Integer month;
}
package com.mortals.xhx.module.check.service; package com.mortals.xhx.module.check.service;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService; import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.check.model.CheckAttendRecordEntity; import com.mortals.xhx.module.check.model.CheckAttendRecordEntity;
import com.mortals.xhx.module.check.dao.CheckAttendRecordDao; import com.mortals.xhx.module.check.dao.CheckAttendRecordDao;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo;
import java.util.List;
/** /**
* CheckAttendRecordService * CheckAttendRecordService
* *
...@@ -13,4 +20,19 @@ import com.mortals.xhx.module.check.dao.CheckAttendRecordDao; ...@@ -13,4 +20,19 @@ import com.mortals.xhx.module.check.dao.CheckAttendRecordDao;
public interface CheckAttendRecordService extends ICRUDService<CheckAttendRecordEntity,Long>{ public interface CheckAttendRecordService extends ICRUDService<CheckAttendRecordEntity,Long>{
CheckAttendRecordDao getDao(); CheckAttendRecordDao getDao();
/**
* 核查人工审核
* @param entity
* @param context
* @throws AppException
*/
void examine(CheckAttendRecordEntity entity, Context context) throws AppException;
/**
* 汇总已审核的核查记录
* @param query
* @return
*/
List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) throws AppException;
} }
\ No newline at end of file
package com.mortals.xhx.module.check.service; package com.mortals.xhx.module.check.service;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService; import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.check.model.CheckComplainRecordEntity; import com.mortals.xhx.module.check.model.CheckComplainRecordEntity;
import com.mortals.xhx.module.check.dao.CheckComplainRecordDao; import com.mortals.xhx.module.check.dao.CheckComplainRecordDao;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo;
import java.util.List;
/** /**
* CheckComplainRecordService * CheckComplainRecordService
* *
...@@ -13,4 +20,19 @@ import com.mortals.xhx.module.check.dao.CheckComplainRecordDao; ...@@ -13,4 +20,19 @@ import com.mortals.xhx.module.check.dao.CheckComplainRecordDao;
public interface CheckComplainRecordService extends ICRUDService<CheckComplainRecordEntity,Long>{ public interface CheckComplainRecordService extends ICRUDService<CheckComplainRecordEntity,Long>{
CheckComplainRecordDao getDao(); CheckComplainRecordDao getDao();
/**
* 核查人工审核
* @param entity
* @param context
* @throws AppException
*/
void examine(CheckComplainRecordEntity entity, Context context) throws AppException;
/**
* 汇总已审核的核查记录
* @param query
* @return
*/
List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) throws AppException;
} }
\ No newline at end of file
package com.mortals.xhx.module.check.service; package com.mortals.xhx.module.check.service;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService; import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.check.model.CheckEffectRecordEntity; import com.mortals.xhx.module.check.model.CheckEffectRecordEntity;
import com.mortals.xhx.module.check.dao.CheckEffectRecordDao; import com.mortals.xhx.module.check.dao.CheckEffectRecordDao;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo;
import java.util.List;
/** /**
* CheckEffectRecordService * CheckEffectRecordService
* *
...@@ -13,4 +20,19 @@ import com.mortals.xhx.module.check.dao.CheckEffectRecordDao; ...@@ -13,4 +20,19 @@ import com.mortals.xhx.module.check.dao.CheckEffectRecordDao;
public interface CheckEffectRecordService extends ICRUDService<CheckEffectRecordEntity,Long>{ public interface CheckEffectRecordService extends ICRUDService<CheckEffectRecordEntity,Long>{
CheckEffectRecordDao getDao(); CheckEffectRecordDao getDao();
/**
* 核查人工审核
* @param entity
* @param context
* @throws AppException
*/
void examine(CheckEffectRecordEntity entity, Context context) throws AppException;
/**
* 汇总已审核的核查记录
* @param query
* @return
*/
List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) throws AppException;
} }
\ No newline at end of file
package com.mortals.xhx.module.check.service; package com.mortals.xhx.module.check.service;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService; import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.check.model.CheckGoworkRecordEntity; import com.mortals.xhx.module.check.model.CheckGoworkRecordEntity;
import com.mortals.xhx.module.check.dao.CheckGoworkRecordDao; import com.mortals.xhx.module.check.dao.CheckGoworkRecordDao;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo;
import java.util.List;
/** /**
* CheckGoworkRecordService * CheckGoworkRecordService
* *
...@@ -13,4 +20,19 @@ import com.mortals.xhx.module.check.dao.CheckGoworkRecordDao; ...@@ -13,4 +20,19 @@ import com.mortals.xhx.module.check.dao.CheckGoworkRecordDao;
public interface CheckGoworkRecordService extends ICRUDService<CheckGoworkRecordEntity,Long>{ public interface CheckGoworkRecordService extends ICRUDService<CheckGoworkRecordEntity,Long>{
CheckGoworkRecordDao getDao(); CheckGoworkRecordDao getDao();
/**
* 核查人工审核
* @param entity
* @param context
* @throws AppException
*/
void examine(CheckGoworkRecordEntity entity, Context context) throws AppException;
/**
* 汇总已审核的核查记录
* @param query
* @return
*/
List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) throws AppException;
} }
\ No newline at end of file
package com.mortals.xhx.module.check.service; package com.mortals.xhx.module.check.service;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService; import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.check.model.CheckOtherRecordEntity; import com.mortals.xhx.module.check.model.CheckOtherRecordEntity;
import com.mortals.xhx.module.check.dao.CheckOtherRecordDao; import com.mortals.xhx.module.check.dao.CheckOtherRecordDao;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo;
import java.util.List;
/** /**
* CheckOtherRecordService * CheckOtherRecordService
* *
...@@ -13,4 +20,19 @@ import com.mortals.xhx.module.check.dao.CheckOtherRecordDao; ...@@ -13,4 +20,19 @@ import com.mortals.xhx.module.check.dao.CheckOtherRecordDao;
public interface CheckOtherRecordService extends ICRUDService<CheckOtherRecordEntity,Long>{ public interface CheckOtherRecordService extends ICRUDService<CheckOtherRecordEntity,Long>{
CheckOtherRecordDao getDao(); CheckOtherRecordDao getDao();
/**
* 核查人工审核
* @param entity
* @param context
* @throws AppException
*/
void examine(CheckOtherRecordEntity entity, Context context) throws AppException;
/**
* 汇总已审核的核查记录
* @param query
* @return
*/
List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) throws AppException;
} }
\ No newline at end of file
package com.mortals.xhx.module.check.service; package com.mortals.xhx.module.check.service;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService; import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.check.model.CheckReviewRecordEntity; import com.mortals.xhx.module.check.model.CheckReviewRecordEntity;
import com.mortals.xhx.module.check.dao.CheckReviewRecordDao; import com.mortals.xhx.module.check.dao.CheckReviewRecordDao;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo;
import java.util.List;
/** /**
* CheckReviewRecordService * CheckReviewRecordService
* *
...@@ -13,4 +20,19 @@ import com.mortals.xhx.module.check.dao.CheckReviewRecordDao; ...@@ -13,4 +20,19 @@ import com.mortals.xhx.module.check.dao.CheckReviewRecordDao;
public interface CheckReviewRecordService extends ICRUDService<CheckReviewRecordEntity,Long>{ public interface CheckReviewRecordService extends ICRUDService<CheckReviewRecordEntity,Long>{
CheckReviewRecordDao getDao(); CheckReviewRecordDao getDao();
/**
* 核查人工审核
* @param entity
* @param context
* @throws AppException
*/
void examine(CheckReviewRecordEntity entity, Context context) throws AppException;
/**
* 汇总已审核的核查记录
* @param query
* @return
*/
List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) throws AppException;
} }
\ No newline at end of file
package com.mortals.xhx.module.check.service.impl; package com.mortals.xhx.module.check.service.impl;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException; import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.framework.service.IUser;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.util.DateUtils;
import com.mortals.framework.util.StringUtils;
import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.dao.CheckAttendRecordDao; import com.mortals.xhx.module.check.dao.CheckAttendRecordDao;
import com.mortals.xhx.module.check.model.CheckAttendRecordEntity; import com.mortals.xhx.module.check.model.CheckAttendRecordEntity;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo;
import com.mortals.xhx.module.check.service.CheckAttendRecordService; import com.mortals.xhx.module.check.service.CheckAttendRecordService;
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 lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
/** /**
* CheckAttendRecordService * CheckAttendRecordService
* 考勤绩效记录核查信息 service实现 * 考勤绩效记录核查信息 service实现
...@@ -18,4 +39,111 @@ import lombok.extern.slf4j.Slf4j; ...@@ -18,4 +39,111 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j @Slf4j
public class CheckAttendRecordServiceImpl extends AbstractCRUDServiceImpl<CheckAttendRecordDao, CheckAttendRecordEntity, Long> implements CheckAttendRecordService { public class CheckAttendRecordServiceImpl extends AbstractCRUDServiceImpl<CheckAttendRecordDao, CheckAttendRecordEntity, Long> implements CheckAttendRecordService {
@Autowired
private StaffPerformSummaryService staffPerformSummaryService;
@Override
protected void saveAfter(CheckAttendRecordEntity entity, Context context) throws AppException {
try{
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
query.setStaffId(entity.getStaffId());
query.setCheckTimeStart(DateUtils.getStrDate(entity.getCheckTime()));
query.setCheckTimeEnd(query.getCheckTimeStart());
summaryCheck(query);
}catch (Exception e){
log.error("汇总已审核的核查记录出错",e);
}
}
@Override
public void examine(CheckAttendRecordEntity entity, Context context) throws AppException {
if(entity.getId()==null){
throw new AppException("核查记录ID不能为空");
}
if (context != null && context.getUser()!=null) {
IUser user = context.getUser();
entity.setUpdateUserId(user.getId());
entity.setCheckPerson(user.getRealName());
}
entity.setCheckTime(new Date());
entity.setUpdateTime(entity.getCheckTime());
entity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //处理状态(1.未处理,2.已处理)
dao.update(entity);
try{
CheckAttendRecordEntity temp = this.get(entity.getId());
if(temp!=null) {
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
query.setStaffId(temp.getStaffId());
summaryCheck(query);
}
}catch (Exception e){
log.error("汇总已审核的核查记录出错",e);
}
}
@Override
public List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) throws AppException {
if(StringUtils.isEmpty(query.getCheckTimeStart())||StringUtils.isEmpty(query.getCheckTimeStart())){
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar=Calendar.getInstance();
calendar.set(Calendar.DAY_OF_MONTH, 1);
String startTime = format.format(calendar.getTime());
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
String endTime = format.format(calendar.getTime());
query.setCheckTimeStart(startTime);
query.setCheckTimeEnd(endTime);
}
List<StaffCheckSummaryVo> summaryVoList = dao.summaryCheck(query);
if(CollectionUtils.isNotEmpty(summaryVoList)){
for(StaffCheckSummaryVo vo:summaryVoList){
StaffPerformSummaryEntity staffPerformSummaryEntity = new StaffPerformSummaryEntity();
BeanUtils.copyProperties(vo,staffPerformSummaryEntity, BeanUtil.getNullPropertyNames(vo));
staffPerformSummaryEntity.setAttendScore(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.getAssessScore()==null){
staffPerformSummaryEntity.setAssessScore(new BigDecimal(0));
}
if(temp.getOtherScore()==null){
staffPerformSummaryEntity.setOtherScore(new BigDecimal(0));
}
if(temp.getWorkScore()==null){
staffPerformSummaryEntity.setWorkScore(new BigDecimal(0));
}
if(temp.getEffectScore()==null){
staffPerformSummaryEntity.setEffectScore(new BigDecimal(0));
}
BigDecimal erro = new BigDecimal(0);
erro.add(staffPerformSummaryEntity.getAssessScore());
erro.add(staffPerformSummaryEntity.getAttendScore());
erro.add(staffPerformSummaryEntity.getOtherScore());
erro.add(staffPerformSummaryEntity.getWorkScore());
erro.add(staffPerformSummaryEntity.getEffectScore());
staffPerformSummaryEntity.setErrorScore(erro);
BigDecimal total = new BigDecimal(100);
staffPerformSummaryEntity.setTotalScore(total.subtract(erro));
staffPerformSummaryEntity.setId(temp.getId());
staffPerformSummaryEntity.setUpdateTime(new Date());
staffPerformSummaryService.update(staffPerformSummaryEntity);
}else {
staffPerformSummaryEntity.setAssessScore(new BigDecimal(0));
staffPerformSummaryEntity.setOtherScore(new BigDecimal(0));
staffPerformSummaryEntity.setWorkScore(new BigDecimal(0));
staffPerformSummaryEntity.setEffectScore(new BigDecimal(0));
staffPerformSummaryEntity.setErrorScore(vo.getSumScore());
BigDecimal total = new BigDecimal(100);
staffPerformSummaryEntity.setTotalScore(total.subtract(vo.getSumScore()));
staffPerformSummaryEntity.setCreateUserId(1l);
staffPerformSummaryEntity.setCreateTime(new Date());
staffPerformSummaryService.save(staffPerformSummaryEntity);
}
}
}
return summaryVoList;
}
} }
\ No newline at end of file
package com.mortals.xhx.module.check.service.impl; package com.mortals.xhx.module.check.service.impl;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException; import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.framework.service.IUser;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.util.DateUtils;
import com.mortals.framework.util.StringUtils;
import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.dao.CheckComplainRecordDao; import com.mortals.xhx.module.check.dao.CheckComplainRecordDao;
import com.mortals.xhx.module.check.model.CheckComplainRecordEntity; import com.mortals.xhx.module.check.model.CheckComplainRecordEntity;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo;
import com.mortals.xhx.module.check.service.CheckComplainRecordService; import com.mortals.xhx.module.check.service.CheckComplainRecordService;
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 lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
/** /**
* CheckComplainRecordService * CheckComplainRecordService
* 评价绩效投诉核查信息 service实现 * 评价绩效投诉核查信息 service实现
...@@ -18,4 +39,114 @@ import lombok.extern.slf4j.Slf4j; ...@@ -18,4 +39,114 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j @Slf4j
public class CheckComplainRecordServiceImpl extends AbstractCRUDServiceImpl<CheckComplainRecordDao, CheckComplainRecordEntity, Long> implements CheckComplainRecordService { public class CheckComplainRecordServiceImpl extends AbstractCRUDServiceImpl<CheckComplainRecordDao, CheckComplainRecordEntity, Long> implements CheckComplainRecordService {
@Autowired
private StaffPerformSummaryService staffPerformSummaryService;
@Override
protected void saveAfter(CheckComplainRecordEntity entity, Context context) throws AppException {
try{
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
query.setStaffId(entity.getStaffId());
query.setCheckTimeStart(DateUtils.getStrDate(entity.getCheckTime()));
query.setCheckTimeEnd(query.getCheckTimeStart());
summaryCheck(query);
}catch (Exception e){
log.error("汇总已审核的核查记录出错",e);
}
}
@Override
public void examine(CheckComplainRecordEntity entity, Context context) throws AppException {
if(entity.getId()==null){
throw new AppException("核查记录ID不能为空");
}
if (context != null && context.getUser()!=null) {
IUser user = context.getUser();
entity.setUpdateUserId(user.getId());
entity.setCheckPerson(user.getRealName());
}
entity.setCheckTime(new Date());
entity.setUpdateTime(entity.getCheckTime());
entity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //处理状态(1.未处理,2.已处理)
dao.update(entity);
try{
CheckComplainRecordEntity temp = this.get(entity.getId());
if(temp!=null) {
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
query.setStaffId(temp.getStaffId());
summaryCheck(query);
}
}catch (Exception e){
log.error("汇总已审核的核查记录出错",e);
}
}
@Override
public List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) throws AppException {
if(StringUtils.isEmpty(query.getCheckTimeStart())||StringUtils.isEmpty(query.getCheckTimeStart())){
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar=Calendar.getInstance();
calendar.set(Calendar.DAY_OF_MONTH, 1);
String startTime = format.format(calendar.getTime());
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
String endTime = format.format(calendar.getTime());
query.setCheckTimeStart(startTime);
query.setCheckTimeEnd(endTime);
}
List<StaffCheckSummaryVo> summaryVoList = dao.summaryCheck(query);
if(CollectionUtils.isNotEmpty(summaryVoList)){
for(StaffCheckSummaryVo vo:summaryVoList){
StaffPerformSummaryEntity staffPerformSummaryEntity = new StaffPerformSummaryEntity();
BeanUtils.copyProperties(vo,staffPerformSummaryEntity, BeanUtil.getNullPropertyNames(vo));
staffPerformSummaryEntity.setAssessScore(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.getAttendScore()==null){
staffPerformSummaryEntity.setAttendScore(new BigDecimal(0));
}
if(temp.getOtherScore()==null){
staffPerformSummaryEntity.setOtherScore(new BigDecimal(0));
}
if(temp.getWorkScore()==null){
staffPerformSummaryEntity.setWorkScore(new BigDecimal(0));
}
if(temp.getEffectScore()==null){
staffPerformSummaryEntity.setEffectScore(new BigDecimal(0));
}
BigDecimal erro = new BigDecimal(0);
erro.add(staffPerformSummaryEntity.getAssessScore());
erro.add(staffPerformSummaryEntity.getAttendScore());
erro.add(staffPerformSummaryEntity.getOtherScore());
erro.add(staffPerformSummaryEntity.getWorkScore());
erro.add(staffPerformSummaryEntity.getEffectScore());
staffPerformSummaryEntity.setErrorScore(erro);
BigDecimal total = new BigDecimal(100);
staffPerformSummaryEntity.setTotalScore(total.subtract(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.setOtherScore(new BigDecimal(0));
staffPerformSummaryEntity.setWorkScore(new BigDecimal(0));
staffPerformSummaryEntity.setEffectScore(new BigDecimal(0));
staffPerformSummaryEntity.setErrorScore(vo.getSumScore());
BigDecimal total = new BigDecimal(100);
staffPerformSummaryEntity.setTotalScore(total.subtract(vo.getSumScore()));
staffPerformSummaryEntity.setCreateUserId(1l);
staffPerformSummaryEntity.setCreateTime(new Date());
staffPerformSummaryService.save(staffPerformSummaryEntity);
}
}
}
return summaryVoList;
}
} }
\ No newline at end of file
package com.mortals.xhx.module.check.service.impl; package com.mortals.xhx.module.check.service.impl;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException; import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.framework.service.IUser;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.util.DateUtils;
import com.mortals.framework.util.StringUtils;
import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.dao.CheckEffectRecordDao; import com.mortals.xhx.module.check.dao.CheckEffectRecordDao;
import com.mortals.xhx.module.check.model.CheckEffectRecordEntity; import com.mortals.xhx.module.check.model.CheckEffectRecordEntity;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo;
import com.mortals.xhx.module.check.service.CheckEffectRecordService; import com.mortals.xhx.module.check.service.CheckEffectRecordService;
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 lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
/** /**
* CheckEffectRecordService * CheckEffectRecordService
* 效能绩效核查信息 service实现 * 效能绩效核查信息 service实现
...@@ -18,4 +39,114 @@ import lombok.extern.slf4j.Slf4j; ...@@ -18,4 +39,114 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j @Slf4j
public class CheckEffectRecordServiceImpl extends AbstractCRUDServiceImpl<CheckEffectRecordDao, CheckEffectRecordEntity, Long> implements CheckEffectRecordService { public class CheckEffectRecordServiceImpl extends AbstractCRUDServiceImpl<CheckEffectRecordDao, CheckEffectRecordEntity, Long> implements CheckEffectRecordService {
@Autowired
private StaffPerformSummaryService staffPerformSummaryService;
@Override
protected void saveAfter(CheckEffectRecordEntity entity, Context context) throws AppException {
try{
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
query.setStaffId(entity.getStaffId());
query.setCheckTimeStart(DateUtils.getStrDate(entity.getCheckTime()));
query.setCheckTimeEnd(query.getCheckTimeStart());
summaryCheck(query);
}catch (Exception e){
log.error("汇总已审核的核查记录出错",e);
}
}
@Override
public void examine(CheckEffectRecordEntity entity, Context context) throws AppException {
if(entity.getId()==null){
throw new AppException("核查记录ID不能为空");
}
if (context != null && context.getUser()!=null) {
IUser user = context.getUser();
entity.setUpdateUserId(user.getId());
entity.setCheckPerson(user.getRealName());
}
entity.setCheckTime(new Date());
entity.setUpdateTime(entity.getCheckTime());
entity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //处理状态(1.未处理,2.已处理)
dao.update(entity);
try{
CheckEffectRecordEntity temp = this.get(entity.getId());
if(temp!=null) {
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
query.setStaffId(temp.getStaffId());
summaryCheck(query);
}
}catch (Exception e){
log.error("汇总已审核的核查记录出错",e);
}
}
@Override
public List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) throws AppException {
if(StringUtils.isEmpty(query.getCheckTimeStart())||StringUtils.isEmpty(query.getCheckTimeStart())){
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar=Calendar.getInstance();
calendar.set(Calendar.DAY_OF_MONTH, 1);
String startTime = format.format(calendar.getTime());
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
String endTime = format.format(calendar.getTime());
query.setCheckTimeStart(startTime);
query.setCheckTimeEnd(endTime);
}
List<StaffCheckSummaryVo> summaryVoList = dao.summaryCheck(query);
if(CollectionUtils.isNotEmpty(summaryVoList)){
for(StaffCheckSummaryVo vo:summaryVoList){
StaffPerformSummaryEntity staffPerformSummaryEntity = new StaffPerformSummaryEntity();
BeanUtils.copyProperties(vo,staffPerformSummaryEntity, BeanUtil.getNullPropertyNames(vo));
staffPerformSummaryEntity.setEffectScore(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.getAssessScore()==null){
staffPerformSummaryEntity.setAssessScore(new BigDecimal(0));
}
if(temp.getOtherScore()==null){
staffPerformSummaryEntity.setOtherScore(new BigDecimal(0));
}
if(temp.getWorkScore()==null){
staffPerformSummaryEntity.setWorkScore(new BigDecimal(0));
}
if(temp.getAttendScore()==null){
staffPerformSummaryEntity.setAttendScore(new BigDecimal(0));
}
BigDecimal erro = new BigDecimal(0);
erro.add(staffPerformSummaryEntity.getAssessScore());
erro.add(staffPerformSummaryEntity.getAttendScore());
erro.add(staffPerformSummaryEntity.getOtherScore());
erro.add(staffPerformSummaryEntity.getWorkScore());
erro.add(staffPerformSummaryEntity.getEffectScore());
staffPerformSummaryEntity.setErrorScore(erro);
BigDecimal total = new BigDecimal(100);
staffPerformSummaryEntity.setTotalScore(total.subtract(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.setAssessScore(new BigDecimal(0));
staffPerformSummaryEntity.setOtherScore(new BigDecimal(0));
staffPerformSummaryEntity.setWorkScore(new BigDecimal(0));
staffPerformSummaryEntity.setErrorScore(vo.getSumScore());
BigDecimal total = new BigDecimal(100);
staffPerformSummaryEntity.setTotalScore(total.subtract(vo.getSumScore()));
staffPerformSummaryEntity.setCreateUserId(1l);
staffPerformSummaryEntity.setCreateTime(new Date());
staffPerformSummaryService.save(staffPerformSummaryEntity);
}
}
}
return summaryVoList;
}
} }
\ No newline at end of file
package com.mortals.xhx.module.check.service.impl; package com.mortals.xhx.module.check.service.impl;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException; import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.framework.service.IUser;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.util.DateUtils;
import com.mortals.framework.util.StringUtils;
import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.dao.CheckGoworkRecordDao; import com.mortals.xhx.module.check.dao.CheckGoworkRecordDao;
import com.mortals.xhx.module.check.model.CheckGoworkRecordEntity; import com.mortals.xhx.module.check.model.CheckGoworkRecordEntity;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo;
import com.mortals.xhx.module.check.service.CheckGoworkRecordService; import com.mortals.xhx.module.check.service.CheckGoworkRecordService;
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 lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
/** /**
* CheckGoworkRecordService * CheckGoworkRecordService
* 办件绩效核查信息 service实现 * 办件绩效核查信息 service实现
...@@ -18,4 +39,115 @@ import lombok.extern.slf4j.Slf4j; ...@@ -18,4 +39,115 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j @Slf4j
public class CheckGoworkRecordServiceImpl extends AbstractCRUDServiceImpl<CheckGoworkRecordDao, CheckGoworkRecordEntity, Long> implements CheckGoworkRecordService { public class CheckGoworkRecordServiceImpl extends AbstractCRUDServiceImpl<CheckGoworkRecordDao, CheckGoworkRecordEntity, Long> implements CheckGoworkRecordService {
@Autowired
private StaffPerformSummaryService staffPerformSummaryService;
@Override
protected void saveAfter(CheckGoworkRecordEntity entity, Context context) throws AppException {
try{
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
query.setStaffId(entity.getStaffId());
query.setCheckTimeStart(DateUtils.getStrDate(entity.getCheckTime()));
query.setCheckTimeEnd(query.getCheckTimeStart());
summaryCheck(query);
}catch (Exception e){
log.error("汇总已审核的核查记录出错",e);
}
}
@Override
public void examine(CheckGoworkRecordEntity entity, Context context) throws AppException {
if(entity.getId()==null){
throw new AppException("核查记录ID不能为空");
}
if (context != null && context.getUser()!=null) {
IUser user = context.getUser();
entity.setUpdateUserId(user.getId());
entity.setCheckPerson(user.getRealName());
}
entity.setCheckTime(new Date());
entity.setUpdateTime(entity.getCheckTime());
entity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //处理状态(1.未处理,2.已处理)
dao.update(entity);
try{
CheckGoworkRecordEntity temp = this.get(entity.getId());
if(temp!=null) {
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
query.setStaffId(temp.getStaffId());
summaryCheck(query);
}
}catch (Exception e){
log.error("汇总已审核的核查记录出错",e);
}
}
@Override
public List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) throws AppException {
if(StringUtils.isEmpty(query.getCheckTimeStart())||StringUtils.isEmpty(query.getCheckTimeStart())){
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar=Calendar.getInstance();
calendar.set(Calendar.DAY_OF_MONTH, 1);
String startTime = format.format(calendar.getTime());
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
String endTime = format.format(calendar.getTime());
query.setCheckTimeStart(startTime);
query.setCheckTimeEnd(endTime);
}
List<StaffCheckSummaryVo> summaryVoList = dao.summaryCheck(query);
if(CollectionUtils.isNotEmpty(summaryVoList)){
for(StaffCheckSummaryVo vo:summaryVoList){
StaffPerformSummaryEntity staffPerformSummaryEntity = new StaffPerformSummaryEntity();
BeanUtils.copyProperties(vo,staffPerformSummaryEntity, BeanUtil.getNullPropertyNames(vo));
staffPerformSummaryEntity.setWorkScore(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.getAssessScore()==null){
staffPerformSummaryEntity.setAssessScore(new BigDecimal(0));
}
if(temp.getOtherScore()==null){
staffPerformSummaryEntity.setOtherScore(new BigDecimal(0));
}
if(temp.getAttendScore()==null){
staffPerformSummaryEntity.setAttendScore(new BigDecimal(0));
}
if(temp.getEffectScore()==null){
staffPerformSummaryEntity.setEffectScore(new BigDecimal(0));
}
BigDecimal erro = new BigDecimal(0);
erro.add(staffPerformSummaryEntity.getAssessScore());
erro.add(staffPerformSummaryEntity.getAttendScore());
erro.add(staffPerformSummaryEntity.getOtherScore());
erro.add(staffPerformSummaryEntity.getWorkScore());
erro.add(staffPerformSummaryEntity.getEffectScore());
staffPerformSummaryEntity.setErrorScore(erro);
BigDecimal total = new BigDecimal(100);
staffPerformSummaryEntity.setTotalScore(total.subtract(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.setAssessScore(new BigDecimal(0));
staffPerformSummaryEntity.setOtherScore(new BigDecimal(0));
staffPerformSummaryEntity.setEffectScore(new BigDecimal(0));
staffPerformSummaryEntity.setErrorScore(vo.getSumScore());
BigDecimal total = new BigDecimal(100);
staffPerformSummaryEntity.setTotalScore(total.subtract(vo.getSumScore()));
staffPerformSummaryEntity.setCreateUserId(1l);
staffPerformSummaryEntity.setCreateTime(new Date());
staffPerformSummaryService.save(staffPerformSummaryEntity);
}
}
}
return summaryVoList;
}
} }
\ No newline at end of file
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.util.DateUtils;
import com.mortals.framework.util.StringUtils;
import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo;
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;
...@@ -7,6 +20,13 @@ import com.mortals.xhx.module.check.dao.CheckOtherRecordDao; ...@@ -7,6 +20,13 @@ import com.mortals.xhx.module.check.dao.CheckOtherRecordDao;
import com.mortals.xhx.module.check.model.CheckOtherRecordEntity; import com.mortals.xhx.module.check.model.CheckOtherRecordEntity;
import com.mortals.xhx.module.check.service.CheckOtherRecordService; import com.mortals.xhx.module.check.service.CheckOtherRecordService;
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.List;
/** /**
* CheckOtherRecordService * CheckOtherRecordService
* 其它绩效核查信息 service实现 * 其它绩效核查信息 service实现
...@@ -18,4 +38,114 @@ import lombok.extern.slf4j.Slf4j; ...@@ -18,4 +38,114 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j @Slf4j
public class CheckOtherRecordServiceImpl extends AbstractCRUDServiceImpl<CheckOtherRecordDao, CheckOtherRecordEntity, Long> implements CheckOtherRecordService { public class CheckOtherRecordServiceImpl extends AbstractCRUDServiceImpl<CheckOtherRecordDao, CheckOtherRecordEntity, Long> implements CheckOtherRecordService {
@Autowired
private StaffPerformSummaryService staffPerformSummaryService;
@Override
protected void saveAfter(CheckOtherRecordEntity entity, Context context) throws AppException {
try{
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
query.setStaffId(entity.getStaffId());
query.setCheckTimeStart(DateUtils.getStrDate(entity.getCheckTime()));
query.setCheckTimeEnd(query.getCheckTimeStart());
summaryCheck(query);
}catch (Exception e){
log.error("汇总已审核的核查记录出错",e);
}
}
@Override
public void examine(CheckOtherRecordEntity entity, Context context) throws AppException {
if(entity.getId()==null){
throw new AppException("核查记录ID不能为空");
}
if (context != null && context.getUser()!=null) {
IUser user = context.getUser();
entity.setUpdateUserId(user.getId());
entity.setCheckPerson(user.getRealName());
}
entity.setCheckTime(new Date());
entity.setUpdateTime(entity.getCheckTime());
entity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //处理状态(1.未处理,2.已处理)
dao.update(entity);
try{
CheckOtherRecordEntity temp = this.get(entity.getId());
if(temp!=null) {
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
query.setStaffId(temp.getStaffId());
summaryCheck(query);
}
}catch (Exception e){
log.error("汇总已审核的核查记录出错",e);
}
}
@Override
public List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) throws AppException {
if(StringUtils.isEmpty(query.getCheckTimeStart())||StringUtils.isEmpty(query.getCheckTimeStart())){
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar=Calendar.getInstance();
calendar.set(Calendar.DAY_OF_MONTH, 1);
String startTime = format.format(calendar.getTime());
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
String endTime = format.format(calendar.getTime());
query.setCheckTimeStart(startTime);
query.setCheckTimeEnd(endTime);
}
List<StaffCheckSummaryVo> summaryVoList = dao.summaryCheck(query);
if(CollectionUtils.isNotEmpty(summaryVoList)){
for(StaffCheckSummaryVo vo:summaryVoList){
StaffPerformSummaryEntity staffPerformSummaryEntity = new StaffPerformSummaryEntity();
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.getAssessScore()==null){
staffPerformSummaryEntity.setAssessScore(new BigDecimal(0));
}
if(temp.getAttendScore()==null){
staffPerformSummaryEntity.setAttendScore(new BigDecimal(0));
}
if(temp.getWorkScore()==null){
staffPerformSummaryEntity.setWorkScore(new BigDecimal(0));
}
if(temp.getEffectScore()==null){
staffPerformSummaryEntity.setEffectScore(new BigDecimal(0));
}
BigDecimal erro = new BigDecimal(0);
erro.add(staffPerformSummaryEntity.getAssessScore());
erro.add(staffPerformSummaryEntity.getAttendScore());
erro.add(staffPerformSummaryEntity.getOtherScore());
erro.add(staffPerformSummaryEntity.getWorkScore());
erro.add(staffPerformSummaryEntity.getEffectScore());
staffPerformSummaryEntity.setErrorScore(erro);
BigDecimal total = new BigDecimal(100);
staffPerformSummaryEntity.setTotalScore(total.subtract(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.setAssessScore(new BigDecimal(0));
staffPerformSummaryEntity.setWorkScore(new BigDecimal(0));
staffPerformSummaryEntity.setEffectScore(new BigDecimal(0));
staffPerformSummaryEntity.setErrorScore(vo.getSumScore());
BigDecimal total = new BigDecimal(100);
staffPerformSummaryEntity.setTotalScore(total.subtract(vo.getSumScore()));
staffPerformSummaryEntity.setCreateUserId(1l);
staffPerformSummaryEntity.setCreateTime(new Date());
staffPerformSummaryService.save(staffPerformSummaryEntity);
}
}
}
return summaryVoList;
}
} }
\ No newline at end of file
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.util.DateUtils;
import com.mortals.framework.util.StringUtils;
import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery;
import com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo;
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;
...@@ -7,6 +20,13 @@ import com.mortals.xhx.module.check.dao.CheckReviewRecordDao; ...@@ -7,6 +20,13 @@ import com.mortals.xhx.module.check.dao.CheckReviewRecordDao;
import com.mortals.xhx.module.check.model.CheckReviewRecordEntity; import com.mortals.xhx.module.check.model.CheckReviewRecordEntity;
import com.mortals.xhx.module.check.service.CheckReviewRecordService; import com.mortals.xhx.module.check.service.CheckReviewRecordService;
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.List;
/** /**
* CheckReviewRecordService * CheckReviewRecordService
* 评价差评绩效核查信息 service实现 * 评价差评绩效核查信息 service实现
...@@ -18,4 +38,114 @@ import lombok.extern.slf4j.Slf4j; ...@@ -18,4 +38,114 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j @Slf4j
public class CheckReviewRecordServiceImpl extends AbstractCRUDServiceImpl<CheckReviewRecordDao, CheckReviewRecordEntity, Long> implements CheckReviewRecordService { public class CheckReviewRecordServiceImpl extends AbstractCRUDServiceImpl<CheckReviewRecordDao, CheckReviewRecordEntity, Long> implements CheckReviewRecordService {
@Autowired
private StaffPerformSummaryService staffPerformSummaryService;
@Override
protected void saveAfter(CheckReviewRecordEntity entity, Context context) throws AppException {
try{
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
query.setStaffId(entity.getStaffId());
query.setCheckTimeStart(DateUtils.getStrDate(entity.getCheckTime()));
query.setCheckTimeEnd(query.getCheckTimeStart());
summaryCheck(query);
}catch (Exception e){
log.error("汇总已审核的核查记录出错",e);
}
}
@Override
public void examine(CheckReviewRecordEntity entity, Context context) throws AppException {
if(entity.getId()==null){
throw new AppException("核查记录ID不能为空");
}
if (context != null && context.getUser()!=null) {
IUser user = context.getUser();
entity.setUpdateUserId(user.getId());
entity.setCheckPerson(user.getRealName());
}
entity.setCheckTime(new Date());
entity.setUpdateTime(entity.getCheckTime());
entity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //处理状态(1.未处理,2.已处理)
dao.update(entity);
try{
CheckReviewRecordEntity temp = this.get(entity.getId());
if(temp!=null) {
StaffCheckSummaryQuery query = new StaffCheckSummaryQuery();
query.setStaffId(temp.getStaffId());
summaryCheck(query);
}
}catch (Exception e){
log.error("汇总已审核的核查记录出错",e);
}
}
@Override
public List<StaffCheckSummaryVo> summaryCheck(StaffCheckSummaryQuery query) throws AppException {
if(StringUtils.isEmpty(query.getCheckTimeStart())||StringUtils.isEmpty(query.getCheckTimeStart())){
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd");
Calendar calendar=Calendar.getInstance();
calendar.set(Calendar.DAY_OF_MONTH, 1);
String startTime = format.format(calendar.getTime());
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
String endTime = format.format(calendar.getTime());
query.setCheckTimeStart(startTime);
query.setCheckTimeEnd(endTime);
}
List<StaffCheckSummaryVo> summaryVoList = dao.summaryCheck(query);
if(CollectionUtils.isNotEmpty(summaryVoList)){
for(StaffCheckSummaryVo vo:summaryVoList){
StaffPerformSummaryEntity staffPerformSummaryEntity = new StaffPerformSummaryEntity();
BeanUtils.copyProperties(vo,staffPerformSummaryEntity, BeanUtil.getNullPropertyNames(vo));
staffPerformSummaryEntity.setAssessScore(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.getAttendScore()==null){
staffPerformSummaryEntity.setAttendScore(new BigDecimal(0));
}
if(temp.getOtherScore()==null){
staffPerformSummaryEntity.setOtherScore(new BigDecimal(0));
}
if(temp.getWorkScore()==null){
staffPerformSummaryEntity.setWorkScore(new BigDecimal(0));
}
if(temp.getEffectScore()==null){
staffPerformSummaryEntity.setEffectScore(new BigDecimal(0));
}
BigDecimal erro = new BigDecimal(0);
erro.add(staffPerformSummaryEntity.getAssessScore());
erro.add(staffPerformSummaryEntity.getAttendScore());
erro.add(staffPerformSummaryEntity.getOtherScore());
erro.add(staffPerformSummaryEntity.getWorkScore());
erro.add(staffPerformSummaryEntity.getEffectScore());
staffPerformSummaryEntity.setErrorScore(erro);
BigDecimal total = new BigDecimal(100);
staffPerformSummaryEntity.setTotalScore(total.subtract(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.setOtherScore(new BigDecimal(0));
staffPerformSummaryEntity.setWorkScore(new BigDecimal(0));
staffPerformSummaryEntity.setEffectScore(new BigDecimal(0));
staffPerformSummaryEntity.setErrorScore(vo.getSumScore());
BigDecimal total = new BigDecimal(100);
staffPerformSummaryEntity.setTotalScore(total.subtract(vo.getSumScore()));
staffPerformSummaryEntity.setCreateUserId(1l);
staffPerformSummaryEntity.setCreateTime(new Date());
staffPerformSummaryService.save(staffPerformSummaryEntity);
}
}
}
return summaryVoList;
}
} }
\ No newline at end of file
...@@ -48,5 +48,36 @@ public class CheckAttendRecordController extends BaseCRUDJsonBodyMappingControll ...@@ -48,5 +48,36 @@ public class CheckAttendRecordController extends BaseCRUDJsonBodyMappingControll
super.init(model, context); super.init(model, context);
} }
/**
* 审核
* @param entity
* @return
*/
@PostMapping({"examine"})
public String examine(@RequestBody CheckAttendRecordEntity entity) {
Map<String, Object> model = new HashMap();
Context context = this.getContext();
int code = 1;
String busiDesc = "考勤绩效核查审核";
try {
this.service.examine(entity, context);
model.put("id", entity.getId());
model.put("entity", entity);
model.put("message_info", busiDesc + "成功");
this.recordSysLog(this.request, busiDesc + " 【成功】 [id:" + entity.getId() + "]");
} catch (Exception var9) {
this.doException(this.request, busiDesc, model, var9);
model.put("entity", entity);
this.init(model, context);
code = this.saveException(entity, model, context, var9);
}
this.init(model, context);
JSONObject ret = new JSONObject();
ret.put("code", code);
ret.put("msg", model.remove("message_info"));
ret.put("data", model);
return ret.toJSONString();
}
} }
\ No newline at end of file
...@@ -48,5 +48,35 @@ public class CheckComplainRecordController extends BaseCRUDJsonBodyMappingContro ...@@ -48,5 +48,35 @@ public class CheckComplainRecordController extends BaseCRUDJsonBodyMappingContro
super.init(model, context); super.init(model, context);
} }
/**
* 审核
* @param entity
* @return
*/
@PostMapping({"examine"})
public String examine(@RequestBody CheckComplainRecordEntity entity) {
Map<String, Object> model = new HashMap();
Context context = this.getContext();
int code = 1;
String busiDesc = "考勤绩效核查审核";
try {
this.service.examine(entity, context);
model.put("id", entity.getId());
model.put("entity", entity);
model.put("message_info", busiDesc + "成功");
this.recordSysLog(this.request, busiDesc + " 【成功】 [id:" + entity.getId() + "]");
} catch (Exception var9) {
this.doException(this.request, busiDesc, model, var9);
model.put("entity", entity);
this.init(model, context);
code = this.saveException(entity, model, context, var9);
}
this.init(model, context);
JSONObject ret = new JSONObject();
ret.put("code", code);
ret.put("msg", model.remove("message_info"));
ret.put("data", model);
return ret.toJSONString();
}
} }
\ No newline at end of file
...@@ -49,5 +49,35 @@ public class CheckEffectRecordController extends BaseCRUDJsonBodyMappingControll ...@@ -49,5 +49,35 @@ public class CheckEffectRecordController extends BaseCRUDJsonBodyMappingControll
super.init(model, context); super.init(model, context);
} }
/**
* 审核
* @param entity
* @return
*/
@PostMapping({"examine"})
public String examine(@RequestBody CheckEffectRecordEntity entity) {
Map<String, Object> model = new HashMap();
Context context = this.getContext();
int code = 1;
String busiDesc = "考勤绩效核查审核";
try {
this.service.examine(entity, context);
model.put("id", entity.getId());
model.put("entity", entity);
model.put("message_info", busiDesc + "成功");
this.recordSysLog(this.request, busiDesc + " 【成功】 [id:" + entity.getId() + "]");
} catch (Exception var9) {
this.doException(this.request, busiDesc, model, var9);
model.put("entity", entity);
this.init(model, context);
code = this.saveException(entity, model, context, var9);
}
this.init(model, context);
JSONObject ret = new JSONObject();
ret.put("code", code);
ret.put("msg", model.remove("message_info"));
ret.put("data", model);
return ret.toJSONString();
}
} }
\ No newline at end of file
...@@ -48,5 +48,35 @@ public class CheckGoworkRecordController extends BaseCRUDJsonBodyMappingControll ...@@ -48,5 +48,35 @@ public class CheckGoworkRecordController extends BaseCRUDJsonBodyMappingControll
super.init(model, context); super.init(model, context);
} }
/**
* 审核
* @param entity
* @return
*/
@PostMapping({"examine"})
public String examine(@RequestBody CheckGoworkRecordEntity entity) {
Map<String, Object> model = new HashMap();
Context context = this.getContext();
int code = 1;
String busiDesc = "考勤绩效核查审核";
try {
this.service.examine(entity, context);
model.put("id", entity.getId());
model.put("entity", entity);
model.put("message_info", busiDesc + "成功");
this.recordSysLog(this.request, busiDesc + " 【成功】 [id:" + entity.getId() + "]");
} catch (Exception var9) {
this.doException(this.request, busiDesc, model, var9);
model.put("entity", entity);
this.init(model, context);
code = this.saveException(entity, model, context, var9);
}
this.init(model, context);
JSONObject ret = new JSONObject();
ret.put("code", code);
ret.put("msg", model.remove("message_info"));
ret.put("data", model);
return ret.toJSONString();
}
} }
\ No newline at end of file
...@@ -49,5 +49,35 @@ public class CheckOtherRecordController extends BaseCRUDJsonBodyMappingControlle ...@@ -49,5 +49,35 @@ public class CheckOtherRecordController extends BaseCRUDJsonBodyMappingControlle
super.init(model, context); super.init(model, context);
} }
/**
* 审核
* @param entity
* @return
*/
@PostMapping({"examine"})
public String examine(@RequestBody CheckOtherRecordEntity entity) {
Map<String, Object> model = new HashMap();
Context context = this.getContext();
int code = 1;
String busiDesc = "考勤绩效核查审核";
try {
this.service.examine(entity, context);
model.put("id", entity.getId());
model.put("entity", entity);
model.put("message_info", busiDesc + "成功");
this.recordSysLog(this.request, busiDesc + " 【成功】 [id:" + entity.getId() + "]");
} catch (Exception var9) {
this.doException(this.request, busiDesc, model, var9);
model.put("entity", entity);
this.init(model, context);
code = this.saveException(entity, model, context, var9);
}
this.init(model, context);
JSONObject ret = new JSONObject();
ret.put("code", code);
ret.put("msg", model.remove("message_info"));
ret.put("data", model);
return ret.toJSONString();
}
} }
\ No newline at end of file
...@@ -50,5 +50,35 @@ public class CheckReviewRecordController extends BaseCRUDJsonBodyMappingControll ...@@ -50,5 +50,35 @@ public class CheckReviewRecordController extends BaseCRUDJsonBodyMappingControll
super.init(model, context); super.init(model, context);
} }
/**
* 审核
* @param entity
* @return
*/
@PostMapping({"examine"})
public String examine(@RequestBody CheckReviewRecordEntity entity) {
Map<String, Object> model = new HashMap();
Context context = this.getContext();
int code = 1;
String busiDesc = "考勤绩效核查审核";
try {
this.service.examine(entity, context);
model.put("id", entity.getId());
model.put("entity", entity);
model.put("message_info", busiDesc + "成功");
this.recordSysLog(this.request, busiDesc + " 【成功】 [id:" + entity.getId() + "]");
} catch (Exception var9) {
this.doException(this.request, busiDesc, model, var9);
model.put("entity", entity);
this.init(model, context);
code = this.saveException(entity, model, context, var9);
}
this.init(model, context);
JSONObject ret = new JSONObject();
ret.put("code", code);
ret.put("msg", model.remove("message_info"));
ret.put("data", model);
return ret.toJSONString();
}
} }
\ No newline at end of file
package com.mortals.xhx.module.feedback.service.impl; package com.mortals.xhx.module.feedback.service.impl;
import com.mortals.xhx.module.feedback.model.*;
import com.mortals.xhx.module.feedback.service.FeedbackStaffService;
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;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.xhx.module.feedback.dao.FeedbackDao; import com.mortals.xhx.module.feedback.dao.FeedbackDao;
import com.mortals.xhx.module.feedback.model.FeedbackEntity;
import com.mortals.xhx.module.feedback.service.FeedbackService; import com.mortals.xhx.module.feedback.service.FeedbackService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import com.mortals.xhx.module.feedback.model.FeedbackQuestionEntity;
import com.mortals.xhx.module.feedback.model.FeedbackQuestionQuery;
import com.mortals.xhx.module.feedback.service.FeedbackQuestionService; import com.mortals.xhx.module.feedback.service.FeedbackQuestionService;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
...@@ -27,6 +28,16 @@ import lombok.extern.slf4j.Slf4j; ...@@ -27,6 +28,16 @@ import lombok.extern.slf4j.Slf4j;
public class FeedbackServiceImpl extends AbstractCRUDServiceImpl<FeedbackDao, FeedbackEntity, Long> implements FeedbackService { public class FeedbackServiceImpl extends AbstractCRUDServiceImpl<FeedbackDao, FeedbackEntity, Long> implements FeedbackService {
@Autowired @Autowired
private FeedbackQuestionService feedbackQuestionService; private FeedbackQuestionService feedbackQuestionService;
@Autowired
private FeedbackStaffService feedbackStaffService;
@Override
protected void saveBefore(FeedbackEntity entity, Context context) throws AppException {
super.saveBefore(entity,context);
if(!ObjectUtils.isEmpty(entity.getStaffList())){
entity.setInviteNum(entity.getStaffList().size());
}
}
@Override @Override
protected void saveAfter(FeedbackEntity entity, Context context) throws AppException { protected void saveAfter(FeedbackEntity entity, Context context) throws AppException {
...@@ -38,6 +49,18 @@ public class FeedbackServiceImpl extends AbstractCRUDServiceImpl<FeedbackDao, Fe ...@@ -38,6 +49,18 @@ public class FeedbackServiceImpl extends AbstractCRUDServiceImpl<FeedbackDao, Fe
}).count(); }).count();
feedbackQuestionService.save(entity.getFeedbackQuestionList()); feedbackQuestionService.save(entity.getFeedbackQuestionList());
} }
if(!ObjectUtils.isEmpty(entity.getStaffList())){
List<FeedbackStaffEntity> staffEntityList = new ArrayList<>();
for(Long staffId:entity.getStaffList()){
FeedbackStaffEntity feedbackStaffEntity = new FeedbackStaffEntity();
feedbackStaffEntity.setFeedbackId(entity.getId());
feedbackStaffEntity.setStaffId(staffId);
feedbackStaffEntity.setCreateTime(new Date());
feedbackStaffEntity.setCreateUserId(this.getContextUserId(context));
staffEntityList.add(feedbackStaffEntity);
}
feedbackStaffService.save(staffEntityList,context);
}
super.saveAfter(entity, context); super.saveAfter(entity, context);
} }
...@@ -55,6 +78,20 @@ public class FeedbackServiceImpl extends AbstractCRUDServiceImpl<FeedbackDao, Fe ...@@ -55,6 +78,20 @@ public class FeedbackServiceImpl extends AbstractCRUDServiceImpl<FeedbackDao, Fe
}).count(); }).count();
feedbackQuestionService.save(entity.getFeedbackQuestionList()); feedbackQuestionService.save(entity.getFeedbackQuestionList());
} }
if(!ObjectUtils.isEmpty(entity.getStaffList())){
Long[] feedbackStaffIds = feedbackStaffService.find(new FeedbackStaffQuery().feedbackId(entity.getId())).stream().map(FeedbackStaffEntity::getId).toArray(Long[]::new);
feedbackStaffService.remove(feedbackStaffIds,context);
List<FeedbackStaffEntity> staffEntityList = new ArrayList<>();
for(Long staffId:entity.getStaffList()){
FeedbackStaffEntity feedbackStaffEntity = new FeedbackStaffEntity();
feedbackStaffEntity.setFeedbackId(entity.getId());
feedbackStaffEntity.setStaffId(staffId);
feedbackStaffEntity.setCreateTime(new Date());
feedbackStaffEntity.setCreateUserId(this.getContextUserId(context));
staffEntityList.add(feedbackStaffEntity);
}
feedbackStaffService.save(staffEntityList,context);
}
super.updateAfter(entity, context); super.updateAfter(entity, context);
} }
...@@ -62,6 +99,8 @@ public class FeedbackServiceImpl extends AbstractCRUDServiceImpl<FeedbackDao, Fe ...@@ -62,6 +99,8 @@ public class FeedbackServiceImpl extends AbstractCRUDServiceImpl<FeedbackDao, Fe
protected void removeAfter(Long[] ids, Context context, int result) throws AppException { protected void removeAfter(Long[] ids, Context context, int result) throws AppException {
List<FeedbackQuestionEntity> feedbackQuestionlist = feedbackQuestionService.find(new FeedbackQuestionQuery().feedbackIdList(Arrays.asList(ids))); List<FeedbackQuestionEntity> feedbackQuestionlist = feedbackQuestionService.find(new FeedbackQuestionQuery().feedbackIdList(Arrays.asList(ids)));
feedbackQuestionService.removeList(feedbackQuestionlist,context); feedbackQuestionService.removeList(feedbackQuestionlist,context);
List<FeedbackStaffEntity> staffEntityList = feedbackStaffService.find(new FeedbackStaffQuery().feedbackIdList(Arrays.asList(ids)));
feedbackStaffService.removeList(staffEntityList,context);
super.removeAfter(ids, context, result); super.removeAfter(ids, context, result);
} }
} }
\ No newline at end of file
...@@ -8,7 +8,7 @@ import java.util.List; ...@@ -8,7 +8,7 @@ import java.util.List;
* 绩效记录申诉信息 DAO接口 * 绩效记录申诉信息 DAO接口
* *
* @author zxfei * @author zxfei
* @date 2023-07-05 * @date 2023-07-12
*/ */
public interface PerformAttendAppealDao extends ICRUDDao<PerformAttendAppealEntity,Long>{ public interface PerformAttendAppealDao extends ICRUDDao<PerformAttendAppealEntity,Long>{
......
...@@ -11,7 +11,7 @@ import java.util.List; ...@@ -11,7 +11,7 @@ import java.util.List;
* 绩效记录申诉信息DaoImpl DAO接口 * 绩效记录申诉信息DaoImpl DAO接口
* *
* @author zxfei * @author zxfei
* @date 2023-07-05 * @date 2023-07-12
*/ */
@Repository("performAttendAppealDao") @Repository("performAttendAppealDao")
public class PerformAttendAppealDaoImpl extends BaseCRUDDaoMybatis<PerformAttendAppealEntity,Long> implements PerformAttendAppealDao { public class PerformAttendAppealDaoImpl extends BaseCRUDDaoMybatis<PerformAttendAppealEntity,Long> implements PerformAttendAppealDao {
......
...@@ -14,7 +14,7 @@ import lombok.Data; ...@@ -14,7 +14,7 @@ import lombok.Data;
* 绩效记录申诉信息实体对象 * 绩效记录申诉信息实体对象
* *
* @author zxfei * @author zxfei
* @date 2023-07-05 * @date 2023-07-12
*/ */
@Data @Data
public class PerformAttendAppealEntity extends PerformAttendAppealVo { public class PerformAttendAppealEntity extends PerformAttendAppealVo {
...@@ -134,10 +134,108 @@ public class PerformAttendAppealEntity extends PerformAttendAppealVo { ...@@ -134,10 +134,108 @@ public class PerformAttendAppealEntity extends PerformAttendAppealVo {
@Excel(name = "说明") @Excel(name = "说明")
private String remark; private String remark;
/** /**
* 违规类型 * 违规类型
*/ */
private String violationType; private String violationType;
/** /**
* 评价结果(1.非常不满意,2.差评)
*/
private Integer reviewResult;
/**
* 评价时间
*/
private Date reviewTime;
/**
* 评价来源(窗口评价系统,导视系统,自助服务系统,微官网,其它)
*/
@Excel(name = "评价来源", readConverterExp = "评价来源(窗口评价系统,导视系统,自助服务系统,微官网,其它)")
private String reviewSource;
/**
* 评价设备
*/
private String reviewDevice;
/**
* 投诉标题
*/
@Excel(name = "投诉标题")
private String complainTitle;
/**
* 投诉内容
*/
@Excel(name = "投诉内容")
private String complainContent;
/**
* 投诉人真实姓名
*/
private String complainRealName;
/**
* 联系电话
*/
@Excel(name = "联系电话")
private String contact;
/**
* 投诉时间
*/
private Date complainTime;
/**
* 投诉来源
*/
private String complainSource;
/**
* 投诉设备
*/
private String complainDevice;
/**
* 办件编码
*/
@Excel(name = "办件编码")
private String goworkCode;
/**
* 办件所属部门
*/
@Excel(name = "办件所属部门")
private String goworkDepts;
/**
* 事项名称
*/
@Excel(name = "事项名称")
private String matterlName;
/**
* 办理时间
*/
@Excel(name = "办理时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date goworkTime;
/**
* 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
*/
@Excel(name = "违规类型", readConverterExp = "1=脱岗,2.离岗,3.玩手机,4.睡觉")
private Integer irregularType;
/**
* 发生时间
*/
@Excel(name = "发生时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date happenTime;
/**
* 持续时间,秒
*/
private Integer duration;
/**
* 报警时间
*/
private Date alarmTime;
/**
* 图片凭证地址
*/
private String snapPath;
/**
* 违规类型(1.工作纪律)
*/
private Integer irregularOtherType;
/**
* 绩效类型【attend:考勤绩效,review:评价差评绩效,complain:评价投诉绩效,gowork:办件绩效,effect:效能绩效,other:其它绩效】
*/
private String performType;
/**
* 绩效记录申诉附件信息信息 * 绩效记录申诉附件信息信息
*/ */
private List<PerformAttendAppealFilesEntity> performAttendAppealFilesList=new ArrayList<>();; private List<PerformAttendAppealFilesEntity> performAttendAppealFilesList=new ArrayList<>();;
...@@ -221,5 +319,49 @@ public class PerformAttendAppealEntity extends PerformAttendAppealVo { ...@@ -221,5 +319,49 @@ public class PerformAttendAppealEntity extends PerformAttendAppealVo {
this.remark = ""; this.remark = "";
this.violationType = ""; this.violationType = "";
this.reviewResult = -1;
this.reviewTime = null;
this.reviewSource = "";
this.reviewDevice = "";
this.complainTitle = "";
this.complainContent = "";
this.complainRealName = "";
this.contact = "";
this.complainTime = null;
this.complainSource = "";
this.complainDevice = "";
this.goworkCode = "";
this.goworkDepts = "";
this.matterlName = "";
this.goworkTime = null;
this.irregularType = -1;
this.happenTime = null;
this.duration = 0;
this.alarmTime = null;
this.snapPath = "";
this.irregularOtherType = -1;
this.performType = "";
} }
} }
\ No newline at end of file
...@@ -9,7 +9,7 @@ import com.mortals.xhx.module.perform.model.PerformAttendAppealEntity; ...@@ -9,7 +9,7 @@ import com.mortals.xhx.module.perform.model.PerformAttendAppealEntity;
* 绩效记录申诉信息查询对象 * 绩效记录申诉信息查询对象
* *
* @author zxfei * @author zxfei
* @date 2023-07-05 * @date 2023-07-12
*/ */
public class PerformAttendAppealQuery extends PerformAttendAppealEntity { public class PerformAttendAppealQuery extends PerformAttendAppealEntity {
/** 开始 序号,主键,自增长 */ /** 开始 序号,主键,自增长 */
...@@ -309,11 +309,166 @@ public class PerformAttendAppealQuery extends PerformAttendAppealEntity { ...@@ -309,11 +309,166 @@ public class PerformAttendAppealQuery extends PerformAttendAppealEntity {
/** 结束 更新时间 */ /** 结束 更新时间 */
private String updateTimeEnd; private String updateTimeEnd;
/** 违规类型 */ /** 违规类型 */
private List<String> violationTypeList; private List<String> violationTypeList;
/** 违规类型排除列表 */ /** 违规类型排除列表 */
private List <String> violationTypeNotList; private List <String> violationTypeNotList;
/** 开始 评价结果(1.非常不满意,2.差评) */
private Integer reviewResultStart;
/** 结束 评价结果(1.非常不满意,2.差评) */
private Integer reviewResultEnd;
/** 增加 评价结果(1.非常不满意,2.差评) */
private Integer reviewResultIncrement;
/** 评价结果(1.非常不满意,2.差评)列表 */
private List <Integer> reviewResultList;
/** 评价结果(1.非常不满意,2.差评)排除列表 */
private List <Integer> reviewResultNotList;
/** 开始 评价时间 */
private String reviewTimeStart;
/** 结束 评价时间 */
private String reviewTimeEnd;
/** 评价来源(窗口评价系统,导视系统,自助服务系统,微官网,其它) */
private List<String> reviewSourceList;
/** 评价来源(窗口评价系统,导视系统,自助服务系统,微官网,其它)排除列表 */
private List <String> reviewSourceNotList;
/** 评价设备 */
private List<String> reviewDeviceList;
/** 评价设备排除列表 */
private List <String> reviewDeviceNotList;
/** 投诉标题 */
private List<String> complainTitleList;
/** 投诉标题排除列表 */
private List <String> complainTitleNotList;
/** 投诉内容 */
private List<String> complainContentList;
/** 投诉内容排除列表 */
private List <String> complainContentNotList;
/** 投诉人真实姓名 */
private List<String> complainRealNameList;
/** 投诉人真实姓名排除列表 */
private List <String> complainRealNameNotList;
/** 联系电话 */
private List<String> contactList;
/** 联系电话排除列表 */
private List <String> contactNotList;
/** 开始 投诉时间 */
private String complainTimeStart;
/** 结束 投诉时间 */
private String complainTimeEnd;
/** 投诉来源 */
private List<String> complainSourceList;
/** 投诉来源排除列表 */
private List <String> complainSourceNotList;
/** 投诉设备 */
private List<String> complainDeviceList;
/** 投诉设备排除列表 */
private List <String> complainDeviceNotList;
/** 办件编码 */
private List<String> goworkCodeList;
/** 办件编码排除列表 */
private List <String> goworkCodeNotList;
/** 办件所属部门 */
private List<String> goworkDeptsList;
/** 办件所属部门排除列表 */
private List <String> goworkDeptsNotList;
/** 事项名称 */
private List<String> matterlNameList;
/** 事项名称排除列表 */
private List <String> matterlNameNotList;
/** 开始 办理时间 */
private String goworkTimeStart;
/** 结束 办理时间 */
private String goworkTimeEnd;
/** 开始 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉) */
private Integer irregularTypeStart;
/** 结束 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉) */
private Integer irregularTypeEnd;
/** 增加 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉) */
private Integer irregularTypeIncrement;
/** 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)列表 */
private List <Integer> irregularTypeList;
/** 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)排除列表 */
private List <Integer> irregularTypeNotList;
/** 开始 发生时间 */
private String happenTimeStart;
/** 结束 发生时间 */
private String happenTimeEnd;
/** 开始 持续时间,秒 */
private Integer durationStart;
/** 结束 持续时间,秒 */
private Integer durationEnd;
/** 增加 持续时间,秒 */
private Integer durationIncrement;
/** 持续时间,秒列表 */
private List <Integer> durationList;
/** 持续时间,秒排除列表 */
private List <Integer> durationNotList;
/** 开始 报警时间 */
private String alarmTimeStart;
/** 结束 报警时间 */
private String alarmTimeEnd;
/** 图片凭证地址 */
private List<String> snapPathList;
/** 图片凭证地址排除列表 */
private List <String> snapPathNotList;
/** 开始 违规类型(1.工作纪律) */
private Integer irregularOtherTypeStart;
/** 结束 违规类型(1.工作纪律) */
private Integer irregularOtherTypeEnd;
/** 增加 违规类型(1.工作纪律) */
private Integer irregularOtherTypeIncrement;
/** 违规类型(1.工作纪律)列表 */
private List <Integer> irregularOtherTypeList;
/** 违规类型(1.工作纪律)排除列表 */
private List <Integer> irregularOtherTypeNotList;
/** 绩效类型【attend:考勤绩效,review:评价差评绩效,complain:评价投诉绩效,gowork:办件绩效,effect:效能绩效,other:其它绩效】 */
private List<String> performTypeList;
/** 绩效类型【attend:考勤绩效,review:评价差评绩效,complain:评价投诉绩效,gowork:办件绩效,effect:效能绩效,other:其它绩效】排除列表 */
private List <String> performTypeNotList;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */ /** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private List<PerformAttendAppealQuery> orConditionList; private List<PerformAttendAppealQuery> orConditionList;
...@@ -1984,7 +2139,7 @@ public class PerformAttendAppealQuery extends PerformAttendAppealEntity { ...@@ -1984,7 +2139,7 @@ public class PerformAttendAppealQuery extends PerformAttendAppealEntity {
} }
/** /**
* 获取 违规类型 * 获取 违规类型
* @return violationTypeList * @return violationTypeList
*/ */
public List<String> getViolationTypeList(){ public List<String> getViolationTypeList(){
...@@ -1992,7 +2147,7 @@ public class PerformAttendAppealQuery extends PerformAttendAppealEntity { ...@@ -1992,7 +2147,7 @@ public class PerformAttendAppealQuery extends PerformAttendAppealEntity {
} }
/** /**
* 设置 违规类型 * 设置 违规类型
* @param violationTypeList * @param violationTypeList
*/ */
public void setViolationTypeList(List<String> violationTypeList){ public void setViolationTypeList(List<String> violationTypeList){
...@@ -2000,7 +2155,7 @@ public class PerformAttendAppealQuery extends PerformAttendAppealEntity { ...@@ -2000,7 +2155,7 @@ public class PerformAttendAppealQuery extends PerformAttendAppealEntity {
} }
/** /**
* 获取 违规类型 * 获取 违规类型
* @return violationTypeNotList * @return violationTypeNotList
*/ */
public List<String> getViolationTypeNotList(){ public List<String> getViolationTypeNotList(){
...@@ -2008,7 +2163,7 @@ public class PerformAttendAppealQuery extends PerformAttendAppealEntity { ...@@ -2008,7 +2163,7 @@ public class PerformAttendAppealQuery extends PerformAttendAppealEntity {
} }
/** /**
* 设置 违规类型 * 设置 违规类型
* @param violationTypeNotList * @param violationTypeNotList
*/ */
public void setViolationTypeNotList(List<String> violationTypeNotList){ public void setViolationTypeNotList(List<String> violationTypeNotList){
...@@ -2016,382 +2171,1282 @@ public class PerformAttendAppealQuery extends PerformAttendAppealEntity { ...@@ -2016,382 +2171,1282 @@ public class PerformAttendAppealQuery extends PerformAttendAppealEntity {
} }
/** /**
* 设置 序号,主键,自增长 * 获取 开始 评价结果(1.非常不满意,2.差评)
* @param id * @return reviewResultStart
*/ */
public PerformAttendAppealQuery id(Long id){ public Integer getReviewResultStart(){
setId(id); return this.reviewResultStart;
return this;
} }
/** /**
* 设置 开始 序号,主键,自增长 * 设置 开始 评价结果(1.非常不满意,2.差评)
* @param idStart * @param reviewResultStart
*/ */
public PerformAttendAppealQuery idStart(Long idStart){ public void setReviewResultStart(Integer reviewResultStart){
this.idStart = idStart; this.reviewResultStart = reviewResultStart;
return this;
} }
/** /**
* 设置 结束 序号,主键,自增长 * 获取 结束 评价结果(1.非常不满意,2.差评)
* @param idEnd * @return $reviewResultEnd
*/ */
public PerformAttendAppealQuery idEnd(Long idEnd){ public Integer getReviewResultEnd(){
this.idEnd = idEnd; return this.reviewResultEnd;
return this;
} }
/** /**
* 设置 增加 序号,主键,自增长 * 设置 结束 评价结果(1.非常不满意,2.差评)
* @param idIncrement * @param reviewResultEnd
*/ */
public PerformAttendAppealQuery idIncrement(Long idIncrement){ public void setReviewResultEnd(Integer reviewResultEnd){
this.idIncrement = idIncrement; this.reviewResultEnd = reviewResultEnd;
return this;
} }
/** /**
* 设置 序号,主键,自增长 * 获取 增加 评价结果(1.非常不满意,2.差评)
* @param idList * @return reviewResultIncrement
*/ */
public PerformAttendAppealQuery idList(List<Long> idList){ public Integer getReviewResultIncrement(){
this.idList = idList; return this.reviewResultIncrement;
return this;
} }
/** /**
* 设置 序号,主键,自增长 * 设置 增加 评价结果(1.非常不满意,2.差评)
* @param idNotList * @param reviewResultIncrement
*/ */
public PerformAttendAppealQuery idNotList(List<Long> idNotList){ public void setReviewResultIncrement(Integer reviewResultIncrement){
this.idNotList = idNotList; this.reviewResultIncrement = reviewResultIncrement;
return this;
} }
/** /**
* 设置 核查记录Id * 获取 评价结果(1.非常不满意,2.差评)
* @param checkRecordId * @return reviewResultList
*/ */
public PerformAttendAppealQuery checkRecordId(Long checkRecordId){ public List<Integer> getReviewResultList(){
setCheckRecordId(checkRecordId); return this.reviewResultList;
return this;
} }
/** /**
* 设置 开始 核查记录Id * 设置 评价结果(1.非常不满意,2.差评)
* @param checkRecordIdStart * @param reviewResultList
*/ */
public PerformAttendAppealQuery checkRecordIdStart(Long checkRecordIdStart){ public void setReviewResultList(List<Integer> reviewResultList){
this.checkRecordIdStart = checkRecordIdStart; this.reviewResultList = reviewResultList;
return this;
} }
/** /**
* 设置 结束 核查记录Id * 获取 评价结果(1.非常不满意,2.差评)
* @param checkRecordIdEnd * @return reviewResultNotList
*/ */
public PerformAttendAppealQuery checkRecordIdEnd(Long checkRecordIdEnd){ public List<Integer> getReviewResultNotList(){
this.checkRecordIdEnd = checkRecordIdEnd; return this.reviewResultNotList;
return this;
} }
/** /**
* 设置 增加 核查记录Id * 设置 评价结果(1.非常不满意,2.差评)
* @param checkRecordIdIncrement * @param reviewResultNotList
*/ */
public PerformAttendAppealQuery checkRecordIdIncrement(Long checkRecordIdIncrement){ public void setReviewResultNotList(List<Integer> reviewResultNotList){
this.checkRecordIdIncrement = checkRecordIdIncrement; this.reviewResultNotList = reviewResultNotList;
return this;
} }
/** /**
* 设置 核查记录Id * 获取 开始 评价时间
* @param checkRecordIdList * @return reviewTimeStart
*/ */
public PerformAttendAppealQuery checkRecordIdList(List<Long> checkRecordIdList){ public String getReviewTimeStart(){
this.checkRecordIdList = checkRecordIdList; return this.reviewTimeStart;
return this;
} }
/** /**
* 设置 核查记录Id * 设置 开始 评价时间
* @param checkRecordIdNotList * @param reviewTimeStart
*/ */
public PerformAttendAppealQuery checkRecordIdNotList(List<Long> checkRecordIdNotList){ public void setReviewTimeStart(String reviewTimeStart){
this.checkRecordIdNotList = checkRecordIdNotList; this.reviewTimeStart = reviewTimeStart;
return this;
} }
/** /**
* 设置 员工ID * 获取 结束 评价时间
* @param staffId * @return reviewTimeEnd
*/ */
public PerformAttendAppealQuery staffId(Long staffId){ public String getReviewTimeEnd(){
setStaffId(staffId); return this.reviewTimeEnd;
return this;
} }
/** /**
* 设置 开始 员工ID * 设置 结束 评价时间
* @param staffIdStart * @param reviewTimeEnd
*/ */
public PerformAttendAppealQuery staffIdStart(Long staffIdStart){ public void setReviewTimeEnd(String reviewTimeEnd){
this.staffIdStart = staffIdStart; this.reviewTimeEnd = reviewTimeEnd;
return this;
} }
/** /**
* 设置 结束 员工ID * 获取 评价来源(窗口评价系统,导视系统,自助服务系统,微官网,其它)
* @param staffIdEnd * @return reviewSourceList
*/ */
public PerformAttendAppealQuery staffIdEnd(Long staffIdEnd){ public List<String> getReviewSourceList(){
this.staffIdEnd = staffIdEnd; return this.reviewSourceList;
return this;
} }
/** /**
* 设置 增加 员工ID * 设置 评价来源(窗口评价系统,导视系统,自助服务系统,微官网,其它)
* @param staffIdIncrement * @param reviewSourceList
*/ */
public PerformAttendAppealQuery staffIdIncrement(Long staffIdIncrement){ public void setReviewSourceList(List<String> reviewSourceList){
this.staffIdIncrement = staffIdIncrement; this.reviewSourceList = reviewSourceList;
return this;
} }
/** /**
* 设置 员工ID * 获取 评价来源(窗口评价系统,导视系统,自助服务系统,微官网,其它)
* @param staffIdList * @return reviewSourceNotList
*/ */
public PerformAttendAppealQuery staffIdList(List<Long> staffIdList){ public List<String> getReviewSourceNotList(){
this.staffIdList = staffIdList; return this.reviewSourceNotList;
return this;
} }
/** /**
* 设置 员工ID * 设置 评价来源(窗口评价系统,导视系统,自助服务系统,微官网,其它)
* @param staffIdNotList * @param reviewSourceNotList
*/ */
public PerformAttendAppealQuery staffIdNotList(List<Long> staffIdNotList){ public void setReviewSourceNotList(List<String> reviewSourceNotList){
this.staffIdNotList = staffIdNotList; this.reviewSourceNotList = reviewSourceNotList;
return this;
} }
/** /**
* 设置 员工姓名 * 获取 评价设备
* @param staffName * @return reviewDeviceList
*/ */
public PerformAttendAppealQuery staffName(String staffName){ public List<String> getReviewDeviceList(){
setStaffName(staffName); return this.reviewDeviceList;
return this;
} }
/** /**
* 设置 员工姓名 * 设置 评价设备
* @param staffNameList * @param reviewDeviceList
*/ */
public PerformAttendAppealQuery staffNameList(List<String> staffNameList){ public void setReviewDeviceList(List<String> reviewDeviceList){
this.staffNameList = staffNameList; this.reviewDeviceList = reviewDeviceList;
return this;
} }
/** /**
* 设置 工号 * 获取 评价设备
* @param workNum * @return reviewDeviceNotList
*/ */
public PerformAttendAppealQuery workNum(String workNum){ public List<String> getReviewDeviceNotList(){
setWorkNum(workNum); return this.reviewDeviceNotList;
return this;
} }
/** /**
* 设置 工号 * 设置 评价设备
* @param workNumList * @param reviewDeviceNotList
*/ */
public PerformAttendAppealQuery workNumList(List<String> workNumList){ public void setReviewDeviceNotList(List<String> reviewDeviceNotList){
this.workNumList = workNumList; this.reviewDeviceNotList = reviewDeviceNotList;
return this;
} }
/** /**
* 设置 所属部门 * 获取 投诉标题
* @param deptId * @return complainTitleList
*/ */
public PerformAttendAppealQuery deptId(Long deptId){ public List<String> getComplainTitleList(){
setDeptId(deptId); return this.complainTitleList;
return this;
} }
/** /**
* 设置 开始 所属部门 * 设置 投诉标题
* @param deptIdStart * @param complainTitleList
*/ */
public PerformAttendAppealQuery deptIdStart(Long deptIdStart){ public void setComplainTitleList(List<String> complainTitleList){
this.deptIdStart = deptIdStart; this.complainTitleList = complainTitleList;
return this;
} }
/** /**
* 设置 结束 所属部门 * 获取 投诉标题
* @param deptIdEnd * @return complainTitleNotList
*/ */
public PerformAttendAppealQuery deptIdEnd(Long deptIdEnd){ public List<String> getComplainTitleNotList(){
this.deptIdEnd = deptIdEnd; return this.complainTitleNotList;
return this;
} }
/** /**
* 设置 增加 所属部门 * 设置 投诉标题
* @param deptIdIncrement * @param complainTitleNotList
*/ */
public PerformAttendAppealQuery deptIdIncrement(Long deptIdIncrement){ public void setComplainTitleNotList(List<String> complainTitleNotList){
this.deptIdIncrement = deptIdIncrement; this.complainTitleNotList = complainTitleNotList;
return this;
} }
/** /**
* 设置 所属部门 * 获取 投诉内容
* @param deptIdList * @return complainContentList
*/ */
public PerformAttendAppealQuery deptIdList(List<Long> deptIdList){ public List<String> getComplainContentList(){
this.deptIdList = deptIdList; return this.complainContentList;
return this;
} }
/** /**
* 设置 所属部门 * 设置 投诉内容
* @param deptIdNotList * @param complainContentList
*/ */
public PerformAttendAppealQuery deptIdNotList(List<Long> deptIdNotList){ public void setComplainContentList(List<String> complainContentList){
this.deptIdNotList = deptIdNotList; this.complainContentList = complainContentList;
return this;
} }
/** /**
* 设置 所属部门名称 * 获取 投诉内容
* @param deptName * @return complainContentNotList
*/ */
public PerformAttendAppealQuery deptName(String deptName){ public List<String> getComplainContentNotList(){
setDeptName(deptName); return this.complainContentNotList;
return this;
} }
/** /**
* 设置 所属部门名称 * 设置 投诉内容
* @param deptNameList * @param complainContentNotList
*/ */
public PerformAttendAppealQuery deptNameList(List<String> deptNameList){ public void setComplainContentNotList(List<String> complainContentNotList){
this.deptNameList = deptNameList; this.complainContentNotList = complainContentNotList;
return this;
} }
/** /**
* 设置 所属考勤组ID * 获取 投诉人真实姓名
* @param attendanceGroupId * @return complainRealNameList
*/ */
public PerformAttendAppealQuery attendanceGroupId(Long attendanceGroupId){ public List<String> getComplainRealNameList(){
setAttendanceGroupId(attendanceGroupId); return this.complainRealNameList;
return this;
} }
/** /**
* 设置 开始 所属考勤组ID * 设置 投诉人真实姓名
* @param attendanceGroupIdStart * @param complainRealNameList
*/ */
public PerformAttendAppealQuery attendanceGroupIdStart(Long attendanceGroupIdStart){ public void setComplainRealNameList(List<String> complainRealNameList){
this.attendanceGroupIdStart = attendanceGroupIdStart; this.complainRealNameList = complainRealNameList;
return this;
} }
/** /**
* 设置 结束 所属考勤组ID * 获取 投诉人真实姓名
* @param attendanceGroupIdEnd * @return complainRealNameNotList
*/ */
public PerformAttendAppealQuery attendanceGroupIdEnd(Long attendanceGroupIdEnd){ public List<String> getComplainRealNameNotList(){
this.attendanceGroupIdEnd = attendanceGroupIdEnd; return this.complainRealNameNotList;
return this;
} }
/** /**
* 设置 增加 所属考勤组ID * 设置 投诉人真实姓名
* @param attendanceGroupIdIncrement * @param complainRealNameNotList
*/ */
public PerformAttendAppealQuery attendanceGroupIdIncrement(Long attendanceGroupIdIncrement){ public void setComplainRealNameNotList(List<String> complainRealNameNotList){
this.attendanceGroupIdIncrement = attendanceGroupIdIncrement; this.complainRealNameNotList = complainRealNameNotList;
return this;
} }
/** /**
* 设置 所属考勤组ID * 获取 联系电话
* @param attendanceGroupIdList * @return contactList
*/ */
public PerformAttendAppealQuery attendanceGroupIdList(List<Long> attendanceGroupIdList){ public List<String> getContactList(){
this.attendanceGroupIdList = attendanceGroupIdList; return this.contactList;
return this;
} }
/** /**
* 设置 所属考勤组ID * 设置 联系电话
* @param attendanceGroupIdNotList * @param contactList
*/ */
public PerformAttendAppealQuery attendanceGroupIdNotList(List<Long> attendanceGroupIdNotList){ public void setContactList(List<String> contactList){
this.attendanceGroupIdNotList = attendanceGroupIdNotList; this.contactList = contactList;
return this;
} }
/** /**
* 设置 所属考勤组名称 * 获取 联系电话
* @param attendanceGroupName * @return contactNotList
*/ */
public PerformAttendAppealQuery attendanceGroupName(String attendanceGroupName){ public List<String> getContactNotList(){
setAttendanceGroupName(attendanceGroupName); return this.contactNotList;
return this;
} }
/** /**
* 设置 所属考勤组名称 * 设置 联系电话
* @param attendanceGroupNameList * @param contactNotList
*/ */
public PerformAttendAppealQuery attendanceGroupNameList(List<String> attendanceGroupNameList){ public void setContactNotList(List<String> contactNotList){
this.attendanceGroupNameList = attendanceGroupNameList; this.contactNotList = contactNotList;
return this;
} }
/** /**
* 设置 绩效规则id * 获取 开始 投诉时间
* @param ruleId * @return complainTimeStart
*/ */
public PerformAttendAppealQuery ruleId(Long ruleId){ public String getComplainTimeStart(){
setRuleId(ruleId); return this.complainTimeStart;
return this;
} }
/** /**
* 设置 开始 绩效规则id * 设置 开始 投诉时间
* @param ruleIdStart * @param complainTimeStart
*/ */
public PerformAttendAppealQuery ruleIdStart(Long ruleIdStart){ public void setComplainTimeStart(String complainTimeStart){
this.ruleIdStart = ruleIdStart; this.complainTimeStart = complainTimeStart;
return this;
} }
/** /**
* 设置 结束 绩效规则id * 获取 结束 投诉时间
* @param ruleIdEnd * @return complainTimeEnd
*/ */
public PerformAttendAppealQuery ruleIdEnd(Long ruleIdEnd){ public String getComplainTimeEnd(){
this.ruleIdEnd = ruleIdEnd; return this.complainTimeEnd;
return this;
} }
/** /**
* 设置 增加 绩效规则id * 设置 结束 投诉时间
* @param ruleIdIncrement * @param complainTimeEnd
*/
public void setComplainTimeEnd(String complainTimeEnd){
this.complainTimeEnd = complainTimeEnd;
}
/**
* 获取 投诉来源
* @return complainSourceList
*/
public List<String> getComplainSourceList(){
return this.complainSourceList;
}
/**
* 设置 投诉来源
* @param complainSourceList
*/
public void setComplainSourceList(List<String> complainSourceList){
this.complainSourceList = complainSourceList;
}
/**
* 获取 投诉来源
* @return complainSourceNotList
*/
public List<String> getComplainSourceNotList(){
return this.complainSourceNotList;
}
/**
* 设置 投诉来源
* @param complainSourceNotList
*/
public void setComplainSourceNotList(List<String> complainSourceNotList){
this.complainSourceNotList = complainSourceNotList;
}
/**
* 获取 投诉设备
* @return complainDeviceList
*/
public List<String> getComplainDeviceList(){
return this.complainDeviceList;
}
/**
* 设置 投诉设备
* @param complainDeviceList
*/
public void setComplainDeviceList(List<String> complainDeviceList){
this.complainDeviceList = complainDeviceList;
}
/**
* 获取 投诉设备
* @return complainDeviceNotList
*/
public List<String> getComplainDeviceNotList(){
return this.complainDeviceNotList;
}
/**
* 设置 投诉设备
* @param complainDeviceNotList
*/
public void setComplainDeviceNotList(List<String> complainDeviceNotList){
this.complainDeviceNotList = complainDeviceNotList;
}
/**
* 获取 办件编码
* @return goworkCodeList
*/
public List<String> getGoworkCodeList(){
return this.goworkCodeList;
}
/**
* 设置 办件编码
* @param goworkCodeList
*/
public void setGoworkCodeList(List<String> goworkCodeList){
this.goworkCodeList = goworkCodeList;
}
/**
* 获取 办件编码
* @return goworkCodeNotList
*/
public List<String> getGoworkCodeNotList(){
return this.goworkCodeNotList;
}
/**
* 设置 办件编码
* @param goworkCodeNotList
*/
public void setGoworkCodeNotList(List<String> goworkCodeNotList){
this.goworkCodeNotList = goworkCodeNotList;
}
/**
* 获取 办件所属部门
* @return goworkDeptsList
*/
public List<String> getGoworkDeptsList(){
return this.goworkDeptsList;
}
/**
* 设置 办件所属部门
* @param goworkDeptsList
*/
public void setGoworkDeptsList(List<String> goworkDeptsList){
this.goworkDeptsList = goworkDeptsList;
}
/**
* 获取 办件所属部门
* @return goworkDeptsNotList
*/
public List<String> getGoworkDeptsNotList(){
return this.goworkDeptsNotList;
}
/**
* 设置 办件所属部门
* @param goworkDeptsNotList
*/
public void setGoworkDeptsNotList(List<String> goworkDeptsNotList){
this.goworkDeptsNotList = goworkDeptsNotList;
}
/**
* 获取 事项名称
* @return matterlNameList
*/
public List<String> getMatterlNameList(){
return this.matterlNameList;
}
/**
* 设置 事项名称
* @param matterlNameList
*/
public void setMatterlNameList(List<String> matterlNameList){
this.matterlNameList = matterlNameList;
}
/**
* 获取 事项名称
* @return matterlNameNotList
*/
public List<String> getMatterlNameNotList(){
return this.matterlNameNotList;
}
/**
* 设置 事项名称
* @param matterlNameNotList
*/
public void setMatterlNameNotList(List<String> matterlNameNotList){
this.matterlNameNotList = matterlNameNotList;
}
/**
* 获取 开始 办理时间
* @return goworkTimeStart
*/
public String getGoworkTimeStart(){
return this.goworkTimeStart;
}
/**
* 设置 开始 办理时间
* @param goworkTimeStart
*/
public void setGoworkTimeStart(String goworkTimeStart){
this.goworkTimeStart = goworkTimeStart;
}
/**
* 获取 结束 办理时间
* @return goworkTimeEnd
*/
public String getGoworkTimeEnd(){
return this.goworkTimeEnd;
}
/**
* 设置 结束 办理时间
* @param goworkTimeEnd
*/
public void setGoworkTimeEnd(String goworkTimeEnd){
this.goworkTimeEnd = goworkTimeEnd;
}
/**
* 获取 开始 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
* @return irregularTypeStart
*/
public Integer getIrregularTypeStart(){
return this.irregularTypeStart;
}
/**
* 设置 开始 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
* @param irregularTypeStart
*/
public void setIrregularTypeStart(Integer irregularTypeStart){
this.irregularTypeStart = irregularTypeStart;
}
/**
* 获取 结束 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
* @return $irregularTypeEnd
*/
public Integer getIrregularTypeEnd(){
return this.irregularTypeEnd;
}
/**
* 设置 结束 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
* @param irregularTypeEnd
*/
public void setIrregularTypeEnd(Integer irregularTypeEnd){
this.irregularTypeEnd = irregularTypeEnd;
}
/**
* 获取 增加 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
* @return irregularTypeIncrement
*/
public Integer getIrregularTypeIncrement(){
return this.irregularTypeIncrement;
}
/**
* 设置 增加 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
* @param irregularTypeIncrement
*/
public void setIrregularTypeIncrement(Integer irregularTypeIncrement){
this.irregularTypeIncrement = irregularTypeIncrement;
}
/**
* 获取 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
* @return irregularTypeList
*/
public List<Integer> getIrregularTypeList(){
return this.irregularTypeList;
}
/**
* 设置 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
* @param irregularTypeList
*/
public void setIrregularTypeList(List<Integer> irregularTypeList){
this.irregularTypeList = irregularTypeList;
}
/**
* 获取 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
* @return irregularTypeNotList
*/
public List<Integer> getIrregularTypeNotList(){
return this.irregularTypeNotList;
}
/**
* 设置 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
* @param irregularTypeNotList
*/
public void setIrregularTypeNotList(List<Integer> irregularTypeNotList){
this.irregularTypeNotList = irregularTypeNotList;
}
/**
* 获取 开始 发生时间
* @return happenTimeStart
*/
public String getHappenTimeStart(){
return this.happenTimeStart;
}
/**
* 设置 开始 发生时间
* @param happenTimeStart
*/
public void setHappenTimeStart(String happenTimeStart){
this.happenTimeStart = happenTimeStart;
}
/**
* 获取 结束 发生时间
* @return happenTimeEnd
*/
public String getHappenTimeEnd(){
return this.happenTimeEnd;
}
/**
* 设置 结束 发生时间
* @param happenTimeEnd
*/
public void setHappenTimeEnd(String happenTimeEnd){
this.happenTimeEnd = happenTimeEnd;
}
/**
* 获取 开始 持续时间,秒
* @return durationStart
*/
public Integer getDurationStart(){
return this.durationStart;
}
/**
* 设置 开始 持续时间,秒
* @param durationStart
*/
public void setDurationStart(Integer durationStart){
this.durationStart = durationStart;
}
/**
* 获取 结束 持续时间,秒
* @return $durationEnd
*/
public Integer getDurationEnd(){
return this.durationEnd;
}
/**
* 设置 结束 持续时间,秒
* @param durationEnd
*/
public void setDurationEnd(Integer durationEnd){
this.durationEnd = durationEnd;
}
/**
* 获取 增加 持续时间,秒
* @return durationIncrement
*/
public Integer getDurationIncrement(){
return this.durationIncrement;
}
/**
* 设置 增加 持续时间,秒
* @param durationIncrement
*/
public void setDurationIncrement(Integer durationIncrement){
this.durationIncrement = durationIncrement;
}
/**
* 获取 持续时间,秒
* @return durationList
*/
public List<Integer> getDurationList(){
return this.durationList;
}
/**
* 设置 持续时间,秒
* @param durationList
*/
public void setDurationList(List<Integer> durationList){
this.durationList = durationList;
}
/**
* 获取 持续时间,秒
* @return durationNotList
*/
public List<Integer> getDurationNotList(){
return this.durationNotList;
}
/**
* 设置 持续时间,秒
* @param durationNotList
*/
public void setDurationNotList(List<Integer> durationNotList){
this.durationNotList = durationNotList;
}
/**
* 获取 开始 报警时间
* @return alarmTimeStart
*/
public String getAlarmTimeStart(){
return this.alarmTimeStart;
}
/**
* 设置 开始 报警时间
* @param alarmTimeStart
*/
public void setAlarmTimeStart(String alarmTimeStart){
this.alarmTimeStart = alarmTimeStart;
}
/**
* 获取 结束 报警时间
* @return alarmTimeEnd
*/
public String getAlarmTimeEnd(){
return this.alarmTimeEnd;
}
/**
* 设置 结束 报警时间
* @param alarmTimeEnd
*/
public void setAlarmTimeEnd(String alarmTimeEnd){
this.alarmTimeEnd = alarmTimeEnd;
}
/**
* 获取 图片凭证地址
* @return snapPathList
*/
public List<String> getSnapPathList(){
return this.snapPathList;
}
/**
* 设置 图片凭证地址
* @param snapPathList
*/
public void setSnapPathList(List<String> snapPathList){
this.snapPathList = snapPathList;
}
/**
* 获取 图片凭证地址
* @return snapPathNotList
*/
public List<String> getSnapPathNotList(){
return this.snapPathNotList;
}
/**
* 设置 图片凭证地址
* @param snapPathNotList
*/
public void setSnapPathNotList(List<String> snapPathNotList){
this.snapPathNotList = snapPathNotList;
}
/**
* 获取 开始 违规类型(1.工作纪律)
* @return irregularOtherTypeStart
*/
public Integer getIrregularOtherTypeStart(){
return this.irregularOtherTypeStart;
}
/**
* 设置 开始 违规类型(1.工作纪律)
* @param irregularOtherTypeStart
*/
public void setIrregularOtherTypeStart(Integer irregularOtherTypeStart){
this.irregularOtherTypeStart = irregularOtherTypeStart;
}
/**
* 获取 结束 违规类型(1.工作纪律)
* @return $irregularOtherTypeEnd
*/
public Integer getIrregularOtherTypeEnd(){
return this.irregularOtherTypeEnd;
}
/**
* 设置 结束 违规类型(1.工作纪律)
* @param irregularOtherTypeEnd
*/
public void setIrregularOtherTypeEnd(Integer irregularOtherTypeEnd){
this.irregularOtherTypeEnd = irregularOtherTypeEnd;
}
/**
* 获取 增加 违规类型(1.工作纪律)
* @return irregularOtherTypeIncrement
*/
public Integer getIrregularOtherTypeIncrement(){
return this.irregularOtherTypeIncrement;
}
/**
* 设置 增加 违规类型(1.工作纪律)
* @param irregularOtherTypeIncrement
*/
public void setIrregularOtherTypeIncrement(Integer irregularOtherTypeIncrement){
this.irregularOtherTypeIncrement = irregularOtherTypeIncrement;
}
/**
* 获取 违规类型(1.工作纪律)
* @return irregularOtherTypeList
*/
public List<Integer> getIrregularOtherTypeList(){
return this.irregularOtherTypeList;
}
/**
* 设置 违规类型(1.工作纪律)
* @param irregularOtherTypeList
*/
public void setIrregularOtherTypeList(List<Integer> irregularOtherTypeList){
this.irregularOtherTypeList = irregularOtherTypeList;
}
/**
* 获取 违规类型(1.工作纪律)
* @return irregularOtherTypeNotList
*/
public List<Integer> getIrregularOtherTypeNotList(){
return this.irregularOtherTypeNotList;
}
/**
* 设置 违规类型(1.工作纪律)
* @param irregularOtherTypeNotList
*/
public void setIrregularOtherTypeNotList(List<Integer> irregularOtherTypeNotList){
this.irregularOtherTypeNotList = irregularOtherTypeNotList;
}
/**
* 获取 绩效类型【attend:考勤绩效,review:评价差评绩效,complain:评价投诉绩效,gowork:办件绩效,effect:效能绩效,other:其它绩效】
* @return performTypeList
*/
public List<String> getPerformTypeList(){
return this.performTypeList;
}
/**
* 设置 绩效类型【attend:考勤绩效,review:评价差评绩效,complain:评价投诉绩效,gowork:办件绩效,effect:效能绩效,other:其它绩效】
* @param performTypeList
*/
public void setPerformTypeList(List<String> performTypeList){
this.performTypeList = performTypeList;
}
/**
* 获取 绩效类型【attend:考勤绩效,review:评价差评绩效,complain:评价投诉绩效,gowork:办件绩效,effect:效能绩效,other:其它绩效】
* @return performTypeNotList
*/
public List<String> getPerformTypeNotList(){
return this.performTypeNotList;
}
/**
* 设置 绩效类型【attend:考勤绩效,review:评价差评绩效,complain:评价投诉绩效,gowork:办件绩效,effect:效能绩效,other:其它绩效】
* @param performTypeNotList
*/
public void setPerformTypeNotList(List<String> performTypeNotList){
this.performTypeNotList = performTypeNotList;
}
/**
* 设置 序号,主键,自增长
* @param id
*/
public PerformAttendAppealQuery id(Long id){
setId(id);
return this;
}
/**
* 设置 开始 序号,主键,自增长
* @param idStart
*/
public PerformAttendAppealQuery idStart(Long idStart){
this.idStart = idStart;
return this;
}
/**
* 设置 结束 序号,主键,自增长
* @param idEnd
*/
public PerformAttendAppealQuery idEnd(Long idEnd){
this.idEnd = idEnd;
return this;
}
/**
* 设置 增加 序号,主键,自增长
* @param idIncrement
*/
public PerformAttendAppealQuery idIncrement(Long idIncrement){
this.idIncrement = idIncrement;
return this;
}
/**
* 设置 序号,主键,自增长
* @param idList
*/
public PerformAttendAppealQuery idList(List<Long> idList){
this.idList = idList;
return this;
}
/**
* 设置 序号,主键,自增长
* @param idNotList
*/
public PerformAttendAppealQuery idNotList(List<Long> idNotList){
this.idNotList = idNotList;
return this;
}
/**
* 设置 核查记录Id
* @param checkRecordId
*/
public PerformAttendAppealQuery checkRecordId(Long checkRecordId){
setCheckRecordId(checkRecordId);
return this;
}
/**
* 设置 开始 核查记录Id
* @param checkRecordIdStart
*/
public PerformAttendAppealQuery checkRecordIdStart(Long checkRecordIdStart){
this.checkRecordIdStart = checkRecordIdStart;
return this;
}
/**
* 设置 结束 核查记录Id
* @param checkRecordIdEnd
*/
public PerformAttendAppealQuery checkRecordIdEnd(Long checkRecordIdEnd){
this.checkRecordIdEnd = checkRecordIdEnd;
return this;
}
/**
* 设置 增加 核查记录Id
* @param checkRecordIdIncrement
*/
public PerformAttendAppealQuery checkRecordIdIncrement(Long checkRecordIdIncrement){
this.checkRecordIdIncrement = checkRecordIdIncrement;
return this;
}
/**
* 设置 核查记录Id
* @param checkRecordIdList
*/
public PerformAttendAppealQuery checkRecordIdList(List<Long> checkRecordIdList){
this.checkRecordIdList = checkRecordIdList;
return this;
}
/**
* 设置 核查记录Id
* @param checkRecordIdNotList
*/
public PerformAttendAppealQuery checkRecordIdNotList(List<Long> checkRecordIdNotList){
this.checkRecordIdNotList = checkRecordIdNotList;
return this;
}
/**
* 设置 员工ID
* @param staffId
*/
public PerformAttendAppealQuery staffId(Long staffId){
setStaffId(staffId);
return this;
}
/**
* 设置 开始 员工ID
* @param staffIdStart
*/
public PerformAttendAppealQuery staffIdStart(Long staffIdStart){
this.staffIdStart = staffIdStart;
return this;
}
/**
* 设置 结束 员工ID
* @param staffIdEnd
*/
public PerformAttendAppealQuery staffIdEnd(Long staffIdEnd){
this.staffIdEnd = staffIdEnd;
return this;
}
/**
* 设置 增加 员工ID
* @param staffIdIncrement
*/
public PerformAttendAppealQuery staffIdIncrement(Long staffIdIncrement){
this.staffIdIncrement = staffIdIncrement;
return this;
}
/**
* 设置 员工ID
* @param staffIdList
*/
public PerformAttendAppealQuery staffIdList(List<Long> staffIdList){
this.staffIdList = staffIdList;
return this;
}
/**
* 设置 员工ID
* @param staffIdNotList
*/
public PerformAttendAppealQuery staffIdNotList(List<Long> staffIdNotList){
this.staffIdNotList = staffIdNotList;
return this;
}
/**
* 设置 员工姓名
* @param staffName
*/
public PerformAttendAppealQuery staffName(String staffName){
setStaffName(staffName);
return this;
}
/**
* 设置 员工姓名
* @param staffNameList
*/
public PerformAttendAppealQuery staffNameList(List<String> staffNameList){
this.staffNameList = staffNameList;
return this;
}
/**
* 设置 工号
* @param workNum
*/
public PerformAttendAppealQuery workNum(String workNum){
setWorkNum(workNum);
return this;
}
/**
* 设置 工号
* @param workNumList
*/
public PerformAttendAppealQuery workNumList(List<String> workNumList){
this.workNumList = workNumList;
return this;
}
/**
* 设置 所属部门
* @param deptId
*/
public PerformAttendAppealQuery deptId(Long deptId){
setDeptId(deptId);
return this;
}
/**
* 设置 开始 所属部门
* @param deptIdStart
*/
public PerformAttendAppealQuery deptIdStart(Long deptIdStart){
this.deptIdStart = deptIdStart;
return this;
}
/**
* 设置 结束 所属部门
* @param deptIdEnd
*/
public PerformAttendAppealQuery deptIdEnd(Long deptIdEnd){
this.deptIdEnd = deptIdEnd;
return this;
}
/**
* 设置 增加 所属部门
* @param deptIdIncrement
*/
public PerformAttendAppealQuery deptIdIncrement(Long deptIdIncrement){
this.deptIdIncrement = deptIdIncrement;
return this;
}
/**
* 设置 所属部门
* @param deptIdList
*/
public PerformAttendAppealQuery deptIdList(List<Long> deptIdList){
this.deptIdList = deptIdList;
return this;
}
/**
* 设置 所属部门
* @param deptIdNotList
*/
public PerformAttendAppealQuery deptIdNotList(List<Long> deptIdNotList){
this.deptIdNotList = deptIdNotList;
return this;
}
/**
* 设置 所属部门名称
* @param deptName
*/
public PerformAttendAppealQuery deptName(String deptName){
setDeptName(deptName);
return this;
}
/**
* 设置 所属部门名称
* @param deptNameList
*/
public PerformAttendAppealQuery deptNameList(List<String> deptNameList){
this.deptNameList = deptNameList;
return this;
}
/**
* 设置 所属考勤组ID
* @param attendanceGroupId
*/
public PerformAttendAppealQuery attendanceGroupId(Long attendanceGroupId){
setAttendanceGroupId(attendanceGroupId);
return this;
}
/**
* 设置 开始 所属考勤组ID
* @param attendanceGroupIdStart
*/
public PerformAttendAppealQuery attendanceGroupIdStart(Long attendanceGroupIdStart){
this.attendanceGroupIdStart = attendanceGroupIdStart;
return this;
}
/**
* 设置 结束 所属考勤组ID
* @param attendanceGroupIdEnd
*/
public PerformAttendAppealQuery attendanceGroupIdEnd(Long attendanceGroupIdEnd){
this.attendanceGroupIdEnd = attendanceGroupIdEnd;
return this;
}
/**
* 设置 增加 所属考勤组ID
* @param attendanceGroupIdIncrement
*/
public PerformAttendAppealQuery attendanceGroupIdIncrement(Long attendanceGroupIdIncrement){
this.attendanceGroupIdIncrement = attendanceGroupIdIncrement;
return this;
}
/**
* 设置 所属考勤组ID
* @param attendanceGroupIdList
*/
public PerformAttendAppealQuery attendanceGroupIdList(List<Long> attendanceGroupIdList){
this.attendanceGroupIdList = attendanceGroupIdList;
return this;
}
/**
* 设置 所属考勤组ID
* @param attendanceGroupIdNotList
*/
public PerformAttendAppealQuery attendanceGroupIdNotList(List<Long> attendanceGroupIdNotList){
this.attendanceGroupIdNotList = attendanceGroupIdNotList;
return this;
}
/**
* 设置 所属考勤组名称
* @param attendanceGroupName
*/
public PerformAttendAppealQuery attendanceGroupName(String attendanceGroupName){
setAttendanceGroupName(attendanceGroupName);
return this;
}
/**
* 设置 所属考勤组名称
* @param attendanceGroupNameList
*/
public PerformAttendAppealQuery attendanceGroupNameList(List<String> attendanceGroupNameList){
this.attendanceGroupNameList = attendanceGroupNameList;
return this;
}
/**
* 设置 绩效规则id
* @param ruleId
*/
public PerformAttendAppealQuery ruleId(Long ruleId){
setRuleId(ruleId);
return this;
}
/**
* 设置 开始 绩效规则id
* @param ruleIdStart
*/
public PerformAttendAppealQuery ruleIdStart(Long ruleIdStart){
this.ruleIdStart = ruleIdStart;
return this;
}
/**
* 设置 结束 绩效规则id
* @param ruleIdEnd
*/
public PerformAttendAppealQuery ruleIdEnd(Long ruleIdEnd){
this.ruleIdEnd = ruleIdEnd;
return this;
}
/**
* 设置 增加 绩效规则id
* @param ruleIdIncrement
*/ */
public PerformAttendAppealQuery ruleIdIncrement(Long ruleIdIncrement){ public PerformAttendAppealQuery ruleIdIncrement(Long ruleIdIncrement){
this.ruleIdIncrement = ruleIdIncrement; this.ruleIdIncrement = ruleIdIncrement;
...@@ -2399,575 +3454,1043 @@ public class PerformAttendAppealQuery extends PerformAttendAppealEntity { ...@@ -2399,575 +3454,1043 @@ public class PerformAttendAppealQuery extends PerformAttendAppealEntity {
} }
/** /**
* 设置 绩效规则id * 设置 绩效规则id
* @param ruleIdList * @param ruleIdList
*/
public PerformAttendAppealQuery ruleIdList(List<Long> ruleIdList){
this.ruleIdList = ruleIdList;
return this;
}
/**
* 设置 绩效规则id
* @param ruleIdNotList
*/
public PerformAttendAppealQuery ruleIdNotList(List<Long> ruleIdNotList){
this.ruleIdNotList = ruleIdNotList;
return this;
}
/**
* 设置 规则名称
* @param ruleName
*/
public PerformAttendAppealQuery ruleName(String ruleName){
setRuleName(ruleName);
return this;
}
/**
* 设置 规则名称
* @param ruleNameList
*/
public PerformAttendAppealQuery ruleNameList(List<String> ruleNameList){
this.ruleNameList = ruleNameList;
return this;
}
/**
* 设置 扣分方式(1.系统自动,2.人工添加,3.大厅巡查)
* @param subMethod
*/
public PerformAttendAppealQuery subMethod(Integer subMethod){
setSubMethod(subMethod);
return this;
}
/**
* 设置 开始 扣分方式(1.系统自动,2.人工添加,3.大厅巡查)
* @param subMethodStart
*/
public PerformAttendAppealQuery subMethodStart(Integer subMethodStart){
this.subMethodStart = subMethodStart;
return this;
}
/**
* 设置 结束 扣分方式(1.系统自动,2.人工添加,3.大厅巡查)
* @param subMethodEnd
*/
public PerformAttendAppealQuery subMethodEnd(Integer subMethodEnd){
this.subMethodEnd = subMethodEnd;
return this;
}
/**
* 设置 增加 扣分方式(1.系统自动,2.人工添加,3.大厅巡查)
* @param subMethodIncrement
*/
public PerformAttendAppealQuery subMethodIncrement(Integer subMethodIncrement){
this.subMethodIncrement = subMethodIncrement;
return this;
}
/**
* 设置 扣分方式(1.系统自动,2.人工添加,3.大厅巡查)
* @param subMethodList
*/
public PerformAttendAppealQuery subMethodList(List<Integer> subMethodList){
this.subMethodList = subMethodList;
return this;
}
/**
* 设置 扣分方式(1.系统自动,2.人工添加,3.大厅巡查)
* @param subMethodNotList
*/
public PerformAttendAppealQuery subMethodNotList(List<Integer> subMethodNotList){
this.subMethodNotList = subMethodNotList;
return this;
}
/**
* 设置 增减类型(1.增加,2.扣除)
* @param subAddType
*/
public PerformAttendAppealQuery subAddType(Integer subAddType){
setSubAddType(subAddType);
return this;
}
/**
* 设置 开始 增减类型(1.增加,2.扣除)
* @param subAddTypeStart
*/
public PerformAttendAppealQuery subAddTypeStart(Integer subAddTypeStart){
this.subAddTypeStart = subAddTypeStart;
return this;
}
/**
* 设置 结束 增减类型(1.增加,2.扣除)
* @param subAddTypeEnd
*/
public PerformAttendAppealQuery subAddTypeEnd(Integer subAddTypeEnd){
this.subAddTypeEnd = subAddTypeEnd;
return this;
}
/**
* 设置 增加 增减类型(1.增加,2.扣除)
* @param subAddTypeIncrement
*/
public PerformAttendAppealQuery subAddTypeIncrement(Integer subAddTypeIncrement){
this.subAddTypeIncrement = subAddTypeIncrement;
return this;
}
/**
* 设置 增减类型(1.增加,2.扣除)
* @param subAddTypeList
*/
public PerformAttendAppealQuery subAddTypeList(List<Integer> subAddTypeList){
this.subAddTypeList = subAddTypeList;
return this;
}
/**
* 设置 增减类型(1.增加,2.扣除)
* @param subAddTypeNotList
*/
public PerformAttendAppealQuery subAddTypeNotList(List<Integer> subAddTypeNotList){
this.subAddTypeNotList = subAddTypeNotList;
return this;
}
/**
* 设置 扣分或增加分值
* @param score
*/
public PerformAttendAppealQuery score(BigDecimal score){
setScore(score);
return this;
}
/**
* 设置 开始 扣分或增加分值
* @param scoreStart
*/
public PerformAttendAppealQuery scoreStart(BigDecimal scoreStart){
this.scoreStart = scoreStart;
return this;
}
/**
* 设置 结束 扣分或增加分值
* @param scoreEnd
*/
public PerformAttendAppealQuery scoreEnd(BigDecimal scoreEnd){
this.scoreEnd = scoreEnd;
return this;
}
/**
* 设置 增加 扣分或增加分值
* @param scoreIncrement
*/
public PerformAttendAppealQuery scoreIncrement(BigDecimal scoreIncrement){
this.scoreIncrement = scoreIncrement;
return this;
}
/**
* 设置 扣分或增加分值
* @param scoreList
*/
public PerformAttendAppealQuery scoreList(List<BigDecimal> scoreList){
this.scoreList = scoreList;
return this;
}
/**
* 设置 扣分或增加分值
* @param scoreNotList
*/
public PerformAttendAppealQuery scoreNotList(List<BigDecimal> scoreNotList){
this.scoreNotList = scoreNotList;
return this;
}
/**
* 设置 上下班时间
* @param goOffTimeStr
*/
public PerformAttendAppealQuery goOffTimeStr(String goOffTimeStr){
setGoOffTimeStr(goOffTimeStr);
return this;
}
/**
* 设置 上下班时间
* @param goOffTimeStrList
*/
public PerformAttendAppealQuery goOffTimeStrList(List<String> goOffTimeStrList){
this.goOffTimeStrList = goOffTimeStrList;
return this;
}
/**
* 设置 异常处理结果
* @param errorResult
*/
public PerformAttendAppealQuery errorResult(String errorResult){
setErrorResult(errorResult);
return this;
}
/**
* 设置 异常处理结果
* @param errorResultList
*/
public PerformAttendAppealQuery errorResultList(List<String> errorResultList){
this.errorResultList = errorResultList;
return this;
}
/**
* 设置 核查人员
* @param checkPerson
*/
public PerformAttendAppealQuery checkPerson(String checkPerson){
setCheckPerson(checkPerson);
return this;
}
/**
* 设置 核查人员
* @param checkPersonList
*/
public PerformAttendAppealQuery checkPersonList(List<String> checkPersonList){
this.checkPersonList = checkPersonList;
return this;
}
/**
* 设置 核查说明
* @param checkDesc
*/ */
public PerformAttendAppealQuery ruleIdList(List<Long> ruleIdList){ public PerformAttendAppealQuery checkDesc(String checkDesc){
this.ruleIdList = ruleIdList; setCheckDesc(checkDesc);
return this; return this;
} }
/** /**
* 设置 绩效规则id * 设置 核查说明
* @param ruleIdNotList * @param checkDescList
*/ */
public PerformAttendAppealQuery ruleIdNotList(List<Long> ruleIdNotList){ public PerformAttendAppealQuery checkDescList(List<String> checkDescList){
this.ruleIdNotList = ruleIdNotList; this.checkDescList = checkDescList;
return this; return this;
} }
/** /**
* 设置 规则名称 * 设置 核查结果
* @param ruleName * @param checkResult
*/ */
public PerformAttendAppealQuery ruleName(String ruleName){ public PerformAttendAppealQuery checkResult(String checkResult){
setRuleName(ruleName); setCheckResult(checkResult);
return this; return this;
} }
/** /**
* 设置 规则名称 * 设置 核查结果
* @param ruleNameList * @param checkResultList
*/ */
public PerformAttendAppealQuery ruleNameList(List<String> ruleNameList){ public PerformAttendAppealQuery checkResultList(List<String> checkResultList){
this.ruleNameList = ruleNameList; this.checkResultList = checkResultList;
return this; return this;
} }
/** /**
* 设置 扣分方式(1.系统自动,2.人工添加,3.大厅巡查) * 设置 处理状态(1.未处理,2.已处理)
* @param subMethod * @param processStatus
*/ */
public PerformAttendAppealQuery subMethod(Integer subMethod){ public PerformAttendAppealQuery processStatus(Integer processStatus){
setSubMethod(subMethod); setProcessStatus(processStatus);
return this; return this;
} }
/** /**
* 设置 开始 扣分方式(1.系统自动,2.人工添加,3.大厅巡查) * 设置 开始 处理状态(1.未处理,2.已处理)
* @param subMethodStart * @param processStatusStart
*/ */
public PerformAttendAppealQuery subMethodStart(Integer subMethodStart){ public PerformAttendAppealQuery processStatusStart(Integer processStatusStart){
this.subMethodStart = subMethodStart; this.processStatusStart = processStatusStart;
return this; return this;
} }
/** /**
* 设置 结束 扣分方式(1.系统自动,2.人工添加,3.大厅巡查) * 设置 结束 处理状态(1.未处理,2.已处理)
* @param subMethodEnd * @param processStatusEnd
*/
public PerformAttendAppealQuery processStatusEnd(Integer processStatusEnd){
this.processStatusEnd = processStatusEnd;
return this;
}
/**
* 设置 增加 处理状态(1.未处理,2.已处理)
* @param processStatusIncrement
*/
public PerformAttendAppealQuery processStatusIncrement(Integer processStatusIncrement){
this.processStatusIncrement = processStatusIncrement;
return this;
}
/**
* 设置 处理状态(1.未处理,2.已处理)
* @param processStatusList
*/
public PerformAttendAppealQuery processStatusList(List<Integer> processStatusList){
this.processStatusList = processStatusList;
return this;
}
/**
* 设置 处理状态(1.未处理,2.已处理)
* @param processStatusNotList
*/
public PerformAttendAppealQuery processStatusNotList(List<Integer> processStatusNotList){
this.processStatusNotList = processStatusNotList;
return this;
}
/**
* 设置 申诉说明
* @param appealDesc
*/
public PerformAttendAppealQuery appealDesc(String appealDesc){
setAppealDesc(appealDesc);
return this;
}
/**
* 设置 申诉说明
* @param appealDescList
*/
public PerformAttendAppealQuery appealDescList(List<String> appealDescList){
this.appealDescList = appealDescList;
return this;
}
/**
* 设置 申诉结果(1.通过,2.不通过)
* @param appealResult
*/
public PerformAttendAppealQuery appealResult(Integer appealResult){
setAppealResult(appealResult);
return this;
}
/**
* 设置 开始 申诉结果(1.通过,2.不通过)
* @param appealResultStart
*/
public PerformAttendAppealQuery appealResultStart(Integer appealResultStart){
this.appealResultStart = appealResultStart;
return this;
}
/**
* 设置 结束 申诉结果(1.通过,2.不通过)
* @param appealResultEnd
*/
public PerformAttendAppealQuery appealResultEnd(Integer appealResultEnd){
this.appealResultEnd = appealResultEnd;
return this;
}
/**
* 设置 增加 申诉结果(1.通过,2.不通过)
* @param appealResultIncrement
*/
public PerformAttendAppealQuery appealResultIncrement(Integer appealResultIncrement){
this.appealResultIncrement = appealResultIncrement;
return this;
}
/**
* 设置 申诉结果(1.通过,2.不通过)
* @param appealResultList
*/
public PerformAttendAppealQuery appealResultList(List<Integer> appealResultList){
this.appealResultList = appealResultList;
return this;
}
/**
* 设置 申诉结果(1.通过,2.不通过)
* @param appealResultNotList
*/
public PerformAttendAppealQuery appealResultNotList(List<Integer> appealResultNotList){
this.appealResultNotList = appealResultNotList;
return this;
}
/**
* 设置 说明
* @param remark
*/
public PerformAttendAppealQuery remark(String remark){
setRemark(remark);
return this;
}
/**
* 设置 说明
* @param remarkList
*/
public PerformAttendAppealQuery remarkList(List<String> remarkList){
this.remarkList = remarkList;
return this;
}
/**
* 设置 创建用户
* @param createUserId
*/
public PerformAttendAppealQuery createUserId(Long createUserId){
setCreateUserId(createUserId);
return this;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public PerformAttendAppealQuery createUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
return this;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public PerformAttendAppealQuery createUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
return this;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public PerformAttendAppealQuery createUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
return this;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public PerformAttendAppealQuery createUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
return this;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public PerformAttendAppealQuery createUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
return this;
}
/**
* 设置 更新用户
* @param updateUserId
*/
public PerformAttendAppealQuery updateUserId(Long updateUserId){
setUpdateUserId(updateUserId);
return this;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public PerformAttendAppealQuery updateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
return this;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/ */
public PerformAttendAppealQuery subMethodEnd(Integer subMethodEnd){ public PerformAttendAppealQuery updateUserIdEnd(Long updateUserIdEnd){
this.subMethodEnd = subMethodEnd; this.updateUserIdEnd = updateUserIdEnd;
return this; return this;
} }
/** /**
* 设置 增加 扣分方式(1.系统自动,2.人工添加,3.大厅巡查) * 设置 增加 更新用户
* @param subMethodIncrement * @param updateUserIdIncrement
*/ */
public PerformAttendAppealQuery subMethodIncrement(Integer subMethodIncrement){ public PerformAttendAppealQuery updateUserIdIncrement(Long updateUserIdIncrement){
this.subMethodIncrement = subMethodIncrement; this.updateUserIdIncrement = updateUserIdIncrement;
return this; return this;
} }
/** /**
* 设置 扣分方式(1.系统自动,2.人工添加,3.大厅巡查) * 设置 更新用户
* @param subMethodList * @param updateUserIdList
*/ */
public PerformAttendAppealQuery subMethodList(List<Integer> subMethodList){ public PerformAttendAppealQuery updateUserIdList(List<Long> updateUserIdList){
this.subMethodList = subMethodList; this.updateUserIdList = updateUserIdList;
return this; return this;
} }
/** /**
* 设置 扣分方式(1.系统自动,2.人工添加,3.大厅巡查) * 设置 更新用户
* @param subMethodNotList * @param updateUserIdNotList
*/ */
public PerformAttendAppealQuery subMethodNotList(List<Integer> subMethodNotList){ public PerformAttendAppealQuery updateUserIdNotList(List<Long> updateUserIdNotList){
this.subMethodNotList = subMethodNotList; this.updateUserIdNotList = updateUserIdNotList;
return this; return this;
} }
/** /**
* 设置 增减类型(1.增加,2.扣除) * 设置 违规类型,
* @param subAddType * @param violationType
*/ */
public PerformAttendAppealQuery subAddType(Integer subAddType){ public PerformAttendAppealQuery violationType(String violationType){
setSubAddType(subAddType); setViolationType(violationType);
return this; return this;
} }
/** /**
* 设置 开始 增减类型(1.增加,2.扣除) * 设置 违规类型,
* @param subAddTypeStart * @param violationTypeList
*/ */
public PerformAttendAppealQuery subAddTypeStart(Integer subAddTypeStart){ public PerformAttendAppealQuery violationTypeList(List<String> violationTypeList){
this.subAddTypeStart = subAddTypeStart; this.violationTypeList = violationTypeList;
return this; return this;
} }
/** /**
* 设置 结束 增减类型(1.增加,2.扣除) * 设置 评价结果(1.非常不满意,2.差评)
* @param subAddTypeEnd * @param reviewResult
*/ */
public PerformAttendAppealQuery subAddTypeEnd(Integer subAddTypeEnd){ public PerformAttendAppealQuery reviewResult(Integer reviewResult){
this.subAddTypeEnd = subAddTypeEnd; setReviewResult(reviewResult);
return this; return this;
} }
/** /**
* 设置 增加 增减类型(1.增加,2.扣除) * 设置 开始 评价结果(1.非常不满意,2.差评)
* @param subAddTypeIncrement * @param reviewResultStart
*/ */
public PerformAttendAppealQuery subAddTypeIncrement(Integer subAddTypeIncrement){ public PerformAttendAppealQuery reviewResultStart(Integer reviewResultStart){
this.subAddTypeIncrement = subAddTypeIncrement; this.reviewResultStart = reviewResultStart;
return this; return this;
} }
/** /**
* 设置 增减类型(1.增加,2.扣除) * 设置 结束 评价结果(1.非常不满意,2.差评)
* @param subAddTypeList * @param reviewResultEnd
*/ */
public PerformAttendAppealQuery subAddTypeList(List<Integer> subAddTypeList){ public PerformAttendAppealQuery reviewResultEnd(Integer reviewResultEnd){
this.subAddTypeList = subAddTypeList; this.reviewResultEnd = reviewResultEnd;
return this; return this;
} }
/** /**
* 设置 增减类型(1.增加,2.扣除) * 设置 增加 评价结果(1.非常不满意,2.差评)
* @param subAddTypeNotList * @param reviewResultIncrement
*/ */
public PerformAttendAppealQuery subAddTypeNotList(List<Integer> subAddTypeNotList){ public PerformAttendAppealQuery reviewResultIncrement(Integer reviewResultIncrement){
this.subAddTypeNotList = subAddTypeNotList; this.reviewResultIncrement = reviewResultIncrement;
return this; return this;
} }
/** /**
* 设置 扣分或增加分值 * 设置 评价结果(1.非常不满意,2.差评)
* @param score * @param reviewResultList
*/ */
public PerformAttendAppealQuery score(BigDecimal score){ public PerformAttendAppealQuery reviewResultList(List<Integer> reviewResultList){
setScore(score); this.reviewResultList = reviewResultList;
return this; return this;
} }
/** /**
* 设置 开始 扣分或增加分值 * 设置 评价结果(1.非常不满意,2.差评)
* @param scoreStart * @param reviewResultNotList
*/ */
public PerformAttendAppealQuery scoreStart(BigDecimal scoreStart){ public PerformAttendAppealQuery reviewResultNotList(List<Integer> reviewResultNotList){
this.scoreStart = scoreStart; this.reviewResultNotList = reviewResultNotList;
return this; return this;
} }
/** /**
* 设置 结束 扣分或增加分值 * 设置 评价来源(窗口评价系统,导视系统,自助服务系统,微官网,其它)
* @param scoreEnd * @param reviewSource
*/ */
public PerformAttendAppealQuery scoreEnd(BigDecimal scoreEnd){ public PerformAttendAppealQuery reviewSource(String reviewSource){
this.scoreEnd = scoreEnd; setReviewSource(reviewSource);
return this; return this;
} }
/** /**
* 设置 增加 扣分或增加分值 * 设置 评价来源(窗口评价系统,导视系统,自助服务系统,微官网,其它)
* @param scoreIncrement * @param reviewSourceList
*/ */
public PerformAttendAppealQuery scoreIncrement(BigDecimal scoreIncrement){ public PerformAttendAppealQuery reviewSourceList(List<String> reviewSourceList){
this.scoreIncrement = scoreIncrement; this.reviewSourceList = reviewSourceList;
return this; return this;
} }
/** /**
* 设置 扣分或增加分值 * 设置 评价设备
* @param scoreList * @param reviewDevice
*/ */
public PerformAttendAppealQuery scoreList(List<BigDecimal> scoreList){ public PerformAttendAppealQuery reviewDevice(String reviewDevice){
this.scoreList = scoreList; setReviewDevice(reviewDevice);
return this; return this;
} }
/** /**
* 设置 扣分或增加分值 * 设置 评价设备
* @param scoreNotList * @param reviewDeviceList
*/ */
public PerformAttendAppealQuery scoreNotList(List<BigDecimal> scoreNotList){ public PerformAttendAppealQuery reviewDeviceList(List<String> reviewDeviceList){
this.scoreNotList = scoreNotList; this.reviewDeviceList = reviewDeviceList;
return this; return this;
} }
/** /**
* 设置 上下班时间 * 设置 投诉标题
* @param goOffTimeStr * @param complainTitle
*/ */
public PerformAttendAppealQuery goOffTimeStr(String goOffTimeStr){ public PerformAttendAppealQuery complainTitle(String complainTitle){
setGoOffTimeStr(goOffTimeStr); setComplainTitle(complainTitle);
return this; return this;
} }
/** /**
* 设置 上下班时间 * 设置 投诉标题
* @param goOffTimeStrList * @param complainTitleList
*/ */
public PerformAttendAppealQuery goOffTimeStrList(List<String> goOffTimeStrList){ public PerformAttendAppealQuery complainTitleList(List<String> complainTitleList){
this.goOffTimeStrList = goOffTimeStrList; this.complainTitleList = complainTitleList;
return this; return this;
} }
/** /**
* 设置 异常处理结果 * 设置 投诉内容
* @param errorResult * @param complainContent
*/ */
public PerformAttendAppealQuery errorResult(String errorResult){ public PerformAttendAppealQuery complainContent(String complainContent){
setErrorResult(errorResult); setComplainContent(complainContent);
return this; return this;
} }
/** /**
* 设置 异常处理结果 * 设置 投诉内容
* @param errorResultList * @param complainContentList
*/ */
public PerformAttendAppealQuery errorResultList(List<String> errorResultList){ public PerformAttendAppealQuery complainContentList(List<String> complainContentList){
this.errorResultList = errorResultList; this.complainContentList = complainContentList;
return this; return this;
} }
/** /**
* 设置 核查人员 * 设置 投诉人真实姓名
* @param checkPerson * @param complainRealName
*/ */
public PerformAttendAppealQuery checkPerson(String checkPerson){ public PerformAttendAppealQuery complainRealName(String complainRealName){
setCheckPerson(checkPerson); setComplainRealName(complainRealName);
return this; return this;
} }
/** /**
* 设置 核查人员 * 设置 投诉人真实姓名
* @param checkPersonList * @param complainRealNameList
*/ */
public PerformAttendAppealQuery checkPersonList(List<String> checkPersonList){ public PerformAttendAppealQuery complainRealNameList(List<String> complainRealNameList){
this.checkPersonList = checkPersonList; this.complainRealNameList = complainRealNameList;
return this; return this;
} }
/** /**
* 设置 核查说明 * 设置 联系电话
* @param checkDesc * @param contact
*/ */
public PerformAttendAppealQuery checkDesc(String checkDesc){ public PerformAttendAppealQuery contact(String contact){
setCheckDesc(checkDesc); setContact(contact);
return this; return this;
} }
/** /**
* 设置 核查说明 * 设置 联系电话
* @param checkDescList * @param contactList
*/ */
public PerformAttendAppealQuery checkDescList(List<String> checkDescList){ public PerformAttendAppealQuery contactList(List<String> contactList){
this.checkDescList = checkDescList; this.contactList = contactList;
return this; return this;
} }
/** /**
* 设置 核查结果 * 设置 投诉来源
* @param checkResult * @param complainSource
*/ */
public PerformAttendAppealQuery checkResult(String checkResult){ public PerformAttendAppealQuery complainSource(String complainSource){
setCheckResult(checkResult); setComplainSource(complainSource);
return this; return this;
} }
/** /**
* 设置 核查结果 * 设置 投诉来源
* @param checkResultList * @param complainSourceList
*/ */
public PerformAttendAppealQuery checkResultList(List<String> checkResultList){ public PerformAttendAppealQuery complainSourceList(List<String> complainSourceList){
this.checkResultList = checkResultList; this.complainSourceList = complainSourceList;
return this; return this;
} }
/** /**
* 设置 处理状态(1.未处理,2.已处理) * 设置 投诉设备
* @param processStatus * @param complainDevice
*/ */
public PerformAttendAppealQuery processStatus(Integer processStatus){ public PerformAttendAppealQuery complainDevice(String complainDevice){
setProcessStatus(processStatus); setComplainDevice(complainDevice);
return this; return this;
} }
/** /**
* 设置 开始 处理状态(1.未处理,2.已处理) * 设置 投诉设备
* @param processStatusStart * @param complainDeviceList
*/ */
public PerformAttendAppealQuery processStatusStart(Integer processStatusStart){ public PerformAttendAppealQuery complainDeviceList(List<String> complainDeviceList){
this.processStatusStart = processStatusStart; this.complainDeviceList = complainDeviceList;
return this; return this;
} }
/** /**
* 设置 结束 处理状态(1.未处理,2.已处理) * 设置 办件编码
* @param processStatusEnd * @param goworkCode
*/ */
public PerformAttendAppealQuery processStatusEnd(Integer processStatusEnd){ public PerformAttendAppealQuery goworkCode(String goworkCode){
this.processStatusEnd = processStatusEnd; setGoworkCode(goworkCode);
return this; return this;
} }
/** /**
* 设置 增加 处理状态(1.未处理,2.已处理) * 设置 办件编码
* @param processStatusIncrement * @param goworkCodeList
*/ */
public PerformAttendAppealQuery processStatusIncrement(Integer processStatusIncrement){ public PerformAttendAppealQuery goworkCodeList(List<String> goworkCodeList){
this.processStatusIncrement = processStatusIncrement; this.goworkCodeList = goworkCodeList;
return this; return this;
} }
/** /**
* 设置 处理状态(1.未处理,2.已处理) * 设置 办件所属部门
* @param processStatusList * @param goworkDepts
*/ */
public PerformAttendAppealQuery processStatusList(List<Integer> processStatusList){ public PerformAttendAppealQuery goworkDepts(String goworkDepts){
this.processStatusList = processStatusList; setGoworkDepts(goworkDepts);
return this; return this;
} }
/** /**
* 设置 处理状态(1.未处理,2.已处理) * 设置 办件所属部门
* @param processStatusNotList * @param goworkDeptsList
*/ */
public PerformAttendAppealQuery processStatusNotList(List<Integer> processStatusNotList){ public PerformAttendAppealQuery goworkDeptsList(List<String> goworkDeptsList){
this.processStatusNotList = processStatusNotList; this.goworkDeptsList = goworkDeptsList;
return this; return this;
} }
/** /**
* 设置 申诉说明 * 设置 事项名称
* @param appealDesc * @param matterlName
*/ */
public PerformAttendAppealQuery appealDesc(String appealDesc){ public PerformAttendAppealQuery matterlName(String matterlName){
setAppealDesc(appealDesc); setMatterlName(matterlName);
return this; return this;
} }
/** /**
* 设置 申诉说明 * 设置 事项名称
* @param appealDescList * @param matterlNameList
*/ */
public PerformAttendAppealQuery appealDescList(List<String> appealDescList){ public PerformAttendAppealQuery matterlNameList(List<String> matterlNameList){
this.appealDescList = appealDescList; this.matterlNameList = matterlNameList;
return this; return this;
} }
/** /**
* 设置 申诉结果(1.通过,2.不通过) * 设置 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
* @param appealResult * @param irregularType
*/ */
public PerformAttendAppealQuery appealResult(Integer appealResult){ public PerformAttendAppealQuery irregularType(Integer irregularType){
setAppealResult(appealResult); setIrregularType(irregularType);
return this; return this;
} }
/** /**
* 设置 开始 申诉结果(1.通过,2.不通过) * 设置 开始 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
* @param appealResultStart * @param irregularTypeStart
*/ */
public PerformAttendAppealQuery appealResultStart(Integer appealResultStart){ public PerformAttendAppealQuery irregularTypeStart(Integer irregularTypeStart){
this.appealResultStart = appealResultStart; this.irregularTypeStart = irregularTypeStart;
return this; return this;
} }
/** /**
* 设置 结束 申诉结果(1.通过,2.不通过) * 设置 结束 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
* @param appealResultEnd * @param irregularTypeEnd
*/ */
public PerformAttendAppealQuery appealResultEnd(Integer appealResultEnd){ public PerformAttendAppealQuery irregularTypeEnd(Integer irregularTypeEnd){
this.appealResultEnd = appealResultEnd; this.irregularTypeEnd = irregularTypeEnd;
return this; return this;
} }
/** /**
* 设置 增加 申诉结果(1.通过,2.不通过) * 设置 增加 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
* @param appealResultIncrement * @param irregularTypeIncrement
*/ */
public PerformAttendAppealQuery appealResultIncrement(Integer appealResultIncrement){ public PerformAttendAppealQuery irregularTypeIncrement(Integer irregularTypeIncrement){
this.appealResultIncrement = appealResultIncrement; this.irregularTypeIncrement = irregularTypeIncrement;
return this; return this;
} }
/** /**
* 设置 申诉结果(1.通过,2.不通过) * 设置 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
* @param appealResultList * @param irregularTypeList
*/ */
public PerformAttendAppealQuery appealResultList(List<Integer> appealResultList){ public PerformAttendAppealQuery irregularTypeList(List<Integer> irregularTypeList){
this.appealResultList = appealResultList; this.irregularTypeList = irregularTypeList;
return this; return this;
} }
/** /**
* 设置 申诉结果(1.通过,2.不通过) * 设置 违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)
* @param appealResultNotList * @param irregularTypeNotList
*/ */
public PerformAttendAppealQuery appealResultNotList(List<Integer> appealResultNotList){ public PerformAttendAppealQuery irregularTypeNotList(List<Integer> irregularTypeNotList){
this.appealResultNotList = appealResultNotList; this.irregularTypeNotList = irregularTypeNotList;
return this; return this;
} }
/** /**
* 设置 说明 * 设置 持续时间,秒
* @param remark * @param duration
*/ */
public PerformAttendAppealQuery remark(String remark){ public PerformAttendAppealQuery duration(Integer duration){
setRemark(remark); setDuration(duration);
return this; return this;
} }
/** /**
* 设置 说明 * 设置 开始 持续时间,秒
* @param remarkList * @param durationStart
*/ */
public PerformAttendAppealQuery remarkList(List<String> remarkList){ public PerformAttendAppealQuery durationStart(Integer durationStart){
this.remarkList = remarkList; this.durationStart = durationStart;
return this; return this;
} }
/** /**
* 设置 创建用户 * 设置 结束 持续时间,秒
* @param createUserId * @param durationEnd
*/ */
public PerformAttendAppealQuery createUserId(Long createUserId){ public PerformAttendAppealQuery durationEnd(Integer durationEnd){
setCreateUserId(createUserId); this.durationEnd = durationEnd;
return this; return this;
} }
/** /**
* 设置 开始 创建用户 * 设置 增加 持续时间,秒
* @param createUserIdStart * @param durationIncrement
*/ */
public PerformAttendAppealQuery createUserIdStart(Long createUserIdStart){ public PerformAttendAppealQuery durationIncrement(Integer durationIncrement){
this.createUserIdStart = createUserIdStart; this.durationIncrement = durationIncrement;
return this; return this;
} }
/** /**
* 设置 结束 创建用户 * 设置 持续时间,秒
* @param createUserIdEnd * @param durationList
*/ */
public PerformAttendAppealQuery createUserIdEnd(Long createUserIdEnd){ public PerformAttendAppealQuery durationList(List<Integer> durationList){
this.createUserIdEnd = createUserIdEnd; this.durationList = durationList;
return this; return this;
} }
/** /**
* 设置 增加 创建用户 * 设置 持续时间,秒
* @param createUserIdIncrement * @param durationNotList
*/ */
public PerformAttendAppealQuery createUserIdIncrement(Long createUserIdIncrement){ public PerformAttendAppealQuery durationNotList(List<Integer> durationNotList){
this.createUserIdIncrement = createUserIdIncrement; this.durationNotList = durationNotList;
return this; return this;
} }
/** /**
* 设置 创建用户 * 设置 图片凭证地址
* @param createUserIdList * @param snapPath
*/ */
public PerformAttendAppealQuery createUserIdList(List<Long> createUserIdList){ public PerformAttendAppealQuery snapPath(String snapPath){
this.createUserIdList = createUserIdList; setSnapPath(snapPath);
return this; return this;
} }
/** /**
* 设置 创建用户 * 设置 图片凭证地址
* @param createUserIdNotList * @param snapPathList
*/ */
public PerformAttendAppealQuery createUserIdNotList(List<Long> createUserIdNotList){ public PerformAttendAppealQuery snapPathList(List<String> snapPathList){
this.createUserIdNotList = createUserIdNotList; this.snapPathList = snapPathList;
return this; return this;
} }
/** /**
* 设置 更新用户 * 设置 违规类型(1.工作纪律)
* @param updateUserId * @param irregularOtherType
*/ */
public PerformAttendAppealQuery updateUserId(Long updateUserId){ public PerformAttendAppealQuery irregularOtherType(Integer irregularOtherType){
setUpdateUserId(updateUserId); setIrregularOtherType(irregularOtherType);
return this; return this;
} }
/** /**
* 设置 开始 更新用户 * 设置 开始 违规类型(1.工作纪律)
* @param updateUserIdStart * @param irregularOtherTypeStart
*/ */
public PerformAttendAppealQuery updateUserIdStart(Long updateUserIdStart){ public PerformAttendAppealQuery irregularOtherTypeStart(Integer irregularOtherTypeStart){
this.updateUserIdStart = updateUserIdStart; this.irregularOtherTypeStart = irregularOtherTypeStart;
return this; return this;
} }
/** /**
* 设置 结束 更新用户 * 设置 结束 违规类型(1.工作纪律)
* @param updateUserIdEnd * @param irregularOtherTypeEnd
*/ */
public PerformAttendAppealQuery updateUserIdEnd(Long updateUserIdEnd){ public PerformAttendAppealQuery irregularOtherTypeEnd(Integer irregularOtherTypeEnd){
this.updateUserIdEnd = updateUserIdEnd; this.irregularOtherTypeEnd = irregularOtherTypeEnd;
return this; return this;
} }
/** /**
* 设置 增加 更新用户 * 设置 增加 违规类型(1.工作纪律)
* @param updateUserIdIncrement * @param irregularOtherTypeIncrement
*/ */
public PerformAttendAppealQuery updateUserIdIncrement(Long updateUserIdIncrement){ public PerformAttendAppealQuery irregularOtherTypeIncrement(Integer irregularOtherTypeIncrement){
this.updateUserIdIncrement = updateUserIdIncrement; this.irregularOtherTypeIncrement = irregularOtherTypeIncrement;
return this; return this;
} }
/** /**
* 设置 更新用户 * 设置 违规类型(1.工作纪律)
* @param updateUserIdList * @param irregularOtherTypeList
*/ */
public PerformAttendAppealQuery updateUserIdList(List<Long> updateUserIdList){ public PerformAttendAppealQuery irregularOtherTypeList(List<Integer> irregularOtherTypeList){
this.updateUserIdList = updateUserIdList; this.irregularOtherTypeList = irregularOtherTypeList;
return this; return this;
} }
/** /**
* 设置 更新用户 * 设置 违规类型(1.工作纪律)
* @param updateUserIdNotList * @param irregularOtherTypeNotList
*/ */
public PerformAttendAppealQuery updateUserIdNotList(List<Long> updateUserIdNotList){ public PerformAttendAppealQuery irregularOtherTypeNotList(List<Integer> irregularOtherTypeNotList){
this.updateUserIdNotList = updateUserIdNotList; this.irregularOtherTypeNotList = irregularOtherTypeNotList;
return this; return this;
} }
/** /**
* 设置 违规类型 * 设置 绩效类型【attend:考勤绩效,review:评价差评绩效,complain:评价投诉绩效,gowork:办件绩效,effect:效能绩效,other:其它绩效】
* @param violationType * @param performType
*/ */
public PerformAttendAppealQuery violationType(String violationType){ public PerformAttendAppealQuery performType(String performType){
setViolationType(violationType); setPerformType(performType);
return this; return this;
} }
/** /**
* 设置 违规类型 * 设置 绩效类型【attend:考勤绩效,review:评价差评绩效,complain:评价投诉绩效,gowork:办件绩效,effect:效能绩效,other:其它绩效】
* @param violationTypeList * @param performTypeList
*/ */
public PerformAttendAppealQuery violationTypeList(List<String> violationTypeList){ public PerformAttendAppealQuery performTypeList(List<String> performTypeList){
this.violationTypeList = violationTypeList; this.performTypeList = performTypeList;
return this; return this;
} }
......
...@@ -7,11 +7,11 @@ import com.mortals.framework.model.BaseEntityLong; ...@@ -7,11 +7,11 @@ import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.perform.model.vo.PerformPerposeDeptVo; import com.mortals.xhx.module.perform.model.vo.PerformPerposeDeptVo;
import lombok.Data; import lombok.Data;
/** /**
* 部门考核目标详细信息实体对象 * 部门考核目标详细信息实体对象
* *
* @author zxfei * @author zxfei
* @date 2023-05-16 * @date 2023-07-12
*/ */
@Data @Data
public class PerformPerposeDeptEntity extends PerformPerposeDeptVo { public class PerformPerposeDeptEntity extends PerformPerposeDeptVo {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
...@@ -3,26 +3,26 @@ package com.mortals.xhx.module.perform.model; ...@@ -3,26 +3,26 @@ package com.mortals.xhx.module.perform.model;
import java.util.List; import java.util.List;
import com.mortals.xhx.module.perform.model.PerformPerposeDeptEntity; import com.mortals.xhx.module.perform.model.PerformPerposeDeptEntity;
/** /**
* 部门考核目标详细信息查询对象 * 部门考核目标详细信息查询对象
* *
* @author zxfei * @author zxfei
* @date 2023-05-16 * @date 2023-07-12
*/ */
public class PerformPerposeDeptQuery extends PerformPerposeDeptEntity { public class PerformPerposeDeptQuery extends PerformPerposeDeptEntity {
/** 开始 序号,主键,自增长 */ /** 开始 序号,主键,自增长 */
private Long IdStart; private Long idStart;
/** 结束 序号,主键,自增长 */ /** 结束 序号,主键,自增长 */
private Long IdEnd; private Long idEnd;
/** 增加 序号,主键,自增长 */ /** 增加 序号,主键,自增长 */
private Long IdIncrement; private Long idIncrement;
/** 序号,主键,自增长列表 */ /** 序号,主键,自增长列表 */
private List <Long> IdList; private List <Long> idList;
/** 序号,主键,自增长排除列表 */ /** 序号,主键,自增长排除列表 */
private List <Long> IdNotList; private List <Long> idNotList;
/** 开始 考核目标id */ /** 开始 考核目标id */
private Long purposeConfIdStart; private Long purposeConfIdStart;
...@@ -116,82 +116,82 @@ public class PerformPerposeDeptQuery extends PerformPerposeDeptEntity { ...@@ -116,82 +116,82 @@ public class PerformPerposeDeptQuery extends PerformPerposeDeptEntity {
/** /**
* 获取 开始 序号,主键,自增长 * 获取 开始 序号,主键,自增长
* @return IdStart * @return idStart
*/ */
public Long getIdStart(){ public Long getIdStart(){
return this.IdStart; return this.idStart;
} }
/** /**
* 设置 开始 序号,主键,自增长 * 设置 开始 序号,主键,自增长
* @param IdStart * @param idStart
*/ */
public void setIdStart(Long IdStart){ public void setIdStart(Long idStart){
this.IdStart = IdStart; this.idStart = idStart;
} }
/** /**
* 获取 结束 序号,主键,自增长 * 获取 结束 序号,主键,自增长
* @return $IdEnd * @return $idEnd
*/ */
public Long getIdEnd(){ public Long getIdEnd(){
return this.IdEnd; return this.idEnd;
} }
/** /**
* 设置 结束 序号,主键,自增长 * 设置 结束 序号,主键,自增长
* @param IdEnd * @param idEnd
*/ */
public void setIdEnd(Long IdEnd){ public void setIdEnd(Long idEnd){
this.IdEnd = IdEnd; this.idEnd = idEnd;
} }
/** /**
* 获取 增加 序号,主键,自增长 * 获取 增加 序号,主键,自增长
* @return IdIncrement * @return idIncrement
*/ */
public Long getIdIncrement(){ public Long getIdIncrement(){
return this.IdIncrement; return this.idIncrement;
} }
/** /**
* 设置 增加 序号,主键,自增长 * 设置 增加 序号,主键,自增长
* @param IdIncrement * @param idIncrement
*/ */
public void setIdIncrement(Long IdIncrement){ public void setIdIncrement(Long idIncrement){
this.IdIncrement = IdIncrement; this.idIncrement = idIncrement;
} }
/** /**
* 获取 序号,主键,自增长 * 获取 序号,主键,自增长
* @return IdList * @return idList
*/ */
public List<Long> getIdList(){ public List<Long> getIdList(){
return this.IdList; return this.idList;
} }
/** /**
* 设置 序号,主键,自增长 * 设置 序号,主键,自增长
* @param IdList * @param idList
*/ */
public void setIdList(List<Long> IdList){ public void setIdList(List<Long> idList){
this.IdList = IdList; this.idList = idList;
} }
/** /**
* 获取 序号,主键,自增长 * 获取 序号,主键,自增长
* @return IdNotList * @return idNotList
*/ */
public List<Long> getIdNotList(){ public List<Long> getIdNotList(){
return this.IdNotList; return this.idNotList;
} }
/** /**
* 设置 序号,主键,自增长 * 设置 序号,主键,自增长
* @param IdNotList * @param idNotList
*/ */
public void setIdNotList(List<Long> IdNotList){ public void setIdNotList(List<Long> idNotList){
this.IdNotList = IdNotList; this.idNotList = idNotList;
} }
...@@ -649,55 +649,55 @@ public class PerformPerposeDeptQuery extends PerformPerposeDeptEntity { ...@@ -649,55 +649,55 @@ public class PerformPerposeDeptQuery extends PerformPerposeDeptEntity {
/** /**
* 设置 序号,主键,自增长 * 设置 序号,主键,自增长
* @param Id * @param id
*/ */
public PerformPerposeDeptQuery Id(Long Id){ public PerformPerposeDeptQuery id(Long id){
setId(Id); setId(id);
return this; return this;
} }
/** /**
* 设置 开始 序号,主键,自增长 * 设置 开始 序号,主键,自增长
* @param IdStart * @param idStart
*/ */
public PerformPerposeDeptQuery IdStart(Long IdStart){ public PerformPerposeDeptQuery idStart(Long idStart){
this.IdStart = IdStart; this.idStart = idStart;
return this; return this;
} }
/** /**
* 设置 结束 序号,主键,自增长 * 设置 结束 序号,主键,自增长
* @param IdEnd * @param idEnd
*/ */
public PerformPerposeDeptQuery IdEnd(Long IdEnd){ public PerformPerposeDeptQuery idEnd(Long idEnd){
this.IdEnd = IdEnd; this.idEnd = idEnd;
return this; return this;
} }
/** /**
* 设置 增加 序号,主键,自增长 * 设置 增加 序号,主键,自增长
* @param IdIncrement * @param idIncrement
*/ */
public PerformPerposeDeptQuery IdIncrement(Long IdIncrement){ public PerformPerposeDeptQuery idIncrement(Long idIncrement){
this.IdIncrement = IdIncrement; this.idIncrement = idIncrement;
return this; return this;
} }
/** /**
* 设置 序号,主键,自增长 * 设置 序号,主键,自增长
* @param IdList * @param idList
*/ */
public PerformPerposeDeptQuery IdList(List<Long> IdList){ public PerformPerposeDeptQuery idList(List<Long> idList){
this.IdList = IdList; this.idList = idList;
return this; return this;
} }
/** /**
* 设置 序号,主键,自增长 * 设置 序号,主键,自增长
* @param IdNotList * @param idNotList
*/ */
public PerformPerposeDeptQuery IdNotList(List<Long> IdNotList){ public PerformPerposeDeptQuery idNotList(List<Long> idNotList){
this.IdNotList = IdNotList; this.idNotList = idNotList;
return this; return this;
} }
......
package com.mortals.xhx.module.perform.model; package com.mortals.xhx.module.perform.model;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.ArrayList; import java.util.ArrayList;
import cn.hutool.core.date.DateUtil;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel; import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong; import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.perform.model.vo.PerformPerposeDeptStatVo; import com.mortals.xhx.module.perform.model.vo.PerformPerposeDeptStatVo;
import lombok.Data; import lombok.Data;
/** /**
* 部门目标统计实体对象 * 部门目标统计实体对象
* *
* @author zxfei * @author zxfei
* @date 2023-05-16 * @date 2023-07-12
*/ */
@Data @Data
public class PerformPerposeDeptStatEntity extends PerformPerposeDeptStatVo { public class PerformPerposeDeptStatEntity extends PerformPerposeDeptStatVo {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
...@@ -125,10 +128,10 @@ public class PerformPerposeDeptStatEntity extends PerformPerposeDeptStatVo { ...@@ -125,10 +128,10 @@ public class PerformPerposeDeptStatEntity extends PerformPerposeDeptStatVo {
this.remark = ""; this.remark = "";
this.year = -1; this.year = DateUtil.year(new Date());
this.month = -1; this.month = DateUtil.month(new Date())+1;
this.day = -1; this.day = DateUtil.dayOfMonth(new Date());
} }
} }
\ No newline at end of file
...@@ -4,11 +4,11 @@ import java.math.BigDecimal; ...@@ -4,11 +4,11 @@ import java.math.BigDecimal;
import java.util.List; import java.util.List;
import com.mortals.xhx.module.perform.model.PerformPerposeDeptStatEntity; import com.mortals.xhx.module.perform.model.PerformPerposeDeptStatEntity;
/** /**
* 部门目标统计查询对象 * 部门目标统计查询对象
* *
* @author zxfei * @author zxfei
* @date 2023-05-16 * @date 2023-07-12
*/ */
public class PerformPerposeDeptStatQuery extends PerformPerposeDeptStatEntity { public class PerformPerposeDeptStatQuery extends PerformPerposeDeptStatEntity {
/** 开始 主键ID,主键,自增长 */ /** 开始 主键ID,主键,自增长 */
private Long idStart; private Long idStart;
......
package com.mortals.xhx.module.perform.model; package com.mortals.xhx.module.perform.model;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.ArrayList; import java.util.ArrayList;
import cn.hutool.core.date.DateUtil;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel; import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong; import com.mortals.framework.model.BaseEntityLong;
...@@ -111,9 +114,9 @@ public class PerformPerposeEntity extends PerformPerposeVo { ...@@ -111,9 +114,9 @@ public class PerformPerposeEntity extends PerformPerposeVo {
this.periodType = 1; this.periodType = 1;
this.year = -1; this.year = DateUtil.year(new Date());
this.month = -1; this.month =DateUtil.month(new Date())+1;
this.halfYear = 1; this.halfYear = 1;
......
...@@ -7,11 +7,11 @@ import com.mortals.framework.model.BaseEntityLong; ...@@ -7,11 +7,11 @@ import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.perform.model.vo.PerformPerposeStaffVo; import com.mortals.xhx.module.perform.model.vo.PerformPerposeStaffVo;
import lombok.Data; import lombok.Data;
/** /**
* 员工考核目标详细信息实体对象 * 员工考核目标详细信息实体对象
* *
* @author zxfei * @author zxfei
* @date 2023-05-16 * @date 2023-07-12
*/ */
@Data @Data
public class PerformPerposeStaffEntity extends PerformPerposeStaffVo { public class PerformPerposeStaffEntity extends PerformPerposeStaffVo {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
......
...@@ -3,26 +3,26 @@ package com.mortals.xhx.module.perform.model; ...@@ -3,26 +3,26 @@ package com.mortals.xhx.module.perform.model;
import java.util.List; import java.util.List;
import com.mortals.xhx.module.perform.model.PerformPerposeStaffEntity; import com.mortals.xhx.module.perform.model.PerformPerposeStaffEntity;
/** /**
* 员工考核目标详细信息查询对象 * 员工考核目标详细信息查询对象
* *
* @author zxfei * @author zxfei
* @date 2023-05-16 * @date 2023-07-12
*/ */
public class PerformPerposeStaffQuery extends PerformPerposeStaffEntity { public class PerformPerposeStaffQuery extends PerformPerposeStaffEntity {
/** 开始 序号,主键,自增长 */ /** 开始 序号,主键,自增长 */
private Long IdStart; private Long idStart;
/** 结束 序号,主键,自增长 */ /** 结束 序号,主键,自增长 */
private Long IdEnd; private Long idEnd;
/** 增加 序号,主键,自增长 */ /** 增加 序号,主键,自增长 */
private Long IdIncrement; private Long idIncrement;
/** 序号,主键,自增长列表 */ /** 序号,主键,自增长列表 */
private List <Long> IdList; private List <Long> idList;
/** 序号,主键,自增长排除列表 */ /** 序号,主键,自增长排除列表 */
private List <Long> IdNotList; private List <Long> idNotList;
/** 开始 考核目标id */ /** 开始 考核目标id */
private Long purposeConfIdStart; private Long purposeConfIdStart;
...@@ -121,82 +121,82 @@ public class PerformPerposeStaffQuery extends PerformPerposeStaffEntity { ...@@ -121,82 +121,82 @@ public class PerformPerposeStaffQuery extends PerformPerposeStaffEntity {
/** /**
* 获取 开始 序号,主键,自增长 * 获取 开始 序号,主键,自增长
* @return IdStart * @return idStart
*/ */
public Long getIdStart(){ public Long getIdStart(){
return this.IdStart; return this.idStart;
} }
/** /**
* 设置 开始 序号,主键,自增长 * 设置 开始 序号,主键,自增长
* @param IdStart * @param idStart
*/ */
public void setIdStart(Long IdStart){ public void setIdStart(Long idStart){
this.IdStart = IdStart; this.idStart = idStart;
} }
/** /**
* 获取 结束 序号,主键,自增长 * 获取 结束 序号,主键,自增长
* @return $IdEnd * @return $idEnd
*/ */
public Long getIdEnd(){ public Long getIdEnd(){
return this.IdEnd; return this.idEnd;
} }
/** /**
* 设置 结束 序号,主键,自增长 * 设置 结束 序号,主键,自增长
* @param IdEnd * @param idEnd
*/ */
public void setIdEnd(Long IdEnd){ public void setIdEnd(Long idEnd){
this.IdEnd = IdEnd; this.idEnd = idEnd;
} }
/** /**
* 获取 增加 序号,主键,自增长 * 获取 增加 序号,主键,自增长
* @return IdIncrement * @return idIncrement
*/ */
public Long getIdIncrement(){ public Long getIdIncrement(){
return this.IdIncrement; return this.idIncrement;
} }
/** /**
* 设置 增加 序号,主键,自增长 * 设置 增加 序号,主键,自增长
* @param IdIncrement * @param idIncrement
*/ */
public void setIdIncrement(Long IdIncrement){ public void setIdIncrement(Long idIncrement){
this.IdIncrement = IdIncrement; this.idIncrement = idIncrement;
} }
/** /**
* 获取 序号,主键,自增长 * 获取 序号,主键,自增长
* @return IdList * @return idList
*/ */
public List<Long> getIdList(){ public List<Long> getIdList(){
return this.IdList; return this.idList;
} }
/** /**
* 设置 序号,主键,自增长 * 设置 序号,主键,自增长
* @param IdList * @param idList
*/ */
public void setIdList(List<Long> IdList){ public void setIdList(List<Long> idList){
this.IdList = IdList; this.idList = idList;
} }
/** /**
* 获取 序号,主键,自增长 * 获取 序号,主键,自增长
* @return IdNotList * @return idNotList
*/ */
public List<Long> getIdNotList(){ public List<Long> getIdNotList(){
return this.IdNotList; return this.idNotList;
} }
/** /**
* 设置 序号,主键,自增长 * 设置 序号,主键,自增长
* @param IdNotList * @param idNotList
*/ */
public void setIdNotList(List<Long> IdNotList){ public void setIdNotList(List<Long> idNotList){
this.IdNotList = IdNotList; this.idNotList = idNotList;
} }
...@@ -686,55 +686,55 @@ public class PerformPerposeStaffQuery extends PerformPerposeStaffEntity { ...@@ -686,55 +686,55 @@ public class PerformPerposeStaffQuery extends PerformPerposeStaffEntity {
/** /**
* 设置 序号,主键,自增长 * 设置 序号,主键,自增长
* @param Id * @param id
*/ */
public PerformPerposeStaffQuery Id(Long Id){ public PerformPerposeStaffQuery id(Long id){
setId(Id); setId(id);
return this; return this;
} }
/** /**
* 设置 开始 序号,主键,自增长 * 设置 开始 序号,主键,自增长
* @param IdStart * @param idStart
*/ */
public PerformPerposeStaffQuery IdStart(Long IdStart){ public PerformPerposeStaffQuery idStart(Long idStart){
this.IdStart = IdStart; this.idStart = idStart;
return this; return this;
} }
/** /**
* 设置 结束 序号,主键,自增长 * 设置 结束 序号,主键,自增长
* @param IdEnd * @param idEnd
*/ */
public PerformPerposeStaffQuery IdEnd(Long IdEnd){ public PerformPerposeStaffQuery idEnd(Long idEnd){
this.IdEnd = IdEnd; this.idEnd = idEnd;
return this; return this;
} }
/** /**
* 设置 增加 序号,主键,自增长 * 设置 增加 序号,主键,自增长
* @param IdIncrement * @param idIncrement
*/ */
public PerformPerposeStaffQuery IdIncrement(Long IdIncrement){ public PerformPerposeStaffQuery idIncrement(Long idIncrement){
this.IdIncrement = IdIncrement; this.idIncrement = idIncrement;
return this; return this;
} }
/** /**
* 设置 序号,主键,自增长 * 设置 序号,主键,自增长
* @param IdList * @param idList
*/ */
public PerformPerposeStaffQuery IdList(List<Long> IdList){ public PerformPerposeStaffQuery idList(List<Long> idList){
this.IdList = IdList; this.idList = idList;
return this; return this;
} }
/** /**
* 设置 序号,主键,自增长 * 设置 序号,主键,自增长
* @param IdNotList * @param idNotList
*/ */
public PerformPerposeStaffQuery IdNotList(List<Long> IdNotList){ public PerformPerposeStaffQuery idNotList(List<Long> idNotList){
this.IdNotList = IdNotList; this.idNotList = idNotList;
return this; return this;
} }
......
package com.mortals.xhx.module.perform.model; package com.mortals.xhx.module.perform.model;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.ArrayList; import java.util.ArrayList;
import cn.hutool.core.date.DateUtil;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel; import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong; import com.mortals.framework.model.BaseEntityLong;
...@@ -11,7 +14,7 @@ import lombok.Data; ...@@ -11,7 +14,7 @@ import lombok.Data;
* 员工目标统计实体对象 * 员工目标统计实体对象
* *
* @author zxfei * @author zxfei
* @date 2023-07-11 * @date 2023-07-12
*/ */
@Data @Data
public class PerformPerposeStaffStatEntity extends PerformPerposeStaffStatVo { public class PerformPerposeStaffStatEntity extends PerformPerposeStaffStatVo {
...@@ -131,10 +134,10 @@ public class PerformPerposeStaffStatEntity extends PerformPerposeStaffStatVo { ...@@ -131,10 +134,10 @@ public class PerformPerposeStaffStatEntity extends PerformPerposeStaffStatVo {
this.remark = ""; this.remark = "";
this.year = -1; this.year = DateUtil.year(new Date());
this.month = -1; this.month = DateUtil.month(new Date())+1;
this.day = -1; this.day = DateUtil.dayOfMonth(new Date());
} }
} }
\ No newline at end of file
...@@ -7,7 +7,7 @@ import com.mortals.xhx.module.perform.model.PerformPerposeStaffStatEntity; ...@@ -7,7 +7,7 @@ import com.mortals.xhx.module.perform.model.PerformPerposeStaffStatEntity;
* 员工目标统计查询对象 * 员工目标统计查询对象
* *
* @author zxfei * @author zxfei
* @date 2023-07-11 * @date 2023-07-12
*/ */
public class PerformPerposeStaffStatQuery extends PerformPerposeStaffStatEntity { public class PerformPerposeStaffStatQuery extends PerformPerposeStaffStatEntity {
/** 开始 主键ID,主键,自增长 */ /** 开始 主键ID,主键,自增长 */
......
...@@ -11,7 +11,7 @@ import java.util.Date; ...@@ -11,7 +11,7 @@ import java.util.Date;
* 绩效记录申诉信息视图对象 * 绩效记录申诉信息视图对象
* *
* @author zxfei * @author zxfei
* @date 2023-07-05 * @date 2023-07-12
*/ */
@Data @Data
public class PerformAttendAppealVo extends BaseEntityLong { public class PerformAttendAppealVo extends BaseEntityLong {
......
...@@ -13,6 +13,7 @@ import lombok.Data; ...@@ -13,6 +13,7 @@ import lombok.Data;
@Data @Data
public class PerformDeptConfDetailVo extends BaseEntityLong { public class PerformDeptConfDetailVo extends BaseEntityLong {
/** 分类Id */
private Long categoryId;
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.model.vo; package com.mortals.xhx.module.perform.model.vo;
import com.mortals.framework.model.BaseEntityLong; import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.perform.model.PerformDeptConfDetailEntity;
import com.mortals.xhx.module.perform.model.PerformDeptConfEntity; import com.mortals.xhx.module.perform.model.PerformDeptConfEntity;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
...@@ -13,6 +14,7 @@ import lombok.Data; ...@@ -13,6 +14,7 @@ import lombok.Data;
@Data @Data
public class PerformDeptConfVo extends BaseEntityLong { public class PerformDeptConfVo extends BaseEntityLong {
/** 部门考核内容详细信息 */
List<PerformDeptConfDetailEntity> deptConfDetail;
} }
\ No newline at end of file
...@@ -4,15 +4,16 @@ import com.mortals.xhx.module.perform.model.PerformPerposeDeptStatEntity; ...@@ -4,15 +4,16 @@ import com.mortals.xhx.module.perform.model.PerformPerposeDeptStatEntity;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import lombok.Data; import lombok.Data;
import com.mortals.framework.annotation.Excel;
import java.math.BigDecimal;
import java.util.Date;
/** /**
* 部门目标统计视图对象 * 部门目标统计视图对象
* *
* @author zxfei * @author zxfei
* @date 2023-05-16 * @date 2023-07-12
*/ */
@Data @Data
public class PerformPerposeDeptStatVo extends BaseEntityLong { public class PerformPerposeDeptStatVo extends BaseEntityLong {
} }
\ No newline at end of file
...@@ -11,7 +11,7 @@ import java.util.Date; ...@@ -11,7 +11,7 @@ import java.util.Date;
* 员工目标统计视图对象 * 员工目标统计视图对象
* *
* @author zxfei * @author zxfei
* @date 2023-07-11 * @date 2023-07-12
*/ */
@Data @Data
public class PerformPerposeStaffStatVo extends BaseEntityLong { public class PerformPerposeStaffStatVo extends BaseEntityLong {
......
package com.mortals.xhx.module.perform.model.vo; package com.mortals.xhx.module.perform.model.vo;
import com.mortals.framework.model.BaseEntityLong; import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.perform.model.PerformPerposeDeptEntity;
import com.mortals.xhx.module.perform.model.PerformPerposeEntity; import com.mortals.xhx.module.perform.model.PerformPerposeEntity;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import com.mortals.xhx.module.perform.model.PerformPerposeStaffEntity;
import lombok.Data; import lombok.Data;
/** /**
* 考核目标视图对象 * 考核目标视图对象
* *
* @author zxfei * @author zxfei
* @date 2023-05-16 * @date 2023-05-16
*/ */
@Data @Data
public class PerformPerposeVo extends BaseEntityLong { public class PerformPerposeVo extends BaseEntityLong {
/**
* 员工目标
*/
private List<PerformPerposeStaffEntity> perposeStaffList;
/**
* 部门目标
*/
private List<PerformPerposeDeptEntity> perposeDeptList;
private String staffPerpose;
private String deptPerpose;
} }
\ No newline at end of file
...@@ -13,6 +13,7 @@ import lombok.Data; ...@@ -13,6 +13,7 @@ import lombok.Data;
@Data @Data
public class PerformStaffConfDetailVo extends BaseEntityLong { public class PerformStaffConfDetailVo extends BaseEntityLong {
/** 分类Id */
private Long categoryId;
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.model.vo; package com.mortals.xhx.module.perform.model.vo;
import com.mortals.framework.model.BaseEntityLong; import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.perform.model.PerformStaffConfDetailEntity;
import com.mortals.xhx.module.perform.model.PerformStaffConfEntity; import com.mortals.xhx.module.perform.model.PerformStaffConfEntity;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
...@@ -12,7 +13,7 @@ import lombok.Data; ...@@ -12,7 +13,7 @@ import lombok.Data;
*/ */
@Data @Data
public class PerformStaffConfVo extends BaseEntityLong { public class PerformStaffConfVo extends BaseEntityLong {
/** 人员自动考核内容详细信息 */
private List<PerformStaffConfDetailEntity> staffConfDetail;
} }
\ No newline at end of file
...@@ -8,7 +8,7 @@ import com.mortals.xhx.module.perform.dao.PerformAttendAppealDao; ...@@ -8,7 +8,7 @@ import com.mortals.xhx.module.perform.dao.PerformAttendAppealDao;
* 绩效记录申诉信息 service接口 * 绩效记录申诉信息 service接口
* *
* @author zxfei * @author zxfei
* @date 2023-07-05 * @date 2023-07-12
*/ */
public interface PerformAttendAppealService extends ICRUDService<PerformAttendAppealEntity,Long>{ public interface PerformAttendAppealService extends ICRUDService<PerformAttendAppealEntity,Long>{
......
package com.mortals.xhx.module.perform.service; package com.mortals.xhx.module.perform.service;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.service.ICRUDService; import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.perform.model.PerformAttendRecordEntity; import com.mortals.xhx.module.perform.model.PerformAttendRecordEntity;
import com.mortals.xhx.module.perform.dao.PerformAttendRecordDao; import com.mortals.xhx.module.perform.dao.PerformAttendRecordDao;
...@@ -13,4 +14,13 @@ import com.mortals.xhx.module.perform.dao.PerformAttendRecordDao; ...@@ -13,4 +14,13 @@ import com.mortals.xhx.module.perform.dao.PerformAttendRecordDao;
public interface PerformAttendRecordService extends ICRUDService<PerformAttendRecordEntity,Long>{ public interface PerformAttendRecordService extends ICRUDService<PerformAttendRecordEntity,Long>{
PerformAttendRecordDao getDao(); PerformAttendRecordDao getDao();
/**
* 修改处理状态
* @param id
* @param status
* @throws AppException
*/
void updateProcessStatus(Long id,Integer status) throws AppException;
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.service; package com.mortals.xhx.module.perform.service;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.service.ICRUDService; import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.perform.model.PerformComplainRecordEntity; import com.mortals.xhx.module.perform.model.PerformComplainRecordEntity;
import com.mortals.xhx.module.perform.dao.PerformComplainRecordDao; import com.mortals.xhx.module.perform.dao.PerformComplainRecordDao;
...@@ -13,4 +14,13 @@ import com.mortals.xhx.module.perform.dao.PerformComplainRecordDao; ...@@ -13,4 +14,13 @@ import com.mortals.xhx.module.perform.dao.PerformComplainRecordDao;
public interface PerformComplainRecordService extends ICRUDService<PerformComplainRecordEntity,Long>{ public interface PerformComplainRecordService extends ICRUDService<PerformComplainRecordEntity,Long>{
PerformComplainRecordDao getDao(); PerformComplainRecordDao getDao();
/**
* 修改处理状态
* @param id
* @param status
* @throws AppException
*/
void updateProcessStatus(Long id,Integer status) throws AppException;
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.service; package com.mortals.xhx.module.perform.service;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService; import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.perform.model.PerformDeptConfDetailEntity; import com.mortals.xhx.module.perform.model.PerformDeptConfDetailEntity;
import com.mortals.xhx.module.perform.dao.PerformDeptConfDetailDao; import com.mortals.xhx.module.perform.dao.PerformDeptConfDetailDao;
...@@ -13,4 +15,12 @@ import com.mortals.xhx.module.perform.dao.PerformDeptConfDetailDao; ...@@ -13,4 +15,12 @@ import com.mortals.xhx.module.perform.dao.PerformDeptConfDetailDao;
public interface PerformDeptConfDetailService extends ICRUDService<PerformDeptConfDetailEntity,Long>{ public interface PerformDeptConfDetailService extends ICRUDService<PerformDeptConfDetailEntity,Long>{
PerformDeptConfDetailDao getDao(); PerformDeptConfDetailDao getDao();
/**
* 启用停用规则
* @param id
* @return
* @throws AppException
*/
int enable(Long id, Context context) throws AppException;
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.service; package com.mortals.xhx.module.perform.service;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.service.ICRUDService; import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.perform.model.PerformEffectRecordEntity; import com.mortals.xhx.module.perform.model.PerformEffectRecordEntity;
import com.mortals.xhx.module.perform.dao.PerformEffectRecordDao; import com.mortals.xhx.module.perform.dao.PerformEffectRecordDao;
...@@ -13,4 +14,13 @@ import com.mortals.xhx.module.perform.dao.PerformEffectRecordDao; ...@@ -13,4 +14,13 @@ import com.mortals.xhx.module.perform.dao.PerformEffectRecordDao;
public interface PerformEffectRecordService extends ICRUDService<PerformEffectRecordEntity,Long>{ public interface PerformEffectRecordService extends ICRUDService<PerformEffectRecordEntity,Long>{
PerformEffectRecordDao getDao(); PerformEffectRecordDao getDao();
/**
* 修改处理状态
* @param id
* @param status
* @throws AppException
*/
void updateProcessStatus(Long id,Integer status) throws AppException;
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.service; package com.mortals.xhx.module.perform.service;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.service.ICRUDService; import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.perform.model.PerformGoworkRecordEntity; import com.mortals.xhx.module.perform.model.PerformGoworkRecordEntity;
import com.mortals.xhx.module.perform.dao.PerformGoworkRecordDao; import com.mortals.xhx.module.perform.dao.PerformGoworkRecordDao;
...@@ -13,4 +14,13 @@ import com.mortals.xhx.module.perform.dao.PerformGoworkRecordDao; ...@@ -13,4 +14,13 @@ import com.mortals.xhx.module.perform.dao.PerformGoworkRecordDao;
public interface PerformGoworkRecordService extends ICRUDService<PerformGoworkRecordEntity,Long>{ public interface PerformGoworkRecordService extends ICRUDService<PerformGoworkRecordEntity,Long>{
PerformGoworkRecordDao getDao(); PerformGoworkRecordDao getDao();
/**
* 修改处理状态
* @param id
* @param status
* @throws AppException
*/
void updateProcessStatus(Long id,Integer status) throws AppException;
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.service; package com.mortals.xhx.module.perform.service;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.service.ICRUDService; import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.perform.model.PerformOtherRecordEntity; import com.mortals.xhx.module.perform.model.PerformOtherRecordEntity;
import com.mortals.xhx.module.perform.dao.PerformOtherRecordDao; import com.mortals.xhx.module.perform.dao.PerformOtherRecordDao;
...@@ -13,4 +14,13 @@ import com.mortals.xhx.module.perform.dao.PerformOtherRecordDao; ...@@ -13,4 +14,13 @@ import com.mortals.xhx.module.perform.dao.PerformOtherRecordDao;
public interface PerformOtherRecordService extends ICRUDService<PerformOtherRecordEntity,Long>{ public interface PerformOtherRecordService extends ICRUDService<PerformOtherRecordEntity,Long>{
PerformOtherRecordDao getDao(); PerformOtherRecordDao getDao();
/**
* 修改处理状态
* @param id
* @param status
* @throws AppException
*/
void updateProcessStatus(Long id,Integer status) throws AppException;
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.service; package com.mortals.xhx.module.perform.service;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.service.ICRUDService; import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.perform.model.PerformReviewRecordEntity; import com.mortals.xhx.module.perform.model.PerformReviewRecordEntity;
import com.mortals.xhx.module.perform.dao.PerformReviewRecordDao; import com.mortals.xhx.module.perform.dao.PerformReviewRecordDao;
...@@ -13,4 +14,13 @@ import com.mortals.xhx.module.perform.dao.PerformReviewRecordDao; ...@@ -13,4 +14,13 @@ import com.mortals.xhx.module.perform.dao.PerformReviewRecordDao;
public interface PerformReviewRecordService extends ICRUDService<PerformReviewRecordEntity,Long>{ public interface PerformReviewRecordService extends ICRUDService<PerformReviewRecordEntity,Long>{
PerformReviewRecordDao getDao(); PerformReviewRecordDao getDao();
/**
* 修改处理状态
* @param id
* @param status
* @throws AppException
*/
void updateProcessStatus(Long id,Integer status) throws AppException;
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.service; package com.mortals.xhx.module.perform.service;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService; import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.perform.model.PerformStaffConfDetailEntity; import com.mortals.xhx.module.perform.model.PerformStaffConfDetailEntity;
import com.mortals.xhx.module.perform.dao.PerformStaffConfDetailDao; import com.mortals.xhx.module.perform.dao.PerformStaffConfDetailDao;
...@@ -13,4 +15,12 @@ import com.mortals.xhx.module.perform.dao.PerformStaffConfDetailDao; ...@@ -13,4 +15,12 @@ import com.mortals.xhx.module.perform.dao.PerformStaffConfDetailDao;
public interface PerformStaffConfDetailService extends ICRUDService<PerformStaffConfDetailEntity,Long>{ public interface PerformStaffConfDetailService extends ICRUDService<PerformStaffConfDetailEntity,Long>{
PerformStaffConfDetailDao getDao(); PerformStaffConfDetailDao getDao();
/**
* 启用停用规则
* @param id
* @return
* @throws AppException
*/
int enable(Long id, Context context) throws AppException;
} }
\ No newline at end of file
...@@ -20,7 +20,7 @@ import lombok.extern.slf4j.Slf4j; ...@@ -20,7 +20,7 @@ import lombok.extern.slf4j.Slf4j;
* 绩效记录申诉信息 service实现 * 绩效记录申诉信息 service实现
* *
* @author zxfei * @author zxfei
* @date 2023-07-05 * @date 2023-07-12
*/ */
@Service("performAttendAppealService") @Service("performAttendAppealService")
@Slf4j @Slf4j
......
package com.mortals.xhx.module.perform.service.impl; package com.mortals.xhx.module.perform.service.impl;
import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.code.SubMethodEnum;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.model.CheckAttendRecordEntity;
import com.mortals.xhx.module.check.service.CheckAttendRecordService;
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;
...@@ -7,6 +14,9 @@ import com.mortals.xhx.module.perform.dao.PerformAttendRecordDao; ...@@ -7,6 +14,9 @@ import com.mortals.xhx.module.perform.dao.PerformAttendRecordDao;
import com.mortals.xhx.module.perform.model.PerformAttendRecordEntity; import com.mortals.xhx.module.perform.model.PerformAttendRecordEntity;
import com.mortals.xhx.module.perform.service.PerformAttendRecordService; import com.mortals.xhx.module.perform.service.PerformAttendRecordService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import java.util.Date;
/** /**
* PerformAttendRecordService * PerformAttendRecordService
* 考勤绩效记录信息 service实现 * 考勤绩效记录信息 service实现
...@@ -18,4 +28,41 @@ import lombok.extern.slf4j.Slf4j; ...@@ -18,4 +28,41 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j @Slf4j
public class PerformAttendRecordServiceImpl extends AbstractCRUDServiceImpl<PerformAttendRecordDao, PerformAttendRecordEntity, Long> implements PerformAttendRecordService { public class PerformAttendRecordServiceImpl extends AbstractCRUDServiceImpl<PerformAttendRecordDao, PerformAttendRecordEntity, Long> implements PerformAttendRecordService {
@Autowired
private CheckAttendRecordService checkAttendRecordService;
@Override
protected void saveAfter(PerformAttendRecordEntity entity, Context context) throws AppException {
CheckAttendRecordEntity checkAttendRecordEntity = new CheckAttendRecordEntity();
checkAttendRecordEntity.initAttrValue();
BeanUtils.copyProperties(entity,checkAttendRecordEntity, BeanUtil.getNullPropertyNames(entity));
checkAttendRecordEntity.setId(null);
checkAttendRecordEntity.setRecordId(entity.getId());
if(entity.getSubMethod()== SubMethodEnum.系统自动.getValue()){
checkAttendRecordEntity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //自动扣分相设置为已处理
}else {
checkAttendRecordEntity.setCheckStatus(CheckStatusEnum.未处理.getValue()); //非自动扣分相设置为未处理
}
checkAttendRecordService.save(checkAttendRecordEntity,context);
}
@Override
public void updateProcessStatus(Long id, Integer status) throws AppException {
if(id==null){
throw new AppException("考勤绩效记录Id不能为空");
}
PerformAttendRecordEntity entity = this.get(id);
if(entity==null){
throw new AppException("无效的考勤绩效记录Id");
}
if(status==null){
status=1; //处理状态(1.未核查,2.已核查)
}
PerformAttendRecordEntity update = new PerformAttendRecordEntity();
update.setId(id);
update.setProcessStatus(status);
update.setUpdateTime(new Date());
dao.update(update);
}
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.service.impl; package com.mortals.xhx.module.perform.service.impl;
import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.code.SubMethodEnum;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.model.CheckComplainRecordEntity;
import com.mortals.xhx.module.check.service.CheckComplainRecordService;
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;
...@@ -7,6 +14,9 @@ import com.mortals.xhx.module.perform.dao.PerformComplainRecordDao; ...@@ -7,6 +14,9 @@ import com.mortals.xhx.module.perform.dao.PerformComplainRecordDao;
import com.mortals.xhx.module.perform.model.PerformComplainRecordEntity; import com.mortals.xhx.module.perform.model.PerformComplainRecordEntity;
import com.mortals.xhx.module.perform.service.PerformComplainRecordService; import com.mortals.xhx.module.perform.service.PerformComplainRecordService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import java.util.Date;
/** /**
* PerformComplainRecordService * PerformComplainRecordService
* 评价绩效投诉记录信息 service实现 * 评价绩效投诉记录信息 service实现
...@@ -18,4 +28,41 @@ import lombok.extern.slf4j.Slf4j; ...@@ -18,4 +28,41 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j @Slf4j
public class PerformComplainRecordServiceImpl extends AbstractCRUDServiceImpl<PerformComplainRecordDao, PerformComplainRecordEntity, Long> implements PerformComplainRecordService { public class PerformComplainRecordServiceImpl extends AbstractCRUDServiceImpl<PerformComplainRecordDao, PerformComplainRecordEntity, Long> implements PerformComplainRecordService {
@Autowired
private CheckComplainRecordService checkComplainRecordService;
@Override
protected void saveAfter(PerformComplainRecordEntity entity, Context context) throws AppException {
CheckComplainRecordEntity checkComplainRecordEntity = new CheckComplainRecordEntity();
checkComplainRecordEntity.initAttrValue();
BeanUtils.copyProperties(entity,checkComplainRecordEntity, BeanUtil.getNullPropertyNames(entity));
checkComplainRecordEntity.setId(null);
checkComplainRecordEntity.setRecordId(entity.getId());
if(entity.getSubMethod()== SubMethodEnum.系统自动.getValue()){
checkComplainRecordEntity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //自动扣分相设置为已处理
}else {
checkComplainRecordEntity.setCheckStatus(CheckStatusEnum.未处理.getValue()); //非自动扣分相设置为未处理
}
checkComplainRecordService.save(checkComplainRecordEntity,context);
}
@Override
public void updateProcessStatus(Long id, Integer status) throws AppException {
if(id==null){
throw new AppException("评价绩效投诉记录Id不能为空");
}
PerformComplainRecordEntity entity = this.get(id);
if(entity==null){
throw new AppException("无效的评价绩效投诉记录Id");
}
if(status==null){
status=1; //处理状态(1.未核查,2.已核查)
}
PerformComplainRecordEntity update = new PerformComplainRecordEntity();
update.setId(id);
update.setProcessStatus(status);
update.setUpdateTime(new Date());
dao.update(update);
}
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.service.impl; package com.mortals.xhx.module.perform.service.impl;
import com.mortals.xhx.common.code.EnabledEnum;
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;
...@@ -7,6 +8,9 @@ import com.mortals.xhx.module.perform.dao.PerformDeptConfDetailDao; ...@@ -7,6 +8,9 @@ import com.mortals.xhx.module.perform.dao.PerformDeptConfDetailDao;
import com.mortals.xhx.module.perform.model.PerformDeptConfDetailEntity; import com.mortals.xhx.module.perform.model.PerformDeptConfDetailEntity;
import com.mortals.xhx.module.perform.service.PerformDeptConfDetailService; import com.mortals.xhx.module.perform.service.PerformDeptConfDetailService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import java.util.Date;
/** /**
* PerformDeptConfDetailService * PerformDeptConfDetailService
* 部门考核内容详细信息 service实现 * 部门考核内容详细信息 service实现
...@@ -18,4 +22,26 @@ import lombok.extern.slf4j.Slf4j; ...@@ -18,4 +22,26 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j @Slf4j
public class PerformDeptConfDetailServiceImpl extends AbstractCRUDServiceImpl<PerformDeptConfDetailDao, PerformDeptConfDetailEntity, Long> implements PerformDeptConfDetailService { public class PerformDeptConfDetailServiceImpl extends AbstractCRUDServiceImpl<PerformDeptConfDetailDao, PerformDeptConfDetailEntity, Long> implements PerformDeptConfDetailService {
@Override
public int enable(Long id, Context context) throws AppException {
if(id == null){
throw new AppException("考核内容详细Id不能为空");
}
PerformDeptConfDetailEntity temp = this.get(id);
if(temp == null){
throw new AppException("考核内容详细Id不正确");
}
PerformDeptConfDetailEntity entity = new PerformDeptConfDetailEntity();
entity.setId(id);
if(temp.getEnable() == EnabledEnum.停止.getValue()){
entity.setEnable(EnabledEnum.启用.getValue());
}else {
entity.setEnable(EnabledEnum.停止.getValue());
}
if(context!=null && context.getUser()!=null){
entity.setUpdateTime(new Date());
entity.setUpdateUserId(context.getUser().getId());
}
return this.dao.update(entity);
}
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.service.impl; package com.mortals.xhx.module.perform.service.impl;
import com.mortals.framework.model.PageInfo;
import com.mortals.xhx.common.code.CheckTypeEnum;
import com.mortals.xhx.module.dept.model.DeptEntity;
import com.mortals.xhx.module.dept.service.DeptService;
import com.mortals.xhx.module.perform.model.PerformDeptConfDetailEntity;
import com.mortals.xhx.module.perform.model.PerformDeptConfDetailQuery;
import com.mortals.xhx.module.perform.model.PerformRulesCategoryEntity;
import com.mortals.xhx.module.perform.service.PerformDeptConfDetailService;
import com.mortals.xhx.module.perform.service.PerformRulesCategoryService;
import org.apache.commons.collections4.CollectionUtils;
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;
...@@ -7,6 +18,11 @@ import com.mortals.xhx.module.perform.dao.PerformDeptConfDao; ...@@ -7,6 +18,11 @@ import com.mortals.xhx.module.perform.dao.PerformDeptConfDao;
import com.mortals.xhx.module.perform.model.PerformDeptConfEntity; import com.mortals.xhx.module.perform.model.PerformDeptConfEntity;
import com.mortals.xhx.module.perform.service.PerformDeptConfService; import com.mortals.xhx.module.perform.service.PerformDeptConfService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/** /**
* PerformDeptConfService * PerformDeptConfService
* 部门自动考核信息 service实现 * 部门自动考核信息 service实现
...@@ -18,4 +34,127 @@ import lombok.extern.slf4j.Slf4j; ...@@ -18,4 +34,127 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j @Slf4j
public class PerformDeptConfServiceImpl extends AbstractCRUDServiceImpl<PerformDeptConfDao, PerformDeptConfEntity, Long> implements PerformDeptConfService { public class PerformDeptConfServiceImpl extends AbstractCRUDServiceImpl<PerformDeptConfDao, PerformDeptConfEntity, Long> implements PerformDeptConfService {
@Autowired
private PerformDeptConfDetailService performDeptConfDetailService;
@Autowired
private DeptService deptService;
@Autowired
private PerformRulesCategoryService performRulesCategoryService;
@Override
protected void findAfter(PerformDeptConfEntity params, PageInfo pageInfo, Context context, List<PerformDeptConfEntity> list) throws AppException {
if(CollectionUtils.isNotEmpty(list)){
for (PerformDeptConfEntity item:list){
List<PerformDeptConfDetailEntity> detailEntityList = performDeptConfDetailService.find(new PerformDeptConfDetailQuery().deptConfId(item.getId()));
item.setDeptConfDetail(detailEntityList);
}
}
}
@Override
protected void updateBefore(PerformDeptConfEntity entity, Context context) throws AppException {
super.updateBefore(entity, context);
DeptEntity deptEntity = deptService.get(entity.getDeptId());
if (deptEntity != null) {
entity.setDeptName(deptEntity.getDeptName());
}
}
@Override
protected void updateAfter(PerformDeptConfEntity entity, Context context) throws AppException {
if(CollectionUtils.isNotEmpty(entity.getDeptConfDetail())){
Long[] detailIds = performDeptConfDetailService.find(new PerformDeptConfDetailQuery().deptConfId(entity.getId())).stream().map(PerformDeptConfDetailEntity::getId).toArray(Long[]::new);
performDeptConfDetailService.remove(detailIds,context);
for(PerformDeptConfDetailEntity item:entity.getDeptConfDetail()){
item.setDeptConfId(entity.getId());
item.setCreateTime(entity.getCreateTime());
item.setCreateUser(entity.getCreateUser());
item.setDeptId(entity.getDeptId());
item.setDeptName(entity.getDeptName());
PerformRulesCategoryEntity categoryEntity = performRulesCategoryService.get(item.getCategoryId());
if(categoryEntity!=null){
item.setCategoryName(categoryEntity.getName());
}
item.setId(null);
}
performDeptConfDetailService.save(entity.getDeptConfDetail(),context);
}
}
@Override
protected void saveBefore(PerformDeptConfEntity entity, Context context) throws AppException {
super.saveBefore(entity,context);
DeptEntity deptEntity = deptService.get(entity.getDeptId());
if(deptEntity!=null){
entity.setDeptName(deptEntity.getDeptName());
}
if(CollectionUtils.isNotEmpty(entity.getDeptConfDetail())){
Map<Integer,List<PerformDeptConfDetailEntity>> groupMap = entity.getDeptConfDetail().stream().collect(Collectors.groupingBy(PerformDeptConfDetailEntity::getType));
if(groupMap.containsKey(CheckTypeEnum.考勤绩效.getValue())) {
entity.setAttendCount(groupMap.get(CheckTypeEnum.考勤绩效.getValue()).size());
}else {
entity.setAttendCount(0);
}
if(groupMap.containsKey(CheckTypeEnum.评价绩效.getValue())) {
entity.setAssessCount(groupMap.get(CheckTypeEnum.评价绩效.getValue()).size());
}else {
entity.setAssessCount(0);
}
if(groupMap.containsKey(CheckTypeEnum.办件绩效.getValue())) {
entity.setWorkCount(groupMap.get(CheckTypeEnum.办件绩效.getValue()).size());
}else {
entity.setWorkCount(0);
}
if(groupMap.containsKey(CheckTypeEnum.效能绩效.getValue())) {
entity.setEffectCount(groupMap.get(CheckTypeEnum.效能绩效.getValue()).size());
}else {
entity.setEffectCount(0);
}
if(groupMap.containsKey(CheckTypeEnum.其它绩效.getValue())) {
entity.setOtherCount(groupMap.get(CheckTypeEnum.其它绩效.getValue()).size());
}else {
entity.setOtherCount(0);
}
}
}
@Override
protected void saveAfter(PerformDeptConfEntity entity, Context context) throws AppException {
if(CollectionUtils.isNotEmpty(entity.getDeptConfDetail())){
for(PerformDeptConfDetailEntity item:entity.getDeptConfDetail()){
item.setDeptConfId(entity.getId());
item.setCreateTime(entity.getCreateTime());
item.setCreateUser(entity.getCreateUser());
item.setDeptId(entity.getDeptId());
item.setDeptName(entity.getDeptName());
PerformRulesCategoryEntity categoryEntity = performRulesCategoryService.get(item.getCategoryId());
if(categoryEntity!=null){
item.setCategoryName(categoryEntity.getName());
}
item.setId(null);
}
performDeptConfDetailService.save(entity.getDeptConfDetail(),context);
}
}
@Override
public PerformDeptConfEntity get(Long key, Context context) throws AppException {
PerformDeptConfEntity entity = this.dao.get(key);
if(entity!=null) {
List<PerformDeptConfDetailEntity> detailEntityList = performDeptConfDetailService.find(new PerformDeptConfDetailQuery().deptConfId(entity.getId()));
entity.setDeptConfDetail(detailEntityList);
}
return entity;
}
@Override
protected void removeAfter(Long[] ids, Context context, int result) throws AppException {
if(ids != null && ids.length != 0){
for (Long id:ids){
PerformDeptConfDetailEntity condition = new PerformDeptConfDetailEntity();
condition.setDeptConfId(id);
performDeptConfDetailService.remove(condition,context);
}
}
}
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.service.impl; package com.mortals.xhx.module.perform.service.impl;
import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.code.SubMethodEnum;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.model.CheckEffectRecordEntity;
import com.mortals.xhx.module.check.service.CheckEffectRecordService;
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;
...@@ -7,6 +14,9 @@ import com.mortals.xhx.module.perform.dao.PerformEffectRecordDao; ...@@ -7,6 +14,9 @@ import com.mortals.xhx.module.perform.dao.PerformEffectRecordDao;
import com.mortals.xhx.module.perform.model.PerformEffectRecordEntity; import com.mortals.xhx.module.perform.model.PerformEffectRecordEntity;
import com.mortals.xhx.module.perform.service.PerformEffectRecordService; import com.mortals.xhx.module.perform.service.PerformEffectRecordService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import java.util.Date;
/** /**
* PerformEffectRecordService * PerformEffectRecordService
* 效能绩效记录信息 service实现 * 效能绩效记录信息 service实现
...@@ -18,4 +28,41 @@ import lombok.extern.slf4j.Slf4j; ...@@ -18,4 +28,41 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j @Slf4j
public class PerformEffectRecordServiceImpl extends AbstractCRUDServiceImpl<PerformEffectRecordDao, PerformEffectRecordEntity, Long> implements PerformEffectRecordService { public class PerformEffectRecordServiceImpl extends AbstractCRUDServiceImpl<PerformEffectRecordDao, PerformEffectRecordEntity, Long> implements PerformEffectRecordService {
@Autowired
private CheckEffectRecordService checkEffectRecordService;
@Override
protected void saveAfter(PerformEffectRecordEntity entity, Context context) throws AppException {
CheckEffectRecordEntity checkEffectRecordEntity = new CheckEffectRecordEntity();
checkEffectRecordEntity.initAttrValue();
BeanUtils.copyProperties(entity,checkEffectRecordEntity, BeanUtil.getNullPropertyNames(entity));
checkEffectRecordEntity.setId(null);
checkEffectRecordEntity.setRecordId(entity.getId());
if(entity.getSubMethod()== SubMethodEnum.系统自动.getValue()){
checkEffectRecordEntity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //自动扣分相设置为已处理
}else {
checkEffectRecordEntity.setCheckStatus(CheckStatusEnum.未处理.getValue()); //非自动扣分相设置为未处理
}
checkEffectRecordService.save(checkEffectRecordEntity,context);
}
@Override
public void updateProcessStatus(Long id, Integer status) throws AppException {
if(id==null){
throw new AppException("效能绩效记录Id不能为空");
}
PerformEffectRecordEntity entity = this.get(id);
if(entity==null){
throw new AppException("无效的效能绩效记录Id");
}
if(status==null){
status=1; //处理状态(1.未核查,2.已核查)
}
PerformEffectRecordEntity update = new PerformEffectRecordEntity();
update.setId(id);
update.setProcessStatus(status);
update.setUpdateTime(new Date());
dao.update(update);
}
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.service.impl; package com.mortals.xhx.module.perform.service.impl;
import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.code.SubMethodEnum;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.model.CheckGoworkRecordEntity;
import com.mortals.xhx.module.check.service.CheckGoworkRecordService;
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;
...@@ -7,6 +14,9 @@ import com.mortals.xhx.module.perform.dao.PerformGoworkRecordDao; ...@@ -7,6 +14,9 @@ import com.mortals.xhx.module.perform.dao.PerformGoworkRecordDao;
import com.mortals.xhx.module.perform.model.PerformGoworkRecordEntity; import com.mortals.xhx.module.perform.model.PerformGoworkRecordEntity;
import com.mortals.xhx.module.perform.service.PerformGoworkRecordService; import com.mortals.xhx.module.perform.service.PerformGoworkRecordService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import java.util.Date;
/** /**
* PerformGoworkRecordService * PerformGoworkRecordService
* 办件绩效记录信息 service实现 * 办件绩效记录信息 service实现
...@@ -18,4 +28,41 @@ import lombok.extern.slf4j.Slf4j; ...@@ -18,4 +28,41 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j @Slf4j
public class PerformGoworkRecordServiceImpl extends AbstractCRUDServiceImpl<PerformGoworkRecordDao, PerformGoworkRecordEntity, Long> implements PerformGoworkRecordService { public class PerformGoworkRecordServiceImpl extends AbstractCRUDServiceImpl<PerformGoworkRecordDao, PerformGoworkRecordEntity, Long> implements PerformGoworkRecordService {
@Autowired
private CheckGoworkRecordService checkGoworkRecordService;
@Override
protected void saveAfter(PerformGoworkRecordEntity entity, Context context) throws AppException {
CheckGoworkRecordEntity checkGoworkRecordEntity = new CheckGoworkRecordEntity();
checkGoworkRecordEntity.initAttrValue();
BeanUtils.copyProperties(entity,checkGoworkRecordEntity, BeanUtil.getNullPropertyNames(entity));
checkGoworkRecordEntity.setId(null);
checkGoworkRecordEntity.setRecordId(entity.getId());
if(entity.getSubMethod()== SubMethodEnum.系统自动.getValue()){
checkGoworkRecordEntity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //自动扣分相设置为已处理
}else {
checkGoworkRecordEntity.setCheckStatus(CheckStatusEnum.未处理.getValue()); //非自动扣分相设置为未处理
}
checkGoworkRecordService.save(checkGoworkRecordEntity,context);
}
@Override
public void updateProcessStatus(Long id, Integer status) throws AppException {
if(id==null){
throw new AppException("办件绩效记录Id不能为空");
}
PerformGoworkRecordEntity entity = this.get(id);
if(entity==null){
throw new AppException("无效的办件绩效记录Id");
}
if(status==null){
status=1; //处理状态(1.未核查,2.已核查)
}
PerformGoworkRecordEntity update = new PerformGoworkRecordEntity();
update.setId(id);
update.setProcessStatus(status);
update.setUpdateTime(new Date());
dao.update(update);
}
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.service.impl; package com.mortals.xhx.module.perform.service.impl;
import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.code.SubMethodEnum;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.model.CheckOtherRecordEntity;
import com.mortals.xhx.module.check.service.CheckOtherRecordService;
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;
...@@ -7,6 +14,9 @@ import com.mortals.xhx.module.perform.dao.PerformOtherRecordDao; ...@@ -7,6 +14,9 @@ import com.mortals.xhx.module.perform.dao.PerformOtherRecordDao;
import com.mortals.xhx.module.perform.model.PerformOtherRecordEntity; import com.mortals.xhx.module.perform.model.PerformOtherRecordEntity;
import com.mortals.xhx.module.perform.service.PerformOtherRecordService; import com.mortals.xhx.module.perform.service.PerformOtherRecordService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import java.util.Date;
/** /**
* PerformOtherRecordService * PerformOtherRecordService
* 其它绩效记录信息 service实现 * 其它绩效记录信息 service实现
...@@ -18,4 +28,41 @@ import lombok.extern.slf4j.Slf4j; ...@@ -18,4 +28,41 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j @Slf4j
public class PerformOtherRecordServiceImpl extends AbstractCRUDServiceImpl<PerformOtherRecordDao, PerformOtherRecordEntity, Long> implements PerformOtherRecordService { public class PerformOtherRecordServiceImpl extends AbstractCRUDServiceImpl<PerformOtherRecordDao, PerformOtherRecordEntity, Long> implements PerformOtherRecordService {
@Autowired
private CheckOtherRecordService checkOtherRecordService;
@Override
protected void saveAfter(PerformOtherRecordEntity entity, Context context) throws AppException {
CheckOtherRecordEntity checkOtherRecordEntity = new CheckOtherRecordEntity();
checkOtherRecordEntity.initAttrValue();
BeanUtils.copyProperties(entity,checkOtherRecordEntity, BeanUtil.getNullPropertyNames(entity));
checkOtherRecordEntity.setId(null);
checkOtherRecordEntity.setRecordId(entity.getId());
if(entity.getSubMethod()== SubMethodEnum.系统自动.getValue()){
checkOtherRecordEntity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //自动扣分相设置为已处理
}else {
checkOtherRecordEntity.setCheckStatus(CheckStatusEnum.未处理.getValue()); //非自动扣分相设置为未处理
}
checkOtherRecordService.save(checkOtherRecordEntity,context);
}
@Override
public void updateProcessStatus(Long id, Integer status) throws AppException {
if(id==null){
throw new AppException("其它绩效记录Id不能为空");
}
PerformOtherRecordEntity entity = this.get(id);
if(entity==null){
throw new AppException("无效的其它绩效记录Id");
}
if(status==null){
status=1; //处理状态(1.未核查,2.已核查)
}
PerformOtherRecordEntity update = new PerformOtherRecordEntity();
update.setId(id);
update.setProcessStatus(status);
update.setUpdateTime(new Date());
dao.update(update);
}
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.service.impl; package com.mortals.xhx.module.perform.service.impl;
import com.mortals.framework.model.PageInfo;
import com.mortals.xhx.common.code.AssessmentScopeEnum;
import com.mortals.xhx.module.dept.model.DeptEntity;
import com.mortals.xhx.module.dept.service.DeptService;
import com.mortals.xhx.module.perform.model.*;
import com.mortals.xhx.module.perform.service.PerformPerposeDeptService;
import com.mortals.xhx.module.perform.service.PerformPerposeStaffService;
import com.mortals.xhx.module.staff.model.StaffEntity;
import com.mortals.xhx.module.staff.service.StaffService;
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;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.xhx.module.perform.dao.PerformPerposeDao; import com.mortals.xhx.module.perform.dao.PerformPerposeDao;
import com.mortals.xhx.module.perform.model.PerformPerposeEntity;
import com.mortals.xhx.module.perform.service.PerformPerposeService; import com.mortals.xhx.module.perform.service.PerformPerposeService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.util.ObjectUtils;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/** /**
* PerformPerposeService * PerformPerposeService
* 考核目标 service实现 * 考核目标 service实现
* *
* @author zxfei * @author zxfei
* @date 2023-05-16 * @date 2023-05-16
*/ */
@Service("performPerposeService") @Service("performPerposeService")
@Slf4j @Slf4j
public class PerformPerposeServiceImpl extends AbstractCRUDServiceImpl<PerformPerposeDao, PerformPerposeEntity, Long> implements PerformPerposeService { public class PerformPerposeServiceImpl extends AbstractCRUDServiceImpl<PerformPerposeDao, PerformPerposeEntity, Long> implements PerformPerposeService {
@Autowired
private PerformPerposeStaffService perposeStaffService;
@Autowired
private PerformPerposeDeptService perposeDeptService;
@Autowired
private DeptService deptService;
@Autowired
private StaffService staffService;
@Override
protected void findAfter(PerformPerposeEntity params, PageInfo pageInfo, Context context, List<PerformPerposeEntity> list) throws AppException {
super.findAfter(params, pageInfo, context, list);
list.stream().forEach(item->{
if(AssessmentScopeEnum.个人.getValue()==item.getAssessmentScope()){
List<PerformPerposeStaffEntity> staffEntities = perposeStaffService.find(new PerformPerposeStaffQuery().purposeConfId(item.getId()));
item.setPerposeStaffList(staffEntities);
item.setStaffPerpose(staffEntities.stream().map(item1->item1.getStaffName()).collect(Collectors.joining(",")));
}else if(AssessmentScopeEnum.部门.getValue()==item.getAssessmentScope()){
List<PerformPerposeDeptEntity> deptEntities = perposeDeptService.find(new PerformPerposeDeptQuery().purposeConfId(item.getId()));
item.setPerposeDeptList(deptEntities);
item.setDeptPerpose(deptEntities.stream().map(item1->item1.getDeptName()).collect(Collectors.joining(",")));
}
});
}
@Override
protected void saveAfter(PerformPerposeEntity entity, Context context) throws AppException {
super.saveAfter(entity, context);
if (!ObjectUtils.isEmpty(entity.getPerposeStaffList())) {
entity.getPerposeStaffList().stream().peek(item -> {
item.setPurposeConfId(entity.getId());
if (!ObjectUtils.isEmpty(item.getStaffId())) {
StaffEntity staffCache = staffService.getCache(item.getStaffId().toString());
if (!ObjectUtils.isEmpty(staffCache)) {
item.setStaffName(staffCache.getName());
item.setNumber(staffCache.getWorkNum());
}
}
item.setCreateUserId(this.getContextUserId(context));
item.setCreateTime(new Date());
}).count();
perposeStaffService.save(entity.getPerposeStaffList());
}
if (!ObjectUtils.isEmpty(entity.getPerposeDeptList())) {
entity.getPerposeDeptList().stream().peek(item -> {
item.setPurposeConfId(entity.getId());
if (!ObjectUtils.isEmpty(item.getDeptId())) {
DeptEntity deptEntity = deptService.get(item.getDeptId(), context);
if (!ObjectUtils.isEmpty(deptEntity)) {
item.setDeptName(deptEntity.getDeptName());
}
}
item.setCreateUserId(this.getContextUserId(context));
item.setCreateTime(new Date());
}).count();
perposeDeptService.save(entity.getPerposeDeptList(), context);
}
}
@Override
protected void updateAfter(PerformPerposeEntity entity, Context context) throws AppException {
super.updateAfter(entity, context);
if (!ObjectUtils.isEmpty(entity.getPerposeStaffList())) {
Long[] performAttendAppealFilesIds = perposeStaffService.find(new PerformPerposeStaffQuery().purposeConfId(entity.getId())).stream().map(PerformPerposeStaffEntity::getId).toArray(Long[]::new);
perposeStaffService.remove(performAttendAppealFilesIds, context);
entity.getPerposeStaffList().stream().peek(item -> {
item.setPurposeConfId(entity.getId());
if (!ObjectUtils.isEmpty(item.getStaffId())) {
StaffEntity staffCache = staffService.getCache(item.getStaffId().toString());
if (!ObjectUtils.isEmpty(staffCache)) {
item.setStaffName(staffCache.getName());
item.setNumber(staffCache.getWorkNum());
}
}
item.setCreateUserId(this.getContextUserId(context));
item.setCreateTime(new Date());
}).count();
perposeStaffService.save(entity.getPerposeStaffList());
}
if (!ObjectUtils.isEmpty(entity.getPerposeDeptList())) {
Long[] performAttendAppealFilesIds = perposeDeptService.find(new PerformPerposeDeptQuery().purposeConfId(entity.getId())).stream().map(PerformPerposeDeptEntity::getId).toArray(Long[]::new);
perposeDeptService.remove(performAttendAppealFilesIds, context);
entity.getPerposeDeptList().stream().peek(item -> {
item.setPurposeConfId(entity.getId());
if (!ObjectUtils.isEmpty(item.getDeptId())) {
DeptEntity deptEntity = deptService.get(item.getDeptId(), context);
if (!ObjectUtils.isEmpty(deptEntity)) {
item.setDeptName(deptEntity.getDeptName());
}
}
item.setCreateUserId(this.getContextUserId(context));
item.setCreateTime(new Date());
}).count();
perposeDeptService.save(entity.getPerposeDeptList(), context);
}
}
@Override
protected void removeAfter(Long[] ids, Context context, int result) throws AppException {
super.removeAfter(ids, context, result);
List<PerformPerposeStaffEntity> staffEntityList = perposeStaffService.find(new PerformPerposeStaffQuery().purposeConfIdList(Arrays.asList(ids)));
perposeStaffService.removeList(staffEntityList, context);
List<PerformPerposeDeptEntity> deptEntityList = perposeDeptService.find(new PerformPerposeDeptQuery().purposeConfIdList(Arrays.asList(ids)));
perposeDeptService.removeList(deptEntityList, context);
}
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.service.impl; package com.mortals.xhx.module.perform.service.impl;
import com.mortals.xhx.common.code.CheckStatusEnum;
import com.mortals.xhx.common.code.SubMethodEnum;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.check.model.CheckReviewRecordEntity;
import com.mortals.xhx.module.check.service.CheckReviewRecordService;
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;
...@@ -7,6 +14,9 @@ import com.mortals.xhx.module.perform.dao.PerformReviewRecordDao; ...@@ -7,6 +14,9 @@ import com.mortals.xhx.module.perform.dao.PerformReviewRecordDao;
import com.mortals.xhx.module.perform.model.PerformReviewRecordEntity; import com.mortals.xhx.module.perform.model.PerformReviewRecordEntity;
import com.mortals.xhx.module.perform.service.PerformReviewRecordService; import com.mortals.xhx.module.perform.service.PerformReviewRecordService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import java.util.Date;
/** /**
* PerformReviewRecordService * PerformReviewRecordService
* 评价差评绩效记录信息 service实现 * 评价差评绩效记录信息 service实现
...@@ -18,4 +28,40 @@ import lombok.extern.slf4j.Slf4j; ...@@ -18,4 +28,40 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j @Slf4j
public class PerformReviewRecordServiceImpl extends AbstractCRUDServiceImpl<PerformReviewRecordDao, PerformReviewRecordEntity, Long> implements PerformReviewRecordService { public class PerformReviewRecordServiceImpl extends AbstractCRUDServiceImpl<PerformReviewRecordDao, PerformReviewRecordEntity, Long> implements PerformReviewRecordService {
@Autowired
private CheckReviewRecordService checkReviewRecordService;
@Override
protected void saveAfter(PerformReviewRecordEntity entity, Context context) throws AppException {
CheckReviewRecordEntity checkReviewRecordEntity = new CheckReviewRecordEntity();
BeanUtils.copyProperties(entity,checkReviewRecordEntity, BeanUtil.getNullPropertyNames(entity));
checkReviewRecordEntity.setId(null);
checkReviewRecordEntity.setRecordId(entity.getId());
if(entity.getSubMethod()== SubMethodEnum.系统自动.getValue()){
checkReviewRecordEntity.setCheckStatus(CheckStatusEnum.已处理.getValue()); //自动扣分相设置为已处理
}else {
checkReviewRecordEntity.setCheckStatus(CheckStatusEnum.未处理.getValue()); //非自动扣分相设置为未处理
}
checkReviewRecordService.save(checkReviewRecordEntity,context);
}
@Override
public void updateProcessStatus(Long id, Integer status) throws AppException {
if(id==null){
throw new AppException("评价差评绩效记录Id不能为空");
}
PerformReviewRecordEntity entity = this.get(id);
if(entity==null){
throw new AppException("无效的评价差评绩效记录Id");
}
if(status==null){
status=1; //处理状态(1.未核查,2.已核查)
}
PerformReviewRecordEntity update = new PerformReviewRecordEntity();
update.setId(id);
update.setProcessStatus(status);
update.setUpdateTime(new Date());
dao.update(update);
}
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.service.impl; package com.mortals.xhx.module.perform.service.impl;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException; import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.xhx.common.code.EnabledEnum;
import com.mortals.xhx.module.perform.dao.PerformStaffConfDetailDao; import com.mortals.xhx.module.perform.dao.PerformStaffConfDetailDao;
import com.mortals.xhx.module.perform.model.PerformStaffConfDetailEntity; import com.mortals.xhx.module.perform.model.PerformStaffConfDetailEntity;
import com.mortals.xhx.module.perform.service.PerformStaffConfDetailService; import com.mortals.xhx.module.perform.service.PerformStaffConfDetailService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.util.Date;
/** /**
* PerformStaffConfDetailService * PerformStaffConfDetailService
* 人员考核内容详细信息 service实现 * 人员考核内容详细信息 service实现
...@@ -18,4 +23,26 @@ import lombok.extern.slf4j.Slf4j; ...@@ -18,4 +23,26 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j @Slf4j
public class PerformStaffConfDetailServiceImpl extends AbstractCRUDServiceImpl<PerformStaffConfDetailDao, PerformStaffConfDetailEntity, Long> implements PerformStaffConfDetailService { public class PerformStaffConfDetailServiceImpl extends AbstractCRUDServiceImpl<PerformStaffConfDetailDao, PerformStaffConfDetailEntity, Long> implements PerformStaffConfDetailService {
@Override
public int enable(Long id, Context context) throws AppException {
if(id == null){
throw new AppException("考核内容详细Id不能为空");
}
PerformStaffConfDetailEntity temp = this.get(id);
if(temp == null){
throw new AppException("考核内容详细Id不正确");
}
PerformStaffConfDetailEntity entity = new PerformStaffConfDetailEntity();
entity.setId(id);
if(temp.getEnable() == EnabledEnum.停止.getValue()){
entity.setEnable(EnabledEnum.启用.getValue());
}else {
entity.setEnable(EnabledEnum.停止.getValue());
}
if(context!=null && context.getUser()!=null){
entity.setUpdateTime(new Date());
entity.setUpdateUserId(context.getUser().getId());
}
return this.dao.update(entity);
}
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.service.impl; package com.mortals.xhx.module.perform.service.impl;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.util.StringUtils;
import com.mortals.xhx.common.code.CheckTypeEnum;
import com.mortals.xhx.module.perform.model.*;
import com.mortals.xhx.module.perform.service.PerformRulesCategoryService;
import com.mortals.xhx.module.perform.service.PerformStaffConfDetailService;
import com.mortals.xhx.module.staff.model.StaffEntity;
import com.mortals.xhx.module.staff.model.StaffQuery;
import com.mortals.xhx.module.staff.service.StaffService;
import org.apache.commons.collections4.CollectionUtils;
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;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import com.mortals.xhx.module.perform.dao.PerformStaffConfDao; import com.mortals.xhx.module.perform.dao.PerformStaffConfDao;
import com.mortals.xhx.module.perform.model.PerformStaffConfEntity;
import com.mortals.xhx.module.perform.service.PerformStaffConfService; import com.mortals.xhx.module.perform.service.PerformStaffConfService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/** /**
* PerformStaffConfService * PerformStaffConfService
* 人员自动考核信息 service实现 * 人员自动考核信息 service实现
...@@ -18,4 +33,150 @@ import lombok.extern.slf4j.Slf4j; ...@@ -18,4 +33,150 @@ import lombok.extern.slf4j.Slf4j;
@Slf4j @Slf4j
public class PerformStaffConfServiceImpl extends AbstractCRUDServiceImpl<PerformStaffConfDao, PerformStaffConfEntity, Long> implements PerformStaffConfService { public class PerformStaffConfServiceImpl extends AbstractCRUDServiceImpl<PerformStaffConfDao, PerformStaffConfEntity, Long> implements PerformStaffConfService {
@Autowired
private PerformStaffConfDetailService performStaffConfDetailService;
@Autowired
private StaffService staffService;
@Autowired
private PerformRulesCategoryService performRulesCategoryService;
@Override
protected void saveBefore(PerformStaffConfEntity entity, Context context) throws AppException {
super.saveBefore(entity,context);
if(StringUtils.isNotEmpty(entity.getStaffIds())){
List<Long> staffIdList = StringUtils.converStr2Long(entity.getStaffIds());
StaffQuery staffQuery = new StaffQuery();
staffQuery.setIdList(staffIdList);
List<StaffEntity> staffEntityList = staffService.find(staffQuery);
if(CollectionUtils.isNotEmpty(staffEntityList)){
String names = "";
for (StaffEntity item:staffEntityList){
names+=item.getName()+",";
}
entity.setStaffNames(names.substring(0,names.length()-1));
entity.setStaffCount(staffEntityList.size());
}else {
entity.setStaffCount(0);
}
}
if(CollectionUtils.isNotEmpty(entity.getStaffConfDetail())){
Map<Integer,List<PerformStaffConfDetailEntity>> groupMap = entity.getStaffConfDetail().stream().collect(Collectors.groupingBy(PerformStaffConfDetailEntity::getType));
if(groupMap.containsKey(CheckTypeEnum.考勤绩效.getValue())) {
entity.setAttendCount(groupMap.get(CheckTypeEnum.考勤绩效.getValue()).size());
}else {
entity.setAttendCount(0);
}
if(groupMap.containsKey(CheckTypeEnum.评价绩效.getValue())) {
entity.setAssessCount(groupMap.get(CheckTypeEnum.评价绩效.getValue()).size());
}else {
entity.setAssessCount(0);
}
if(groupMap.containsKey(CheckTypeEnum.办件绩效.getValue())) {
entity.setWorkCount(groupMap.get(CheckTypeEnum.办件绩效.getValue()).size());
}else {
entity.setWorkCount(0);
}
if(groupMap.containsKey(CheckTypeEnum.效能绩效.getValue())) {
entity.setEffectCount(groupMap.get(CheckTypeEnum.效能绩效.getValue()).size());
}else {
entity.setEffectCount(0);
}
if(groupMap.containsKey(CheckTypeEnum.其它绩效.getValue())) {
entity.setOtherCount(groupMap.get(CheckTypeEnum.其它绩效.getValue()).size());
}else {
entity.setOtherCount(0);
}
}
}
@Override
protected void saveAfter(PerformStaffConfEntity entity, Context context) throws AppException {
if(CollectionUtils.isNotEmpty(entity.getStaffConfDetail())){
for(PerformStaffConfDetailEntity item:entity.getStaffConfDetail()){
item.setStaffConfId(entity.getId());
item.setCreateTime(entity.getCreateTime());
item.setCreateUser(entity.getCreateUser());
item.setId(null);
PerformRulesCategoryEntity categoryEntity = performRulesCategoryService.get(item.getCategoryId());
if(categoryEntity!=null){
item.setCategoryName(categoryEntity.getName());
}
}
performStaffConfDetailService.save(entity.getStaffConfDetail(),context);
}
}
@Override
protected void updateBefore(PerformStaffConfEntity entity, Context context) throws AppException {
super.updateBefore(entity,context);
if(StringUtils.isNotEmpty(entity.getStaffIds())){
List<Long> staffIdList = StringUtils.converStr2Long(entity.getStaffIds());
StaffQuery staffQuery = new StaffQuery();
staffQuery.setIdList(staffIdList);
List<StaffEntity> staffEntityList = staffService.find(staffQuery);
if(CollectionUtils.isNotEmpty(staffEntityList)){
String names = "";
for (StaffEntity item:staffEntityList){
names+=item.getName()+",";
}
entity.setStaffNames(names.substring(0,names.length()-1));
entity.setStaffCount(staffEntityList.size());
}else {
entity.setStaffCount(0);
}
}
}
@Override
protected void updateAfter(PerformStaffConfEntity entity, Context context) throws AppException {
if(CollectionUtils.isNotEmpty(entity.getStaffConfDetail())){
Long[] detailIds = performStaffConfDetailService.find(new PerformStaffConfDetailQuery().staffConfId(entity.getId())).stream().map(PerformStaffConfDetailEntity::getId).toArray(Long[]::new);
performStaffConfDetailService.remove(detailIds,context);
for(PerformStaffConfDetailEntity item:entity.getStaffConfDetail()){
item.setStaffConfId(entity.getId());
item.setCreateTime(entity.getCreateTime());
item.setCreateUser(entity.getCreateUser());
item.setId(null);
PerformRulesCategoryEntity categoryEntity = performRulesCategoryService.get(item.getCategoryId());
if(categoryEntity!=null){
item.setCategoryName(categoryEntity.getName());
}
}
performStaffConfDetailService.save(entity.getStaffConfDetail(),context);
}
}
@Override
protected void findAfter(PerformStaffConfEntity params, PageInfo pageInfo, Context context, List<PerformStaffConfEntity> list) throws AppException {
if(CollectionUtils.isNotEmpty(list)){
for (PerformStaffConfEntity item:list){
List<PerformStaffConfDetailEntity> detailEntityList = performStaffConfDetailService.find(new PerformStaffConfDetailQuery().staffConfId(item.getId()));
item.setStaffConfDetail(detailEntityList);
}
}
}
@Override
public PerformStaffConfEntity get(Long key, Context context) throws AppException {
PerformStaffConfEntity entity = this.dao.get(key);
if(entity!=null) {
List<PerformStaffConfDetailEntity> detailEntityList = performStaffConfDetailService.find(new PerformStaffConfDetailQuery().staffConfId(entity.getId()));
entity.setStaffConfDetail(detailEntityList);
}
return entity;
}
@Override
protected void removeAfter(Long[] ids, Context context, int result) throws AppException {
if(ids != null && ids.length != 0){
for (Long id:ids){
PerformStaffConfDetailEntity condition = new PerformStaffConfDetailEntity();
condition.setStaffConfId(id);
performStaffConfDetailService.remove(condition,context);
}
}
}
} }
\ No newline at end of file
...@@ -27,7 +27,7 @@ import static com.mortals.framework.ap.SysConstains.*; ...@@ -27,7 +27,7 @@ import static com.mortals.framework.ap.SysConstains.*;
* 绩效记录申诉信息 * 绩效记录申诉信息
* *
* @author zxfei * @author zxfei
* @date 2023-07-05 * @date 2023-07-12
*/ */
@RestController @RestController
@RequestMapping("perform/attend/appeal") @RequestMapping("perform/attend/appeal")
...@@ -46,6 +46,10 @@ public class PerformAttendAppealController extends BaseCRUDJsonBodyMappingContro ...@@ -46,6 +46,10 @@ public class PerformAttendAppealController extends BaseCRUDJsonBodyMappingContro
this.addDict(model, "subAddType", paramService.getParamBySecondOrganize("PerformAttendAppeal","subAddType")); this.addDict(model, "subAddType", paramService.getParamBySecondOrganize("PerformAttendAppeal","subAddType"));
this.addDict(model, "processStatus", paramService.getParamBySecondOrganize("PerformAttendAppeal","processStatus")); this.addDict(model, "processStatus", paramService.getParamBySecondOrganize("PerformAttendAppeal","processStatus"));
this.addDict(model, "appealResult", paramService.getParamBySecondOrganize("PerformAttendAppeal","appealResult")); this.addDict(model, "appealResult", paramService.getParamBySecondOrganize("PerformAttendAppeal","appealResult"));
this.addDict(model, "reviewResult", paramService.getParamBySecondOrganize("PerformAttendAppeal","reviewResult"));
this.addDict(model, "reviewSource", paramService.getParamBySecondOrganize("PerformAttendAppeal","reviewSource"));
this.addDict(model, "irregularType", paramService.getParamBySecondOrganize("PerformAttendAppeal","irregularType"));
this.addDict(model, "irregularOtherType", paramService.getParamBySecondOrganize("PerformAttendAppeal","irregularOtherType"));
super.init(model, context); super.init(model, context);
} }
......
package com.mortals.xhx.module.perform.web; package com.mortals.xhx.module.perform.web;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService; import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.common.code.CheckTypeEnum;
import com.mortals.xhx.common.code.EnableEnum;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
...@@ -42,6 +44,8 @@ public class PerformDeptConfController extends BaseCRUDJsonBodyMappingController ...@@ -42,6 +44,8 @@ public class PerformDeptConfController extends BaseCRUDJsonBodyMappingController
@Override @Override
protected void init(Map<String, Object> model, Context context) { protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "type", CheckTypeEnum.getEnumMap());
this.addDict(model, "enable", EnableEnum.getEnumMap());
super.init(model, context); super.init(model, context);
} }
......
package com.mortals.xhx.module.perform.web; package com.mortals.xhx.module.perform.web;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService; import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.common.code.CheckTypeEnum;
import com.mortals.xhx.common.code.EnableEnum;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
...@@ -42,10 +44,40 @@ public class PerformDeptConfDetailController extends BaseCRUDJsonBodyMappingCont ...@@ -42,10 +44,40 @@ public class PerformDeptConfDetailController extends BaseCRUDJsonBodyMappingCont
@Override @Override
protected void init(Map<String, Object> model, Context context) { protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "type", paramService.getParamBySecondOrganize("PerformDeptConfDetail","type")); this.addDict(model, "type", CheckTypeEnum.getEnumMap());
this.addDict(model, "enable", paramService.getParamBySecondOrganize("PerformDeptConfDetail","enable")); this.addDict(model, "enable", EnableEnum.getEnumMap());
super.init(model, context); super.init(model, context);
} }
/**
* 启用停用
* @param id
* @return
*/
@RequestMapping(value = {"enable"},method = {RequestMethod.POST, RequestMethod.GET})
public String enable(Long id) {
Context context = this.getContext();
if (id == null) {
return this.createFailJsonResp("请至少选择一条记录");
} else {
Map<String, Object> model = new HashMap();
int code = 1;
String busiDesc = "启用/停用" + this.getModuleDesc();
try {
int iRet = this.service.enable(id, context);
model.put("message_info", this.getModuleDesc() + "启用/停用成功!");
this.recordSysLog(this.request, busiDesc + " 【成功】 [id:" + id + "]");
} catch (Exception var7) {
code = -1;
this.doException(this.request, busiDesc, model, var7);
}
JSONObject ret = new JSONObject();
ret.put("code", Integer.valueOf(code));
ret.put("msg", model.remove("message_info"));
ret.put("data", model);
return ret.toJSONString();
}
}
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.web; package com.mortals.xhx.module.perform.web;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.OrderCol;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService; import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.base.system.user.model.UserQuery;
import com.mortals.xhx.base.system.user.service.UserService;
import com.mortals.xhx.common.code.AssessmentScopeEnum;
import com.mortals.xhx.module.perform.model.*;
import com.mortals.xhx.module.perform.service.PerformPerposeDeptService;
import com.mortals.xhx.module.perform.service.PerformPerposeStaffService;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.perform.model.PerformPerposeEntity;
import com.mortals.xhx.module.perform.service.PerformPerposeService; import com.mortals.xhx.module.perform.service.PerformPerposeService;
import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils; import com.mortals.framework.util.StringUtils;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import java.util.Arrays; import java.util.Arrays;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*; import static com.mortals.framework.ap.SysConstains.*;
/** /**
* * 考核目标
* 考核目标 *
* * @author zxfei
* @author zxfei * @date 2023-05-16
* @date 2023-05-16 */
*/
@RestController @RestController
@RequestMapping("perform/perpose") @RequestMapping("perform/perpose")
public class PerformPerposeController extends BaseCRUDJsonBodyMappingController<PerformPerposeService,PerformPerposeEntity,Long> { public class PerformPerposeController extends BaseCRUDJsonBodyMappingController<PerformPerposeService, PerformPerposeEntity, Long> {
@Autowired @Autowired
private ParamService paramService; private ParamService paramService;
@Autowired
private UserService userService;
public PerformPerposeController(){ @Autowired
super.setModuleDesc( "考核目标"); private PerformPerposeStaffService perposeStaffService;
@Autowired
private PerformPerposeDeptService perposeDeptService;
public PerformPerposeController() {
super.setModuleDesc("考核目标");
} }
@Override @Override
protected void init(Map<String, Object> model, Context context) { protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "assessmentType", paramService.getParamBySecondOrganize("PerformPerpose","assessmentType")); this.addDict(model, "assessmentType", paramService.getParamBySecondOrganize("PerformPerpose", "assessmentType"));
this.addDict(model, "assessmentScope", paramService.getParamBySecondOrganize("PerformPerpose","assessmentScope")); this.addDict(model, "assessmentScope", paramService.getParamBySecondOrganize("PerformPerpose", "assessmentScope"));
this.addDict(model, "compareScope", paramService.getParamBySecondOrganize("PerformPerpose","compareScope")); this.addDict(model, "compareScope", paramService.getParamBySecondOrganize("PerformPerpose", "compareScope"));
this.addDict(model, "periodType", paramService.getParamBySecondOrganize("PerformPerpose","periodType")); this.addDict(model, "periodType", paramService.getParamBySecondOrganize("PerformPerpose", "periodType"));
this.addDict(model, "month", paramService.getParamBySecondOrganize("PerformPerpose","month")); this.addDict(model, "month", paramService.getParamBySecondOrganize("PerformPerpose", "month"));
this.addDict(model, "halfYear", paramService.getParamBySecondOrganize("PerformPerpose","halfYear")); this.addDict(model, "halfYear", paramService.getParamBySecondOrganize("PerformPerpose", "halfYear"));
this.addDict(model, "halfYear", paramService.getParamBySecondOrganize("PerformPerpose","halfYear")); this.addDict(model, "halfYear", paramService.getParamBySecondOrganize("PerformPerpose", "halfYear"));
this.addDict(model, "quarter", paramService.getParamBySecondOrganize("PerformPerpose","quarter")); this.addDict(model, "quarter", paramService.getParamBySecondOrganize("PerformPerpose", "quarter"));
Map<String, String> collect = userService.find(new UserQuery(), getContext()).stream()
.collect(Collectors.toMap(x -> x.getId().toString(), y -> y.getRealName(), (o, n) -> n));
this.addDict(model, "updateUserId", collect);
super.init(model, context); super.init(model, context);
} }
@Override
protected void doListBefore(PerformPerposeEntity query, Map<String, Object> model, Context context) throws AppException {
super.doListBefore(query, model, context);
if (ObjectUtils.isEmpty(query.getOrderColList())) {
query.setOrderColList(Arrays.asList(new OrderCol("createTime", OrderCol.DESCENDING)));
} else {
query.getOrderColList().add(new OrderCol("createTime", OrderCol.DESCENDING));
}
}
@Override
protected int editAfter(Long id, Map<String, Object> model, PerformPerposeEntity entity, Context context) throws AppException {
if (AssessmentScopeEnum.个人.getValue() == entity.getAssessmentScope()) {
List<PerformPerposeStaffEntity> staffEntities = perposeStaffService.find(new PerformPerposeStaffQuery().purposeConfId(entity.getId()));
entity.setPerposeStaffList(staffEntities);
} else if (AssessmentScopeEnum.部门.getValue() == entity.getAssessmentScope()) {
List<PerformPerposeDeptEntity> deptEntities = perposeDeptService.find(new PerformPerposeDeptQuery().purposeConfId(entity.getId()));
entity.setPerposeDeptList(deptEntities);
}
return super.editAfter(id, model, entity, context);
}
} }
\ No newline at end of file
package com.mortals.xhx.module.perform.web; package com.mortals.xhx.module.perform.web;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService; import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.common.code.CheckTypeEnum;
import com.mortals.xhx.common.code.EnableEnum;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
...@@ -42,6 +44,8 @@ public class PerformStaffConfController extends BaseCRUDJsonBodyMappingControlle ...@@ -42,6 +44,8 @@ public class PerformStaffConfController extends BaseCRUDJsonBodyMappingControlle
@Override @Override
protected void init(Map<String, Object> model, Context context) { protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "type", CheckTypeEnum.getEnumMap());
this.addDict(model, "enable", EnableEnum.getEnumMap());
super.init(model, context); super.init(model, context);
} }
......
package com.mortals.xhx.module.perform.web; package com.mortals.xhx.module.perform.web;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService; import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.common.code.CheckTypeEnum;
import com.mortals.xhx.common.code.EnableEnum;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
...@@ -42,10 +44,40 @@ public class PerformStaffConfDetailController extends BaseCRUDJsonBodyMappingCon ...@@ -42,10 +44,40 @@ public class PerformStaffConfDetailController extends BaseCRUDJsonBodyMappingCon
@Override @Override
protected void init(Map<String, Object> model, Context context) { protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "type", paramService.getParamBySecondOrganize("PerformStaffConfDetail","type")); this.addDict(model, "type", CheckTypeEnum.getEnumMap());
this.addDict(model, "enable", paramService.getParamBySecondOrganize("PerformStaffConfDetail","enable")); this.addDict(model, "enable", EnableEnum.getEnumMap());
super.init(model, context); super.init(model, context);
} }
/**
* 启用停用
* @param id
* @return
*/
@RequestMapping(value = {"enable"},method = {RequestMethod.POST, RequestMethod.GET})
public String enable(Long id) {
Context context = this.getContext();
if (id == null) {
return this.createFailJsonResp("请至少选择一条记录");
} else {
Map<String, Object> model = new HashMap();
int code = 1;
String busiDesc = "启用/停用" + this.getModuleDesc();
try {
int iRet = this.service.enable(id, context);
model.put("message_info", this.getModuleDesc() + "启用/停用成功!");
this.recordSysLog(this.request, busiDesc + " 【成功】 [id:" + id + "]");
} catch (Exception var7) {
code = -1;
this.doException(this.request, busiDesc, model, var7);
}
JSONObject ret = new JSONObject();
ret.put("code", Integer.valueOf(code));
ret.put("msg", model.remove("message_info"));
ret.put("data", model);
return ret.toJSONString();
}
}
} }
\ No newline at end of file
...@@ -9,10 +9,7 @@ import com.mortals.xhx.base.system.role.model.RoleUserQuery; ...@@ -9,10 +9,7 @@ import com.mortals.xhx.base.system.role.model.RoleUserQuery;
import com.mortals.xhx.base.system.role.service.RoleUserService; import com.mortals.xhx.base.system.role.service.RoleUserService;
import com.mortals.xhx.base.system.user.model.UserEntity; import com.mortals.xhx.base.system.user.model.UserEntity;
import com.mortals.xhx.base.system.user.service.UserService; import com.mortals.xhx.base.system.user.service.UserService;
import com.mortals.xhx.common.code.StaffSatusEnum; import com.mortals.xhx.common.code.*;
import com.mortals.xhx.common.code.StaffTypeEnum;
import com.mortals.xhx.common.code.StatusEnum;
import com.mortals.xhx.common.code.UserStatus;
import com.mortals.xhx.module.staff.dao.StaffDao; import com.mortals.xhx.module.staff.dao.StaffDao;
import com.mortals.xhx.module.staff.dao.ibatis.StaffDaoImpl; import com.mortals.xhx.module.staff.dao.ibatis.StaffDaoImpl;
import com.mortals.xhx.module.staff.dao.ibatis.StaffLeaveDaoImpl; import com.mortals.xhx.module.staff.dao.ibatis.StaffLeaveDaoImpl;
...@@ -103,7 +100,7 @@ public class StaffServiceImpl extends AbstractCRUDCacheServiceImpl<StaffDao, Sta ...@@ -103,7 +100,7 @@ public class StaffServiceImpl extends AbstractCRUDCacheServiceImpl<StaffDao, Sta
userEntity.setLoginName(StrUtil.cleanBlank(entity.getLoginName())); userEntity.setLoginName(StrUtil.cleanBlank(entity.getLoginName()));
userEntity.setRealName(entity.getName()); userEntity.setRealName(entity.getName());
userEntity.setUserType(2); userEntity.setUserType(UserType.WORK_PERSON.getValue());
userEntity.setSiteIds("1"); userEntity.setSiteIds("1");
userEntity.setAreaCodes("511500000000"); userEntity.setAreaCodes("511500000000");
userEntity.setStatus(UserStatus.NORMAL.getValue()); userEntity.setStatus(UserStatus.NORMAL.getValue());
......
package com.mortals.xhx.module.staff.web; package com.mortals.xhx.module.staff.web;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService; import com.mortals.xhx.base.system.param.service.ParamService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -46,5 +47,8 @@ public class StaffPerformSummaryController extends BaseCRUDJsonBodyMappingContro ...@@ -46,5 +47,8 @@ public class StaffPerformSummaryController extends BaseCRUDJsonBodyMappingContro
super.init(model, context); super.init(model, context);
} }
@Override
protected void doListBefore(StaffPerformSummaryEntity query, Map<String, Object> model, Context context) throws AppException {
}
} }
...@@ -8,7 +8,7 @@ import java.util.List; ...@@ -8,7 +8,7 @@ import java.util.List;
* 窗口负责人 DAO接口 * 窗口负责人 DAO接口
* *
* @author zxfei * @author zxfei
* @date 2023-05-16 * @date 2023-07-12
*/ */
public interface WindowOwnerDao extends ICRUDDao<WindowOwnerEntity,Long>{ public interface WindowOwnerDao extends ICRUDDao<WindowOwnerEntity,Long>{
......
package com.mortals.xhx.module.window.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.xhx.module.window.model.WindowOwnerDetailEntity;
import java.util.List;
/**
* 窗口负责人详细Dao
* 窗口负责人详细 DAO接口
*
* @author zxfei
* @date 2023-07-12
*/
public interface WindowOwnerDetailDao extends ICRUDDao<WindowOwnerDetailEntity,Long>{
}
...@@ -11,7 +11,7 @@ import java.util.List; ...@@ -11,7 +11,7 @@ import java.util.List;
* 窗口负责人DaoImpl DAO接口 * 窗口负责人DaoImpl DAO接口
* *
* @author zxfei * @author zxfei
* @date 2023-05-16 * @date 2023-07-12
*/ */
@Repository("windowOwnerDao") @Repository("windowOwnerDao")
public class WindowOwnerDaoImpl extends BaseCRUDDaoMybatis<WindowOwnerEntity,Long> implements WindowOwnerDao { public class WindowOwnerDaoImpl extends BaseCRUDDaoMybatis<WindowOwnerEntity,Long> implements WindowOwnerDao {
......
package com.mortals.xhx.module.window.dao.ibatis;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.window.dao.WindowOwnerDetailDao;
import com.mortals.xhx.module.window.model.WindowOwnerDetailEntity;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
/**
* 窗口负责人详细DaoImpl DAO接口
*
* @author zxfei
* @date 2023-07-12
*/
@Repository("windowOwnerDetailDao")
public class WindowOwnerDetailDaoImpl extends BaseCRUDDaoMybatis<WindowOwnerDetailEntity,Long> implements WindowOwnerDetailDao {
}
package com.mortals.xhx.module.window.model;
import java.util.List;
import java.util.ArrayList;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.window.model.vo.WindowOwnerDetailVo;
import lombok.Data;
/**
* 窗口负责人详细实体对象
*
* @author zxfei
* @date 2023-07-12
*/
@Data
public class WindowOwnerDetailEntity extends WindowOwnerDetailVo {
private static final long serialVersionUID = 1L;
/**
* 负责人Id
*/
private Long ownerId;
/**
* 员工id号
*/
private Long staffId;
/**
* 备注
*/
private String remark;
@Override
public int hashCode() {
return this.getId().hashCode();
}
@Override
public boolean equals(Object obj) {
if (obj == null) return false;
if (obj instanceof WindowOwnerDetailEntity) {
WindowOwnerDetailEntity tmp = (WindowOwnerDetailEntity) obj;
if (this.getId() == tmp.getId()) {
return true;
}
}
return false;
}
public void initAttrValue(){
this.ownerId = 0L;
this.staffId = 0L;
this.remark = "";
}
}
\ No newline at end of file
package com.mortals.xhx.module.window.model;
import java.util.List;
import com.mortals.xhx.module.window.model.WindowOwnerDetailEntity;
/**
* 窗口负责人详细查询对象
*
* @author zxfei
* @date 2023-07-12
*/
public class WindowOwnerDetailQuery extends WindowOwnerDetailEntity {
/** 开始 序号,主键,自增长 */
private Long idStart;
/** 结束 序号,主键,自增长 */
private Long idEnd;
/** 增加 序号,主键,自增长 */
private Long idIncrement;
/** 序号,主键,自增长列表 */
private List <Long> idList;
/** 序号,主键,自增长排除列表 */
private List <Long> idNotList;
/** 开始 负责人Id */
private Long ownerIdStart;
/** 结束 负责人Id */
private Long ownerIdEnd;
/** 增加 负责人Id */
private Long ownerIdIncrement;
/** 负责人Id列表 */
private List <Long> ownerIdList;
/** 负责人Id排除列表 */
private List <Long> ownerIdNotList;
/** 开始 员工id号 */
private Long staffIdStart;
/** 结束 员工id号 */
private Long staffIdEnd;
/** 增加 员工id号 */
private Long staffIdIncrement;
/** 员工id号列表 */
private List <Long> staffIdList;
/** 员工id号排除列表 */
private List <Long> staffIdNotList;
/** 备注 */
private List<String> remarkList;
/** 备注排除列表 */
private List <String> remarkNotList;
/** 开始 创建时间 */
private String createTimeStart;
/** 结束 创建时间 */
private String createTimeEnd;
/** 开始 创建用户 */
private Long createUserIdStart;
/** 结束 创建用户 */
private Long createUserIdEnd;
/** 增加 创建用户 */
private Long createUserIdIncrement;
/** 创建用户列表 */
private List <Long> createUserIdList;
/** 创建用户排除列表 */
private List <Long> createUserIdNotList;
/** 开始 更新用户 */
private Long updateUserIdStart;
/** 结束 更新用户 */
private Long updateUserIdEnd;
/** 增加 更新用户 */
private Long updateUserIdIncrement;
/** 更新用户列表 */
private List <Long> updateUserIdList;
/** 更新用户排除列表 */
private List <Long> updateUserIdNotList;
/** 开始 修改时间 */
private String updateTimeStart;
/** 结束 修改时间 */
private String updateTimeEnd;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private List<WindowOwnerDetailQuery> orConditionList;
/** AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4) */
private List<WindowOwnerDetailQuery> andConditionList;
public WindowOwnerDetailQuery(){}
/**
* 获取 开始 序号,主键,自增长
* @return idStart
*/
public Long getIdStart(){
return this.idStart;
}
/**
* 设置 开始 序号,主键,自增长
* @param idStart
*/
public void setIdStart(Long idStart){
this.idStart = idStart;
}
/**
* 获取 结束 序号,主键,自增长
* @return $idEnd
*/
public Long getIdEnd(){
return this.idEnd;
}
/**
* 设置 结束 序号,主键,自增长
* @param idEnd
*/
public void setIdEnd(Long idEnd){
this.idEnd = idEnd;
}
/**
* 获取 增加 序号,主键,自增长
* @return idIncrement
*/
public Long getIdIncrement(){
return this.idIncrement;
}
/**
* 设置 增加 序号,主键,自增长
* @param idIncrement
*/
public void setIdIncrement(Long idIncrement){
this.idIncrement = idIncrement;
}
/**
* 获取 序号,主键,自增长
* @return idList
*/
public List<Long> getIdList(){
return this.idList;
}
/**
* 设置 序号,主键,自增长
* @param idList
*/
public void setIdList(List<Long> idList){
this.idList = idList;
}
/**
* 获取 序号,主键,自增长
* @return idNotList
*/
public List<Long> getIdNotList(){
return this.idNotList;
}
/**
* 设置 序号,主键,自增长
* @param idNotList
*/
public void setIdNotList(List<Long> idNotList){
this.idNotList = idNotList;
}
/**
* 获取 开始 负责人Id
* @return ownerIdStart
*/
public Long getOwnerIdStart(){
return this.ownerIdStart;
}
/**
* 设置 开始 负责人Id
* @param ownerIdStart
*/
public void setOwnerIdStart(Long ownerIdStart){
this.ownerIdStart = ownerIdStart;
}
/**
* 获取 结束 负责人Id
* @return $ownerIdEnd
*/
public Long getOwnerIdEnd(){
return this.ownerIdEnd;
}
/**
* 设置 结束 负责人Id
* @param ownerIdEnd
*/
public void setOwnerIdEnd(Long ownerIdEnd){
this.ownerIdEnd = ownerIdEnd;
}
/**
* 获取 增加 负责人Id
* @return ownerIdIncrement
*/
public Long getOwnerIdIncrement(){
return this.ownerIdIncrement;
}
/**
* 设置 增加 负责人Id
* @param ownerIdIncrement
*/
public void setOwnerIdIncrement(Long ownerIdIncrement){
this.ownerIdIncrement = ownerIdIncrement;
}
/**
* 获取 负责人Id
* @return ownerIdList
*/
public List<Long> getOwnerIdList(){
return this.ownerIdList;
}
/**
* 设置 负责人Id
* @param ownerIdList
*/
public void setOwnerIdList(List<Long> ownerIdList){
this.ownerIdList = ownerIdList;
}
/**
* 获取 负责人Id
* @return ownerIdNotList
*/
public List<Long> getOwnerIdNotList(){
return this.ownerIdNotList;
}
/**
* 设置 负责人Id
* @param ownerIdNotList
*/
public void setOwnerIdNotList(List<Long> ownerIdNotList){
this.ownerIdNotList = ownerIdNotList;
}
/**
* 获取 开始 员工id号
* @return staffIdStart
*/
public Long getStaffIdStart(){
return this.staffIdStart;
}
/**
* 设置 开始 员工id号
* @param staffIdStart
*/
public void setStaffIdStart(Long staffIdStart){
this.staffIdStart = staffIdStart;
}
/**
* 获取 结束 员工id号
* @return $staffIdEnd
*/
public Long getStaffIdEnd(){
return this.staffIdEnd;
}
/**
* 设置 结束 员工id号
* @param staffIdEnd
*/
public void setStaffIdEnd(Long staffIdEnd){
this.staffIdEnd = staffIdEnd;
}
/**
* 获取 增加 员工id号
* @return staffIdIncrement
*/
public Long getStaffIdIncrement(){
return this.staffIdIncrement;
}
/**
* 设置 增加 员工id号
* @param staffIdIncrement
*/
public void setStaffIdIncrement(Long staffIdIncrement){
this.staffIdIncrement = staffIdIncrement;
}
/**
* 获取 员工id号
* @return staffIdList
*/
public List<Long> getStaffIdList(){
return this.staffIdList;
}
/**
* 设置 员工id号
* @param staffIdList
*/
public void setStaffIdList(List<Long> staffIdList){
this.staffIdList = staffIdList;
}
/**
* 获取 员工id号
* @return staffIdNotList
*/
public List<Long> getStaffIdNotList(){
return this.staffIdNotList;
}
/**
* 设置 员工id号
* @param staffIdNotList
*/
public void setStaffIdNotList(List<Long> staffIdNotList){
this.staffIdNotList = staffIdNotList;
}
/**
* 获取 备注
* @return remarkList
*/
public List<String> getRemarkList(){
return this.remarkList;
}
/**
* 设置 备注
* @param remarkList
*/
public void setRemarkList(List<String> remarkList){
this.remarkList = remarkList;
}
/**
* 获取 备注
* @return remarkNotList
*/
public List<String> getRemarkNotList(){
return this.remarkNotList;
}
/**
* 设置 备注
* @param remarkNotList
*/
public void setRemarkNotList(List<String> remarkNotList){
this.remarkNotList = remarkNotList;
}
/**
* 获取 开始 创建时间
* @return createTimeStart
*/
public String getCreateTimeStart(){
return this.createTimeStart;
}
/**
* 设置 开始 创建时间
* @param createTimeStart
*/
public void setCreateTimeStart(String createTimeStart){
this.createTimeStart = createTimeStart;
}
/**
* 获取 结束 创建时间
* @return createTimeEnd
*/
public String getCreateTimeEnd(){
return this.createTimeEnd;
}
/**
* 设置 结束 创建时间
* @param createTimeEnd
*/
public void setCreateTimeEnd(String createTimeEnd){
this.createTimeEnd = createTimeEnd;
}
/**
* 获取 开始 创建用户
* @return createUserIdStart
*/
public Long getCreateUserIdStart(){
return this.createUserIdStart;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public void setCreateUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
}
/**
* 获取 结束 创建用户
* @return $createUserIdEnd
*/
public Long getCreateUserIdEnd(){
return this.createUserIdEnd;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public void setCreateUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
}
/**
* 获取 增加 创建用户
* @return createUserIdIncrement
*/
public Long getCreateUserIdIncrement(){
return this.createUserIdIncrement;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public void setCreateUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
}
/**
* 获取 创建用户
* @return createUserIdList
*/
public List<Long> getCreateUserIdList(){
return this.createUserIdList;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public void setCreateUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
}
/**
* 获取 创建用户
* @return createUserIdNotList
*/
public List<Long> getCreateUserIdNotList(){
return this.createUserIdNotList;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public void setCreateUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
}
/**
* 获取 开始 更新用户
* @return updateUserIdStart
*/
public Long getUpdateUserIdStart(){
return this.updateUserIdStart;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public void setUpdateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
}
/**
* 获取 结束 更新用户
* @return $updateUserIdEnd
*/
public Long getUpdateUserIdEnd(){
return this.updateUserIdEnd;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
public void setUpdateUserIdEnd(Long updateUserIdEnd){
this.updateUserIdEnd = updateUserIdEnd;
}
/**
* 获取 增加 更新用户
* @return updateUserIdIncrement
*/
public Long getUpdateUserIdIncrement(){
return this.updateUserIdIncrement;
}
/**
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
public void setUpdateUserIdIncrement(Long updateUserIdIncrement){
this.updateUserIdIncrement = updateUserIdIncrement;
}
/**
* 获取 更新用户
* @return updateUserIdList
*/
public List<Long> getUpdateUserIdList(){
return this.updateUserIdList;
}
/**
* 设置 更新用户
* @param updateUserIdList
*/
public void setUpdateUserIdList(List<Long> updateUserIdList){
this.updateUserIdList = updateUserIdList;
}
/**
* 获取 更新用户
* @return updateUserIdNotList
*/
public List<Long> getUpdateUserIdNotList(){
return this.updateUserIdNotList;
}
/**
* 设置 更新用户
* @param updateUserIdNotList
*/
public void setUpdateUserIdNotList(List<Long> updateUserIdNotList){
this.updateUserIdNotList = updateUserIdNotList;
}
/**
* 获取 开始 修改时间
* @return updateTimeStart
*/
public String getUpdateTimeStart(){
return this.updateTimeStart;
}
/**
* 设置 开始 修改时间
* @param updateTimeStart
*/
public void setUpdateTimeStart(String updateTimeStart){
this.updateTimeStart = updateTimeStart;
}
/**
* 获取 结束 修改时间
* @return updateTimeEnd
*/
public String getUpdateTimeEnd(){
return this.updateTimeEnd;
}
/**
* 设置 结束 修改时间
* @param updateTimeEnd
*/
public void setUpdateTimeEnd(String updateTimeEnd){
this.updateTimeEnd = updateTimeEnd;
}
/**
* 设置 序号,主键,自增长
* @param id
*/
public WindowOwnerDetailQuery id(Long id){
setId(id);
return this;
}
/**
* 设置 开始 序号,主键,自增长
* @param idStart
*/
public WindowOwnerDetailQuery idStart(Long idStart){
this.idStart = idStart;
return this;
}
/**
* 设置 结束 序号,主键,自增长
* @param idEnd
*/
public WindowOwnerDetailQuery idEnd(Long idEnd){
this.idEnd = idEnd;
return this;
}
/**
* 设置 增加 序号,主键,自增长
* @param idIncrement
*/
public WindowOwnerDetailQuery idIncrement(Long idIncrement){
this.idIncrement = idIncrement;
return this;
}
/**
* 设置 序号,主键,自增长
* @param idList
*/
public WindowOwnerDetailQuery idList(List<Long> idList){
this.idList = idList;
return this;
}
/**
* 设置 序号,主键,自增长
* @param idNotList
*/
public WindowOwnerDetailQuery idNotList(List<Long> idNotList){
this.idNotList = idNotList;
return this;
}
/**
* 设置 负责人Id
* @param ownerId
*/
public WindowOwnerDetailQuery ownerId(Long ownerId){
setOwnerId(ownerId);
return this;
}
/**
* 设置 开始 负责人Id
* @param ownerIdStart
*/
public WindowOwnerDetailQuery ownerIdStart(Long ownerIdStart){
this.ownerIdStart = ownerIdStart;
return this;
}
/**
* 设置 结束 负责人Id
* @param ownerIdEnd
*/
public WindowOwnerDetailQuery ownerIdEnd(Long ownerIdEnd){
this.ownerIdEnd = ownerIdEnd;
return this;
}
/**
* 设置 增加 负责人Id
* @param ownerIdIncrement
*/
public WindowOwnerDetailQuery ownerIdIncrement(Long ownerIdIncrement){
this.ownerIdIncrement = ownerIdIncrement;
return this;
}
/**
* 设置 负责人Id
* @param ownerIdList
*/
public WindowOwnerDetailQuery ownerIdList(List<Long> ownerIdList){
this.ownerIdList = ownerIdList;
return this;
}
/**
* 设置 负责人Id
* @param ownerIdNotList
*/
public WindowOwnerDetailQuery ownerIdNotList(List<Long> ownerIdNotList){
this.ownerIdNotList = ownerIdNotList;
return this;
}
/**
* 设置 员工id号
* @param staffId
*/
public WindowOwnerDetailQuery staffId(Long staffId){
setStaffId(staffId);
return this;
}
/**
* 设置 开始 员工id号
* @param staffIdStart
*/
public WindowOwnerDetailQuery staffIdStart(Long staffIdStart){
this.staffIdStart = staffIdStart;
return this;
}
/**
* 设置 结束 员工id号
* @param staffIdEnd
*/
public WindowOwnerDetailQuery staffIdEnd(Long staffIdEnd){
this.staffIdEnd = staffIdEnd;
return this;
}
/**
* 设置 增加 员工id号
* @param staffIdIncrement
*/
public WindowOwnerDetailQuery staffIdIncrement(Long staffIdIncrement){
this.staffIdIncrement = staffIdIncrement;
return this;
}
/**
* 设置 员工id号
* @param staffIdList
*/
public WindowOwnerDetailQuery staffIdList(List<Long> staffIdList){
this.staffIdList = staffIdList;
return this;
}
/**
* 设置 员工id号
* @param staffIdNotList
*/
public WindowOwnerDetailQuery staffIdNotList(List<Long> staffIdNotList){
this.staffIdNotList = staffIdNotList;
return this;
}
/**
* 设置 备注
* @param remark
*/
public WindowOwnerDetailQuery remark(String remark){
setRemark(remark);
return this;
}
/**
* 设置 备注
* @param remarkList
*/
public WindowOwnerDetailQuery remarkList(List<String> remarkList){
this.remarkList = remarkList;
return this;
}
/**
* 设置 创建用户
* @param createUserId
*/
public WindowOwnerDetailQuery createUserId(Long createUserId){
setCreateUserId(createUserId);
return this;
}
/**
* 设置 开始 创建用户
* @param createUserIdStart
*/
public WindowOwnerDetailQuery createUserIdStart(Long createUserIdStart){
this.createUserIdStart = createUserIdStart;
return this;
}
/**
* 设置 结束 创建用户
* @param createUserIdEnd
*/
public WindowOwnerDetailQuery createUserIdEnd(Long createUserIdEnd){
this.createUserIdEnd = createUserIdEnd;
return this;
}
/**
* 设置 增加 创建用户
* @param createUserIdIncrement
*/
public WindowOwnerDetailQuery createUserIdIncrement(Long createUserIdIncrement){
this.createUserIdIncrement = createUserIdIncrement;
return this;
}
/**
* 设置 创建用户
* @param createUserIdList
*/
public WindowOwnerDetailQuery createUserIdList(List<Long> createUserIdList){
this.createUserIdList = createUserIdList;
return this;
}
/**
* 设置 创建用户
* @param createUserIdNotList
*/
public WindowOwnerDetailQuery createUserIdNotList(List<Long> createUserIdNotList){
this.createUserIdNotList = createUserIdNotList;
return this;
}
/**
* 设置 更新用户
* @param updateUserId
*/
public WindowOwnerDetailQuery updateUserId(Long updateUserId){
setUpdateUserId(updateUserId);
return this;
}
/**
* 设置 开始 更新用户
* @param updateUserIdStart
*/
public WindowOwnerDetailQuery updateUserIdStart(Long updateUserIdStart){
this.updateUserIdStart = updateUserIdStart;
return this;
}
/**
* 设置 结束 更新用户
* @param updateUserIdEnd
*/
public WindowOwnerDetailQuery updateUserIdEnd(Long updateUserIdEnd){
this.updateUserIdEnd = updateUserIdEnd;
return this;
}
/**
* 设置 增加 更新用户
* @param updateUserIdIncrement
*/
public WindowOwnerDetailQuery updateUserIdIncrement(Long updateUserIdIncrement){
this.updateUserIdIncrement = updateUserIdIncrement;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdList
*/
public WindowOwnerDetailQuery updateUserIdList(List<Long> updateUserIdList){
this.updateUserIdList = updateUserIdList;
return this;
}
/**
* 设置 更新用户
* @param updateUserIdNotList
*/
public WindowOwnerDetailQuery updateUserIdNotList(List<Long> updateUserIdNotList){
this.updateUserIdNotList = updateUserIdNotList;
return this;
}
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
*/
public List<WindowOwnerDetailQuery> getOrConditionList(){
return this.orConditionList;
}
/**
* 设置 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @param orConditionList
*/
public void setOrConditionList(List<WindowOwnerDetailQuery> orConditionList){
this.orConditionList = orConditionList;
}
/**
* 获取 AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
* @return andConditionList
*/
public List<WindowOwnerDetailQuery> getAndConditionList(){
return this.andConditionList;
}
/**
* 设置 AND条件集合,列表项之间是AND,项内容之间是OR,如:(list[0].1 or list[0].2) and (list[1].3 or list[1].4)
* @param andConditionList
*/
public void setAndConditionList(List<WindowOwnerDetailQuery> andConditionList){
this.andConditionList = andConditionList;
}
}
\ No newline at end of file
package com.mortals.xhx.module.window.model; package com.mortals.xhx.module.window.model;
import java.util.List; import java.util.List;
import java.util.List;
import java.util.ArrayList; import java.util.ArrayList;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel; import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong; import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.window.model.vo.WindowOwnerVo; import com.mortals.xhx.module.window.model.vo.WindowOwnerVo;
import com.mortals.xhx.module.window.model.WindowOwnerDetailEntity;
import lombok.Data; import lombok.Data;
/** /**
* 窗口负责人实体对象 * 窗口负责人实体对象
* *
* @author zxfei * @author zxfei
* @date 2023-05-16 * @date 2023-07-12
*/ */
@Data @Data
public class WindowOwnerEntity extends WindowOwnerVo { public class WindowOwnerEntity extends WindowOwnerVo {
...@@ -44,6 +46,17 @@ public class WindowOwnerEntity extends WindowOwnerVo { ...@@ -44,6 +46,17 @@ public class WindowOwnerEntity extends WindowOwnerVo {
* 备注 * 备注
*/ */
private String remark; private String remark;
/**
* 窗口负责人详细信息
*/
private List<WindowOwnerDetailEntity> windowOwnerDetailList=new ArrayList<>();;
public List<WindowOwnerDetailEntity> getWindowOwnerDetailList(){
return windowOwnerDetailList;
}
public void setWindowOwnerDetailList(List<WindowOwnerDetailEntity> windowOwnerDetailList){
this.windowOwnerDetailList = windowOwnerDetailList;
}
@Override @Override
public int hashCode() { public int hashCode() {
return this.getId().hashCode(); return this.getId().hashCode();
......
package com.mortals.xhx.module.window.model; package com.mortals.xhx.module.window.model;
import java.util.List;
import java.util.List; import java.util.List;
import com.mortals.xhx.module.window.model.WindowOwnerEntity; import com.mortals.xhx.module.window.model.WindowOwnerEntity;
/** /**
* 窗口负责人查询对象 * 窗口负责人查询对象
* *
* @author zxfei * @author zxfei
* @date 2023-05-16 * @date 2023-07-12
*/ */
public class WindowOwnerQuery extends WindowOwnerEntity { public class WindowOwnerQuery extends WindowOwnerEntity {
/** 开始 序号,主键,自增长 */ /** 开始 序号,主键,自增长 */
......
package com.mortals.xhx.module.window.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.window.model.WindowOwnerDetailEntity;
import java.util.ArrayList;
import java.util.List;
import lombok.Data;
import com.mortals.framework.annotation.Excel;
import java.math.BigDecimal;
import java.util.Date;
/**
* 窗口负责人详细视图对象
*
* @author zxfei
* @date 2023-07-12
*/
@Data
public class WindowOwnerDetailVo extends BaseEntityLong {
}
\ No newline at end of file
...@@ -4,15 +4,16 @@ import com.mortals.xhx.module.window.model.WindowOwnerEntity; ...@@ -4,15 +4,16 @@ import com.mortals.xhx.module.window.model.WindowOwnerEntity;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import lombok.Data; import lombok.Data;
import com.mortals.framework.annotation.Excel;
import java.math.BigDecimal;
import java.util.Date;
/** /**
* 窗口负责人视图对象 * 窗口负责人视图对象
* *
* @author zxfei * @author zxfei
* @date 2023-05-16 * @date 2023-07-12
*/ */
@Data @Data
public class WindowOwnerVo extends BaseEntityLong { public class WindowOwnerVo extends BaseEntityLong {
} }
\ No newline at end of file
package com.mortals.xhx.module.window.service;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.window.model.WindowOwnerDetailEntity;
import com.mortals.xhx.module.window.dao.WindowOwnerDetailDao;
/**
* WindowOwnerDetailService
*
* 窗口负责人详细 service接口
*
* @author zxfei
* @date 2023-07-12
*/
public interface WindowOwnerDetailService extends ICRUDService<WindowOwnerDetailEntity,Long>{
WindowOwnerDetailDao getDao();
}
\ No newline at end of file
...@@ -8,7 +8,7 @@ import com.mortals.xhx.module.window.dao.WindowOwnerDao; ...@@ -8,7 +8,7 @@ import com.mortals.xhx.module.window.dao.WindowOwnerDao;
* 窗口负责人 service接口 * 窗口负责人 service接口
* *
* @author zxfei * @author zxfei
* @date 2023-05-16 * @date 2023-07-12
*/ */
public interface WindowOwnerService extends ICRUDService<WindowOwnerEntity,Long>{ public interface WindowOwnerService extends ICRUDService<WindowOwnerEntity,Long>{
......
package com.mortals.xhx.module.window.service.impl;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.xhx.module.window.dao.WindowOwnerDetailDao;
import com.mortals.xhx.module.window.model.WindowOwnerDetailEntity;
import com.mortals.xhx.module.window.service.WindowOwnerDetailService;
import lombok.extern.slf4j.Slf4j;
/**
* WindowOwnerDetailService
* 窗口负责人详细 service实现
*
* @author zxfei
* @date 2023-07-12
*/
@Service("windowOwnerDetailService")
@Slf4j
public class WindowOwnerDetailServiceImpl extends AbstractCRUDServiceImpl<WindowOwnerDetailDao, WindowOwnerDetailEntity, Long> implements WindowOwnerDetailService {
}
\ No newline at end of file
package com.mortals.xhx.module.window.service.impl; package com.mortals.xhx.module.window.service.impl;
import com.mortals.xhx.module.dept.model.DeptEntity;
import com.mortals.xhx.module.dept.service.DeptService;
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;
...@@ -6,16 +8,69 @@ import com.mortals.framework.model.Context; ...@@ -6,16 +8,69 @@ import com.mortals.framework.model.Context;
import com.mortals.xhx.module.window.dao.WindowOwnerDao; import com.mortals.xhx.module.window.dao.WindowOwnerDao;
import com.mortals.xhx.module.window.model.WindowOwnerEntity; import com.mortals.xhx.module.window.model.WindowOwnerEntity;
import com.mortals.xhx.module.window.service.WindowOwnerService; import com.mortals.xhx.module.window.service.WindowOwnerService;
import org.springframework.beans.factory.annotation.Autowired;
import com.mortals.xhx.module.window.model.WindowOwnerDetailEntity;
import com.mortals.xhx.module.window.model.WindowOwnerDetailQuery;
import com.mortals.xhx.module.window.service.WindowOwnerDetailService;
import org.springframework.util.ObjectUtils;
import java.util.Date;
import java.util.Arrays;
import java.util.List;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
/** /**
* WindowOwnerService * WindowOwnerService
* 窗口负责人 service实现 * 窗口负责人 service实现
* *
* @author zxfei * @author zxfei
* @date 2023-05-16 * @date 2023-07-12
*/ */
@Service("windowOwnerService") @Service("windowOwnerService")
@Slf4j @Slf4j
public class WindowOwnerServiceImpl extends AbstractCRUDServiceImpl<WindowOwnerDao, WindowOwnerEntity, Long> implements WindowOwnerService { public class WindowOwnerServiceImpl extends AbstractCRUDServiceImpl<WindowOwnerDao, WindowOwnerEntity, Long> implements WindowOwnerService {
@Autowired
private WindowOwnerDetailService windowOwnerDetailService;
@Autowired
private DeptService deptService;
@Override
protected void saveAfter(WindowOwnerEntity entity, Context context) throws AppException {
if(!ObjectUtils.isEmpty(entity.getWindowOwnerDetailList())){
entity.getWindowOwnerDetailList().stream().peek(item->{
item.setOwnerId(entity.getId());
item.setCreateUserId(this.getContextUserId(context));
item.setCreateTime(new Date());
}).count();
DeptEntity deptEntity = deptService.get(entity.getId());
entity.setDeptName(deptEntity==null?"":deptEntity.getDeptName());
entity.setNumber(entity.getWindowOwnerDetailList().size()+"");
windowOwnerDetailService.save(entity.getWindowOwnerDetailList());
}
super.saveAfter(entity, context);
}
@Override
protected void updateAfter(WindowOwnerEntity entity, Context context) throws AppException {
if(!ObjectUtils.isEmpty(entity.getWindowOwnerDetailList())){
Long[] windowOwnerDetailIds = windowOwnerDetailService.find(new WindowOwnerDetailQuery().ownerId(entity.getId())).stream().map(WindowOwnerDetailEntity::getId).toArray(Long[]::new);
windowOwnerDetailService.remove(windowOwnerDetailIds,context);
entity.getWindowOwnerDetailList().stream().peek(item ->{
item.setOwnerId(entity.getId());
item.setCreateUserId(this.getContextUserId(context));
item.setCreateTime(new Date());
item.setUpdateUserId(this.getContextUserId(context));
item.setUpdateTime(new Date());
}).count();
entity.setNumber(entity.getWindowOwnerDetailList().size()+"");
windowOwnerDetailService.save(entity.getWindowOwnerDetailList());
}
super.updateAfter(entity, context);
}
@Override
protected void removeAfter(Long[] ids, Context context, int result) throws AppException {
List<WindowOwnerDetailEntity> windowOwnerDetaillist = windowOwnerDetailService.find(new WindowOwnerDetailQuery().ownerIdList(Arrays.asList(ids)));
windowOwnerDetailService.removeList(windowOwnerDetaillist,context);
super.removeAfter(ids, context, result);
}
} }
\ No newline at end of file
package com.mortals.xhx.module.window.web; package com.mortals.xhx.module.window.web;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService; import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.base.system.user.model.UserQuery;
import com.mortals.xhx.base.system.user.service.UserService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context; import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController; import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.window.model.WindowOwnerEntity; import com.mortals.xhx.module.window.model.WindowOwnerEntity;
import com.mortals.xhx.module.window.service.WindowOwnerService; import com.mortals.xhx.module.window.service.WindowOwnerService;
import org.apache.commons.lang3.ArrayUtils; import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils; import com.mortals.framework.util.StringUtils;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import java.util.Arrays; import java.util.Arrays;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*; import static com.mortals.framework.ap.SysConstains.*;
/** /**
* * 窗口负责人
* 窗口负责人 *
* * @author zxfei
* @author zxfei * @date 2023-07-12
* @date 2023-05-16 */
*/
@RestController @RestController
@RequestMapping("window/owner") @RequestMapping("window/owner")
public class WindowOwnerController extends BaseCRUDJsonBodyMappingController<WindowOwnerService,WindowOwnerEntity,Long> { public class WindowOwnerController extends BaseCRUDJsonBodyMappingController<WindowOwnerService, WindowOwnerEntity, Long> {
@Autowired @Autowired
private ParamService paramService; private ParamService paramService;
@Autowired
private UserService userService;
public WindowOwnerController(){ public WindowOwnerController() {
super.setModuleDesc( "窗口负责人"); super.setModuleDesc("窗口负责人");
} }
@Override @Override
protected void init(Map<String, Object> model, Context context) { protected void init(Map<String, Object> model, Context context) {
Map<String, String> collect = userService.find(new UserQuery(), getContext()).stream()
.collect(Collectors.toMap(x -> x.getId().toString(), y -> y.getRealName(), (o, n) -> n));
this.addDict(model, "updateUserId", collect);
super.init(model, context); super.init(model, context);
} }
......
package com.mortals.xhx.module.window.web;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.window.model.WindowOwnerDetailEntity;
import com.mortals.xhx.module.window.service.WindowOwnerDetailService;
import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import java.util.Arrays;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
/**
*
* 窗口负责人详细
*
* @author zxfei
* @date 2023-07-12
*/
@RestController
@RequestMapping("window/owner/detail")
public class WindowOwnerDetailController extends BaseCRUDJsonBodyMappingController<WindowOwnerDetailService,WindowOwnerDetailEntity,Long> {
@Autowired
private ParamService paramService;
public WindowOwnerDetailController(){
super.setModuleDesc( "窗口负责人详细");
}
@Override
protected void init(Map<String, Object> model, Context context) {
super.init(model, context);
}
}
\ No newline at end of file
<?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.CheckAttendRecordDaoImpl">
<!-- 汇总已审核的核查记录 -->
<select id="getSummaryCheckList" parameterType="com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery" resultType="com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo">
SELECT
staffId,staffName,workNum,deptId,deptName,
DATE_FORMAT(checkTime,'%Y') as `year`,
DATE_FORMAT(checkTime,'%m') as `month`,
SUM(CASE subAddType WHEN 1 THEN score ELSE score*-1 END) as sumScore
FROM
mortals_xhx_check_attend_record
WHERE checkStatus = 2
<if test="staffId != null and staffId!=''"> AND staffId = #{staffId} </if>
<if test="checkTimeStart != null and checkTimeStart!=''"> AND checkTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{checkTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s') </if>
<if test="checkTimeEnd != null and checkTimeEnd!=''"> AND checkTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{checkTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s') </if>
GROUP BY
staffId,staffName,workNum,deptId,deptName,DATE_FORMAT(checkTime,'%Y-%m')
</select>
</mapper>
\ No newline at end of file
<?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.CheckComplainRecordDaoImpl">
<!-- 汇总已审核的核查记录 -->
<select id="getSummaryCheckList" parameterType="com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery" resultType="com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo">
SELECT
staffId,staffName,workNum,deptId,deptName,
DATE_FORMAT(checkTime,'%Y') as `year`,
DATE_FORMAT(checkTime,'%m') as `month`,
SUM(CASE subAddType WHEN 1 THEN score ELSE score*-1 END) as sumScore
FROM
mortals_xhx_check_complain_record
WHERE checkStatus = 2
<if test="staffId != null and staffId!=''"> AND staffId = #{staffId} </if>
<if test="checkTimeStart != null and checkTimeStart!=''"> AND checkTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{checkTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s') </if>
<if test="checkTimeEnd != null and checkTimeEnd!=''"> AND checkTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{checkTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s') </if>
GROUP BY
staffId,staffName,workNum,deptId,deptName,DATE_FORMAT(checkTime,'%Y-%m')
</select>
</mapper>
\ No newline at end of file
<?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.CheckEffectRecordDaoImpl">
<!-- 汇总已审核的核查记录 -->
<select id="getSummaryCheckList" parameterType="com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery" resultType="com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo">
SELECT
staffId,staffName,workNum,deptId,deptName,
DATE_FORMAT(checkTime,'%Y') as `year`,
DATE_FORMAT(checkTime,'%m') as `month`,
SUM(CASE subAddType WHEN 1 THEN score ELSE score*-1 END) as sumScore
FROM
mortals_xhx_check_effect_record
WHERE checkStatus = 2
<if test="staffId != null and staffId!=''"> AND staffId = #{staffId} </if>
<if test="checkTimeStart != null and checkTimeStart!=''"> AND checkTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{checkTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s') </if>
<if test="checkTimeEnd != null and checkTimeEnd!=''"> AND checkTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{checkTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s') </if>
GROUP BY
staffId,staffName,workNum,deptId,deptName,DATE_FORMAT(checkTime,'%Y-%m')
</select>
</mapper>
\ No newline at end of file
<?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.CheckGoworkRecordDaoImpl">
<!-- 汇总已审核的核查记录 -->
<select id="getSummaryCheckList" parameterType="com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery" resultType="com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo">
SELECT
staffId,staffName,workNum,deptId,deptName,
DATE_FORMAT(checkTime,'%Y') as `year`,
DATE_FORMAT(checkTime,'%m') as `month`,
SUM(CASE subAddType WHEN 1 THEN score ELSE score*-1 END) as sumScore
FROM
mortals_xhx_check_gowork_record
WHERE checkStatus = 2
<if test="staffId != null and staffId!=''"> AND staffId = #{staffId} </if>
<if test="checkTimeStart != null and checkTimeStart!=''"> AND checkTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{checkTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s') </if>
<if test="checkTimeEnd != null and checkTimeEnd!=''"> AND checkTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{checkTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s') </if>
GROUP BY
staffId,staffName,workNum,deptId,deptName,DATE_FORMAT(checkTime,'%Y-%m')
</select>
</mapper>
\ No newline at end of file
<?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.CheckOtherRecordDaoImpl">
<!-- 汇总已审核的核查记录 -->
<select id="getSummaryCheckList" parameterType="com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery" resultType="com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo">
SELECT
staffId,staffName,workNum,deptId,deptName,
DATE_FORMAT(checkTime,'%Y') as `year`,
DATE_FORMAT(checkTime,'%m') as `month`,
SUM(CASE subAddType WHEN 1 THEN score ELSE score*-1 END) as sumScore
FROM
mortals_xhx_check_other_record
WHERE checkStatus = 2
<if test="staffId != null and staffId!=''"> AND staffId = #{staffId} </if>
<if test="checkTimeStart != null and checkTimeStart!=''"> AND checkTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{checkTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s') </if>
<if test="checkTimeEnd != null and checkTimeEnd!=''"> AND checkTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{checkTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s') </if>
GROUP BY
staffId,staffName,workNum,deptId,deptName,DATE_FORMAT(checkTime,'%Y-%m')
</select>
</mapper>
\ No newline at end of file
<?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.CheckReviewRecordDaoImpl">
<!-- 汇总已审核的核查记录 -->
<select id="getSummaryCheckList" parameterType="com.mortals.xhx.module.check.model.vo.StaffCheckSummaryQuery" resultType="com.mortals.xhx.module.check.model.vo.StaffCheckSummaryVo">
SELECT
staffId,staffName,workNum,deptId,deptName,
DATE_FORMAT(checkTime,'%Y') as `year`,
DATE_FORMAT(checkTime,'%m') as `month`,
SUM(CASE subAddType WHEN 1 THEN score ELSE score*-1 END) as sumScore
FROM
mortals_xhx_check_review_record
WHERE checkStatus = 2
<if test="staffId != null and staffId!=''"> AND staffId = #{staffId} </if>
<if test="checkTimeStart != null and checkTimeStart!=''"> AND checkTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{checkTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s') </if>
<if test="checkTimeEnd != null and checkTimeEnd!=''"> AND checkTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{checkTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s') </if>
GROUP BY
staffId,staffName,workNum,deptId,deptName,DATE_FORMAT(checkTime,'%Y-%m')
</select>
</mapper>
\ No newline at end of file
...@@ -38,6 +38,28 @@ ...@@ -38,6 +38,28 @@
<result property="updateUserId" column="updateUserId" /> <result property="updateUserId" column="updateUserId" />
<result property="updateTime" column="updateTime" /> <result property="updateTime" column="updateTime" />
<result property="violationType" column="violationType" /> <result property="violationType" column="violationType" />
<result property="reviewResult" column="reviewResult" />
<result property="reviewTime" column="reviewTime" />
<result property="reviewSource" column="reviewSource" />
<result property="reviewDevice" column="reviewDevice" />
<result property="complainTitle" column="complainTitle" />
<result property="complainContent" column="complainContent" />
<result property="complainRealName" column="complainRealName" />
<result property="contact" column="contact" />
<result property="complainTime" column="complainTime" />
<result property="complainSource" column="complainSource" />
<result property="complainDevice" column="complainDevice" />
<result property="goworkCode" column="goworkCode" />
<result property="goworkDepts" column="goworkDepts" />
<result property="matterlName" column="matterlName" />
<result property="goworkTime" column="goworkTime" />
<result property="irregularType" column="irregularType" />
<result property="happenTime" column="happenTime" />
<result property="duration" column="duration" />
<result property="alarmTime" column="alarmTime" />
<result property="snapPath" column="snapPath" />
<result property="irregularOtherType" column="irregularOtherType" />
<result property="performType" column="performType" />
<collection property="performAttendAppealFilesList" column="id" ofType="PerformAttendAppealFilesEntity" javaType="ArrayList" select="getPerformAttendAppealFilesByAppealId"></collection> <collection property="performAttendAppealFilesList" column="id" ofType="PerformAttendAppealFilesEntity" javaType="ArrayList" select="getPerformAttendAppealFilesByAppealId"></collection>
</resultMap> </resultMap>
<resultMap type="PerformAttendAppealFilesEntity" id="PerformAttendAppealFilesEntity-Map"> <resultMap type="PerformAttendAppealFilesEntity" id="PerformAttendAppealFilesEntity-Map">
...@@ -154,6 +176,72 @@ ...@@ -154,6 +176,72 @@
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('violationType') or colPickMode == 1 and data.containsKey('violationType')))"> <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('violationType') or colPickMode == 1 and data.containsKey('violationType')))">
a.violationType, a.violationType,
</if> </if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('reviewResult') or colPickMode == 1 and data.containsKey('reviewResult')))">
a.reviewResult,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('reviewTime') or colPickMode == 1 and data.containsKey('reviewTime')))">
a.reviewTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('reviewSource') or colPickMode == 1 and data.containsKey('reviewSource')))">
a.reviewSource,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('reviewDevice') or colPickMode == 1 and data.containsKey('reviewDevice')))">
a.reviewDevice,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('complainTitle') or colPickMode == 1 and data.containsKey('complainTitle')))">
a.complainTitle,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('complainContent') or colPickMode == 1 and data.containsKey('complainContent')))">
a.complainContent,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('complainRealName') or colPickMode == 1 and data.containsKey('complainRealName')))">
a.complainRealName,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('contact') or colPickMode == 1 and data.containsKey('contact')))">
a.contact,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('complainTime') or colPickMode == 1 and data.containsKey('complainTime')))">
a.complainTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('complainSource') or colPickMode == 1 and data.containsKey('complainSource')))">
a.complainSource,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('complainDevice') or colPickMode == 1 and data.containsKey('complainDevice')))">
a.complainDevice,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('goworkCode') or colPickMode == 1 and data.containsKey('goworkCode')))">
a.goworkCode,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('goworkDepts') or colPickMode == 1 and data.containsKey('goworkDepts')))">
a.goworkDepts,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('matterlName') or colPickMode == 1 and data.containsKey('matterlName')))">
a.matterlName,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('goworkTime') or colPickMode == 1 and data.containsKey('goworkTime')))">
a.goworkTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('irregularType') or colPickMode == 1 and data.containsKey('irregularType')))">
a.irregularType,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('happenTime') or colPickMode == 1 and data.containsKey('happenTime')))">
a.happenTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('duration') or colPickMode == 1 and data.containsKey('duration')))">
a.duration,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('alarmTime') or colPickMode == 1 and data.containsKey('alarmTime')))">
a.alarmTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('snapPath') or colPickMode == 1 and data.containsKey('snapPath')))">
a.snapPath,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('irregularOtherType') or colPickMode == 1 and data.containsKey('irregularOtherType')))">
a.irregularOtherType,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('performType') or colPickMode == 1 and data.containsKey('performType')))">
a.performType,
</if>
</trim> </trim>
</sql> </sql>
<!-- 子表所有列 --> <!-- 子表所有列 -->
...@@ -165,18 +253,18 @@ ...@@ -165,18 +253,18 @@
<!-- 新增 区分主键自增加还是业务插入 --> <!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="PerformAttendAppealEntity" useGeneratedKeys="true" keyProperty="id"> <insert id="insert" parameterType="PerformAttendAppealEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_perform_attend_appeal insert into mortals_xhx_perform_attend_appeal
(checkRecordId,staffId,staffName,workNum,deptId,deptName,attendanceGroupId,attendanceGroupName,attendanceDate,ruleId,ruleName,subMethod,subAddType,score,goOffTimeStr,errorTime,actualAttendTime,errorResult,checkPerson,checkTime,checkDesc,checkResult,processStatus,appealDesc,appealTime,appealResult,remark,createUserId,createTime,updateUserId,updateTime,violationType) (checkRecordId,staffId,staffName,workNum,deptId,deptName,attendanceGroupId,attendanceGroupName,attendanceDate,ruleId,ruleName,subMethod,subAddType,score,goOffTimeStr,errorTime,actualAttendTime,errorResult,checkPerson,checkTime,checkDesc,checkResult,processStatus,appealDesc,appealTime,appealResult,remark,createUserId,createTime,updateUserId,updateTime,violationType,reviewResult,reviewTime,reviewSource,reviewDevice,complainTitle,complainContent,complainRealName,contact,complainTime,complainSource,complainDevice,goworkCode,goworkDepts,matterlName,goworkTime,irregularType,happenTime,duration,alarmTime,snapPath,irregularOtherType,performType)
VALUES VALUES
(#{checkRecordId},#{staffId},#{staffName},#{workNum},#{deptId},#{deptName},#{attendanceGroupId},#{attendanceGroupName},#{attendanceDate},#{ruleId},#{ruleName},#{subMethod},#{subAddType},#{score},#{goOffTimeStr},#{errorTime},#{actualAttendTime},#{errorResult},#{checkPerson},#{checkTime},#{checkDesc},#{checkResult},#{processStatus},#{appealDesc},#{appealTime},#{appealResult},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{violationType}) (#{checkRecordId},#{staffId},#{staffName},#{workNum},#{deptId},#{deptName},#{attendanceGroupId},#{attendanceGroupName},#{attendanceDate},#{ruleId},#{ruleName},#{subMethod},#{subAddType},#{score},#{goOffTimeStr},#{errorTime},#{actualAttendTime},#{errorResult},#{checkPerson},#{checkTime},#{checkDesc},#{checkResult},#{processStatus},#{appealDesc},#{appealTime},#{appealResult},#{remark},#{createUserId},#{createTime},#{updateUserId},#{updateTime},#{violationType},#{reviewResult},#{reviewTime},#{reviewSource},#{reviewDevice},#{complainTitle},#{complainContent},#{complainRealName},#{contact},#{complainTime},#{complainSource},#{complainDevice},#{goworkCode},#{goworkDepts},#{matterlName},#{goworkTime},#{irregularType},#{happenTime},#{duration},#{alarmTime},#{snapPath},#{irregularOtherType},#{performType})
</insert> </insert>
<!-- 批量新增 --> <!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto"> <insert id="insertBatch" parameterType="paramDto">
insert into mortals_xhx_perform_attend_appeal insert into mortals_xhx_perform_attend_appeal
(checkRecordId,staffId,staffName,workNum,deptId,deptName,attendanceGroupId,attendanceGroupName,attendanceDate,ruleId,ruleName,subMethod,subAddType,score,goOffTimeStr,errorTime,actualAttendTime,errorResult,checkPerson,checkTime,checkDesc,checkResult,processStatus,appealDesc,appealTime,appealResult,remark,createUserId,createTime,updateUserId,updateTime,violationType) (checkRecordId,staffId,staffName,workNum,deptId,deptName,attendanceGroupId,attendanceGroupName,attendanceDate,ruleId,ruleName,subMethod,subAddType,score,goOffTimeStr,errorTime,actualAttendTime,errorResult,checkPerson,checkTime,checkDesc,checkResult,processStatus,appealDesc,appealTime,appealResult,remark,createUserId,createTime,updateUserId,updateTime,violationType,reviewResult,reviewTime,reviewSource,reviewDevice,complainTitle,complainContent,complainRealName,contact,complainTime,complainSource,complainDevice,goworkCode,goworkDepts,matterlName,goworkTime,irregularType,happenTime,duration,alarmTime,snapPath,irregularOtherType,performType)
VALUES VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," > <foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.checkRecordId},#{item.staffId},#{item.staffName},#{item.workNum},#{item.deptId},#{item.deptName},#{item.attendanceGroupId},#{item.attendanceGroupName},#{item.attendanceDate},#{item.ruleId},#{item.ruleName},#{item.subMethod},#{item.subAddType},#{item.score},#{item.goOffTimeStr},#{item.errorTime},#{item.actualAttendTime},#{item.errorResult},#{item.checkPerson},#{item.checkTime},#{item.checkDesc},#{item.checkResult},#{item.processStatus},#{item.appealDesc},#{item.appealTime},#{item.appealResult},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.violationType}) (#{item.checkRecordId},#{item.staffId},#{item.staffName},#{item.workNum},#{item.deptId},#{item.deptName},#{item.attendanceGroupId},#{item.attendanceGroupName},#{item.attendanceDate},#{item.ruleId},#{item.ruleName},#{item.subMethod},#{item.subAddType},#{item.score},#{item.goOffTimeStr},#{item.errorTime},#{item.actualAttendTime},#{item.errorResult},#{item.checkPerson},#{item.checkTime},#{item.checkDesc},#{item.checkResult},#{item.processStatus},#{item.appealDesc},#{item.appealTime},#{item.appealResult},#{item.remark},#{item.createUserId},#{item.createTime},#{item.updateUserId},#{item.updateTime},#{item.violationType},#{item.reviewResult},#{item.reviewTime},#{item.reviewSource},#{item.reviewDevice},#{item.complainTitle},#{item.complainContent},#{item.complainRealName},#{item.contact},#{item.complainTime},#{item.complainSource},#{item.complainDevice},#{item.goworkCode},#{item.goworkDepts},#{item.matterlName},#{item.goworkTime},#{item.irregularType},#{item.happenTime},#{item.duration},#{item.alarmTime},#{item.snapPath},#{item.irregularOtherType},#{item.performType})
</foreach> </foreach>
</insert> </insert>
...@@ -318,6 +406,84 @@ ...@@ -318,6 +406,84 @@
<if test="(colPickMode==0 and data.containsKey('violationType')) or (colPickMode==1 and !data.containsKey('violationType'))"> <if test="(colPickMode==0 and data.containsKey('violationType')) or (colPickMode==1 and !data.containsKey('violationType'))">
a.violationType=#{data.violationType}, a.violationType=#{data.violationType},
</if> </if>
<if test="(colPickMode==0 and data.containsKey('reviewResult')) or (colPickMode==1 and !data.containsKey('reviewResult'))">
a.reviewResult=#{data.reviewResult},
</if>
<if test="(colPickMode==0 and data.containsKey('reviewResultIncrement')) or (colPickMode==1 and !data.containsKey('reviewResultIncrement'))">
a.reviewResult=ifnull(a.reviewResult,0) + #{data.reviewResultIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('reviewTime')) or (colPickMode==1 and !data.containsKey('reviewTime'))">
a.reviewTime=#{data.reviewTime},
</if>
<if test="(colPickMode==0 and data.containsKey('reviewSource')) or (colPickMode==1 and !data.containsKey('reviewSource'))">
a.reviewSource=#{data.reviewSource},
</if>
<if test="(colPickMode==0 and data.containsKey('reviewDevice')) or (colPickMode==1 and !data.containsKey('reviewDevice'))">
a.reviewDevice=#{data.reviewDevice},
</if>
<if test="(colPickMode==0 and data.containsKey('complainTitle')) or (colPickMode==1 and !data.containsKey('complainTitle'))">
a.complainTitle=#{data.complainTitle},
</if>
<if test="(colPickMode==0 and data.containsKey('complainContent')) or (colPickMode==1 and !data.containsKey('complainContent'))">
a.complainContent=#{data.complainContent},
</if>
<if test="(colPickMode==0 and data.containsKey('complainRealName')) or (colPickMode==1 and !data.containsKey('complainRealName'))">
a.complainRealName=#{data.complainRealName},
</if>
<if test="(colPickMode==0 and data.containsKey('contact')) or (colPickMode==1 and !data.containsKey('contact'))">
a.contact=#{data.contact},
</if>
<if test="(colPickMode==0 and data.containsKey('complainTime')) or (colPickMode==1 and !data.containsKey('complainTime'))">
a.complainTime=#{data.complainTime},
</if>
<if test="(colPickMode==0 and data.containsKey('complainSource')) or (colPickMode==1 and !data.containsKey('complainSource'))">
a.complainSource=#{data.complainSource},
</if>
<if test="(colPickMode==0 and data.containsKey('complainDevice')) or (colPickMode==1 and !data.containsKey('complainDevice'))">
a.complainDevice=#{data.complainDevice},
</if>
<if test="(colPickMode==0 and data.containsKey('goworkCode')) or (colPickMode==1 and !data.containsKey('goworkCode'))">
a.goworkCode=#{data.goworkCode},
</if>
<if test="(colPickMode==0 and data.containsKey('goworkDepts')) or (colPickMode==1 and !data.containsKey('goworkDepts'))">
a.goworkDepts=#{data.goworkDepts},
</if>
<if test="(colPickMode==0 and data.containsKey('matterlName')) or (colPickMode==1 and !data.containsKey('matterlName'))">
a.matterlName=#{data.matterlName},
</if>
<if test="(colPickMode==0 and data.containsKey('goworkTime')) or (colPickMode==1 and !data.containsKey('goworkTime'))">
a.goworkTime=#{data.goworkTime},
</if>
<if test="(colPickMode==0 and data.containsKey('irregularType')) or (colPickMode==1 and !data.containsKey('irregularType'))">
a.irregularType=#{data.irregularType},
</if>
<if test="(colPickMode==0 and data.containsKey('irregularTypeIncrement')) or (colPickMode==1 and !data.containsKey('irregularTypeIncrement'))">
a.irregularType=ifnull(a.irregularType,0) + #{data.irregularTypeIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('happenTime')) or (colPickMode==1 and !data.containsKey('happenTime'))">
a.happenTime=#{data.happenTime},
</if>
<if test="(colPickMode==0 and data.containsKey('duration')) or (colPickMode==1 and !data.containsKey('duration'))">
a.duration=#{data.duration},
</if>
<if test="(colPickMode==0 and data.containsKey('durationIncrement')) or (colPickMode==1 and !data.containsKey('durationIncrement'))">
a.duration=ifnull(a.duration,0) + #{data.durationIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('alarmTime')) or (colPickMode==1 and !data.containsKey('alarmTime'))">
a.alarmTime=#{data.alarmTime},
</if>
<if test="(colPickMode==0 and data.containsKey('snapPath')) or (colPickMode==1 and !data.containsKey('snapPath'))">
a.snapPath=#{data.snapPath},
</if>
<if test="(colPickMode==0 and data.containsKey('irregularOtherType')) or (colPickMode==1 and !data.containsKey('irregularOtherType'))">
a.irregularOtherType=#{data.irregularOtherType},
</if>
<if test="(colPickMode==0 and data.containsKey('irregularOtherTypeIncrement')) or (colPickMode==1 and !data.containsKey('irregularOtherTypeIncrement'))">
a.irregularOtherType=ifnull(a.irregularOtherType,0) + #{data.irregularOtherTypeIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('performType')) or (colPickMode==1 and !data.containsKey('performType'))">
a.performType=#{data.performType},
</if>
</trim> </trim>
<trim suffixOverrides="where" suffix=""> <trim suffixOverrides="where" suffix="">
where where
...@@ -614,6 +780,180 @@ ...@@ -614,6 +780,180 @@
</if> </if>
</foreach> </foreach>
</trim> </trim>
<trim prefix="reviewResult=(case" suffix="ELSE reviewResult end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('reviewResult')) or (colPickMode==1 and !item.containsKey('reviewResult'))">
when a.id=#{item.id} then #{item.reviewResult}
</when>
<when test="(colPickMode==0 and item.containsKey('reviewResultIncrement')) or (colPickMode==1 and !item.containsKey('reviewResultIncrement'))">
when a.id=#{item.id} then ifnull(a.reviewResult,0) + #{item.reviewResultIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="reviewTime=(case" suffix="ELSE reviewTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('reviewTime')) or (colPickMode==1 and !item.containsKey('reviewTime'))">
when a.id=#{item.id} then #{item.reviewTime}
</if>
</foreach>
</trim>
<trim prefix="reviewSource=(case" suffix="ELSE reviewSource end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('reviewSource')) or (colPickMode==1 and !item.containsKey('reviewSource'))">
when a.id=#{item.id} then #{item.reviewSource}
</if>
</foreach>
</trim>
<trim prefix="reviewDevice=(case" suffix="ELSE reviewDevice end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('reviewDevice')) or (colPickMode==1 and !item.containsKey('reviewDevice'))">
when a.id=#{item.id} then #{item.reviewDevice}
</if>
</foreach>
</trim>
<trim prefix="complainTitle=(case" suffix="ELSE complainTitle end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('complainTitle')) or (colPickMode==1 and !item.containsKey('complainTitle'))">
when a.id=#{item.id} then #{item.complainTitle}
</if>
</foreach>
</trim>
<trim prefix="complainContent=(case" suffix="ELSE complainContent end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('complainContent')) or (colPickMode==1 and !item.containsKey('complainContent'))">
when a.id=#{item.id} then #{item.complainContent}
</if>
</foreach>
</trim>
<trim prefix="complainRealName=(case" suffix="ELSE complainRealName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('complainRealName')) or (colPickMode==1 and !item.containsKey('complainRealName'))">
when a.id=#{item.id} then #{item.complainRealName}
</if>
</foreach>
</trim>
<trim prefix="contact=(case" suffix="ELSE contact end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('contact')) or (colPickMode==1 and !item.containsKey('contact'))">
when a.id=#{item.id} then #{item.contact}
</if>
</foreach>
</trim>
<trim prefix="complainTime=(case" suffix="ELSE complainTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('complainTime')) or (colPickMode==1 and !item.containsKey('complainTime'))">
when a.id=#{item.id} then #{item.complainTime}
</if>
</foreach>
</trim>
<trim prefix="complainSource=(case" suffix="ELSE complainSource end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('complainSource')) or (colPickMode==1 and !item.containsKey('complainSource'))">
when a.id=#{item.id} then #{item.complainSource}
</if>
</foreach>
</trim>
<trim prefix="complainDevice=(case" suffix="ELSE complainDevice end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('complainDevice')) or (colPickMode==1 and !item.containsKey('complainDevice'))">
when a.id=#{item.id} then #{item.complainDevice}
</if>
</foreach>
</trim>
<trim prefix="goworkCode=(case" suffix="ELSE goworkCode end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('goworkCode')) or (colPickMode==1 and !item.containsKey('goworkCode'))">
when a.id=#{item.id} then #{item.goworkCode}
</if>
</foreach>
</trim>
<trim prefix="goworkDepts=(case" suffix="ELSE goworkDepts end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('goworkDepts')) or (colPickMode==1 and !item.containsKey('goworkDepts'))">
when a.id=#{item.id} then #{item.goworkDepts}
</if>
</foreach>
</trim>
<trim prefix="matterlName=(case" suffix="ELSE matterlName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('matterlName')) or (colPickMode==1 and !item.containsKey('matterlName'))">
when a.id=#{item.id} then #{item.matterlName}
</if>
</foreach>
</trim>
<trim prefix="goworkTime=(case" suffix="ELSE goworkTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('goworkTime')) or (colPickMode==1 and !item.containsKey('goworkTime'))">
when a.id=#{item.id} then #{item.goworkTime}
</if>
</foreach>
</trim>
<trim prefix="irregularType=(case" suffix="ELSE irregularType end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('irregularType')) or (colPickMode==1 and !item.containsKey('irregularType'))">
when a.id=#{item.id} then #{item.irregularType}
</when>
<when test="(colPickMode==0 and item.containsKey('irregularTypeIncrement')) or (colPickMode==1 and !item.containsKey('irregularTypeIncrement'))">
when a.id=#{item.id} then ifnull(a.irregularType,0) + #{item.irregularTypeIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="happenTime=(case" suffix="ELSE happenTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('happenTime')) or (colPickMode==1 and !item.containsKey('happenTime'))">
when a.id=#{item.id} then #{item.happenTime}
</if>
</foreach>
</trim>
<trim prefix="duration=(case" suffix="ELSE duration end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('duration')) or (colPickMode==1 and !item.containsKey('duration'))">
when a.id=#{item.id} then #{item.duration}
</when>
<when test="(colPickMode==0 and item.containsKey('durationIncrement')) or (colPickMode==1 and !item.containsKey('durationIncrement'))">
when a.id=#{item.id} then ifnull(a.duration,0) + #{item.durationIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="alarmTime=(case" suffix="ELSE alarmTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('alarmTime')) or (colPickMode==1 and !item.containsKey('alarmTime'))">
when a.id=#{item.id} then #{item.alarmTime}
</if>
</foreach>
</trim>
<trim prefix="snapPath=(case" suffix="ELSE snapPath end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('snapPath')) or (colPickMode==1 and !item.containsKey('snapPath'))">
when a.id=#{item.id} then #{item.snapPath}
</if>
</foreach>
</trim>
<trim prefix="irregularOtherType=(case" suffix="ELSE irregularOtherType end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('irregularOtherType')) or (colPickMode==1 and !item.containsKey('irregularOtherType'))">
when a.id=#{item.id} then #{item.irregularOtherType}
</when>
<when test="(colPickMode==0 and item.containsKey('irregularOtherTypeIncrement')) or (colPickMode==1 and !item.containsKey('irregularOtherTypeIncrement'))">
when a.id=#{item.id} then ifnull(a.irregularOtherType,0) + #{item.irregularOtherTypeIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="performType=(case" suffix="ELSE performType end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('performType')) or (colPickMode==1 and !item.containsKey('performType'))">
when a.id=#{item.id} then #{item.performType}
</if>
</foreach>
</trim>
</trim> </trim>
where id in where id in
<foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")"> <foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
...@@ -1467,6 +1807,462 @@ ...@@ -1467,6 +1807,462 @@
#{item} #{item}
</foreach> </foreach>
</if> </if>
<if test="conditionParamRef.containsKey('reviewResult')">
<if test="conditionParamRef.reviewResult != null ">
${_conditionType_} a.reviewResult = #{${_conditionParam_}.reviewResult}
</if>
<if test="conditionParamRef.reviewResult == null">
${_conditionType_} a.reviewResult is null
</if>
</if>
<if test="conditionParamRef.containsKey('reviewResultList') and conditionParamRef.reviewResultList.size() > 0">
${_conditionType_} a.reviewResult in
<foreach collection="conditionParamRef.reviewResultList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('reviewResultNotList') and conditionParamRef.reviewResultNotList.size() > 0">
${_conditionType_} a.reviewResult not in
<foreach collection="conditionParamRef.reviewResultNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('reviewResultStart') and conditionParamRef.reviewResultStart != null">
${_conditionType_} a.reviewResult <![CDATA[ >= ]]> #{${_conditionParam_}.reviewResultStart}
</if>
<if test="conditionParamRef.containsKey('reviewResultEnd') and conditionParamRef.reviewResultEnd != null">
${_conditionType_} a.reviewResult <![CDATA[ <= ]]> #{${_conditionParam_}.reviewResultEnd}
</if>
<if test="conditionParamRef.containsKey('reviewTime')">
<if test="conditionParamRef.reviewTime != null ">
${_conditionType_} a.reviewTime = #{${_conditionParam_}.reviewTime}
</if>
<if test="conditionParamRef.reviewTime == null">
${_conditionType_} a.reviewTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('reviewTimeStart') and conditionParamRef.reviewTimeStart != null and conditionParamRef.reviewTimeStart!=''">
${_conditionType_} a.reviewTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.reviewTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('reviewTimeEnd') and conditionParamRef.reviewTimeEnd != null and conditionParamRef.reviewTimeEnd!=''">
${_conditionType_} a.reviewTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.reviewTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('reviewSource')">
<if test="conditionParamRef.reviewSource != null and conditionParamRef.reviewSource != ''">
${_conditionType_} a.reviewSource like #{${_conditionParam_}.reviewSource}
</if>
<if test="conditionParamRef.reviewSource == null">
${_conditionType_} a.reviewSource is null
</if>
</if>
<if test="conditionParamRef.containsKey('reviewSourceList') and conditionParamRef.reviewSourceList.size() > 0">
${_conditionType_} a.reviewSource in
<foreach collection="conditionParamRef.reviewSourceList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('reviewSourceNotList') and conditionParamRef.reviewSourceNotList.size() > 0">
${_conditionType_} a.reviewSource not in
<foreach collection="conditionParamRef.reviewSourceNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('reviewDevice')">
<if test="conditionParamRef.reviewDevice != null and conditionParamRef.reviewDevice != ''">
${_conditionType_} a.reviewDevice like #{${_conditionParam_}.reviewDevice}
</if>
<if test="conditionParamRef.reviewDevice == null">
${_conditionType_} a.reviewDevice is null
</if>
</if>
<if test="conditionParamRef.containsKey('reviewDeviceList') and conditionParamRef.reviewDeviceList.size() > 0">
${_conditionType_} a.reviewDevice in
<foreach collection="conditionParamRef.reviewDeviceList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('reviewDeviceNotList') and conditionParamRef.reviewDeviceNotList.size() > 0">
${_conditionType_} a.reviewDevice not in
<foreach collection="conditionParamRef.reviewDeviceNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('complainTitle')">
<if test="conditionParamRef.complainTitle != null and conditionParamRef.complainTitle != ''">
${_conditionType_} a.complainTitle like #{${_conditionParam_}.complainTitle}
</if>
<if test="conditionParamRef.complainTitle == null">
${_conditionType_} a.complainTitle is null
</if>
</if>
<if test="conditionParamRef.containsKey('complainTitleList') and conditionParamRef.complainTitleList.size() > 0">
${_conditionType_} a.complainTitle in
<foreach collection="conditionParamRef.complainTitleList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('complainTitleNotList') and conditionParamRef.complainTitleNotList.size() > 0">
${_conditionType_} a.complainTitle not in
<foreach collection="conditionParamRef.complainTitleNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('complainContent')">
<if test="conditionParamRef.complainContent != null and conditionParamRef.complainContent != ''">
${_conditionType_} a.complainContent like #{${_conditionParam_}.complainContent}
</if>
<if test="conditionParamRef.complainContent == null">
${_conditionType_} a.complainContent is null
</if>
</if>
<if test="conditionParamRef.containsKey('complainContentList') and conditionParamRef.complainContentList.size() > 0">
${_conditionType_} a.complainContent in
<foreach collection="conditionParamRef.complainContentList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('complainContentNotList') and conditionParamRef.complainContentNotList.size() > 0">
${_conditionType_} a.complainContent not in
<foreach collection="conditionParamRef.complainContentNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('complainRealName')">
<if test="conditionParamRef.complainRealName != null and conditionParamRef.complainRealName != ''">
${_conditionType_} a.complainRealName like #{${_conditionParam_}.complainRealName}
</if>
<if test="conditionParamRef.complainRealName == null">
${_conditionType_} a.complainRealName is null
</if>
</if>
<if test="conditionParamRef.containsKey('complainRealNameList') and conditionParamRef.complainRealNameList.size() > 0">
${_conditionType_} a.complainRealName in
<foreach collection="conditionParamRef.complainRealNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('complainRealNameNotList') and conditionParamRef.complainRealNameNotList.size() > 0">
${_conditionType_} a.complainRealName not in
<foreach collection="conditionParamRef.complainRealNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('contact')">
<if test="conditionParamRef.contact != null and conditionParamRef.contact != ''">
${_conditionType_} a.contact like #{${_conditionParam_}.contact}
</if>
<if test="conditionParamRef.contact == null">
${_conditionType_} a.contact is null
</if>
</if>
<if test="conditionParamRef.containsKey('contactList') and conditionParamRef.contactList.size() > 0">
${_conditionType_} a.contact in
<foreach collection="conditionParamRef.contactList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('contactNotList') and conditionParamRef.contactNotList.size() > 0">
${_conditionType_} a.contact not in
<foreach collection="conditionParamRef.contactNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('complainTime')">
<if test="conditionParamRef.complainTime != null ">
${_conditionType_} a.complainTime = #{${_conditionParam_}.complainTime}
</if>
<if test="conditionParamRef.complainTime == null">
${_conditionType_} a.complainTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('complainTimeStart') and conditionParamRef.complainTimeStart != null and conditionParamRef.complainTimeStart!=''">
${_conditionType_} a.complainTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.complainTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('complainTimeEnd') and conditionParamRef.complainTimeEnd != null and conditionParamRef.complainTimeEnd!=''">
${_conditionType_} a.complainTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.complainTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('complainSource')">
<if test="conditionParamRef.complainSource != null and conditionParamRef.complainSource != ''">
${_conditionType_} a.complainSource like #{${_conditionParam_}.complainSource}
</if>
<if test="conditionParamRef.complainSource == null">
${_conditionType_} a.complainSource is null
</if>
</if>
<if test="conditionParamRef.containsKey('complainSourceList') and conditionParamRef.complainSourceList.size() > 0">
${_conditionType_} a.complainSource in
<foreach collection="conditionParamRef.complainSourceList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('complainSourceNotList') and conditionParamRef.complainSourceNotList.size() > 0">
${_conditionType_} a.complainSource not in
<foreach collection="conditionParamRef.complainSourceNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('complainDevice')">
<if test="conditionParamRef.complainDevice != null and conditionParamRef.complainDevice != ''">
${_conditionType_} a.complainDevice like #{${_conditionParam_}.complainDevice}
</if>
<if test="conditionParamRef.complainDevice == null">
${_conditionType_} a.complainDevice is null
</if>
</if>
<if test="conditionParamRef.containsKey('complainDeviceList') and conditionParamRef.complainDeviceList.size() > 0">
${_conditionType_} a.complainDevice in
<foreach collection="conditionParamRef.complainDeviceList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('complainDeviceNotList') and conditionParamRef.complainDeviceNotList.size() > 0">
${_conditionType_} a.complainDevice not in
<foreach collection="conditionParamRef.complainDeviceNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('goworkCode')">
<if test="conditionParamRef.goworkCode != null and conditionParamRef.goworkCode != ''">
${_conditionType_} a.goworkCode like #{${_conditionParam_}.goworkCode}
</if>
<if test="conditionParamRef.goworkCode == null">
${_conditionType_} a.goworkCode is null
</if>
</if>
<if test="conditionParamRef.containsKey('goworkCodeList') and conditionParamRef.goworkCodeList.size() > 0">
${_conditionType_} a.goworkCode in
<foreach collection="conditionParamRef.goworkCodeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('goworkCodeNotList') and conditionParamRef.goworkCodeNotList.size() > 0">
${_conditionType_} a.goworkCode not in
<foreach collection="conditionParamRef.goworkCodeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('goworkDepts')">
<if test="conditionParamRef.goworkDepts != null and conditionParamRef.goworkDepts != ''">
${_conditionType_} a.goworkDepts like #{${_conditionParam_}.goworkDepts}
</if>
<if test="conditionParamRef.goworkDepts == null">
${_conditionType_} a.goworkDepts is null
</if>
</if>
<if test="conditionParamRef.containsKey('goworkDeptsList') and conditionParamRef.goworkDeptsList.size() > 0">
${_conditionType_} a.goworkDepts in
<foreach collection="conditionParamRef.goworkDeptsList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('goworkDeptsNotList') and conditionParamRef.goworkDeptsNotList.size() > 0">
${_conditionType_} a.goworkDepts not in
<foreach collection="conditionParamRef.goworkDeptsNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('matterlName')">
<if test="conditionParamRef.matterlName != null and conditionParamRef.matterlName != ''">
${_conditionType_} a.matterlName like #{${_conditionParam_}.matterlName}
</if>
<if test="conditionParamRef.matterlName == null">
${_conditionType_} a.matterlName is null
</if>
</if>
<if test="conditionParamRef.containsKey('matterlNameList') and conditionParamRef.matterlNameList.size() > 0">
${_conditionType_} a.matterlName in
<foreach collection="conditionParamRef.matterlNameList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('matterlNameNotList') and conditionParamRef.matterlNameNotList.size() > 0">
${_conditionType_} a.matterlName not in
<foreach collection="conditionParamRef.matterlNameNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('goworkTime')">
<if test="conditionParamRef.goworkTime != null ">
${_conditionType_} a.goworkTime = #{${_conditionParam_}.goworkTime}
</if>
<if test="conditionParamRef.goworkTime == null">
${_conditionType_} a.goworkTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('goworkTimeStart') and conditionParamRef.goworkTimeStart != null and conditionParamRef.goworkTimeStart!=''">
${_conditionType_} a.goworkTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.goworkTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('goworkTimeEnd') and conditionParamRef.goworkTimeEnd != null and conditionParamRef.goworkTimeEnd!=''">
${_conditionType_} a.goworkTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.goworkTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('irregularType')">
<if test="conditionParamRef.irregularType != null ">
${_conditionType_} a.irregularType = #{${_conditionParam_}.irregularType}
</if>
<if test="conditionParamRef.irregularType == null">
${_conditionType_} a.irregularType is null
</if>
</if>
<if test="conditionParamRef.containsKey('irregularTypeList') and conditionParamRef.irregularTypeList.size() > 0">
${_conditionType_} a.irregularType in
<foreach collection="conditionParamRef.irregularTypeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('irregularTypeNotList') and conditionParamRef.irregularTypeNotList.size() > 0">
${_conditionType_} a.irregularType not in
<foreach collection="conditionParamRef.irregularTypeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('irregularTypeStart') and conditionParamRef.irregularTypeStart != null">
${_conditionType_} a.irregularType <![CDATA[ >= ]]> #{${_conditionParam_}.irregularTypeStart}
</if>
<if test="conditionParamRef.containsKey('irregularTypeEnd') and conditionParamRef.irregularTypeEnd != null">
${_conditionType_} a.irregularType <![CDATA[ <= ]]> #{${_conditionParam_}.irregularTypeEnd}
</if>
<if test="conditionParamRef.containsKey('happenTime')">
<if test="conditionParamRef.happenTime != null ">
${_conditionType_} a.happenTime = #{${_conditionParam_}.happenTime}
</if>
<if test="conditionParamRef.happenTime == null">
${_conditionType_} a.happenTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('happenTimeStart') and conditionParamRef.happenTimeStart != null and conditionParamRef.happenTimeStart!=''">
${_conditionType_} a.happenTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.happenTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('happenTimeEnd') and conditionParamRef.happenTimeEnd != null and conditionParamRef.happenTimeEnd!=''">
${_conditionType_} a.happenTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.happenTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('duration')">
<if test="conditionParamRef.duration != null ">
${_conditionType_} a.duration = #{${_conditionParam_}.duration}
</if>
<if test="conditionParamRef.duration == null">
${_conditionType_} a.duration is null
</if>
</if>
<if test="conditionParamRef.containsKey('durationList') and conditionParamRef.durationList.size() > 0">
${_conditionType_} a.duration in
<foreach collection="conditionParamRef.durationList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('durationNotList') and conditionParamRef.durationNotList.size() > 0">
${_conditionType_} a.duration not in
<foreach collection="conditionParamRef.durationNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('durationStart') and conditionParamRef.durationStart != null">
${_conditionType_} a.duration <![CDATA[ >= ]]> #{${_conditionParam_}.durationStart}
</if>
<if test="conditionParamRef.containsKey('durationEnd') and conditionParamRef.durationEnd != null">
${_conditionType_} a.duration <![CDATA[ <= ]]> #{${_conditionParam_}.durationEnd}
</if>
<if test="conditionParamRef.containsKey('alarmTime')">
<if test="conditionParamRef.alarmTime != null ">
${_conditionType_} a.alarmTime = #{${_conditionParam_}.alarmTime}
</if>
<if test="conditionParamRef.alarmTime == null">
${_conditionType_} a.alarmTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('alarmTimeStart') and conditionParamRef.alarmTimeStart != null and conditionParamRef.alarmTimeStart!=''">
${_conditionType_} a.alarmTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.alarmTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('alarmTimeEnd') and conditionParamRef.alarmTimeEnd != null and conditionParamRef.alarmTimeEnd!=''">
${_conditionType_} a.alarmTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.alarmTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('snapPath')">
<if test="conditionParamRef.snapPath != null and conditionParamRef.snapPath != ''">
${_conditionType_} a.snapPath like #{${_conditionParam_}.snapPath}
</if>
<if test="conditionParamRef.snapPath == null">
${_conditionType_} a.snapPath is null
</if>
</if>
<if test="conditionParamRef.containsKey('snapPathList') and conditionParamRef.snapPathList.size() > 0">
${_conditionType_} a.snapPath in
<foreach collection="conditionParamRef.snapPathList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('snapPathNotList') and conditionParamRef.snapPathNotList.size() > 0">
${_conditionType_} a.snapPath not in
<foreach collection="conditionParamRef.snapPathNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('irregularOtherType')">
<if test="conditionParamRef.irregularOtherType != null ">
${_conditionType_} a.irregularOtherType = #{${_conditionParam_}.irregularOtherType}
</if>
<if test="conditionParamRef.irregularOtherType == null">
${_conditionType_} a.irregularOtherType is null
</if>
</if>
<if test="conditionParamRef.containsKey('irregularOtherTypeList') and conditionParamRef.irregularOtherTypeList.size() > 0">
${_conditionType_} a.irregularOtherType in
<foreach collection="conditionParamRef.irregularOtherTypeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('irregularOtherTypeNotList') and conditionParamRef.irregularOtherTypeNotList.size() > 0">
${_conditionType_} a.irregularOtherType not in
<foreach collection="conditionParamRef.irregularOtherTypeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('irregularOtherTypeStart') and conditionParamRef.irregularOtherTypeStart != null">
${_conditionType_} a.irregularOtherType <![CDATA[ >= ]]> #{${_conditionParam_}.irregularOtherTypeStart}
</if>
<if test="conditionParamRef.containsKey('irregularOtherTypeEnd') and conditionParamRef.irregularOtherTypeEnd != null">
${_conditionType_} a.irregularOtherType <![CDATA[ <= ]]> #{${_conditionParam_}.irregularOtherTypeEnd}
</if>
<if test="conditionParamRef.containsKey('performType')">
<if test="conditionParamRef.performType != null and conditionParamRef.performType != ''">
${_conditionType_} a.performType like #{${_conditionParam_}.performType}
</if>
<if test="conditionParamRef.performType == null">
${_conditionType_} a.performType is null
</if>
</if>
<if test="conditionParamRef.containsKey('performTypeList') and conditionParamRef.performTypeList.size() > 0">
${_conditionType_} a.performType in
<foreach collection="conditionParamRef.performTypeList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('performTypeNotList') and conditionParamRef.performTypeNotList.size() > 0">
${_conditionType_} a.performType not in
<foreach collection="conditionParamRef.performTypeNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
</sql> </sql>
<sql id="_orderCols_"> <sql id="_orderCols_">
<if test="orderColList != null and !orderColList.isEmpty()"> <if test="orderColList != null and !orderColList.isEmpty()">
...@@ -1645,6 +2441,116 @@ ...@@ -1645,6 +2441,116 @@
<if test='orderCol.violationType != null and "DESC".equalsIgnoreCase(orderCol.violationType)'>DESC</if> <if test='orderCol.violationType != null and "DESC".equalsIgnoreCase(orderCol.violationType)'>DESC</if>
, ,
</if> </if>
<if test="orderCol.containsKey('reviewResult')">
a.reviewResult
<if test='orderCol.reviewResult != null and "DESC".equalsIgnoreCase(orderCol.reviewResult)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('reviewTime')">
a.reviewTime
<if test='orderCol.reviewTime != null and "DESC".equalsIgnoreCase(orderCol.reviewTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('reviewSource')">
a.reviewSource
<if test='orderCol.reviewSource != null and "DESC".equalsIgnoreCase(orderCol.reviewSource)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('reviewDevice')">
a.reviewDevice
<if test='orderCol.reviewDevice != null and "DESC".equalsIgnoreCase(orderCol.reviewDevice)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('complainTitle')">
a.complainTitle
<if test='orderCol.complainTitle != null and "DESC".equalsIgnoreCase(orderCol.complainTitle)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('complainContent')">
a.complainContent
<if test='orderCol.complainContent != null and "DESC".equalsIgnoreCase(orderCol.complainContent)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('complainRealName')">
a.complainRealName
<if test='orderCol.complainRealName != null and "DESC".equalsIgnoreCase(orderCol.complainRealName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('contact')">
a.contact
<if test='orderCol.contact != null and "DESC".equalsIgnoreCase(orderCol.contact)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('complainTime')">
a.complainTime
<if test='orderCol.complainTime != null and "DESC".equalsIgnoreCase(orderCol.complainTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('complainSource')">
a.complainSource
<if test='orderCol.complainSource != null and "DESC".equalsIgnoreCase(orderCol.complainSource)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('complainDevice')">
a.complainDevice
<if test='orderCol.complainDevice != null and "DESC".equalsIgnoreCase(orderCol.complainDevice)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('goworkCode')">
a.goworkCode
<if test='orderCol.goworkCode != null and "DESC".equalsIgnoreCase(orderCol.goworkCode)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('goworkDepts')">
a.goworkDepts
<if test='orderCol.goworkDepts != null and "DESC".equalsIgnoreCase(orderCol.goworkDepts)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('matterlName')">
a.matterlName
<if test='orderCol.matterlName != null and "DESC".equalsIgnoreCase(orderCol.matterlName)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('goworkTime')">
a.goworkTime
<if test='orderCol.goworkTime != null and "DESC".equalsIgnoreCase(orderCol.goworkTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('irregularType')">
a.irregularType
<if test='orderCol.irregularType != null and "DESC".equalsIgnoreCase(orderCol.irregularType)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('happenTime')">
a.happenTime
<if test='orderCol.happenTime != null and "DESC".equalsIgnoreCase(orderCol.happenTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('duration')">
a.duration
<if test='orderCol.duration != null and "DESC".equalsIgnoreCase(orderCol.duration)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('alarmTime')">
a.alarmTime
<if test='orderCol.alarmTime != null and "DESC".equalsIgnoreCase(orderCol.alarmTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('snapPath')">
a.snapPath
<if test='orderCol.snapPath != null and "DESC".equalsIgnoreCase(orderCol.snapPath)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('irregularOtherType')">
a.irregularOtherType
<if test='orderCol.irregularOtherType != null and "DESC".equalsIgnoreCase(orderCol.irregularOtherType)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('performType')">
a.performType
<if test='orderCol.performType != null and "DESC".equalsIgnoreCase(orderCol.performType)'>DESC</if>
,
</if>
</trim> </trim>
</if> </if>
</sql> </sql>
......
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd"> "mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.perform.dao.ibatis.PerformPerposeDeptDaoImpl"> <mapper namespace="com.mortals.xhx.module.perform.dao.ibatis.PerformPerposeDeptDaoImpl">
<!-- 字段和属性映射 --> <!-- 字段和属性映射 -->
<resultMap type="PerformPerposeDeptEntity" id="PerformPerposeDeptEntity-Map"> <resultMap type="PerformPerposeDeptEntity" id="PerformPerposeDeptEntity-Map">
<id property="Id" column="Id" /> <id property="id" column="id" />
<result property="purposeConfId" column="purposeConfId" /> <result property="purposeConfId" column="purposeConfId" />
<result property="deptId" column="deptId" /> <result property="deptId" column="deptId" />
<result property="deptName" column="deptName" /> <result property="deptName" column="deptName" />
...@@ -21,8 +21,8 @@ ...@@ -21,8 +21,8 @@
<!-- 表所有列 --> <!-- 表所有列 -->
<sql id="_columns"> <sql id="_columns">
<trim suffixOverrides="," suffix=""> <trim suffixOverrides="," suffix="">
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('Id') or colPickMode == 1 and data.containsKey('Id')))"> <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('id') or colPickMode == 1 and data.containsKey('id')))">
a.Id, a.id,
</if> </if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('purposeConfId') or colPickMode == 1 and data.containsKey('purposeConfId')))"> <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('purposeConfId') or colPickMode == 1 and data.containsKey('purposeConfId')))">
a.purposeConfId, a.purposeConfId,
...@@ -51,7 +51,7 @@ ...@@ -51,7 +51,7 @@
</trim> </trim>
</sql> </sql>
<!-- 新增 区分主键自增加还是业务插入 --> <!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="PerformPerposeDeptEntity" useGeneratedKeys="true" keyProperty="Id"> <insert id="insert" parameterType="PerformPerposeDeptEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_perform_perpose_dept insert into mortals_xhx_perform_perpose_dept
(purposeConfId,deptId,deptName,remark,createUserId,createTime,updateUserId,updateTime) (purposeConfId,deptId,deptName,remark,createUserId,createTime,updateUserId,updateTime)
VALUES VALUES
...@@ -126,10 +126,10 @@ ...@@ -126,10 +126,10 @@
<foreach collection="data.dataList" item="item" index="index" separator="" > <foreach collection="data.dataList" item="item" index="index" separator="" >
<choose> <choose>
<when test="(colPickMode==0 and item.containsKey('purposeConfId')) or (colPickMode==1 and !item.containsKey('purposeConfId'))"> <when test="(colPickMode==0 and item.containsKey('purposeConfId')) or (colPickMode==1 and !item.containsKey('purposeConfId'))">
when a.Id=#{item.Id} then #{item.purposeConfId} when a.id=#{item.id} then #{item.purposeConfId}
</when> </when>
<when test="(colPickMode==0 and item.containsKey('purposeConfIdIncrement')) or (colPickMode==1 and !item.containsKey('purposeConfIdIncrement'))"> <when test="(colPickMode==0 and item.containsKey('purposeConfIdIncrement')) or (colPickMode==1 and !item.containsKey('purposeConfIdIncrement'))">
when a.Id=#{item.Id} then ifnull(a.purposeConfId,0) + #{item.purposeConfIdIncrement} when a.id=#{item.id} then ifnull(a.purposeConfId,0) + #{item.purposeConfIdIncrement}
</when> </when>
</choose> </choose>
</foreach> </foreach>
...@@ -138,10 +138,10 @@ ...@@ -138,10 +138,10 @@
<foreach collection="data.dataList" item="item" index="index" separator="" > <foreach collection="data.dataList" item="item" index="index" separator="" >
<choose> <choose>
<when test="(colPickMode==0 and item.containsKey('deptId')) or (colPickMode==1 and !item.containsKey('deptId'))"> <when test="(colPickMode==0 and item.containsKey('deptId')) or (colPickMode==1 and !item.containsKey('deptId'))">
when a.Id=#{item.Id} then #{item.deptId} when a.id=#{item.id} then #{item.deptId}
</when> </when>
<when test="(colPickMode==0 and item.containsKey('deptIdIncrement')) or (colPickMode==1 and !item.containsKey('deptIdIncrement'))"> <when test="(colPickMode==0 and item.containsKey('deptIdIncrement')) or (colPickMode==1 and !item.containsKey('deptIdIncrement'))">
when a.Id=#{item.Id} then ifnull(a.deptId,0) + #{item.deptIdIncrement} when a.id=#{item.id} then ifnull(a.deptId,0) + #{item.deptIdIncrement}
</when> </when>
</choose> </choose>
</foreach> </foreach>
...@@ -149,14 +149,14 @@ ...@@ -149,14 +149,14 @@
<trim prefix="deptName=(case" suffix="ELSE deptName end),"> <trim prefix="deptName=(case" suffix="ELSE deptName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" > <foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('deptName')) or (colPickMode==1 and !item.containsKey('deptName'))"> <if test="(colPickMode==0 and item.containsKey('deptName')) or (colPickMode==1 and !item.containsKey('deptName'))">
when a.Id=#{item.Id} then #{item.deptName} when a.id=#{item.id} then #{item.deptName}
</if> </if>
</foreach> </foreach>
</trim> </trim>
<trim prefix="remark=(case" suffix="ELSE remark end),"> <trim prefix="remark=(case" suffix="ELSE remark end),">
<foreach collection="data.dataList" item="item" index="index" separator="" > <foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('remark')) or (colPickMode==1 and !item.containsKey('remark'))"> <if test="(colPickMode==0 and item.containsKey('remark')) or (colPickMode==1 and !item.containsKey('remark'))">
when a.Id=#{item.Id} then #{item.remark} when a.id=#{item.id} then #{item.remark}
</if> </if>
</foreach> </foreach>
</trim> </trim>
...@@ -164,10 +164,10 @@ ...@@ -164,10 +164,10 @@
<foreach collection="data.dataList" item="item" index="index" separator="" > <foreach collection="data.dataList" item="item" index="index" separator="" >
<choose> <choose>
<when test="(colPickMode==0 and item.containsKey('createUserId')) or (colPickMode==1 and !item.containsKey('createUserId'))"> <when test="(colPickMode==0 and item.containsKey('createUserId')) or (colPickMode==1 and !item.containsKey('createUserId'))">
when a.Id=#{item.Id} then #{item.createUserId} when a.id=#{item.id} then #{item.createUserId}
</when> </when>
<when test="(colPickMode==0 and item.containsKey('createUserIdIncrement')) or (colPickMode==1 and !item.containsKey('createUserIdIncrement'))"> <when test="(colPickMode==0 and item.containsKey('createUserIdIncrement')) or (colPickMode==1 and !item.containsKey('createUserIdIncrement'))">
when a.Id=#{item.Id} then ifnull(a.createUserId,0) + #{item.createUserIdIncrement} when a.id=#{item.id} then ifnull(a.createUserId,0) + #{item.createUserIdIncrement}
</when> </when>
</choose> </choose>
</foreach> </foreach>
...@@ -175,7 +175,7 @@ ...@@ -175,7 +175,7 @@
<trim prefix="createTime=(case" suffix="ELSE createTime end),"> <trim prefix="createTime=(case" suffix="ELSE createTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" > <foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('createTime')) or (colPickMode==1 and !item.containsKey('createTime'))"> <if test="(colPickMode==0 and item.containsKey('createTime')) or (colPickMode==1 and !item.containsKey('createTime'))">
when a.Id=#{item.Id} then #{item.createTime} when a.id=#{item.id} then #{item.createTime}
</if> </if>
</foreach> </foreach>
</trim> </trim>
...@@ -183,10 +183,10 @@ ...@@ -183,10 +183,10 @@
<foreach collection="data.dataList" item="item" index="index" separator="" > <foreach collection="data.dataList" item="item" index="index" separator="" >
<choose> <choose>
<when test="(colPickMode==0 and item.containsKey('updateUserId')) or (colPickMode==1 and !item.containsKey('updateUserId'))"> <when test="(colPickMode==0 and item.containsKey('updateUserId')) or (colPickMode==1 and !item.containsKey('updateUserId'))">
when a.Id=#{item.Id} then #{item.updateUserId} when a.id=#{item.id} then #{item.updateUserId}
</when> </when>
<when test="(colPickMode==0 and item.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !item.containsKey('updateUserIdIncrement'))"> <when test="(colPickMode==0 and item.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !item.containsKey('updateUserIdIncrement'))">
when a.Id=#{item.Id} then ifnull(a.updateUserId,0) + #{item.updateUserIdIncrement} when a.id=#{item.id} then ifnull(a.updateUserId,0) + #{item.updateUserIdIncrement}
</when> </when>
</choose> </choose>
</foreach> </foreach>
...@@ -194,36 +194,36 @@ ...@@ -194,36 +194,36 @@
<trim prefix="updateTime=(case" suffix="ELSE updateTime end),"> <trim prefix="updateTime=(case" suffix="ELSE updateTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" > <foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('updateTime')) or (colPickMode==1 and !item.containsKey('updateTime'))"> <if test="(colPickMode==0 and item.containsKey('updateTime')) or (colPickMode==1 and !item.containsKey('updateTime'))">
when a.Id=#{item.Id} then #{item.updateTime} when a.id=#{item.id} then #{item.updateTime}
</if> </if>
</foreach> </foreach>
</trim> </trim>
</trim> </trim>
where Id in where id in
<foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")"> <foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
#{item.Id} #{item.id}
</foreach> </foreach>
</update> </update>
<!-- 根据主健查询 --> <!-- 根据主健查询 -->
<select id="getByKey" parameterType="paramDto" resultMap="PerformPerposeDeptEntity-Map"> <select id="getByKey" parameterType="paramDto" resultMap="PerformPerposeDeptEntity-Map">
select <include refid="_columns"/> select <include refid="_columns"/>
from mortals_xhx_perform_perpose_dept as a from mortals_xhx_perform_perpose_dept as a
where a.Id=#{condition.Id} where a.id=#{condition.id}
</select> </select>
<!-- 根据主健删除 --> <!-- 根据主健删除 -->
<delete id="deleteByKey" parameterType="paramDto"> <delete id="deleteByKey" parameterType="paramDto">
delete a.* from mortals_xhx_perform_perpose_dept as a where a.Id=#{condition.Id} delete a.* from mortals_xhx_perform_perpose_dept as a where a.id=#{condition.id}
</delete> </delete>
<!-- 根据主健删除一批,针对单一主健有效 --> <!-- 根据主健删除一批,针对单一主健有效 -->
<delete id="deleteByKeys"> <delete id="deleteByKeys">
delete from mortals_xhx_perform_perpose_dept where Id in delete from mortals_xhx_perform_perpose_dept where id in
<foreach collection="array" item="item" index="index" open="(" separator="," close=")"> <foreach collection="array" item="item" index="index" open="(" separator="," close=")">
#{item} #{item}
</foreach> </foreach>
</delete> </delete>
<!-- 根据主健列表删除一批,针对单一主健有效 --> <!-- 根据主健列表删除一批,针对单一主健有效 -->
<delete id="deleteByKeyList"> <delete id="deleteByKeyList">
delete from mortals_xhx_perform_perpose_dept where Id in delete from mortals_xhx_perform_perpose_dept where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")"> <foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item} #{item}
</foreach> </foreach>
...@@ -231,9 +231,9 @@ ...@@ -231,9 +231,9 @@
<!-- 根据对象列表删除一批,针对单一主健有效 --> <!-- 根据对象列表删除一批,针对单一主健有效 -->
<delete id="deleteByEntityList"> <delete id="deleteByEntityList">
delete from mortals_xhx_perform_perpose_dept where Id in delete from mortals_xhx_perform_perpose_dept where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")"> <foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item.Id} #{item.id}
</foreach> </foreach>
</delete> </delete>
<!-- 根据paramDto删除一批 --> <!-- 根据paramDto删除一批 -->
...@@ -311,34 +311,34 @@ ...@@ -311,34 +311,34 @@
<bind name="conditionParamRef" value="${_conditionParam_}"/> <bind name="conditionParamRef" value="${_conditionParam_}"/>
<if test="conditionParamRef.containsKey('id')"> <if test="conditionParamRef.containsKey('id')">
<if test="conditionParamRef.id != null"> <if test="conditionParamRef.id != null">
${_conditionType_} a.Id=#{${_conditionParam_}.id} ${_conditionType_} a.id=#{${_conditionParam_}.id}
</if> </if>
</if> </if>
<if test="conditionParamRef.containsKey('Id')"> <if test="conditionParamRef.containsKey('id')">
<if test="conditionParamRef.Id != null "> <if test="conditionParamRef.id != null ">
${_conditionType_} a.Id = #{${_conditionParam_}.Id} ${_conditionType_} a.id = #{${_conditionParam_}.id}
</if> </if>
<if test="conditionParamRef.Id == null"> <if test="conditionParamRef.id == null">
${_conditionType_} a.Id is null ${_conditionType_} a.id is null
</if> </if>
</if> </if>
<if test="conditionParamRef.containsKey('IdList') and conditionParamRef.IdList.size() > 0"> <if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
${_conditionType_} a.Id in ${_conditionType_} a.id in
<foreach collection="conditionParamRef.IdList" open="(" close=")" index="index" item="item" separator=","> <foreach collection="conditionParamRef.idList" open="(" close=")" index="index" item="item" separator=",">
#{item} #{item}
</foreach> </foreach>
</if> </if>
<if test="conditionParamRef.containsKey('IdNotList') and conditionParamRef.IdNotList.size() > 0"> <if test="conditionParamRef.containsKey('idNotList') and conditionParamRef.idNotList.size() > 0">
${_conditionType_} a.Id not in ${_conditionType_} a.id not in
<foreach collection="conditionParamRef.IdNotList" open="(" close=")" index="index" item="item" separator=","> <foreach collection="conditionParamRef.idNotList" open="(" close=")" index="index" item="item" separator=",">
#{item} #{item}
</foreach> </foreach>
</if> </if>
<if test="conditionParamRef.containsKey('IdStart') and conditionParamRef.IdStart != null"> <if test="conditionParamRef.containsKey('idStart') and conditionParamRef.idStart != null">
${_conditionType_} a.Id <![CDATA[ >= ]]> #{${_conditionParam_}.IdStart} ${_conditionType_} a.id <![CDATA[ >= ]]> #{${_conditionParam_}.idStart}
</if> </if>
<if test="conditionParamRef.containsKey('IdEnd') and conditionParamRef.IdEnd != null"> <if test="conditionParamRef.containsKey('idEnd') and conditionParamRef.idEnd != null">
${_conditionType_} a.Id <![CDATA[ <= ]]> #{${_conditionParam_}.IdEnd} ${_conditionType_} a.id <![CDATA[ <= ]]> #{${_conditionParam_}.idEnd}
</if> </if>
<if test="conditionParamRef.containsKey('purposeConfId')"> <if test="conditionParamRef.containsKey('purposeConfId')">
...@@ -534,9 +534,9 @@ ...@@ -534,9 +534,9 @@
<if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()"> <if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
order by order by
<trim suffixOverrides="," suffix=""> <trim suffixOverrides="," suffix="">
<if test="orderCol.containsKey('Id')"> <if test="orderCol.containsKey('id')">
a.Id a.id
<if test='orderCol.Id != null and "DESC".equalsIgnoreCase(orderCol.Id)'>DESC</if> <if test='orderCol.id != null and "DESC".equalsIgnoreCase(orderCol.id)'>DESC</if>
, ,
</if> </if>
<if test="orderCol.containsKey('purposeConfId')"> <if test="orderCol.containsKey('purposeConfId')">
......
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd"> "mybatis-3-mapper.dtd">
<mapper namespace="com.mortals.xhx.module.perform.dao.ibatis.PerformPerposeStaffDaoImpl"> <mapper namespace="com.mortals.xhx.module.perform.dao.ibatis.PerformPerposeStaffDaoImpl">
<!-- 字段和属性映射 --> <!-- 字段和属性映射 -->
<resultMap type="PerformPerposeStaffEntity" id="PerformPerposeStaffEntity-Map"> <resultMap type="PerformPerposeStaffEntity" id="PerformPerposeStaffEntity-Map">
<id property="Id" column="Id" /> <id property="id" column="id" />
<result property="purposeConfId" column="purposeConfId" /> <result property="purposeConfId" column="purposeConfId" />
<result property="staffId" column="staffId" /> <result property="staffId" column="staffId" />
<result property="staffName" column="staffName" /> <result property="staffName" column="staffName" />
...@@ -22,8 +22,8 @@ ...@@ -22,8 +22,8 @@
<!-- 表所有列 --> <!-- 表所有列 -->
<sql id="_columns"> <sql id="_columns">
<trim suffixOverrides="," suffix=""> <trim suffixOverrides="," suffix="">
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('Id') or colPickMode == 1 and data.containsKey('Id')))"> <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('id') or colPickMode == 1 and data.containsKey('id')))">
a.Id, a.id,
</if> </if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('purposeConfId') or colPickMode == 1 and data.containsKey('purposeConfId')))"> <if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('purposeConfId') or colPickMode == 1 and data.containsKey('purposeConfId')))">
a.purposeConfId, a.purposeConfId,
...@@ -55,7 +55,7 @@ ...@@ -55,7 +55,7 @@
</trim> </trim>
</sql> </sql>
<!-- 新增 区分主键自增加还是业务插入 --> <!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="PerformPerposeStaffEntity" useGeneratedKeys="true" keyProperty="Id"> <insert id="insert" parameterType="PerformPerposeStaffEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_perform_perpose_staff insert into mortals_xhx_perform_perpose_staff
(purposeConfId,staffId,staffName,number,remark,createUserId,createTime,updateUserId,updateTime) (purposeConfId,staffId,staffName,number,remark,createUserId,createTime,updateUserId,updateTime)
VALUES VALUES
...@@ -133,10 +133,10 @@ ...@@ -133,10 +133,10 @@
<foreach collection="data.dataList" item="item" index="index" separator="" > <foreach collection="data.dataList" item="item" index="index" separator="" >
<choose> <choose>
<when test="(colPickMode==0 and item.containsKey('purposeConfId')) or (colPickMode==1 and !item.containsKey('purposeConfId'))"> <when test="(colPickMode==0 and item.containsKey('purposeConfId')) or (colPickMode==1 and !item.containsKey('purposeConfId'))">
when a.Id=#{item.Id} then #{item.purposeConfId} when a.id=#{item.id} then #{item.purposeConfId}
</when> </when>
<when test="(colPickMode==0 and item.containsKey('purposeConfIdIncrement')) or (colPickMode==1 and !item.containsKey('purposeConfIdIncrement'))"> <when test="(colPickMode==0 and item.containsKey('purposeConfIdIncrement')) or (colPickMode==1 and !item.containsKey('purposeConfIdIncrement'))">
when a.Id=#{item.Id} then ifnull(a.purposeConfId,0) + #{item.purposeConfIdIncrement} when a.id=#{item.id} then ifnull(a.purposeConfId,0) + #{item.purposeConfIdIncrement}
</when> </when>
</choose> </choose>
</foreach> </foreach>
...@@ -145,10 +145,10 @@ ...@@ -145,10 +145,10 @@
<foreach collection="data.dataList" item="item" index="index" separator="" > <foreach collection="data.dataList" item="item" index="index" separator="" >
<choose> <choose>
<when test="(colPickMode==0 and item.containsKey('staffId')) or (colPickMode==1 and !item.containsKey('staffId'))"> <when test="(colPickMode==0 and item.containsKey('staffId')) or (colPickMode==1 and !item.containsKey('staffId'))">
when a.Id=#{item.Id} then #{item.staffId} when a.id=#{item.id} then #{item.staffId}
</when> </when>
<when test="(colPickMode==0 and item.containsKey('staffIdIncrement')) or (colPickMode==1 and !item.containsKey('staffIdIncrement'))"> <when test="(colPickMode==0 and item.containsKey('staffIdIncrement')) or (colPickMode==1 and !item.containsKey('staffIdIncrement'))">
when a.Id=#{item.Id} then ifnull(a.staffId,0) + #{item.staffIdIncrement} when a.id=#{item.id} then ifnull(a.staffId,0) + #{item.staffIdIncrement}
</when> </when>
</choose> </choose>
</foreach> </foreach>
...@@ -156,21 +156,21 @@ ...@@ -156,21 +156,21 @@
<trim prefix="staffName=(case" suffix="ELSE staffName end),"> <trim prefix="staffName=(case" suffix="ELSE staffName end),">
<foreach collection="data.dataList" item="item" index="index" separator="" > <foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('staffName')) or (colPickMode==1 and !item.containsKey('staffName'))"> <if test="(colPickMode==0 and item.containsKey('staffName')) or (colPickMode==1 and !item.containsKey('staffName'))">
when a.Id=#{item.Id} then #{item.staffName} when a.id=#{item.id} then #{item.staffName}
</if> </if>
</foreach> </foreach>
</trim> </trim>
<trim prefix="number=(case" suffix="ELSE number end),"> <trim prefix="number=(case" suffix="ELSE number end),">
<foreach collection="data.dataList" item="item" index="index" separator="" > <foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('number')) or (colPickMode==1 and !item.containsKey('number'))"> <if test="(colPickMode==0 and item.containsKey('number')) or (colPickMode==1 and !item.containsKey('number'))">
when a.Id=#{item.Id} then #{item.number} when a.id=#{item.id} then #{item.number}
</if> </if>
</foreach> </foreach>
</trim> </trim>
<trim prefix="remark=(case" suffix="ELSE remark end),"> <trim prefix="remark=(case" suffix="ELSE remark end),">
<foreach collection="data.dataList" item="item" index="index" separator="" > <foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('remark')) or (colPickMode==1 and !item.containsKey('remark'))"> <if test="(colPickMode==0 and item.containsKey('remark')) or (colPickMode==1 and !item.containsKey('remark'))">
when a.Id=#{item.Id} then #{item.remark} when a.id=#{item.id} then #{item.remark}
</if> </if>
</foreach> </foreach>
</trim> </trim>
...@@ -178,10 +178,10 @@ ...@@ -178,10 +178,10 @@
<foreach collection="data.dataList" item="item" index="index" separator="" > <foreach collection="data.dataList" item="item" index="index" separator="" >
<choose> <choose>
<when test="(colPickMode==0 and item.containsKey('createUserId')) or (colPickMode==1 and !item.containsKey('createUserId'))"> <when test="(colPickMode==0 and item.containsKey('createUserId')) or (colPickMode==1 and !item.containsKey('createUserId'))">
when a.Id=#{item.Id} then #{item.createUserId} when a.id=#{item.id} then #{item.createUserId}
</when> </when>
<when test="(colPickMode==0 and item.containsKey('createUserIdIncrement')) or (colPickMode==1 and !item.containsKey('createUserIdIncrement'))"> <when test="(colPickMode==0 and item.containsKey('createUserIdIncrement')) or (colPickMode==1 and !item.containsKey('createUserIdIncrement'))">
when a.Id=#{item.Id} then ifnull(a.createUserId,0) + #{item.createUserIdIncrement} when a.id=#{item.id} then ifnull(a.createUserId,0) + #{item.createUserIdIncrement}
</when> </when>
</choose> </choose>
</foreach> </foreach>
...@@ -189,7 +189,7 @@ ...@@ -189,7 +189,7 @@
<trim prefix="createTime=(case" suffix="ELSE createTime end),"> <trim prefix="createTime=(case" suffix="ELSE createTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" > <foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('createTime')) or (colPickMode==1 and !item.containsKey('createTime'))"> <if test="(colPickMode==0 and item.containsKey('createTime')) or (colPickMode==1 and !item.containsKey('createTime'))">
when a.Id=#{item.Id} then #{item.createTime} when a.id=#{item.id} then #{item.createTime}
</if> </if>
</foreach> </foreach>
</trim> </trim>
...@@ -197,10 +197,10 @@ ...@@ -197,10 +197,10 @@
<foreach collection="data.dataList" item="item" index="index" separator="" > <foreach collection="data.dataList" item="item" index="index" separator="" >
<choose> <choose>
<when test="(colPickMode==0 and item.containsKey('updateUserId')) or (colPickMode==1 and !item.containsKey('updateUserId'))"> <when test="(colPickMode==0 and item.containsKey('updateUserId')) or (colPickMode==1 and !item.containsKey('updateUserId'))">
when a.Id=#{item.Id} then #{item.updateUserId} when a.id=#{item.id} then #{item.updateUserId}
</when> </when>
<when test="(colPickMode==0 and item.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !item.containsKey('updateUserIdIncrement'))"> <when test="(colPickMode==0 and item.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !item.containsKey('updateUserIdIncrement'))">
when a.Id=#{item.Id} then ifnull(a.updateUserId,0) + #{item.updateUserIdIncrement} when a.id=#{item.id} then ifnull(a.updateUserId,0) + #{item.updateUserIdIncrement}
</when> </when>
</choose> </choose>
</foreach> </foreach>
...@@ -208,36 +208,36 @@ ...@@ -208,36 +208,36 @@
<trim prefix="updateTime=(case" suffix="ELSE updateTime end),"> <trim prefix="updateTime=(case" suffix="ELSE updateTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" > <foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('updateTime')) or (colPickMode==1 and !item.containsKey('updateTime'))"> <if test="(colPickMode==0 and item.containsKey('updateTime')) or (colPickMode==1 and !item.containsKey('updateTime'))">
when a.Id=#{item.Id} then #{item.updateTime} when a.id=#{item.id} then #{item.updateTime}
</if> </if>
</foreach> </foreach>
</trim> </trim>
</trim> </trim>
where Id in where id in
<foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")"> <foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
#{item.Id} #{item.id}
</foreach> </foreach>
</update> </update>
<!-- 根据主健查询 --> <!-- 根据主健查询 -->
<select id="getByKey" parameterType="paramDto" resultMap="PerformPerposeStaffEntity-Map"> <select id="getByKey" parameterType="paramDto" resultMap="PerformPerposeStaffEntity-Map">
select <include refid="_columns"/> select <include refid="_columns"/>
from mortals_xhx_perform_perpose_staff as a from mortals_xhx_perform_perpose_staff as a
where a.Id=#{condition.Id} where a.id=#{condition.id}
</select> </select>
<!-- 根据主健删除 --> <!-- 根据主健删除 -->
<delete id="deleteByKey" parameterType="paramDto"> <delete id="deleteByKey" parameterType="paramDto">
delete a.* from mortals_xhx_perform_perpose_staff as a where a.Id=#{condition.Id} delete a.* from mortals_xhx_perform_perpose_staff as a where a.id=#{condition.id}
</delete> </delete>
<!-- 根据主健删除一批,针对单一主健有效 --> <!-- 根据主健删除一批,针对单一主健有效 -->
<delete id="deleteByKeys"> <delete id="deleteByKeys">
delete from mortals_xhx_perform_perpose_staff where Id in delete from mortals_xhx_perform_perpose_staff where id in
<foreach collection="array" item="item" index="index" open="(" separator="," close=")"> <foreach collection="array" item="item" index="index" open="(" separator="," close=")">
#{item} #{item}
</foreach> </foreach>
</delete> </delete>
<!-- 根据主健列表删除一批,针对单一主健有效 --> <!-- 根据主健列表删除一批,针对单一主健有效 -->
<delete id="deleteByKeyList"> <delete id="deleteByKeyList">
delete from mortals_xhx_perform_perpose_staff where Id in delete from mortals_xhx_perform_perpose_staff where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")"> <foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item} #{item}
</foreach> </foreach>
...@@ -245,9 +245,9 @@ ...@@ -245,9 +245,9 @@
<!-- 根据对象列表删除一批,针对单一主健有效 --> <!-- 根据对象列表删除一批,针对单一主健有效 -->
<delete id="deleteByEntityList"> <delete id="deleteByEntityList">
delete from mortals_xhx_perform_perpose_staff where Id in delete from mortals_xhx_perform_perpose_staff where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")"> <foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item.Id} #{item.id}
</foreach> </foreach>
</delete> </delete>
<!-- 根据paramDto删除一批 --> <!-- 根据paramDto删除一批 -->
...@@ -325,34 +325,34 @@ ...@@ -325,34 +325,34 @@
<bind name="conditionParamRef" value="${_conditionParam_}"/> <bind name="conditionParamRef" value="${_conditionParam_}"/>
<if test="conditionParamRef.containsKey('id')"> <if test="conditionParamRef.containsKey('id')">
<if test="conditionParamRef.id != null"> <if test="conditionParamRef.id != null">
${_conditionType_} a.Id=#{${_conditionParam_}.id} ${_conditionType_} a.id=#{${_conditionParam_}.id}
</if> </if>
</if> </if>
<if test="conditionParamRef.containsKey('Id')"> <if test="conditionParamRef.containsKey('id')">
<if test="conditionParamRef.Id != null "> <if test="conditionParamRef.id != null ">
${_conditionType_} a.Id = #{${_conditionParam_}.Id} ${_conditionType_} a.id = #{${_conditionParam_}.id}
</if> </if>
<if test="conditionParamRef.Id == null"> <if test="conditionParamRef.id == null">
${_conditionType_} a.Id is null ${_conditionType_} a.id is null
</if> </if>
</if> </if>
<if test="conditionParamRef.containsKey('IdList') and conditionParamRef.IdList.size() > 0"> <if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
${_conditionType_} a.Id in ${_conditionType_} a.id in
<foreach collection="conditionParamRef.IdList" open="(" close=")" index="index" item="item" separator=","> <foreach collection="conditionParamRef.idList" open="(" close=")" index="index" item="item" separator=",">
#{item} #{item}
</foreach> </foreach>
</if> </if>
<if test="conditionParamRef.containsKey('IdNotList') and conditionParamRef.IdNotList.size() > 0"> <if test="conditionParamRef.containsKey('idNotList') and conditionParamRef.idNotList.size() > 0">
${_conditionType_} a.Id not in ${_conditionType_} a.id not in
<foreach collection="conditionParamRef.IdNotList" open="(" close=")" index="index" item="item" separator=","> <foreach collection="conditionParamRef.idNotList" open="(" close=")" index="index" item="item" separator=",">
#{item} #{item}
</foreach> </foreach>
</if> </if>
<if test="conditionParamRef.containsKey('IdStart') and conditionParamRef.IdStart != null"> <if test="conditionParamRef.containsKey('idStart') and conditionParamRef.idStart != null">
${_conditionType_} a.Id <![CDATA[ >= ]]> #{${_conditionParam_}.IdStart} ${_conditionType_} a.id <![CDATA[ >= ]]> #{${_conditionParam_}.idStart}
</if> </if>
<if test="conditionParamRef.containsKey('IdEnd') and conditionParamRef.IdEnd != null"> <if test="conditionParamRef.containsKey('idEnd') and conditionParamRef.idEnd != null">
${_conditionType_} a.Id <![CDATA[ <= ]]> #{${_conditionParam_}.IdEnd} ${_conditionType_} a.id <![CDATA[ <= ]]> #{${_conditionParam_}.idEnd}
</if> </if>
<if test="conditionParamRef.containsKey('purposeConfId')"> <if test="conditionParamRef.containsKey('purposeConfId')">
...@@ -569,9 +569,9 @@ ...@@ -569,9 +569,9 @@
<if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()"> <if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
order by order by
<trim suffixOverrides="," suffix=""> <trim suffixOverrides="," suffix="">
<if test="orderCol.containsKey('Id')"> <if test="orderCol.containsKey('id')">
a.Id a.id
<if test='orderCol.Id != null and "DESC".equalsIgnoreCase(orderCol.Id)'>DESC</if> <if test='orderCol.id != null and "DESC".equalsIgnoreCase(orderCol.id)'>DESC</if>
, ,
</if> </if>
<if test="orderCol.containsKey('purposeConfId')"> <if test="orderCol.containsKey('purposeConfId')">
......
<?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.window.dao.ibatis.WindowOwnerDetailDaoImpl">
<!-- 字段和属性映射 -->
<resultMap type="WindowOwnerDetailEntity" id="WindowOwnerDetailEntity-Map">
<id property="id" column="id" />
<result property="ownerId" column="ownerId" />
<result property="staffId" column="staffId" />
<result property="remark" column="remark" />
<result property="createTime" column="createTime" />
<result property="createUserId" column="createUserId" />
<result property="updateUserId" column="updateUserId" />
<result property="updateTime" column="updateTime" />
</resultMap>
<!-- 表所有列 -->
<sql id="_columns">
<trim suffixOverrides="," suffix="">
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('id') or colPickMode == 1 and data.containsKey('id')))">
a.id,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('ownerId') or colPickMode == 1 and data.containsKey('ownerId')))">
a.ownerId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('staffId') or colPickMode == 1 and data.containsKey('staffId')))">
a.staffId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('remark') or colPickMode == 1 and data.containsKey('remark')))">
a.remark,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createTime') or colPickMode == 1 and data.containsKey('createTime')))">
a.createTime,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('createUserId') or colPickMode == 1 and data.containsKey('createUserId')))">
a.createUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateUserId') or colPickMode == 1 and data.containsKey('updateUserId')))">
a.updateUserId,
</if>
<if test="(data == null) or (data != null and ( colPickMode == 0 and !data.containsKey('updateTime') or colPickMode == 1 and data.containsKey('updateTime')))">
a.updateTime,
</if>
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="WindowOwnerDetailEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_window_owner_detail
(ownerId,staffId,remark,createTime,createUserId,updateUserId,updateTime)
VALUES
(#{ownerId},#{staffId},#{remark},#{createTime},#{createUserId},#{updateUserId},#{updateTime})
</insert>
<!-- 批量新增 -->
<insert id="insertBatch" parameterType="paramDto">
insert into mortals_xhx_window_owner_detail
(ownerId,staffId,remark,createTime,createUserId,updateUserId,updateTime)
VALUES
<foreach collection="data.dataList" item="item" index="index" separator="," >
(#{item.ownerId},#{item.staffId},#{item.remark},#{item.createTime},#{item.createUserId},#{item.updateUserId},#{item.updateTime})
</foreach>
</insert>
<!-- 根据ParamDto更新 -->
<update id="update" parameterType="paramDto">
update mortals_xhx_window_owner_detail as a
set
<trim suffixOverrides="," suffix="">
<if test="(colPickMode==0 and data.containsKey('ownerId')) or (colPickMode==1 and !data.containsKey('ownerId'))">
a.ownerId=#{data.ownerId},
</if>
<if test="(colPickMode==0 and data.containsKey('ownerIdIncrement')) or (colPickMode==1 and !data.containsKey('ownerIdIncrement'))">
a.ownerId=ifnull(a.ownerId,0) + #{data.ownerIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('staffId')) or (colPickMode==1 and !data.containsKey('staffId'))">
a.staffId=#{data.staffId},
</if>
<if test="(colPickMode==0 and data.containsKey('staffIdIncrement')) or (colPickMode==1 and !data.containsKey('staffIdIncrement'))">
a.staffId=ifnull(a.staffId,0) + #{data.staffIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('remark')) or (colPickMode==1 and !data.containsKey('remark'))">
a.remark=#{data.remark},
</if>
<if test="(colPickMode==0 and data.containsKey('createTime')) or (colPickMode==1 and !data.containsKey('createTime'))">
a.createTime=#{data.createTime},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserId')) or (colPickMode==1 and !data.containsKey('createUserId'))">
a.createUserId=#{data.createUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('createUserIdIncrement')) or (colPickMode==1 and !data.containsKey('createUserIdIncrement'))">
a.createUserId=ifnull(a.createUserId,0) + #{data.createUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserId')) or (colPickMode==1 and !data.containsKey('updateUserId'))">
a.updateUserId=#{data.updateUserId},
</if>
<if test="(colPickMode==0 and data.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !data.containsKey('updateUserIdIncrement'))">
a.updateUserId=ifnull(a.updateUserId,0) + #{data.updateUserIdIncrement},
</if>
<if test="(colPickMode==0 and data.containsKey('updateTime')) or (colPickMode==1 and !data.containsKey('updateTime'))">
a.updateTime=#{data.updateTime},
</if>
</trim>
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</update>
<!-- 批量更新 -->
<update id="updateBatch" parameterType="paramDto">
update mortals_xhx_window_owner_detail as a
<trim prefix="set" suffixOverrides=",">
<trim prefix="ownerId=(case" suffix="ELSE ownerId end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('ownerId')) or (colPickMode==1 and !item.containsKey('ownerId'))">
when a.id=#{item.id} then #{item.ownerId}
</when>
<when test="(colPickMode==0 and item.containsKey('ownerIdIncrement')) or (colPickMode==1 and !item.containsKey('ownerIdIncrement'))">
when a.id=#{item.id} then ifnull(a.ownerId,0) + #{item.ownerIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="staffId=(case" suffix="ELSE staffId end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('staffId')) or (colPickMode==1 and !item.containsKey('staffId'))">
when a.id=#{item.id} then #{item.staffId}
</when>
<when test="(colPickMode==0 and item.containsKey('staffIdIncrement')) or (colPickMode==1 and !item.containsKey('staffIdIncrement'))">
when a.id=#{item.id} then ifnull(a.staffId,0) + #{item.staffIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="remark=(case" suffix="ELSE remark end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('remark')) or (colPickMode==1 and !item.containsKey('remark'))">
when a.id=#{item.id} then #{item.remark}
</if>
</foreach>
</trim>
<trim prefix="createTime=(case" suffix="ELSE createTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('createTime')) or (colPickMode==1 and !item.containsKey('createTime'))">
when a.id=#{item.id} then #{item.createTime}
</if>
</foreach>
</trim>
<trim prefix="createUserId=(case" suffix="ELSE createUserId end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('createUserId')) or (colPickMode==1 and !item.containsKey('createUserId'))">
when a.id=#{item.id} then #{item.createUserId}
</when>
<when test="(colPickMode==0 and item.containsKey('createUserIdIncrement')) or (colPickMode==1 and !item.containsKey('createUserIdIncrement'))">
when a.id=#{item.id} then ifnull(a.createUserId,0) + #{item.createUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="updateUserId=(case" suffix="ELSE updateUserId end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<choose>
<when test="(colPickMode==0 and item.containsKey('updateUserId')) or (colPickMode==1 and !item.containsKey('updateUserId'))">
when a.id=#{item.id} then #{item.updateUserId}
</when>
<when test="(colPickMode==0 and item.containsKey('updateUserIdIncrement')) or (colPickMode==1 and !item.containsKey('updateUserIdIncrement'))">
when a.id=#{item.id} then ifnull(a.updateUserId,0) + #{item.updateUserIdIncrement}
</when>
</choose>
</foreach>
</trim>
<trim prefix="updateTime=(case" suffix="ELSE updateTime end),">
<foreach collection="data.dataList" item="item" index="index" separator="" >
<if test="(colPickMode==0 and item.containsKey('updateTime')) or (colPickMode==1 and !item.containsKey('updateTime'))">
when a.id=#{item.id} then #{item.updateTime}
</if>
</foreach>
</trim>
</trim>
where id in
<foreach collection="data.dataList" item="item" index="index" open="(" separator="," close=")">
#{item.id}
</foreach>
</update>
<!-- 根据主健查询 -->
<select id="getByKey" parameterType="paramDto" resultMap="WindowOwnerDetailEntity-Map">
select <include refid="_columns"/>
from mortals_xhx_window_owner_detail as a
where a.id=#{condition.id}
</select>
<!-- 根据主健删除 -->
<delete id="deleteByKey" parameterType="paramDto">
delete a.* from mortals_xhx_window_owner_detail as a where a.id=#{condition.id}
</delete>
<!-- 根据主健删除一批,针对单一主健有效 -->
<delete id="deleteByKeys">
delete from mortals_xhx_window_owner_detail where id in
<foreach collection="array" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据主健列表删除一批,针对单一主健有效 -->
<delete id="deleteByKeyList">
delete from mortals_xhx_window_owner_detail where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>
</delete>
<!-- 根据对象列表删除一批,针对单一主健有效 -->
<delete id="deleteByEntityList">
delete from mortals_xhx_window_owner_detail where id in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item.id}
</foreach>
</delete>
<!-- 根据paramDto删除一批 -->
<delete id="deleteByMap" parameterType="paramDto">
delete a.* from mortals_xhx_window_owner_detail as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</delete>
<!-- 获取列表 -->
<select id="getList" parameterType="paramDto" resultMap="WindowOwnerDetailEntity-Map">
select <include refid="_columns"/>
from mortals_xhx_window_owner_detail as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
<include refid="_orderCols_"/>
</select>
<!-- 获取 -->
<select id="getListCount" parameterType="paramDto" resultType="int">
select count(1)
from mortals_xhx_window_owner_detail as a
<trim suffixOverrides="where" suffix="">
where
<trim prefixOverrides="and" prefix="">
<include refid="_condition_"/>
</trim>
</trim>
</select>
<!-- 条件映射 -->
<sql id="_condition_">
<if test="condition != null and !condition.isEmpty()">
<!-- 条件映射-普通条件 -->
<include refid="_condition_param_">
<property name="_conditionParam_" value="condition"/>
<property name="_conditionType_" value="and"/>
</include>
<!-- 条件映射-集合之间使用AND,集合中元素使用OR-(list[0].1 or list[0].2) and (list[1].3 or list[1].4) -->
<if test="condition.containsKey('andConditionList') and !condition.andConditionList.isEmpty()">
and
<foreach collection="condition.andConditionList" open="(" close=")" index="index" item="andCondition" separator=" and ">
<trim prefixOverrides="or" prefix="(" suffix=")">
<include refid="_condition_param_">
<property name="_conditionParam_" value="andCondition"/>
<property name="_conditionType_" value="or"/>
</include>
</trim>
</foreach>
</if>
<!-- 条件映射-集合之间使用OR,集合中元素使用AND-(list[0].1 and list[0].2) or (list[1].3 and list[1].4) -->
<if test="condition.containsKey('orConditionList') and !condition.orConditionList.isEmpty()">
and
<foreach collection="condition.orConditionList" open="(" close=")" index="index" item="orCondition" separator=" or ">
<trim prefixOverrides="and" prefix="(" suffix=")">
<include refid="_condition_param_">
<property name="_conditionParam_" value="orCondition"/>
<property name="_conditionType_" value="and"/>
</include>
</trim>
</foreach>
</if>
</if>
</sql>
<!-- 条件映射-代参数 -->
<sql id="_condition_param_">
<bind name="conditionParamRef" value="${_conditionParam_}"/>
<if test="conditionParamRef.containsKey('id')">
<if test="conditionParamRef.id != null">
${_conditionType_} a.id=#{${_conditionParam_}.id}
</if>
</if>
<if test="conditionParamRef.containsKey('id')">
<if test="conditionParamRef.id != null ">
${_conditionType_} a.id = #{${_conditionParam_}.id}
</if>
<if test="conditionParamRef.id == null">
${_conditionType_} a.id is null
</if>
</if>
<if test="conditionParamRef.containsKey('idList') and conditionParamRef.idList.size() > 0">
${_conditionType_} a.id in
<foreach collection="conditionParamRef.idList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('idNotList') and conditionParamRef.idNotList.size() > 0">
${_conditionType_} a.id not in
<foreach collection="conditionParamRef.idNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('idStart') and conditionParamRef.idStart != null">
${_conditionType_} a.id <![CDATA[ >= ]]> #{${_conditionParam_}.idStart}
</if>
<if test="conditionParamRef.containsKey('idEnd') and conditionParamRef.idEnd != null">
${_conditionType_} a.id <![CDATA[ <= ]]> #{${_conditionParam_}.idEnd}
</if>
<if test="conditionParamRef.containsKey('ownerId')">
<if test="conditionParamRef.ownerId != null ">
${_conditionType_} a.ownerId = #{${_conditionParam_}.ownerId}
</if>
<if test="conditionParamRef.ownerId == null">
${_conditionType_} a.ownerId is null
</if>
</if>
<if test="conditionParamRef.containsKey('ownerIdList') and conditionParamRef.ownerIdList.size() > 0">
${_conditionType_} a.ownerId in
<foreach collection="conditionParamRef.ownerIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('ownerIdNotList') and conditionParamRef.ownerIdNotList.size() > 0">
${_conditionType_} a.ownerId not in
<foreach collection="conditionParamRef.ownerIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('ownerIdStart') and conditionParamRef.ownerIdStart != null">
${_conditionType_} a.ownerId <![CDATA[ >= ]]> #{${_conditionParam_}.ownerIdStart}
</if>
<if test="conditionParamRef.containsKey('ownerIdEnd') and conditionParamRef.ownerIdEnd != null">
${_conditionType_} a.ownerId <![CDATA[ <= ]]> #{${_conditionParam_}.ownerIdEnd}
</if>
<if test="conditionParamRef.containsKey('staffId')">
<if test="conditionParamRef.staffId != null ">
${_conditionType_} a.staffId = #{${_conditionParam_}.staffId}
</if>
<if test="conditionParamRef.staffId == null">
${_conditionType_} a.staffId is null
</if>
</if>
<if test="conditionParamRef.containsKey('staffIdList') and conditionParamRef.staffIdList.size() > 0">
${_conditionType_} a.staffId in
<foreach collection="conditionParamRef.staffIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('staffIdNotList') and conditionParamRef.staffIdNotList.size() > 0">
${_conditionType_} a.staffId not in
<foreach collection="conditionParamRef.staffIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('staffIdStart') and conditionParamRef.staffIdStart != null">
${_conditionType_} a.staffId <![CDATA[ >= ]]> #{${_conditionParam_}.staffIdStart}
</if>
<if test="conditionParamRef.containsKey('staffIdEnd') and conditionParamRef.staffIdEnd != null">
${_conditionType_} a.staffId <![CDATA[ <= ]]> #{${_conditionParam_}.staffIdEnd}
</if>
<if test="conditionParamRef.containsKey('remark')">
<if test="conditionParamRef.remark != null and conditionParamRef.remark != ''">
${_conditionType_} a.remark like #{${_conditionParam_}.remark}
</if>
<if test="conditionParamRef.remark == null">
${_conditionType_} a.remark is null
</if>
</if>
<if test="conditionParamRef.containsKey('remarkList') and conditionParamRef.remarkList.size() > 0">
${_conditionType_} a.remark in
<foreach collection="conditionParamRef.remarkList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('remarkNotList') and conditionParamRef.remarkNotList.size() > 0">
${_conditionType_} a.remark not in
<foreach collection="conditionParamRef.remarkNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('createTime')">
<if test="conditionParamRef.createTime != null ">
${_conditionType_} a.createTime = #{${_conditionParam_}.createTime}
</if>
<if test="conditionParamRef.createTime == null">
${_conditionType_} a.createTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('createTimeStart') and conditionParamRef.createTimeStart != null and conditionParamRef.createTimeStart!=''">
${_conditionType_} a.createTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('createTimeEnd') and conditionParamRef.createTimeEnd != null and conditionParamRef.createTimeEnd!=''">
${_conditionType_} a.createTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.createTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('createUserId')">
<if test="conditionParamRef.createUserId != null ">
${_conditionType_} a.createUserId = #{${_conditionParam_}.createUserId}
</if>
<if test="conditionParamRef.createUserId == null">
${_conditionType_} a.createUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('createUserIdList') and conditionParamRef.createUserIdList.size() > 0">
${_conditionType_} a.createUserId in
<foreach collection="conditionParamRef.createUserIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('createUserIdNotList') and conditionParamRef.createUserIdNotList.size() > 0">
${_conditionType_} a.createUserId not in
<foreach collection="conditionParamRef.createUserIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('createUserIdStart') and conditionParamRef.createUserIdStart != null">
${_conditionType_} a.createUserId <![CDATA[ >= ]]> #{${_conditionParam_}.createUserIdStart}
</if>
<if test="conditionParamRef.containsKey('createUserIdEnd') and conditionParamRef.createUserIdEnd != null">
${_conditionType_} a.createUserId <![CDATA[ <= ]]> #{${_conditionParam_}.createUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('updateUserId')">
<if test="conditionParamRef.updateUserId != null ">
${_conditionType_} a.updateUserId = #{${_conditionParam_}.updateUserId}
</if>
<if test="conditionParamRef.updateUserId == null">
${_conditionType_} a.updateUserId is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateUserIdList') and conditionParamRef.updateUserIdList.size() > 0">
${_conditionType_} a.updateUserId in
<foreach collection="conditionParamRef.updateUserIdList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('updateUserIdNotList') and conditionParamRef.updateUserIdNotList.size() > 0">
${_conditionType_} a.updateUserId not in
<foreach collection="conditionParamRef.updateUserIdNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('updateUserIdStart') and conditionParamRef.updateUserIdStart != null">
${_conditionType_} a.updateUserId <![CDATA[ >= ]]> #{${_conditionParam_}.updateUserIdStart}
</if>
<if test="conditionParamRef.containsKey('updateUserIdEnd') and conditionParamRef.updateUserIdEnd != null">
${_conditionType_} a.updateUserId <![CDATA[ <= ]]> #{${_conditionParam_}.updateUserIdEnd}
</if>
<if test="conditionParamRef.containsKey('updateTime')">
<if test="conditionParamRef.updateTime != null ">
${_conditionType_} a.updateTime = #{${_conditionParam_}.updateTime}
</if>
<if test="conditionParamRef.updateTime == null">
${_conditionType_} a.updateTime is null
</if>
</if>
<if test="conditionParamRef.containsKey('updateTimeStart') and conditionParamRef.updateTimeStart != null and conditionParamRef.updateTimeStart!=''">
${_conditionType_} a.updateTime <![CDATA[ >= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeStart},' 00:00:00'),19),'%Y-%m-%d %k:%i:%s')
</if>
<if test="conditionParamRef.containsKey('updateTimeEnd') and conditionParamRef.updateTimeEnd != null and conditionParamRef.updateTimeEnd!=''">
${_conditionType_} a.updateTime <![CDATA[ <= ]]> STR_TO_DATE(left(concat(#{${_conditionParam_}.updateTimeEnd},' 23:59:59'),19),'%Y-%m-%d %k:%i:%s')
</if>
</sql>
<sql id="_orderCols_">
<if test="orderColList != null and !orderColList.isEmpty()">
order by
<trim suffixOverrides="," suffix="">
<foreach collection="orderColList" open="" close="" index="index" item="item" separator=",">
${item.colName} ${item.sortKind}
</foreach>
</trim>
</if>
<if test="(orderColList == null or orderColList.isEmpty()) and orderCol != null and !orderCol.isEmpty()">
order by
<trim suffixOverrides="," suffix="">
<if test="orderCol.containsKey('id')">
a.id
<if test='orderCol.id != null and "DESC".equalsIgnoreCase(orderCol.id)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('ownerId')">
a.ownerId
<if test='orderCol.ownerId != null and "DESC".equalsIgnoreCase(orderCol.ownerId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('staffId')">
a.staffId
<if test='orderCol.staffId != null and "DESC".equalsIgnoreCase(orderCol.staffId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('remark')">
a.remark
<if test='orderCol.remark != null and "DESC".equalsIgnoreCase(orderCol.remark)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createTime')">
a.createTime
<if test='orderCol.createTime != null and "DESC".equalsIgnoreCase(orderCol.createTime)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('createUserId')">
a.createUserId
<if test='orderCol.createUserId != null and "DESC".equalsIgnoreCase(orderCol.createUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateUserId')">
a.updateUserId
<if test='orderCol.updateUserId != null and "DESC".equalsIgnoreCase(orderCol.updateUserId)'>DESC</if>
,
</if>
<if test="orderCol.containsKey('updateTime')">
a.updateTime
<if test='orderCol.updateTime != null and "DESC".equalsIgnoreCase(orderCol.updateTime)'>DESC</if>
,
</if>
</trim>
</if>
</sql>
<sql id="_group_by_">
<if test="groupList != null and !groupList.isEmpty()">
GROUP BY
<trim suffixOverrides="," suffix="">
<foreach collection="groupList" open="" close="" index="index" item="item" separator=",">
${item}
</foreach>
</trim>
</if>
</sql>
</mapper>
\ No newline at end of file
...@@ -17,7 +17,17 @@ ...@@ -17,7 +17,17 @@
<result property="createUserId" column="createUserId" /> <result property="createUserId" column="createUserId" />
<result property="updateUserId" column="updateUserId" /> <result property="updateUserId" column="updateUserId" />
<result property="updateTime" column="updateTime" /> <result property="updateTime" column="updateTime" />
<collection property="windowOwnerDetailList" column="id" ofType="WindowOwnerDetailEntity" javaType="ArrayList" select="getWindowOwnerDetailByOwnerId"></collection>
</resultMap>
<resultMap type="WindowOwnerDetailEntity" id="WindowOwnerDetailEntity-Map">
<result property="id" column="id" />
<result property="ownerId" column="ownerId" />
<result property="staffId" column="staffId" />
<result property="remark" column="remark" />
<result property="createTime" column="createTime" />
<result property="createUserId" column="createUserId" />
<result property="updateUserId" column="updateUserId" />
<result property="updateTime" column="updateTime" />
</resultMap> </resultMap>
...@@ -62,6 +72,12 @@ ...@@ -62,6 +72,12 @@
</if> </if>
</trim> </trim>
</sql> </sql>
<!-- 子表所有列 -->
<sql id="_columns_sub">
<trim suffixOverrides="," suffix="">
b.id,b.ownerId,b.staffId,b.remark,b.createTime,b.createUserId,b.updateUserId,b.updateTime,
</trim>
</sql>
<!-- 新增 区分主键自增加还是业务插入 --> <!-- 新增 区分主键自增加还是业务插入 -->
<insert id="insert" parameterType="WindowOwnerEntity" useGeneratedKeys="true" keyProperty="id"> <insert id="insert" parameterType="WindowOwnerEntity" useGeneratedKeys="true" keyProperty="id">
insert into mortals_xhx_window_owner insert into mortals_xhx_window_owner
...@@ -300,6 +316,14 @@ ...@@ -300,6 +316,14 @@
</trim> </trim>
<include refid="_orderCols_"/> <include refid="_orderCols_"/>
</select> </select>
<!-- 获取子列表 -->
<select id="getWindowOwnerDetailByOwnerId" parameterType="java.lang.Long" resultMap="WindowOwnerDetailEntity-Map">
select <include refid="_columns_sub"/>
from mortals_xhx_window_owner_detail as b
<trim suffixOverrides="where" suffix="">
where b.ownerId = #{id}
</trim>
</select>
......
...@@ -29,34 +29,56 @@ Authorization: {{authToken}} ...@@ -29,34 +29,56 @@ Authorization: {{authToken}}
Content-Type: application/json Content-Type: application/json
{ {
"checkRecordId":387, "checkRecordId":702,
"staffId":305, "staffId":566,
"staffName":"78kg5e", "staffName":"b7xpn0",
"workNum":"wy77ky", "workNum":"ymsc43",
"deptId":849, "deptId":975,
"deptName":"ry3y3a", "deptName":"x9lhxh",
"attendanceGroupId":7, "attendanceGroupId":352,
"attendanceGroupName":"s7n602", "attendanceGroupName":"ijhjyv",
"attendanceDate":"1688486400000", "attendanceDate":"1689091200000",
"ruleId":418, "ruleId":714,
"ruleName":"y3gz3p", "ruleName":"k3nou3",
"subMethod":1, "subMethod":1,
"subAddType":1, "subAddType":1,
"score":0.00, "score":0.00,
"goOffTimeStr":"rjf27a", "goOffTimeStr":"3tpp9v",
"errorTime":"1688486400000", "errorTime":"1689091200000",
"actualAttendTime":"1688486400000", "actualAttendTime":"1689091200000",
"errorResult":"ysfu6y", "errorResult":"e36tyi",
"checkPerson":"w4rf2x", "checkPerson":"brd56v",
"checkTime":"1688486400000", "checkTime":"1689091200000",
"checkDesc":"30plug", "checkDesc":"dxif0b",
"checkResult":"lu4x9b", "checkResult":"5wz0wh",
"processStatus":1, "processStatus":1,
"appealDesc":"cumgvt", "appealDesc":"bhhaf6",
"appealTime":"1688486400000", "appealTime":"1689091200000",
"appealResult":2, "appealResult":2,
"remark":"n4bgtv", "remark":"owbk12",
"violationType":"1t3xtd" "violationType":"7tb1sj",
"reviewResult":378,
"reviewTime":"1689091200000",
"reviewSource":"hvc7j5",
"reviewDevice":"rbmr61",
"complainTitle":"tirz94",
"complainContent":"wtjqma",
"complainRealName":"v9550o",
"contact":"9lzrer",
"complainTime":"1689091200000",
"complainSource":"r8xzzy",
"complainDevice":"odwoei",
"goworkCode":"ac7kwy",
"goworkDepts":"90jn57",
"matterlName":"9e1tph",
"goworkTime":"1689091200000",
"irregularType":767,
"happenTime":"1689091200000",
"duration":0,
"alarmTime":"1689091200000",
"snapPath":"7r7qk4",
"irregularOtherType":754,
"performType":"yqp4d7"
} }
> {% > {%
......
...@@ -15,7 +15,6 @@ client.global.set("authToken", JSON.parse(response.body).data.token); ...@@ -15,7 +15,6 @@ client.global.set("authToken", JSON.parse(response.body).data.token);
###窗口负责人列表 ###窗口负责人列表
POST {{baseUrl}}/window/owner/list POST {{baseUrl}}/window/owner/list
Authorization: {{authToken}}
Content-Type: application/json Content-Type: application/json
{ {
...@@ -31,12 +30,12 @@ Content-Type: application/json ...@@ -31,12 +30,12 @@ Content-Type: application/json
{ {
"deptId":0, "deptId":0,
"deptName":"idn5ru", "deptName":"b2vbef",
"name":"5kk6au", "name":"wjrhid",
"number":"xgrmfn", "number":"10uobg",
"phone":"qjnd6f", "phone":"cywvqa",
"windowCount":338, "windowCount":32,
"remark":"gobsbz", "remark":"7dryt2",
} }
> {% > {%
...@@ -45,12 +44,10 @@ client.global.set("WindowOwner_id", JSON.parse(response.body).data.id); ...@@ -45,12 +44,10 @@ client.global.set("WindowOwner_id", JSON.parse(response.body).data.id);
###窗口负责人查看 ###窗口负责人查看
GET {{baseUrl}}/window/owner/info?id={{WindowOwner_id}} GET {{baseUrl}}/window/owner/info?id={{WindowOwner_id}}
Authorization: {{authToken}}
Accept: application/json Accept: application/json
###窗口负责人编辑 ###窗口负责人编辑
GET {{baseUrl}}/window/owner/edit?id={{WindowOwner_id}} GET {{baseUrl}}/window/owner/edit?id={{WindowOwner_id}}
Authorization: {{authToken}}
Accept: application/json Accept: application/json
......
###登录
POST {{baseUrl}}/login/login
Content-Type: application/json
{
"loginName":"admin",
"password":"admin",
"securityCode":"8888"
}
> {%
client.global.set("SmsSet_id", JSON.parse(response.body).data.id);
client.global.set("authToken", JSON.parse(response.body).data.token);
%}
###窗口负责人详细列表
POST {{baseUrl}}/window/owner/detail/list
Content-Type: application/json
{
"page":1,
"size":10
}
###窗口负责人详细更新与保存
POST {{baseUrl}}/window/owner/detail/save
Authorization: {{authToken}}
Content-Type: application/json
{
"ownerId":0,
"staffId":0,
"remark":"14lr1t",
}
> {%
client.global.set("WindowOwnerDetail_id", JSON.parse(response.body).data.id);
%}
###窗口负责人详细查看
GET {{baseUrl}}/window/owner/detail/info?id={{WindowOwnerDetail_id}}
Accept: application/json
###窗口负责人详细编辑
GET {{baseUrl}}/window/owner/detail/edit?id={{WindowOwnerDetail_id}}
Accept: application/json
###窗口负责人详细删除
GET {{baseUrl}}/window/owner/detail/delete?id={{WindowOwnerDetail_id}}
Authorization: {{authToken}}
Accept: application/json
...@@ -420,3 +420,86 @@ ALTER TABLE mortals_xhx_staff_perform_stat ADD COLUMN `totalAddScore` decimal(10 ...@@ -420,3 +420,86 @@ ALTER TABLE mortals_xhx_staff_perform_stat ADD COLUMN `totalAddScore` decimal(10
ALTER TABLE mortals_xhx_staff_perform_stat ADD COLUMN `totalSubScore` decimal(10,2) DEFAULT 0.0 COMMENT '员工绩效减分总分数汇总' AFTER totalAddScore; ALTER TABLE mortals_xhx_staff_perform_stat ADD COLUMN `totalSubScore` decimal(10,2) DEFAULT 0.0 COMMENT '员工绩效减分总分数汇总' AFTER totalAddScore;
ALTER TABLE mortals_xhx_staff_perform_stat ADD COLUMN `complainScoreAdd` decimal(10,2) DEFAULT 0.0 COMMENT '员工绩效指标增加分数' AFTER totalSubScore; ALTER TABLE mortals_xhx_staff_perform_stat ADD COLUMN `complainScoreAdd` decimal(10,2) DEFAULT 0.0 COMMENT '员工绩效指标增加分数' AFTER totalSubScore;
ALTER TABLE mortals_xhx_staff_perform_stat ADD COLUMN `complainScoreSub` decimal(10,2) DEFAULT 0.0 COMMENT '员工绩效指标扣减分数' AFTER complainScoreAdd; ALTER TABLE mortals_xhx_staff_perform_stat ADD COLUMN `complainScoreSub` decimal(10,2) DEFAULT 0.0 COMMENT '员工绩效指标扣减分数' AFTER complainScoreAdd;
-- ----------------------------
-- 绩效记录申诉信息表
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_perform_attend_appeal`;
CREATE TABLE mortals_xhx_perform_attend_appeal(
`id` bigint(20) AUTO_INCREMENT COMMENT '序号,主键,自增长',
`checkRecordId` bigint(20) COMMENT '核查记录Id',
`staffId` bigint(20) COMMENT '员工ID',
`staffName` varchar(64) NOT NULL COMMENT '员工姓名',
`workNum` varchar(128) COMMENT '工号',
`deptId` bigint(20) COMMENT '所属部门',
`deptName` varchar(128) COMMENT '所属部门名称',
`attendanceGroupId` bigint(20) COMMENT '所属考勤组ID',
`attendanceGroupName` varchar(128) COMMENT '所属考勤组名称',
`attendanceDate` datetime COMMENT '扣分时间',
`ruleId` bigint(20) COMMENT '绩效规则id',
`ruleName` varchar(128) COMMENT '规则名称',
`subMethod` tinyint(1) DEFAULT '1' COMMENT '扣分方式(1.系统自动,2.人工添加,3.大厅巡查)',
`subAddType` tinyint(1) DEFAULT '1' COMMENT '增减类型(1.增加,2.扣除)',
`score` decimal(10,2) DEFAULT '0.00' COMMENT '扣分或增加分值',
`goOffTimeStr` varchar(128) COMMENT '上下班时间',
`errorTime` datetime COMMENT '异常时间',
`actualAttendTime` datetime COMMENT '实际打卡时间',
`errorResult` varchar(128) COMMENT '异常处理结果',
`checkPerson` varchar(128) COMMENT '核查人员',
`checkTime` datetime COMMENT '核查时间',
`checkDesc` varchar(512) COMMENT '核查说明',
`checkResult` varchar(128) COMMENT '核查结果',
`processStatus` tinyint(1) DEFAULT '1' COMMENT '处理状态(1.未处理,2.已处理)',
`appealDesc` varchar(128) COMMENT '申诉说明',
`appealTime` datetime COMMENT '申诉时间',
`appealResult` tinyint(1) DEFAULT '2' COMMENT '申诉结果(1.通过,2.不通过)',
`remark` varchar(512) COMMENT '说明',
`violationType` varchar(64) COMMENT '违规类型,',
`reviewResult` tinyint(1) COMMENT '评价结果(1.非常不满意,2.差评)',
`reviewTime` datetime COMMENT '评价时间',
`reviewSource` varchar(64) COMMENT '评价来源(窗口评价系统,导视系统,自助服务系统,微官网,其它)',
`reviewDevice` varchar(128) COMMENT '评价设备',
`complainTitle` varchar(128) COMMENT '投诉标题',
`complainContent` varchar(512) COMMENT '投诉内容',
`complainRealName` varchar(128) COMMENT '投诉人真实姓名',
`contact` varchar(128) COMMENT '联系电话',
`complainTime` datetime COMMENT '投诉时间',
`complainSource` varchar(128) COMMENT '投诉来源',
`complainDevice` varchar(128) COMMENT '投诉设备',
`goworkCode` varchar(128) COMMENT '办件编码',
`goworkDepts` varchar(512) COMMENT '办件所属部门',
`matterlName` varchar(256) COMMENT '事项名称',
`goworkTime` datetime COMMENT '办理时间',
`irregularType` tinyint(1) COMMENT '违规类型(1.脱岗,2.离岗,3.玩手机,4.睡觉)',
`happenTime` datetime COMMENT '发生时间',
`duration` int(9) DEFAULT '0' COMMENT '持续时间,秒',
`alarmTime` datetime COMMENT '报警时间',
`snapPath` varchar(255) COMMENT '图片凭证地址',
`irregularOtherType` tinyint(1) COMMENT '违规类型(1.工作纪律)',
`performType` varchar(64) COMMENT '绩效类型【attend:考勤绩效,review:评价差评绩效,complain:评价投诉绩效,gowork:办件绩效,effect:效能绩效,other:其它绩效】',
`createUserId` bigint(20) NOT NULL COMMENT '创建用户',
`createTime` datetime NOT NULL COMMENT '创建时间',
`updateUserId` bigint(20) COMMENT '更新用户',
`updateTime` datetime COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='绩效记录申诉信息';
-- ----------------------------
-- 窗口负责人详细表
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_window_owner_detail`;
CREATE TABLE mortals_xhx_window_owner_detail(
`id` bigint(20) AUTO_INCREMENT COMMENT '序号,主键,自增长',
`ownerId` bigint(20) DEFAULT '0' COMMENT '负责人Id',
`staffId` bigint(20) DEFAULT '0' COMMENT '员工id号',
`remark` varchar(255) COMMENT '备注',
`createTime` datetime COMMENT '创建时间',
`createUserId` bigint(20) COMMENT '创建用户',
`updateUserId` bigint(20) COMMENT '更新用户',
`updateTime` datetime COMMENT '修改时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='窗口负责人详细';
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