Commit 44ebdfec authored by 麻笑宇's avatar 麻笑宇

Merge remote-tracking branch 'origin/develop_tzs_register' into develop_tzs_register

parents d1d497cf 7ac5bde4
...@@ -2,12 +2,23 @@ package com.yeejoin.amos.boot.module.common.api.dto; ...@@ -2,12 +2,23 @@ package com.yeejoin.amos.boot.module.common.api.dto;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor;
@Data @Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class UserPermissionDto { public class UserPermissionDto {
/** /**
* 主表id-前端页面跳转时页面写死取rowId,所以冗余返回rowId=uid
*/
private Long rowId;
/**
* 主表id * 主表id
*/ */
private Long uid; private Long uid;
...@@ -22,6 +33,12 @@ public class UserPermissionDto { ...@@ -22,6 +33,12 @@ public class UserPermissionDto {
*/ */
private String permissionStatus; private String permissionStatus;
/**
* 资质状态颜色
*/
private String permissionStatusColor;
/** /**
* 区域 * 区域
*/ */
...@@ -61,9 +78,14 @@ public class UserPermissionDto { ...@@ -61,9 +78,14 @@ public class UserPermissionDto {
private String identificationStr; private String identificationStr;
/** /**
* 个人照片 * 个人照片-数组
*/
private JSONArray identification;
/**
* 个人照片路径
*/ */
private String identification; private String photoUrl;
@JsonIgnore @JsonIgnore
private String orgCode; private String orgCode;
......
...@@ -2,6 +2,7 @@ package com.yeejoin.amos.boot.module.tcm.api.dto; ...@@ -2,6 +2,7 @@ package com.yeejoin.amos.boot.module.tcm.api.dto;
import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonInclude;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto; import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import com.yeejoin.amos.boot.module.common.api.dto.UserPermissionDto;
import com.yeejoin.amos.boot.module.tcm.api.entity.TzsBaseInstitution; import com.yeejoin.amos.boot.module.tcm.api.entity.TzsBaseInstitution;
import com.yeejoin.amos.boot.module.tcm.flc.api.dto.RegUnitIcDto; import com.yeejoin.amos.boot.module.tcm.flc.api.dto.RegUnitIcDto;
import com.yeejoin.amos.boot.module.tcm.flc.api.dto.RegUnitInfoDto; import com.yeejoin.amos.boot.module.tcm.flc.api.dto.RegUnitInfoDto;
...@@ -292,6 +293,8 @@ public class TzBaseEnterpriseInfoDto extends BaseDto { ...@@ -292,6 +293,8 @@ public class TzBaseEnterpriseInfoDto extends BaseDto {
@ApiModelProperty(value = "企业问题状态") @ApiModelProperty(value = "企业问题状态")
private String status; private String status;
@ApiModelProperty(value = "企业下人")
List<UserPermissionDto> userPermissionList;
private String region; private String region;
......
...@@ -45,4 +45,11 @@ public interface TzsUserInfoMapper extends BaseMapper<TzsUserInfo> { ...@@ -45,4 +45,11 @@ public interface TzsUserInfoMapper extends BaseMapper<TzsUserInfo> {
* @return 分页对象列表 * @return 分页对象列表
*/ */
Page<UserPermissionDto> queryUserByPermissionPage(Page<UserPermissionDto> page, @Param("postList") List<String> post, @Param("filter") UserPermissionDto filter); Page<UserPermissionDto> queryUserByPermissionPage(Page<UserPermissionDto> page, @Param("postList") List<String> post, @Param("filter") UserPermissionDto filter);
/**
* 查询指定单位下的人
* @param filter 单位过滤条件
* @return 对象列表
*/
List<UserPermissionDto> queryUserByPermissionOfOneCompany(@Param("filter") UserPermissionDto filter);
} }
...@@ -228,11 +228,8 @@ ...@@ -228,11 +228,8 @@
<select id="selectCompanyTypeById" resultType="java.lang.String"> <select id="selectCompanyTypeById" resultType="java.lang.String">
select company_type from privilege_company where sequence_nbr = #{companySeq} select company_type from privilege_company where sequence_nbr = #{companySeq}
</select> </select>
<select id="queryUserByPermissionPage" resultType="com.yeejoin.amos.boot.module.common.api.dto.UserPermissionDto"> <select id="queryUserByPermissionOfOneCompany" resultType="com.yeejoin.amos.boot.module.common.api.dto.UserPermissionDto">
select SELECT
a.*
from
(SELECT
COALESCE (p.sequence_nbr, u.sequence_nbr) as sequence_nbr, COALESCE (p.sequence_nbr, u.sequence_nbr) as sequence_nbr,
CASE CASE
WHEN p.expiry_date is null THEN WHEN p.expiry_date is null THEN
...@@ -249,38 +246,72 @@ ...@@ -249,38 +246,72 @@
e.use_unit, e.use_unit,
u.new_post as post, u.new_post as post,
u.sequence_nbr as uid, u.sequence_nbr as uid,
u.sequence_nbr as "rowId",
concat(e.city, e.district) as fullAddress, concat(e.city, e.district) as fullAddress,
u.rec_date u.rec_date
FROM FROM
"tzs_user_info" u "tzs_user_info" u
left join tzs_user_permission p on u.sequence_nbr = p.user_seq left join tzs_user_permission p on u.sequence_nbr = p.user_seq
left join tz_base_enterprise_info e on u.unit_code = e.use_unit_code left join tz_base_enterprise_info e on u.unit_code = e.use_unit_code
<where>u.is_delete = false where
<if test=" u.is_delete = false
filter.orgCode != null and filter.orgCode != ''"> and u.unit_code = #{filter.cityCode}
and ((e.supervise_org_code != '50' and e.supervise_org_code LIKE CONCAT (#{filter.orgCode}, '%')) or (e.supervise_org_code = '50' and e.office_region LIKE CONCAT ('%', #{filter.cityCode}, '%'))) order by u.rec_date
</if> </select>
<if test="postList != null and postList.size() > 0"> <select id="queryUserByPermissionPage" resultType="com.yeejoin.amos.boot.module.common.api.dto.UserPermissionDto">
and select
<foreach collection="postList" open="(" close=")" item="post" separator="or"> a.*
u.new_post like concat('%',#{post}, '%') from
</foreach> (SELECT
</if> COALESCE (p.sequence_nbr, u.sequence_nbr) as sequence_nbr,
</where>) as a CASE
<where> WHEN p.expiry_date is null THEN
<if test="filter.useUnit != null and filter.useUnit != ''"> '无资质要求'
and a.use_unit like concat('%',#{filter.useUnit}, '%') WHEN p.expiry_date <![CDATA[<]]> CURRENT_DATE THEN
</if> '资质超期'
<if test="filter.name != null and filter.name != ''"> WHEN (p.expiry_date - CURRENT_DATE > 0 and p.expiry_date - CURRENT_DATE <![CDATA[<=]]> 30 ) THEN
and a.name like concat('%',#{filter.name}, '%') '资质临期'
</if> ELSE '正常'
<if test="filter.certificateNum != null and filter.certificateNum != ''"> end as permissionStatus,
and a.certificate_num like concat('%',#{filter.certificateNum}, '%') u."name",
</if> u.certificate_num,
<if test="filter.fullAddress != null and filter.fullAddress != ''"> u.identification as identificationStr,
and (a.fullAddress like concat('%',#{filter.fullAddress},'%')) e.use_unit,
</if> u.new_post as post,
</where> u.sequence_nbr as uid,
order by a.rec_date u.sequence_nbr as "rowId",
concat(e.city, e.district) as fullAddress,
u.rec_date
FROM
"tzs_user_info" u
left join tzs_user_permission p on u.sequence_nbr = p.user_seq
left join tz_base_enterprise_info e on u.unit_code = e.use_unit_code
<where>
u.is_delete = false
<if test="filter.orgCode != null and filter.orgCode != ''">
and ((e.supervise_org_code != '50' and e.supervise_org_code LIKE CONCAT (#{filter.orgCode}, '%')) or (e.supervise_org_code = '50' and e.office_region LIKE CONCAT ('%', #{filter.cityCode}, '%')))
</if>
<if test="postList != null and postList.size() > 0">
and
<foreach collection="postList" open="(" close=")" item="post" separator="or">
u.new_post like concat('%',#{post}, '%')
</foreach>
</if>
</where>) as a
<where>
<if test="filter.useUnit != null and filter.useUnit != ''">
and a.use_unit like concat('%',#{filter.useUnit}, '%')
</if>
<if test="filter.name != null and filter.name != ''">
and a.name like concat('%',#{filter.name}, '%')
</if>
<if test="filter.certificateNum != null and filter.certificateNum != ''">
and a.certificate_num like concat('%',#{filter.certificateNum}, '%')
</if>
<if test="filter.fullAddress != null and filter.fullAddress != ''">
and (a.fullAddress like concat('%',#{filter.fullAddress},'%'))
</if>
</where>
order by a.rec_date
</select> </select>
</mapper> </mapper>
\ No newline at end of file
...@@ -399,4 +399,22 @@ public class TzsUserInfoController extends BaseController { ...@@ -399,4 +399,22 @@ public class TzsUserInfoController extends BaseController {
Page<UserPermissionDto> userPermissionDtos = tzsUserInfoServiceImpl.getUserByPermission(current, size,type, filter); Page<UserPermissionDto> userPermissionDtos = tzsUserInfoServiceImpl.getUserByPermission(current, size,type, filter);
return ResponseHelper.buildResponse(userPermissionDtos); return ResponseHelper.buildResponse(userPermissionDtos);
} }
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "查询当前登录人所属公司下的人", notes = "查询当前登录人所属公司下的人")
@GetMapping(value = "/listByLogin")
public ResponseModel<List<UserPermissionDto>> getUserPermissionOfCurrentLogin(){
UserPermissionDto filter = new UserPermissionDto();
filter.setCityCode(getSelectedOrgInfo().getCompany().getCompanyCode());
List<UserPermissionDto> userPermissionDtos = tzsUserInfoServiceImpl.getUserPermissionOfCurrentLogin(filter);
return ResponseHelper.buildResponse(userPermissionDtos);
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "查询指定公司下的人", notes = "查询指定公司下的人")
@GetMapping(value = "/listByCompanySeq")
public ResponseModel<List<UserPermissionDto>> getUserPermissionByCompanySeq(@RequestParam Long comSeq){
List<UserPermissionDto> userPermissionDtos = tzsUserInfoServiceImpl.getUserPermissionByCompanySeq(comSeq);
return ResponseHelper.buildResponse(userPermissionDtos);
}
} }
...@@ -15,6 +15,7 @@ import com.yeejoin.amos.boot.biz.common.entity.DataDictionary; ...@@ -15,6 +15,7 @@ import com.yeejoin.amos.boot.biz.common.entity.DataDictionary;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl; import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils; import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey; import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.module.common.api.dto.UserPermissionDto;
import com.yeejoin.amos.boot.module.tcm.api.dto.BaseUnitLicenceDto; import com.yeejoin.amos.boot.module.tcm.api.dto.BaseUnitLicenceDto;
import com.yeejoin.amos.boot.module.tcm.api.dto.EquEnterDto; import com.yeejoin.amos.boot.module.tcm.api.dto.EquEnterDto;
import com.yeejoin.amos.boot.module.tcm.api.dto.TzBaseEnterpriseInfoDto; import com.yeejoin.amos.boot.module.tcm.api.dto.TzBaseEnterpriseInfoDto;
...@@ -107,6 +108,8 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -107,6 +108,8 @@ public class TzBaseEnterpriseInfoServiceImpl
private TzsUserInfoMapper tzsUserInfoMapper; private TzsUserInfoMapper tzsUserInfoMapper;
@Autowired @Autowired
private EquipmentCategoryServiceImpl equipmentCategoryService; private EquipmentCategoryServiceImpl equipmentCategoryService;
@Autowired
private TzsUserInfoServiceImpl userInfoService;
private static Map<String ,String> JYJC_CERT_MAP = new HashMap<>(); private static Map<String ,String> JYJC_CERT_MAP = new HashMap<>();
...@@ -403,6 +406,7 @@ public class TzBaseEnterpriseInfoServiceImpl ...@@ -403,6 +406,7 @@ public class TzBaseEnterpriseInfoServiceImpl
lambda.eq(TzsBaseInstitution::getEnterpriseId, tzBaseEnterpriseInfo.getSequenceNbr()); lambda.eq(TzsBaseInstitution::getEnterpriseId, tzBaseEnterpriseInfo.getSequenceNbr());
TzsBaseInstitution tzsBaseInstitution = tzsBaseInstitutionService.getBaseMapper().selectOne(lambda); TzsBaseInstitution tzsBaseInstitution = tzsBaseInstitutionService.getBaseMapper().selectOne(lambda);
tzBaseEnterpriseInfoDto.setRegUnitMessage(tzsBaseInstitution); tzBaseEnterpriseInfoDto.setRegUnitMessage(tzsBaseInstitution);
tzBaseEnterpriseInfoDto.setUserPermissionList(userInfoService.getUserPermissionOfCurrentLogin(UserPermissionDto.builder().cityCode(companyCode).build()));
result.add(tzBaseEnterpriseInfoDto); result.add(tzBaseEnterpriseInfoDto);
return page.setRecords(result); return page.setRecords(result);
} }
......
...@@ -84,6 +84,14 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI ...@@ -84,6 +84,14 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
@Autowired @Autowired
private TzsUserQualificationsServiceImpl tzsUserQualificationsService; private TzsUserQualificationsServiceImpl tzsUserQualificationsService;
private static Map<String,String> statusColorMap = new HashMap<>();
static {
statusColorMap.put("无资质要求","#868686");
statusColorMap.put("资质超期","#FF0000");
statusColorMap.put("资质临期","#FC9700");
statusColorMap.put("正常","#18B100");
}
@Override @Override
public Page<TzsUserInfoDto> page(TzsUserInfoDto dto, Page<TzsUserInfoDto> page) { public Page<TzsUserInfoDto> page(TzsUserInfoDto dto, Page<TzsUserInfoDto> page) {
Page<TzsUserInfoDto> tzsUserInfoDtoPage = tzsUserInfoMapper.selectPageMessage(page, dto); Page<TzsUserInfoDto> tzsUserInfoDtoPage = tzsUserInfoMapper.selectPageMessage(page, dto);
...@@ -650,11 +658,12 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI ...@@ -650,11 +658,12 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
List<String> post = this.getPostByType(type); List<String> post = this.getPostByType(type);
Page<UserPermissionDto> result = this.getBaseMapper().queryUserByPermissionPage(permissionDtoPage, post, filter); Page<UserPermissionDto> result = this.getBaseMapper().queryUserByPermissionPage(permissionDtoPage, post, filter);
result.getRecords().forEach(d->{ result.getRecords().forEach(d->{
// 照片赋值
if (StringUtils.isNotEmpty(d.getIdentificationStr())) { if (StringUtils.isNotEmpty(d.getIdentificationStr())) {
// 照片赋值
List<CommonFile> commonFiles = JSON.parseArray(d.getIdentificationStr(), CommonFile.class); List<CommonFile> commonFiles = JSON.parseArray(d.getIdentificationStr(), CommonFile.class);
if (!ObjectUtils.isEmpty(commonFiles)) { if (!ObjectUtils.isEmpty(commonFiles)) {
d.setIdentification(commonFiles.get(0).getUrl()); d.setPhotoUrl(commonFiles.get(0).getUrl());
} }
} }
// 人员类型枚举转name // 人员类型枚举转name
...@@ -664,6 +673,26 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI ...@@ -664,6 +673,26 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
return result; return result;
} }
public List<UserPermissionDto> getUserPermissionOfCurrentLogin(UserPermissionDto filter) {
List<UserPermissionDto> result = this.getBaseMapper().queryUserByPermissionOfOneCompany(filter);
result.forEach(d->{
if (StringUtils.isNotEmpty(d.getIdentificationStr())) {
// String转json
d.setIdentification(JSON.parseArray(d.getIdentificationStr()));
// 照片赋值
List<CommonFile> commonFiles = JSON.parseArray(d.getIdentificationStr(), CommonFile.class);
if (!ObjectUtils.isEmpty(commonFiles)) {
d.setPhotoUrl(commonFiles.get(0).getUrl());
}
}
d.setPermissionStatusColor(statusColorMap.getOrDefault(d.getPermissionStatus(),"#868686"));
// 人员类型枚举转name
d.setPost(this.isJSONValid(d.getPost()) ? d.getPost() : "[\"" + d.getPost() + "\"]");
d.setPostName(this.setPostName(d.getPost()));
});
return result;
}
private List<String> getPostByType(String type) { private List<String> getPostByType(String type) {
switch (type){ switch (type){
case "jy": case "jy":
...@@ -678,4 +707,9 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI ...@@ -678,4 +707,9 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
return Arrays.asList("6549","6548","6547","6546","6551","6550","6616","6553","6617", "66151", "66152", "6552"); return Arrays.asList("6549","6548","6547","6546","6551","6550","6616","6553","6617", "66151", "66152", "6552");
} }
} }
public List<UserPermissionDto> getUserPermissionByCompanySeq(Long comSeq) {
TzBaseEnterpriseInfo enterpriseInfo = baseEnterpriseInfoService.getById(comSeq);
return getUserPermissionOfCurrentLogin(UserPermissionDto.builder().cityCode(enterpriseInfo.getUseUnitCode()).build());
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment