From 400ebeef3ede604250b6baedc810eede1d0be500 Mon Sep 17 00:00:00 2001
From: zhangli <123879394@qq.com>
Date: Mon, 18 Aug 2025 23:30:58 +0800
Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=AE=A4=E8=AF=81=E6=8E=A5?=
=?UTF-8?q?=E5=8F=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 5 +++
.../sczx/user/controller/AuthController.java | 9 ++++++
.../java/com/sczx/user/dto/AuthRequest.java | 32 +++++++++++++++++++
.../java/com/sczx/user/po/BaseUserPO.java | 12 +++++++
.../com/sczx/user/service/IUserService.java | 11 ++++---
.../user/service/impl/UserServiceImpl.java | 21 +++++++++---
6 files changed, 82 insertions(+), 8 deletions(-)
create mode 100644 src/main/java/com/sczx/user/dto/AuthRequest.java
diff --git a/pom.xml b/pom.xml
index cd98a78..0270bc0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -75,6 +75,11 @@
spring-cloud-starter-alibaba-nacos-discovery
+
+ org.springframework.boot
+ spring-boot-starter-validation
+
+
org.springframework.cloud
spring-cloud-commons
diff --git a/src/main/java/com/sczx/user/controller/AuthController.java b/src/main/java/com/sczx/user/controller/AuthController.java
index 0348f56..566ef6c 100644
--- a/src/main/java/com/sczx/user/controller/AuthController.java
+++ b/src/main/java/com/sczx/user/controller/AuthController.java
@@ -2,6 +2,7 @@ package com.sczx.user.controller;
import com.sczx.user.common.Result;
import com.sczx.user.dto.AlipayMiniProgramRegRequest;
+import com.sczx.user.dto.AuthRequest;
import com.sczx.user.dto.LoginResponse;
import com.sczx.user.dto.WxMiniProgramRegRequest;
import com.sczx.user.service.IUserService;
@@ -11,6 +12,8 @@ import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
+import javax.validation.Valid;
+
@Api(value = "登录控制器", tags = "注册登录")
@RequestMapping("/auth")
@RestController
@@ -67,4 +70,10 @@ public class AuthController {
}
+ @ApiOperation(value = "身份认证", notes = "身份认证")
+ @PostMapping("/authUser")
+ public Result authUser(@Valid @RequestBody AuthRequest authRequest) {
+ userService.authUser(authRequest);
+ return Result.ok(true);
+ }
}
diff --git a/src/main/java/com/sczx/user/dto/AuthRequest.java b/src/main/java/com/sczx/user/dto/AuthRequest.java
new file mode 100644
index 0000000..56ffd20
--- /dev/null
+++ b/src/main/java/com/sczx/user/dto/AuthRequest.java
@@ -0,0 +1,32 @@
+package com.sczx.user.dto;
+
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+
+@ApiModel(value = "AuthRequest对象", description = "认证请求对象")
+@Data
+public class AuthRequest {
+
+ @ApiModelProperty(value = "用户id", required = false)
+ private Long userId;
+
+ @NotNull(message = "身份证号不能为空")
+ @ApiModelProperty("身份证号")
+ private String idNo;
+
+ @NotNull(message = "真实姓名不能为空")
+ @ApiModelProperty("身份证号")
+ private String realName;
+
+ @NotNull(message = "正面照片不能为空")
+ @ApiModelProperty("正面照片")
+ private String frontPhoto;
+
+ @NotNull(message = "背面照片不能为空")
+ @ApiModelProperty("背面照片")
+ private String backPhoto;
+}
diff --git a/src/main/java/com/sczx/user/po/BaseUserPO.java b/src/main/java/com/sczx/user/po/BaseUserPO.java
index b3eb90e..f0c81c0 100644
--- a/src/main/java/com/sczx/user/po/BaseUserPO.java
+++ b/src/main/java/com/sczx/user/po/BaseUserPO.java
@@ -58,6 +58,18 @@ public class BaseUserPO implements Serializable {
@ApiModelProperty("是否认证0未认证1已认证")
private Integer authed;
+ @ApiModelProperty("身份证号")
+ private String idNo;
+
+ @ApiModelProperty("身份证号")
+ private String realName;
+
+ @ApiModelProperty("正面照片")
+ private String frontPhoto;
+
+ @ApiModelProperty("背面照片")
+ private String backPhoto;
+
@ApiModelProperty("删除标志(0代表存在 2代表删除)")
private String delFlag;
diff --git a/src/main/java/com/sczx/user/service/IUserService.java b/src/main/java/com/sczx/user/service/IUserService.java
index 68f1fdf..c8d08d6 100644
--- a/src/main/java/com/sczx/user/service/IUserService.java
+++ b/src/main/java/com/sczx/user/service/IUserService.java
@@ -1,9 +1,6 @@
package com.sczx.user.service;
-import com.sczx.user.dto.AlipayMiniProgramRegRequest;
-import com.sczx.user.dto.LoginResponse;
-import com.sczx.user.dto.SimpleUserInfoDTO;
-import com.sczx.user.dto.WxMiniProgramRegRequest;
+import com.sczx.user.dto.*;
/**
* @Author: 张黎
@@ -66,4 +63,10 @@ public interface IUserService {
* @return 用户信息
*/
SimpleUserInfoDTO getUserInfoByProgramId(String programId, String programType);
+
+ /**
+ * 用户认证
+ * @param authRequest 认证请求
+ */
+ void authUser(AuthRequest authRequest);
}
diff --git a/src/main/java/com/sczx/user/service/impl/UserServiceImpl.java b/src/main/java/com/sczx/user/service/impl/UserServiceImpl.java
index 3de4b55..687f624 100644
--- a/src/main/java/com/sczx/user/service/impl/UserServiceImpl.java
+++ b/src/main/java/com/sczx/user/service/impl/UserServiceImpl.java
@@ -2,13 +2,11 @@ package com.sczx.user.service.impl;
import com.alibaba.nacos.common.utils.MD5Utils;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.sczx.user.common.enums.ApiErrorCode;
import com.sczx.user.common.enums.MiniProgramTypeEnum;
import com.sczx.user.convert.UserInfoConvert;
-import com.sczx.user.dto.AlipayMiniProgramRegRequest;
-import com.sczx.user.dto.LoginResponse;
-import com.sczx.user.dto.SimpleUserInfoDTO;
-import com.sczx.user.dto.WxMiniProgramRegRequest;
+import com.sczx.user.dto.*;
import com.sczx.user.exception.BizException;
import com.sczx.user.po.BaseUserPO;
import com.sczx.user.repository.BaseUserRepo;
@@ -237,6 +235,21 @@ public class UserServiceImpl implements IUserService {
return UserInfoConvert.INSTANCE.poToSimpleDTO(baseUserPO);
}
+ @Override
+ public void authUser(AuthRequest authRequest) {
+ if(Objects.isNull(authRequest.getUserId())){
+ SimpleUserInfoDTO simpleUserInfoDTO = jwtUtil.getUserInfoFromToken();
+ authRequest.setUserId((long)simpleUserInfoDTO.getUserId());
+ }
+ LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>();
+ updateWrapper.eq(BaseUserPO::getId, authRequest.getUserId());
+ updateWrapper.set(BaseUserPO::getIdNo, authRequest.getIdNo());
+ updateWrapper.set(BaseUserPO::getRealName, authRequest.getRealName());
+ updateWrapper.set(BaseUserPO::getFrontPhoto, authRequest.getFrontPhoto());
+ updateWrapper.set(BaseUserPO::getBackPhoto, authRequest.getBackPhoto());
+ baseUserRepo.update(updateWrapper);
+ }
+
/**
* 获取登录信息
* @param programId