|
@@ -1,9 +1,9 @@
|
|
package com.xy.service;
|
|
package com.xy.service;
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
import cn.hutool.core.collection.CollUtil;
|
|
-import cn.hutool.core.map.MapUtil;
|
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
@@ -12,14 +12,15 @@ import com.xy.collections.map.JMap;
|
|
import com.xy.consts.CommConsts;
|
|
import com.xy.consts.CommConsts;
|
|
import com.xy.dto.DeviceFaultInfoDto;
|
|
import com.xy.dto.DeviceFaultInfoDto;
|
|
import com.xy.dto.DeviceFaultInfoFlowDto;
|
|
import com.xy.dto.DeviceFaultInfoFlowDto;
|
|
-import com.xy.dto.SysCodeConfigureDto;
|
|
|
|
import com.xy.dto.SysWorkUser.ListDto;
|
|
import com.xy.dto.SysWorkUser.ListDto;
|
|
import com.xy.dto.SysWorkUser.SysWorkVo;
|
|
import com.xy.dto.SysWorkUser.SysWorkVo;
|
|
import com.xy.dto.be.MercDto;
|
|
import com.xy.dto.be.MercDto;
|
|
import com.xy.entity.DeviceFaultInfo;
|
|
import com.xy.entity.DeviceFaultInfo;
|
|
import com.xy.entity.DeviceFaultLog;
|
|
import com.xy.entity.DeviceFaultLog;
|
|
import com.xy.entity.DeviceInfo;
|
|
import com.xy.entity.DeviceInfo;
|
|
|
|
+import com.xy.entity.SysCodeConfigureRedis;
|
|
import com.xy.error.CommRuntimeException;
|
|
import com.xy.error.CommRuntimeException;
|
|
|
|
+import com.xy.mapper.DeviceDataMapper;
|
|
import com.xy.mapper.DeviceFaultInfoMapper;
|
|
import com.xy.mapper.DeviceFaultInfoMapper;
|
|
import com.xy.service.be.MercService;
|
|
import com.xy.service.be.MercService;
|
|
import com.xy.utils.*;
|
|
import com.xy.utils.*;
|
|
@@ -32,11 +33,8 @@ import org.springframework.validation.annotation.Validated;
|
|
import org.springframework.web.bind.annotation.PostMapping;
|
|
import org.springframework.web.bind.annotation.PostMapping;
|
|
import org.springframework.web.bind.annotation.RequestBody;
|
|
import org.springframework.web.bind.annotation.RequestBody;
|
|
|
|
|
|
-import javax.servlet.http.HttpServletRequest;
|
|
|
|
import java.time.LocalDateTime;
|
|
import java.time.LocalDateTime;
|
|
-import java.util.ArrayList;
|
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
-import java.util.Map;
|
|
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
import static com.xy.utils.Beans.copy;
|
|
import static com.xy.utils.Beans.copy;
|
|
@@ -62,8 +60,27 @@ public class DeviceFaultInfoServiceImpl extends ServiceImpl<DeviceFaultInfoMappe
|
|
private final DeviceInfoServiceImpl deviceInfoService;
|
|
private final DeviceInfoServiceImpl deviceInfoService;
|
|
private final DeviceFaultInfoFlowServiceImpl deviceFaultInfoFlowService;
|
|
private final DeviceFaultInfoFlowServiceImpl deviceFaultInfoFlowService;
|
|
private final SysWorkUserService sysWorkUserService;
|
|
private final SysWorkUserService sysWorkUserService;
|
|
- private final SysCodeConfigureService sysCodeConfigureService;
|
|
|
|
|
|
+ private final DeviceDataMapper deviceDataMapper;
|
|
|
|
|
|
|
|
+ @PostMapping("countToDo")
|
|
|
|
+ @ApiOperation("待处理设备故障统计")
|
|
|
|
+ public R<Long> countToDo() {
|
|
|
|
+ long count = count(Wrappers.<DeviceFaultInfo>lambdaQuery().eq(DeviceFaultInfo::getState, 0));
|
|
|
|
+ return R.ok(count);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @PostMapping("countByDevice")
|
|
|
|
+ @ApiOperation("按故障类型统计设备数")
|
|
|
|
+ public R<List<DeviceFaultInfoDto.CountByDeviceVO>> countByDevice() {
|
|
|
|
+ List<DeviceFaultInfoDto.CountByDeviceVO> list = deviceDataMapper.deviceFaultInfoCount();
|
|
|
|
+ list.forEach(d->{
|
|
|
|
+ SysCodeConfigureRedis s = SysCodeConfigureUtils.get(d.getEventCode());
|
|
|
|
+ if(s!=null){
|
|
|
|
+ d.setEventName(s.getTitle());
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ return R.ok(list);
|
|
|
|
+ }
|
|
@PostMapping("obj")
|
|
@PostMapping("obj")
|
|
@ApiOperation("对象查询")
|
|
@ApiOperation("对象查询")
|
|
public R<DeviceFaultInfoDto.Vo> obj(@RequestBody DeviceFaultInfoDto.Vo vo) {
|
|
public R<DeviceFaultInfoDto.Vo> obj(@RequestBody DeviceFaultInfoDto.Vo vo) {
|
|
@@ -85,7 +102,7 @@ public class DeviceFaultInfoServiceImpl extends ServiceImpl<DeviceFaultInfoMappe
|
|
|
|
|
|
@PostMapping("page")
|
|
@PostMapping("page")
|
|
@ApiOperation("分页查询")
|
|
@ApiOperation("分页查询")
|
|
- public R<PageBean<DeviceFaultInfoDto.Vo>> page(@RequestBody DeviceFaultInfoDto.Page page, HttpServletRequest request) {
|
|
|
|
|
|
+ public R<PageBean<DeviceFaultInfoDto.Vo>> page(@RequestBody DeviceFaultInfoDto.Page page) {
|
|
PageBean pageBean = page.getPage();
|
|
PageBean pageBean = page.getPage();
|
|
LocalDateTime beginTime = page.getBeginCreateTime();
|
|
LocalDateTime beginTime = page.getBeginCreateTime();
|
|
LocalDateTime endTime = page.getEndCreateTime();
|
|
LocalDateTime endTime = page.getEndCreateTime();
|
|
@@ -106,29 +123,14 @@ public class DeviceFaultInfoServiceImpl extends ServiceImpl<DeviceFaultInfoMappe
|
|
List<DeviceFaultInfoDto.Vo> records = data.getRecords();
|
|
List<DeviceFaultInfoDto.Vo> records = data.getRecords();
|
|
if (CollUtil.isNotEmpty(records)) {
|
|
if (CollUtil.isNotEmpty(records)) {
|
|
List<Long> mercIds = records.stream().map(DeviceFaultInfoDto.Vo::getMercId).distinct().collect(Collectors.toList());
|
|
List<Long> mercIds = records.stream().map(DeviceFaultInfoDto.Vo::getMercId).distinct().collect(Collectors.toList());
|
|
- List<String> codes = records.stream().map(DeviceFaultInfoDto.Vo::getEventCode).distinct().collect(Collectors.toList());
|
|
|
|
- SysCodeConfigureDto.SelectList selectList = new SysCodeConfigureDto.SelectList();
|
|
|
|
- selectList.setCodes(codes);
|
|
|
|
- List<SysCodeConfigureDto.Vo> vos = R.feignCheckData(sysCodeConfigureService.list(selectList));
|
|
|
|
- Map<String, SysCodeConfigureDto.Vo> sysCodeMap = MapUtil.newHashMap();
|
|
|
|
- if(CollUtil.isNotEmpty(vos)){
|
|
|
|
- sysCodeMap = vos.stream().collect(Collectors.toMap(SysCodeConfigureDto.Vo::getCode, i -> i));
|
|
|
|
- }
|
|
|
|
List<MercDto.Vo> mercs = mercService.list(new MercDto.SelectList().setMercIds(mercIds)).getData();
|
|
List<MercDto.Vo> mercs = mercService.list(new MercDto.SelectList().setMercIds(mercIds)).getData();
|
|
JMap<Long, MercDto.Vo> longVoJMap = new JArrayList<>(mercs).toMap(MercDto.Vo::getId).cover();
|
|
JMap<Long, MercDto.Vo> longVoJMap = new JArrayList<>(mercs).toMap(MercDto.Vo::getId).cover();
|
|
- for (DeviceFaultInfoDto.Vo r : records) {
|
|
|
|
|
|
+ records.forEach(r -> {
|
|
Long mercId = r.getMercId();
|
|
Long mercId = r.getMercId();
|
|
if (longVoJMap.get(mercId) != null) {
|
|
if (longVoJMap.get(mercId) != null) {
|
|
r.setMercName(longVoJMap.get(mercId).getName());
|
|
r.setMercName(longVoJMap.get(mercId).getName());
|
|
}
|
|
}
|
|
- SysCodeConfigureDto.Vo sysCodeInfo = sysCodeMap.get(r.getEventCode());
|
|
|
|
- //故障说明与建议
|
|
|
|
- if (sysCodeInfo != null) {
|
|
|
|
- r.setMsg(sysCodeInfo.getMsg());
|
|
|
|
- r.setPropose(sysCodeInfo.getPropose());
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
|
|
+ });
|
|
data.setRecords(records);
|
|
data.setRecords(records);
|
|
}
|
|
}
|
|
|
|
|