Explorar el Código

加入 优惠券市场 功能 未开发完

wuxw hace 3 años
padre
commit
93d1b16337

+ 110 - 105
service-store/src/main/java/com/java110/store/smo/impl/ScheduleClassesStaffV1InnerServiceSMOImpl.java

@@ -127,57 +127,62 @@ public class ScheduleClassesStaffV1InnerServiceSMOImpl extends BaseServiceSMO im
      */
     @Override
     public ScheduleClassesStaffDto staffIsWork(@RequestBody ScheduleClassesStaffDto scheduleClassesStaffDto) {
+        try {
+            //查询 排班
+            ScheduleClassesStaffDto tmpScheduleClassesStaffDto = new ScheduleClassesStaffDto();
+            tmpScheduleClassesStaffDto.setStaffId(scheduleClassesStaffDto.getStaffId());
+            List<ScheduleClassesStaffDto> scheduleClassesStaffs = BeanConvertUtil.covertBeanList(
+                    scheduleClassesStaffV1ServiceDaoImpl.getScheduleClassesStaffInfo(BeanConvertUtil.beanCovertMap(scheduleClassesStaffDto)
+                    ), ScheduleClassesStaffDto.class);
+
+            //这里 如果没有员工排班 那么就认为 员工一直在上班
+            if (scheduleClassesStaffs == null || scheduleClassesStaffs.size() < 1) {
+                scheduleClassesStaffDto.setWork(true);
+                return scheduleClassesStaffDto;
+            }
 
-        //查询 排班
-        ScheduleClassesStaffDto tmpScheduleClassesStaffDto = new ScheduleClassesStaffDto();
-        tmpScheduleClassesStaffDto.setStaffId(scheduleClassesStaffDto.getStaffId());
-        List<ScheduleClassesStaffDto> scheduleClassesStaffs = BeanConvertUtil.covertBeanList(
-                scheduleClassesStaffV1ServiceDaoImpl.getScheduleClassesStaffInfo(BeanConvertUtil.beanCovertMap(scheduleClassesStaffDto)
-                ), ScheduleClassesStaffDto.class);
-
-        //这里 如果没有员工排班 那么就认为 员工一直在上班
-        if (scheduleClassesStaffs == null || scheduleClassesStaffs.size() < 1) {
-            scheduleClassesStaffDto.setWork(true);
-            return scheduleClassesStaffDto;
-        }
+            ScheduleClassesDto scheduleClassesDto = new ScheduleClassesDto();
+            scheduleClassesDto.setScheduleId(scheduleClassesStaffs.get(0).getScheduleId());
+            List<ScheduleClassesDto> scheduleClassesDtos = scheduleClassesV1InnerServiceSMOImpl.queryScheduleClassess(scheduleClassesDto);
+            //这里 如果没有员工排班 那么就认为 员工一直在上班
+            if (scheduleClassesDtos == null || scheduleClassesDtos.size() < 1) {
+                scheduleClassesStaffDto.setWork(true);
+                return scheduleClassesStaffDto;
+            }
+            scheduleClassesStaffDto.setWork(false);
+            if (ScheduleClassesDto.SCHEDULE_TYPE_DAY.equals(scheduleClassesDtos.get(0).getScheduleType())) {
+                staffIsWorkDay(scheduleClassesDtos.get(0), scheduleClassesStaffDto);
+            } else if (ScheduleClassesDto.SCHEDULE_TYPE_WEEK.equals(scheduleClassesDtos.get(0).getScheduleType())) {
+                staffIsWorkWeek(scheduleClassesDtos.get(0), scheduleClassesStaffDto);
+            } else if (ScheduleClassesDto.SCHEDULE_TYPE_MONTH.equals(scheduleClassesDtos.get(0).getScheduleType())) {
+                staffIsWorkMonth(scheduleClassesDtos.get(0), scheduleClassesStaffDto);
+            } else {
+                scheduleClassesStaffDto.setWork(true);
+            }
 
-        ScheduleClassesDto scheduleClassesDto = new ScheduleClassesDto();
-        scheduleClassesDto.setScheduleId(scheduleClassesStaffs.get(0).getScheduleId());
-        List<ScheduleClassesDto> scheduleClassesDtos = scheduleClassesV1InnerServiceSMOImpl.queryScheduleClassess(scheduleClassesDto);
-        //这里 如果没有员工排班 那么就认为 员工一直在上班
-        if (scheduleClassesDtos == null || scheduleClassesDtos.size() < 1) {
-            scheduleClassesStaffDto.setWork(true);
-            return scheduleClassesStaffDto;
-        }
-        scheduleClassesStaffDto.setWork(false);
-        if (ScheduleClassesDto.SCHEDULE_TYPE_DAY.equals(scheduleClassesDtos.get(0).getScheduleType())) {
-            staffIsWorkDay(scheduleClassesDtos.get(0), scheduleClassesStaffDto);
-        } else if (ScheduleClassesDto.SCHEDULE_TYPE_WEEK.equals(scheduleClassesDtos.get(0).getScheduleType())) {
-            staffIsWorkWeek(scheduleClassesDtos.get(0), scheduleClassesStaffDto);
-        } else if (ScheduleClassesDto.SCHEDULE_TYPE_MONTH.equals(scheduleClassesDtos.get(0).getScheduleType())) {
-            staffIsWorkMonth(scheduleClassesDtos.get(0), scheduleClassesStaffDto);
-        } else {
-            scheduleClassesStaffDto.setWork(true);
+        } catch (Exception e) {
+            e.printStackTrace();
+            throw e;
         }
-
         return scheduleClassesStaffDto;
     }
 
 
-
     /**
      * 员工是否上班 按月 排班
+     *
      * @param scheduleClassesDto
-     * @param scheduleClassesStaffDto
-     * {
-     *     work:true // 表名 员工 此刻 在线
-     *     times:[] // 当日 上班下班时间点 ,这个节点 不一定存在
-     * }
+     * @param scheduleClassesStaffDto {
+     *                                work:true // 表名 员工 此刻 在线
+     *                                times:[] // 当日 上班下班时间点 ,这个节点 不一定存在
+     *                                }
      */
-    private void staffIsWorkMonth( ScheduleClassesDto scheduleClassesDto, ScheduleClassesStaffDto scheduleClassesStaffDto) {
-        Calendar today = Calendar.getInstance();
-        today.setTime(scheduleClassesStaffDto.getToday());
-        int day = today.get(Calendar.DAY_OF_MONTH);
+    private void staffIsWorkMonth(ScheduleClassesDto scheduleClassesDto, ScheduleClassesStaffDto scheduleClassesStaffDto) {
+        String today = DateUtil.getFormatTimeString(scheduleClassesStaffDto.getToday(), DateUtil.DATE_FORMATE_STRING_B);
+
+        Calendar curTodayCal = Calendar.getInstance();
+        curTodayCal.setTime(scheduleClassesStaffDto.getToday());
+        int day = curTodayCal.get(Calendar.DAY_OF_MONTH);
         ScheduleClassesDayDto scheduleClassesDayDto = new ScheduleClassesDayDto();
         scheduleClassesDayDto.setScheduleId(scheduleClassesDto.getScheduleId());
         scheduleClassesDayDto.setDay(day + "");
@@ -189,9 +194,9 @@ public class ScheduleClassesStaffV1InnerServiceSMOImpl extends BaseServiceSMO im
             return;
         }
 
-        if(ScheduleClassesDayDto.WORKDAY_NO.equals(scheduleClassesDayDtos.get(0).getWorkday())){
+        if (ScheduleClassesDayDto.WORKDAY_NO.equals(scheduleClassesDayDtos.get(0).getWorkday())) {
             scheduleClassesStaffDto.setWork(false);
-            return ;
+            return;
         }
 
         List<ScheduleClassesTimeDto> times = scheduleClassesDayDtos.get(0).getTimes();
@@ -214,18 +219,20 @@ public class ScheduleClassesStaffV1InnerServiceSMOImpl extends BaseServiceSMO im
 
     /**
      * 员工是否上班 按周 排班
+     *
      * @param scheduleClassesDto
      * @param scheduleClassesStaffDto
      */
     private void staffIsWorkWeek(ScheduleClassesDto scheduleClassesDto, ScheduleClassesStaffDto scheduleClassesStaffDto) {
+        String today = DateUtil.getFormatTimeString(scheduleClassesStaffDto.getToday(), DateUtil.DATE_FORMATE_STRING_B);
 
-        Calendar today = Calendar.getInstance();
-        today.setTime(scheduleClassesStaffDto.getToday());
-        int week = today.get(Calendar.WEEK_OF_MONTH);
-        int day = today.get(Calendar.DAY_OF_WEEK);
+        Calendar curTodayCal = Calendar.getInstance();
+        curTodayCal.setTime(scheduleClassesStaffDto.getToday());
+        int week = curTodayCal.get(Calendar.WEEK_OF_MONTH);
+        int day = curTodayCal.get(Calendar.DAY_OF_WEEK);
 
         //一周第一天是否为星期天
-        boolean isFirstSunday = (today.getFirstDayOfWeek() == Calendar.SUNDAY);
+        boolean isFirstSunday = (curTodayCal.getFirstDayOfWeek() == Calendar.SUNDAY);
         //获取周几
         //若一周第一天为星期天,则-1
         if (isFirstSunday) {
@@ -253,9 +260,9 @@ public class ScheduleClassesStaffV1InnerServiceSMOImpl extends BaseServiceSMO im
             return;
         }
 
-        if(ScheduleClassesDayDto.WORKDAY_NO.equals(scheduleClassesDayDtos.get(0).getWorkday())){
+        if (ScheduleClassesDayDto.WORKDAY_NO.equals(scheduleClassesDayDtos.get(0).getWorkday())) {
             scheduleClassesStaffDto.setWork(false);
-            return ;
+            return;
         }
 
         List<ScheduleClassesTimeDto> times = scheduleClassesDayDtos.get(0).getTimes();
@@ -278,62 +285,60 @@ public class ScheduleClassesStaffV1InnerServiceSMOImpl extends BaseServiceSMO im
 
     /**
      * 员工是否上班 按天 排班
+     *
      * @param scheduleClassesDto
      * @param scheduleClassesStaffDto
      */
     private void staffIsWorkDay(ScheduleClassesDto scheduleClassesDto, ScheduleClassesStaffDto scheduleClassesStaffDto) {
-        try {
-            String today = DateUtil.getFormatTimeString(scheduleClassesStaffDto.getToday(), DateUtil.DATE_FORMATE_STRING_B);
 
-            int scheduleCycle = Integer.parseInt(scheduleClassesDto.getScheduleCycle());
+        String today = DateUtil.getFormatTimeString(scheduleClassesStaffDto.getToday(), DateUtil.DATE_FORMATE_STRING_B);
 
-            int allDay = DateUtil.daysBetween(scheduleClassesDto.getComputeTime(), today) + 1;
+        int scheduleCycle = Integer.parseInt(scheduleClassesDto.getScheduleCycle());
 
-            int day = allDay % scheduleCycle;
+        int allDay = DateUtil.daysBetween(scheduleClassesDto.getComputeTime(), today) + 1;
 
+        int day = allDay % scheduleCycle;
 
-            if (day == 0) {
-                day = scheduleCycle;
-            }
 
-            ScheduleClassesDayDto scheduleClassesDayDto = new ScheduleClassesDayDto();
-            scheduleClassesDayDto.setScheduleId(scheduleClassesDto.getScheduleId());
-            scheduleClassesDayDto.setDay(day + "");
-            List<ScheduleClassesDayDto> scheduleClassesDayDtos = scheduleClassesDayV1InnerServiceSMOImpl.queryScheduleClassesDays(scheduleClassesDayDto);
+        if (day == 0) {
+            day = scheduleCycle;
+        }
 
-            //设置问题 ,这里默认反馈在线
-            if (scheduleClassesDayDtos == null || scheduleClassesDayDtos.size() < 1) {
-                scheduleClassesStaffDto.setWork(true);
-                return;
-            }
+        ScheduleClassesDayDto scheduleClassesDayDto = new ScheduleClassesDayDto();
+        scheduleClassesDayDto.setScheduleId(scheduleClassesDto.getScheduleId());
+        scheduleClassesDayDto.setDay(day + "");
+        List<ScheduleClassesDayDto> scheduleClassesDayDtos = scheduleClassesDayV1InnerServiceSMOImpl.queryScheduleClassesDays(scheduleClassesDayDto);
 
-            if (ScheduleClassesDayDto.WORKDAY_NO.equals(scheduleClassesDayDtos.get(0).getWorkday())) {
-                scheduleClassesStaffDto.setWork(false);
-                return;
-            }
+        //设置问题 ,这里默认反馈在线
+        if (scheduleClassesDayDtos == null || scheduleClassesDayDtos.size() < 1) {
+            scheduleClassesStaffDto.setWork(true);
+            return;
+        }
 
+        if (ScheduleClassesDayDto.WORKDAY_NO.equals(scheduleClassesDayDtos.get(0).getWorkday())) {
+            scheduleClassesStaffDto.setWork(false);
+            return;
+        }
 
-            List<ScheduleClassesTimeDto> times = scheduleClassesDayDtos.get(0).getTimes();
 
-            scheduleClassesStaffDto.setTimes(times);
+        List<ScheduleClassesTimeDto> times = scheduleClassesDayDtos.get(0).getTimes();
 
-            String startTime = null;
-            String endTime = null;
-            for (ScheduleClassesTimeDto time : times) {
+        scheduleClassesStaffDto.setTimes(times);
+
+        String startTime = null;
+        String endTime = null;
+        for (ScheduleClassesTimeDto time : times) {
 
-                startTime = today + " " + time.getStartTime() + ":00";
-                endTime = today + " " + time.getEndTime() + ":00";
+            startTime = today + " " + time.getStartTime() + ":00";
+            endTime = today + " " + time.getEndTime() + ":00";
 
-                if (DateUtil.belongCalendar(scheduleClassesStaffDto.getToday(), DateUtil.getDateFromStringA(startTime), DateUtil.getDateFromStringA(endTime))) {
-                    scheduleClassesStaffDto.setWork(true);
-                    return;
-                }
+            if (DateUtil.belongCalendar(scheduleClassesStaffDto.getToday(), DateUtil.getDateFromStringA(startTime), DateUtil.getDateFromStringA(endTime))) {
+                scheduleClassesStaffDto.setWork(true);
+                return;
             }
-            scheduleClassesStaffDto.setWork(false);
-        }catch (Exception e){
-            e.printStackTrace();
-            throw e;
         }
+        scheduleClassesStaffDto.setWork(false);
+
     }
 
     @Override
@@ -355,7 +360,8 @@ public class ScheduleClassesStaffV1InnerServiceSMOImpl extends BaseServiceSMO im
             return scheduleClassesStaffDto;
         }
 
-        String curMonth = scheduleClassesStaffDto.getCurDate();;
+        String curMonth = scheduleClassesStaffDto.getCurDate();
+        ;
         String curMonthDay = curMonth + "-01";
 
         Calendar calendar = Calendar.getInstance();
@@ -384,11 +390,11 @@ public class ScheduleClassesStaffV1InnerServiceSMOImpl extends BaseServiceSMO im
         int curDay = 1;
         for (int day = 1; day <= maxDay; day++) {
             scDay = new ScheduleClassesDayDto();
-            String today = curMonth + "-"+day;
+            String today = curMonth + "-" + day;
 
             int scheduleCycle = Integer.parseInt(scheduleClassesDto.getScheduleCycle());
 
-            int allDay = DateUtil.daysBetween(scheduleClassesDto.getComputeTime(), today)+1;
+            int allDay = DateUtil.daysBetween(scheduleClassesDto.getComputeTime(), today) + 1;
             curDay = allDay % scheduleCycle;
 //
 //            if (curDay == 0 && day == 1) {
@@ -402,15 +408,14 @@ public class ScheduleClassesStaffV1InnerServiceSMOImpl extends BaseServiceSMO im
             }
 
 
-
-            scDay.setDay(day+"");
+            scDay.setDay(day + "");
             //计算 排班
-            for(ScheduleClassesDayDto scheduleClassesDayDto1 : scheduleClassesDayDtos){
-                if((curDay+"").equals(scheduleClassesDayDto1.getDay())){
+            for (ScheduleClassesDayDto scheduleClassesDayDto1 : scheduleClassesDayDtos) {
+                if ((curDay + "").equals(scheduleClassesDayDto1.getDay())) {
                     tmpScheduleClassesDayDto = scheduleClassesDayDto1;
                 }
             }
-            if(tmpScheduleClassesDayDto != null ){
+            if (tmpScheduleClassesDayDto != null) {
                 scDay.setWorkday(tmpScheduleClassesDayDto.getWorkday());
                 scDay.setWorkdayName(tmpScheduleClassesDayDto.getWorkdayName());
                 scDay.setTimes(tmpScheduleClassesDayDto.getTimes());
@@ -433,7 +438,7 @@ public class ScheduleClassesStaffV1InnerServiceSMOImpl extends BaseServiceSMO im
         for (int day = 1; day <= maxDay; day++) {
             scDay = new ScheduleClassesDayDto();
             Calendar today = Calendar.getInstance();
-            today.setTime(DateUtil.getDateFromStringB(curMonth + "-"+day));
+            today.setTime(DateUtil.getDateFromStringB(curMonth + "-" + day));
             int week = today.get(Calendar.WEEK_OF_MONTH);
             curDay = today.get(Calendar.DAY_OF_WEEK);
 
@@ -448,21 +453,21 @@ public class ScheduleClassesStaffV1InnerServiceSMOImpl extends BaseServiceSMO im
                 }
             }
 
-            scDay.setDay(day+"");
+            scDay.setDay(day + "");
             //计算 排班
-            for(ScheduleClassesDayDto scheduleClassesDayDto1 : scheduleClassesDayDtos){
-                if((curDay+"").equals(scheduleClassesDayDto1.getDay()) && (week+"").equals(scheduleClassesDayDto1.getWeekFlag())){
+            for (ScheduleClassesDayDto scheduleClassesDayDto1 : scheduleClassesDayDtos) {
+                if ((curDay + "").equals(scheduleClassesDayDto1.getDay()) && (week + "").equals(scheduleClassesDayDto1.getWeekFlag())) {
                     tmpScheduleClassesDayDto = scheduleClassesDayDto1;
                 }
             }
-            if(tmpScheduleClassesDayDto == null){ // 没有设置周
-                for(ScheduleClassesDayDto scheduleClassesDayDto1 : scheduleClassesDayDtos){
-                    if((curDay+"").equals(scheduleClassesDayDto1.getDay())){
+            if (tmpScheduleClassesDayDto == null) { // 没有设置周
+                for (ScheduleClassesDayDto scheduleClassesDayDto1 : scheduleClassesDayDtos) {
+                    if ((curDay + "").equals(scheduleClassesDayDto1.getDay())) {
                         tmpScheduleClassesDayDto = scheduleClassesDayDto1;
                     }
                 }
             }
-            if(tmpScheduleClassesDayDto != null ){
+            if (tmpScheduleClassesDayDto != null) {
                 scDay.setWorkday(tmpScheduleClassesDayDto.getWorkday());
                 scDay.setWorkdayName(tmpScheduleClassesDayDto.getWorkdayName());
                 scDay.setTimes(tmpScheduleClassesDayDto.getTimes());
@@ -486,14 +491,14 @@ public class ScheduleClassesStaffV1InnerServiceSMOImpl extends BaseServiceSMO im
         for (int day = 1; day <= maxDay; day++) {
             scDay = new ScheduleClassesDayDto();
             curDay = day;
-            scDay.setDay(day+"");
+            scDay.setDay(day + "");
             //计算 排班
-            for(ScheduleClassesDayDto scheduleClassesDayDto1 : scheduleClassesDayDtos){
-                if((curDay+"").equals(scheduleClassesDayDto1.getDay())){
+            for (ScheduleClassesDayDto scheduleClassesDayDto1 : scheduleClassesDayDtos) {
+                if ((curDay + "").equals(scheduleClassesDayDto1.getDay())) {
                     tmpScheduleClassesDayDto = scheduleClassesDayDto1;
                 }
             }
-            if(tmpScheduleClassesDayDto != null ){
+            if (tmpScheduleClassesDayDto != null) {
                 scDay.setWorkday(tmpScheduleClassesDayDto.getWorkday());
                 scDay.setWorkdayName(tmpScheduleClassesDayDto.getWorkdayName());
                 scDay.setTimes(tmpScheduleClassesDayDto.getTimes());