jinshihui 1 zi în urmă
părinte
comite
eda219aaec

+ 1 - 1
nightFragrance-admin/src/main/java/com/ylx/web/controller/massage/TJsController.java

@@ -479,7 +479,7 @@ public class TJsController extends BaseController {
     }
 
     /**
-     * 公众号新订单处理通知
+     * 服务器号新订单处理通知
      *
      * @param openId
      * @return boolean

+ 1 - 2
nightFragrance-admin/src/main/java/com/ylx/web/controller/massage/TOrderController.java

@@ -72,8 +72,7 @@ public class TOrderController extends BaseController {
             log.error(s.toString());
             return R.fail(s.getMessage());
         } catch (Exception e) {
-            StackTraceElement stackTraceElement = e.getStackTrace()[0];
-            log.error("系统出错,错误信息:" + e + " at " + stackTraceElement.getClassName() + "." + stackTraceElement.getMethodName() + ":" + stackTraceElement.getLineNumber());
+            e.printStackTrace();
             return R.fail("系统异常");
         }
     }

+ 2 - 2
nightFragrance-admin/src/main/java/com/ylx/web/controller/massage/WeChatController.java

@@ -298,9 +298,9 @@ public class WeChatController extends BaseController {
 //        config.setMargin(1);
         // 生成二维码到文件,也可以到流
         String code = weChatUtil.getCode(state);
-
+        log.info("code的值:{}", code);
         redisCache.setCacheObject("code", state, 10, TimeUnit.MINUTES);
-        log.info("code:{}", code);
+
 //        QrCodeUtil.generate(code, config,
 //                FileUtil.file(IMG_PATH));
         return code;

+ 5 - 3
nightFragrance-massage/src/main/java/com/ylx/massage/service/impl/OrderNotificationServiceImpl.java

@@ -228,13 +228,14 @@ public class OrderNotificationServiceImpl implements OrderNotificationService {
         try {
             // 获取技师信息
             String jsOpenId = getTechnicianOpenId(order);
+            log.info("技师的openId:{}", jsOpenId);
             if (jsOpenId == null) {
                 log.warn("技师信息不存在,无法发送已接单通知,订单号:{}", order.getOrderNo());
                 return;
             }
 
             cn.hutool.json.JSONObject param = buildTechnicianReceivedNotificationParams(order);
-            weChatUtil.notification(jsOpenId, wxPayProperties.getTemplateId1(), param);
+            weChatUtil.notification(jsOpenId, wxPayProperties.getTechTemplate2(), param);
             log.info("技师侧已接单通知发送成功,订单号:{}", order.getOrderNo());
         } catch (Exception e) {
             log.error("技师侧已接单通知发送失败,订单号:{}", order.getOrderNo(), e);
@@ -249,15 +250,16 @@ public class OrderNotificationServiceImpl implements OrderNotificationService {
     @Override
     public void sendTechnicianCancelledNotification(TOrder order) {
         try {
-            // 获取技师信息
+            // 获取技师的openId
             String jsOpenId = getTechnicianOpenId(order);
+            log.info("技师的openId:{}", jsOpenId);
             if (jsOpenId == null) {
                 log.warn("技师信息不存在,无法发送取消通知,订单号:{}", order.getOrderNo());
                 return;
             }
 
             cn.hutool.json.JSONObject param = buildTechnicianCancelledNotificationParams(order);
-            weChatUtil.notification(jsOpenId, wxPayProperties.getTemplateId1(), param);
+            weChatUtil.notification(jsOpenId, wxPayProperties.getTechTemplate3(), param);
             log.info("技师侧取消订单通知发送成功,订单号:{}", order.getOrderNo());
         } catch (Exception e) {
             log.error("技师侧取消订单通知发送失败,订单号:{}", order.getOrderNo(), e);

+ 26 - 30
nightFragrance-massage/src/main/java/com/ylx/massage/service/impl/TJsServiceImpl.java

@@ -145,10 +145,11 @@ public class TJsServiceImpl extends ServiceImpl<TJsMapper, TJs> implements TJsSe
         wxUserService.update(tWxUser, wxLambdaQueryWrapper);
         //修改审核状态
         boolean update = this.update(js, jsLambdaQueryWrapper);
+
         //修改新技师标识
-        js.setcOpenId(js1.getcOpenId());
+       /* js.setcOpenId(js1.getcOpenId());
         // 发送审核结果通知
-        //this.jsNotification(js);
+        this.jsNotification(js);*/
         return update;
     }
 
@@ -211,19 +212,17 @@ public class TJsServiceImpl extends ServiceImpl<TJsMapper, TJs> implements TJsSe
 
         cn.hutool.json.JSONObject param = JSONUtil.createObj();
         /**
-         * 订单未接单提醒
+         * 接单成功通知
          */
         //设置订单号
-        param.set("character_string9", JSONUtil.createObj().set("value", "123456"));
+        param.set("character_string1", JSONUtil.createObj().set("value", "123456"));
         //设置项目
-        param.set("thing10", JSONUtil.createObj().set("value", "按摩"));
-        //设置预约时间
-        param.set("time6", JSONUtil.createObj().set("value", "2022年11月11日 22:22"));
-        //设置用户电话
-        param.set("phone_number3", JSONUtil.createObj().set("value", "18360233903"));
-        //设置下单地址
-        param.set("thing13", JSONUtil.createObj().set("value", "信达国际"));
-        //weChatUtil.notification(openId, wxPayProperties.get(), param);
+        param.set("thing4", JSONUtil.createObj().set("value", "按摩"));
+        //商家名称
+        param.set("thing9", JSONUtil.createObj().set("value", "李强"));
+        //联系电话
+        param.set("phone_number5", JSONUtil.createObj().set("value", "15296619636"));
+        weChatUtil.notification(openId, wxPayProperties.getUserTemplate1(), param);
 
     }
 
@@ -343,19 +342,17 @@ public class TJsServiceImpl extends ServiceImpl<TJsMapper, TJs> implements TJsSe
             throw new ServiceException("虚拟技师数量不能为负数");
         }
 
-        // 保存真实技师(techType = 0)
-        js.setTechType(0); // 0-真实技师
-        js.setnStar(MassageConstants.INTEGER_FIVE);
-        js.setnNum(MassageConstants.INTEGER_ZERO);
-        js.setnBili(MassageConstants.INTEGER_TEN);
-        js.setnStatus(JsStatusEnum.JS_NO_SERVICE.getCode());
+        // 0-真实技师
+        js.setTechType(0);
+        //设置性别,默认:女
+        js.setnSex(0);
+        //设置服务状态,默认:可服务
+        js.setnStatus(JsStatusEnum.JS_SERVICEABLE.getCode());
+        // 上岗状态:默认为未上岗
         js.setnStatus2(JsStatusEnum.POST_NOT_ON_DUTY.getCode());
-        js.setnTong(JsStatusEnum.JS_PASS.getCode());
-        js.setnB1(MassageConstants.INTEGER_ZERO);
-        js.setnB2(MassageConstants.INTEGER_ZERO);
-        js.setnB3(MassageConstants.INTEGER_ZERO);
+        // 审核状态:默认为待审核
+        js.setnTong(JsStatusEnum.JS_NOT_PASS.getCode());
         js.setDtCreateTime(LocalDateTime.now());
-
         this.save(js);
 
         // 如果需要生成虚拟技师
@@ -424,13 +421,13 @@ public class TJsServiceImpl extends ServiceImpl<TJsMapper, TJs> implements TJsSe
                 virtualJs.setnBili(realTechnician.getnBili()); // 佣金比例
                 virtualJs.setLongitude(realTechnician.getLongitude()); // 经度
                 virtualJs.setLatitude(realTechnician.getLatitude()); // 纬度
-                virtualJs.setnNum(MassageConstants.INTEGER_ZERO); // 已服务数量
-                virtualJs.setnStatus(JsStatusEnum.JS_NO_SERVICE.getCode()); // 服务状态
+                // 服务状态,默认:可服务
+                virtualJs.setnStatus(JsStatusEnum.JS_SERVICEABLE.getCode());
                 virtualJs.setnStatus2(JsStatusEnum.POST_NOT_ON_DUTY.getCode()); // 上岗状态
-                virtualJs.setnTong(JsStatusEnum.JS_PASS.getCode()); // 审核状态
-                virtualJs.setnB1(MassageConstants.INTEGER_ZERO);
-                virtualJs.setnB2(MassageConstants.INTEGER_ZERO);
-                virtualJs.setnB3(MassageConstants.INTEGER_ZERO);
+                virtualJs.setnTong(JsStatusEnum.JS_NOT_PASS.getCode()); // 审核状态
+                virtualJs.setnB1(realTechnician.getnB1());
+                virtualJs.setnB2(realTechnician.getnB2());
+                virtualJs.setnB3(realTechnician.getnB3());
                 virtualJs.setDtCreateTime(now); // 创建时间
                 virtualJs.setVirtualOrderNumber(realTechnician.getVirtualOrderNumber()); // 虚拟订单数量
                 virtualJs.setVirtualTechNumber(0); // 虚拟技师数量(虚拟技师不再生成虚拟技师)
@@ -439,7 +436,6 @@ public class TJsServiceImpl extends ServiceImpl<TJsMapper, TJs> implements TJsSe
                 virtualJs.setCommitment(realTechnician.getCommitment()); // 承诺书
                 virtualJs.setCity(realTechnician.getCity()); // 所在城市
                 virtualJs.setJsGrade(realTechnician.getJsGrade()); // 技师等级
-
                 virtualTechnicians.add(virtualJs);
             }
 

+ 3 - 3
nightFragrance-massage/src/main/java/com/ylx/massage/service/impl/TOrderServiceImpl.java

@@ -597,7 +597,7 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
             //微信支付
             R resp = rechargeService.getPay(orderNew.getOrderNo(), orderNew.getTotalPrice(), orderNew.getcOpenId(), BillTypeEnum.WX_PAY.getInfo(), BillTypeEnum.WX_PAY.getCode().toString());
 
-            //添加待接单消息通知
+            //添加待接单消息通知(技师侧)
             orderNotificationService.sendPendingRemindNotification(orderNew);
             return resp;
         }
@@ -610,7 +610,7 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
         if (order.getPayType().equals(MassageConstants.INTEGER_THREE)) {
             //现金支付
             orderPayManage(user, orderNew);
-            //添加待接单消息通知
+            //添加待接单消息通知(技师侧)
             orderNotificationService.sendPendingRemindNotification(orderNew);
             return R.ok();
         }
@@ -618,7 +618,7 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
             throw new ServiceException("账户金额不够请充值");
         } else {
             orderPayManage(user, orderNew);
-            //添加待接单消息通知
+            //添加待接单消息通知(技师侧)
             orderNotificationService.sendPendingRemindNotification(orderNew);
             return R.ok();
         }

+ 4 - 7
nightFragrance-massage/src/main/java/com/ylx/massage/utils/WeChatUtil.java

@@ -58,7 +58,7 @@ public class WeChatUtil {
      * 获取微信授权code
      *
      * @param state state信息
-     * @return 返回微信授权code的URL
+     * @return String 返回微信授权code的URL
      */
     public String getCode(String state) {
         try {
@@ -106,7 +106,7 @@ public class WeChatUtil {
     /**
      * 获取微信AccessToken
      *
-     * @return 返回包含微信AccessToken的Map
+     * @return String 返回包含微信AccessToken的Map
      */
     public String getToken() {
         if (redisCache.getCacheObject(MassageConstants.ACCESS_TOKEN_KEY + wxPayProperties.getMpAppId()) != null) {
@@ -121,6 +121,7 @@ public class WeChatUtil {
         log.info("URL的值:{}", url.toString());
         String rs = HttpUtil.get(url.toString());
         Map<?, ?> map = JSONObject.parseObject(rs, Map.class);
+        log.info("map的值:{}", map);
         if (null == map.get(ERROR_CODE)) {
             redisCache.setCacheObject(MassageConstants.ACCESS_TOKEN_KEY + wxPayProperties.getMpAppId(), map.get("access_token").toString(), 1, TimeUnit.HOURS);
             return map.get("access_token").toString();
@@ -284,11 +285,8 @@ public class WeChatUtil {
      * @return 返回包含微信公众号码ticket的Map
      */
     public Map<?, ?> getJsTicket(String token, String jsId) {
-
         String url = "https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=" + token;
-
         String param = "{\"action_name\": \"QR_LIMIT_STR_SCENE\",\"action_info\": {\"scene\": {\"scene_str\": \"" + jsId + "\"}}}";
-
         String rs = HttpUtil.post(url, param);
         Map<?, ?> map = JSONObject.parseObject(rs, Map.class);
         return map;
@@ -324,10 +322,9 @@ public class WeChatUtil {
      */
     public Map<?, ?> notification(String openid, String templateId, cn.hutool.json.JSONObject data) {
         String token = this.getToken();
-        log.info("notification-access_token:{}", token);
+        log.info("token的值:{}", token);
 
         String url = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" + token;
-
         cn.hutool.json.JSONObject param1 = JSONUtil.createObj();
         param1.put("touser", openid);
         param1.put("template_id", templateId);

+ 1 - 0
nightFragrance-massage/src/main/resources/mapper/massage/TJsMapper.xml

@@ -152,6 +152,7 @@
             </if>
 
         </where>
+        order by js.dt_create_time desc
 
 <!--        <if test="param.suiji == null">-->
 <!--            order by-->