浏览代码

fix:“优化订单微信推送功能“

soobin 1 年之前
父节点
当前提交
f4f223fd4d

+ 11 - 2
src/main/java/com/szwl/controller/TCoinOrderController.java

@@ -117,8 +117,8 @@ public class TCoinOrderController {
 
         String adminIdStr = String.valueOf(adminId);
         // 根据 adminId 获取admin信息中的公司类型
-        TAdmin byId = R.getDataIfSuccess(szwlFeign.getAdmin(adminIdStr));
-        String companyType = byId.getCompanyType();
+        TAdmin admin = R.getDataIfSuccess(szwlFeign.getAdmin(adminIdStr));
+        String companyType = admin.getCompanyType();
 
         TCoinOrder coinOrder = new TCoinOrder();
         coinOrder.setId(IDGenerator.coinOrderID());
@@ -203,6 +203,15 @@ public class TCoinOrderController {
             e.printStackTrace();
         }
         try {
+            // 推送微信订单
+            // 判断是否开启订单推送功能
+            if(admin != null && StringUtils.isNotEmpty(admin.getOrderNotice()) && admin.getOrderNotice().equals("1")) {
+                String openId = R.getDataIfSuccess(szwlFeign.getOpenId(adminId));
+                // 获取openId
+                if(StringUtils.isNotEmpty(openId)) {
+                    coinOrderService.sendWechatMessage(openId, equipment, coinOrder, admin.getCompanyType());
+                }
+            }
             esTCoinOrderService.insertData(coinOrder);
         } catch (Exception e) {
             e.printStackTrace();

+ 3 - 1
src/main/java/com/szwl/service/impl/TCoinOrderServiceImpl.java

@@ -320,6 +320,7 @@ public class TCoinOrderServiceImpl extends ServiceImpl<TCoinOrderMapper, TCoinOr
         // 转换时间为String类型
         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         String payTime = format.format(coinOrder.getPayDate());
+        String clientId = equipment.getClientId();
         // 模版参数
         if(StringUtils.isNotEmpty(equipment.getName())) {
             if(equipment.getName().length() > 20) {
@@ -328,7 +329,7 @@ public class TCoinOrderServiceImpl extends ServiceImpl<TCoinOrderMapper, TCoinOr
                 sendMag.put("thing15", new WeChatTemplateMsg(equipment.getName()));
             }
         } else {
-            sendMag.put("thing15", new WeChatTemplateMsg(equipment.getClientId().substring(-6)));
+            sendMag.put("thing15", new WeChatTemplateMsg(clientId.substring(clientId.length() - 6)));
         }
         if(coinOrder.getProductName().length() > 20) {
             sendMag.put("thing37", new WeChatTemplateMsg(coinOrder.getProductName().substring(0, 15) + "..."));
@@ -362,6 +363,7 @@ public class TCoinOrderServiceImpl extends ServiceImpl<TCoinOrderMapper, TCoinOr
         String sendUrl = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" + accessToken;
         ResponseEntity<String> forEntity = restTemplate.postForEntity(sendUrl, sendBody, String.class);
         JSONObject jsonObject = JSONObject.parseObject(forEntity.getBody());
+        log.info("微信推送结果:{}", jsonObject);
         String messageCode = jsonObject.getString("errcode");
         String msgId = jsonObject.getString("msgid");
         System.out.println("messageCode : " + messageCode + ", msgId: " +msgId);