2
0

fix: kyc fix issue

This commit is contained in:
zhangsz
2025-01-11 17:39:14 +08:00
parent eb72b4b1b9
commit 81c44e1c16
6 changed files with 37 additions and 12 deletions

View File

@@ -867,7 +867,7 @@ CREATE TABLE `u_kyc` (
`id_type` enum('DRIVERS_LICENSE','PASSPORT','RESIDENCE_PERMIT','STUDENT_ID','MEDICARE_CARD','BIRTH_CERTIFICATE') CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'identify type', `id_type` enum('DRIVERS_LICENSE','PASSPORT','RESIDENCE_PERMIT','STUDENT_ID','MEDICARE_CARD','BIRTH_CERTIFICATE') CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'identify type',
`id_file` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT 'ID file', `id_file` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT 'ID file',
`identify_picture` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'identify picture', `identify_picture` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'identify picture',
`status` enum('APPROVED','REJECTED','PENDING') CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 'PENDING' COMMENT 'kyc status: APPROVED/REJECTED/PENDING', `status` enum('VERIFIED','UNVERIFIED','PENDING','REJECTED') CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 'PENDING' COMMENT 'KYC Status: 1-VERIFIED/2-UNVERIFIED/3-PENDING/4-REJECTED',
`description` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL, `description` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
`del_flag` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '删除标志0代表存在 2代表删除', `del_flag` char(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '删除标志0代表存在 2代表删除',
`create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者', `create_by` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '' COMMENT '创建者',
@@ -877,6 +877,6 @@ CREATE TABLE `u_kyc` (
PRIMARY KEY (`kyc_id`) USING BTREE, PRIMARY KEY (`kyc_id`) USING BTREE,
INDEX `user_id`(`user_id`) USING BTREE, INDEX `user_id`(`user_id`) USING BTREE,
CONSTRAINT `u_kyc_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `u_user` (`user_id`) ON DELETE RESTRICT ON UPDATE RESTRICT CONSTRAINT `u_kyc_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `u_user` (`user_id`) ON DELETE RESTRICT ON UPDATE RESTRICT
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户平台_用户信息表' ROW_FORMAT = DYNAMIC; ) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户平台_用户信息表' ROW_FORMAT = DYNAMIC;
SET FOREIGN_KEY_CHECKS = 1; SET FOREIGN_KEY_CHECKS = 1;

View File

@@ -22,10 +22,9 @@ import java.util.List;
/** /**
* <p> * <p>
* User Portal-User KYC table contorller * System Portal-User KYC table contorller
* </p> * </p>
* *
* @author sys
* @since 2025-01-08 * @since 2025-01-08
*/ */
@RestController @RestController

View File

@@ -13,8 +13,9 @@ import org.wfc.common.core.web.domain.AjaxResult;
import org.wfc.common.core.web.page.TableDataInfo; import org.wfc.common.core.web.page.TableDataInfo;
import org.wfc.common.log.annotation.Log; import org.wfc.common.log.annotation.Log;
import org.wfc.common.log.enums.BusinessType; import org.wfc.common.log.enums.BusinessType;
import org.wfc.common.security.annotation.RequiresPermissions; // import org.wfc.common.security.annotation.RequiresPermissions;
import org.wfc.user.domain.UKyc; import org.wfc.user.domain.UKyc;
import org.wfc.user.domain.constant.KycStatusEnum;
import org.wfc.user.domain.vo.UKycUserVo; import org.wfc.user.domain.vo.UKycUserVo;
import org.wfc.user.service.IUKycService; import org.wfc.user.service.IUKycService;
@@ -22,10 +23,9 @@ import java.util.List;
/** /**
* <p> * <p>
* 用户平台-账单表 前端控制器 * User Portal-User KYC table contorller
* </p> * </p>
* *
* @author sys
* @since 2025-01-06 * @since 2025-01-06
*/ */
@RestController @RestController
@@ -35,7 +35,7 @@ public class UKycController extends BaseController {
@Autowired @Autowired
private IUKycService uKycService; private IUKycService uKycService;
@RequiresPermissions("Utem:kyc:query") // @RequiresPermissions("Utem:kyc:query")
@GetMapping("/page") @GetMapping("/page")
public TableDataInfo page() { public TableDataInfo page() {
startPage(); startPage();
@@ -43,17 +43,19 @@ public class UKycController extends BaseController {
return getDataTable(list); return getDataTable(list);
} }
@RequiresPermissions("Utem:kyc:add") // @RequiresPermissions("Utem:kyc:add")
@Log(title = "User Management", businessType = BusinessType.INSERT) @Log(title = "User Management", businessType = BusinessType.INSERT)
@PostMapping("/verify") @PostMapping("/verify")
public AjaxResult add(@Validated @RequestBody UKyc uKyc) { public AjaxResult add(@Validated @RequestBody UKyc uKyc) {
uKyc.setStatus(KycStatusEnum.PENDING.getCode());
return toAjax(uKycService.insertUserKyc(uKyc)); return toAjax(uKycService.insertUserKyc(uKyc));
} }
@RequiresPermissions("Utem:kyc:edit") // @RequiresPermissions("Utem:kyc:edit")
@Log(title = "User Management", businessType = BusinessType.UPDATE) @Log(title = "User Management", businessType = BusinessType.UPDATE)
@PutMapping("/verify") @PutMapping("/verify")
public AjaxResult edit(@Validated @RequestBody UKyc uKyc) { public AjaxResult edit(@Validated @RequestBody UKyc uKyc) {
uKyc.setStatus(KycStatusEnum.PENDING.getCode());
return toAjax(uKycService.updateUserKyc(uKyc)); return toAjax(uKycService.updateUserKyc(uKyc));
} }
} }

View File

@@ -14,7 +14,7 @@ public class UKycUserVo {
private Long userId; private Long userId;
@Schema(description = "Real Name") @Schema(description = "Real Name")
private String userName; private String realName;
@Schema(description = "Birth Date") @Schema(description = "Birth Date")
private String birthDate; private String birthDate;

View File

@@ -50,6 +50,18 @@ public class UKycServiceImpl extends ServiceImpl<UKycMapper, UKyc> implements IU
@Override @Override
public int insertUserKyc(UKyc uKyc) { public int insertUserKyc(UKyc uKyc) {
log.debug("uKyc: {}", uKyc); log.debug("uKyc: {}", uKyc);
LoginUser<Object> loginUser = SecurityUtils.getLoginUser();
if (uKyc.getUserId() == null) {
uKyc.setUserId(loginUser.getUserid());
} else {
if (!loginUser.getUserid().equals(uKyc.getUserId())) {
log.error("The kyc user(userId={}) is not the logged in user(userId={})",
uKyc.getUserId(), loginUser.getUserid());
return 0;
}
}
if (this.uKycMapper.isExistUserKyc(uKyc.getUserId()) == 0) { if (this.uKycMapper.isExistUserKyc(uKyc.getUserId()) == 0) {
return this.uKycMapper.insertUserKyc(uKyc); return this.uKycMapper.insertUserKyc(uKyc);
} else { } else {
@@ -59,6 +71,18 @@ public class UKycServiceImpl extends ServiceImpl<UKycMapper, UKyc> implements IU
@Override @Override
public int updateUserKyc(UKyc uKyc) { public int updateUserKyc(UKyc uKyc) {
LoginUser<Object> loginUser = SecurityUtils.getLoginUser();
if (uKyc.getUserId() == null) {
uKyc.setUserId(loginUser.getUserid());
} else {
if (!loginUser.getUserid().equals(uKyc.getUserId())) {
log.error("The kyc user(userId={}) is not the logged in user(userId={})",
uKyc.getUserId(), loginUser.getUserid());
return 0;
}
}
return this.uKycMapper.updateUserKyc(uKyc); return this.uKycMapper.updateUserKyc(uKyc);
} }
} }

View File

@@ -73,7 +73,7 @@
SELECT SELECT
k.kyc_id, k.kyc_id,
k.user_id, k.user_id,
u.user_name, u.full_name as realName,
k.birth_date, k.birth_date,
k.id_type, k.id_type,
k.id_file, k.id_file,