Commit 43fee905 authored by 赵啸非's avatar 赵啸非

Merge remote-tracking branch 'origin/master'

parents 85f1e265 10f68391
...@@ -50,6 +50,44 @@ ...@@ -50,6 +50,44 @@
:key="value" :key="value"
></el-option> ></el-option>
</el-select> </el-select>
<el-select
v-model="form[item.name]"
:filterable="item.filterable"
:multiple="item.multiple"
:clearable="true"
@change="salaChange"
@clear="item.clear && item.clear"
v-if="item.type === 'selectSalaId'"
:placeholder="'请选择' + item.label"
>
<el-option
:label="label.deptName"
:value="label.id"
v-for="(label, value) in salaArr"
:key="value"
></el-option>
</el-select>
<el-select
v-model="form[item.name]"
:filterable="item.filterable"
:multiple="item.multiple"
:clearable="true"
@clear="item.clear && item.clear"
v-if="item.type === 'selectDeptId'"
:placeholder="'请选择' + item.label"
>
<!-- <el-option
label=""
value=""
v-if="!item.multiple && !item.notShowAll"
></el-option> -->
<el-option
:label="label.deptName"
:value="label.id"
v-for="(label, value) in deptArr"
:key="value"
></el-option>
</el-select>
<el-select <el-select
v-model="form[item.name]" v-model="form[item.name]"
...@@ -214,9 +252,41 @@ export default { ...@@ -214,9 +252,41 @@ export default {
this.$route.name == "attendance/stat/list" this.$route.name == "attendance/stat/list"
? (this.visible = true) ? (this.visible = true)
: (this.visible = false); : (this.visible = false);
this.$route.name == "attendance/stat/list" ? this.getArr() : "";
this.initForm(this.$route.query); this.initForm(this.$route.query);
}, },
methods: { methods: {
salaChange() {
this.$get("/dept/getDeptBySalaId", { salaId: this.form.salaId })
.then((res) => {
if (res.code == 1) {
this.deptArr = res.data.data;
}
})
.catch((error) => {
this.$message.error(error.message);
});
},
getArr() {
this.$get("/dept/getSalaList")
.then((res) => {
if (res.code == 1) {
this.salaArr = res.data.data;
}
})
.catch((error) => {
this.$message.error(error.message);
});
this.$get("/dept/getDeptBySalaId")
.then((res) => {
if (res.code == 1) {
this.deptArr = res.data.data;
}
})
.catch((error) => {
this.$message.error(error.message);
});
},
resetTable() { resetTable() {
let { path, query } = this.$route; let { path, query } = this.$route;
if (this.form.attendanceDateStart && this.form.attendanceDateEnd) { if (this.form.attendanceDateStart && this.form.attendanceDateEnd) {
...@@ -541,12 +611,14 @@ export default { ...@@ -541,12 +611,14 @@ export default {
computed: {}, computed: {},
data() { data() {
return { return {
downloadUrl:false, downloadUrl: false,
form: { form: {
// groupList: [], // groupList: [],
}, },
remoteOptions: {}, remoteOptions: {},
visible: false, visible: false,
salaArr: [],
deptArr: [],
}; };
}, },
}; };
......
...@@ -375,10 +375,16 @@ export default { ...@@ -375,10 +375,16 @@ export default {
showType: "tableSelect", showType: "tableSelect",
isshowTabPane: true, isshowTabPane: true,
search: [ search: [
{
name: "salaId",
type: "selectSalaId",
label: "大厅",
fuzzy: false,
},
{ {
name: "deptId", name: "deptId",
type: "select", type: "selectDeptId",
label: "全部部门", label: "部门",
fuzzy: false, fuzzy: false,
}, },
// { // {
...@@ -437,6 +443,7 @@ export default { ...@@ -437,6 +443,7 @@ export default {
width: 100, width: 100,
show: true, show: true,
}, },
{ label: "大厅", prop: "salaName", show: true },
{ label: "部门", prop: "deptName", show: true }, { label: "部门", prop: "deptName", show: true },
{ {
label: "应到", label: "应到",
......
...@@ -31,6 +31,10 @@ public class AttendanceSummaryQuery { ...@@ -31,6 +31,10 @@ public class AttendanceSummaryQuery {
* 所属部门 * 所属部门
*/ */
private Long deptId; private Long deptId;
/**
* 所属大厅
*/
private Long salaId;
private Integer page; private Integer page;
private Integer size; private Integer size;
......
...@@ -448,18 +448,22 @@ public class AttendanceStatServiceImpl extends AbstractCRUDServiceImpl<Attendanc ...@@ -448,18 +448,22 @@ public class AttendanceStatServiceImpl extends AbstractCRUDServiceImpl<Attendanc
leaveTime = oneDay; leaveTime = oneDay;
} }
} }
temp.setGoTimes(0); //默认只要有请假,当天就不算全勤 //temp.setGoTimes(0); //默认只要有请假,当天就不算全勤
temp.setMorningTimes(0); //有请假则清空当天缺卡次数 //temp.setMorningTimes(0); //有请假则清空当天缺卡次数
temp.setLateTimes(0); //temp.setLateTimes(0);
temp.setOvertimeTimes(0); //temp.setOvertimeTimes(0);
LeaveTypeEnum leaveTypeEnum = LeaveTypeEnum.getByValue(item.getLeaveType()); LeaveTypeEnum leaveTypeEnum = LeaveTypeEnum.getByValue(item.getLeaveType());
if (leaveTypeEnum == null) { if (leaveTypeEnum == null) {
leaveTypeEnum = LeaveTypeEnum.其他; //默认为事假 leaveTypeEnum = LeaveTypeEnum.事假; //默认为事假
} }
attendanceSummary = leaveTypeEnum.getDesc() + "*1"; attendanceSummary = leaveTypeEnum.getDesc() + "*1";
switch (leaveTypeEnum) { switch (leaveTypeEnum) {
case 事假: case 事假:
temp.setPersonalLeave(leaveTime); temp.setPersonalLeave(leaveTime);
temp.setGoTimes(0); //只有事假,当天不算全勤
temp.setMorningTimes(0); //有请假则清空当天缺卡次数
temp.setLateTimes(0);
temp.setOvertimeTimes(0);
break; break;
case 调休: case 调休:
temp.setCompensatedLeaveDays(leaveTime); temp.setCompensatedLeaveDays(leaveTime);
......
...@@ -11,6 +11,8 @@ ...@@ -11,6 +11,8 @@
s.deptId, s.deptId,
s.deptName, s.deptName,
s.phoneNumer, s.phoneNumer,
s.salaId,
s.salaName,
count(1) as workDays, count(1) as workDays,
ROUND(IFNULL(sum(s.goTimes),0)/count(1),4) as attendanceRate, ROUND(IFNULL(sum(s.goTimes),0)/count(1),4) as attendanceRate,
sum(s.goTimes) AS goTimes, sum(s.goTimes) AS goTimes,
...@@ -54,6 +56,7 @@ ...@@ -54,6 +56,7 @@
<if test="staffName != null and staffName!=''"> AND s.staffName like #{staffName}</if> <if test="staffName != null and staffName!=''"> AND s.staffName like #{staffName}</if>
<if test="phoneNumer != null and phoneNumer!=''"> AND s.phoneNumer like #{phoneNumer}</if> <if test="phoneNumer != null and phoneNumer!=''"> AND s.phoneNumer like #{phoneNumer}</if>
<if test="deptId != null and deptId!=''"> AND s.deptId = #{deptId}</if> <if test="deptId != null and deptId!=''"> AND s.deptId = #{deptId}</if>
<if test="salaId != null and salaId!=''"> AND s.salaId = #{salaId}</if>
<if test="idList != null and idList.size>0"> <if test="idList != null and idList.size>0">
and s.id in and s.id in
<foreach collection="idList" open="(" close=")" index="index" item="item" separator=","> <foreach collection="idList" open="(" close=")" index="index" item="item" separator=",">
...@@ -78,6 +81,8 @@ ...@@ -78,6 +81,8 @@
s.deptId, s.deptId,
s.deptName, s.deptName,
s.phoneNumer, s.phoneNumer,
s.salaId,
s.salaName,
ROUND(IFNULL(sum(s.goTimes),0)/count(1),4) as attendanceRate, ROUND(IFNULL(sum(s.goTimes),0)/count(1),4) as attendanceRate,
sum(s.goTimes) AS goTimes, sum(s.goTimes) AS goTimes,
sum(s.morningTimes) AS morningTimes, sum(s.morningTimes) AS morningTimes,
...@@ -120,6 +125,13 @@ ...@@ -120,6 +125,13 @@
<if test="staffName != null and staffName!=''"> AND s.staffName like #{staffName}</if> <if test="staffName != null and staffName!=''"> AND s.staffName like #{staffName}</if>
<if test="phoneNumer != null and phoneNumer!=''"> AND s.phoneNumer like #{phoneNumer}</if> <if test="phoneNumer != null and phoneNumer!=''"> AND s.phoneNumer like #{phoneNumer}</if>
<if test="deptId != null and deptId!=''"> AND s.deptId = #{deptId}</if> <if test="deptId != null and deptId!=''"> AND s.deptId = #{deptId}</if>
<if test="salaId != null and salaId!=''"> AND s.salaId = #{salaId}</if>
<if test="idList != null and idList.size>0">
and s.id in
<foreach collection="idList" open="(" close=")" index="index" item="item" separator=",">
#{item}
</foreach>
</if>
GROUP BY GROUP BY
s.staffId, s.staffId,
s.staffName, s.staffName,
......
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