diff --git a/adc-da-main/src/main/resources/application-dev.properties b/adc-da-main/src/main/resources/application-dev.properties index 0280f9bd..d89ffe27 100644 --- a/adc-da-main/src/main/resources/application-dev.properties +++ b/adc-da-main/src/main/resources/application-dev.properties @@ -3,7 +3,7 @@ # 数据库配置 #============================================= spring.datasource.driverClassName = com.mysql.cj.jdbc.Driver -spring.datasource.url = jdbc:mysql://39.100.23.127:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false +spring.datasource.url = jdbc:mysql://192.168.10.47:3306/foton_slrs_test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC&useSSL=false spring.datasource.username = root spring.datasource.password = root diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java index bd0a9c4d..53cae48e 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/controller/TsInstitutionController.java @@ -47,6 +47,18 @@ public class TsInstitutionController extends BaseController { return Result.success(institutions); } + + /** + * 查询所有机构和人员 + * @return ResponseMessage> + */ + @ApiOperation("查询所有机构和人员") + @GetMapping("/institutionAndUser") + public ResponseMessage> getInstitutionAndUser(){ + List institutions=tsInstitutionService.getInstitutionAndUser(); + return Result.success(institutions); + } + /** * 查询机构人员 * @param institutionId:机构ID diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java index f1c9ed26..f290b050 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/dao/TsInstitutionDao.java @@ -1,8 +1,11 @@ package com.adc.da.slrs.sarInstitution.dao; +import com.adc.da.slrs.sarInstitution.entity.InstitutionAndUser; import com.adc.da.slrs.sarInstitution.entity.TsInstitution; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import java.util.List; + /** *

* Mapper 接口 @@ -13,4 +16,16 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface TsInstitutionDao extends BaseMapper { + /** + * 查询最高级机构及其人员 + * @return List + */ + List selectRootAndUser(); + + /** + * 根据父节点查询机构及其人员 + * @param parentId:父节点Id + * @return List + */ + List selectAndUserByParent(String parentId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/InstitutionAndUser.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/InstitutionAndUser.java new file mode 100644 index 00000000..08607c1f --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/InstitutionAndUser.java @@ -0,0 +1,13 @@ +package com.adc.da.slrs.sarInstitution.entity; + +import com.adc.da.slrs.sarUser.entity.TsUser; +import lombok.Data; + +import java.util.List; + +@Data +public class InstitutionAndUser { + private TsInstitution institution; + private List users; + private List children; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsInstitution.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsInstitution.java index 81976dcf..dcd7e36b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsInstitution.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsInstitution.java @@ -1,8 +1,10 @@ package com.adc.da.slrs.sarInstitution.entity; import com.adc.da.base.entity.BaseEntity; +import com.adc.da.slrs.sarUser.entity.TsUser; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonIgnore; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -42,5 +44,14 @@ public class TsInstitution extends BaseEntity { @TableField(exist = false) @ApiModelProperty(value = "子机构") - private List children; + private List children; + + @JsonIgnore + @TableField(exist = false) + @ApiModelProperty(value = "人员") + private List users; + + @TableField(exist = false) + @ApiModelProperty("是否是机构") + private Boolean disabled; } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsUserVO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsUserVO.java new file mode 100644 index 00000000..3111f5d9 --- /dev/null +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/entity/TsUserVO.java @@ -0,0 +1,121 @@ +package com.adc.da.slrs.sarInstitution.entity; + +import com.adc.da.slrs.sarPosition.entity.TsPosition; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import javax.validation.constraints.NotNull; +import java.sql.Timestamp; +import java.util.List; + +@Data +public class TsUserVO { + public interface disable{ + } + + + @ApiModelProperty(value = "主键Id") + @NotNull(message = "userId不能为空",groups = {disable.class}) + @TableId(value = "USID") + private String id; + + @ApiModelProperty(value = "帐户") + @TableField("ACCOUNT") + private String account; + + @ApiModelProperty(value = "密码") + @TableField("PASSWORD") + private String password; + + @ApiModelProperty(value = "用户姓名") + @TableField("UNAME") + private String name; + + @ApiModelProperty(value = "用户性别(1为男,2为女)") + @TableField("SEX") + private String sex; + + @ApiModelProperty(value = "用户来源") + @TableField("USER_SOURCE") + private String userSource; + + @ApiModelProperty(value = "用户手机号") + @TableField("PHONE") + private String phone; + + @ApiModelProperty(value = "用户状态") + @TableField("STATE") + private String state; + + @ApiModelProperty(value = "用户邮箱") + @TableField("EMAIL") + private String email; + + @ApiModelProperty(value = "所属部门名称") + @TableField("INSTITUTION_NAME") + private String institutionName; + + @ApiModelProperty(value = "所属部门ID") + @TableField("INSTITUTION_ID") + private String institutionId; + + @ApiModelProperty(value = "岗位名") + @TableField("POSITION_NAME") + private String positionName; + + @ApiModelProperty(value = "岗位ID") + @TableField("POSITION_ID") + private String positionId; + + @ApiModelProperty(value = "工号") + @TableField("WORK_NUM") + private String workNum; + + @ApiModelProperty(value = "备注") + @TableField("EXT_INFO") + private String extInfo; + + @TableField("OPER_USER") + private String operUser; + + @ApiModelProperty(value = "创建时间") + @TableField("CREATION_TIME") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Timestamp creationTime; + + @ApiModelProperty(value = "修改时间") + @TableField("MODIFY_TIME") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Timestamp modifyTime; + + @ApiModelProperty(value = "是否有效") + @TableField("VALID_FLAG") + private String validFlag; + + @ApiModelProperty(value = "是否禁用(0为未禁用,1为已禁用)") + @NotNull(message = "disableFlag不能为空",groups = {disable.class}) + @TableField("DISABLE_FLAG") + private String disableFlag; + + @ApiModelProperty(value = "是否锁定") + @TableField("UNLOCK_FLAG") + private String unlockFlag; + + @ApiModelProperty(value = "用户类型") + @TableField("USER_TYPE") + private String userType; + + @ApiModelProperty(value = "对接单点登录用户ID") + @TableField("SSO_ID") + private String ssoId; + + @ApiModelProperty(value = "岗位") + @TableField(exist = false) + private List positions; +} diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java index 3d2d7460..cf25a449 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/ITsInstitutionService.java @@ -21,4 +21,5 @@ public interface ITsInstitutionService extends IService { */ List getInstitution(); + List getInstitutionAndUser(); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java index 4361d532..459111f9 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarInstitution/service/impl/TsInstitutionServiceImpl.java @@ -2,7 +2,9 @@ package com.adc.da.slrs.sarInstitution.service.impl; import com.adc.da.slrs.sarInstitution.dao.TsInstitutionDao; +import com.adc.da.slrs.sarInstitution.entity.InstitutionAndUser; import com.adc.da.slrs.sarInstitution.entity.TsInstitution; +import com.adc.da.slrs.sarInstitution.entity.TsUserVO; import com.adc.da.slrs.sarInstitution.service.ITsInstitutionService; import com.adc.da.slrs.sarUser.entity.TsUser; import com.adc.da.slrs.sarUser.service.ITsUserService; @@ -11,6 +13,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; /** @@ -40,6 +43,40 @@ public class TsInstitutionServiceImpl extends ServiceImpl + */ + private List recursionGetInstitution(TsInstitution tsInstitution){ + List institutionObject=new ArrayList<>(); + QueryWrapper institutionQueryWrapper=new QueryWrapper<>(); + institutionQueryWrapper.eq("parent_id",tsInstitution.getId()); + institutionQueryWrapper.eq("level",tsInstitution.getLevel()+1); + List tsInstitutions=tsInstitutionDao.selectList(institutionQueryWrapper); + for(TsInstitution tsInstitutionNode:tsInstitutions){ + tsInstitutionNode.setChildren(recursionGetInstitution(tsInstitutionNode)); + institutionObject.add(tsInstitutionNode); + } + return institutionObject; + } + + /** + * 查询所有机构 + */ + @Override + public List getInstitutionAndUser() { + //查询第一层机构 + List institutionRoot=tsInstitutionDao.selectRootAndUser(); + for(TsInstitution tsInstitution:institutionRoot){ + tsInstitution.setDisabled(true); + tsInstitution.setChildren(recursionGetInstitutionAndUser(tsInstitution)); + for(TsUserVO user:tsInstitution.getUsers()){ + tsInstitution.getChildren().add(user); + } + } + return institutionRoot; + } @@ -48,14 +85,17 @@ public class TsInstitutionServiceImpl extends ServiceImpl */ - private List recursionGetInstitution(TsInstitution tsInstitution){ - QueryWrapper institutionQueryWrapper=new QueryWrapper<>(); - institutionQueryWrapper.eq("parent_id",tsInstitution.getId()); - institutionQueryWrapper.eq("level",tsInstitution.getLevel()+1); - List tsInstitutions=tsInstitutionDao.selectList(institutionQueryWrapper); + private List recursionGetInstitutionAndUser(TsInstitution tsInstitution){ + List institutionObject=new ArrayList<>(); + List tsInstitutions=tsInstitutionDao.selectAndUserByParent(tsInstitution.getId()); for(TsInstitution tsInstitutionNode:tsInstitutions){ + tsInstitutionNode.setDisabled(true); tsInstitutionNode.setChildren(recursionGetInstitution(tsInstitutionNode)); + institutionObject.add(tsInstitutionNode); + for(TsUserVO user:tsInstitutionNode.getUsers()){ + tsInstitutionNode.getChildren().add(user); + } } - return tsInstitutions; + return institutionObject; } } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml index fc9dcf3d..6c623498 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarInstitution/TsInstitutionMapper.xml @@ -1,5 +1,29 @@ + + + + + + + + + + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/tsDictionaryType/TsDicTypeMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/tsDictionaryType/TsDicTypeMapper.xml index 4f7e14b7..558feffe 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/tsDictionaryType/TsDicTypeMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/tsDictionaryType/TsDicTypeMapper.xml @@ -24,7 +24,6 @@ from ts_dictionary as t_d left join ts_dictype as t_d_t on t_d.ID=t_d_t.DIC_ID where t_d.ENABLE=0 and - t_d.DICTION_TYPE='SEL_OPTION' and t_d_t.DIC_ID is not null and t_d_t.DIC_TYPE_NAME is not null and t_d.DICTIONARY_NAME is not null