From e8c9ce131c87aeafb963ae0a0ff6c6db9e3c346d Mon Sep 17 00:00:00 2001 From: ilal <lalqqhy@163.com> Date: Fri, 7 Aug 2020 17:21:05 +0800 Subject: [PATCH] 提交 --- src/main/java/cn/timer/api/controller/kqgl/atttimer/AttendanceTaskTiming.java | 44 +++++++++++++++++++++++++++++++++----------- src/main/java/cn/timer/api/controller/kqgl/atttimer/LastMonthtimingExport.java | 49 +++++++++++++++++++++++++++++++++++++------------ src/main/resources/mapping/kqgl/PunchRecordMapper.xml | 2 ++ src/main/resources/mapping/kqmk/KqglAssoLeaveBalanceMapper.xml | 2 +- 4 files changed, 73 insertions(+), 24 deletions(-) diff --git a/src/main/java/cn/timer/api/controller/kqgl/atttimer/AttendanceTaskTiming.java b/src/main/java/cn/timer/api/controller/kqgl/atttimer/AttendanceTaskTiming.java index 658f9d4..e0a2358 100644 --- a/src/main/java/cn/timer/api/controller/kqgl/atttimer/AttendanceTaskTiming.java +++ b/src/main/java/cn/timer/api/controller/kqgl/atttimer/AttendanceTaskTiming.java @@ -96,7 +96,7 @@ public class AttendanceTaskTiming{ //typeid:1-员工 2-考勤组 // @Scheduled(cron = "0 */5 * * * ?") -// @Scheduled(cron = "0 38 14 * * ?") +// @Scheduled(cron = "0 16 17 * * ?") @Scheduled(cron = "0 0 8,12,16,20 * * ?")//每天上午8、12点,下午16点,20点 执行 public void AttendanceTask() throws ParseException { @@ -494,7 +494,9 @@ public class AttendanceTaskTiming{ //遍历目前为止所有日期 结合该用户发起的审批进行结合 //1:加班 2:请假 3:出差 4:外出 5:补卡 int u = 0; + int p = 1; for(String num : range) { + String sjs = "",qinjia = "",chuaca = "",waichu = "",buka = "",jiaban = ""; if(ClockInTool.useArrayUtils(ClockInTool.deleteArrayNull(xxts), num) && ClockInTool.useArrayUtils(ClockInTool.deleteArrayNull(dkjtts),num)) { rowData.add("休息并打卡"); }else if(ClockInTool.useArrayUtils(ClockInTool.deleteArrayNull(xxts), num)){ @@ -543,24 +545,30 @@ public class AttendanceTaskTiming{ else { company = "小时"; } } } - rowData.remove(u); - rowData.add(u,(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"请"+leavetype+lea.getDuration()+company); + qinjia = "#"+(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"请"+leavetype+lea.getDuration()+company; +// rowData.remove(u); +// rowData.add(u,(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"请"+leavetype+lea.getDuration()+company); } if(ClockInTool.contains(ClockInTool.deleteArrayNull(travels),num)) { KqglAssoRelationSummary lea = KqglAssoRelationSummary.builder().build().selectOne(new QueryWrapper<KqglAssoRelationSummary>().lambda().eq(KqglAssoRelationSummary::getUserId, user.getEmpnum()).eq(KqglAssoRelationSummary::getAppTime, num).eq(KqglAssoRelationSummary::getApprovalType, 3)); - rowData.remove(u); - rowData.add(u,(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"出差"+lea.getDuration()+"天"); +// rowData.remove(u); +// rowData.add(u,(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"出差"+lea.getDuration()+"天"); + chuaca = "#"+(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"出差"+lea.getDuration()+"天"; } if(ClockInTool.contains(ClockInTool.deleteArrayNull(goouts),num)) { KqglAssoRelationSummary lea = KqglAssoRelationSummary.builder().build().selectOne(new QueryWrapper<KqglAssoRelationSummary>().lambda().eq(KqglAssoRelationSummary::getUserId, user.getEmpnum()).eq(KqglAssoRelationSummary::getAppTime, num).eq(KqglAssoRelationSummary::getApprovalType, 4)); - rowData.remove(u); - rowData.add(u,(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"外出"+lea.getDuration()+"天"); + +// rowData.remove(u); +// rowData.add(u,(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"外出"+lea.getDuration()+"天"); + waichu = "#"+(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"外出"+lea.getDuration()+"天"; } if(ClockInTool.contains(ClockInTool.deleteArrayNull(cards),num)) { KqglAssoRelationSummary lea = KqglAssoRelationSummary.builder().build().selectOne(new QueryWrapper<KqglAssoRelationSummary>().lambda().eq(KqglAssoRelationSummary::getUserId, user.getEmpnum()).eq(KqglAssoRelationSummary::getAppTime, num).eq(KqglAssoRelationSummary::getApprovalType, 5)); - rowData.remove(u); - rowData.add(u,"已补卡:"+(lea.getStartTime()).substring(5, 16)); + +// rowData.remove(u); +// rowData.add(u,"已补卡:"+(lea.getStartTime()).substring(5, 16)); + buka = "#"+"已补卡:"+(lea.getStartTime()).substring(5, 16); } if(ClockInTool.contains(ClockInTool.deleteArrayNull(overtimes),num)) { @@ -581,8 +589,9 @@ public class AttendanceTaskTiming{ else if(lea.getCompensateId() == 2) { method="转加班费"; } else {method="转调休或加班费";} - rowData.remove(u); - rowData.add(u,(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"加班"+lea.getDuration()+company+"["+method+"]"); +// rowData.remove(u); +// rowData.add(u,(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"加班"+lea.getDuration()+company+"["+method+"]"); + jiaban = "#"+(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"加班"+lea.getDuration()+company+"["+method+"]"; //防止多运算 if(lea.getOrdernum() == lea.getTotals()) { //加班补偿方式 1:转调休;2:转加班费;3:转调休或加班费 @@ -621,6 +630,18 @@ public class AttendanceTaskTiming{ } } + if(rowData.size() == p) { + sjs = ""; + if(("").equals(qinjia) && ("").equals(chuaca) && ("").equals(waichu) && ("").equals(buka) && ("").equals(jiaban)) { + sjs = rowData.get(u); + }else { + sjs = rowData.get(u)+";"; + } + + } + rowData.remove(u); + rowData.add(u,sjs + qinjia+chuaca+waichu+buka+jiaban); + /****/ //////// @@ -680,6 +701,7 @@ public class AttendanceTaskTiming{ u++; + p++; } }else { for (String num2 : range) { diff --git a/src/main/java/cn/timer/api/controller/kqgl/atttimer/LastMonthtimingExport.java b/src/main/java/cn/timer/api/controller/kqgl/atttimer/LastMonthtimingExport.java index e9ff287..baad6b3 100644 --- a/src/main/java/cn/timer/api/controller/kqgl/atttimer/LastMonthtimingExport.java +++ b/src/main/java/cn/timer/api/controller/kqgl/atttimer/LastMonthtimingExport.java @@ -88,7 +88,7 @@ public class LastMonthtimingExport { SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); - +// @Scheduled(cron = "0 10 17 * * ?") @Scheduled(cron = "0 0 4,20 * * ?")//每天上午4点,下午20点 执行 public void LastMonthtimingAttendanceTask() throws ParseException { @@ -483,8 +483,9 @@ public class LastMonthtimingExport { // List<String> rowData = new ArrayList<String>(); //遍历目前为止所有日期 结合该用户发起的审批进行结合 //1:加班 2:请假 3:出差 4:外出 5:补卡 - int u = 0; + int u = 0,p=1; for(String num : range) { + String sjs = "",qinjia = "",chuaca = "",waichu = "",buka = "",jiaban = ""; if(ClockInTool.useArrayUtils(ClockInTool.deleteArrayNull(xxts), num) && ClockInTool.useArrayUtils(ClockInTool.deleteArrayNull(dkjtts),num)) { rowData.add("休息并打卡"); }else if(ClockInTool.useArrayUtils(ClockInTool.deleteArrayNull(xxts), num)){ @@ -533,24 +534,32 @@ public class LastMonthtimingExport { else { company = "小时"; } } } - rowData.remove(u); - rowData.add(u,(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"请"+leavetype+lea.getDuration()+company); + qinjia = "#"+(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"请"+leavetype+lea.getDuration()+company; +// rowData.remove(u); +// rowData.add(u,(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"请"+leavetype+lea.getDuration()+company); } if(ClockInTool.contains(ClockInTool.deleteArrayNull(travels),num)) { KqglAssoRelationSummary lea = KqglAssoRelationSummary.builder().build().selectOne(new QueryWrapper<KqglAssoRelationSummary>().lambda().eq(KqglAssoRelationSummary::getUserId, user.getEmpnum()).eq(KqglAssoRelationSummary::getAppTime, num).eq(KqglAssoRelationSummary::getApprovalType, 3)); - rowData.remove(u); - rowData.add(u,(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"出差"+lea.getDuration()+"天"); + chuaca = "#"+(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"出差"+lea.getDuration()+"天"; + +// rowData.remove(u); +// rowData.add(u,(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"出差"+lea.getDuration()+"天"); } if(ClockInTool.contains(ClockInTool.deleteArrayNull(goouts),num)) { KqglAssoRelationSummary lea = KqglAssoRelationSummary.builder().build().selectOne(new QueryWrapper<KqglAssoRelationSummary>().lambda().eq(KqglAssoRelationSummary::getUserId, user.getEmpnum()).eq(KqglAssoRelationSummary::getAppTime, num).eq(KqglAssoRelationSummary::getApprovalType, 4)); - rowData.remove(u); - rowData.add(u,(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"外出"+lea.getDuration()+"天"); + + waichu = "#"+(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"外出"+lea.getDuration()+"天"; + +// rowData.remove(u); +// rowData.add(u,(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"外出"+lea.getDuration()+"天"); } if(ClockInTool.contains(ClockInTool.deleteArrayNull(cards),num)) { KqglAssoRelationSummary lea = KqglAssoRelationSummary.builder().build().selectOne(new QueryWrapper<KqglAssoRelationSummary>().lambda().eq(KqglAssoRelationSummary::getUserId, user.getEmpnum()).eq(KqglAssoRelationSummary::getAppTime, num).eq(KqglAssoRelationSummary::getApprovalType, 5)); - rowData.remove(u); - rowData.add(u,"已补卡:"+(lea.getStartTime()).substring(5, 16)); +// rowData.remove(u); +// rowData.add(u,"已补卡:"+(lea.getStartTime()).substring(5, 16)); + + buka = "#"+"已补卡:"+(lea.getStartTime()).substring(5, 16); } if(ClockInTool.contains(ClockInTool.deleteArrayNull(overtimes),num)) { @@ -571,8 +580,10 @@ public class LastMonthtimingExport { else if(lea.getCompensateId() == 2) { method="转加班费"; } else {method="转调休或加班费";} - rowData.remove(u); - rowData.add(u,(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"加班"+lea.getDuration()+company+"["+method+"]"); + jiaban = "#"+(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"加班"+lea.getDuration()+company+"["+method+"]"; + +// rowData.remove(u); +// rowData.add(u,(lea.getStartTime()).substring(5, 16) +"到"+ (lea.getEndTime()).substring(5, 16)+"加班"+lea.getDuration()+company+"["+method+"]"); //防止多运算 if(lea.getOrdernum() == lea.getTotals()) { //加班补偿方式 1:转调休;2:转加班费;3:转调休或加班费 @@ -611,6 +622,19 @@ public class LastMonthtimingExport { } } + + if(rowData.size() == p) { + sjs = ""; + if(("").equals(qinjia) && ("").equals(chuaca) && ("").equals(waichu) && ("").equals(buka) && ("").equals(jiaban)) { + sjs = rowData.get(u); + }else { + sjs = rowData.get(u)+";"; + } + + } + rowData.remove(u); + rowData.add(u,sjs + qinjia+chuaca+waichu+buka+jiaban); + /****/ //////// @@ -670,6 +694,7 @@ public class LastMonthtimingExport { u++; + p++; } }else { for (String num2 : range) { diff --git a/src/main/resources/mapping/kqgl/PunchRecordMapper.xml b/src/main/resources/mapping/kqgl/PunchRecordMapper.xml index 30d4aea..6a83d97 100644 --- a/src/main/resources/mapping/kqgl/PunchRecordMapper.xml +++ b/src/main/resources/mapping/kqgl/PunchRecordMapper.xml @@ -386,6 +386,8 @@ where dkjl.attime >= #{start} and dkjl.attime <= #{end} and dkjl.user_id = #{userId,jdbcType=INTEGER} + and dkjl.`status` != 0 + and dkjl.sort != 0 ORDER BY dkjl.id ASC </select> diff --git a/src/main/resources/mapping/kqmk/KqglAssoLeaveBalanceMapper.xml b/src/main/resources/mapping/kqmk/KqglAssoLeaveBalanceMapper.xml index 9e83557..ec717b5 100644 --- a/src/main/resources/mapping/kqmk/KqglAssoLeaveBalanceMapper.xml +++ b/src/main/resources/mapping/kqmk/KqglAssoLeaveBalanceMapper.xml @@ -133,7 +133,7 @@ LEFT JOIN zzgl_bmgw_m as gw on gw.id = emp.bmgw_id LEFT JOIN zzgl_bmgw_m as c ON c.id = gw.up_id where emp.org_code = #{orgcode} - <!-- and emp.emp_num = 12 --> + <!-- and emp.emp_num = 100083 --> <!-- and emp.job_status != 3 --> </select> -- libgit2 0.26.0