From 004266c6fa2c977a8b95bf1723ba696a714d021a Mon Sep 17 00:00:00 2001 From: ShiSiWei <12764015+ssw_1_0@user.noreply.gitee.com> Date: Thu, 26 Oct 2023 22:44:53 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=94=A8=E6=88=B7=E5=90=8D?= =?UTF-8?q?=E5=AF=86=E7=A0=81=E7=99=BB=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- four-api-system/pom.xml | 13 +- .../four/system/api/RemoteUserService.java | 11 ++ .../com/four/system/api/domain/SysUser.java | 102 +++++++--- .../api/domain/registrationInformation.java | 178 ++++++++++++++++++ .../factory/RemoteUserFallbackFactory.java | 6 + .../four/system/api/RemoteUserService.class | Bin 1433 -> 1533 bytes .../com/four/system/api/domain/SysUser.class | Bin 11238 -> 12496 bytes .../factory/RemoteUserFallbackFactory$1.class | Bin 2124 -> 2291 bytes .../target/four-api-system-3.6.3.jar | Bin 28204 -> 30274 bytes .../target/maven-archiver/pom.properties | 2 +- .../compile/default-compile/createdFiles.lst | 1 + .../compile/default-compile/inputFiles.lst | 1 + 12 files changed, 279 insertions(+), 35 deletions(-) create mode 100644 four-api-system/src/main/java/com/four/system/api/domain/registrationInformation.java diff --git a/four-api-system/pom.xml b/four-api-system/pom.xml index 1babde4..82fc536 100644 --- a/four-api-system/pom.xml +++ b/four-api-system/pom.xml @@ -8,7 +8,7 @@ 3.6.3 4.0.0 - + four-api-system @@ -16,13 +16,18 @@ - + com.four four-common-core - + + + com.four + four-common-duck + + - \ No newline at end of file + diff --git a/four-api-system/src/main/java/com/four/system/api/RemoteUserService.java b/four-api-system/src/main/java/com/four/system/api/RemoteUserService.java index 50f4dd5..36e64fb 100644 --- a/four-api-system/src/main/java/com/four/system/api/RemoteUserService.java +++ b/four-api-system/src/main/java/com/four/system/api/RemoteUserService.java @@ -57,4 +57,15 @@ public interface RemoteUserService */ @PostMapping("/user/register") public R registerUserInfo(@RequestBody SysUser sysUser, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); + + + /** + * 注册用户信息 + * + * @param sysUser 用户信息 + * @param source 请求来源 + * @return 结果 + */ + @PostMapping("/user/healthRegister") + public R healthRegister(@RequestBody SysUser sysUser,@RequestHeader(SecurityConstants.FROM_SOURCE) String source); } diff --git a/four-api-system/src/main/java/com/four/system/api/domain/SysUser.java b/four-api-system/src/main/java/com/four/system/api/domain/SysUser.java index 815b421..22a47a0 100644 --- a/four-api-system/src/main/java/com/four/system/api/domain/SysUser.java +++ b/four-api-system/src/main/java/com/four/system/api/domain/SysUser.java @@ -16,7 +16,7 @@ import com.four.common.core.xss.Xss; /** * 用户对象 sys_user - * + * * @author ruoyi */ public class SysUser extends BaseEntity @@ -47,6 +47,23 @@ public class SysUser extends BaseEntity @Excel(name = "手机号码") private String phonenumber; + /** + * 个人简历 + * */ + @Excel(name = "个人简历") + private String personalResume; + /** + * 所属医院 + * */ + @Excel(name = "所属医院") + private String affiliatedHospital; + + /** + * 擅长领域 + * */ + @Excel(name = "擅长领域") + private String areaExpertise; + /** 用户性别 */ @Excel(name = "用户性别", readConverterExp = "0=男,1=女,2=未知") private String sex; @@ -106,35 +123,35 @@ public class SysUser extends BaseEntity /** 状态1:患者 2:医生 **/ private Integer differentialState; - @Override - public String toString() { - return "SysUser{" + - "userId=" + userId + - ", deptId=" + deptId + - ", userName='" + userName + '\'' + - ", nickName='" + nickName + '\'' + - ", email='" + email + '\'' + - ", phonenumber='" + phonenumber + '\'' + - ", sex='" + sex + '\'' + - ", avatar='" + avatar + '\'' + - ", password='" + password + '\'' + - ", status='" + status + '\'' + - ", delFlag='" + delFlag + '\'' + - ", loginIp='" + loginIp + '\'' + - ", loginDate=" + loginDate + - ", dept=" + dept + - ", roles=" + roles + - ", roleIds=" + Arrays.toString(roleIds) + - ", postIds=" + Arrays.toString(postIds) + - ", roleId=" + roleId + - ", userSign='" + userSign + '\'' + - ", bindWechatStatus=" + bindWechatStatus + - ", realNameAuthenticationStatus=" + realNameAuthenticationStatus + - ", bindBankCardStatus=" + bindBankCardStatus + - ", userMoney=" + userMoney + - ", invitationCode='" + invitationCode + '\'' + - ", differentialState=" + differentialState + - '}'; + public SysUser(Long userId, Long deptId, String userName, String nickName, String email, String phonenumber, String personalResume, String affiliatedHospital, String areaExpertise, String sex, String avatar, String password, String status, String delFlag, String loginIp, Date loginDate, SysDept dept, List roles, Long[] roleIds, Long[] postIds, Long roleId, String userSign, Integer bindWechatStatus, Integer realNameAuthenticationStatus, Integer bindBankCardStatus, BigDecimal userMoney, String invitationCode, Integer differentialState) { + this.userId = userId; + this.deptId = deptId; + this.userName = userName; + this.nickName = nickName; + this.email = email; + this.phonenumber = phonenumber; + this.personalResume = personalResume; + this.affiliatedHospital = affiliatedHospital; + this.areaExpertise = areaExpertise; + this.sex = sex; + this.avatar = avatar; + this.password = password; + this.status = status; + this.delFlag = delFlag; + this.loginIp = loginIp; + this.loginDate = loginDate; + this.dept = dept; + this.roles = roles; + this.roleIds = roleIds; + this.postIds = postIds; + this.roleId = roleId; + this.userSign = userSign; + this.bindWechatStatus = bindWechatStatus; + this.realNameAuthenticationStatus = realNameAuthenticationStatus; + this.bindBankCardStatus = bindBankCardStatus; + this.userMoney = userMoney; + this.invitationCode = invitationCode; + this.differentialState = differentialState; } public String getUserSign() { @@ -165,6 +182,31 @@ public class SysUser extends BaseEntity return bindBankCardStatus; } + + public String getPersonalResume() { + return personalResume; + } + + public void setPersonalResume(String personalResume) { + this.personalResume = personalResume; + } + + public String getAffiliatedHospital() { + return affiliatedHospital; + } + + public void setAffiliatedHospital(String affiliatedHospital) { + this.affiliatedHospital = affiliatedHospital; + } + + public String getAreaExpertise() { + return areaExpertise; + } + + public void setAreaExpertise(String areaExpertise) { + this.areaExpertise = areaExpertise; + } + public void setBindBankCardStatus(Integer bindBankCardStatus) { this.bindBankCardStatus = bindBankCardStatus; } diff --git a/four-api-system/src/main/java/com/four/system/api/domain/registrationInformation.java b/four-api-system/src/main/java/com/four/system/api/domain/registrationInformation.java new file mode 100644 index 0000000..6e1b86b --- /dev/null +++ b/four-api-system/src/main/java/com/four/system/api/domain/registrationInformation.java @@ -0,0 +1,178 @@ +package com.four.system.api.domain; + +import com.four.system.api.model.LoginUser; + +import java.util.Date; + +/** + * 医生信息表 + * */ +public class registrationInformation { + private Long registrationInformationId; + private Long userId; + private String realName; + private String affiliatedHospital; + private Long medicalDepartmentId; + private Long professionalTitleDoctorId; + private String personalResume; + private String areaExpertise; + private Date registrationTime; + private Long numberPatientsServed; + private Double consultingPrice; + private Integer praise; + private Integer registrationInformationExamineStatus; + private Integer registrationInformationMedicStatus; + + + public registrationInformation(Long registrationInformationId, Long userId, String realName, String affiliatedHospital, Long medicalDepartmentId, Long professionalTitleDoctorId, String personalResume, String areaExpertise, Date registrationTime, Long numberPatientsServed, Double consultingPrice, Integer praise, Integer registrationInformationExamineStatus, Integer registrationInformationMedicStatus) { + this.registrationInformationId = registrationInformationId; + this.userId = userId; + this.realName = realName; + this.affiliatedHospital = affiliatedHospital; + this.medicalDepartmentId = medicalDepartmentId; + this.professionalTitleDoctorId = professionalTitleDoctorId; + this.personalResume = personalResume; + this.areaExpertise = areaExpertise; + this.registrationTime = registrationTime; + this.numberPatientsServed = numberPatientsServed; + this.consultingPrice = consultingPrice; + this.praise = praise; + this.registrationInformationExamineStatus = registrationInformationExamineStatus; + this.registrationInformationMedicStatus = registrationInformationMedicStatus; + } + + public registrationInformation() { + } + + public Long getRegistrationInformationId() { + return registrationInformationId; + } + + public void setRegistrationInformationId(Long registrationInformationId) { + this.registrationInformationId = registrationInformationId; + } + + public Long getUserId() { + return userId; + } + + public void setUserId(Long userId) { + this.userId = userId; + } + + public String getRealName() { + return realName; + } + + public void setRealName(String realName) { + this.realName = realName; + } + + public String getAffiliatedHospital() { + return affiliatedHospital; + } + + public void setAffiliatedHospital(String affiliatedHospital) { + this.affiliatedHospital = affiliatedHospital; + } + + public Long getMedicalDepartmentId() { + return medicalDepartmentId; + } + + public void setMedicalDepartmentId(Long medicalDepartmentId) { + this.medicalDepartmentId = medicalDepartmentId; + } + + public Long getProfessionalTitleDoctorId() { + return professionalTitleDoctorId; + } + + public void setProfessionalTitleDoctorId(Long professionalTitleDoctorId) { + this.professionalTitleDoctorId = professionalTitleDoctorId; + } + + public String getPersonalResume() { + return personalResume; + } + + public void setPersonalResume(String personalResume) { + this.personalResume = personalResume; + } + + public String getAreaExpertise() { + return areaExpertise; + } + + public void setAreaExpertise(String areaExpertise) { + this.areaExpertise = areaExpertise; + } + + public Date getRegistrationTime() { + return registrationTime; + } + + public void setRegistrationTime(Date registrationTime) { + this.registrationTime = registrationTime; + } + + public Long getNumberPatientsServed() { + return numberPatientsServed; + } + + public void setNumberPatientsServed(Long numberPatientsServed) { + this.numberPatientsServed = numberPatientsServed; + } + + public Double getConsultingPrice() { + return consultingPrice; + } + + public void setConsultingPrice(Double consultingPrice) { + this.consultingPrice = consultingPrice; + } + + public Integer getPraise() { + return praise; + } + + public void setPraise(Integer praise) { + this.praise = praise; + } + + public Integer getRegistrationInformationExamineStatus() { + return registrationInformationExamineStatus; + } + + public void setRegistrationInformationExamineStatus(Integer registrationInformationExamineStatus) { + this.registrationInformationExamineStatus = registrationInformationExamineStatus; + } + + public Integer getRegistrationInformationMedicStatus() { + return registrationInformationMedicStatus; + } + + public void setRegistrationInformationMedicStatus(Integer registrationInformationMedicStatus) { + this.registrationInformationMedicStatus = registrationInformationMedicStatus; + } + + @Override + public String toString() { + return "registrationInformation{" + + "registrationInformationId=" + registrationInformationId + + ", userId=" + userId + + ", realName='" + realName + '\'' + + ", affiliatedHospital='" + affiliatedHospital + '\'' + + ", medicalDepartmentId=" + medicalDepartmentId + + ", professionalTitleDoctorId=" + professionalTitleDoctorId + + ", personalResume='" + personalResume + '\'' + + ", areaExpertise='" + areaExpertise + '\'' + + ", registrationTime=" + registrationTime + + ", numberPatientsServed=" + numberPatientsServed + + ", consultingPrice=" + consultingPrice + + ", praise=" + praise + + ", registrationInformationExamineStatus=" + registrationInformationExamineStatus + + ", registrationInformationMedicStatus=" + registrationInformationMedicStatus + + '}'; + } +} diff --git a/four-api-system/src/main/java/com/four/system/api/factory/RemoteUserFallbackFactory.java b/four-api-system/src/main/java/com/four/system/api/factory/RemoteUserFallbackFactory.java index 0987a9f..666d693 100644 --- a/four-api-system/src/main/java/com/four/system/api/factory/RemoteUserFallbackFactory.java +++ b/four-api-system/src/main/java/com/four/system/api/factory/RemoteUserFallbackFactory.java @@ -41,6 +41,12 @@ public class RemoteUserFallbackFactory implements FallbackFactory healthRegister(SysUser sysUser, String source) { + return R.fail("注册维度健康用户失败:" + throwable.getMessage()); + } + }; } diff --git a/four-api-system/target/classes/com/four/system/api/RemoteUserService.class b/four-api-system/target/classes/com/four/system/api/RemoteUserService.class index cda782f8d4ac9f5f440689b95e1ec0c89da89616..8152eec75be7ace3b22eaaa910087ea104cb0955 100644 GIT binary patch delta 136 zcmbQq{g+$d)W2Q(7#J8#7*yFAm>3yUCr@M&*{HIGS&c6vH8H0oBPcaJv$!O+h><}= zzqB~DNFP;r@-^oBtSl^y46KuXv&c`r$ub+nk)CYBD$gi0IfhkQNfu~26N4NBCy*9p ZU}TVIU}jJ#W>93{E@n_-P)=r00RW@sAtC?( delta 76 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 K8=f6YBmV^ioGit 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 diff --git a/four-api-system/target/classes/com/four/system/api/factory/RemoteUserFallbackFactory$1.class b/four-api-system/target/classes/com/four/system/api/factory/RemoteUserFallbackFactory$1.class index ddb2dfa445efa113872339d6d63fdf1283252f5b..3b36643be2b4c23c0e0af9d890f5e18625ba988e 100644 GIT binary patch delta 555 zcmX>j@L7=S)W2Q(7#J8#82mSKWin}VFz7Kd$Uob>;%QsY^W9sX?ppS=ap}`t+n-Na z@vLL}(&S1dEpgMU1i^%3)re93_d>N^UIVBlEsp*-;C8G4))of#Z46RC);0!(9Sq7Fz#)O~wLXb9Ff+J;O>k%M0MaZB So($d$en1u%&~8xJ0|5ZB%u$vA delta 393 zcmew?ct(Kh)W2Q(7#J8#7<@KzWiqj`Gw3lgs7_{N6PaAhCb;=9(@Unwds!VA-6#KJ zwPN;U@S1GRmL#vsz$75Rz{$YHzyPFK8Q6d(umCYXgFXWjgTdrIYzmf!Kt3A-BaoD4 zFanZdKpBtp3HI%Y$_*Ffaqv$-;HZGFUKJ zf=!oYumZA}pypTu#cZJFw4s=zg2NnJoaWdu*n{2kon0>$;T|m<<~T4oVsVcX(A~~p aAG$EO0%;ZoHwF&|Zy<{cs2UU^KmY*MuO<%w diff --git a/four-api-system/target/four-api-system-3.6.3.jar b/four-api-system/target/four-api-system-3.6.3.jar index 87103333a92c08bba4046b71731db50e3fc79f36..5abd3fd4d6ce07221c5415737b676769c5a6c1e4 100644 GIT binary patch delta 9017 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