新消息通知。新订单下单/子师傅拒绝接单
This commit is contained in:
parent
30b91107b1
commit
ab0183910a
|
|
@ -358,6 +358,15 @@ public class OrderController extends BaseController {
|
||||||
.setWorkerId(assignWorker.getWorkerId()).setWorkerName(assignWorker.getName()).setBehavior(OrderBehaviorEnum.ASSIGN_ORDER);
|
.setWorkerId(assignWorker.getWorkerId()).setWorkerName(assignWorker.getName()).setBehavior(OrderBehaviorEnum.ASSIGN_ORDER);
|
||||||
orderBehaviorService.insert(orderBehavior);
|
orderBehaviorService.insert(orderBehavior);
|
||||||
|
|
||||||
|
// 通知师傅新订单
|
||||||
|
try {
|
||||||
|
Map<String,Object> params = new HashMap<>();
|
||||||
|
params.put("thing1", "新订单通知");
|
||||||
|
params.put("thing5", "收到师傅派单,请及时处理!");
|
||||||
|
wxMsgService.sendWxMsg(acceptWorker.getOpenId(), WxMsgEnum.ORDER_PLAN, params);
|
||||||
|
}catch (Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
return AjaxResult.success();
|
return AjaxResult.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -692,6 +692,19 @@ public class OrderDetailController extends BaseController {
|
||||||
if (UserConstants.ORDER_CODE_NOT_UNIQUE.equals(orderDetailService.checkOrderDetailCodeUnique(orderDetail))) {
|
if (UserConstants.ORDER_CODE_NOT_UNIQUE.equals(orderDetailService.checkOrderDetailCodeUnique(orderDetail))) {
|
||||||
return error("修改详细订单'" + orderDetail.getCode() + "'失败,详细订单编码已存在");
|
return error("修改详细订单'" + orderDetail.getCode() + "'失败,详细订单编码已存在");
|
||||||
}
|
}
|
||||||
|
if(StringUtils.isNotEmpty(orderDetail.getClockInLocation())){
|
||||||
|
OrderDetail model = orderDetailService.selectById(orderDetail.getId());
|
||||||
|
Customer customer = customerService.selectByCustomerId(model.getCustomerId());
|
||||||
|
// 通知师傅新订单
|
||||||
|
try {
|
||||||
|
Map<String,Object> params = new HashMap<>();
|
||||||
|
params.put("thing1", "师傅打卡通知");
|
||||||
|
params.put("thing5", "请确认师傅已到达!");
|
||||||
|
wxMsgService.sendWxMsg(customer.getOpenId(), WxMsgEnum.CUSTOMER_ORDER, params);
|
||||||
|
}catch (Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
return toAjax(orderDetailService.updateOrderDetail(orderDetail));
|
return toAjax(orderDetailService.updateOrderDetail(orderDetail));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -808,6 +821,16 @@ public class OrderDetailController extends BaseController {
|
||||||
.setBehavior(OrderBehaviorEnum.FINISH_ORDER);
|
.setBehavior(OrderBehaviorEnum.FINISH_ORDER);
|
||||||
orderBehaviorService.insert(orderBehavior);
|
orderBehaviorService.insert(orderBehavior);
|
||||||
|
|
||||||
|
Customer customer = customerService.selectByCustomerId(orderDetail.getCustomerId());
|
||||||
|
// 通知师傅新订单
|
||||||
|
try {
|
||||||
|
Map<String,Object> params = new HashMap<>();
|
||||||
|
params.put("thing1", "师傅完单通知");
|
||||||
|
params.put("thing5", "请确认师傅工作已完成!");
|
||||||
|
wxMsgService.sendWxMsg(customer.getOpenId(), WxMsgEnum.CUSTOMER_ORDER, params);
|
||||||
|
}catch (Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
return AjaxResult.success("发起成功");
|
return AjaxResult.success("发起成功");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -821,6 +844,7 @@ public class OrderDetailController extends BaseController {
|
||||||
// 查询订单信息
|
// 查询订单信息
|
||||||
OrderDetail od = this.orderDetailService.selectById(orderDetail.getId());
|
OrderDetail od = this.orderDetailService.selectById(orderDetail.getId());
|
||||||
OrderMaster om = orderMasterService.selectById(od.getOrderMasterId());
|
OrderMaster om = orderMasterService.selectById(od.getOrderMasterId());
|
||||||
|
Worker masterWorker = workerService.selectById(om.getWorkerId());
|
||||||
Worker worker = workerService.selectById(od.getWorkerId());
|
Worker worker = workerService.selectById(od.getWorkerId());
|
||||||
// 删除子单
|
// 删除子单
|
||||||
orderDetailService.deleteOrderDetailByIds(orderDetail.getId().toString());
|
orderDetailService.deleteOrderDetailByIds(orderDetail.getId().toString());
|
||||||
|
|
@ -865,9 +889,9 @@ public class OrderDetailController extends BaseController {
|
||||||
// 通知师傅新订单
|
// 通知师傅新订单
|
||||||
try {
|
try {
|
||||||
Map<String,Object> params = new HashMap<>();
|
Map<String,Object> params = new HashMap<>();
|
||||||
params.put("thing1", "订单被拒通知!");
|
params.put("thing1", "订单被拒通知");
|
||||||
params.put("thing5", "订单:"+ orderDetail.getCode() +"被拒绝,请及时处理!");
|
params.put("thing5", "订单被拒绝,请及时处理!");
|
||||||
wxMsgService.sendWxMsg(worker.getOpenId(), WxMsgEnum.ORDER_PLAN, params);
|
wxMsgService.sendWxMsg(masterWorker.getOpenId(), WxMsgEnum.ORDER_PLAN, params);
|
||||||
}catch (Exception e){
|
}catch (Exception e){
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -104,8 +104,8 @@ swagger:
|
||||||
|
|
||||||
#小程序配置
|
#小程序配置
|
||||||
wx:
|
wx:
|
||||||
# appId: 'wxc39c2af3ea24cd37'
|
mallAppId: 'wxc39c2af3ea24cd37'
|
||||||
# secret: '96d566c3169b8715904950d9cf3cbf60'
|
mallSecret: '96d566c3169b8715904950d9cf3cbf60'
|
||||||
appId: 'wx105ce607b514ff2a'
|
appId: 'wx105ce607b514ff2a'
|
||||||
secret: '51df6f2d33bf639fa05891af7a69a56e'
|
secret: '51df6f2d33bf639fa05891af7a69a56e'
|
||||||
# appId: 'wx404f2439a8c24e15'
|
# appId: 'wx404f2439a8c24e15'
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,10 @@ public enum WxMsgEnum {
|
||||||
/** 任务大厅订单通知 */
|
/** 任务大厅订单通知 */
|
||||||
ORDER_PLAN("", "yqd3p4qsqn1RiyUb8kO4dPqoGKipRQg_y99nGw0jtLE"),
|
ORDER_PLAN("", "yqd3p4qsqn1RiyUb8kO4dPqoGKipRQg_y99nGw0jtLE"),
|
||||||
/** 新订单通知 */
|
/** 新订单通知 */
|
||||||
NEW_ORDER("","gFoPAYF4J6Y_O5OzzNUbvMxTrsAS7aUWffdNH42xhzM");
|
NEW_ORDER("","gFoPAYF4J6Y_O5OzzNUbvMxTrsAS7aUWffdNH42xhzM"),
|
||||||
|
/** 商城端消息通知 */
|
||||||
|
CUSTOMER_ORDER("", "JtsGFPDjYhL2GbHfKxvTJaR_lLp8xLyw8VeR01Y0JHM")
|
||||||
|
;
|
||||||
/** 超时消息通知 */
|
/** 超时消息通知 */
|
||||||
// OVER_TIME("","8I5BnJMfwj-Z7udhNm9Z-kdjdg4__MV5ug1x8KKsbc0"),
|
// OVER_TIME("","8I5BnJMfwj-Z7udhNm9Z-kdjdg4__MV5ug1x8KKsbc0"),
|
||||||
/** 今日单消息通知 */
|
/** 今日单消息通知 */
|
||||||
|
|
|
||||||
|
|
@ -164,7 +164,7 @@ public class OrderServiceImpl implements OrderService {
|
||||||
// long day14ago = now - 10000L;
|
// long day14ago = now - 10000L;
|
||||||
for (OrderDetail orderDetail : orderDetails) {
|
for (OrderDetail orderDetail : orderDetails) {
|
||||||
// 筛选符合自动确认的订单
|
// 筛选符合自动确认的订单
|
||||||
if (day14ago > orderDetail.getUpdateTime().getTime()) {
|
if (day14ago > orderDetail.getWorkFinishTime().getTime()) {
|
||||||
logger.info("子订单自动完成[id={}, code={}]", orderDetail.getId(), orderDetail.getCode());
|
logger.info("子订单自动完成[id={}, code={}]", orderDetail.getId(), orderDetail.getCode());
|
||||||
try {
|
try {
|
||||||
// 子订单完单流程(分账与提现)
|
// 子订单完单流程(分账与提现)
|
||||||
|
|
|
||||||
|
|
@ -38,11 +38,16 @@ public class WxMsgServiceImpl implements IWxMsgService {
|
||||||
@Value("${wx.secret}")
|
@Value("${wx.secret}")
|
||||||
private String secret;
|
private String secret;
|
||||||
|
|
||||||
|
@Value("${wx.mallAppId}")
|
||||||
|
private String mallAppId;
|
||||||
|
@Value("${wx.mallSecret}")
|
||||||
|
private String mallSecret;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Boolean sendMsg(String openId, String remind, String orderId, String name, OrderStatus orderStatus, Long time) {
|
public Boolean sendMsg(String openId, String remind, String orderId, String name, OrderStatus orderStatus, Long time) {
|
||||||
WxMsgConfig wxMsgConfig = getQRCodeMsgConfig(openId, remind, orderId, name, orderStatus, time);
|
WxMsgConfig wxMsgConfig = getQRCodeMsgConfig(openId, remind, orderId, name, orderStatus, time);
|
||||||
// 通知urL
|
// 通知urL
|
||||||
String url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=" + getAccessToken();
|
String url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=" + getAccessToken(true);
|
||||||
log.info("微信消息通知请求地址:{}", url);
|
log.info("微信消息通知请求地址:{}", url);
|
||||||
log.info("微信消息通知请求参数:{}", wxMsgConfig);
|
log.info("微信消息通知请求参数:{}", wxMsgConfig);
|
||||||
JSONObject responseData = postData(url, wxMsgConfig);
|
JSONObject responseData = postData(url, wxMsgConfig);
|
||||||
|
|
@ -61,7 +66,11 @@ public class WxMsgServiceImpl implements IWxMsgService {
|
||||||
@Override
|
@Override
|
||||||
public void sendWxMsg(String openId, WxMsgEnum wxMsgEnum, Map<String, Object> params) {
|
public void sendWxMsg(String openId, WxMsgEnum wxMsgEnum, Map<String, Object> params) {
|
||||||
WxMsgConfig wxMsgConfig = buildMsgDto(openId, wxMsgEnum, params);
|
WxMsgConfig wxMsgConfig = buildMsgDto(openId, wxMsgEnum, params);
|
||||||
String url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=" + getAccessToken();
|
Boolean flag = true;
|
||||||
|
if(wxMsgEnum.getTempCode().equals(WxMsgEnum.CUSTOMER_ORDER.getTempCode())){
|
||||||
|
flag = false;
|
||||||
|
}
|
||||||
|
String url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=" + getAccessToken(flag);
|
||||||
log.info("微信消息通知请求 url: {} , 参数: {}",url, wxMsgConfig);
|
log.info("微信消息通知请求 url: {} , 参数: {}",url, wxMsgConfig);
|
||||||
JSONObject responseData = postData(url, wxMsgConfig);
|
JSONObject responseData = postData(url, wxMsgConfig);
|
||||||
log.info("微信消息通知请求参数:{}", JSON.toJSONString(responseData));
|
log.info("微信消息通知请求参数:{}", JSON.toJSONString(responseData));
|
||||||
|
|
@ -79,10 +88,15 @@ public class WxMsgServiceImpl implements IWxMsgService {
|
||||||
*
|
*
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public String getAccessToken() {
|
public String getAccessToken(Boolean flag) {
|
||||||
Map<String, String> params = new HashMap<>();
|
Map<String, String> params = new HashMap<>();
|
||||||
|
if(flag){
|
||||||
params.put("APPID", appId);
|
params.put("APPID", appId);
|
||||||
params.put("APPSECRET", secret);
|
params.put("APPSECRET", secret);
|
||||||
|
}else {
|
||||||
|
params.put("APPID", mallAppId);
|
||||||
|
params.put("APPSECRET", mallSecret);
|
||||||
|
}
|
||||||
ResponseEntity<String> responseEntity = restTemplate.getForEntity(
|
ResponseEntity<String> responseEntity = restTemplate.getForEntity(
|
||||||
"https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={APPID}&secret={APPSECRET}", String.class, params);
|
"https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={APPID}&secret={APPSECRET}", String.class, params);
|
||||||
String body = responseEntity.getBody();
|
String body = responseEntity.getBody();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue