|
@@ -2,6 +2,7 @@ package com.qunzhixinxi.hnqz.admin.service.gig.impl;
|
|
|
|
|
|
import cn.hutool.core.map.MapUtil;
|
|
import cn.hutool.core.map.MapUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
|
+import cn.hutool.json.JSONArray;
|
|
import cn.hutool.json.JSONUtil;
|
|
import cn.hutool.json.JSONUtil;
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
@@ -276,17 +277,21 @@ public class GigThirdApiServiceImpl implements GigThirdApiService {
|
|
String key = CacheConstants.USER_SIGN_CERT_RESPONSE_KEY + userSub.getUserId();
|
|
String key = CacheConstants.USER_SIGN_CERT_RESPONSE_KEY + userSub.getUserId();
|
|
Map<String, Object> result = MapUtil.newHashMap(2);
|
|
Map<String, Object> result = MapUtil.newHashMap(2);
|
|
result.put(userSub.getGigType().name(), new HashMap<>(subMap));
|
|
result.put(userSub.getGigType().name(), new HashMap<>(subMap));
|
|
- // 查询redis是否有同时发起的标记
|
|
|
|
- String redisKey = CacheConstants.USER_SIGN_CERT_SEND_CHANNEL + userSub.getUserId();
|
|
|
|
- Object userId = redisTemplate.opsForValue().get(redisKey);
|
|
|
|
- if (userId != null && GigTypeEnum.OLADING.equals(userSub.getGigType())) {
|
|
|
|
- // 将金园数科的状态,补充进来
|
|
|
|
- SysUserSub feiyiSub = sysUserSubService.getOne(Wrappers.<SysUserSub>lambdaQuery()
|
|
|
|
|
|
+
|
|
|
|
+ // 查询redis是否有同时发起的标记,查询出对应的状态放到redis
|
|
|
|
+ String oladingRedisKey = CacheConstants.OLADING_CERT_SEND_CHANNEL + userSub.getUserId();
|
|
|
|
+ String gigTypeJson = (String) redisTemplate.opsForValue().get(oladingRedisKey);
|
|
|
|
+ if (JSONUtil.isJsonArray(gigTypeJson)) {
|
|
|
|
+ JSONArray gigTypeArray = JSONUtil.parseArray(gigTypeJson);
|
|
|
|
+ List<SysUserSub> subList = sysUserSubService.list(Wrappers.<SysUserSub>lambdaQuery()
|
|
.eq(SysUserSub::getUserId, userSub.getUserId())
|
|
.eq(SysUserSub::getUserId, userSub.getUserId())
|
|
.eq(SysUserSub::getDeptId, userSub.getDeptId())
|
|
.eq(SysUserSub::getDeptId, userSub.getDeptId())
|
|
- .eq(SysUserSub::getGigType, GigTypeEnum.JIN_YUAN));
|
|
|
|
- result.put(GigTypeEnum.JIN_YUAN.name(),
|
|
|
|
- MapUtil.builder("certStatus", OladingCertStatus.resolve(String.valueOf(feiyiSub.getCertStatus())).name()).build());
|
|
|
|
|
|
+ .in(SysUserSub::getGigType, gigTypeArray));
|
|
|
|
+ Map<String, Map<String, String>> dbResultMap = subList.stream()
|
|
|
|
+ .collect(Collectors.toMap(sysUserSub -> sysUserSub.getGigType().name(),
|
|
|
|
+ sysUserSub -> MapUtil.builder("certStatus",
|
|
|
|
+ OladingCertStatus.resolve(String.valueOf(sysUserSub.getCertStatus())).name()).build()));
|
|
|
|
+ result.putAll(dbResultMap);
|
|
}
|
|
}
|
|
|
|
|
|
redisTemplate.opsForValue().set(key, JSONUtil.toJsonStr(result), 1, TimeUnit.MINUTES);
|
|
redisTemplate.opsForValue().set(key, JSONUtil.toJsonStr(result), 1, TimeUnit.MINUTES);
|
|
@@ -344,21 +349,26 @@ public class GigThirdApiServiceImpl implements GigThirdApiService {
|
|
String key = CacheConstants.USER_SIGN_CERT_RESPONSE_KEY + userSub.getUserId();
|
|
String key = CacheConstants.USER_SIGN_CERT_RESPONSE_KEY + userSub.getUserId();
|
|
Map<String, Object> result = MapUtil.newHashMap(2);
|
|
Map<String, Object> result = MapUtil.newHashMap(2);
|
|
result.put(userSub.getGigType().name(), new HashMap<>(subMap));
|
|
result.put(userSub.getGigType().name(), new HashMap<>(subMap));
|
|
- // 查询redis是否有同时发起的标记
|
|
|
|
- String redisKey = CacheConstants.USER_SIGN_CERT_SEND_CHANNEL + userSub.getUserId();
|
|
|
|
- Object userId = redisTemplate.opsForValue().get(redisKey);
|
|
|
|
- if (userId != null && GigTypeEnum.OLADING.equals(userSub.getGigType())) {
|
|
|
|
- // 将金园数科的状态,补充进来
|
|
|
|
- SysUserSub feiyiSub = sysUserSubService.getOne(Wrappers.<SysUserSub>lambdaQuery()
|
|
|
|
|
|
+
|
|
|
|
+ // 查询redis是否有同时发起的标记,查询出对应的状态放到redis
|
|
|
|
+ String oladingRedisKey = CacheConstants.OLADING_CERT_SEND_CHANNEL + userSub.getUserId();
|
|
|
|
+ String gigTypeJson = (String) redisTemplate.opsForValue().get(oladingRedisKey);
|
|
|
|
+ if (JSONUtil.isJsonArray(gigTypeJson)) {
|
|
|
|
+ JSONArray gigTypeArray = JSONUtil.parseArray(gigTypeJson);
|
|
|
|
+ List<SysUserSub> subList = sysUserSubService.list(Wrappers.<SysUserSub>lambdaQuery()
|
|
.eq(SysUserSub::getUserId, userSub.getUserId())
|
|
.eq(SysUserSub::getUserId, userSub.getUserId())
|
|
.eq(SysUserSub::getDeptId, userSub.getDeptId())
|
|
.eq(SysUserSub::getDeptId, userSub.getDeptId())
|
|
- .eq(SysUserSub::getGigType, GigTypeEnum.JIN_YUAN));
|
|
|
|
- result.put(GigTypeEnum.JIN_YUAN.name(),
|
|
|
|
- MapUtil.builder("certStatus", OladingCertStatus.resolve(String.valueOf(feiyiSub.getCertStatus())).name()).build());
|
|
|
|
|
|
+ .in(SysUserSub::getGigType, gigTypeArray));
|
|
|
|
+ Map<String, Map<String, String>> dbResultMap = subList.stream()
|
|
|
|
+ .collect(Collectors.toMap(sysUserSub -> sysUserSub.getGigType().name(),
|
|
|
|
+ sysUserSub -> MapUtil.builder("certStatus",
|
|
|
|
+ OladingCertStatus.resolve(String.valueOf(sysUserSub.getCertStatus())).name()).build()));
|
|
|
|
+ result.putAll(dbResultMap);
|
|
}
|
|
}
|
|
|
|
|
|
redisTemplate.opsForValue().set(key, JSONUtil.toJsonStr(result), 1, TimeUnit.MINUTES);
|
|
redisTemplate.opsForValue().set(key, JSONUtil.toJsonStr(result), 1, TimeUnit.MINUTES);
|
|
|
|
|
|
|
|
+
|
|
// 如果成功,则发送协议上传MQ
|
|
// 如果成功,则发送协议上传MQ
|
|
if (OladingCommonRequest.UploadIdCardImageStatus.IDENTIFY_SUCCESS.equals(uploadIdCertStatus)) {
|
|
if (OladingCommonRequest.UploadIdCardImageStatus.IDENTIFY_SUCCESS.equals(uploadIdCertStatus)) {
|
|
log.info("=============================发送协议上传MQ==================================");
|
|
log.info("=============================发送协议上传MQ==================================");
|
|
@@ -410,17 +420,21 @@ public class GigThirdApiServiceImpl implements GigThirdApiService {
|
|
String key = CacheConstants.USER_SIGN_CERT_RESPONSE_KEY + userSub.getUserId();
|
|
String key = CacheConstants.USER_SIGN_CERT_RESPONSE_KEY + userSub.getUserId();
|
|
Map<String, Object> result = MapUtil.newHashMap(2);
|
|
Map<String, Object> result = MapUtil.newHashMap(2);
|
|
result.put(userSub.getGigType().name(), new HashMap<>(subMap));
|
|
result.put(userSub.getGigType().name(), new HashMap<>(subMap));
|
|
- // 查询redis是否有同时发起的标记
|
|
|
|
- String redisKey = CacheConstants.USER_SIGN_CERT_SEND_CHANNEL + userSub.getUserId();
|
|
|
|
- Object userId = redisTemplate.opsForValue().get(redisKey);
|
|
|
|
- if (userId != null && GigTypeEnum.JIN_YUAN.equals(userSub.getGigType())) {
|
|
|
|
- // 将海南飞亿的状态,补充进来
|
|
|
|
- SysUserSub feiyiSub = sysUserSubService.getOne(Wrappers.<SysUserSub>lambdaQuery()
|
|
|
|
|
|
+
|
|
|
|
+ // 查询redis是否有同时发起的标记,查询出对应的状态放到redis
|
|
|
|
+ String oladingRedisKey = CacheConstants.OLADING_CERT_SEND_CHANNEL + userSub.getUserId();
|
|
|
|
+ String gigTypeJson = (String) redisTemplate.opsForValue().get(oladingRedisKey);
|
|
|
|
+ if (JSONUtil.isJsonArray(gigTypeJson)) {
|
|
|
|
+ JSONArray gigTypeArray = JSONUtil.parseArray(gigTypeJson);
|
|
|
|
+ List<SysUserSub> subList = sysUserSubService.list(Wrappers.<SysUserSub>lambdaQuery()
|
|
.eq(SysUserSub::getUserId, userSub.getUserId())
|
|
.eq(SysUserSub::getUserId, userSub.getUserId())
|
|
.eq(SysUserSub::getDeptId, userSub.getDeptId())
|
|
.eq(SysUserSub::getDeptId, userSub.getDeptId())
|
|
- .eq(SysUserSub::getGigType, GigTypeEnum.OLADING));
|
|
|
|
- result.put(GigTypeEnum.OLADING.name(),
|
|
|
|
- MapUtil.builder("certStatus", OladingCertStatus.resolve(String.valueOf(feiyiSub.getCertStatus())).name()).build());
|
|
|
|
|
|
+ .in(SysUserSub::getGigType, gigTypeArray));
|
|
|
|
+ Map<String, Map<String, String>> dbResultMap = subList.stream()
|
|
|
|
+ .collect(Collectors.toMap(sysUserSub -> sysUserSub.getGigType().name(),
|
|
|
|
+ sysUserSub -> MapUtil.builder("certStatus",
|
|
|
|
+ OladingCertStatus.resolve(String.valueOf(sysUserSub.getCertStatus())).name()).build()));
|
|
|
|
+ result.putAll(dbResultMap);
|
|
}
|
|
}
|
|
|
|
|
|
redisTemplate.opsForValue().set(key, JSONUtil.toJsonStr(result), 1, TimeUnit.MINUTES);
|
|
redisTemplate.opsForValue().set(key, JSONUtil.toJsonStr(result), 1, TimeUnit.MINUTES);
|