|
@@ -46,6 +46,7 @@ import tk.mybatis.mapper.entity.Example;
|
|
|
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
+import java.util.Set;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
@@ -121,27 +122,33 @@ public class WindEngineGroupServiceImpl extends BaseServiceImpl<WindEngineGroupP
|
|
|
return ResultResp.FAIL("未读取到文件数据,请核对数据准确性!");
|
|
|
}
|
|
|
// 过滤空数据
|
|
|
- List<WindEngineGroupExcelVo> windFieldExceVoList = windEngineGroupExcelVos.stream().filter(item ->
|
|
|
+ List<WindEngineGroupExcelVo> windEngineGroupExceVoList = windEngineGroupExcelVos.stream().filter(item ->
|
|
|
!StringUtils.isEmpty(item.getEngineName())).collect(Collectors.toList());
|
|
|
|
|
|
// 校验数据非空
|
|
|
- for (WindEngineGroupExcelVo exceVo : windFieldExceVoList) {
|
|
|
+ for (WindEngineGroupExcelVo exceVo : windEngineGroupExceVoList) {
|
|
|
if (exceVo.getLongitude() == null || exceVo.getLatitude() == null||StringUtils.isEmpty(exceVo.getMachineTypeCode())) {
|
|
|
return ResultResp.FAIL("当前导入风机数据未填写经纬度,请核查导入数据!");
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ // 校验是否有重复的风机编号
|
|
|
+ Set<String> engineNames = windEngineGroupExceVoList.stream().map(item -> item.getEngineName()).collect(Collectors.toSet());
|
|
|
+ if(windEngineGroupExceVoList.size()!=engineNames.size()){
|
|
|
+ return ResultResp.FAIL("当前导入风机数据有重复风机编号,请核查导入数据!");
|
|
|
+ }
|
|
|
+
|
|
|
// 处理机型编号
|
|
|
- List<String> millTypeCodes = windFieldExceVoList.stream().map(item -> item.getMachineTypeCode()).collect(Collectors.toList());
|
|
|
+ List<String> millTypeCodes = windEngineGroupExceVoList.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()));
|
|
|
+ for(String millTypeCode : millTypeCodes){
|
|
|
+ boolean flg = windEngineMillVoList.stream().anyMatch(item -> item.getMachineTypeCode().equals(millTypeCode));
|
|
|
if(!flg){
|
|
|
return ResultResp.FAIL("当前导入机型编号系统中不存在,请核查导入数据!");
|
|
|
}
|
|
|
}
|
|
|
- for(WindEngineGroupExcelVo windEngineGroupExcelVo : windFieldExceVoList){
|
|
|
+ for(WindEngineGroupExcelVo windEngineGroupExcelVo : windEngineGroupExceVoList){
|
|
|
for(WindEngineMillVo windEngineMillVo : windEngineMillVoList){
|
|
|
if(windEngineGroupExcelVo.getMachineTypeCode().equals(windEngineMillVo.getMachineTypeCode())){
|
|
|
windEngineGroupExcelVo.setMillTypeCode(windEngineMillVo.getMillTypeCode());
|
|
@@ -150,7 +157,7 @@ public class WindEngineGroupServiceImpl extends BaseServiceImpl<WindEngineGroupP
|
|
|
}
|
|
|
|
|
|
// 数据校验是否有重名风机编号
|
|
|
- List<String> engineNamees = windFieldExceVoList.stream().map(item -> item.getEngineName()).collect(Collectors.toList());
|
|
|
+ List<String> engineNamees = windEngineGroupExceVoList.stream().map(item -> item.getEngineName()).collect(Collectors.toList());
|
|
|
Example queryExample = new Example(WindEngineGroupPO.class);
|
|
|
Example.Criteria criteria = queryExample.createCriteria();
|
|
|
criteria.andIn("engineName", engineNamees);
|
|
@@ -162,7 +169,7 @@ public class WindEngineGroupServiceImpl extends BaseServiceImpl<WindEngineGroupP
|
|
|
|
|
|
WindEngineGroupPO windEngineGroupPO = null;
|
|
|
List<WindEngineGroupPO> list = Lists.newArrayList();
|
|
|
- for (WindEngineGroupExcelVo windFieldExceVos : windFieldExceVoList) {
|
|
|
+ for (WindEngineGroupExcelVo windFieldExceVos : windEngineGroupExceVoList) {
|
|
|
windEngineGroupPO = new WindEngineGroupPO();
|
|
|
BeanUtil.copyProperties(windFieldExceVos, windEngineGroupPO);
|
|
|
String number = IdPrefixEnum.WIND_GROUP_NUMBER.getCode().concat(IdGeneratorUtil.zeroFillUtil(cacheService.incr(ManagerRedisKeyConstant.build(ManagerRedisKeyConstant.IDGENERATOR_CONSTANTS_KEY, IdPrefixEnum.WIND_GROUP_NUMBER.getCode()))));
|