Browse Source

修改微信授权登录获取请求头refer参数

plf 3 năm trước cách đây
mục cha
commit
f1d0164401

+ 3 - 2
src/main/java/com/caimei365/order/controller/OrderClubApi.java

@@ -227,7 +227,7 @@ public class OrderClubApi {
             @ApiImplicitParam(required = false, name = "iv", value = "微信加密算法的初始向量")
     })
     @GetMapping("/share/code/check")
-    public ResponseJson<String> checkOrderShareCode( Integer orderId, Integer userId, Integer serviceProviderId, String shareCode, String code, String encryptedData, String iv, @RequestHeader HttpHeaders headers) {
+    public ResponseJson<String> checkOrderShareCode( Integer orderId, Integer userId, Integer serviceProviderId, String shareCode, String code, String encryptedData, String iv, @RequestHeader("Referer") String referer) {
         if (null == userId) {
             return ResponseJson.error("用户Id不能为空!", null);
         }
@@ -237,9 +237,10 @@ public class OrderClubApi {
         if (StringUtils.isEmpty(code)) {
             return ResponseJson.error("微信code不能为空!", null);
         }
-        return orderClubService.checkOrderShareCode(orderId, userId, serviceProviderId, shareCode, code, encryptedData, iv, headers);
+        return orderClubService.checkOrderShareCode(orderId, userId, serviceProviderId, shareCode, code, encryptedData, iv, referer);
     }
 
+
     /**
      * 分享订单,初始商品数据
      */

+ 1 - 0
src/main/java/com/caimei365/order/controller/ShipApi.java

@@ -29,6 +29,7 @@ import java.util.Map;
 public class ShipApi {
     private final ShipService shipService;
 
+
     /**
      * 供应商订单列表
      */

+ 1 - 1
src/main/java/com/caimei365/order/service/OrderClubService.java

@@ -93,7 +93,7 @@ public interface OrderClubService {
      * @param iv 微信加密算法的初始向量
      * @param headers HttpHeaders
      */
-    ResponseJson<String> checkOrderShareCode(Integer orderId, Integer userId, Integer serviceProviderId, String shareCode, String code, String encryptedData, String iv, HttpHeaders headers);
+    ResponseJson<String> checkOrderShareCode(Integer orderId, Integer userId, Integer serviceProviderId, String shareCode, String code, String encryptedData, String iv, String referer);
     /**
      * 分享订单,初始商品数据
      * @param orderId 订单Id

+ 2 - 2
src/main/java/com/caimei365/order/service/RemoteCallService.java

@@ -34,9 +34,9 @@ public interface RemoteCallService {
      * @param code              微信code
      * @param encryptedData     微信加密数据
      * @param iv                微信加密算法的初始向量
-     * @param headers           HttpHeaders
+     * @param
      */
-    String appletsAuthorization(String code, String encryptedData, String iv, HttpHeaders headers);
+    String appletsAuthorization(String code, String encryptedData, String iv, String referer);
 
     /**
      * 智能获取物流信息

+ 13 - 13
src/main/java/com/caimei365/order/service/impl/OrderClubServiceImpl.java

@@ -282,8 +282,8 @@ public class OrderClubServiceImpl implements OrderClubService {
     /**
      * 机构取消订单
      *
-     * @param orderId   订单Id
-     * @param remark    备注(订单取消原因)
+     * @param orderId 订单Id
+     * @param remark  备注(订单取消原因)
      */
     @Transactional(rollbackFor = Exception.class)
     @Override
@@ -312,7 +312,7 @@ public class OrderClubServiceImpl implements OrderClubService {
             balanceRecord.setDelFlag(1);
             // 取消 余额收支记录
             orderClubMapper.cancelBalanceRecord(balanceRecord);
-            log.info(note +">>>>>>>>>>>>取消余额收支记录(update[cm_user_balance_record])orderId:" + orderId);
+            log.info(note + ">>>>>>>>>>>>取消余额收支记录(update[cm_user_balance_record])orderId:" + orderId);
         }
         order.setStatus(6);
         if (StringUtils.isBlank(remark)) {
@@ -540,7 +540,7 @@ public class OrderClubServiceImpl implements OrderClubService {
         calendar.add(Calendar.DATE, 1);
         // 获取数据库已有分享码
         OrderShareCodeVo orderCodeVo = orderClubMapper.getOrderCodeById(orderId);
-        if (orderCodeVo != null && orderCodeVo.getExpiredTime().compareTo(new Date()) >= 0 ) {
+        if (orderCodeVo != null && orderCodeVo.getExpiredTime().compareTo(new Date()) >= 0) {
             // 旧分享码还未过期,直接返回
             return ResponseJson.success(orderCodeVo.getShareCode());
         } else if (orderCodeVo != null) {
@@ -575,17 +575,17 @@ public class OrderClubServiceImpl implements OrderClubService {
      * @param code              微信code
      * @param encryptedData     微信加密数据
      * @param iv                微信加密算法的初始向量
-     * @param headers           HttpHeaders
+     * @param
      */
     @Override
-    public ResponseJson<String> checkOrderShareCode(Integer orderId, Integer userId, Integer serviceProviderId, String shareCode, String code, String encryptedData, String iv, HttpHeaders headers) {
+    public ResponseJson<String> checkOrderShareCode(Integer orderId, Integer userId, Integer serviceProviderId, String shareCode, String code, String encryptedData, String iv, String referer) {
         int orderCount = orderClubMapper.countMainOrderByOrderId(orderId);
         if (0 == orderCount) {
             return ResponseJson.error("订单不存在!", null);
         }
         // 微信小程序授权登录(调用user服务,发送服务间调用POST请求)
-        String loginData = remoteCallService.appletsAuthorization(code, encryptedData, iv, headers);
-        if (StringUtils.isEmpty(loginData)){
+        String loginData = remoteCallService.appletsAuthorization(code, encryptedData, iv, referer);
+        if (StringUtils.isEmpty(loginData)) {
             return ResponseJson.error("微信授权登录异常!", null);
         }
         // 解析登录后得到 userIdentity,  openId等
@@ -601,14 +601,14 @@ public class OrderClubServiceImpl implements OrderClubService {
         // 协销身份
         boolean spFlag = (null != userIdentity && 1 == userIdentity);
         // 机构身份
-        boolean clubFlag = (null != userIdentity && (2 == userIdentity || 4 ==userIdentity));
+        boolean clubFlag = (null != userIdentity && (2 == userIdentity || 4 == userIdentity));
         if (spFlag) {
             if (null != serviceProviderId && serviceProviderId.equals(loginSpId)) {
                 // 该机构的协销
                 return ResponseJson.success(2, "该机构的协销查看分享订单!", loginData);
             } else {
                 // 非该机构协销(游客)
-                return ResponseJson.success(0,"非该机构协销查看分享订单!", null);
+                return ResponseJson.success(0, "非该机构协销查看分享订单!", null);
             }
         } else if (clubFlag && userId.equals(loginUserId)) {
             // 该机构的运营人员, 旧接口返回  0,true
@@ -621,7 +621,7 @@ public class OrderClubServiceImpl implements OrderClubService {
         int codeCount = orderClubMapper.countShareCodeRecord(orderId, openId);
         if (codeCount > 0) {
             // 游客权限
-            return ResponseJson.success(0,"游客权限查看分享订单!", null);
+            return ResponseJson.success(0, "游客权限查看分享订单!", null);
         }
         // 根据订单Id获取分享码
         OrderShareCodeVo orderCodeVo = orderClubMapper.getOrderCodeById(orderId);
@@ -629,7 +629,7 @@ public class OrderClubServiceImpl implements OrderClubService {
             return ResponseJson.error("该订单没有生成分享码!", null);
         }
         // 校验分享码
-        if (orderCodeVo.getShareCode().equals(shareCode)){
+        if (orderCodeVo.getShareCode().equals(shareCode)) {
             if (orderCodeVo.getExpiredTime().compareTo(new Date()) > 0) {
                 // 分享码有效, 保存分享码使用记录
                 OrderShareCodeRecordVo codeRecord = new OrderShareCodeRecordVo();
@@ -640,7 +640,7 @@ public class OrderClubServiceImpl implements OrderClubService {
                 codeRecord.setShareCodeId(orderCodeVo.getId());
                 orderClubMapper.insertOrderShareCodeRecord(codeRecord);
                 // 返回
-                return ResponseJson.success(0,"游客权限查看分享订单!", null);
+                return ResponseJson.success(0, "游客权限查看分享订单!", null);
             } else {
                 // 分享码过期
                 return ResponseJson.error("分享码已失效!", null);

+ 3 - 3
src/main/java/com/caimei365/order/service/impl/RemoteCallServiceImpl.java

@@ -101,13 +101,13 @@ public class RemoteCallServiceImpl implements RemoteCallService {
      * @param code          微信code
      * @param encryptedData 微信加密数据
      * @param iv            微信加密算法的初始向量
-     * @param headers       HttpHeaders
+     * @param
      */
     @Override
-    public String appletsAuthorization(String code, String encryptedData, String iv, HttpHeaders headers) {
+    public String appletsAuthorization(String code, String encryptedData, String iv, String referer) {
         AtomicReference<String> resultData = new AtomicReference<>("");
         // 获取当前微信小程序的环境
-        String referer = headers.getFirst("Referer");
+//        String referer = headers.getFirst("Referer");
         try {
             // 调用 UserFeign 获取物流
             String jsonStr = userFeign.appletsAuthorization(code, encryptedData, iv, referer);