screen-api/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java
@@ -3,6 +3,7 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.moral.api.entity.Organization; import com.moral.api.entity.SpecialDevice; import com.moral.api.entity.SpecialDeviceHistory; import com.moral.api.mapper.HistorySecondCruiserMapper; @@ -28,6 +29,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.stream.Collectors; /** * <p> @@ -66,11 +68,15 @@ Map<String, Object> userInfo = (Map<String, Object>) TokenUtils.getUserInfo(); Map<String, Object> orgInfo = (Map<String, Object>) userInfo.get("organization"); Integer orgId = (Integer) orgInfo.get("id"); //获取所有子组织 List<Organization> organizations = organizationService.getChildrenOrganizationsById(orgId); List<Integer> orgIds = organizations.stream().map(Organization::getId).collect(Collectors.toList()); orgIds.add(orgId); QueryWrapper<SpecialDeviceHistory> queryWrapper = new QueryWrapper<>(); queryWrapper.select("mac", "name") .eq("organization_id", orgId) .eq("special_type", Constants.SPECIAL_DEVICE_CRUISER) .eq("is_delete", Constants.NOT_DELETE); .eq("is_delete", Constants.NOT_DELETE) .in("organization_id", orgIds); return specialDeviceHistoryService.listMaps(queryWrapper); } screen-api/src/main/java/com/moral/api/service/impl/SysAreaServiceImpl.java
@@ -3,9 +3,11 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.moral.api.entity.Menu; import com.moral.api.entity.MonitorPoint; import com.moral.api.entity.Organization; import com.moral.api.entity.SysArea; import com.moral.api.mapper.MonitorPointMapper; import com.moral.api.mapper.SysAreaMapper; import com.moral.api.service.OrganizationService; import com.moral.api.service.SysAreaService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.moral.constant.Constants; @@ -39,12 +41,20 @@ @Autowired private MonitorPointMapper monitorPointMapper; @Autowired private OrganizationService organizationService; @Override public List<Map<String, Object>> getMapPath(Integer orgId) { //获取组织下所有子组织 List<Organization> organizations = organizationService.getChildrenOrganizationsById(orgId); List<Integer> orgIds = organizations.stream().map(Organization::getId).collect(Collectors.toList()); orgIds.add(orgId); QueryWrapper<MonitorPoint> queryWrapper = new QueryWrapper<>(); queryWrapper.select("province_code", "city_code", "area_code") .eq("organization_id", orgId) .eq("is_delete", Constants.NOT_DELETE); .eq("is_delete", Constants.NOT_DELETE) .in("organization_id", orgIds); //根据组织id查询所有站点 List<MonitorPoint> monitorPoints = monitorPointMapper.selectList(queryWrapper); Set<Integer> cityCodes = new HashSet<>(); screen-manage/src/main/java/com/moral/api/service/OrganizationService.java
@@ -1,5 +1,7 @@ package com.moral.api.service; import java.util.List; import com.moral.api.entity.Organization; import com.baomidou.mybatisplus.extension.service.IService; import com.moral.api.pojo.dto.organization.OrganizationDTO; @@ -53,7 +55,6 @@ OrganizationQueryDTO queryOrganization(OrganizationQueryForm organizationQueryForm); /** * @Description: 根据条件查询组织 * @Param: [form] @@ -63,5 +64,12 @@ */ OrganizationQueryNamesDTO queryNames(OrganizationQueryNamesForm form); /** * @Description: 根据父组织获取所有子组织 * @Param: [] * @return: java.util.List<com.moral.api.entity.Organization> * @Author: 陈凯裕 * @Date: 2021/4/14 */ List<Organization> getAllChildrenOrganization(Integer parentId); } screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java
@@ -12,6 +12,7 @@ import com.moral.api.service.DeviceService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.moral.api.service.OrganizationService; import com.moral.api.service.SysDictDataService; import com.moral.api.util.CacheUtils; import com.moral.api.util.AdjustDataUtils; @@ -39,6 +40,7 @@ import java.util.List; import java.util.Map; import java.util.Objects; import java.util.stream.Collectors; import javax.servlet.http.HttpServletRequest; @@ -92,6 +94,9 @@ @Autowired private AdjustDataUtils adjustDataUtils; @Autowired private OrganizationService organizationService; /* * 从redis获取设备信息 @@ -242,8 +247,14 @@ @Override public List<Map<String, Object>> selectMonitorsByOrgId(Integer orgId) { //获取所有子组织 List<Organization> organizations = organizationService.getAllChildrenOrganization(orgId); List<Integer> orgIds = organizations.stream().map(Organization::getId).collect(Collectors.toList()); orgIds.add(orgId); QueryWrapper<MonitorPoint> queryWrapper = new QueryWrapper<>(); queryWrapper.select("id", "name").eq("organization_id", orgId).eq("is_delete", Constants.NOT_DELETE); queryWrapper.select("id", "name") .eq("is_delete", Constants.NOT_DELETE) .in("organization_id", orgIds); return monitorPointMapper.selectMaps(queryWrapper); } @@ -269,9 +280,13 @@ Object orgId = parameters.get("organizationId"); Object mpId = parameters.get("monitorPointId"); //查询某组织下所有设备 //查询某组织下所有设备,包括子组织 if (orgId != null) { queryWrapper.eq("organization_id", orgId); //查询所有子组织 List<Organization> organizations = organizationService.getAllChildrenOrganization(Integer.parseInt(orgId.toString())); List<Integer> orgIds = organizations.stream().map(Organization::getId).collect(Collectors.toList()); orgIds.add(Integer.parseInt(orgId.toString())); queryWrapper.in("organization_id", orgIds); } //查询某站点下所有设备 screen-manage/src/main/java/com/moral/api/service/impl/OrganizationServiceImpl.java
@@ -1,7 +1,5 @@ package com.moral.api.service.impl; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -9,7 +7,6 @@ import com.moral.api.entity.MonitorPoint; import com.moral.api.entity.Organization; import com.moral.api.entity.User; import com.moral.api.mapper.MonitorPointMapper; import com.moral.api.mapper.OrganizationMapper; import com.moral.api.mapper.UserMapper; import com.moral.api.pojo.dto.organization.OrganizationDTO; @@ -27,17 +24,12 @@ import com.moral.pojo.CompareFieldResult; import com.moral.util.ConvertUtils; import com.moral.util.DateUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.ObjectUtils; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; import javax.servlet.http.HttpServletRequest; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.*; import java.util.function.Predicate; @@ -147,7 +139,6 @@ return organizationDTO; } /** @@ -393,7 +384,8 @@ * @Author: 陈凯裕 * @Date: 2021/4/14 */ private List<Organization> getAllChildrenOrganization(Integer parentId) { @Override public List<Organization> getAllChildrenOrganization(Integer parentId) { List<Organization> children = new ArrayList<>(); recursionQueryChildren(parentId, children); return children; @@ -483,6 +475,5 @@ String content = CompareFieldUtils.resultsConvertContent(results, "修改了组织;组织名称:"+oldOrganization.getName()); logUtils.saveOperationForManage(content, Constants.UPDATE_OPERATE_TYPE); } }