Browse Source

Merge branch 'master' of http://192.168.20.122:3000/root/qiyewechatApp

yu_ber 4 years ago
parent
commit
2dbd08dfd0

+ 30 - 15
mpwechatApp/src/main/java/com/liangjian11/wx/mp/service/impl/TimesMessageServiceImpl.java

@@ -21,8 +21,10 @@ public class TimesMessageServiceImpl extends ServiceImpl<TimesMessageMapper, Tim
 
     private final TimesMessageMapper timesMessageMapper;
     private final MessageService messageService;
+    private final String[] weekName;
 
     public TimesMessageServiceImpl(TimesMessageMapper timesMessageMapper ,MessageService messageService){
+        weekName=new String[]{"每天","周一","周二","周三","周四","周五","周六","周日"};
         this.timesMessageMapper=timesMessageMapper;
         this.messageService=messageService;
     }
@@ -80,8 +82,6 @@ public class TimesMessageServiceImpl extends ServiceImpl<TimesMessageMapper, Tim
             return new ResultInfo(ResultInfo.TYPE_RESULT_FAIL, 2001, "缺少appId");
         if(view.getMessage()==null ||StringUtils.isEmpty(view.getMessage().getMsgType()))
             return new ResultInfo(ResultInfo.TYPE_RESULT_FAIL, 2001, "消息不能为空");
-//        if(view.getTimesList()==null || view.getTimesList().size()==0)
-//            return new ResultInfo(ResultInfo.TYPE_RESULT_FAIL, 2001, "时间段不能为空");
         if(view.getMessage().getMsgType().equals("text"))
             if(StringUtils.isEmpty(view.getMessage().getContent()) && StringUtils.isEmpty(view.getMessage().getMediaId()))
                 return new ResultInfo(ResultInfo.TYPE_RESULT_FAIL, 2001, "内容和图片必须填写一个");
@@ -99,13 +99,6 @@ public class TimesMessageServiceImpl extends ServiceImpl<TimesMessageMapper, Tim
         List<TimesMessage> oldTMList = timesMessageMapper.selectList(queryWrapper1);
         if(oldTMList !=null && oldTMList.size()>0 && !oldTMList.get(0).getTableNo().equals(view.getTableNo()))
             return new ResultInfo(ResultInfo.TYPE_RESULT_FAIL, 2001, "已设置了这天的时间段");
-
-        QueryWrapper everyQuery=new QueryWrapper();
-        everyQuery.eq("appId",appId);
-        everyQuery.eq("week",(short)0);
-        everyQuery.eq("disable",(short)0);
-        List<TimesMessage> everyDayTimes = timesMessageMapper.selectList(everyQuery);
-
         if(timesList!=null && timesList.size()>0){
             for(TimesMessage t1:timesList){
                 if(t1.getBeginTime()==null || t1.getEndTime()==null)
@@ -118,12 +111,34 @@ public class TimesMessageServiceImpl extends ServiceImpl<TimesMessageMapper, Tim
                     if(t2.getEndTime().before(t1.getEndTime()) && t1.getBeginTime().before(t2.getEndTime()))
                         return new ResultInfo(ResultInfo.TYPE_RESULT_FAIL, 2001, "有重复时间段");
                 }
-                if(everyDayTimes!=null && everyDayTimes.size()>0){
-                    for(TimesMessage t2:everyDayTimes){
-                        if(t2.getBeginTime().after(t1.getBeginTime()) && t2.getBeginTime().before(t1.getEndTime()))
-                            return new ResultInfo(ResultInfo.TYPE_RESULT_FAIL, 2001, "与每天的时间段有重复");
-                        if(t2.getEndTime().before(t1.getEndTime()) && t1.getBeginTime().before(t2.getEndTime()))
-                            return new ResultInfo(ResultInfo.TYPE_RESULT_FAIL, 2001, "与每天的时间段有重复");
+                QueryWrapper existQuery=new QueryWrapper();
+                if(view.getWeek() != (short)0){
+                    existQuery.eq("appId",appId);
+                    existQuery.eq("week",(short)0);
+                    existQuery.eq("disable",(short)0);
+                    List<TimesMessage> everyDayTimes = timesMessageMapper.selectList(existQuery);
+                    if(everyDayTimes!=null && everyDayTimes.size()>0){
+                        for (TimesMessage t2 : everyDayTimes) {
+                            if (t2.getBeginTime().after(t1.getBeginTime()) && t2.getBeginTime().before(t1.getEndTime()))
+                                return new ResultInfo(ResultInfo.TYPE_RESULT_FAIL, 2001, "与每天的时间段有重复");
+                            if (t2.getEndTime().before(t1.getEndTime()) && t1.getBeginTime().before(t2.getEndTime()))
+                                return new ResultInfo(ResultInfo.TYPE_RESULT_FAIL, 2001, "与每天的时间段有重复");
+                        }
+                    }
+                }
+                if(view.getWeek()==(short)0){
+                    existQuery=new QueryWrapper();
+                    existQuery.eq("appId",appId);
+                    existQuery.in("week",Arrays.asList(1,2,3,4,5,6,7));
+                    existQuery.eq("disable",(short)0);
+                    List<TimesMessage> weekDayTimes = timesMessageMapper.selectList(existQuery);
+                    if(weekDayTimes !=null && weekDayTimes.size()>0){
+                        for (TimesMessage t2 : weekDayTimes) {
+                            if (t2.getBeginTime().after(t1.getBeginTime()) && t2.getBeginTime().before(t1.getEndTime()))
+                                return new ResultInfo(ResultInfo.TYPE_RESULT_FAIL, 2001, "与"+weekName[t2.getWeek()]+"的时间段有重复");
+                            if (t2.getEndTime().before(t1.getEndTime()) && t1.getBeginTime().before(t2.getEndTime()))
+                                return new ResultInfo(ResultInfo.TYPE_RESULT_FAIL, 2001, "与"+weekName[t2.getWeek()]+"的时间段有重复");
+                        }
                     }
                 }
                 t1.setAppId(appId);