From 1b94640aeb69f392ff4e4fdb428db223ad5033bd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=86=AF=E5=87=AF?= <371894675@qq.com>
Date: Sat, 28 Oct 2023 19:58:03 +0800
Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=AD=A3=E6=82=A3=E8=80=85=E6=B3=A8?=
=?UTF-8?q?=E5=86=8C=E7=9A=84mapper?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
base-system-common/pom.xml | 2 +-
.../health/system/common/domain/BankCard.java | 30 +++++++
.../health/system/common/domain/IdCard.java | 52 +++++++++++++
base-system-server/pom.xml | 7 +-
.../server/HealthSystemApplication.java | 4 +-
.../system/server/config/AppConfig.java | 35 +++++++++
.../controller/SysBankCardController.java | 29 +++++++
.../controller/SysIdCardController.java | 78 +++++++++++++++++++
.../server/mapper/SysBankCardMapper.java | 13 ++++
.../system/server/mapper/SysIdCardMapper.java | 13 ++++
.../server/service/SysBankCardService.java | 10 +++
.../server/service/SysIdCardService.java | 10 +++
.../service/impl/SysBankCardServiceImpl.java | 22 ++++++
.../service/impl/SysIdCardServiceImpl.java | 22 ++++++
.../mapper/system/SysBankCardMapper.xml | 6 ++
.../mapper/system/SysIdCardMapper.xml | 6 ++
.../resources/mapper/system/SysRoleMapper.xml | 8 +-
17 files changed, 340 insertions(+), 7 deletions(-)
create mode 100644 base-system-common/src/main/java/com/health/system/common/domain/BankCard.java
create mode 100644 base-system-common/src/main/java/com/health/system/common/domain/IdCard.java
create mode 100644 base-system-server/src/main/java/com/health/system/server/config/AppConfig.java
create mode 100644 base-system-server/src/main/java/com/health/system/server/controller/SysBankCardController.java
create mode 100644 base-system-server/src/main/java/com/health/system/server/controller/SysIdCardController.java
create mode 100644 base-system-server/src/main/java/com/health/system/server/mapper/SysBankCardMapper.java
create mode 100644 base-system-server/src/main/java/com/health/system/server/mapper/SysIdCardMapper.java
create mode 100644 base-system-server/src/main/java/com/health/system/server/service/SysBankCardService.java
create mode 100644 base-system-server/src/main/java/com/health/system/server/service/SysIdCardService.java
create mode 100644 base-system-server/src/main/java/com/health/system/server/service/impl/SysBankCardServiceImpl.java
create mode 100644 base-system-server/src/main/java/com/health/system/server/service/impl/SysIdCardServiceImpl.java
create mode 100644 base-system-server/src/main/resources/mapper/system/SysBankCardMapper.xml
create mode 100644 base-system-server/src/main/resources/mapper/system/SysIdCardMapper.xml
diff --git a/base-system-common/pom.xml b/base-system-common/pom.xml
index 819ab99..944907e 100644
--- a/base-system-common/pom.xml
+++ b/base-system-common/pom.xml
@@ -21,7 +21,7 @@
com.health
health-common-core
- 3.6.5
+ 3.6.7
diff --git a/base-system-common/src/main/java/com/health/system/common/domain/BankCard.java b/base-system-common/src/main/java/com/health/system/common/domain/BankCard.java
new file mode 100644
index 0000000..93927bf
--- /dev/null
+++ b/base-system-common/src/main/java/com/health/system/common/domain/BankCard.java
@@ -0,0 +1,30 @@
+package com.health.system.common.domain;
+
+import lombok.Data;
+
+/**
+ * @author 冯凯
+ * @version 1.0
+ * @description: 用户银行卡实体类
+ * @date 2023/10/28 15:04
+ */
+@Data
+public class BankCard {
+
+ /*
+ 银行卡主键id
+ */
+ private Integer bankId;
+ /*
+ 银行卡号
+ */
+ private String bankNumber;
+ /*
+ 发卡银行名称
+ */
+ private String bankName;
+ /*
+ 用户id
+ */
+ private String userId;
+}
diff --git a/base-system-common/src/main/java/com/health/system/common/domain/IdCard.java b/base-system-common/src/main/java/com/health/system/common/domain/IdCard.java
new file mode 100644
index 0000000..ecf578f
--- /dev/null
+++ b/base-system-common/src/main/java/com/health/system/common/domain/IdCard.java
@@ -0,0 +1,52 @@
+package com.health.system.common.domain;
+
+import lombok.Data;
+
+/**
+ * @author 冯凯
+ * @version 1.0
+ * @description: 用户身份证实体类
+ * @date 2023/10/28 15:01
+ */
+@Data
+public class IdCard {
+
+ /*
+ 身份证id
+ */
+ private Integer cardId;
+ /*
+ 用户id
+ */
+ private Long userId;
+ /*
+ 身份证真实姓名
+ */
+ private String name;
+ /*
+ 性别
+ */
+ private String sex;
+ /*
+ 民族
+ */
+ private String nation;
+ /*
+ 生日
+ */
+ private String birthday;
+
+ /*
+ 籍贯地址
+ */
+ private String address;
+
+ /*
+ 身份证号码
+ */
+ private String idNumber;
+ /*
+ 签发机关
+ */
+ private String issueOffice;
+}
diff --git a/base-system-server/pom.xml b/base-system-server/pom.xml
index f661f74..765206a 100644
--- a/base-system-server/pom.xml
+++ b/base-system-server/pom.xml
@@ -112,7 +112,12 @@
com.health
health-common-core
- 3.6.5
+ 3.6.7
+
+
+ com.dtflys.forest
+ forest-spring-boot-starter
+ 1.5.33
diff --git a/base-system-server/src/main/java/com/health/system/server/HealthSystemApplication.java b/base-system-server/src/main/java/com/health/system/server/HealthSystemApplication.java
index e804cea..c8a20ec 100644
--- a/base-system-server/src/main/java/com/health/system/server/HealthSystemApplication.java
+++ b/base-system-server/src/main/java/com/health/system/server/HealthSystemApplication.java
@@ -1,10 +1,12 @@
package com.health.system.server;
+import com.dtflys.forest.springboot.annotation.ForestScan;
import com.health.common.security.annotation.EnableCustomConfig;
import com.health.common.security.annotation.EnableRyFeignClients;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.context.annotation.Configuration;
/**
* 系统模块
@@ -12,7 +14,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
* @author health
*/
@EnableCustomConfig
-
+@Configuration(value = "com.health.common.core.utils.userSelf.ForestClientInterface")
@EnableRyFeignClients
@SpringBootApplication
@MapperScan(value = "com.health.system.server.mapper")
diff --git a/base-system-server/src/main/java/com/health/system/server/config/AppConfig.java b/base-system-server/src/main/java/com/health/system/server/config/AppConfig.java
new file mode 100644
index 0000000..e0910e1
--- /dev/null
+++ b/base-system-server/src/main/java/com/health/system/server/config/AppConfig.java
@@ -0,0 +1,35 @@
+package com.health.system.server.config;
+
+import com.health.common.core.domain.Configure;
+import com.health.common.core.utils.userSelf.ForestClientInterface;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * @author 冯凯
+ * @version 1.0
+ * @description:
+ * @date 2023/10/28 19:40
+ */
+@Configuration
+public class AppConfig implements ForestClientInterface{
+
+
+ @Override
+ public Map helloForestFace(String s) {
+ return helloForestFace(s);
+ }
+
+ @Override
+ public Map helloForestBack(String s, Configure configure) {
+ return helloForestBack(s,configure);
+ }
+
+ @Override
+ public Map helloForestBank(String s) {
+ return helloForestBank(s);
+ }
+}
diff --git a/base-system-server/src/main/java/com/health/system/server/controller/SysBankCardController.java b/base-system-server/src/main/java/com/health/system/server/controller/SysBankCardController.java
new file mode 100644
index 0000000..578416c
--- /dev/null
+++ b/base-system-server/src/main/java/com/health/system/server/controller/SysBankCardController.java
@@ -0,0 +1,29 @@
+package com.health.system.server.controller;
+
+import com.health.common.core.domain.Result;
+import com.health.system.server.service.SysBankCardService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+/**
+ * @author 冯凯
+ * @version 1.0
+ * @description: 用户银行卡控制层接口
+ * @date 2023/10/28 15:10
+ */
+@RestController("/bankCard")
+public class SysBankCardController {
+ /*
+ 用户银行卡业务逻辑层接口
+ */
+ @Autowired
+ private SysBankCardService sysBankCardService;
+
+ @PostMapping("/bindUserBank")
+ public Result bindUserBank(@RequestParam("bankImage") MultipartFile bankImage){
+ return Result.success();
+ }
+}
diff --git a/base-system-server/src/main/java/com/health/system/server/controller/SysIdCardController.java b/base-system-server/src/main/java/com/health/system/server/controller/SysIdCardController.java
new file mode 100644
index 0000000..7d3312a
--- /dev/null
+++ b/base-system-server/src/main/java/com/health/system/server/controller/SysIdCardController.java
@@ -0,0 +1,78 @@
+package com.health.system.server.controller;
+
+import com.health.common.core.domain.Configure;
+import com.health.common.core.domain.Result;
+import com.health.common.core.enums.IdCardConfigureType;
+import com.health.common.core.utils.userSelf.ForestClientInterface;
+import com.health.common.security.utils.SecurityUtils;
+import com.health.system.common.domain.IdCard;
+import com.health.system.server.service.SysIdCardService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.annotation.Resource;
+import java.io.IOException;
+import java.rmi.ServerException;
+import java.util.Base64;
+import java.util.Map;
+
+/**
+ * @author 冯凯
+ * @version 1.0
+ * @description: 用户身份证控制层
+ * @date 2023/10/28 15:06
+ */
+@RestController("/idCard")
+public class SysIdCardController {
+
+ /*
+ 注入forest远程调用工具接口
+ */
+ @Autowired
+ private ForestClientInterface forestClientInterface;
+ /*
+ 注入用户身份证业务逻辑层接口
+ */
+ @Autowired
+ private SysIdCardService sysIdCardService;
+
+ @PostMapping("/bindIdCard")
+ public Result bindIdCard(@RequestParam("faceImage")MultipartFile faceImage,@RequestParam("backImage") MultipartFile backImage) throws IOException {
+ //获取正面头像照片的字节流
+ String username = SecurityUtils.getUsername();
+ byte[] faceImageBytes = faceImage.getBytes();
+ //获取反面国徽面的字节流
+ byte[] backImageBytes = backImage.getBytes();
+ String face = Base64.getEncoder().encodeToString(faceImageBytes);
+ Map faceMap = forestClientInterface.helloForestFace(face);
+ String address = (String) faceMap.get("address");
+ String birthday = (String) faceMap.get("birth");
+ String name = (String) faceMap.get("name");
+ String sex = (String) faceMap.get("sex");
+ String nation = (String) faceMap.get("nationality");
+ String num = (String) faceMap.get("num");
+ if (!name.equals(username)){
+ throw new ServerException("请选择自己的身份证进行绑定");
+ }
+ String back = Base64.getEncoder().encodeToString(backImageBytes);
+ Configure configure = new Configure();
+ configure.setSide(IdCardConfigureType.Back.getType());
+ Map backMap = forestClientInterface.helloForestBack(back, configure);
+ String issueOffice = (String) backMap.get("issue");
+ IdCard idCard = new IdCard();
+ idCard.setName(name);
+ idCard.setBirthday(birthday);
+ idCard.setName(name);
+ idCard.setSex(sex);
+ idCard.setNation(nation);
+ idCard.setIdNumber(num);
+ idCard.setIssueOffice(issueOffice);
+ idCard.setAddress(address);
+ idCard.setUserId(SecurityUtils.getUserId());
+
+ return Result.success();
+ }
+}
diff --git a/base-system-server/src/main/java/com/health/system/server/mapper/SysBankCardMapper.java b/base-system-server/src/main/java/com/health/system/server/mapper/SysBankCardMapper.java
new file mode 100644
index 0000000..1033302
--- /dev/null
+++ b/base-system-server/src/main/java/com/health/system/server/mapper/SysBankCardMapper.java
@@ -0,0 +1,13 @@
+package com.health.system.server.mapper;
+
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @author 冯凯
+ * @version 1.0
+ * @description:用户银行卡持久层接口
+ * @date 2023/10/28 15:12
+ */
+@Mapper
+public interface SysBankCardMapper {
+}
diff --git a/base-system-server/src/main/java/com/health/system/server/mapper/SysIdCardMapper.java b/base-system-server/src/main/java/com/health/system/server/mapper/SysIdCardMapper.java
new file mode 100644
index 0000000..f6c36cb
--- /dev/null
+++ b/base-system-server/src/main/java/com/health/system/server/mapper/SysIdCardMapper.java
@@ -0,0 +1,13 @@
+package com.health.system.server.mapper;
+
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * @author 冯凯
+ * @version 1.0
+ * @description:用户身份证持久层接口
+ * @date 2023/10/28 15:09
+ */
+@Mapper
+public interface SysIdCardMapper {
+}
diff --git a/base-system-server/src/main/java/com/health/system/server/service/SysBankCardService.java b/base-system-server/src/main/java/com/health/system/server/service/SysBankCardService.java
new file mode 100644
index 0000000..541b401
--- /dev/null
+++ b/base-system-server/src/main/java/com/health/system/server/service/SysBankCardService.java
@@ -0,0 +1,10 @@
+package com.health.system.server.service;
+
+/**
+ * @author 冯凯
+ * @version 1.0
+ * @description:用户银行卡业务逻辑层接口
+ * @date 2023/10/28 15:11
+ */
+public interface SysBankCardService {
+}
diff --git a/base-system-server/src/main/java/com/health/system/server/service/SysIdCardService.java b/base-system-server/src/main/java/com/health/system/server/service/SysIdCardService.java
new file mode 100644
index 0000000..6e4a838
--- /dev/null
+++ b/base-system-server/src/main/java/com/health/system/server/service/SysIdCardService.java
@@ -0,0 +1,10 @@
+package com.health.system.server.service;
+
+/**
+ * @author 冯凯
+ * @version 1.0
+ * @description:用户身份证业务逻辑层接口
+ * @date 2023/10/28 15:08
+ */
+public interface SysIdCardService {
+}
diff --git a/base-system-server/src/main/java/com/health/system/server/service/impl/SysBankCardServiceImpl.java b/base-system-server/src/main/java/com/health/system/server/service/impl/SysBankCardServiceImpl.java
new file mode 100644
index 0000000..9cba764
--- /dev/null
+++ b/base-system-server/src/main/java/com/health/system/server/service/impl/SysBankCardServiceImpl.java
@@ -0,0 +1,22 @@
+package com.health.system.server.service.impl;
+
+import com.health.system.server.mapper.SysBankCardMapper;
+import com.health.system.server.service.SysBankCardService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author 冯凯
+ * @version 1.0
+ * @description:用户银行卡业务逻辑层接口
+ * @date 2023/10/28 15:12
+ */
+@Service
+public class SysBankCardServiceImpl implements SysBankCardService {
+
+ /*
+ 用户银行卡持久层接口
+ */
+ @Autowired
+ private SysBankCardMapper sysBankCardMapper;
+}
diff --git a/base-system-server/src/main/java/com/health/system/server/service/impl/SysIdCardServiceImpl.java b/base-system-server/src/main/java/com/health/system/server/service/impl/SysIdCardServiceImpl.java
new file mode 100644
index 0000000..2495a1a
--- /dev/null
+++ b/base-system-server/src/main/java/com/health/system/server/service/impl/SysIdCardServiceImpl.java
@@ -0,0 +1,22 @@
+package com.health.system.server.service.impl;
+
+import com.health.system.server.mapper.SysIdCardMapper;
+import com.health.system.server.service.SysIdCardService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author 冯凯
+ * @version 1.0
+ * @description:用户身份证业务逻辑层接口实现类
+ * @date 2023/10/28 15:08
+ */
+@Service
+public class SysIdCardServiceImpl implements SysIdCardService {
+
+ /*
+ 注入用户身份证持久层接口
+ */
+ @Autowired
+ private SysIdCardMapper sysIdCardMapper;
+}
diff --git a/base-system-server/src/main/resources/mapper/system/SysBankCardMapper.xml b/base-system-server/src/main/resources/mapper/system/SysBankCardMapper.xml
new file mode 100644
index 0000000..01ef70c
--- /dev/null
+++ b/base-system-server/src/main/resources/mapper/system/SysBankCardMapper.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
diff --git a/base-system-server/src/main/resources/mapper/system/SysIdCardMapper.xml b/base-system-server/src/main/resources/mapper/system/SysIdCardMapper.xml
new file mode 100644
index 0000000..bc9115e
--- /dev/null
+++ b/base-system-server/src/main/resources/mapper/system/SysIdCardMapper.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
diff --git a/base-system-server/src/main/resources/mapper/system/SysRoleMapper.xml b/base-system-server/src/main/resources/mapper/system/SysRoleMapper.xml
index 7eff0c0..aba9ae4 100644
--- a/base-system-server/src/main/resources/mapper/system/SysRoleMapper.xml
+++ b/base-system-server/src/main/resources/mapper/system/SysRoleMapper.xml
@@ -4,7 +4,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-
+
@@ -30,7 +30,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
left join sys_dept d on u.dept_id = d.dept_id
-