diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/att/entity/AttDetailBean.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/att/entity/AttDetailBean.java index 5493d91..1399798 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/att/entity/AttDetailBean.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/att/entity/AttDetailBean.java @@ -107,6 +107,9 @@ public class AttDetailBean { */ private String endDate; + //所属月份 + private String attCurrentMonth; + public void setParams(Map params) { this.params = params; diff --git a/bonus-modules/bonus-system/src/main/resources/mapper/att/AttDetailByMonthMapper.xml b/bonus-modules/bonus-system/src/main/resources/mapper/att/AttDetailByMonthMapper.xml index 8663343..8aa2c11 100644 --- a/bonus-modules/bonus-system/src/main/resources/mapper/att/AttDetailByMonthMapper.xml +++ b/bonus-modules/bonus-system/src/main/resources/mapper/att/AttDetailByMonthMapper.xml @@ -1,257 +1,253 @@ + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - + - + - - - - - + select amr.user_id as userId, - amr.name as name, + name as name, amr.org_id as orgId, amr.org_name as orgName, - amr.att_current_month as attCurrentMonth, - coalesce(required_days,0) as requiredDays, - coalesce(normal_num,0) as normalNum, - coalesce(late_num,0) as lateNum, - coalesce(early_num,0) as earlyNum, - coalesce(skipping_num,0) as skippingNum, - coalesce(leave_num,0) as leaveNum, - coalesce(address_error_num,0) as addressErrorNum, - coalesce(ein_error_num,0) as einErrorNum - from att_month_report amr - left join sys_organization so on amr.org_id = so.id and so.is_active = 1 - where amr.is_active = 1 - and amr.required_days != amr.normal_num - and so.parent_id = 2 - - and amr.att_current_month = #{attCurrentMonth} - - - and INSTR(amr.name,#{name}) > 0 - - group by user_id - + att_current_month as attCurrentMonth, + count(awa.user_id) as outCount, + coalesce(required_days,0) as requiredDays, + coalesce(normal_num,0) as normalNum, + coalesce(late_num,0) as lateNum, + coalesce(early_num,0) as earlyNum, + coalesce(skipping_num,0) as skippingNum, + coalesce(leave_num,0) as leaveNum, + coalesce(address_error_num,0) as addressErrorNum, + coalesce(ein_error_num,0) as einErrorNum + from att_month_report amr + LEFT JOIN att_work_abnormal awa ON LOCATE(amr.att_current_month,awa.att_current_day) and awa.user_id = + amr.user_id + where amr.is_active = 1 + and amr.required_days != amr.normal_num + + and amr.att_current_month = #{attCurrentMonth} + + + and amr.org_id = #{orgId} + + + and INSTR(amr.name,#{name}) > 0 + + GROUP BY amr.att_current_month,amr.user_id + - + - + - + - + - + - + + + + +