|
@@ -1,7 +1,7 @@
|
|
package com.xynet.marketing.utils;
|
|
package com.xynet.marketing.utils;
|
|
|
|
|
|
-import com.xynet.marketing.service.ProviderService;
|
|
|
|
-import com.xynet.marketing.utils.collections.map.JHashMap;
|
|
|
|
|
|
+import com.cow.support.dto.UserSessionModel;
|
|
|
|
+import com.xynet.marketing.service.MercService;
|
|
import com.xynet.marketing.utils.redis.utils.RedisService;
|
|
import com.xynet.marketing.utils.redis.utils.RedisService;
|
|
|
|
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
@@ -11,14 +11,15 @@ import java.util.Map;
|
|
* @date 2025/2/12
|
|
* @date 2025/2/12
|
|
*/
|
|
*/
|
|
public class MercAuthUtils {
|
|
public class MercAuthUtils {
|
|
- private static String redisPrefix = "marketing:token:merc:";
|
|
|
|
|
|
+ //private static String redisPrefix = "marketing:token:merc:";
|
|
|
|
|
|
|
|
+ private static String redisPrefix = "userSession-";
|
|
|
|
|
|
public static Integer getMercId(Map<String, String> headers) {
|
|
public static Integer getMercId(Map<String, String> headers) {
|
|
//获取token
|
|
//获取token
|
|
String token = headers.get("token");
|
|
String token = headers.get("token");
|
|
String providerId = headers.get("provider_id");
|
|
String providerId = headers.get("provider_id");
|
|
- RedisService<Integer> redisService = SpringBeanUtils.getBean(RedisService.class);
|
|
|
|
|
|
+ RedisService<UserSessionModel> redisService = SpringBeanUtils.getBean(RedisService.class);
|
|
if (!Emptys.check(token)) {
|
|
if (!Emptys.check(token)) {
|
|
throw new RuntimeException("token不能为空");
|
|
throw new RuntimeException("token不能为空");
|
|
}
|
|
}
|
|
@@ -26,24 +27,45 @@ public class MercAuthUtils {
|
|
throw new RuntimeException("服务商ID不能为空");
|
|
throw new RuntimeException("服务商ID不能为空");
|
|
}
|
|
}
|
|
//判断redis里是否有对应的商户ID
|
|
//判断redis里是否有对应的商户ID
|
|
- Integer mercId = redisService.get(redisPrefix + providerId + ":" + token);
|
|
|
|
- if (!Emptys.check(mercId)) {
|
|
|
|
- //redis不存在,调用服务商获取商户ID的接口
|
|
|
|
- mercId = getMercIdByProvider(token, providerId);
|
|
|
|
- //将token存到redis中
|
|
|
|
- redisService.set(redisPrefix + providerId + ":" + token, mercId, 7200);
|
|
|
|
|
|
+ UserSessionModel userSession = redisService.get(redisPrefix + token);
|
|
|
|
+ if (!Emptys.check(userSession)) {
|
|
|
|
+ throw new RuntimeException("token已过期");
|
|
}
|
|
}
|
|
- return mercId;
|
|
|
|
|
|
+ String thirdMercId = userSession.getUserInfo().getShbh();
|
|
|
|
+ MercService mercService = SpringBeanUtils.getBean(MercService.class);
|
|
|
|
+ return mercService.thirdMercIdToMercId(providerId, thirdMercId);
|
|
}
|
|
}
|
|
|
|
|
|
- private static Integer getMercIdByProvider(String token, String providerId) {
|
|
|
|
- ProviderService providerService = SpringBeanUtils.getBean(ProviderService.class);
|
|
|
|
- JHashMap<String, Object> param = new JHashMap<>();
|
|
|
|
- param.set("id", providerId);
|
|
|
|
- Map<String, Object> provider = providerService.obj(param);
|
|
|
|
- //HttpUtil.post(provider.);
|
|
|
|
- //TODO 调用第三方
|
|
|
|
- return 1;
|
|
|
|
- }
|
|
|
|
|
|
+// public static Integer getMercId1(Map<String, String> headers) {
|
|
|
|
+// //获取token
|
|
|
|
+// String token = headers.get("token");
|
|
|
|
+// String providerId = headers.get("provider_id");
|
|
|
|
+// RedisService<Integer> redisService = SpringBeanUtils.getBean(RedisService.class);
|
|
|
|
+// if (!Emptys.check(token)) {
|
|
|
|
+// throw new RuntimeException("token不能为空");
|
|
|
|
+// }
|
|
|
|
+// if (!Emptys.check(providerId)) {
|
|
|
|
+// throw new RuntimeException("服务商ID不能为空");
|
|
|
|
+// }
|
|
|
|
+// //判断redis里是否有对应的商户ID
|
|
|
|
+// Integer mercId = redisService.get(redisPrefix + providerId + ":" + token);
|
|
|
|
+// if (!Emptys.check(mercId)) {
|
|
|
|
+// //redis不存在,调用服务商获取商户ID的接口
|
|
|
|
+// mercId = getMercIdByProvider(token, providerId);
|
|
|
|
+// //将token存到redis中
|
|
|
|
+// redisService.set(redisPrefix + providerId + ":" + token, mercId, 7200);
|
|
|
|
+// }
|
|
|
|
+// return mercId;
|
|
|
|
+// }
|
|
|
|
+
|
|
|
|
+// private static Integer getMercIdByProvider(String token, String providerId) {
|
|
|
|
+// ProviderService providerService = SpringBeanUtils.getBean(ProviderService.class);
|
|
|
|
+// JHashMap<String, Object> param = new JHashMap<>();
|
|
|
|
+// param.set("id", providerId);
|
|
|
|
+// Map<String, Object> provider = providerService.obj(param);
|
|
|
|
+// //HttpUtil.post(provider.);
|
|
|
|
+// //TODO 调用第三方
|
|
|
|
+// return 1;
|
|
|
|
+// }
|
|
|
|
|
|
}
|
|
}
|