From dc85547a4e5b3d377c7613efa32fc6cc0ab2e8c1 Mon Sep 17 00:00:00 2001
From: zhangnaisong <2434969829@qq.com>
Date: 星期四, 11 四月 2024 09:23:14 +0800
Subject: [PATCH] app光电查询rtsp路径修改提交
---
ard-work/src/main/java/com/ruoyi/app/application/service/impl/ArdAppApplicationServiceImpl.java | 343 +++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 320 insertions(+), 23 deletions(-)
diff --git a/ard-work/src/main/java/com/ruoyi/app/application/service/impl/ArdAppApplicationServiceImpl.java b/ard-work/src/main/java/com/ruoyi/app/application/service/impl/ArdAppApplicationServiceImpl.java
index 14f8653..5918261 100644
--- a/ard-work/src/main/java/com/ruoyi/app/application/service/impl/ArdAppApplicationServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/app/application/service/impl/ArdAppApplicationServiceImpl.java
@@ -1,11 +1,29 @@
package com.ruoyi.app.application.service.impl;
+import java.math.BigDecimal;
import java.util.*;
+import java.util.stream.Collectors;
-import com.alibaba.fastjson2.JSON;
+import com.ruoyi.app.position.appcontainer.AppContainer;
+import com.ruoyi.app.position.domain.ArdAppPosition;
+import com.ruoyi.app.position.mapper.ArdAppPositionMapper;
+import com.ruoyi.common.core.domain.entity.SysConfig;
+import com.ruoyi.common.core.domain.entity.SysRole;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.uuid.IdUtils;
+import com.ruoyi.sy.domain.ArdSyUser;
+import com.ruoyi.sy.mapper.ArdSyCarMapper;
+import com.ruoyi.sy.mapper.ArdSyUserMapper;
+import com.ruoyi.system.mapper.SysConfigMapper;
+import com.ruoyi.system.mapper.SysDeptMapper;
+import com.ruoyi.system.mapper.SysRoleMapper;
+import com.ruoyi.system.mapper.SysUserMapper;
+import com.ruoyi.utils.forest.SYClient;
+import com.ruoyi.utils.gis.GisUtil;
+import com.ruoyi.utils.websocket.util.WebSocketUtils;
+import org.apache.commons.codec.digest.DigestUtils;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import com.ruoyi.common.utils.StringUtils;
@@ -16,17 +34,47 @@
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
+import javax.websocket.Session;
+
+import static com.ruoyi.utils.websocket.util.WebSocketUtils.ONLINE_USER_SESSIONS;
/**
* 鍗曞叺绔敵璇锋煡鐪嬫寚鎸ョ浣嶇疆鎴栦笁涓�杞﹁締浣嶇疆Service涓氬姟灞傚鐞�
*
* @author ard
- * @date 2024-01-23
+ * @date 2024-01-25
*/
@Service
public class ArdAppApplicationServiceImpl implements IArdAppApplicationService {
@Resource
private ArdAppApplicationMapper ardAppApplicationMapper;
+
+ @Resource
+ private SysRoleMapper sysRoleMapper;
+
+ @Resource
+ private SysUserMapper userMapper;
+
+ @Resource
+ private SysDeptMapper sysDeptMapper;
+
+ @Resource
+ private ArdAppPositionMapper ardAppPositionMapper;
+
+ @Resource
+ private ArdSyUserMapper ardSyUserMapper;
+
+ @Resource
+ private SysConfigMapper sysConfigMapper;
+
+ @Resource
+ private ArdSyCarMapper ardSyCarMapper;
+
+ @Resource
+ private SYClient sYClient;
+
+ @Value("${minio.endpoint}")
+ private String minioEndpoint;
private Map<String,Thread> threadMap = new HashMap();
@@ -75,12 +123,12 @@
/**
* 鏌ヨ鍗曞叺绔敵璇锋煡鐪嬫寚鎸ョ浣嶇疆鎴栦笁涓�杞﹁締浣嶇疆
*
- * @param applicationId 鍗曞叺绔敵璇锋煡鐪嬫寚鎸ョ浣嶇疆鎴栦笁涓�杞﹁締浣嶇疆涓婚敭
+ * @param soilderId 鍗曞叺绔敵璇锋煡鐪嬫寚鎸ョ浣嶇疆鎴栦笁涓�杞﹁締浣嶇疆涓婚敭
* @return 鍗曞叺绔敵璇锋煡鐪嬫寚鎸ョ浣嶇疆鎴栦笁涓�杞﹁締浣嶇疆
*/
@Override
- public ArdAppApplication selectArdAppApplicationByApplicationId(String applicationId) {
- return ardAppApplicationMapper.selectArdAppApplicationByApplicationId(applicationId);
+ public ArdAppApplication selectArdAppApplicationBySoilderId(String soilderId) {
+ return ardAppApplicationMapper.selectArdAppApplicationBySoilderId(soilderId);
}
/**
@@ -119,23 +167,23 @@
/**
* 鎵归噺鍒犻櫎鍗曞叺绔敵璇锋煡鐪嬫寚鎸ョ浣嶇疆鎴栦笁涓�杞﹁締浣嶇疆
*
- * @param applicationIds 闇�瑕佸垹闄ょ殑鍗曞叺绔敵璇锋煡鐪嬫寚鎸ョ浣嶇疆鎴栦笁涓�杞﹁締浣嶇疆涓婚敭
+ * @param soilderIds 闇�瑕佸垹闄ょ殑鍗曞叺绔敵璇锋煡鐪嬫寚鎸ョ浣嶇疆鎴栦笁涓�杞﹁締浣嶇疆涓婚敭
* @return 缁撴灉
*/
@Override
- public int deleteArdAppApplicationByApplicationIds(String[] applicationIds) {
- return ardAppApplicationMapper.deleteArdAppApplicationByApplicationIds(applicationIds);
+ public int deleteArdAppApplicationBySoilderIds(String[] soilderIds) {
+ return ardAppApplicationMapper.deleteArdAppApplicationBySoilderIds(soilderIds);
}
/**
* 鍒犻櫎鍗曞叺绔敵璇锋煡鐪嬫寚鎸ョ浣嶇疆鎴栦笁涓�杞﹁締浣嶇疆淇℃伅
*
- * @param applicationId 鍗曞叺绔敵璇锋煡鐪嬫寚鎸ョ浣嶇疆鎴栦笁涓�杞﹁締浣嶇疆涓婚敭
+ * @param soilderId 鍗曞叺绔敵璇锋煡鐪嬫寚鎸ョ浣嶇疆鎴栦笁涓�杞﹁締浣嶇疆涓婚敭
* @return 缁撴灉
*/
@Override
- public int deleteArdAppApplicationByApplicationId(String applicationId) {
- return ardAppApplicationMapper.deleteArdAppApplicationByApplicationId(applicationId);
+ public int deleteArdAppApplicationBySoilderId(String soilderId) {
+ return ardAppApplicationMapper.deleteArdAppApplicationBySoilderId(soilderId);
}
@Override
@@ -151,6 +199,7 @@
ardAppApplication.setApplicationType("Commander");
ardAppApplication.setBegin("");
ardAppApplication.setState("0");
+ ardAppApplication.setSoilderCheck("true");//鎸囨尌绔湭瀹℃壒涔熻涓簍rue,涓嶉渶瑕佸崟鍏电鏌ョ湅
int resultSingle = ardAppApplicationMapper.updateArdAppApplicationByCommanderIdAndSoilderIdAndType(ardAppApplication);
result = result + resultSingle;
if(resultSingle == 0){
@@ -175,12 +224,30 @@
ardAppApplication.setApplicationType("SYCar");
ardAppApplication.setBegin("");
ardAppApplication.setState("0");
+ ardAppApplication.setSoilderCheck("true");//鎸囨尌绔湭瀹℃壒涔熻涓簍rue,涓嶉渶瑕佸崟鍏电鏌ョ湅
int resultSingle = ardAppApplicationMapper.updateArdAppApplicationByCommanderIdAndSoilderIdAndType(ardAppApplication);
result = result + resultSingle;
if(resultSingle == 0){
ardAppApplication.setApplicationId(IdUtils.simpleUUID());
resultSingle = ardAppApplicationMapper.insertArdAppApplication(ardAppApplication);
result = result + resultSingle;
+ }
+ //鍔犲叆缁檖c绔痺ebsocket杞彂
+ List<SysRole> sysRoleList = sysRoleMapper.selectRolePermissionByUserId(commanderId);
+ for(SysRole sysRole : sysRoleList){
+ if(!sysRole.getRoleKey().equals("appLeader")){
+ Map<String,Object> resultMap = ardAppApplicationMapper.selectSYCarApplicationByPCIdAndSoilderId(commanderId,usersId);
+ Map<String,Map<String,Object>> msg = new HashMap();
+ msg.put("60000",resultMap);
+ for(String id : ONLINE_USER_SESSIONS.keySet()){
+ if(id.startsWith(commanderId)){
+ Session session = ONLINE_USER_SESSIONS.get(id);
+ WebSocketUtils.sendMessage(session,msg);
+ break;
+ }
+ }
+ break;//涓�涓猵c绔敤鎴峰彲鑳芥寕鎺ュ涓鑹诧紝姣忎釜pc绔彧杞彂涓�娆�
+ }
}
}
return result;
@@ -265,16 +332,6 @@
Date date = new Date();
//鏌ョ湅鎸囨尌绔綅缃敵璇�
List<Map<String, Object>> resultCommanderPosition = new ArrayList();
- for(Map<String, Object> map : ardAppApplicationList){
- Long interval = date.getTime() - Long.parseLong((String)map.get("begin"));
- interval = 24 * 60 * 60 * 1000 - interval;
- Long hour = interval / (60 * 60 * 1000);
- Long min = (interval - hour * 60 * 60 * 1000) / (60 * 1000);
- map.put("time",hour + "鏃�" + min + "鍒�");
- if(((String)map.get("applicationType")).equals("Commander")){
- resultCommanderPosition.add(map);
- }
- }
//鏌ョ湅杞﹁締浣嶇疆鐢宠
List<Map<String, Object>> resultSYCarsPosition = new ArrayList();
for(Map<String, Object> map : ardAppApplicationList){
@@ -282,8 +339,11 @@
interval = 24 * 60 * 60 * 1000 - interval;
Long hour = interval / (60 * 60 * 1000);
Long min = (interval - hour * 60 * 60 * 1000) / (60 * 1000);
- map.put("time",hour + "鏃�" + min + "鍒�");
- if(((String)map.get("applicationType")).equals("SYCar")){
+ Long second = (interval - hour * 60 * 60 * 1000 - min * 60 * 1000) / 1000;
+ map.put("time",hour + "鏃�" + min + "鍒�" + second + "绉�");
+ if(((String)map.get("applicationType")).equals("Commander")){
+ resultCommanderPosition.add(map);
+ }else if(((String)map.get("applicationType")).equals("SYCar")){
resultSYCarsPosition.add(map);
}
}
@@ -291,4 +351,241 @@
result.put("SYCars",resultSYCarsPosition);
return result;
}
+
+ @Override
+ public Map<String, List<Map<String, Object>>> getSendPositionTrue(String soilderId) {
+ Map<String, List<Map<String, Object>>> result = new HashMap();
+ List<Map<String,Object>> ardAppApplicationList = ardAppApplicationMapper.selectArdAppApplicationBySoilderIdTrue(soilderId);
+ Date date = new Date();
+ //鏌ョ湅鎸囨尌绔綅缃敵璇�
+ List<Map<String, Object>> resultCommanderPosition = new ArrayList();
+ //鏌ョ湅杞﹁締浣嶇疆鐢宠
+ List<Map<String, Object>> resultSYCarsPosition = new ArrayList();
+ for(Map<String, Object> map : ardAppApplicationList){
+ Long interval = date.getTime() - Long.parseLong((String)map.get("begin"));
+ interval = 24 * 60 * 60 * 1000 - interval;
+ Long hour = interval / (60 * 60 * 1000);
+ Long min = (interval - hour * 60 * 60 * 1000) / (60 * 1000);
+ Long second = (interval - hour * 60 * 60 * 1000 - min * 60 * 1000) / 1000;
+ map.put("time",hour + "鏃�" + min + "鍒�" + second + "绉�");
+ if(((String)map.get("applicationType")).equals("Commander")){
+ resultCommanderPosition.add(map);
+ }else if(((String)map.get("applicationType")).equals("SYCar")){
+ resultSYCarsPosition.add(map);
+ }
+ }
+ result.put("commander",resultCommanderPosition);
+ result.put("SYCars",resultSYCarsPosition);
+ return result;
+ }
+
+ @Override
+ public Map<String, List<Map<String, Object>>> getCheckPositionOwn(String soilderId) {
+ Map<String, List<Map<String, Object>>> result = new HashMap();
+ List<Map<String,Object>> ardAppApplicationList = ardAppApplicationMapper.selectArdAppApplicationBySoilderIdFalse(soilderId);
+ Date date = new Date();
+ //鏌ョ湅鎸囨尌绔綅缃敵璇�
+ List<Map<String, Object>> resultCommanderPosition = new ArrayList();
+ //鏌ョ湅杞﹁締浣嶇疆鐢宠
+ List<Map<String, Object>> resultSYCarsPosition = new ArrayList();
+ for(Map<String, Object> map : ardAppApplicationList){
+ /*if(((String)map.get("state")).equals("1")){
+ Long interval = date.getTime() - Long.parseLong((String)map.get("begin"));
+ interval = 24 * 60 * 60 * 1000 - interval;
+ Long hour = interval / (60 * 60 * 1000);
+ Long min = (interval - hour * 60 * 60 * 1000) / (60 * 1000);
+ map.put("time",hour + "鏃�" + min + "鍒�");
+ if(((String)map.get("applicationType")).equals("Commander")){
+ resultCommanderPosition.add(map);
+ }else if(((String)map.get("applicationType")).equals("SYCar")){
+ resultSYCarsPosition.add(map);
+ }
+ }else{
+ map.put("time","");
+ if(((String)map.get("applicationType")).equals("Commander")){
+ resultCommanderPosition.add(map);
+ }else if(((String)map.get("applicationType")).equals("SYCar")){
+ resultSYCarsPosition.add(map);
+ }
+ }*/
+ if(((String)map.get("applicationType")).equals("Commander")){
+ resultCommanderPosition.add(map);
+ }else if(((String)map.get("applicationType")).equals("SYCar")){
+ resultSYCarsPosition.add(map);
+ }
+ }
+ result.put("commander",resultCommanderPosition);
+ result.put("SYCars",resultSYCarsPosition);
+ return result;
+ }
+
+ @Override
+ public int approvalCheckPositionOwn(String soilderId, Map<String, String> para) {
+ String applicationType = para.get("applicationType");
+ String commanderId = para.get("commanderId");
+ int result = ardAppApplicationMapper.updateSoilderCheckByCommanderIdAndSoilderIdAndType(soilderId,commanderId,applicationType);
+ return result;
+ }
+
+ @Override
+ public List<Map<String, Object>> getCheckPositionNo(String commanderId) {///
+ List<Map<String,Object>> ardAppApplicationList = ardAppApplicationMapper.selectArdAppApplicationByCommanderIdNoCheck(commanderId);
+ Date date = new Date();
+ for(Map<String, Object> map : ardAppApplicationList){
+ if(((String)map.get("begin")).equals("")){
+ map.put("time","");
+ }else{
+ Long interval = date.getTime() - Long.parseLong((String)map.get("begin"));
+ interval = 24 * 60 * 60 * 1000 - interval;
+ Long hour = interval / (60 * 60 * 1000);
+ Long min = (interval - hour * 60 * 60 * 1000) / (60 * 1000);
+ Long second = (interval - hour * 60 * 60 * 1000 - min * 60 * 1000) / 1000;
+ map.put("time",hour + "鏃�" + min + "鍒�" + second + "绉�");
+ }
+ }
+ return ardAppApplicationList;
+ }
+
+ @Override
+ public Map<String,Map<String,List<Map<String,Object>>>> getSoilderAndCarPositionByCommanderId(String commanderId,Map<String, Double> para) {
+ Map<String,Map<String,List<Map<String,Object>>>> mapResault = new HashMap();
+ SysUser sysUser = userMapper.selectUserById(commanderId);//鑾峰彇绯荤粺鐢ㄦ埛
+ List<Long> deptIdList = new ArrayList();
+ deptIdList.add(sysUser.getDeptId());
+ deptIdList = getOwnAndChildrenDeptIdList(deptIdList,new ArrayList());//閫掑綊鏌ヨ涓嬪睘閮ㄩ棬涓婚敭
+ List<SysUser> sysUsersResult = userMapper.getOwnAndChildrenSoilderListAll(deptIdList);
+ List<SysUser> sysUsersResultOnline = sysUsersResult.stream().filter(sysUserTest -> sysUserTest.getAppOnlineState().equals("1")).collect(Collectors.toList());//鍦ㄧ嚎鐢ㄦ埛
+ List<SysUser> sysUsersResultOffline = sysUsersResult.stream().filter(sysUserTest -> !sysUserTest.getAppOnlineState().equals("1")).collect(Collectors.toList());//绂荤嚎鐢ㄦ埛
+ List<Map<String,Object>> sysUsersOnlineList = new ArrayList();
+ List<Map<String,Object>> sysUsersOfflineList = new ArrayList();
+ for(SysUser sysUserIn : sysUsersResultOnline){
+ Map<String,Object> map = new HashMap();
+ map.put("userId",sysUserIn.getUserId());
+ map.put("deptId",sysUserIn.getDeptId());
+ map.put("userName",sysUserIn.getUserName());
+ map.put("nickName",sysUserIn.getNickName());
+ try{
+ map.put("longitude", AppContainer.getArdAppPositionMap().get(sysUserIn.getUserId()).getLongitude());
+ map.put("latitude",AppContainer.getArdAppPositionMap().get(sysUserIn.getUserId()).getLatitude());
+ map.put("altitude",AppContainer.getArdAppPositionMap().get(sysUserIn.getUserId()).getAltitude());
+ }catch(Exception e){
+ ArdAppPosition ardAppPosition = ardAppPositionMapper.getLastAPPPositionByUserId(sysUserIn.getUserId());
+ map.put("longitude",ardAppPosition.getLongitude());
+ map.put("latitude",ardAppPosition.getLatitude());
+ map.put("altitude",ardAppPosition.getAltitude());
+ }
+ sysUsersOnlineList.add(map);
+ }
+ List<Map<String,Object>> sysUsersOnlineNearList = new ArrayList();//鍦�200绫冲唴
+ for(Map<String,Object> mapOn : sysUsersOnlineList){
+ Double longitude = (Double) mapOn.get("longitude");
+ Double latitude = (Double) mapOn.get("latitude");
+ double distance = GisUtil.getDistance(para.get("longitude"),para.get("latitude"),longitude,latitude);
+ if(distance <= 200){
+ sysUsersOnlineNearList.add(mapOn);
+ }
+ }
+ Map<String,List<Map<String,Object>>> appMap = new HashMap();
+ appMap.put("onlineApp",sysUsersOnlineNearList);
+ for(SysUser sysUserIn : sysUsersResultOffline){
+ Map<String,Object> map = new HashMap();
+ map.put("userId",sysUserIn.getUserId());
+ map.put("deptId",sysUserIn.getDeptId());
+ map.put("userName",sysUserIn.getUserName());
+ map.put("nickName",sysUserIn.getNickName());
+ sysUsersOfflineList.add(map);
+ }
+ appMap.put("offlineApp",sysUsersOfflineList);
+ mapResault.put("app",appMap);
+
+ ArdSyUser ardSyUserPara = new ArdSyUser();
+ ardSyUserPara.setSysUserId(commanderId);
+ List<ArdSyUser> ardSyUserList = ardSyUserMapper.selectArdSyUserList(ardSyUserPara);//鏌ヨ鎸傛帴鐨勪笁涓�璐﹀彿
+
+ String syURL = "";
+ List<SysConfig> sysConfigResult = sysConfigMapper.selectByType("syCarPT");
+ if(sysConfigResult.size() > 0){
+ syURL = sysConfigResult.get(0).getConfigValue();
+ }
+
+ if(ardSyUserList.size() == 0 || syURL.equals("")){
+ List<Map<String,Object>> onlineCar = new ArrayList();
+ List<Map<String,Object>> offlineCar = new ArrayList();
+ Map<String,List<Map<String,Object>>> carMap = new HashMap();
+ carMap.put("onlineCar",onlineCar);
+ carMap.put("offlineCar",offlineCar);
+ mapResault.put("car",carMap);
+ return mapResault;
+ }
+
+ List<String> carIdList = ardSyCarMapper.selectArdSyCarByDeptIds(deptIdList);
+ String carIds = "";
+ for(String carId : carIdList){
+ carIds = carIds + carId + ",";
+ }
+ carIds = carIds.substring(0,carIds.length() - 1);
+ String passwordMd5 = DigestUtils.md5Hex(ardSyUserList.get(0).getPassword());
+ Map<String,Object> syLoginResult = sYClient.logIn(syURL, passwordMd5, ardSyUserList.get(0).getUserId());
+ String sessionId = (String) syLoginResult.get("sessionId");
+ Map<String,Object> carNearPositionResult = sYClient.getCarNearPositionByCarId(syURL, carIds, ardSyUserList.get(0).getUserId(),sessionId);
+ if(((String)carNearPositionResult.get("rspCode")).equals("1")){
+ List<Map<String,Object>> SYCarPositionList = (List<Map<String, Object>>) carNearPositionResult.get("list");
+ //绛涢�夊湪绾�
+ List<Map<String,Object>> onlineSYCarPositionList = SYCarPositionList.stream().filter(map -> ((String)map.get("stateCn")).startsWith("鍦ㄧ嚎")).collect(Collectors.toList());
+ //绛涢��200绫宠寖鍥村唴
+ List<Map<String,Object>> onlineSYCarPositionNearList = new ArrayList();//鍦�200绫冲唴
+ for(Map<String,Object> mapOn : onlineSYCarPositionList){
+ Double longitude = new BigDecimal((String) mapOn.get("lng")).doubleValue();
+ Double latitude = new BigDecimal((String) mapOn.get("lat")).doubleValue();
+ double distance = GisUtil.getDistance(para.get("longitude"),para.get("latitude"),longitude,latitude);
+ if(distance <= 200){
+ mapOn.put("longitude",longitude);
+ mapOn.put("latitude",latitude);
+ onlineSYCarPositionNearList.add(mapOn);
+ }
+ }
+
+ //for(Map<String,Object> sycar : onlineSYCarPositionList){
+ for(Map<String,Object> sycar : onlineSYCarPositionNearList){
+ Map<String,Object> map = ardSyCarMapper.getArdSyCarAndDeptByCarId((String)sycar.get("carId"));
+ String carModel = this.minioEndpoint + "/" + (String) map.get("carModel");
+ map.put("carModel",carModel);
+ sycar.putAll(map);
+ }
+ //绛涢�夌绾�
+ List<Map<String,Object>> offlineSYCarPositionList = SYCarPositionList.stream().filter(map -> ((String)map.get("stateCn")).startsWith("绂荤嚎")).collect(Collectors.toList());
+ for(Map<String,Object> sycar : offlineSYCarPositionList){
+ Map<String,Object> map = ardSyCarMapper.getArdSyCarAndDeptByCarId((String)sycar.get("carId"));
+ String carModel = this.minioEndpoint + "/" + (String) map.get("carModel");
+ map.put("carModel",carModel);
+ sycar.putAll(map);
+ }
+ Map<String,List<Map<String,Object>>> carMap = new HashMap();
+ //carMap.put("onlineCar",onlineSYCarPositionList);
+ carMap.put("onlineCar",onlineSYCarPositionNearList);
+ carMap.put("offlineCar",offlineSYCarPositionList);
+ mapResault.put("car",carMap);
+ }else{
+ List<Map<String,Object>> onlineCar = new ArrayList();
+ List<Map<String,Object>> offlineCar = new ArrayList();
+ Map<String,List<Map<String,Object>>> carMap = new HashMap();
+ carMap.put("onlineCar",onlineCar);
+ carMap.put("offlineCar",offlineCar);
+ mapResault.put("car",carMap);
+ return mapResault;
+ }
+
+ return mapResault;
+ }
+
+ public List<Long> getOwnAndChildrenDeptIdList(List<Long> deptIdList,List<Long> deptIdListr){
+ deptIdListr.addAll(deptIdList);
+ List<Long> result = sysDeptMapper.getChildrenDeptIdList(deptIdList);
+ if(result.size() != 0){
+ deptIdListr.addAll(result);
+ result = getOwnAndChildrenDeptIdList(result,deptIdListr);
+ }
+ deptIdListr = deptIdListr.stream().distinct().collect(Collectors.toList());
+ return deptIdListr;
+ }
}
--
Gitblit v1.9.3