|
|
@@ -6,6 +6,7 @@ import cn.hutool.core.util.ObjectUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.xunmei.common.core.constant.Constants;
|
|
|
+import com.xunmei.common.core.domain.iot.domain.IotServerInfo;
|
|
|
import com.xunmei.common.core.domain.work.domain.IotDayWork;
|
|
|
import com.xunmei.common.core.domain.work.domain.IotDayWorkOperation;
|
|
|
import com.xunmei.common.core.domain.work.dto.ControlDeviceDto;
|
|
|
@@ -24,6 +25,7 @@ import com.xunmei.iot.interfaces.WorkFieldStrategy;
|
|
|
import com.xunmei.iot.mapper.IotDayWorkMapper;
|
|
|
import com.xunmei.iot.service.IotDayWorkOperationService;
|
|
|
import com.xunmei.iot.service.IotDayWorkService;
|
|
|
+import com.xunmei.iot.service.IotServerInfoService;
|
|
|
import com.xunmei.system.api.RemoteHostService;
|
|
|
import com.xunmei.system.api.domain.SysUser;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
@@ -55,16 +57,20 @@ public class IotDayWorkServiceImpl extends ServiceImpl<IotDayWorkMapper, IotDayW
|
|
|
@Resource
|
|
|
RemoteHostService hostService;
|
|
|
|
|
|
+ @Resource
|
|
|
+ IotServerInfoService iotServerInfoService;
|
|
|
+
|
|
|
@Override
|
|
|
public WorkVo getRealWorkData(WorkDayDto workDayDto) {
|
|
|
- List<IotDayWorkOperation> operationList = operationService.getIotDayWorkOperationList();
|
|
|
+ final SysUser sysUser = SecurityUtils.getLoginUser().getSysUser();
|
|
|
+ List<IotDayWorkOperation> operationList = operationService.getIotDayWorkOperationList(sysUser.getOrgId());
|
|
|
/**
|
|
|
* operationList 根据operationType 分组
|
|
|
*/
|
|
|
Map<Integer, List<IotDayWorkOperation>> operMap = operationList.stream().collect(Collectors.groupingBy(IotDayWorkOperation::getOperationType));
|
|
|
|
|
|
WorkVo workVo = new WorkVo();
|
|
|
- final SysUser sysUser = SecurityUtils.getLoginUser().getSysUser();
|
|
|
+
|
|
|
workVo.setOrgName(sysUser.getOrgName());
|
|
|
DateTime dateTime = DateTime.now();
|
|
|
String date = dateTime.toString("yyyy-MM-dd");
|
|
|
@@ -86,15 +92,24 @@ public class IotDayWorkServiceImpl extends ServiceImpl<IotDayWorkMapper, IotDayW
|
|
|
* 1、如果没有操作数据,则直接返回实时状态。
|
|
|
* 2、如果有操作数据,则需要根据操作数据,构建相应的数据。
|
|
|
*/
|
|
|
+ //获取用户机构下的IotToken 站不考虑一个机构多个Token的问题,目前先取第一个
|
|
|
+ List<IotServerInfo> iotServerInfos = iotServerInfoService.selectConnectOrg(false, sysUser.getOrgId(), null);
|
|
|
+
|
|
|
+ if(ObjectUtil.isEmpty(iotServerInfos))
|
|
|
+ {
|
|
|
+ // 说明该机构下没有注册主机
|
|
|
+ throw new RuntimeException("该机构尚未安装巡检主机,暂不支持此功能");
|
|
|
+ }
|
|
|
+ String iotToken=iotServerInfos.get(0).getIotCode();
|
|
|
//处理布撤防数据
|
|
|
WorkFieldStrategy workStrategy = workStrategyFactory.getWorkStrategy(GroupTypeEnum.DEFENSE_TYPE.getNum());
|
|
|
List<WorkFieldDataVo> realWorkData = workStrategy.getRealWorkData(operMap.get(RedirectTypeEnum.DEFENSE_REDIRECT_TYPE.getNum())
|
|
|
- , workDayDto.getDataType());
|
|
|
+ , workDayDto.getDataType(),iotToken);
|
|
|
workVo.setDeploys(realWorkData);
|
|
|
|
|
|
//处理用电数据
|
|
|
workStrategy = workStrategyFactory.getWorkStrategy(GroupTypeEnum.ELECT_TYPE.getNum());
|
|
|
- List<WorkFieldDataVo> eletcs = workStrategy.getRealWorkData(operMap.get(RedirectTypeEnum.ELECT_REDIRECT_TYPE.getNum()), workDayDto.getDataType());
|
|
|
+ List<WorkFieldDataVo> eletcs = workStrategy.getRealWorkData(operMap.get(RedirectTypeEnum.ELECT_REDIRECT_TYPE.getNum()), workDayDto.getDataType(),iotToken);
|
|
|
workVo.setEletcs(eletcs);
|
|
|
return workVo;
|
|
|
}
|