|
@@ -308,8 +308,21 @@ public class PlanServiceImpl implements PlanService {
|
|
|
return -1;
|
|
|
// 改变状态,1:上架;0:下架
|
|
|
plan.setOnState(plan.getOnState() + 1);
|
|
|
- if (plan.getOnState() >= 2)
|
|
|
+ if (plan.getOnState() >= 2) {
|
|
|
plan.setOnState(0);
|
|
|
+ // 发送下架信息
|
|
|
+ try {
|
|
|
+ App app = appMapper.selectOne(new QueryWrapper<App>()
|
|
|
+ .eq("appkey", plan.getAppkey())
|
|
|
+ .eq("state", 1)
|
|
|
+ .eq("deleted", "0"));
|
|
|
+ Map<String, Object> map = Dict.create()
|
|
|
+ .set("msg", "您的广告\"" + plan.getPlanName() + "\"已下架")
|
|
|
+ .set("time", DateUtil.date());
|
|
|
+ SendCallBackUtil.sendCallBack(app.getCallBack(), map);
|
|
|
+ } catch (Exception e) {
|
|
|
+ }
|
|
|
+ }
|
|
|
return planMapper.updateById(plan);
|
|
|
}
|
|
|
|
|
@@ -530,4 +543,33 @@ public class PlanServiceImpl implements PlanService {
|
|
|
Page<Equipment> page = new Page<>(bo.getPageNum(), bo.getPageSize());
|
|
|
return equipmentMapper.selectPage(page, equipmentQueryWrapper);
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void checkPlanTime() {
|
|
|
+ /* 逻辑:
|
|
|
+ 每天8点检查一次,假设当前时间为[2023-1-3 08:00:00],
|
|
|
+ 查询[2023-1-3 08:00:00 >= 计划结束时间 >= 2023-1-2 08:00:00]的计划,
|
|
|
+ 获得对应的appkey,在查询这些appkey对应的小程序,
|
|
|
+ 获得对应的callBack,对这些callBack返回信息。
|
|
|
+ */
|
|
|
+ List<Plan> plans = planMapper.selectList(new QueryWrapper<Plan>()
|
|
|
+ .eq("state", StateUtil.APPROVED) // 通过审核
|
|
|
+ .eq("on_state", OnStateUtil.UP) // 上架
|
|
|
+ .apply("plan_end_time <= STR_TO_DATE({0},'%Y-%m-%d %H:%i:%s')", DateUtil.date().toString())
|
|
|
+ .apply("plan_end_time >= STR_TO_DATE({0},'%Y-%m-%d %H:%i:%s')", DateUtil.offsetDay(new Date(), -1).toString()));
|
|
|
+ for (Plan plan : plans) {
|
|
|
+ App app = appMapper.selectOne(new QueryWrapper<App>()
|
|
|
+ .eq("appkey", plan.getAppkey())
|
|
|
+ .eq("state", 1) // 启用
|
|
|
+ .eq("deleted", "0"));
|
|
|
+ Map<String, Object> map = Dict.create()
|
|
|
+ .set("msg", "您的广告\"" + plan.getPlanName() + "\"已下架")
|
|
|
+ .set("time", DateUtil.date());
|
|
|
+ try {
|
|
|
+ SendCallBackUtil.sendCallBack(app.getCallBack(), map);
|
|
|
+ } catch (Exception e) {
|
|
|
+ System.out.println("[appkey:" + app.getAppkey() + ",appName:" + app.getAppName() + "]的回调地址[" + app.getCallBack() + "]失效");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|