diff --git a/ghy-common/src/main/java/com/ghy/common/enums/WxMsgEnum.java b/ghy-common/src/main/java/com/ghy/common/enums/WxMsgEnum.java index 2eb719b2..d2b32a3f 100644 --- a/ghy-common/src/main/java/com/ghy/common/enums/WxMsgEnum.java +++ b/ghy-common/src/main/java/com/ghy/common/enums/WxMsgEnum.java @@ -27,7 +27,8 @@ public enum WxMsgEnum { AFTER_SALES_TIMEOUT_ORDER("", "2uC9_lXInXg0_7Bu7N6YVBOgolTxaNcwRXQPF0H-Di0"), /**服务工单超时通知**/ TIMEOUT_ORDER("", "xdWLWqUbNY2iPYSDxG04Dr2fSTktqXN23xsoBU_9zhc"), - + /** 明日单通知/一小时订单 工单处理提醒*/ + ONEHOUR_ORDER("", "HZ1R0FU7Zn6C-bxG3X6yPnhq2beT5MhRZHtnS8PifiA"), /** 急报 **/ WARN_ORDER("", "0RSuVHHP_okErJ1acQmIirBU7TrQYR0xPBgBHyt_azA"), diff --git a/ghy-quartz/src/main/java/com/ghy/quartz/service/impl/OrderServiceImpl.java b/ghy-quartz/src/main/java/com/ghy/quartz/service/impl/OrderServiceImpl.java index 2089160d..8467f9ca 100644 --- a/ghy-quartz/src/main/java/com/ghy/quartz/service/impl/OrderServiceImpl.java +++ b/ghy-quartz/src/main/java/com/ghy/quartz/service/impl/OrderServiceImpl.java @@ -317,6 +317,9 @@ public class OrderServiceImpl implements OrderService { if (order.getOrderStatus().equals(OrderStatus.GOING.code())) { // 服务中状态要按预计上门时间计算4h超时 Date overTime = DateUtils.addMilliseconds(order.getExpectTimeStart(), 30 * 60 * 1000); + + Date oneHourTime=DateUtils.addMilliseconds(order.getExpectTimeStart(), -60 * 60 * 1000); + log.info("订单开始前一个小时 订单号:[{}]时间:{} 当前时间 {}", order.getId(),oneHourTime,now); if (overTime.before(now)) { log.info("订单[{}]待上门状态超时30分钟", order.getId()); OrderTimeoutRecord record = new OrderTimeoutRecord(order.getId(), order.getWorkerId(), order.getDeptId(), order.getOrderStatus()); @@ -333,9 +336,31 @@ public class OrderServiceImpl implements OrderService { // 消息组装。 Map paramsNew = new HashMap<>(); // 订单编号 - paramsNew.put("thing9", "您有1条订单超时未上门/未服务"); + paramsNew.put("thing13", "您有1条订单超时未上门/未服务"); // 名称 - paramsNew.put("thing10", "进入【我的订单--待上门】处理"); + paramsNew.put("thing7", "进入【我的订单--待上门】处理"); + CustomerAddress address = customerAddressService.selectByCustomerAddressId(orderMaster.getAddressId()); + paramsNew.put("thing9", address.getName()); + // 预约时间 + paramsNew.put("time27", com.ghy.common.utils.DateUtils.parseDateToStr("yyyy年MM月dd日 HH:mm", new Date())); + WechatMsgUtils.sendWeChatMsg(WechatMsgUtils.getToken(), worker.getWxOpenId(), WxMsgEnum.ONEHOUR_ORDER, paramsNew); + + } catch (Exception e) { + log.error(e.getMessage(), e); + } + } + if (now.equals(oneHourTime)){ + log.info("订单[{}]约一小时上门服务", order.getId()); + try { + // 推送公众号通知数据。 + Worker worker = workerService.selectById(order.getWorkerId()); + OrderMaster orderMaster = orderMasterService.selectById(order.getOrderMasterId()); + // 消息组装。 + Map paramsNew = new HashMap<>(); + // 订单编号 + paramsNew.put("thing9", "您有1条订单约一小时上门或服务"); + // 名称 + paramsNew.put("thing10", "进入【我的订单--待上门】查看和准备"); CustomerAddress address = customerAddressService.selectByCustomerAddressId(orderMaster.getAddressId()); paramsNew.put("thing2", address.getName()); // 预约时间