|
@@ -1,23 +1,26 @@
|
|
|
package com.ruoyi.gas.service.impl;
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
-import com.ruoyi.common.utils.StringUtils;
|
|
|
-import com.ruoyi.common.utils.PageUtils;
|
|
|
-import com.ruoyi.common.core.page.PagePlus;
|
|
|
-import com.ruoyi.common.core.page.TableDataInfo;
|
|
|
-import org.springframework.stereotype.Service;
|
|
|
-import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
+import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
|
|
|
+import com.ruoyi.common.core.page.PagePlus;
|
|
|
+import com.ruoyi.common.core.page.TableDataInfo;
|
|
|
+import com.ruoyi.common.exception.ServiceException;
|
|
|
+import com.ruoyi.common.utils.PageUtils;
|
|
|
+import com.ruoyi.common.utils.StringUtils;
|
|
|
+import com.ruoyi.gas.domain.GValveWellPosition;
|
|
|
import com.ruoyi.gas.domain.bo.GValveWellPositionBo;
|
|
|
import com.ruoyi.gas.domain.vo.GValveWellPositionVo;
|
|
|
-import com.ruoyi.gas.domain.GValveWellPosition;
|
|
|
+import com.ruoyi.gas.domain.vo.GWellPositionImportVo;
|
|
|
import com.ruoyi.gas.mapper.GValveWellPositionMapper;
|
|
|
import com.ruoyi.gas.service.IGValveWellPositionService;
|
|
|
+import com.ruoyi.system.mapper.SysDictDataMapper;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.util.ObjectUtils;
|
|
|
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-import java.util.Collection;
|
|
|
+import javax.annotation.Resource;
|
|
|
+import java.util.*;
|
|
|
|
|
|
/**
|
|
|
* 阀井位置Service业务层处理
|
|
@@ -27,9 +30,52 @@ import java.util.Collection;
|
|
|
*/
|
|
|
@Service
|
|
|
public class GValveWellPositionServiceImpl extends ServicePlusImpl<GValveWellPositionMapper, GValveWellPosition, GValveWellPositionVo> implements IGValveWellPositionService {
|
|
|
+ @Resource
|
|
|
+ private SysDictDataMapper sysDictDataMapper;
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Map<String, Object> forImportData(List<GWellPositionImportVo> list, Boolean isUpdateSupport, String operName, int n, int successNum) {
|
|
|
+ if (ObjectUtils.isEmpty(list) || list.size() == 0) {
|
|
|
+ throw new ServiceException("导入数据不能为空!");
|
|
|
+ }
|
|
|
+ Map<String, Object> ret = new HashMap<>();
|
|
|
+ StringBuilder successMsg = new StringBuilder();
|
|
|
+ for (int i = n; i < list.size(); i++) {
|
|
|
+ GWellPositionImportVo vo = list.get(i);
|
|
|
+ String districtValue = sysDictDataMapper.queryValueTextByKey("district", vo.getDistrict());
|
|
|
+ if (StringUtils.isBlank(districtValue)) {
|
|
|
+ throw new ServiceException("第" + (n + 1) + "行行政区填写错误,导入失败!");
|
|
|
+ }
|
|
|
+ vo.setDistrict(districtValue);
|
|
|
+ try {
|
|
|
+ n++;
|
|
|
+ GValveWellPosition bean = BeanUtil.toBean(vo, GValveWellPosition.class);
|
|
|
+ boolean save = save(bean);
|
|
|
+ if (!save) {
|
|
|
+ throw new ServiceException( "第" + (n + 1) + "行格式错误,导入失败!");
|
|
|
+ }
|
|
|
+ successNum++;
|
|
|
+ ret.put("bfb", String.format("%.2f", (Double.valueOf((n + 1)) / Double.valueOf(list.size())) * 100));
|
|
|
+ ret.put("n", n);
|
|
|
+ ret.put("is_success", true);
|
|
|
+ ret.put("successMsg", "");
|
|
|
+ ret.put("successNum", successNum);
|
|
|
+ return ret;
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ throw new ServiceException("" + "第" + (n + 1) + "行格式错误,导入失败!");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ successMsg.insert(0, "恭喜您,数据已全部导入成功!共 " + successNum + " 条");
|
|
|
+ ret.put("bfb", String.format("%.2f", (Double.valueOf((n + 1)) / Double.valueOf(list.size())) * 100));
|
|
|
+ ret.put("n", n);
|
|
|
+ ret.put("is_success", false);
|
|
|
+ ret.put("successMsg", successMsg.toString());
|
|
|
+ return ret;
|
|
|
+ }
|
|
|
|
|
|
@Override
|
|
|
- public GValveWellPositionVo queryById(Long id){
|
|
|
+ public GValveWellPositionVo queryById(Long id) {
|
|
|
return getVoById(id);
|
|
|
}
|
|
|
|
|
@@ -77,13 +123,13 @@ public class GValveWellPositionServiceImpl extends ServicePlusImpl<GValveWellPos
|
|
|
*
|
|
|
* @param entity 实体类数据
|
|
|
*/
|
|
|
- private void validEntityBeforeSave(GValveWellPosition entity){
|
|
|
+ private void validEntityBeforeSave(GValveWellPosition entity) {
|
|
|
//TODO 做一些数据校验,如唯一约束
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
|
|
- if(isValid){
|
|
|
+ if (isValid) {
|
|
|
//TODO 做一些业务上的校验,判断是否需要校验
|
|
|
}
|
|
|
return removeByIds(ids);
|