diff --git a/src/main/java/cn/timer/api/controller/kqgl/TimeCardController.java b/src/main/java/cn/timer/api/controller/kqgl/TimeCardController.java index fa34881..a56ccf8 100644 --- a/src/main/java/cn/timer/api/controller/kqgl/TimeCardController.java +++ b/src/main/java/cn/timer/api/controller/kqgl/TimeCardController.java @@ -95,6 +95,7 @@ import cn.timer.api.dto.kqmk.AttendanceAssistantDto; import cn.timer.api.dto.kqmk.AttendanceSummaryQueryDto; import cn.timer.api.dto.kqmk.AttqueryCriteriaDto; import cn.timer.api.dto.kqmk.CompensateDto; +import cn.timer.api.dto.kqmk.DailyDetailsDto; import cn.timer.api.dto.kqmk.EmployeeLeaveBalanceDto; import cn.timer.api.dto.kqmk.IndividualOvertimeRuleDto; import cn.timer.api.dto.kqmk.KqglAssoLeaveRulesDto; @@ -2033,6 +2034,38 @@ public class TimeCardController { return ResultUtil.data(pageAs, listAs, "操作成功!"); } + @PostMapping(value = "/Daily_details") + @ApiOperation(value = "获取考勤每日详情数据", httpMethod = "POST", notes = "接口发布说明") + public Result<Object> DailydetailsList(@CurrentUser UserBean userBean, @Validated @RequestBody AttendanceSummaryQueryDto attesummqueto) throws ParseException { + + IPage<DailyDetailsDto> page = new Page<DailyDetailsDto>( + attesummqueto.getCurrentPage() == null ? 1 : attesummqueto.getCurrentPage(), + attesummqueto.getTotalPage() == null ? 10 : attesummqueto.getTotalPage()); + attesummqueto.setOrgCode(userBean.getOrgCode()); + + String year = null,month = null,time = null; + if(attesummqueto.getTimes() != null && !("").equals(attesummqueto.getTimes())) { + year = attesummqueto.getTimes().substring(0, 4); + month = attesummqueto.getTimes().substring(5, 7); + time = attesummqueto.getTimes(); + }else { + year = new SimpleDateFormat("yyyy").format(new Date()).toString(); + month = new SimpleDateFormat("MM").format(new Date()).toString(); + + time = new SimpleDateFormat("yyyy-MM-dd").format(new Date()).toString(); + } + + attesummqueto.setYear(year); + attesummqueto.setMonth(month); + attesummqueto.setTimes(time); + // 缺-部门id 搜索 + IPage<DailyDetailsDto> pageAs = kqglassomonthpunchsummarymapper.Dailydetails(page, attesummqueto); + List<DailyDetailsDto> listAs = pageAs.getRecords(); + return ResultUtil.data(pageAs, listAs, "操作成功!"); + + + } + // @GetMapping(value = "/summary_report") // @ApiOperation(value = "考勤汇总报表(暂时不用)", httpMethod = "GET", notes = "接口发布说明") diff --git a/src/main/java/cn/timer/api/dao/kqmk/KqglAssoMonthPunchSummaryMapper.java b/src/main/java/cn/timer/api/dao/kqmk/KqglAssoMonthPunchSummaryMapper.java index a4b657b..b3dca65 100644 --- a/src/main/java/cn/timer/api/dao/kqmk/KqglAssoMonthPunchSummaryMapper.java +++ b/src/main/java/cn/timer/api/dao/kqmk/KqglAssoMonthPunchSummaryMapper.java @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import cn.timer.api.bean.kqmk.KqglAssoMonthPunchSummary; import cn.timer.api.dto.kqmk.AttendanceSummaryQueryDto; +import cn.timer.api.dto.kqmk.DailyDetailsDto; import cn.timer.api.dto.kqmk.KqglAssoMonthPunchSummaryDto; /** @@ -19,4 +20,6 @@ import cn.timer.api.dto.kqmk.KqglAssoMonthPunchSummaryDto; public interface KqglAssoMonthPunchSummaryMapper extends BaseMapper<KqglAssoMonthPunchSummary> { IPage<KqglAssoMonthPunchSummaryDto> AttendanceSummaryData(IPage<KqglAssoMonthPunchSummaryDto> page,@Param("param") AttendanceSummaryQueryDto attendancesummaryquerydto); + + IPage<DailyDetailsDto> Dailydetails(IPage<DailyDetailsDto> page,@Param("param") AttendanceSummaryQueryDto attendancesummaryquerydto); } diff --git a/src/main/java/cn/timer/api/dto/kqmk/DailyDetailsDto.java b/src/main/java/cn/timer/api/dto/kqmk/DailyDetailsDto.java new file mode 100644 index 0000000..6b1e7bc --- /dev/null +++ b/src/main/java/cn/timer/api/dto/kqmk/DailyDetailsDto.java @@ -0,0 +1,60 @@ +package cn.timer.api.dto.kqmk; + +import java.util.List; + +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class DailyDetailsDto { + + private String name;// 姓名 + private Integer num;// 工号 + private String dept;// 部门 + private String post;// 岗位 + private String attname;// 考勤组名称 + private String attdate;// 考勤日期 + private Integer userid;// 用户ID + private String data;// 日期 + private String sbdk1;// 上班1打卡时间 + private Integer sbdk1jg;// 上班1打卡结果 + private String xbdk1;// 下班1打卡时间 + private Integer xbdk1jg;// 下班1打卡结果 + private String sbdk2;// 上班2打卡时间 + private Integer sbdk2jg;// 上班2打卡结果 + private String xbdk2;// 下班2打卡时间 + private Integer xbdk2jg;// 下班2打卡结果 + private String sbdk3;// 上班3打卡时间 + private Integer sbdk3jg;// 上班3打卡结果 + private String xbdk3;// 下班3打卡时间 + private Integer xbdk3jg;// 下班3打卡结果 + private Integer ydkcs;// 应打卡次数 + private Integer gzsc;// 工作时长 + private Integer qyid;// 企业id + private String dksj;// 打卡时间 + private Integer yzcdcs;// 严重迟到次数 + private Integer yzcdsc;// 严重迟到时长(分钟) + private Integer kgcdfzs;// 旷工迟到次数 + private String daysonduty;// 应出勤天数 + private String daysoff;// 休息天数 + private String lengthbusinesstrip;// 出差时长 + private String timeout;// 外出时长 + private String totalovertimehours;// 加班总时长 + private String workingturncompenleave;// 工作日(转调休) + private String restturncompenleave;// 休息日(转调休) + private String holidayturncompenleave;// 节假日(转调休) + private String workingtransferovertime;// 工作日(转加班费) + private String resttransferovertime;// 休息日(转加班费) + private String holidaytransferovertime;// 节假日(转加班费) + private Integer leaverulesid;// + private String duration;// + + @ApiModelProperty(value = "表数据", example = "字段说明") + List<BalanceSheetDataDto> balanceTo; +} diff --git a/src/main/java/cn/timer/api/dto/kqmk/KqglAssoMonthPunchSummaryDto.java b/src/main/java/cn/timer/api/dto/kqmk/KqglAssoMonthPunchSummaryDto.java index 9501d47..b651aa4 100644 --- a/src/main/java/cn/timer/api/dto/kqmk/KqglAssoMonthPunchSummaryDto.java +++ b/src/main/java/cn/timer/api/dto/kqmk/KqglAssoMonthPunchSummaryDto.java @@ -43,6 +43,8 @@ public class KqglAssoMonthPunchSummaryDto { @ApiModelProperty(value = "考勤组id 考勤组id", example = "101") private Integer attGroup; + + private String attname; @ApiModelProperty(value = "班次id 班次id", example = "101") private Integer shift; diff --git a/src/main/resources/mapping/kqmk/KqglAssoMonthPunchSummaryMapper.xml b/src/main/resources/mapping/kqmk/KqglAssoMonthPunchSummaryMapper.xml index cf9b121..bb6e5c9 100644 --- a/src/main/resources/mapping/kqmk/KqglAssoMonthPunchSummaryMapper.xml +++ b/src/main/resources/mapping/kqmk/KqglAssoMonthPunchSummaryMapper.xml @@ -78,6 +78,7 @@ <result column="dept" property="dept" /> <result column="post" property="post" /> <result column="att_group" property="attGroup" /> + <result column="attname" property="attname" /> <result column="shift" property="shift" /> <result column="days_on_duty" property="daysOnDuty" /> <result column="actual_att_days" property="actualAttDays" /> @@ -138,84 +139,64 @@ <result column="org_code" property="orgCode" /> <result column="last_modified" property="lastModified" /> - - <collection property="balanceTo" ofType="cn.timer.api.dto.kqmk.BalanceSheetDataDto"> <result column="leaverulesid" property="leaverulesid"/> <result column="balancedays" property="balancedays"/> </collection> </resultMap> + + <resultMap id="DailyDetailsMap" type="cn.timer.api.dto.kqmk.DailyDetailsDto" > + <result column="name" property="name" /> + <result column="num" property="num" /> + <result column="dept" property="dept" /> + <result column="post" property="post" /> + <result column="attname" property="attname" /> + <result column="attdate" property="attdate" /> + <result column="userid" property="userid" /> + <result column="data" property="data" /> + <result column="sbdk1" property="sbdk1" /> + <result column="sbdk1jg" property="sbdk1jg" /> + <result column="xbdk1" property="xbdk1" /> + <result column="xbdk1jg" property="xbdk1jg" /> + <result column="sbdk2" property="sbdk2" /> + <result column="sbdk2jg" property="sbdk2jg" /> + <result column="xbdk2" property="xbdk2" /> + <result column="xbdk2jg" property="xbdk2jg" /> + <result column="sbdk3" property="sbdk3" /> + <result column="sbdk3jg" property="sbdk3jg" /> + <result column="xbdk3" property="xbdk3" /> + <result column="xbdk3jg" property="xbdk3jg" /> + <result column="ydkcs" property="ydkcs" /> + <result column="gzsc" property="gzsc" /> + <result column="qyid" property="qyid" /> + <result column="dksj" property="dksj" /> + <result column="yzcdcs" property="yzcdcs" /> + <result column="yzcdsc" property="yzcdsc" /> + <result column="kgcdfzs" property="kgcdfzs" /> + <result column="daysonduty" property="daysonduty" /> + <result column="daysoff" property="daysoff" /> + <result column="lengthbusinesstrip" property="lengthbusinesstrip" /> + <result column="timeout" property="timeout" /> + <result column="totalovertimehours" property="totalovertimehours" /> + <result column="workingturncompenleave" property="workingturncompenleave" /> + <result column="restturncompenleave" property="restturncompenleave" /> + <result column="holidayturncompenleave" property="holidayturncompenleave" /> + <result column="workingtransferovertime" property="workingtransferovertime" /> + <result column="resttransferovertime" property="resttransferovertime" /> + <result column="holidaytransferovertime" property="holidaytransferovertime" /> + <result column="leaverulesid" property="leaverulesid" /> + <result column="duration" property="duration" /> + + <collection property="balanceTo" ofType="cn.timer.api.dto.kqmk.BalanceSheetDataDto"> + <result column="leaverulesid" property="leaverulesid"/> + <result column="balancedays" property="balancedays"/> + </collection> + </resultMap> - <sql id="Base_Column_List"> - id, - name, - num, - dept, - post, - att_group, - shift, - days_on_duty, - actual_att_days, - days_off, - working_hours, - late_times, - late_hours, - serious_late_times, - serious_late_hours, - absen_late_times, - early_leave_times, - length_early_leave, - number_work_card_shortage, - number_duty_card_shortage, - absenteeism_days, - length_business_trip, - time_out, - total_overtime_hours, - working_turn_compen_leave, - rest_turn_compen_leave, - holiday_turn_compen_leave, - working_transfer_overtime, - rest_transfer_overtime, - holiday_transfer_overtime, - day1, - day2, - day3, - day4, - day5, - day6, - day7, - day8, - day9, - day10, - day11, - day12, - day13, - day14, - day15, - day16, - day17, - day18, - day19, - day20, - day21, - day22, - day23, - day24, - day25, - day26, - day27, - day28, - day29, - day30, - day31, - belong_year, - belong_month, - org_code, - last_modified - </sql> <select id="AttendanceSummaryData" resultMap="SummarydataMap"> select sum.*, + (select kqz.name from kqgl_main_kqz kqz where kqz.id = sum.att_group) as attname, yz.leaverulesid as leaverulesid, yz.duration as balancedays from kqgl_asso_month_punch_summary sum @@ -223,13 +204,17 @@ hz.user_id, hz.duration FROM kqgl_asso_leave_rules les - LEFT JOIN (select rel.user_id,rel.leave_type_id,SUM(rel.duration) as duration - from kqgl_asso_relation_summary rel - where rel.approval_type = 2 - and rel.app_time >= #{param.staapptime} - and rel.app_time <= #{param.endapptime} - GROUP BY rel.user_id,rel.leave_type_id - ) as hz on hz.leave_type_id = les.id + LEFT JOIN (select ry.user_id,ry.leave_type_id,SUM(ry.duration) as duration + from ( + select rel.user_id,rel.leave_type_id,rel.duration + from kqgl_asso_relation_summary rel + where rel.approval_type = 2 + and rel.app_time >= #{param.staapptime} + and rel.app_time <= #{param.endapptime} + GROUP BY rel.user_id,rel.leave_type_id,rel.duration + ) as ry + GROUP BY ry.user_id,ry.leave_type_id + ) as hz on hz.leave_type_id = les.id WHERE les.org_code = #{param.orgCode} AND (les.leave_type = 2 OR les.is_open = 1) ) as yz on yz.user_id = sum.num @@ -246,494 +231,84 @@ </select> - <!-- - - <insert id="insert" useGeneratedKeys="true" keyColumn="id" parameterType="cn.timer.api.bean.kqmk.KqglAssoMonthPunchSummary"> - INSERT INTO kqgl_asso_month_punch_summary - <trim prefix="(" suffix=")" suffixOverrides=","> - <if test ='null != name'> - name, - </if> - <if test ='null != num'> - num, - </if> - <if test ='null != dept'> - dept, - </if> - <if test ='null != post'> - post, - </if> - <if test ='null != attGroup'> - att_group, - </if> - <if test ='null != shift'> - shift, - </if> - <if test ='null != daysOnDuty'> - days_on_duty, - </if> - <if test ='null != actualAttDays'> - actual_att_days, - </if> - <if test ='null != daysOff'> - days_off, - </if> - <if test ='null != workingHours'> - working_hours, - </if> - <if test ='null != lateTimes'> - late_times, - </if> - <if test ='null != lateHours'> - late_hours, - </if> - <if test ='null != seriousLateTimes'> - serious_late_times, - </if> - <if test ='null != seriousLateHours'> - serious_late_hours, - </if> - <if test ='null != absenLateTimes'> - absen_late_times, - </if> - <if test ='null != earlyLeaveTimes'> - early_leave_times, - </if> - <if test ='null != lengthEarlyLeave'> - length_early_leave, - </if> - <if test ='null != numberWorkCardShortage'> - number_work_card_shortage, - </if> - <if test ='null != numberDutyCardShortage'> - number_duty_card_shortage, - </if> - <if test ='null != absenteeismDays'> - absenteeism_days, - </if> - <if test ='null != lengthBusinessTrip'> - length_business_trip, - </if> - <if test ='null != timeOut'> - time_out, - </if> - <if test ='null != totalOvertimeHours'> - total_overtime_hours, - </if> - <if test ='null != workingTurnCompenLeave'> - working_turn_compen_leave, - </if> - <if test ='null != restTurnCompenLeave'> - rest_turn_compen_leave, - </if> - <if test ='null != holidayTurnCompenLeave'> - holiday_turn_compen_leave, - </if> - <if test ='null != workingTransferOvertime'> - working_transfer_overtime, - </if> - <if test ='null != restTransferOvertime'> - rest_transfer_overtime, - </if> - <if test ='null != holidayTransferOvertime'> - holiday_transfer_overtime, - </if> - <if test ='null != day1'> - day1, - </if> - <if test ='null != day2'> - day2, - </if> - <if test ='null != day3'> - day3, - </if> - <if test ='null != day4'> - day4, - </if> - <if test ='null != day5'> - day5, - </if> - <if test ='null != day6'> - day6, - </if> - <if test ='null != day7'> - day7, - </if> - <if test ='null != day8'> - day8, - </if> - <if test ='null != day9'> - day9, - </if> - <if test ='null != day10'> - day10, - </if> - <if test ='null != day11'> - day11, - </if> - <if test ='null != day12'> - day12, - </if> - <if test ='null != day13'> - day13, - </if> - <if test ='null != day14'> - day14, - </if> - <if test ='null != day15'> - day15, - </if> - <if test ='null != day16'> - day16, - </if> - <if test ='null != day17'> - day17, - </if> - <if test ='null != day18'> - day18, - </if> - <if test ='null != day19'> - day19, - </if> - <if test ='null != day20'> - day20, - </if> - <if test ='null != day21'> - day21, - </if> - <if test ='null != day22'> - day22, - </if> - <if test ='null != day23'> - day23, - </if> - <if test ='null != day24'> - day24, - </if> - <if test ='null != day25'> - day25, - </if> - <if test ='null != day26'> - day26, - </if> - <if test ='null != day27'> - day27, - </if> - <if test ='null != day28'> - day28, - </if> - <if test ='null != day29'> - day29, - </if> - <if test ='null != day30'> - day30, - </if> - <if test ='null != day31'> - day31, - </if> - <if test ='null != belongYear'> - belong_year, - </if> - <if test ='null != belongMonth'> - belong_month, - </if> - <if test ='null != orgCode'> - org_code, - </if> - <if test ='null != lastModified'> - last_modified - </if> - </trim> - <trim prefix="values (" suffix=")" suffixOverrides=","> - <if test ='null != name'> - #{name}, - </if> - <if test ='null != num'> - #{num}, - </if> - <if test ='null != dept'> - #{dept}, - </if> - <if test ='null != post'> - #{post}, - </if> - <if test ='null != attGroup'> - #{attGroup}, - </if> - <if test ='null != shift'> - #{shift}, - </if> - <if test ='null != daysOnDuty'> - #{daysOnDuty}, - </if> - <if test ='null != actualAttDays'> - #{actualAttDays}, - </if> - <if test ='null != daysOff'> - #{daysOff}, - </if> - <if test ='null != workingHours'> - #{workingHours}, - </if> - <if test ='null != lateTimes'> - #{lateTimes}, - </if> - <if test ='null != lateHours'> - #{lateHours}, - </if> - <if test ='null != seriousLateTimes'> - #{seriousLateTimes}, - </if> - <if test ='null != seriousLateHours'> - #{seriousLateHours}, - </if> - <if test ='null != absenLateTimes'> - #{absenLateTimes}, - </if> - <if test ='null != earlyLeaveTimes'> - #{earlyLeaveTimes}, - </if> - <if test ='null != lengthEarlyLeave'> - #{lengthEarlyLeave}, - </if> - <if test ='null != numberWorkCardShortage'> - #{numberWorkCardShortage}, - </if> - <if test ='null != numberDutyCardShortage'> - #{numberDutyCardShortage}, - </if> - <if test ='null != absenteeismDays'> - #{absenteeismDays}, - </if> - <if test ='null != lengthBusinessTrip'> - #{lengthBusinessTrip}, - </if> - <if test ='null != timeOut'> - #{timeOut}, - </if> - <if test ='null != totalOvertimeHours'> - #{totalOvertimeHours}, - </if> - <if test ='null != workingTurnCompenLeave'> - #{workingTurnCompenLeave}, - </if> - <if test ='null != restTurnCompenLeave'> - #{restTurnCompenLeave}, - </if> - <if test ='null != holidayTurnCompenLeave'> - #{holidayTurnCompenLeave}, - </if> - <if test ='null != workingTransferOvertime'> - #{workingTransferOvertime}, - </if> - <if test ='null != restTransferOvertime'> - #{restTransferOvertime}, - </if> - <if test ='null != holidayTransferOvertime'> - #{holidayTransferOvertime}, - </if> - <if test ='null != day1'> - #{day1}, - </if> - <if test ='null != day2'> - #{day2}, - </if> - <if test ='null != day3'> - #{day3}, - </if> - <if test ='null != day4'> - #{day4}, - </if> - <if test ='null != day5'> - #{day5}, - </if> - <if test ='null != day6'> - #{day6}, - </if> - <if test ='null != day7'> - #{day7}, - </if> - <if test ='null != day8'> - #{day8}, - </if> - <if test ='null != day9'> - #{day9}, - </if> - <if test ='null != day10'> - #{day10}, - </if> - <if test ='null != day11'> - #{day11}, - </if> - <if test ='null != day12'> - #{day12}, - </if> - <if test ='null != day13'> - #{day13}, - </if> - <if test ='null != day14'> - #{day14}, - </if> - <if test ='null != day15'> - #{day15}, - </if> - <if test ='null != day16'> - #{day16}, - </if> - <if test ='null != day17'> - #{day17}, - </if> - <if test ='null != day18'> - #{day18}, - </if> - <if test ='null != day19'> - #{day19}, - </if> - <if test ='null != day20'> - #{day20}, - </if> - <if test ='null != day21'> - #{day21}, - </if> - <if test ='null != day22'> - #{day22}, - </if> - <if test ='null != day23'> - #{day23}, - </if> - <if test ='null != day24'> - #{day24}, - </if> - <if test ='null != day25'> - #{day25}, - </if> - <if test ='null != day26'> - #{day26}, - </if> - <if test ='null != day27'> - #{day27}, - </if> - <if test ='null != day28'> - #{day28}, - </if> - <if test ='null != day29'> - #{day29}, - </if> - <if test ='null != day30'> - #{day30}, - </if> - <if test ='null != day31'> - #{day31}, - </if> - <if test ='null != belongYear'> - #{belongYear}, - </if> - <if test ='null != belongMonth'> - #{belongMonth}, - </if> - <if test ='null != orgCode'> - #{orgCode}, - </if> - <if test ='null != lastModified'> - #{lastModified} - </if> - </trim> - </insert> - - <delete id="delete" > - DELETE FROM kqgl_asso_month_punch_summary - WHERE id = #{id} - </delete> - - <update id="update" parameterType="cn.timer.api.bean.kqmk.KqglAssoMonthPunchSummary"> - UPDATE kqgl_asso_month_punch_summary - <set> - <if test ='null != name'>name = #{name},</if> - <if test ='null != num'>num = #{num},</if> - <if test ='null != dept'>dept = #{dept},</if> - <if test ='null != post'>post = #{post},</if> - <if test ='null != attGroup'>att_group = #{attGroup},</if> - <if test ='null != shift'>shift = #{shift},</if> - <if test ='null != daysOnDuty'>days_on_duty = #{daysOnDuty},</if> - <if test ='null != actualAttDays'>actual_att_days = #{actualAttDays},</if> - <if test ='null != daysOff'>days_off = #{daysOff},</if> - <if test ='null != workingHours'>working_hours = #{workingHours},</if> - <if test ='null != lateTimes'>late_times = #{lateTimes},</if> - <if test ='null != lateHours'>late_hours = #{lateHours},</if> - <if test ='null != seriousLateTimes'>serious_late_times = #{seriousLateTimes},</if> - <if test ='null != seriousLateHours'>serious_late_hours = #{seriousLateHours},</if> - <if test ='null != absenLateTimes'>absen_late_times = #{absenLateTimes},</if> - <if test ='null != earlyLeaveTimes'>early_leave_times = #{earlyLeaveTimes},</if> - <if test ='null != lengthEarlyLeave'>length_early_leave = #{lengthEarlyLeave},</if> - <if test ='null != numberWorkCardShortage'>number_work_card_shortage = #{numberWorkCardShortage},</if> - <if test ='null != numberDutyCardShortage'>number_duty_card_shortage = #{numberDutyCardShortage},</if> - <if test ='null != absenteeismDays'>absenteeism_days = #{absenteeismDays},</if> - <if test ='null != lengthBusinessTrip'>length_business_trip = #{lengthBusinessTrip},</if> - <if test ='null != timeOut'>time_out = #{timeOut},</if> - <if test ='null != totalOvertimeHours'>total_overtime_hours = #{totalOvertimeHours},</if> - <if test ='null != workingTurnCompenLeave'>working_turn_compen_leave = #{workingTurnCompenLeave},</if> - <if test ='null != restTurnCompenLeave'>rest_turn_compen_leave = #{restTurnCompenLeave},</if> - <if test ='null != holidayTurnCompenLeave'>holiday_turn_compen_leave = #{holidayTurnCompenLeave},</if> - <if test ='null != workingTransferOvertime'>working_transfer_overtime = #{workingTransferOvertime},</if> - <if test ='null != restTransferOvertime'>rest_transfer_overtime = #{restTransferOvertime},</if> - <if test ='null != holidayTransferOvertime'>holiday_transfer_overtime = #{holidayTransferOvertime},</if> - <if test ='null != day1'>day1 = #{day1},</if> - <if test ='null != day2'>day2 = #{day2},</if> - <if test ='null != day3'>day3 = #{day3},</if> - <if test ='null != day4'>day4 = #{day4},</if> - <if test ='null != day5'>day5 = #{day5},</if> - <if test ='null != day6'>day6 = #{day6},</if> - <if test ='null != day7'>day7 = #{day7},</if> - <if test ='null != day8'>day8 = #{day8},</if> - <if test ='null != day9'>day9 = #{day9},</if> - <if test ='null != day10'>day10 = #{day10},</if> - <if test ='null != day11'>day11 = #{day11},</if> - <if test ='null != day12'>day12 = #{day12},</if> - <if test ='null != day13'>day13 = #{day13},</if> - <if test ='null != day14'>day14 = #{day14},</if> - <if test ='null != day15'>day15 = #{day15},</if> - <if test ='null != day16'>day16 = #{day16},</if> - <if test ='null != day17'>day17 = #{day17},</if> - <if test ='null != day18'>day18 = #{day18},</if> - <if test ='null != day19'>day19 = #{day19},</if> - <if test ='null != day20'>day20 = #{day20},</if> - <if test ='null != day21'>day21 = #{day21},</if> - <if test ='null != day22'>day22 = #{day22},</if> - <if test ='null != day23'>day23 = #{day23},</if> - <if test ='null != day24'>day24 = #{day24},</if> - <if test ='null != day25'>day25 = #{day25},</if> - <if test ='null != day26'>day26 = #{day26},</if> - <if test ='null != day27'>day27 = #{day27},</if> - <if test ='null != day28'>day28 = #{day28},</if> - <if test ='null != day29'>day29 = #{day29},</if> - <if test ='null != day30'>day30 = #{day30},</if> - <if test ='null != day31'>day31 = #{day31},</if> - <if test ='null != belongYear'>belong_year = #{belongYear},</if> - <if test ='null != belongMonth'>belong_month = #{belongMonth},</if> - <if test ='null != orgCode'>org_code = #{orgCode},</if> - <if test ='null != lastModified'>last_modified = #{lastModified}</if> - </set> - WHERE id = #{id} - </update> - - - <select id="load" resultMap="BaseResultMap"> - SELECT <include refid="Base_Column_List" /> - FROM kqgl_asso_month_punch_summary - WHERE id = #{id} - </select> - - <select id="pageList" resultMap="BaseResultMap"> - SELECT <include refid="Base_Column_List" /> - FROM kqgl_asso_month_punch_summary - LIMIT #{offset}, #{pageSize} - </select> - - <select id="pageListCount" resultType="java.lang.Integer"> - SELECT count(1) - FROM kqgl_asso_month_punch_summary - </select> + <select id="Dailydetails" resultMap="DailyDetailsMap"> + select sum.`name`,sum.num,sum.dept,sum.post, + (select kqz.name from kqgl_main_kqz kqz where kqz.id = sum.att_group) as attname, + IFNULL(rtj.attdate, '') attdate, + IFNULL(rtj.userid,'') userid, + IFNULL(rtj.data,'') data, + IFNULL(rtj.sbdk1,'') sbdk1, + IFNULL(rtj.sbdk1jg,'') sbdk1jg, + IFNULL(rtj.xbdk1 ,'') xbdk1, + IFNULL(rtj.xbdk1jg,'') xbdk1jg, + IFNULL(rtj.sbdk2 ,'') sbdk2, + IFNULL(rtj.sbdk2jg ,'') sbdk2jg, + IFNULL(rtj.xbdk2 ,'') xbdk2, + IFNULL(rtj.xbdk2jg,'') xbdk2jg, + IFNULL(rtj.sbdk3 ,'') sbdk3, + IFNULL(rtj.sbdk3jg ,'') sbdk3jg, + IFNULL(rtj.xbdk3,'') xbdk3, + IFNULL(rtj.xbdk3jg ,'') xbdk3jg, + IFNULL(rtj.ydkcs ,'') ydkcs, + IFNULL(rtj.gzsc ,'') gzsc, + IFNULL(rtj.qyid,'') qyid, + IFNULL(rtj.dksj ,'') dksj, + IFNULL(rtj.yzcdcs ,'') yzcdcs, + IFNULL(rtj.yzcdsc ,'') yzcdsc, + IFNULL(rtj.kgcdfzs,'') kgcdfzs, + sum.days_on_duty as daysonduty, + sum.days_off as daysoff, + sum.length_business_trip as lengthbusinesstrip, + sum.time_out as timeout, + sum.total_overtime_hours as totalovertimehours, + sum.working_turn_compen_leave as workingturncompenleave, + sum.rest_turn_compen_leave as restturncompenleave, + sum.holiday_turn_compen_leave as holidayturncompenleave, + sum.working_transfer_overtime as workingtransferovertime, + sum.rest_transfer_overtime as resttransferovertime, + sum.holiday_transfer_overtime as holidaytransferovertime, + mrtj.leaverulesid, + mrtj.duration as balancedays + from kqgl_asso_month_punch_summary sum + LEFT JOIN ( + select DISTINCT info.`name` as username , + dkjl.attdate, + bcsz.`name` as bcname,bcsz.sbdk1 as bcsbdk1,bcsz.xbdk1 as bcxbdk1,bcsz.sbdk2 as bcsbdk2,bcsz.xbdk2 as bcxbdk2,bcsz.sbdk3 as bcsbdk3,bcsz.xbdk3 as bcxbdk3, + dkmx.`userid`,dkmx.`data` ,dkmx.`sbdk1`,dkmx.`sbdk1jg`,dkmx.`xbdk1` ,dkmx.`xbdk1jg`,dkmx.`sbdk2` ,dkmx.`sbdk2jg` ,dkmx.`xbdk2` , + dkmx.`xbdk2jg`,dkmx.`sbdk3` ,dkmx.`sbdk3jg` ,dkmx.`xbdk3`,dkmx.`xbdk3jg` ,dkmx.`ydkcs` ,dkmx.`gzsc` ,dkmx.`qyid`,dkmx.`dksj` , + dkmx.`yzcdcs` ,dkmx.`yzcdsc` ,dkmx.`kgcdfzs` + from kqgl_asso_dkmx dkmx + LEFT JOIN yggl_main_emp as info on info.emp_num = dkmx.userid and info.org_code = 117 + LEFT JOIN kqgl_asso_dkjl as dkjl on dkjl.dkmxid = dkmx.id + LEFT JOIN kqgl_asso_bcsz as bcsz on bcsz.id = dkjl.bcid + where dkmx.qyid = #{param.orgCode} + and dkmx.`data` = #{param.times} + ) as rtj on rtj.userid = sum.num + LEFT JOIN (SELECT les.id as leaverulesid,hz.user_id,hz.duration + FROM kqgl_asso_leave_rules les + LEFT JOIN (select ry.user_id,ry.leave_type_id,SUM(ry.duration) as duration + from ( + select rel.user_id,rel.leave_type_id,rel.duration + from kqgl_asso_relation_summary rel + where rel.approval_type = 2 + and rel.app_time = #{param.times} + GROUP BY rel.user_id,rel.leave_type_id,rel.duration + ) as ry + GROUP BY ry.user_id,ry.leave_type_id) as hz on hz.leave_type_id = les.id + WHERE les.org_code = #{param.orgCode} + AND (les.leave_type = 2 OR les.is_open = 1) + ) as mrtj on mrtj.user_id = sum.num + where sum.org_code = #{param.orgCode} + and sum.belong_year = #{param.year} + and sum.belong_month = #{param.month} + <if test="param.query != null and param.query != ''"> + and ( sum.`name` like CONCAT('%',#{param.query},'%') or + sum.num like CONCAT('%',#{param.query},'%')) + </if> + <if test="param.attid != null and param.attid != ''"> + and sum.att_group = #{param.attid} + </if> + </select> - --> </mapper> \ No newline at end of file