Browse Source

Merge branch 'dev' of liubing/wlyy2.0 into dev

liubing 2 năm trước cách đây
mục cha
commit
b6c57b849f

+ 14 - 8
business/base-service/src/main/java/com/yihu/jw/dailyReport/service/DailyReportUploadService.java

@ -3693,8 +3693,10 @@ public class DailyReportUploadService {
        }
        Long workDays=0l;
        Long acWorkDays=0l;//用于计算实际工作时长(不包含最后一天)
        if (StringUtils.isNotBlank(startDate)&&StringUtils.isNotBlank(endDate)) {
            workDays = DateUtil.getWorkDays(startDate, endDate);
            acWorkDays = DateUtil.getWorkDaysNotendDay(startDate, endDate);
        }
        String shangchuanSql = " select distinct up.report_date from base_doctor_daily_report_upload up " +
@ -3713,7 +3715,7 @@ public class DailyReportUploadService {
        }
        Double acWorkHours = 0d;
        Long needWorkHours = workDays*members*8;
        Long needWorkHours = acWorkDays*members*8;
        Long urgingTotal=0l;
        String urgingSql = " select count(distinct code) from base_daily_urging_record where create_time>='"+startDate+"' ";
@ -3731,7 +3733,7 @@ public class DailyReportUploadService {
        }
        urgingTotal = jdbcTemplate.queryForObject(urgingSql,Long.class);
        String acWorkHoursSql = " select sum(cast(IFNULL(rd.actual_completion_hour,IFNULL(rd.completion_hour,0)) as decimal(18,2))) 'completion_hour' " +
        String acWorkHoursSql = " select sum(cast(IFNULL(rd.actual_completion_hour,IFNULL(rd.completion_hour,0)) as decimal(18,2)))+SUM(CAST(up.leave_hour as decimal(18,2))) 'completion_hour' " +
                " from base_doctor_daily_report_upload up  " +
                "INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +
                "Inner JOIN base_doctor_hospital dh on doc.id = dh.doctor_code and dh.del=1 " +
@ -4043,8 +4045,10 @@ public class DailyReportUploadService {
        }
        Long workDays=0l;
        Long acWorkDays=0l;
        if (StringUtils.isNotBlank(startDate)&&StringUtils.isNotBlank(endDate)) {
            workDays = DateUtil.getWorkDays(startDate, endDate);
            acWorkDays = DateUtil.getWorkDaysNotendDay(startDate, endDate);
        }
       /* String shangchuanSql = " select distinct up.report_date from base_doctor_daily_report_upload up " +
@ -4077,7 +4081,7 @@ public class DailyReportUploadService {
        }
        Double acWorkHours = 0d;
        Long needWorkHours = workDays*members*8;
        Long needWorkHours = acWorkDays*members*8;
        Long urgingTotal=0l;
        String urgingSql = " select count(id) from base_daily_urging_record where create_time>='"+startDate+"' and create_time<='"+startDate+"'  ";
@ -4095,7 +4099,7 @@ public class DailyReportUploadService {
        }
        urgingTotal = jdbcTemplate.queryForObject(urgingSql,Long.class);
        String acWorkHoursSql = " select sum(cast(IFNULL(rd.actual_completion_hour,IFNULL(rd.completion_hour,0)) as decimal(18,2))) 'completion_hour' " +
        String acWorkHoursSql = " select sum(cast(IFNULL(rd.actual_completion_hour,IFNULL(rd.completion_hour,0)) as decimal(18,2)))+SUM(CAST(up.leave_hour as decimal(18,2))) 'completion_hour' " +
                " from base_doctor_daily_report_upload up  " +
                "INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +
                "Inner JOIN base_doctor_hospital dh on doc.id = dh.doctor_code and dh.del=1 " +
@ -4288,8 +4292,10 @@ public class DailyReportUploadService {
            }
            Long workDays=0l;
            Long acWorkDays=0l;//用于计算实际工作时长
            if (StringUtils.isNotBlank(startDate)&&StringUtils.isNotBlank(endDate)) {
                workDays = DateUtil.getWorkDays(startDate, endDate);
                acWorkDays = DateUtil.getWorkDaysNotendDay(startDate, endDate);
            }
            /*String shangchuanSql = " select distinct up.report_date from base_doctor_daily_report_upload up " +
@ -4321,7 +4327,7 @@ public class DailyReportUploadService {
            }
            Double acWorkHours = 0d;
            Long needWorkHours = workDays*members*8;
            Long needWorkHours = acWorkDays*members*8;
            Long urgingTotal=0l;
            String urgingSql = " select count(id) from base_daily_urging_record where create_time>='"+startDate+"' and create_time<='"+startDate+"'  ";
@ -4339,7 +4345,7 @@ public class DailyReportUploadService {
            }
            urgingTotal = jdbcTemplate.queryForObject(urgingSql,Long.class);
            String acWorkHoursSql = " select sum(cast(IFNULL(rd.actual_completion_hour,IFNULL(rd.completion_hour,0)) as decimal(18,2))) 'completion_hour' " +
            String acWorkHoursSql = " select sum(cast(IFNULL(rd.actual_completion_hour,IFNULL(rd.completion_hour,0)) as decimal(18,2)))+SUM(CAST(up.leave_hour as decimal(18,2))) 'completion_hour' " +
                    " from base_doctor_daily_report_upload up  " +
                    "INNER JOIN base_doctor doc on up.doctor_id = doc.id and doc.del=1 " +
                    "Inner JOIN base_doctor_hospital dh on doc.id = dh.doctor_code and dh.del=1 " +
@ -5152,10 +5158,10 @@ public class DailyReportUploadService {
            result.put("unresolvedBugTotal",unresolvedBugTotal);
            sql = " select count(id) 'total','resolve' as 'status' from zt_task " +
                    " where deleted='0' and finishedBy in ('liubing')  " +sqlCondition+
                    " where deleted='0' and finishedBy in ("+str+")  " +sqlCondition+
                    " UNION ALL " +
                    " select count(id) 'total','unresolved' as 'status' from zt_task " +
                    " where deleted='0' and assignedTo in ('liubing') AND `status` in ('wait','doing','pause') "+sqlCondition2;
                    " where deleted='0' and assignedTo in ("+str+") AND `status` in ('wait','doing','pause') "+sqlCondition2;
            params = new HashedMap();
            params.put("sql",sql);
            response = HttpUtils.doGet(url,params);

+ 31 - 0
common/common-util/src/main/java/com/yihu/jw/util/date/DateUtil.java

@ -1118,6 +1118,37 @@ public class DateUtil {
    }
    /**
     * 获取某一时间端内的工作天数(不包含最后一天)
     * @param start
     * @param end
     * @return
     */
    public static long getWorkDaysNotendDay(String start, String end){
        SimpleDateFormat myFormatter = new SimpleDateFormat(YYYY_MM_DD);
        long day = 0;
        Calendar startCal = Calendar.getInstance();
        Calendar endCal = Calendar.getInstance();
        try {
            startCal.setTime(myFormatter.parse(start));
            endCal.setTime(myFormatter.parse(end));
        } catch (ParseException e) {
            System.out.println("日期格式非法");
            e.printStackTrace();
            return day;
        }
        while (startCal.compareTo(endCal) <0) {
            //工作日+1
            if (!Holiday.isHoliday((startCal.getTime()))){
                day++;
            }
            startCal.add(Calendar.DAY_OF_MONTH, 1);
        }
        return day;
    }
    /**
     * 判断一天是不是工作日
     *