|
|
@@ -188,50 +188,53 @@ public class FosterwxMobileController extends BaseController<FosterwxMobile> {
|
|
|
setUpdateAt(LocalDateTime.now());
|
|
|
}}, new QueryWrapper<FosterwxMobilePool>().eq("pool_index", fosterwxMobile.getMobileUnioCode()));
|
|
|
}
|
|
|
- // 判断开始做任务时间是否设置了
|
|
|
- // 获取最新的一条时间任务
|
|
|
- FosterwxMobileTaskTimeList fosterwxMobileTaskTimeList = new FosterwxMobileTaskTimeList();
|
|
|
-
|
|
|
- if (!editHandle.getRaw().getTaskTimeLists().isEmpty()) {
|
|
|
- FosterwxMobileTaskTimeList sample = editHandle.getRaw().getTaskTimeLists().get(editHandle.getRaw().getTaskTimeLists().size() - 1);
|
|
|
- fosterwxMobileTaskTimeList.setTaskStartAt(sample.getTaskStartAt());
|
|
|
- fosterwxMobileTaskTimeList.setTaskEndAt(sample.getTaskEndAt());
|
|
|
- fosterwxMobileTaskTimeList.setTemplateId(sample.getTemplateId());
|
|
|
- fosterwxMobileTaskTimeList.setDefaultSendTime(sample.getDefaultSendTime());
|
|
|
- }
|
|
|
|
|
|
- AjaxResult ajaxResult = null;
|
|
|
- // 全新增加任务的场合
|
|
|
- // 批量操作的时候传过来的件数不能跟数据库件数比较 因此独立判断
|
|
|
- if (editHandle.getRaw().getTaskTimeLists().size() > oldTimeList.size() || (editHandle.getRaw().getType() != null && editHandle.getRaw().getTaskTimeLists().size() == 2)) {
|
|
|
- if (null != fosterwxMobileTaskTimeList.getTaskStartAt()) {
|
|
|
- if (null != fosterwxMobileTaskTimeList.getTaskEndAt()) {
|
|
|
- LocalDate startDate = fosterwxMobileTaskTimeList.getTaskStartAt().toLocalDate();
|
|
|
- LocalDate endDate = fosterwxMobileTaskTimeList.getTaskEndAt().toLocalDate();
|
|
|
-
|
|
|
- long dayLong = endDate.toEpochDay() - startDate.toEpochDay() + 1;
|
|
|
-
|
|
|
- LambdaQueryWrapper<FosterwxTaskList> fosterTaskListLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
- fosterTaskListLambdaQueryWrapper.eq(FosterwxTaskList::getTemplateId, fosterwxMobileTaskTimeList.getTemplateId());
|
|
|
- if (dayLong > fosterwxTaskListService.count(fosterTaskListLambdaQueryWrapper))
|
|
|
- return AjaxResult.error(fosterwxMobile.getMobileUnioCode() + "设置的持续时间超过模板的长度");
|
|
|
- }
|
|
|
|
|
|
- fosterwxMobileTaskTimeListService.insertByMobile(fosterwxMobile, fosterwxMobileTaskTimeList);
|
|
|
- ajaxResult = fosterwxTaskScheduleService.insertByTaskDate(fosterwxMobile, fosterwxMobileTaskTimeList, authUser, false);
|
|
|
+ AjaxResult ajaxResult = null;
|
|
|
+ if (null != editHandle.getRaw().getTaskTimeLists()) {
|
|
|
+ // 判断开始做任务时间是否设置了
|
|
|
+ // 获取最新的一条时间任务
|
|
|
+ FosterwxMobileTaskTimeList fosterwxMobileTaskTimeList = new FosterwxMobileTaskTimeList();
|
|
|
+
|
|
|
+ if (!editHandle.getRaw().getTaskTimeLists().isEmpty()) {
|
|
|
+ FosterwxMobileTaskTimeList sample = editHandle.getRaw().getTaskTimeLists().get(editHandle.getRaw().getTaskTimeLists().size() - 1);
|
|
|
+ fosterwxMobileTaskTimeList.setTaskStartAt(sample.getTaskStartAt());
|
|
|
+ fosterwxMobileTaskTimeList.setTaskEndAt(sample.getTaskEndAt());
|
|
|
+ fosterwxMobileTaskTimeList.setTemplateId(sample.getTemplateId());
|
|
|
+ fosterwxMobileTaskTimeList.setDefaultSendTime(sample.getDefaultSendTime());
|
|
|
}
|
|
|
- } else {
|
|
|
- // 原有任务
|
|
|
- if (null != fosterwxMobileTaskTimeList.getTaskStartAt() && oldTimeList.get(oldTimeList.size() - 1).getTaskStartAt() == null) {
|
|
|
- if (fosterwxMobile.getWxStatus() != 2) {
|
|
|
+ // 全新增加任务的场合
|
|
|
+ // 批量操作的时候传过来的件数不能跟数据库件数比较 因此独立判断
|
|
|
+ if (editHandle.getRaw().getTaskTimeLists().size() > oldTimeList.size() || (editHandle.getRaw().getType() != null && editHandle.getRaw().getTaskTimeLists().size() == 2)) {
|
|
|
+ if (null != fosterwxMobileTaskTimeList.getTaskStartAt()) {
|
|
|
+ if (null != fosterwxMobileTaskTimeList.getTaskEndAt()) {
|
|
|
+ LocalDate startDate = fosterwxMobileTaskTimeList.getTaskStartAt().toLocalDate();
|
|
|
+ LocalDate endDate = fosterwxMobileTaskTimeList.getTaskEndAt().toLocalDate();
|
|
|
+
|
|
|
+ long dayLong = endDate.toEpochDay() - startDate.toEpochDay() + 1;
|
|
|
+
|
|
|
+ LambdaQueryWrapper<FosterwxTaskList> fosterTaskListLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ fosterTaskListLambdaQueryWrapper.eq(FosterwxTaskList::getTemplateId, fosterwxMobileTaskTimeList.getTemplateId());
|
|
|
+ if (dayLong > fosterwxTaskListService.count(fosterTaskListLambdaQueryWrapper))
|
|
|
+ return AjaxResult.error(fosterwxMobile.getMobileUnioCode() + "设置的持续时间超过模板的长度");
|
|
|
+ }
|
|
|
+
|
|
|
+ fosterwxMobileTaskTimeListService.insertByMobile(fosterwxMobile, fosterwxMobileTaskTimeList);
|
|
|
ajaxResult = fosterwxTaskScheduleService.insertByTaskDate(fosterwxMobile, fosterwxMobileTaskTimeList, authUser, false);
|
|
|
}
|
|
|
- } else if (null != fosterwxMobileTaskTimeList.getTaskEndAt() && oldTimeList.get(oldTimeList.size() - 1).getTaskEndAt() == null) {
|
|
|
- fosterwxMobileTaskTimeListService.update(new FosterwxMobileTaskTimeList() {{
|
|
|
- setTaskEndAt(fosterwxMobileTaskTimeList.getTaskEndAt());
|
|
|
- }}, new LambdaQueryWrapper<FosterwxMobileTaskTimeList>().eq(FosterwxMobileTaskTimeList::getMobileUnioCode, fosterwxMobile.getMobileUnioCode()));
|
|
|
- // 删除后面的任务
|
|
|
- fosterwxTaskScheduleService.remove(new LambdaQueryWrapper<FosterwxTaskSchedule>().eq(FosterwxTaskSchedule::getStationId, oldVO.getStationId()).eq(FosterwxTaskSchedule::getMobileCode, oldVO.getMobileCode()).gt(FosterwxTaskSchedule::getSendDate, fosterwxMobileTaskTimeList.getTaskEndAt()));
|
|
|
+ } else {
|
|
|
+ // 原有任务
|
|
|
+ if (null != fosterwxMobileTaskTimeList.getTaskStartAt() && oldTimeList.get(oldTimeList.size() - 1).getTaskStartAt() == null) {
|
|
|
+ if (fosterwxMobile.getWxStatus() != 2) {
|
|
|
+ ajaxResult = fosterwxTaskScheduleService.insertByTaskDate(fosterwxMobile, fosterwxMobileTaskTimeList, authUser, false);
|
|
|
+ }
|
|
|
+ } else if (null != fosterwxMobileTaskTimeList.getTaskEndAt() && oldTimeList.get(oldTimeList.size() - 1).getTaskEndAt() == null) {
|
|
|
+ fosterwxMobileTaskTimeListService.update(new FosterwxMobileTaskTimeList() {{
|
|
|
+ setTaskEndAt(fosterwxMobileTaskTimeList.getTaskEndAt());
|
|
|
+ }}, new LambdaQueryWrapper<FosterwxMobileTaskTimeList>().eq(FosterwxMobileTaskTimeList::getMobileUnioCode, fosterwxMobile.getMobileUnioCode()));
|
|
|
+ // 删除后面的任务
|
|
|
+ fosterwxTaskScheduleService.remove(new LambdaQueryWrapper<FosterwxTaskSchedule>().eq(FosterwxTaskSchedule::getStationId, oldVO.getStationId()).eq(FosterwxTaskSchedule::getMobileCode, oldVO.getMobileCode()).gt(FosterwxTaskSchedule::getSendDate, fosterwxMobileTaskTimeList.getTaskEndAt()));
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
// 判断微信状态是否更新为封禁
|
|
|
@@ -240,7 +243,7 @@ public class FosterwxMobileController extends BaseController<FosterwxMobile> {
|
|
|
}
|
|
|
// 判断微信状态是否更新为正常
|
|
|
if (fosterwxMobile.getWxStatus() == 1 && oldVO.getWxStatus() == 2) {
|
|
|
- ajaxResult = fosterwxTaskScheduleService.insertByTaskDate(fosterwxMobile, fosterwxMobileTaskTimeList, authUser, true);
|
|
|
+ ajaxResult = fosterwxTaskScheduleService.insertByTaskDate(fosterwxMobile, oldTimeList.get(oldTimeList.size() - 1), authUser, true);
|
|
|
}
|
|
|
if (ajaxResult != null) {
|
|
|
return AjaxResult.error(id + "账号批量操作中出现错误");
|