Commit 074c2ff5 authored by lisong's avatar lisong

添加单位树查询接口

parent 0e3f9bd4
...@@ -106,6 +106,8 @@ public class OrgUsrController extends BaseController { ...@@ -106,6 +106,8 @@ public class OrgUsrController extends BaseController {
String deptKey; String deptKey;
@Value("special-deptType") @Value("special-deptType")
String deptTypeKey; String deptTypeKey;
private static final String AUTH_SPECIAL_KEY = "fire_build_video_info";
/** /**
* 新增单位信息 * 新增单位信息
* *
...@@ -772,12 +774,11 @@ public class OrgUsrController extends BaseController { ...@@ -772,12 +774,11 @@ public class OrgUsrController extends BaseController {
List<String> objects = new ArrayList<>(); List<String> objects = new ArrayList<>();
list.stream().forEach(e->objects.add(e.getCode())); list.stream().forEach(e->objects.add(e.getCode()));
//判断当前登录人权限是否处于特殊类型 //判断当前登录人权限是否处于特殊类型
if (objects.contains(authKey)){ if (objects.contains(authKey) || AUTH_SPECIAL_KEY.equals(authKey)){
//判断当前登录人部门是否处于特殊部门 //判断当前登录人部门是否处于特殊部门
if (objects.contains(personIdentity.getCompanyId())) { if (objects.contains(personIdentity.getCompanyId()) || AUTH_SPECIAL_KEY.equals(authKey)) {
//查询当前登录人所属单位/部门 //查询当前登录人所属单位/部门
OrgUsr orgUsr = orgUsrMapper.selectById(personIdentity.getCompanyId()); OrgUsr orgUsr = orgUsrMapper.selectById(personIdentity.getCompanyId());
//查询当前登录人父级单位 //查询当前登录人父级单位
LambdaQueryWrapper<OrgUsr> wrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<OrgUsr> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(OrgUsr::getSequenceNbr,orgUsr.getParentId()); wrapper.eq(OrgUsr::getSequenceNbr,orgUsr.getParentId());
......
...@@ -325,6 +325,13 @@ public class BuildingController extends AbstractBaseController { ...@@ -325,6 +325,13 @@ public class BuildingController extends AbstractBaseController {
return buildService.getCompanyBuildingTree(null); return buildService.getCompanyBuildingTree(null);
} }
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation("单位树")
@GetMapping(value = "/selectCompanyTree")
public List<BuildingTreeVo> selectCompanyTree(@RequestParam(value = "authKey", required = false) String authKey ) {
return buildService.selectCompanyTree(authKey);
}
@ApiOperation(value = "查询指定单位的建筑树") @ApiOperation(value = "查询指定单位的建筑树")
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{bizOrgCode}/tree") @GetMapping(value = "/{bizOrgCode}/tree")
......
...@@ -301,6 +301,14 @@ public interface IBuilldService extends IService<Building> { ...@@ -301,6 +301,14 @@ public interface IBuilldService extends IService<Building> {
*/ */
List<BuildingTreeVo> getCompanyBuildingTree(String authKey); List<BuildingTreeVo> getCompanyBuildingTree(String authKey);
/**
* 获取单位树
* @param authKey
* @return
*/
List<BuildingTreeVo> selectCompanyTree(String authKey);
List<BuildingTreeVo> getBuildingVideoTreeNew(); List<BuildingTreeVo> getBuildingVideoTreeNew();
List<Map<String, Object>> getBuildingDetaiList(); List<Map<String, Object>> getBuildingDetaiList();
......
...@@ -102,6 +102,9 @@ public class BuildingServiceImpl extends ServiceImpl<BuildingMapper, Building> i ...@@ -102,6 +102,9 @@ public class BuildingServiceImpl extends ServiceImpl<BuildingMapper, Building> i
@Autowired @Autowired
ISourceSceneService sourceSceneService; ISourceSceneService sourceSceneService;
@Autowired
IVideoService iVideoService;
@Value("${morphic.projectSeq}") @Value("${morphic.projectSeq}")
private Long projectSeq; private Long projectSeq;
...@@ -1215,6 +1218,37 @@ public class BuildingServiceImpl extends ServiceImpl<BuildingMapper, Building> i ...@@ -1215,6 +1218,37 @@ public class BuildingServiceImpl extends ServiceImpl<BuildingMapper, Building> i
return companyBuildingList.stream().filter(a -> companyBuildingList.stream().noneMatch(c -> c.getId().toString().equals(a.getParentId()))).peek(b -> b.setChildren(getCompanyBuildingChildrenTree(b.getId().toString(), companyBuildingList))).collect(Collectors.toList()); return companyBuildingList.stream().filter(a -> companyBuildingList.stream().noneMatch(c -> c.getId().toString().equals(a.getParentId()))).peek(b -> b.setChildren(getCompanyBuildingChildrenTree(b.getId().toString(), companyBuildingList))).collect(Collectors.toList());
} }
@Override
public List<BuildingTreeVo> selectCompanyTree(String authKey) {
if (StringUtils.isEmpty(authKey)) {
authKey = this.authKey;
}
Map<String, Long> countMap = iVideoService.getVideoCountMap();
// 1.获取公司list
List<OrgUsrDto> orgUsrLists = jcsRemoteService.getCompanyDeptListWithAuth(authKey, "COMPANY");
if (orgUsrLists.isEmpty()) {
return new ArrayList<>();
}
// 2.数据结构转换
List<BuildingTreeVo> companyList = orgUsrLists.stream().map(orgUsrDto -> {
BuildingTreeVo vo = new BuildingTreeVo();
vo.setGroupType("allBuilding");
vo.setGroupCode("allBuilding");
vo.setInstanceName(orgUsrDto.getBizOrgName());
vo.setBizOrgCode(orgUsrDto.getBizOrgCode());
vo.setInstanceId(orgUsrDto.getSequenceNbr());
vo.setParentId(orgUsrDto.getParentId());
vo.setName(orgUsrDto.getBizOrgName());
vo.setId(orgUsrDto.getSequenceNbr());
vo.setBizOrgName(orgUsrDto.getBizOrgName());
vo.setTotal(countMap.get(orgUsrDto.getBizOrgCode()) == null ? 0L : countMap.get(orgUsrDto.getBizOrgCode()));
return vo;
}).collect(Collectors.toList());
return companyList.stream().filter(a -> companyList.stream().noneMatch(c -> c.getId().toString().equals(a.getParentId()))).peek(b -> b.setChildren(getCompanyBuildingChildrenTree(b.getId().toString(), companyList))).collect(Collectors.toList());
}
private List<BuildingTreeVo> buildBuildingAndCompanyListVos(String authKey) { private List<BuildingTreeVo> buildBuildingAndCompanyListVos(String authKey) {
if (StringUtils.isEmpty(authKey)) { if (StringUtils.isEmpty(authKey)) {
authKey = this.authKey; authKey = this.authKey;
......
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