1.实名接口修改

This commit is contained in:
张松 2025-01-02 15:48:19 +08:00
parent a9d195ed96
commit 758c1aabbb
1 changed files with 33 additions and 35 deletions

View File

@ -101,67 +101,65 @@ public class AppController {
UserInfo userInfo = userInfoService.getByUserId(userId);
UserEntity userEntity = userService.getById(userId);
int count = userService.count(new QueryWrapper<UserEntity>()
.ne("user_id", userId)
.eq("zhi_fu_bao_name", certName)
.eq("zhi_fu_bao", zhiFuBao));
if (StrUtil.isNotBlank(zhiFuBao) && count > 0) {
return Result.error("一个支付宝账号仅可绑定一个用户");
}
String errMsg = null;
if (StrUtil.isNotBlank(zhiFuBao)) {
int count = userService.count(new QueryWrapper<UserEntity>()
.ne("user_id", userId)
.eq("zhi_fu_bao_name", certName)
.eq("zhi_fu_bao", zhiFuBao));
if (count > 0) {
errMsg = "支付宝信息修改失败: 一个支付宝账号仅可绑定一个用户";
}
if (StrUtil.isNotBlank(userInfo.getCertName()) && !certName.equals(userInfo.getCertName())) {
return Result.error("姓名与实名认证信息不相符");
errMsg = "支付宝信息修改失败: 姓名与实名认证信息不相符";
}
if (!DataLimitUtil.isAccessAllowed(zhiFuBao+certName, Integer.parseInt(commonRepository.findOne(924).getValue()), "month")) {
return Result.error("修改失败,相同支付宝账号每月可绑定次数已用完");
errMsg = "支付宝信息修改失败: 相同支付宝账号每月可绑定次数已用完";
}
if (!ApiAccessLimitUtil.isAccessAllowed(userId.toString(), "updateZFB", Integer.parseInt(commonRepository.findOne(925).getValue()), "month")) {
return Result.error("每月可修改次数已用完,请联系管理员");
}
}
if (StrUtil.isNotBlank(certNum)) {
if (StrUtil.isNotBlank(userEntity.getZhiFuBaoName()) && !certName.equals(userEntity.getZhiFuBaoName())) {
return Result.error("姓名与绑定支付宝信息不相符");
}
if (!IdcardUtil.isValidCard(certNum)) {
throw new SqxException("身份证号码有误");
errMsg = "支付宝信息修改失败: 每月可修改次数已用完,请联系管理员";
}
Integer idCount = userInfoService.countCertCount(certName, certNum);
if (idCount > 1) {
throw new SqxException("此实名信息已存在");
}
if (!ApiAccessLimitUtil.isAccessAllowed(String.valueOf(userId), "updateAuthCertInfo", 1, "month")) {
return Result.error("每月可修改次数已用完,请联系管理员");
}
}
if (StrUtil.isNotBlank(zhiFuBao)) {
userEntity.setZhiFuBao(zhiFuBao);
userEntity.setZhiFuBaoName(certName);
userService.updateById(userEntity);
}
if (StrUtil.isNotBlank(certNum)) {
if (StrUtil.isNotBlank(userEntity.getZhiFuBaoName()) && !certName.equals(userEntity.getZhiFuBaoName())) {
errMsg = "实名修改失败: 姓名与绑定支付宝信息不相符";
}
if (!IdcardUtil.isValidCard(certNum)) {
errMsg = "实名修改失败: 身份证号码有误";
}
Integer idCount = userInfoService.countCertCount(certName, certNum);
if (idCount > 1) {
errMsg = "实名修改失败: 此实名信息已存在";
}
if (!ApiAccessLimitUtil.isAccessAllowed(String.valueOf(userId), "updateAuthCertInfo", 1, "month")) {
errMsg = "实名修改失败: 每月可修改次数已用完,请联系管理员";
}
try {
aliService.authCertNo(certName, certNum);
}catch (Exception e) {
ApiAccessLimitUtil.removeKey(String.valueOf(userId), "updateAuthCertInfo");
return Result.error(e.getMessage());
errMsg = "实名修改失败: " + e.getMessage();
}
userInfo.setCertName(certName);
userInfo.setCertNo(certNum);
userInfo.setUpdateTime(DateUtil.date());
userInfoService.updateById(userInfo);
}
if (errMsg != null) {
return Result.error(errMsg);
}
return Result.success();
// 去除首绑支付宝奖励
// if (bool && isFirstBind) {