|
|
@@ -59,6 +59,12 @@ public class FosterwxMobileController extends BaseController<FosterwxMobile> {
|
|
|
@Autowired
|
|
|
private CorpService corpService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private FosterwxMobileTaskTimeListService fosterwxMobileTaskTimeListService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private FosterwxTaskTemplateService fosterwxTaskTemplateService;
|
|
|
+
|
|
|
/*
|
|
|
* @fast
|
|
|
* 默认生成的控制器所继承的父类中有index/add/edit/del四个基础方法,均为post json请求
|
|
|
@@ -102,12 +108,26 @@ public class FosterwxMobileController extends BaseController<FosterwxMobile> {
|
|
|
return AjaxResult.error("ids null");
|
|
|
}
|
|
|
FosterwxMobile res = service.getOne(new QueryWrapper<FosterwxMobile>().eq("id", ids));
|
|
|
+
|
|
|
+ // 获取默认模板号
|
|
|
+ FosterwxStation fosterwxStation = fosterwxStationService.getById(res.getStationId());
|
|
|
+ if (null == fosterwxStation) return AjaxResult.error("无法获取站点");
|
|
|
+ res.setTemplateId(fosterwxStation.getTaskTemplateId());
|
|
|
+
|
|
|
Corp corp = corpService.getById(res.getWorkWxCorpId());
|
|
|
if (null != corp) {
|
|
|
res.setWxAppid(corp.getWxCorpid());
|
|
|
}
|
|
|
List<FosterwxMobileWxfriend> friendList = fosterwxMobileWxfriendService.list(new QueryWrapper<FosterwxMobileWxfriend>().eq("mobile_id", res.getId()).orderByAsc("seq"));
|
|
|
res.setFriend(friendList);
|
|
|
+
|
|
|
+ // 获取账号任务时间list
|
|
|
+ List<FosterwxMobileTaskTimeList> fosterwxMobileTaskTimeLists = fosterwxMobileTaskTimeListService.list(new LambdaQueryWrapper<FosterwxMobileTaskTimeList>().eq(FosterwxMobileTaskTimeList::getMobileUnioCode, res.getMobileUnioCode()).orderByAsc(FosterwxMobileTaskTimeList::getId));
|
|
|
+
|
|
|
+ if (!fosterwxMobileTaskTimeLists.isEmpty()) {
|
|
|
+ res.setTaskTimeLists(fosterwxMobileTaskTimeLists);
|
|
|
+ }
|
|
|
+
|
|
|
return AjaxResult.success(Constants.SUCCESS, res);
|
|
|
}
|
|
|
|
|
|
@@ -130,8 +150,9 @@ public class FosterwxMobileController extends BaseController<FosterwxMobile> {
|
|
|
fosterwxMobileService.save(addHandle.getRaw());
|
|
|
// 判断开始做任务时间是否设置了
|
|
|
AjaxResult ajaxResult = null;
|
|
|
- if (null != addHandle.getRaw().getTaskStartAt()) {
|
|
|
- ajaxResult = fosterwxTaskScheduleService.insertByTaskDate(addHandle.getRaw(), authUser, false);
|
|
|
+ if (null != addHandle.getRaw().getTaskTimeLists().get(0).getTaskStartAt()) {
|
|
|
+ fosterwxMobileTaskTimeListService.insertByMobile(addHandle.getRaw(), addHandle.getRaw().getTaskTimeLists().get(0));
|
|
|
+ ajaxResult = fosterwxTaskScheduleService.insertByTaskDate(addHandle.getRaw(), addHandle.getRaw().getTaskTimeLists().get(0), authUser, false);
|
|
|
}
|
|
|
|
|
|
if (null == ajaxResult) return AjaxResult.success(HttpMsg.success, addHandle.getRaw().getId());
|
|
|
@@ -146,8 +167,10 @@ public class FosterwxMobileController extends BaseController<FosterwxMobile> {
|
|
|
this.onUpdate(editHandle);
|
|
|
FosterwxMobile fosterwxMobile = editHandle.getRaw();
|
|
|
FosterwxMobile oldVO = fosterwxMobileService.getById(id);
|
|
|
+ List<FosterwxMobileTaskTimeList> oldTimeList = fosterwxMobileTaskTimeListService.list(new LambdaQueryWrapper<FosterwxMobileTaskTimeList>().eq(FosterwxMobileTaskTimeList::getMobileUnioCode, oldVO.getMobileUnioCode()).orderByAsc(FosterwxMobileTaskTimeList::getId));
|
|
|
// 新增账号
|
|
|
fosterwxMobileService.update(fosterwxMobile, new QueryWrapper<FosterwxMobile>().eq("id", id));
|
|
|
+
|
|
|
fosterwxMobile = fosterwxMobileService.getById(id);
|
|
|
// 更新个微池个微二维码及企微appid
|
|
|
FosterwxMobile finalFosterwxMobile = fosterwxMobile;
|
|
|
@@ -161,10 +184,30 @@ public class FosterwxMobileController extends BaseController<FosterwxMobile> {
|
|
|
}}, new QueryWrapper<FosterwxMobilePool>().eq("pool_index", fosterwxMobile.getMobileUnioCode()));
|
|
|
}
|
|
|
// 判断开始做任务时间是否设置了
|
|
|
+ // 获取最新的一条时间任务
|
|
|
+ FosterwxMobileTaskTimeList fosterwxMobileTaskTimeList = new FosterwxMobileTaskTimeList();
|
|
|
+
|
|
|
+ if (!editHandle.getRaw().getTaskTimeLists().isEmpty()) {
|
|
|
+ fosterwxMobileTaskTimeList = editHandle.getRaw().getTaskTimeLists().get(editHandle.getRaw().getTaskTimeLists().size() - 1);
|
|
|
+ }
|
|
|
+
|
|
|
AjaxResult ajaxResult = null;
|
|
|
- if (null != fosterwxMobile.getTaskStartAt() && oldVO.getTaskStartAt() == null) {
|
|
|
- if (fosterwxMobile.getWxStatus() != 2) {
|
|
|
- ajaxResult = fosterwxTaskScheduleService.insertByTaskDate(fosterwxMobile, authUser, false);
|
|
|
+ // 全新增加任务的场合
|
|
|
+ if (editHandle.getRaw().getTaskTimeLists().size() > oldTimeList.size()) {
|
|
|
+ if (null != fosterwxMobileTaskTimeList.getTaskStartAt()) {
|
|
|
+ fosterwxMobileTaskTimeListService.insertByMobile(fosterwxMobile, fosterwxMobileTaskTimeList);
|
|
|
+ ajaxResult = fosterwxTaskScheduleService.insertByTaskDate(fosterwxMobile, fosterwxMobileTaskTimeList, authUser, false);
|
|
|
+ }
|
|
|
+ } 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.updateById(fosterwxMobileTaskTimeList);
|
|
|
+ // 删除后面的任务
|
|
|
+ fosterwxTaskScheduleService.remove(new LambdaQueryWrapper<FosterwxTaskSchedule>().eq(FosterwxTaskSchedule::getStationId, oldVO.getStationId()).eq(FosterwxTaskSchedule::getMobileCode, oldVO.getMobileCode()).gt(FosterwxTaskSchedule::getSendDate, fosterwxMobileTaskTimeList.getTaskEndAt()));
|
|
|
}
|
|
|
}
|
|
|
// 判断微信状态是否更新为封禁
|
|
|
@@ -173,7 +216,7 @@ public class FosterwxMobileController extends BaseController<FosterwxMobile> {
|
|
|
}
|
|
|
// 判断微信状态是否更新为正常
|
|
|
if (fosterwxMobile.getWxStatus() == 1 && oldVO.getWxStatus() == 2) {
|
|
|
- ajaxResult = fosterwxTaskScheduleService.insertByTaskDate(fosterwxMobile, authUser, true);
|
|
|
+ ajaxResult = fosterwxTaskScheduleService.insertByTaskDate(fosterwxMobile, fosterwxMobileTaskTimeList, authUser, true);
|
|
|
}
|
|
|
if (ajaxResult != null) {
|
|
|
return AjaxResult.error(id + "账号批量操作中出现错误");
|
|
|
@@ -260,7 +303,16 @@ public class FosterwxMobileController extends BaseController<FosterwxMobile> {
|
|
|
for (int i = 1; i <= dayOfMonth; i++) {
|
|
|
String date = getForsterwxMobileHandle.getYear() + "-" + String.format("%02d", Integer.valueOf(getForsterwxMobileHandle.getMonth())) + "-" + String.format("%02d", i);
|
|
|
|
|
|
- res.put(date, fosterwxTaskScheduleService.getTaskListByMobileCode(stationId, mobileCode, date));
|
|
|
+ List<FosterwxTaskSchedule> fosterwxTaskScheduleList = fosterwxTaskScheduleService.getTaskListByMobileCode(stationId, mobileCode, date);
|
|
|
+
|
|
|
+ fosterwxTaskScheduleList.forEach(fosterwxTaskSchedule -> {
|
|
|
+ FosterwxTaskTemplate fosterwxTaskTemplate = fosterwxTaskTemplateService.getById(fosterwxTaskSchedule.getTemplateId());
|
|
|
+ if (null != fosterwxTaskTemplate) {
|
|
|
+ fosterwxTaskSchedule.setTemplateName(fosterwxTaskTemplate.getTemplateName());
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ res.put(date, fosterwxTaskScheduleList);
|
|
|
}
|
|
|
|
|
|
|