|
|
@@ -11,18 +11,15 @@ import com.energy.manage.common.enums.DeleteStatusEnum;
|
|
|
import com.energy.manage.common.enums.IdPrefixEnum;
|
|
|
import com.energy.manage.common.po.windenginegroup.WindEngineGroupPO;
|
|
|
import com.energy.manage.common.po.windenginemill.WindEngineMillPO;
|
|
|
-import com.energy.manage.common.po.windfield.WindFieldPO;
|
|
|
+import com.energy.manage.common.reponse.ResultResp;
|
|
|
import com.energy.manage.common.util.IdGeneratorUtil;
|
|
|
import com.energy.manage.service.domain.dto.windenginegroup.*;
|
|
|
import com.energy.manage.service.domain.dto.windfield.WindFieldCodeDto;
|
|
|
-import com.energy.manage.service.domain.dto.windfield.WindFieldImportDataDto;
|
|
|
import com.energy.manage.service.domain.dto.windfield.WindFieldUpdateDto;
|
|
|
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.WindEngineMillPageVo;
|
|
|
-import com.energy.manage.service.domain.vo.windfield.WindFieldPageVo;
|
|
|
import com.energy.manage.service.domain.vo.windfield.WindFieldVo;
|
|
|
import com.energy.manage.service.mappers.windenginegroup.WindEngineGroupMapper;
|
|
|
import com.energy.manage.service.service.cache.CacheService;
|
|
|
@@ -33,6 +30,7 @@ import com.github.pagehelper.PageInfo;
|
|
|
import com.google.common.collect.Lists;
|
|
|
import lombok.SneakyThrows;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
@@ -40,9 +38,9 @@ import org.springframework.util.CollectionUtils;
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
import tk.mybatis.mapper.entity.Example;
|
|
|
|
|
|
-import java.math.BigDecimal;
|
|
|
import java.util.Date;
|
|
|
import java.util.List;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
@Slf4j
|
|
|
@@ -108,51 +106,50 @@ public class WindEngineGroupServiceImpl extends BaseServiceImpl<WindEngineGroupP
|
|
|
@SneakyThrows
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
- public boolean windEngineGroupImportData(MultipartFile file, String fieldCode) {
|
|
|
+ public ResultResp windEngineGroupImportData(MultipartFile file, String fieldCode) {
|
|
|
List<WindEngineGroupExcelVo> windEngineGroupExcelVos = EasyExcel.read(file.getInputStream()).head(WindFieldExceVo.class).sheet().doReadSync();
|
|
|
if (CollectionUtils.isEmpty(windEngineGroupExcelVos)) {
|
|
|
- return false;
|
|
|
+ return ResultResp.FAIL("未读取到文件数据,请核对数据准确性!");
|
|
|
+ }
|
|
|
+ // 过滤空数据
|
|
|
+ List<WindEngineGroupExcelVo> windFieldExceVoList = windEngineGroupExcelVos.stream().filter(item ->
|
|
|
+ !StringUtils.isEmpty(item.getEngineName())&&!StringUtils.isEmpty(item.getMillTypeCode())).collect(Collectors.toList());
|
|
|
+
|
|
|
+ // 校验数据非空
|
|
|
+ for (WindEngineGroupExcelVo exceVo : windFieldExceVoList) {
|
|
|
+ if (exceVo.getLongitude() == null || exceVo.getLatitude() == null) {
|
|
|
+ return ResultResp.FAIL("当前导入风机数据未填写经纬度,请核查导入数据!");
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
WindEngineGroupPO windEngineGroupPO = null;
|
|
|
List<WindEngineGroupPO> list = Lists.newArrayList();
|
|
|
-
|
|
|
- for (WindEngineGroupExcelVo windFieldExceVos : windEngineGroupExcelVos) {
|
|
|
- windEngineGroupPO = this.createWindEngineGroupPO(fieldCode);
|
|
|
+ for (WindEngineGroupExcelVo windFieldExceVos : windFieldExceVoList) {
|
|
|
+ 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()))));
|
|
|
+ windEngineGroupPO.setEngineCode(number);
|
|
|
+ windEngineGroupPO.setFieldCode(fieldCode);
|
|
|
+ windEngineGroupPO.setCreateTime(new Date());
|
|
|
+ windEngineGroupPO.setUpdateTime(new Date());
|
|
|
+ windEngineGroupPO.setState(Constants.GLOBAL_IN_USE);
|
|
|
+ windEngineGroupPO.setDelState(DeleteStatusEnum.NODELETE.getCode());
|
|
|
+
|
|
|
list.add(windEngineGroupPO);
|
|
|
}
|
|
|
if (CollectionUtils.isEmpty(list)) {
|
|
|
- return false;
|
|
|
+ return ResultResp.FAIL("数据处理异常!");
|
|
|
}
|
|
|
- return windEngineGroupMapper.insertList(list) > 0;
|
|
|
- }
|
|
|
-
|
|
|
- @Override
|
|
|
- public boolean afreshWindEngineGroupImportData(MultipartFile file, String fieldCode) {
|
|
|
- // 删除企业下所有风场
|
|
|
- if (!delFieldWindEngineGroup(fieldCode)) {
|
|
|
- return false;
|
|
|
+ if (windEngineGroupMapper.insertList(list) <= 0) {
|
|
|
+ return ResultResp.FAIL();
|
|
|
}
|
|
|
- return windEngineGroupImportData(file, fieldCode);
|
|
|
+ return ResultResp.SUCCESS();
|
|
|
}
|
|
|
|
|
|
- /**
|
|
|
- * 创建对象
|
|
|
- *
|
|
|
- * @param fieldCode
|
|
|
- * @return
|
|
|
- */
|
|
|
- private WindEngineGroupPO createWindEngineGroupPO(String fieldCode) {
|
|
|
- WindEngineGroupPO windEngineGroupPO = new WindEngineGroupPO();
|
|
|
- String number = IdPrefixEnum.WIND_GROUP_NUMBER.getCode().concat(IdGeneratorUtil.zeroFillUtil(cacheService.incr(ManagerRedisKeyConstant.build(ManagerRedisKeyConstant.IDGENERATOR_CONSTANTS_KEY, IdPrefixEnum.WIND_GROUP_NUMBER.getCode()))));
|
|
|
- windEngineGroupPO.setEngineCode(number);
|
|
|
- windEngineGroupPO.setFieldCode(fieldCode);
|
|
|
- windEngineGroupPO.setCreateTime(new Date());
|
|
|
- windEngineGroupPO.setUpdateTime(new Date());
|
|
|
- windEngineGroupPO.setState(Constants.GLOBAL_IN_USE);
|
|
|
- windEngineGroupPO.setDelState(DeleteStatusEnum.NODELETE.getCode());
|
|
|
- return windEngineGroupPO;
|
|
|
- }
|
|
|
|
|
|
|
|
|
@Override
|