From 81c44e1c160413ab501540f67a6a1cb0e64df331 Mon Sep 17 00:00:00 2001 From: zhangsz Date: Sat, 11 Jan 2025 17:39:14 +0800 Subject: [PATCH] fix: kyc fix issue --- sql/wfc_user_db/wfc_user_db.sql | 4 ++-- .../wfc/system/controller/UKycController.java | 3 +-- .../wfc/user/controller/UKycController.java | 14 ++++++----- .../org/wfc/user/domain/vo/UKycUserVo.java | 2 +- .../user/service/impl/UKycServiceImpl.java | 24 +++++++++++++++++++ .../main/resources/mapper/user/UKycMapper.xml | 2 +- 6 files changed, 37 insertions(+), 12 deletions(-) diff --git a/sql/wfc_user_db/wfc_user_db.sql b/sql/wfc_user_db/wfc_user_db.sql index 9466982..5970a9e 100644 --- a/sql/wfc_user_db/wfc_user_db.sql +++ b/sql/wfc_user_db/wfc_user_db.sql @@ -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_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', - `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, `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 '创建者', @@ -877,6 +877,6 @@ CREATE TABLE `u_kyc` ( PRIMARY KEY (`kyc_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 -) 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; diff --git a/wfc-modules/wfc-system/src/main/java/org/wfc/system/controller/UKycController.java b/wfc-modules/wfc-system/src/main/java/org/wfc/system/controller/UKycController.java index ca88606..e533d87 100644 --- a/wfc-modules/wfc-system/src/main/java/org/wfc/system/controller/UKycController.java +++ b/wfc-modules/wfc-system/src/main/java/org/wfc/system/controller/UKycController.java @@ -22,10 +22,9 @@ import java.util.List; /** *

- * User Portal-User KYC table contorller + * System Portal-User KYC table contorller *

* - * @author sys * @since 2025-01-08 */ @RestController diff --git a/wfc-modules/wfc-user/src/main/java/org/wfc/user/controller/UKycController.java b/wfc-modules/wfc-user/src/main/java/org/wfc/user/controller/UKycController.java index 55881f8..16c777d 100644 --- a/wfc-modules/wfc-user/src/main/java/org/wfc/user/controller/UKycController.java +++ b/wfc-modules/wfc-user/src/main/java/org/wfc/user/controller/UKycController.java @@ -13,8 +13,9 @@ import org.wfc.common.core.web.domain.AjaxResult; import org.wfc.common.core.web.page.TableDataInfo; import org.wfc.common.log.annotation.Log; 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.constant.KycStatusEnum; import org.wfc.user.domain.vo.UKycUserVo; import org.wfc.user.service.IUKycService; @@ -22,10 +23,9 @@ import java.util.List; /** *

- * 用户平台-账单表 前端控制器 + * User Portal-User KYC table contorller *

* - * @author sys * @since 2025-01-06 */ @RestController @@ -35,7 +35,7 @@ public class UKycController extends BaseController { @Autowired private IUKycService uKycService; - @RequiresPermissions("Utem:kyc:query") + // @RequiresPermissions("Utem:kyc:query") @GetMapping("/page") public TableDataInfo page() { startPage(); @@ -43,17 +43,19 @@ public class UKycController extends BaseController { return getDataTable(list); } - @RequiresPermissions("Utem:kyc:add") + // @RequiresPermissions("Utem:kyc:add") @Log(title = "User Management", businessType = BusinessType.INSERT) @PostMapping("/verify") public AjaxResult add(@Validated @RequestBody UKyc uKyc) { + uKyc.setStatus(KycStatusEnum.PENDING.getCode()); return toAjax(uKycService.insertUserKyc(uKyc)); } - @RequiresPermissions("Utem:kyc:edit") + // @RequiresPermissions("Utem:kyc:edit") @Log(title = "User Management", businessType = BusinessType.UPDATE) @PutMapping("/verify") public AjaxResult edit(@Validated @RequestBody UKyc uKyc) { + uKyc.setStatus(KycStatusEnum.PENDING.getCode()); return toAjax(uKycService.updateUserKyc(uKyc)); } } diff --git a/wfc-modules/wfc-user/src/main/java/org/wfc/user/domain/vo/UKycUserVo.java b/wfc-modules/wfc-user/src/main/java/org/wfc/user/domain/vo/UKycUserVo.java index f199500..daca557 100644 --- a/wfc-modules/wfc-user/src/main/java/org/wfc/user/domain/vo/UKycUserVo.java +++ b/wfc-modules/wfc-user/src/main/java/org/wfc/user/domain/vo/UKycUserVo.java @@ -14,7 +14,7 @@ public class UKycUserVo { private Long userId; @Schema(description = "Real Name") - private String userName; + private String realName; @Schema(description = "Birth Date") private String birthDate; diff --git a/wfc-modules/wfc-user/src/main/java/org/wfc/user/service/impl/UKycServiceImpl.java b/wfc-modules/wfc-user/src/main/java/org/wfc/user/service/impl/UKycServiceImpl.java index 4db696c..213b4c1 100644 --- a/wfc-modules/wfc-user/src/main/java/org/wfc/user/service/impl/UKycServiceImpl.java +++ b/wfc-modules/wfc-user/src/main/java/org/wfc/user/service/impl/UKycServiceImpl.java @@ -50,6 +50,18 @@ public class UKycServiceImpl extends ServiceImpl implements IU @Override public int insertUserKyc(UKyc uKyc) { log.debug("uKyc: {}", uKyc); + LoginUser 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) { return this.uKycMapper.insertUserKyc(uKyc); } else { @@ -59,6 +71,18 @@ public class UKycServiceImpl extends ServiceImpl implements IU @Override public int updateUserKyc(UKyc uKyc) { + LoginUser 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); } } diff --git a/wfc-modules/wfc-user/src/main/resources/mapper/user/UKycMapper.xml b/wfc-modules/wfc-user/src/main/resources/mapper/user/UKycMapper.xml index 4070723..cc27755 100644 --- a/wfc-modules/wfc-user/src/main/resources/mapper/user/UKycMapper.xml +++ b/wfc-modules/wfc-user/src/main/resources/mapper/user/UKycMapper.xml @@ -73,7 +73,7 @@ SELECT k.kyc_id, k.user_id, - u.user_name, + u.full_name as realName, k.birth_date, k.id_type, k.id_file,