浏览代码

增加用户、分配默认角色-1、匹配医院ID

liuqq 4 年之前
父节点
当前提交
921c96707b

+ 1 - 0
src/main/java/com/diagbot/config/ResourceServerConfigurer.java

@@ -164,6 +164,7 @@ public class ResourceServerConfigurer extends ResourceServerConfigurerAdapter {
                 .antMatchers("/dataPage/docking/getDataService").permitAll()
                 .antMatchers("/dataPage/docking/getStaticKnowledge").permitAll()
                 .antMatchers("/dataPage/docking/getDataEngine").permitAll()
+                .antMatchers("/dataPage/docking/addUserAndRole").permitAll()
                 .antMatchers("/**").authenticated();
         //                .antMatchers("/**").permitAll();
     }

+ 1 - 0
src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java

@@ -206,6 +206,7 @@ public class UrlAccessDecisionManager implements AccessDecisionManager {
                 || matchers("/dataPage/docking/getDataService", request)
                 || matchers("/dataPage/docking/getStaticKnowledge", request)
                 || matchers("/dataPage/docking/getDataEngine", request)
+                || matchers("/dataPage/docking/addUserAndRole", request)
                 || matchers("/", request)) {
             return true;
         }

+ 144 - 0
src/main/java/com/diagbot/entity/SysUserHospital.java

@@ -0,0 +1,144 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 用户-机构表映射表
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-03-02
+ */
+public class SysUserHospital implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 用户主键
+     */
+    private Long userId;
+
+    /**
+     * 医院ID
+     */
+    private Long hospitalId;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public Date getGmtCreate() {
+        return gmtCreate;
+    }
+
+    public void setGmtCreate(Date gmtCreate) {
+        this.gmtCreate = gmtCreate;
+    }
+    public Date getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setGmtModified(Date gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+    public Long getUserId() {
+        return userId;
+    }
+
+    public void setUserId(Long userId) {
+        this.userId = userId;
+    }
+    public Long getHospitalId() {
+        return hospitalId;
+    }
+
+    public void setHospitalId(Long hospitalId) {
+        this.hospitalId = hospitalId;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "SysUserHospital{" +
+            "id=" + id +
+            ", isDeleted=" + isDeleted +
+            ", gmtCreate=" + gmtCreate +
+            ", gmtModified=" + gmtModified +
+            ", creator=" + creator +
+            ", modifier=" + modifier +
+            ", userId=" + userId +
+            ", hospitalId=" + hospitalId +
+            ", remark=" + remark +
+        "}";
+    }
+}

+ 144 - 0
src/main/java/com/diagbot/entity/SysUserRole.java

@@ -0,0 +1,144 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 系统用户角色关联表
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-03-02
+ */
+public class SysUserRole implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 用户和角色关联ID
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 是否删除,N:未删除,Y:删除
+     */
+    private String isDeleted;
+
+    /**
+     * 记录创建时间
+     */
+    private Date gmtCreate;
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 创建人,0表示无创建人值
+     */
+    private String creator;
+
+    /**
+     * 修改人,如果为0则表示纪录未修改
+     */
+    private String modifier;
+
+    /**
+     * 系统用户表.用户ID
+     */
+    private Long userId;
+
+    /**
+     * 系统角色表.角色ID
+     */
+    private Long roleId;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    public String getIsDeleted() {
+        return isDeleted;
+    }
+
+    public void setIsDeleted(String isDeleted) {
+        this.isDeleted = isDeleted;
+    }
+    public Date getGmtCreate() {
+        return gmtCreate;
+    }
+
+    public void setGmtCreate(Date gmtCreate) {
+        this.gmtCreate = gmtCreate;
+    }
+    public Date getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setGmtModified(Date gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+    public String getModifier() {
+        return modifier;
+    }
+
+    public void setModifier(String modifier) {
+        this.modifier = modifier;
+    }
+    public Long getUserId() {
+        return userId;
+    }
+
+    public void setUserId(Long userId) {
+        this.userId = userId;
+    }
+    public Long getRoleId() {
+        return roleId;
+    }
+
+    public void setRoleId(Long roleId) {
+        this.roleId = roleId;
+    }
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        return "SysUserRole{" +
+            "id=" + id +
+            ", isDeleted=" + isDeleted +
+            ", gmtCreate=" + gmtCreate +
+            ", gmtModified=" + gmtModified +
+            ", creator=" + creator +
+            ", modifier=" + modifier +
+            ", userId=" + userId +
+            ", roleId=" + roleId +
+            ", remark=" + remark +
+        "}";
+    }
+}

+ 8 - 0
src/main/java/com/diagbot/facade/SysUserHospitalFacade.java

@@ -0,0 +1,8 @@
+package com.diagbot.facade;
+
+import com.diagbot.service.impl.SysUserHospitalServiceImpl;
+import org.springframework.stereotype.Component;
+
+@Component
+public class SysUserHospitalFacade extends SysUserHospitalServiceImpl {
+}

+ 8 - 0
src/main/java/com/diagbot/facade/SysUserRoleFacade.java

@@ -0,0 +1,8 @@
+package com.diagbot.facade;
+
+import com.diagbot.service.impl.SysUserRoleServiceImpl;
+import org.springframework.stereotype.Component;
+
+@Component
+public class SysUserRoleFacade extends SysUserRoleServiceImpl {
+}

+ 82 - 0
src/main/java/com/diagbot/facade/UserDockFacade.java

@@ -0,0 +1,82 @@
+package com.diagbot.facade;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.entity.HospitalInfo;
+import com.diagbot.entity.SysUser;
+import com.diagbot.entity.SysUserHospital;
+import com.diagbot.entity.SysUserRole;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.enums.StatusEnum;
+import com.diagbot.vo.UserInfoVO;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.crypto.factory.PasswordEncoderFactories;
+import org.springframework.security.crypto.password.PasswordEncoder;
+import org.springframework.stereotype.Component;
+
+/**
+ * @Description:用户维护接口
+ * @Author:liuqq
+ * @time: ${DATE} ${TIME}
+ **/
+@Component
+@Slf4j
+public class UserDockFacade {
+
+    @Autowired
+    private SysUserFacade sysUserFacade;
+    @Autowired
+    private SysUserRoleFacade sysUserRoleFacade;
+    @Autowired
+    private SysUserHospitalFacade sysUserHospitalFacade;
+
+    //private
+
+    /**
+     * @Description:添加用户,初始化用户角色为-1
+     * @Author:liuqq
+     * @time: ${DATE} ${TIME}
+     **/
+    public RespDTO addUser(UserInfoVO userInfoVO){
+        try{
+            QueryWrapper<SysUser> queryWrapper = new QueryWrapper<SysUser>();
+            queryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                    .eq("status", StatusEnum.Enable.getKey())
+                    .eq("username", userInfoVO.getUsername());
+            SysUser user= sysUserFacade.getOne(queryWrapper);
+
+            if(user !=null){
+                SysUser sysUser=new SysUser();
+                BeanUtils.copyProperties(userInfoVO,sysUser);
+                sysUser.setId(user.getId());
+                PasswordEncoder passwordEncoder= PasswordEncoderFactories.createDelegatingPasswordEncoder();
+                sysUser.setPassword(passwordEncoder.encode(userInfoVO.getPassword()));
+                sysUserFacade.updateById(sysUser);
+            }else{
+                SysUser sysUser=new SysUser();
+                BeanUtils.copyProperties(userInfoVO,sysUser);
+                PasswordEncoder passwordEncoder= PasswordEncoderFactories.createDelegatingPasswordEncoder();
+                sysUser.setPassword(passwordEncoder.encode(userInfoVO.getPassword()));
+                sysUserFacade.save(sysUser);
+
+                user= sysUserFacade.getOne(queryWrapper);
+                SysUserRole sysUserRole=new SysUserRole();
+                sysUserRole.setUserId(user.getId());
+                sysUserRole.setRoleId(Long.valueOf("-1"));
+                sysUserRoleFacade.save(sysUserRole);
+
+                SysUserHospital sysUserHospital=new SysUserHospital();
+                sysUserHospital.setUserId(user.getId());
+                sysUserHospital.setHospitalId(userInfoVO.getHospitalId());
+                sysUserHospitalFacade.save(sysUserHospital);
+            }
+
+            return RespDTO.onSuc("操作正常");
+        }catch (Exception e){
+            e.printStackTrace();
+            return RespDTO.onError("操作异常");
+        }
+    }
+}

+ 16 - 0
src/main/java/com/diagbot/mapper/SysUserHospitalMapper.java

@@ -0,0 +1,16 @@
+package com.diagbot.mapper;
+
+import com.diagbot.entity.SysUserHospital;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 用户-机构表映射表 Mapper 接口
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-03-02
+ */
+public interface SysUserHospitalMapper extends BaseMapper<SysUserHospital> {
+
+}

+ 16 - 0
src/main/java/com/diagbot/mapper/SysUserRoleMapper.java

@@ -0,0 +1,16 @@
+package com.diagbot.mapper;
+
+import com.diagbot.entity.SysUserRole;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 系统用户角色关联表 Mapper 接口
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-03-02
+ */
+public interface SysUserRoleMapper extends BaseMapper<SysUserRole> {
+
+}

+ 16 - 0
src/main/java/com/diagbot/service/SysUserHospitalService.java

@@ -0,0 +1,16 @@
+package com.diagbot.service;
+
+import com.diagbot.entity.SysUserHospital;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 用户-机构表映射表 服务类
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-03-02
+ */
+public interface SysUserHospitalService extends IService<SysUserHospital> {
+
+}

+ 16 - 0
src/main/java/com/diagbot/service/SysUserRoleService.java

@@ -0,0 +1,16 @@
+package com.diagbot.service;
+
+import com.diagbot.entity.SysUserRole;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 系统用户角色关联表 服务类
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-03-02
+ */
+public interface SysUserRoleService extends IService<SysUserRole> {
+
+}

+ 20 - 0
src/main/java/com/diagbot/service/impl/SysUserHospitalServiceImpl.java

@@ -0,0 +1,20 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.entity.SysUserHospital;
+import com.diagbot.mapper.SysUserHospitalMapper;
+import com.diagbot.service.SysUserHospitalService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 用户-机构表映射表 服务实现类
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-03-02
+ */
+@Service
+public class SysUserHospitalServiceImpl extends ServiceImpl<SysUserHospitalMapper, SysUserHospital> implements SysUserHospitalService {
+
+}

+ 20 - 0
src/main/java/com/diagbot/service/impl/SysUserRoleServiceImpl.java

@@ -0,0 +1,20 @@
+package com.diagbot.service.impl;
+
+import com.diagbot.entity.SysUserRole;
+import com.diagbot.mapper.SysUserRoleMapper;
+import com.diagbot.service.SysUserRoleService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 系统用户角色关联表 服务实现类
+ * </p>
+ *
+ * @author gaodm
+ * @since 2021-03-02
+ */
+@Service
+public class SysUserRoleServiceImpl extends ServiceImpl<SysUserRoleMapper, SysUserRole> implements SysUserRoleService {
+
+}

+ 12 - 0
src/main/java/com/diagbot/vo/UserInfoVO.java

@@ -0,0 +1,12 @@
+package com.diagbot.vo;
+
+import lombok.Data;
+
+@Data
+public class UserInfoVO {
+    private String username;//账号
+    private String linkman;//姓名
+    private String password;//默认:a123456
+    private Long hospitalId;//医院ID
+    private Integer type;//1内部用户,0外部用户(默认0)
+}

+ 13 - 0
src/main/java/com/diagbot/web/DataPageDockController.java

@@ -3,9 +3,11 @@ package com.diagbot.web;
 import com.diagbot.annotation.SysLogger;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.facade.DataPageDockFacade;
+import com.diagbot.facade.UserDockFacade;
 import com.diagbot.vo.DataEngineVO;
 import com.diagbot.vo.DataPageDockVO;
 import com.diagbot.vo.StaticKnowledgeHISVO;
+import com.diagbot.vo.UserInfoVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.apache.poi.ss.formula.functions.T;
@@ -27,6 +29,9 @@ public class DataPageDockController {
     @Autowired
     private DataPageDockFacade dataPageDockFacade;
 
+    @Autowired
+    private UserDockFacade userDockFacade;
+
     @ApiOperation(value = "页面推送模式-推理API[QQ]",
             notes = "")
     @PostMapping("/getDataService")
@@ -71,4 +76,12 @@ public class DataPageDockController {
         return RespDTO.onSuc(dataPageDockFacade.getEnginePush(dataEngineVO));
     }
 
+    @ApiOperation(value = "添加用户-用户维护API[QQ]",
+            notes = "")
+    @PostMapping("/addUserAndRole")
+    @SysLogger("addUserAndRole")
+    public RespDTO addUserAndRole(@Valid @RequestBody UserInfoVO userInfoVO){
+        return RespDTO.onSuc(userDockFacade.addUser(userInfoVO));
+    }
+
 }

+ 18 - 0
src/main/resources/mapper/SysUserHospitalMapper.xml

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.diagbot.mapper.SysUserHospitalMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.diagbot.entity.SysUserHospital">
+        <id column="id" property="id" />
+        <result column="is_deleted" property="isDeleted" />
+        <result column="gmt_create" property="gmtCreate" />
+        <result column="gmt_modified" property="gmtModified" />
+        <result column="creator" property="creator" />
+        <result column="modifier" property="modifier" />
+        <result column="user_id" property="userId" />
+        <result column="hospital_id" property="hospitalId" />
+        <result column="remark" property="remark" />
+    </resultMap>
+
+</mapper>

+ 18 - 0
src/main/resources/mapper/SysUserRoleMapper.xml

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.diagbot.mapper.SysUserRoleMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.diagbot.entity.SysUserRole">
+        <id column="id" property="id" />
+        <result column="is_deleted" property="isDeleted" />
+        <result column="gmt_create" property="gmtCreate" />
+        <result column="gmt_modified" property="gmtModified" />
+        <result column="creator" property="creator" />
+        <result column="modifier" property="modifier" />
+        <result column="user_id" property="userId" />
+        <result column="role_id" property="roleId" />
+        <result column="remark" property="remark" />
+    </resultMap>
+
+</mapper>