Browse Source

Merge branch 'hotfix-20220613-renlijiacert' of googol/YY_BE_2 into master

李学松 3 years ago
parent
commit
e3f908d38d

+ 26 - 5
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/impl/SysUserServiceImpl.java

@@ -46,6 +46,7 @@ import com.qunzhixinxi.hnqz.admin.entity.input.UserCertificationInput;
 import com.qunzhixinxi.hnqz.admin.entity.output.UserCertificationOutput;
 import com.qunzhixinxi.hnqz.admin.enums.DelEnum;
 import com.qunzhixinxi.hnqz.admin.enums.GigCallBackStatus;
+import com.qunzhixinxi.hnqz.admin.enums.GigChannelEnum;
 import com.qunzhixinxi.hnqz.admin.enums.GigTypeEnum;
 import com.qunzhixinxi.hnqz.admin.enums.LockEnum;
 import com.qunzhixinxi.hnqz.admin.enums.RenlijiaCertStatus;
@@ -616,27 +617,47 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 		baseMapper.updateById(sysUser);
 
 		if (ArrayUtil.contains(input.getSubList(), String.valueOf(GigTypeEnum.REN_LI_JIA.getCode()))) {
+			// 认证状态
+			Integer certStatus = Optional.ofNullable(sysUser.getRljCertStatus())
+					.orElseGet(RenlijiaCertStatus.CER_STATUS_4::getCode);
 			// 更新人力家userSub
 			SysUserSub userSub = sysUserSubMapper.selectOne(Wrappers.<SysUserSub>lambdaQuery()
 					.eq(SysUserSub::getUserId, sysUser.getUserId())
 					.eq(SysUserSub::getGigType, GigTypeEnum.REN_LI_JIA));
+			LocalDateTime now = LocalDateTime.now();
 			if (userSub != null) {
+				// 更新
 				SysUserSub updateUserSub = new SysUserSub();
 				updateUserSub.setId(userSub.getId());
-				// 认证状态
-				Integer certStatus = Optional.ofNullable(sysUser.getRljCertStatus())
-						.orElseGet(RenlijiaCertStatus.CER_STATUS_4::getCode);
 				updateUserSub.setCertStatus(certStatus);
-				// 发起成功或认证成功,才修改CallbackStatus状态
+				// 发起成功,则修改CallbackStatus状态为进行中
 				if (RenlijiaCertStatus.CER_STATUS_3.getCode() == certStatus) {
 					updateUserSub.setCallbackStatus(GigCallBackStatus.IN_PROGRESS);
 				} else {
 					updateUserSub.setCallbackStatus(GigCallBackStatus.RETURNED);
 				}
 				updateUserSub.setCertRemark(resultMsg);
-				updateUserSub.setUpdateTime(LocalDateTime.now());
+				updateUserSub.setUpdateTime(now);
 				updateUserSub.setUpdateUser(0);
 				sysUserSubMapper.updateById(updateUserSub);
+			} else {
+				// 新增
+				SysUserSub saveUserSub = new SysUserSub();
+				saveUserSub.setDeptId(sysUser.getDeptId());
+				saveUserSub.setUserId(sysUser.getUserId());
+				saveUserSub.setGigType(GigTypeEnum.REN_LI_JIA);
+				saveUserSub.setGigChannel(GigChannelEnum.DEFAULT);
+				saveUserSub.setCertRemark(resultMsg);
+				saveUserSub.setCertStatus(certStatus);
+				// 发起成功,则修改CallbackStatus状态为进行中
+				if (RenlijiaCertStatus.CER_STATUS_3.getCode() == certStatus) {
+					saveUserSub.setCallbackStatus(GigCallBackStatus.IN_PROGRESS);
+				} else {
+					saveUserSub.setCallbackStatus(GigCallBackStatus.RETURNED);
+				}
+				saveUserSub.setCreateTime(now);
+				saveUserSub.setCreateUser(0);
+				sysUserSubMapper.insert(saveUserSub);
 			}
 		}
 

+ 27 - 10
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/impl/WmSettlementServiceImpl.java

@@ -10,6 +10,7 @@ import com.qunzhixinxi.hnqz.admin.api.entity.SysUser;
 import com.qunzhixinxi.hnqz.admin.entity.*;
 import com.qunzhixinxi.hnqz.admin.entity.input.SettleNoteStatusOutput;
 import com.qunzhixinxi.hnqz.admin.enums.GigCallBackStatus;
+import com.qunzhixinxi.hnqz.admin.enums.GigChannelEnum;
 import com.qunzhixinxi.hnqz.admin.enums.GigTypeEnum;
 import com.qunzhixinxi.hnqz.admin.enums.RenlijiaCertStatus;
 import com.qunzhixinxi.hnqz.admin.mapper.WmSettleAccountReceiveMapper;
@@ -95,7 +96,7 @@ public class WmSettlementServiceImpl implements WmSettlementService {
 					updateUser.setRljCertStatus(item.getStatus());
 					sysUserService.updateById(updateUser);
 					// 更新usersub
-					updateUserSub(item, updateUser);
+					this.updateUserSub(item, updateUser);
 				}
 
 
@@ -200,23 +201,39 @@ public class WmSettlementServiceImpl implements WmSettlementService {
 		SysUserSub userSub = sysUserSubService.getOne(Wrappers.<SysUserSub>lambdaQuery()
 				.eq(SysUserSub::getUserId, updateUser.getUserId())
 				.eq(SysUserSub::getGigType, GigTypeEnum.REN_LI_JIA));
+		LocalDateTime now = LocalDateTime.now();
+
 		if (userSub != null) {
+			// 更新
 			SysUserSub updateUserSub = new SysUserSub();
 			updateUserSub.setId(userSub.getId());
 			updateUserSub.setCertRemark(item.getRemark());
 			updateUserSub.setCertStatus(item.getStatus());
 			updateUserSub.setCallbackStatus(GigCallBackStatus.RETURNED);
-			updateUserSub.setUpdateTime(LocalDateTime.now());
+			updateUserSub.setUpdateTime(now);
 			updateUserSub.setUpdateUser(0);
 			sysUserSubService.updateById(updateUserSub);
-			// 结果放到redis
-			String key = CacheConstants.USER_SIGN_CERT_RESPONSE_KEY + userSub.getUserId();
-			Map<String, String> subMap = new HashMap<>();
-			subMap.put("certStatus", RenlijiaCertStatus.resolve(item.getStatus()).name());
-			subMap.put("message", item.getRemark());
-			Map<String, Object> result = MapUtil.newHashMap(1);
-			result.put("REN_LI_JIA", subMap);
-			redisTemplate.opsForValue().set(key, JSONUtil.toJsonStr(result), 1, TimeUnit.MINUTES);
+		} else {
+			// 新增
+			SysUserSub saveUserSub = new SysUserSub();
+			saveUserSub.setDeptId(updateUser.getDeptId());
+			saveUserSub.setUserId(updateUser.getUserId());
+			saveUserSub.setGigType(GigTypeEnum.REN_LI_JIA);
+			saveUserSub.setGigChannel(GigChannelEnum.DEFAULT);
+			saveUserSub.setCertRemark(item.getRemark());
+			saveUserSub.setCertStatus(item.getStatus());
+			saveUserSub.setCallbackStatus(GigCallBackStatus.RETURNED);
+			saveUserSub.setCreateTime(now);
+			saveUserSub.setCreateUser(0);
+			sysUserSubService.save(saveUserSub);
 		}
+		// 结果放到redis
+		String key = CacheConstants.USER_SIGN_CERT_RESPONSE_KEY + updateUser.getUserId();
+		Map<String, String> subMap = new HashMap<>();
+		subMap.put("certStatus", RenlijiaCertStatus.resolve(item.getStatus()).name());
+		subMap.put("message", item.getRemark());
+		Map<String, Object> result = MapUtil.newHashMap(1);
+		result.put("REN_LI_JIA", subMap);
+		redisTemplate.opsForValue().set(key, JSONUtil.toJsonStr(result), 1, TimeUnit.MINUTES);
 	}
 }