Commit 0f741816 authored by xixinzhao's avatar xixinzhao

消防监督计划修改

parent 8ff4d8b5
package com.yeejoin.amos.boot.module.common.api.dto;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@ApiModel(value = "CheckObjectDto", description = "机构重点部位")
public class CheckObjectDto extends BaseDto implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "机构名称")
private String bizOrgName;
@ApiModelProperty(value = "机构编码")
private String bizOrgCode;
@ApiModelProperty(value = "重点部位数量")
private int num;
@ApiModelProperty(value = "归属机构")
private String parentId;
@ApiModelProperty(value = "单位性质")
private String companyNature;
@ApiModelProperty(value = "机构类型(部门:DEPARTMENT,单位:COMPANY,人员:PERSON)")
private String bizOrgType;
}
......@@ -67,7 +67,7 @@ public interface OrgUsrMapper extends BaseMapper<OrgUsr> {
/**
* 查询单位基本信息列表和单位下所有的重点部位数量。
*/
List<OrgUsrTreeDto> getCompanyAndKeySite(Long companyId);
List<CheckObjectDto> getCompanyAndKeySite(Long companyId);
List<UserUnitDto> getUserUnit(String id, String type, String code);
}
......@@ -196,7 +196,7 @@ public interface IOrgUsrService {
/**
* 根据登陆人获取公司列表(关联重点部位)
*/
List<OrgUsrTreeDto> companyListByUser(AgencyUserModel user);
List<CheckObjectDto> companyListByUser(AgencyUserModel user);
/**
* 获取登陆人关联机场单位人员信息,部门信息
......
......@@ -355,7 +355,7 @@ LEFT JOIN (
on b.instance_id=a.sequence_nbr where a.biz_org_name is not null
</select>
<select id="getCompanyAndKeySite" resultType="com.yeejoin.amos.boot.module.common.api.dto.OrgUsrTreeDto" >
<select id="getCompanyAndKeySite" resultType="com.yeejoin.amos.boot.module.common.api.dto.CheckObjectDto" >
SELECT
company_sur.sequence_nbr as sequenceNbr,
......@@ -363,6 +363,7 @@ LEFT JOIN (
company_sur.parent_id as parentId,
company_sur.biz_org_type as bizOrgType,
-- cb.field_value_label,
(SELECT field_value_label FROM cb_dynamic_form_instance as cb WHERE company_sur.sequence_nbr = cb.instance_id AND field_code = 'companyNature' ) as companyNature,
CASE
WHEN keysite_sur.num IS NULL THEN
0
......
......@@ -349,10 +349,10 @@ public class OrgUsrController extends BaseController {
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@RequestMapping(value = "/companyListByUser", method = RequestMethod.GET)
@ApiOperation(httpMethod = "GET", value = "根据登陆人获取单位列表", notes = "根据登陆人获取单位列表")
public ResponseModel<List<OrgUsrTreeDto>> companyListByUser() {
public ResponseModel<List<CheckObjectDto>> companyListByUser() {
// 获取登陆人角色
AgencyUserModel user = getUserInfo();
List<OrgUsrTreeDto> menus = iOrgUsrService.companyListByUser(user);
List<CheckObjectDto> menus = iOrgUsrService.companyListByUser(user);
return ResponseHelper.buildResponse(menus);
}
......
......@@ -1095,15 +1095,15 @@ public class OrgUsrServiceImpl extends BaseService<OrgUsrDto, OrgUsr, OrgUsrMapp
;
@Override
public List<OrgUsrTreeDto> companyListByUser(AgencyUserModel user) {
List<OrgUsrTreeDto> list = new ArrayList<>();
public List<CheckObjectDto> companyListByUser(AgencyUserModel user) {
List<CheckObjectDto> list = new ArrayList<>();
// 需要角色为机场单位或管理员,其余角色返回空
String code = UserRolesEnum.AIRPORTUNIT.getCode();
String codeAdmin = UserRolesEnum.ADMIN.getCode();
String roles = getRoles(user, code);
if (!StringUtils.isEmpty(roles)) {
List<OrgUsrTreeDto> companyList = this.baseMapper.getCompanyAndKeySite(null);
List<CheckObjectDto> companyList = this.baseMapper.getCompanyAndKeySite(null);
if (roles.equals(codeAdmin)) {
// 返回全部单位列表
return companyAndKeySiteList(companyList);
......@@ -1119,7 +1119,7 @@ public class OrgUsrServiceImpl extends BaseService<OrgUsrDto, OrgUsr, OrgUsrMapp
Long parent = ObjectUtils.isEmpty(orgUsr.getParentId()) ? 0L : Long.parseLong(orgUsr.getParentId());
if (set.add(parent)) {
Long companyIdByDto = getCompanyIdByDto(parent, companyList);
List<OrgUsrTreeDto> orgUsrTreeDtoList = this.baseMapper.getCompanyAndKeySite(companyIdByDto);
List<CheckObjectDto> orgUsrTreeDtoList = this.baseMapper.getCompanyAndKeySite(companyIdByDto);
list.addAll(companyAndKeySiteList(orgUsrTreeDtoList));
}
});
......@@ -1133,9 +1133,9 @@ public class OrgUsrServiceImpl extends BaseService<OrgUsrDto, OrgUsr, OrgUsrMapp
/**
* 获取登陆人所在公司
*/
private Long getCompanyIdByDto(Long parentId, List<OrgUsrTreeDto> companyDepartmentMsgList) {
private Long getCompanyIdByDto(Long parentId, List<CheckObjectDto> companyDepartmentMsgList) {
Long pid = null;
for (OrgUsrTreeDto orgUsr : companyDepartmentMsgList) {
for (CheckObjectDto orgUsr : companyDepartmentMsgList) {
if (orgUsr.getSequenceNbr().equals(parentId)) {
if (orgUsr.getBizOrgType().equals(OrgPersonEnum.公司.getKey()) && ObjectUtils.isEmpty(orgUsr.getParentId())) {
return orgUsr.getSequenceNbr();
......@@ -1150,19 +1150,19 @@ public class OrgUsrServiceImpl extends BaseService<OrgUsrDto, OrgUsr, OrgUsrMapp
/**
* 查询单位列表
*/
private List<OrgUsrTreeDto> companyAndKeySiteList(List<OrgUsrTreeDto> companyList) {
List<OrgUsrTreeDto> list = new ArrayList<>();
private List<CheckObjectDto> companyAndKeySiteList(List<CheckObjectDto> companyList) {
List<CheckObjectDto> list = new ArrayList<>();
if (ObjectUtils.isEmpty(companyList)) {
return list;
}
Map<Long, OrgUsrTreeDto> map = new HashMap<>(companyList.size());
Map<Long, CheckObjectDto> map = new HashMap<>(companyList.size());
companyList.forEach(e -> map.put(e.getSequenceNbr(), e));
Set<? extends Map.Entry<Long, ? extends OrgUsrTreeDto>> entries = map.entrySet();
Set<? extends Map.Entry<Long, ? extends CheckObjectDto>> entries = map.entrySet();
entries.parallelStream().forEach(entry -> {
OrgUsrTreeDto value = entry.getValue();
CheckObjectDto value = entry.getValue();
if (!ObjectUtils.isEmpty(value)) {
Long parent = ObjectUtils.isEmpty(value.getParentId()) ? 0L : Long.parseLong(value.getParentId());
OrgUsrTreeDto orgUsrTreeDto = map.get(parent);
CheckObjectDto orgUsrTreeDto = map.get(parent);
if (!ObjectUtils.isEmpty(orgUsrTreeDto)) {
int num = orgUsrTreeDto.getNum() + value.getNum();
orgUsrTreeDto.setNum(num);
......
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