|
|
@@ -8,12 +8,15 @@ import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy
|
|
|
import com.alibaba.fastjson2.JSON;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
+import com.xunmei.common.core.constant.CacheConstants;
|
|
|
import com.xunmei.common.core.constant.DictConstants;
|
|
|
import com.xunmei.common.core.constant.SecurityConstants;
|
|
|
import com.xunmei.common.core.domain.iot.domain.IotSensor;
|
|
|
+import com.xunmei.common.core.enums.OrgTypeEnum;
|
|
|
import com.xunmei.common.core.exception.ServiceException;
|
|
|
import com.xunmei.common.core.utils.bean.BeanUtils;
|
|
|
import com.xunmei.common.core.web.page.TableDataInfo;
|
|
|
+import com.xunmei.common.redis.utils.RedisUtils;
|
|
|
import com.xunmei.common.security.utils.DictUtils;
|
|
|
import com.xunmei.iot.dto.sensor.SensorAppPageDto;
|
|
|
import com.xunmei.iot.vo.sensor.SensorAppStateVo;
|
|
|
@@ -28,6 +31,7 @@ import com.xunmei.iot.vo.sensor.SensorExportVo;
|
|
|
import com.xunmei.iot.vo.sensor.SensorPageVo;
|
|
|
import com.xunmei.system.api.RemoteOrgService;
|
|
|
import com.xunmei.system.api.domain.SysOrg;
|
|
|
+import com.xunmei.system.api.vo.SysOrgVO;
|
|
|
import io.netty.util.internal.StringUtil;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
@@ -35,8 +39,10 @@ import javax.annotation.Resource;
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
import java.net.URLEncoder;
|
|
|
import java.util.ArrayList;
|
|
|
+import java.util.Arrays;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* <p>
|
|
|
@@ -63,8 +69,15 @@ public class IotCommonSensorServiceImpl extends ServiceImpl<IotCommonSensorMappe
|
|
|
dealPageParam(request);
|
|
|
|
|
|
Page<SensorPageVo> page = sensorMapper.selectPageData(request.getPageRequest(), request);
|
|
|
+ final List<SysOrgVO> cacheList = RedisUtils.getCacheList(CacheConstants.ORG_CACHE_LIST_KEY);
|
|
|
+
|
|
|
for (SensorPageVo record : page.getRecords()) {
|
|
|
final String info = record.getInfo();
|
|
|
+ final List<Long> collect = Arrays.stream(record.getOrgPath().split("-")).map(Long::parseLong).collect(Collectors.toList());
|
|
|
+ //地区名称
|
|
|
+ cacheList.stream().filter(org->collect.contains(org.getId())&&OrgTypeEnum.DIQU_HANG_SHE.getCode().equals(org.getType())).findFirst().ifPresent(org->record.setFirstOrgName(org.getShortName()));
|
|
|
+ //行社名称
|
|
|
+ cacheList.stream().filter(org->collect.contains(org.getId())&&OrgTypeEnum.HANG_SHE.getCode().equals(org.getType())).findFirst().ifPresent(org->record.setSecondOrgName(org.getShortName()));
|
|
|
record.setInfo(dealInfoData(info));
|
|
|
record.setDeviceType(DictUtils.getDictLabel(DictConstants.SENSOR_DEVICE_TYPE, Integer.parseInt(record.getDeviceType())));
|
|
|
record.setStateText(DictUtils.getDictLabel(DictConstants.SENSOR_ALARM_STATUS, record.getState()));
|