diff --git a/base-system-common/src/main/java/com/health/system/common/domain/model/LoginUser.java b/base-system-common/src/main/java/com/health/system/common/domain/model/LoginUser.java index 9801260..cb762f0 100644 --- a/base-system-common/src/main/java/com/health/system/common/domain/model/LoginUser.java +++ b/base-system-common/src/main/java/com/health/system/common/domain/model/LoginUser.java @@ -1,6 +1,8 @@ package com.health.system.common.domain.model; import com.health.common.core.user.CommonBody; +import com.health.system.common.domain.Doctor; +import com.health.system.common.domain.Patient; import com.health.system.common.domain.SysUser; import com.health.system.common.domain.User; import lombok.Data; @@ -53,6 +55,14 @@ public class LoginUser implements Serializable { */ private String ipaddr; + /* + 医生对象 + */ + private Doctor doctor; + /* + 患者对象 + */ + private Patient patient; /** * 权限列表 */ diff --git a/base-system-remote/pom.xml b/base-system-remote/pom.xml index f1136bc..e619a92 100644 --- a/base-system-remote/pom.xml +++ b/base-system-remote/pom.xml @@ -9,7 +9,8 @@ 3.6.3 - 3.6.12 + + 3.6.13 base-system-remote diff --git a/base-system-remote/src/main/java/com/health/system/remote/RemoteUserService.java b/base-system-remote/src/main/java/com/health/system/remote/RemoteUserService.java index 6545590..a8c3ae7 100644 --- a/base-system-remote/src/main/java/com/health/system/remote/RemoteUserService.java +++ b/base-system-remote/src/main/java/com/health/system/remote/RemoteUserService.java @@ -4,10 +4,7 @@ import com.health.common.core.constant.SecurityConstants; import com.health.common.core.constant.ServiceNameConstants; import com.health.common.core.domain.Result; import com.health.common.core.user.CommonBody; -import com.health.system.common.domain.Doctor; -import com.health.system.common.domain.EmailLoginUser; -import com.health.system.common.domain.SysUser; -import com.health.system.common.domain.User; +import com.health.system.common.domain.*; import com.health.system.common.domain.model.LoginUser; import com.health.system.remote.factory.RemoteUserFallbackFactory; import org.springframework.cloud.openfeign.FeignClient; @@ -22,6 +19,16 @@ import org.springframework.web.bind.annotation.*; @FeignClient(contextId = "remoteUserService", value = ServiceNameConstants.SYSTEM_SERVICE, fallbackFactory = RemoteUserFallbackFactory.class) public interface RemoteUserService { + /** + * @description: 患者注册 + * @param: * @param patient + * @param source + * @return: Result + * @author 冯凯 + * @date: 2023/10/26 13:21 + */ + @PostMapping("/register/patient") + public Result registerPatient(@RequestBody Patient patient,@RequestHeader(SecurityConstants.FROM_SOURCE) String source); /** * @description: 医生注册 * @param: * @param doctor diff --git a/base-system-remote/src/main/java/com/health/system/remote/factory/RemoteUserFallbackFactory.java b/base-system-remote/src/main/java/com/health/system/remote/factory/RemoteUserFallbackFactory.java index b72e755..dac7cdc 100644 --- a/base-system-remote/src/main/java/com/health/system/remote/factory/RemoteUserFallbackFactory.java +++ b/base-system-remote/src/main/java/com/health/system/remote/factory/RemoteUserFallbackFactory.java @@ -3,10 +3,7 @@ package com.health.system.remote.factory; import com.health.common.core.domain.Result; import com.health.common.core.user.CommonBody; -import com.health.system.common.domain.Doctor; -import com.health.system.common.domain.EmailLoginUser; -import com.health.system.common.domain.SysUser; -import com.health.system.common.domain.User; +import com.health.system.common.domain.*; import com.health.system.common.domain.model.LoginUser; import com.health.system.remote.RemoteUserService; import org.slf4j.Logger; @@ -28,6 +25,11 @@ public class RemoteUserFallbackFactory implements FallbackFactory registerPatient(Patient patient, String source) { + return Result.error("医生注册失败:" + throwable.getMessage()); + } + @Override public Result registerDoctor(Doctor doctor, String source) { return Result.error("医生注册失败:" + throwable.getMessage()); diff --git a/base-system-server/src/main/java/com/health/system/server/controller/SysUserController.java b/base-system-server/src/main/java/com/health/system/server/controller/SysUserController.java index 386f938..ae485e3 100644 --- a/base-system-server/src/main/java/com/health/system/server/controller/SysUserController.java +++ b/base-system-server/src/main/java/com/health/system/server/controller/SysUserController.java @@ -132,10 +132,20 @@ public class SysUserController extends BaseController } //查询该用户下的所有角色 Set roles=permissionService.getEmailRolePermission(user); - System.out.println("所有角色是"+roles); LoginUser loginUserVo = new LoginUser(); loginUserVo.setUser(user); loginUserVo.setRoles(roles); + if (roles.contains("患者")){ + Patient patient=userService.selectPatient(user.getUserId()); + System.out.println(patient); + loginUserVo.setPatient(patient); + }else{ + Doctor doctor=userService.selectDoctor(user.getUserId()); + System.out.println(doctor); + loginUserVo.setDoctor(doctor); + } + System.out.println("所有角色是"+roles); + System.out.println("最后的返回对象是:"+loginUserVo); return Result.success(loginUserVo); } diff --git a/base-system-server/src/main/java/com/health/system/server/mapper/SysUserMapper.java b/base-system-server/src/main/java/com/health/system/server/mapper/SysUserMapper.java index f42eb1a..a102c6c 100644 --- a/base-system-server/src/main/java/com/health/system/server/mapper/SysUserMapper.java +++ b/base-system-server/src/main/java/com/health/system/server/mapper/SysUserMapper.java @@ -167,4 +167,8 @@ public interface SysUserMapper { int registerPatient(Patient patient); void insertPatient(Patient patient1); + + Patient selectPatient(@Param("userId") Integer userId); + + Doctor selectDoctor(@Param("userId") Integer userId); } diff --git a/base-system-server/src/main/java/com/health/system/server/service/ISysUserService.java b/base-system-server/src/main/java/com/health/system/server/service/ISysUserService.java index 2826a7c..49bcbcd 100644 --- a/base-system-server/src/main/java/com/health/system/server/service/ISysUserService.java +++ b/base-system-server/src/main/java/com/health/system/server/service/ISysUserService.java @@ -224,4 +224,9 @@ public interface ISysUserService //---------------注册患者--------------------------- Boolean registerPatient(Patient patient); + + //------------------查询患者信息 + Patient selectPatient(Integer userId); +//------------------------------查询医生信息 + Doctor selectDoctor(Integer userId); } diff --git a/base-system-server/src/main/java/com/health/system/server/service/impl/SysUserServiceImpl.java b/base-system-server/src/main/java/com/health/system/server/service/impl/SysUserServiceImpl.java index d2a7796..b92b732 100644 --- a/base-system-server/src/main/java/com/health/system/server/service/impl/SysUserServiceImpl.java +++ b/base-system-server/src/main/java/com/health/system/server/service/impl/SysUserServiceImpl.java @@ -628,6 +628,7 @@ public class SysUserServiceImpl implements ISysUserService //---------------注册医生--------------------------- @Override + @Transactional public Boolean registerPatient(Patient patient) { Integer roleId=101; // @@ -643,4 +644,17 @@ public class SysUserServiceImpl implements ISysUserService return userMapper.insertUseRole(userId,roleId)>0; } + //-------------查询患者------------------------- + @Override + public Patient selectPatient(Integer userId) { + + return userMapper.selectPatient(userId); + } + + //------------查询医生--------------------------- + @Override + public Doctor selectDoctor(Integer userId) { + return userMapper.selectDoctor(userId); + } + } diff --git a/base-system-server/src/main/resources/mapper/system/SysUserMapper.xml b/base-system-server/src/main/resources/mapper/system/SysUserMapper.xml index 3f51a0d..c6c8352 100644 --- a/base-system-server/src/main/resources/mapper/system/SysUserMapper.xml +++ b/base-system-server/src/main/resources/mapper/system/SysUserMapper.xml @@ -149,6 +149,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + insert into sys_user(