|
@@ -23,11 +23,13 @@ import com.energy.manage.service.domain.vo.excel.WindEngineGroupExcelVo;
|
|
|
import com.energy.manage.service.domain.vo.excel.WindFieldExceVo;
|
|
|
import com.energy.manage.service.domain.vo.windenginegroup.WindEngineGroupPageVo;
|
|
|
import com.energy.manage.service.domain.vo.windenginegroup.WindEngineGroupVo;
|
|
|
+import com.energy.manage.service.domain.vo.windenginemill.WindEngineMillVo;
|
|
|
import com.energy.manage.service.domain.vo.windfield.WindFieldVo;
|
|
|
import com.energy.manage.service.mappers.windenginegroup.WindEngineGroupMapper;
|
|
|
import com.energy.manage.service.service.anemometertower.AnemometerTowerService;
|
|
|
import com.energy.manage.service.service.cache.CacheService;
|
|
|
import com.energy.manage.service.service.windenginegroup.WindEngineGroupService;
|
|
|
+import com.energy.manage.service.service.windenginemill.WindEngineMillService;
|
|
|
import com.energy.manage.service.service.windfield.WindFieldService;
|
|
|
import com.github.pagehelper.PageHelper;
|
|
|
import com.github.pagehelper.PageInfo;
|
|
@@ -65,6 +67,9 @@ public class WindEngineGroupServiceImpl extends BaseServiceImpl<WindEngineGroupP
|
|
|
@Autowired
|
|
|
private WindFieldService windFieldService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private WindEngineMillService windEngineMillService;
|
|
|
+
|
|
|
/**
|
|
|
* 手动创建风机机组信息
|
|
|
*
|
|
@@ -86,7 +91,6 @@ public class WindEngineGroupServiceImpl extends BaseServiceImpl<WindEngineGroupP
|
|
|
if (windEngineGroupMapper.insertUseGeneratedKeys(windEngineGroupPO) <= 0) {
|
|
|
return false;
|
|
|
}
|
|
|
-
|
|
|
// 处理总额定功率
|
|
|
outerLoop:
|
|
|
if (windEngineGroupCreateDto.getRatedCapacity() != null) {
|
|
@@ -103,9 +107,7 @@ public class WindEngineGroupServiceImpl extends BaseServiceImpl<WindEngineGroupP
|
|
|
windFieldUpdateDto.setRatedCapacityNumber(value + windEngineGroupCreateDto.getRatedCapacity().doubleValue());
|
|
|
windFieldService.updateWindField(windFieldUpdateDto);
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
-
|
|
|
return true;
|
|
|
}
|
|
|
|
|
@@ -114,21 +116,40 @@ public class WindEngineGroupServiceImpl extends BaseServiceImpl<WindEngineGroupP
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public ResultResp windEngineGroupImportData(MultipartFile file, String fieldCode) {
|
|
|
- List<WindEngineGroupExcelVo> windEngineGroupExcelVos = EasyExcel.read(file.getInputStream()).head(WindFieldExceVo.class).sheet().doReadSync();
|
|
|
+ List<WindEngineGroupExcelVo> windEngineGroupExcelVos = EasyExcel.read(file.getInputStream()).head(WindEngineGroupExcelVo.class).sheet().doReadSync();
|
|
|
if (CollectionUtils.isEmpty(windEngineGroupExcelVos)) {
|
|
|
return ResultResp.FAIL("未读取到文件数据,请核对数据准确性!");
|
|
|
}
|
|
|
// 过滤空数据
|
|
|
List<WindEngineGroupExcelVo> windFieldExceVoList = windEngineGroupExcelVos.stream().filter(item ->
|
|
|
- !StringUtils.isEmpty(item.getEngineName()) && !StringUtils.isEmpty(item.getMillTypeCode())).collect(Collectors.toList());
|
|
|
+ !StringUtils.isEmpty(item.getEngineName())).collect(Collectors.toList());
|
|
|
|
|
|
// 校验数据非空
|
|
|
for (WindEngineGroupExcelVo exceVo : windFieldExceVoList) {
|
|
|
- if (exceVo.getLongitude() == null || exceVo.getLatitude() == null) {
|
|
|
+ if (exceVo.getLongitude() == null || exceVo.getLatitude() == null||StringUtils.isEmpty(exceVo.getMachineTypeCode())) {
|
|
|
return ResultResp.FAIL("当前导入风机数据未填写经纬度,请核查导入数据!");
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ // 处理机型编号
|
|
|
+ List<String> millTypeCodes = windFieldExceVoList.stream().map(item -> item.getMachineTypeCode()).collect(Collectors.toList());
|
|
|
+ List<WindEngineMillVo> windEngineMillVoList = windEngineMillService.getWindEngineMillListByInMachineTypeCode(millTypeCodes);
|
|
|
+ //校验机型准确性
|
|
|
+ for(WindEngineMillVo windEngineMillVo : windEngineMillVoList){
|
|
|
+ boolean flg = windFieldExceVoList.stream().anyMatch(item -> item.getMachineTypeCode().equals(windEngineMillVo.getMachineTypeCode()));
|
|
|
+ if(!flg){
|
|
|
+ return ResultResp.FAIL("当前导入机型编号系统中不存在,请核查导入数据!");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for(WindEngineGroupExcelVo windEngineGroupExcelVo : windFieldExceVoList){
|
|
|
+ for(WindEngineMillVo windEngineMillVo : windEngineMillVoList){
|
|
|
+ if(windEngineGroupExcelVo.getMachineTypeCode().equals(windEngineMillVo.getMachineTypeCode())){
|
|
|
+ windEngineGroupExcelVo.setMillTypeCode(windEngineMillVo.getMillTypeCode());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
// 数据校验是否有重名风机编号
|
|
|
List<String> engineNamees = windFieldExceVoList.stream().map(item -> item.getEngineName()).collect(Collectors.toList());
|
|
|
Example queryExample = new Example(WindEngineGroupPO.class);
|
|
@@ -152,7 +173,12 @@ public class WindEngineGroupServiceImpl extends BaseServiceImpl<WindEngineGroupP
|
|
|
windEngineGroupPO.setUpdateTime(new Date());
|
|
|
windEngineGroupPO.setState(Constants.GLOBAL_IN_USE);
|
|
|
windEngineGroupPO.setDelState(DeleteStatusEnum.NODELETE.getCode());
|
|
|
-
|
|
|
+ if(windFieldExceVos.getSightcingString().equals("是")){
|
|
|
+ windEngineGroupPO.setSightcing(1);
|
|
|
+ }
|
|
|
+ if(windFieldExceVos.getSightcingString().equals("否")){
|
|
|
+ windEngineGroupPO.setSightcing(2);
|
|
|
+ }
|
|
|
list.add(windEngineGroupPO);
|
|
|
}
|
|
|
if (CollectionUtils.isEmpty(list)) {
|