Commit 9d2266cbdaf3f672174c13726decafed3dfb10a0

Authored by 陈威
1 parent 1df383b5
Exists in dev

1:关于批量数据处理的,加名字全称匹配

zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/controller/McBasicCmtyController.java
@@ -14,6 +14,7 @@ import com.chinagas.common.security.enums.Logical; @@ -14,6 +14,7 @@ import com.chinagas.common.security.enums.Logical;
14 import com.chinagas.modules.schsf.domain.McBasicCmty; 14 import com.chinagas.modules.schsf.domain.McBasicCmty;
15 import com.chinagas.modules.schsf.domain.dto.CompanyDto; 15 import com.chinagas.modules.schsf.domain.dto.CompanyDto;
16 import com.chinagas.modules.schsf.domain.vo.McBasicCmtyVo; 16 import com.chinagas.modules.schsf.domain.vo.McBasicCmtyVo;
  17 +import com.chinagas.modules.schsf.service.ICommonService;
17 import com.chinagas.modules.schsf.service.IMcBasicCmtyService; 18 import com.chinagas.modules.schsf.service.IMcBasicCmtyService;
18 import com.chinagas.modules.schsf.utils.listener.McBasicCmtyImportInspection; 19 import com.chinagas.modules.schsf.utils.listener.McBasicCmtyImportInspection;
19 import lombok.extern.slf4j.Slf4j; 20 import lombok.extern.slf4j.Slf4j;
@@ -27,6 +28,7 @@ import java.io.IOException; @@ -27,6 +28,7 @@ import java.io.IOException;
27 import java.io.InputStream; 28 import java.io.InputStream;
28 import java.net.URLEncoder; 29 import java.net.URLEncoder;
29 import java.sql.SQLIntegrityConstraintViolationException; 30 import java.sql.SQLIntegrityConstraintViolationException;
  31 +import java.util.HashMap;
30 import java.util.List; 32 import java.util.List;
31 import java.util.Map; 33 import java.util.Map;
32 import java.util.Set; 34 import java.util.Set;
@@ -45,6 +47,8 @@ import java.util.stream.Collectors; @@ -45,6 +47,8 @@ import java.util.stream.Collectors;
45 public class McBasicCmtyController extends BaseController { 47 public class McBasicCmtyController extends BaseController {
46 @Autowired 48 @Autowired
47 private IMcBasicCmtyService mcBasicCmtyService; 49 private IMcBasicCmtyService mcBasicCmtyService;
  50 + @Autowired
  51 + private ICommonService commonService;
48 52
49 /** 53 /**
50 * 查询基础数据-户数 项目公司组织级联 54 * 查询基础数据-户数 项目公司组织级联
@@ -123,6 +127,8 @@ public class McBasicCmtyController extends BaseController { @@ -123,6 +127,8 @@ public class McBasicCmtyController extends BaseController {
123 throw new RuntimeException("文件大小不得超过5M"); 127 throw new RuntimeException("文件大小不得超过5M");
124 } 128 }
125 try { 129 try {
  130 +
  131 +
126 // 获取文件的输入流 132 // 获取文件的输入流
127 InputStream inputStream = file.getInputStream(); 133 InputStream inputStream = file.getInputStream();
128 List<McBasicCmty> list = EasyExcel.read(inputStream) //调用read方法 134 List<McBasicCmty> list = EasyExcel.read(inputStream) //调用read方法
@@ -133,6 +139,10 @@ public class McBasicCmtyController extends BaseController { @@ -133,6 +139,10 @@ public class McBasicCmtyController extends BaseController {
133 .headRowNumber(4) // 列表头行数,1代表列表头有1行,第二行开始为数据行 139 .headRowNumber(4) // 列表头行数,1代表列表头有1行,第二行开始为数据行
134 .doReadSync(); // 开始读Excel,返回一个List<T>集合,继续后续入库操作 140 .doReadSync(); // 开始读Excel,返回一个List<T>集合,继续后续入库操作
135 log.info("导入基础数据-户数总条数:{}", list == null ? 0 : list.size()); 141 log.info("导入基础数据-户数总条数:{}", list == null ? 0 : list.size());
  142 +
  143 +// List<HashMap<String, String>> sysDeptAlls = commonService.selectSysDeptAll();
  144 +
  145 +
136 // // 检验重复数据 146 // // 检验重复数据
137 // Map<String, List<McBasicCmty>> collect = list.stream().collect(Collectors.groupingBy(o -> 147 // Map<String, List<McBasicCmty>> collect = list.stream().collect(Collectors.groupingBy(o ->
138 // o.getRegionName() + 148 // o.getRegionName() +
@@ -153,40 +163,28 @@ public class McBasicCmtyController extends BaseController { @@ -153,40 +163,28 @@ public class McBasicCmtyController extends BaseController {
153 long startTime = System.currentTimeMillis(); // 记录任务开始时间 163 long startTime = System.currentTimeMillis(); // 记录任务开始时间
154 // 插入数据库 164 // 插入数据库
155 if (CollectionUtils.isNotEmpty(list)) { 165 if (CollectionUtils.isNotEmpty(list)) {
156 - Runnable task = () -> {  
157 - for (McBasicCmty mcBasicCmty : list) {  
158 - mcBasicCmtyService.insertMcBasicCmty(mcBasicCmty);  
159 - System.out.println(list); // 注意:这里直接打印list可能不是最佳实践,具体看需求  
160 - }  
161 - };  
162 - Thread backgroundThread = new Thread(task, "后台插入任务线程");  
163 - backgroundThread.setDaemon(true); // 设置为守护线程,随主线程结束而结束  
164 - backgroundThread.start();  
165 - try {  
166 - backgroundThread.join(); // 等待线程执行完毕,确保能准确计算运行时长  
167 - } catch (InterruptedException e) {  
168 - Thread.currentThread().interrupt(); // 恢复中断状态  
169 - log.error("导入基础数据-户数,等待线程执行完毕时被中断", e); 166 +// Runnable task = () -> {
  167 + for (McBasicCmty mcBasicCmty : list) {
  168 + mcBasicCmtyService.insertMcBasicCmty(mcBasicCmty);
  169 + System.out.println(list); // 注意:这里直接打印list可能不是最佳实践,具体看需求
170 } 170 }
  171 +// };
  172 +// Thread backgroundThread = new Thread(task, "后台插入任务线程");
  173 +// backgroundThread.setDaemon(true); // 设置为守护线程,随主线程结束而结束
  174 +// backgroundThread.start();
  175 +// try {
  176 +// backgroundThread.join(); // 等待线程执行完毕,确保能准确计算运行时长
  177 +// } catch (InterruptedException e) {
  178 +// Thread.currentThread().interrupt(); // 恢复中断状态
  179 +// log.error("导入基础数据-户数,等待线程执行完毕时被中断", e);
  180 +// }
171 } 181 }
172 long endTime = System.currentTimeMillis(); // 记录任务结束时间 182 long endTime = System.currentTimeMillis(); // 记录任务结束时间
173 long duration = endTime - startTime; // 计算任务运行时长 183 long duration = endTime - startTime; // 计算任务运行时长
174 log.info("导入基础数据-户数,数据库插入任务运行时长:{}毫秒", duration); 184 log.info("导入基础数据-户数,数据库插入任务运行时长:{}毫秒", duration);
175 } catch (Exception e) { 185 } catch (Exception e) {
176 - Throwable cause = e.getCause();  
177 - if (cause instanceof SQLIntegrityConstraintViolationException) {  
178 - String errMsg = (cause).getMessage();  
179 - if (StringUtils.isNotEmpty(errMsg) && errMsg.contains("uniq_address")) {  
180 - // 找到第一个引号的索引  
181 - int startIndex = errMsg.indexOf("\'");  
182 - // 找到第二个引号的索引  
183 - int endIndex = errMsg.indexOf("\'", startIndex + 1);  
184 - // 提取引号之间的内容  
185 - String content = errMsg.substring(startIndex + 1, endIndex);  
186 - throw new RuntimeException("系统中存在相同信息: " + content);  
187 - }  
188 - }  
189 - throw new RuntimeException(e); 186 + e.printStackTrace();
  187 + return AjaxResult.error(e.getMessage());
190 } 188 }
191 return AjaxResult.success("数据导入成功"); 189 return AjaxResult.success("数据导入成功");
192 } 190 }
zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/controller/McBasicMoneyController.java
@@ -11,14 +11,17 @@ import com.chinagas.common.log.annotation.Log; @@ -11,14 +11,17 @@ import com.chinagas.common.log.annotation.Log;
11 import com.chinagas.common.log.enums.BusinessType; 11 import com.chinagas.common.log.enums.BusinessType;
12 import com.chinagas.common.security.annotation.RequirePermission; 12 import com.chinagas.common.security.annotation.RequirePermission;
13 import com.chinagas.common.security.enums.Logical; 13 import com.chinagas.common.security.enums.Logical;
14 -import com.chinagas.modules.schsf.domain.McBasicCmty;  
15 import com.chinagas.modules.schsf.domain.McBasicMoney; 14 import com.chinagas.modules.schsf.domain.McBasicMoney;
16 import com.chinagas.modules.schsf.domain.vo.McBasicMoneyVo; 15 import com.chinagas.modules.schsf.domain.vo.McBasicMoneyVo;
17 import com.chinagas.modules.schsf.service.IMcBasicMoneyService; 16 import com.chinagas.modules.schsf.service.IMcBasicMoneyService;
  17 +import com.chinagas.modules.schsf.utils.listener.McBasicMoneyImportInspection;
18 import lombok.extern.slf4j.Slf4j; 18 import lombok.extern.slf4j.Slf4j;
19 import org.apache.commons.lang3.StringUtils; 19 import org.apache.commons.lang3.StringUtils;
20 import org.springframework.beans.factory.annotation.Autowired; 20 import org.springframework.beans.factory.annotation.Autowired;
21 -import org.springframework.web.bind.annotation.*; 21 +import org.springframework.web.bind.annotation.GetMapping;
  22 +import org.springframework.web.bind.annotation.PostMapping;
  23 +import org.springframework.web.bind.annotation.RequestMapping;
  24 +import org.springframework.web.bind.annotation.RestController;
22 import org.springframework.web.multipart.MultipartFile; 25 import org.springframework.web.multipart.MultipartFile;
23 26
24 import javax.servlet.http.HttpServletResponse; 27 import javax.servlet.http.HttpServletResponse;
@@ -28,8 +31,6 @@ import java.net.URLEncoder; @@ -28,8 +31,6 @@ import java.net.URLEncoder;
28 import java.sql.SQLIntegrityConstraintViolationException; 31 import java.sql.SQLIntegrityConstraintViolationException;
29 import java.util.List; 32 import java.util.List;
30 import java.util.Map; 33 import java.util.Map;
31 -import java.util.Set;  
32 -import java.util.stream.Collectors;  
33 34
34 35
35 /** 36 /**
@@ -81,6 +82,7 @@ public class McBasicMoneyController extends BaseController { @@ -81,6 +82,7 @@ public class McBasicMoneyController extends BaseController {
81 // 获取文件的输入流 82 // 获取文件的输入流
82 InputStream inputStream = file.getInputStream(); 83 InputStream inputStream = file.getInputStream();
83 List<McBasicMoney> list = EasyExcel.read(inputStream) //调用read方法 84 List<McBasicMoney> list = EasyExcel.read(inputStream) //调用read方法
  85 + .registerReadListener(new McBasicMoneyImportInspection())
84 // 注册自定义监听器,字段校验可以在监听器内实现 86 // 注册自定义监听器,字段校验可以在监听器内实现
85 .head(McBasicMoney.class) // 对应导入的实体类 87 .head(McBasicMoney.class) // 对应导入的实体类
86 .sheet(0) // 导入数据的sheet页编号,0代表第一个sheet页,如果不填,则会导入所有sheet页的数据 88 .sheet(0) // 导入数据的sheet页编号,0代表第一个sheet页,如果不填,则会导入所有sheet页的数据
@@ -108,40 +110,27 @@ public class McBasicMoneyController extends BaseController { @@ -108,40 +110,27 @@ public class McBasicMoneyController extends BaseController {
108 long startTime = System.currentTimeMillis(); // 记录任务开始时间 110 long startTime = System.currentTimeMillis(); // 记录任务开始时间
109 // 插入数据库 111 // 插入数据库
110 if (CollectionUtils.isNotEmpty(list)) { 112 if (CollectionUtils.isNotEmpty(list)) {
111 - Runnable task = () -> { 113 +// Runnable task = () -> {
112 for (McBasicMoney mcBasicCmty : list) { 114 for (McBasicMoney mcBasicCmty : list) {
113 mcBasicMoneyService.insertMcBasicMoney(mcBasicCmty); 115 mcBasicMoneyService.insertMcBasicMoney(mcBasicCmty);
114 - System.out.println(list);  
115 } 116 }
116 - };  
117 - Thread backgroundThread = new Thread(task, "后台插入任务线程");  
118 - backgroundThread.setDaemon(true); // 设置为守护线程,随主线程结束而结束  
119 - backgroundThread.start();  
120 - try {  
121 - backgroundThread.join(); // 等待线程执行完毕,确保能准确计算运行时长  
122 - } catch (InterruptedException e) {  
123 - Thread.currentThread().interrupt(); // 恢复中断状态  
124 - log.error("导入基础数据-户数,等待线程执行完毕时被中断", e);  
125 - } 117 +// };
  118 +// Thread backgroundThread = new Thread(task, "后台插入任务线程");
  119 +// backgroundThread.setDaemon(true); // 设置为守护线程,随主线程结束而结束
  120 +// backgroundThread.start();
  121 +// try {
  122 +// backgroundThread.join(); // 等待线程执行完毕,确保能准确计算运行时长
  123 +// } catch (InterruptedException e) {
  124 +// Thread.currentThread().interrupt(); // 恢复中断状态
  125 +// log.error("导入基础数据-户数,等待线程执行完毕时被中断", e);
  126 +// }
126 } 127 }
127 long endTime = System.currentTimeMillis(); // 记录任务结束时间 128 long endTime = System.currentTimeMillis(); // 记录任务结束时间
128 long duration = endTime - startTime; // 计算任务运行时长 129 long duration = endTime - startTime; // 计算任务运行时长
129 log.info("导入基础数据-金额,数据库插入任务运行时长:{}毫秒", duration); 130 log.info("导入基础数据-金额,数据库插入任务运行时长:{}毫秒", duration);
130 } catch (Exception e) { 131 } catch (Exception e) {
131 - Throwable cause = e.getCause();  
132 - if (cause instanceof SQLIntegrityConstraintViolationException) {  
133 - String errMsg = (cause).getMessage();  
134 - if (StringUtils.isNotEmpty(errMsg) && errMsg.contains("uniq_address")) {  
135 - // 找到第一个引号的索引  
136 - int startIndex = errMsg.indexOf("\'");  
137 - // 找到第二个引号的索引  
138 - int endIndex = errMsg.indexOf("\'", startIndex + 1);  
139 - // 提取引号之间的内容  
140 - String content = errMsg.substring(startIndex + 1, endIndex);  
141 - throw new RuntimeException("系统中存在相同信息: " + content);  
142 - }  
143 - }  
144 - throw new RuntimeException(e); 132 + e.printStackTrace();
  133 + return AjaxResult.error(e.getMessage());
145 } 134 }
146 return AjaxResult.success("数据导入成功"); 135 return AjaxResult.success("数据导入成功");
147 } 136 }
zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/mapper/CommonMapper.java 0 → 100644
@@ -0,0 +1,11 @@ @@ -0,0 +1,11 @@
  1 +package com.chinagas.modules.schsf.mapper;
  2 +
  3 +import org.apache.ibatis.annotations.Param;
  4 +
  5 +import java.util.HashMap;
  6 +
  7 +public interface CommonMapper {
  8 + HashMap<String, String> selectSysDeptByidName(@Param("deptId") String deptId,@Param("deptName") String deptName);
  9 +
  10 +
  11 +}
zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/service/ICommonService.java 0 → 100644
@@ -0,0 +1,10 @@ @@ -0,0 +1,10 @@
  1 +package com.chinagas.modules.schsf.service;
  2 +
  3 +import java.util.HashMap;
  4 +
  5 +public interface ICommonService {
  6 +
  7 + HashMap<String, String> selectSysDeptByidName(String companyCode, String companyName);
  8 +
  9 +
  10 +}
zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/service/impl/CommonService.java 0 → 100644
@@ -0,0 +1,21 @@ @@ -0,0 +1,21 @@
  1 +package com.chinagas.modules.schsf.service.impl;
  2 +
  3 +import com.chinagas.modules.schsf.mapper.CommonMapper;
  4 +import com.chinagas.modules.schsf.service.ICommonService;
  5 +import lombok.extern.slf4j.Slf4j;
  6 +import org.springframework.beans.factory.annotation.Autowired;
  7 +import org.springframework.stereotype.Service;
  8 +
  9 +import java.util.HashMap;
  10 +
  11 +@Slf4j
  12 +@Service
  13 +public class CommonService implements ICommonService {
  14 + @Autowired
  15 + private CommonMapper commonMapper;
  16 +
  17 + @Override
  18 + public HashMap<String, String> selectSysDeptByidName(String deptId, String deptName) {
  19 + return commonMapper.selectSysDeptByidName(deptId,deptName);
  20 + }
  21 +}
zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/service/impl/McBasicCmtyServiceImpl.java
1 package com.chinagas.modules.schsf.service.impl; 1 package com.chinagas.modules.schsf.service.impl;
2 2
  3 +import com.chinagas.common.core.exceptions.ServiceException;
3 import com.chinagas.common.core.utils.DateUtils; 4 import com.chinagas.common.core.utils.DateUtils;
4 import com.chinagas.common.datascope.annotation.DataScope; 5 import com.chinagas.common.datascope.annotation.DataScope;
5 import com.chinagas.common.security.utils.SecurityUtils; 6 import com.chinagas.common.security.utils.SecurityUtils;
@@ -9,6 +10,7 @@ import com.chinagas.modules.schsf.domain.dto.CompanyDto; @@ -9,6 +10,7 @@ import com.chinagas.modules.schsf.domain.dto.CompanyDto;
9 import com.chinagas.modules.schsf.domain.vo.McBasicCmtyVo; 10 import com.chinagas.modules.schsf.domain.vo.McBasicCmtyVo;
10 import com.chinagas.modules.schsf.domain.vo.McVisitVo; 11 import com.chinagas.modules.schsf.domain.vo.McVisitVo;
11 import com.chinagas.modules.schsf.mapper.McBasicCmtyMapper; 12 import com.chinagas.modules.schsf.mapper.McBasicCmtyMapper;
  13 +import com.chinagas.modules.schsf.service.ICommonService;
12 import com.chinagas.modules.schsf.service.IMcBasicCmtyService; 14 import com.chinagas.modules.schsf.service.IMcBasicCmtyService;
13 import com.chinagas.modules.schsf.service.IMcConstructionService; 15 import com.chinagas.modules.schsf.service.IMcConstructionService;
14 import org.springframework.beans.factory.annotation.Autowired; 16 import org.springframework.beans.factory.annotation.Autowired;
@@ -31,6 +33,8 @@ public class McBasicCmtyServiceImpl implements IMcBasicCmtyService { @@ -31,6 +33,8 @@ public class McBasicCmtyServiceImpl implements IMcBasicCmtyService {
31 private McBasicCmtyMapper mcBasicCmtyMapper; 33 private McBasicCmtyMapper mcBasicCmtyMapper;
32 @Autowired 34 @Autowired
33 private IMcConstructionService iMcConstructionService; 35 private IMcConstructionService iMcConstructionService;
  36 + @Autowired
  37 + private ICommonService commonService;
34 38
35 /** 39 /**
36 * 查询基础数据-户数 40 * 查询基础数据-户数
@@ -75,6 +79,10 @@ public class McBasicCmtyServiceImpl implements IMcBasicCmtyService { @@ -75,6 +79,10 @@ public class McBasicCmtyServiceImpl implements IMcBasicCmtyService {
75 } 79 }
76 mcBasicCmty.setCreateTime(DateUtils.getNowLocal()); 80 mcBasicCmty.setCreateTime(DateUtils.getNowLocal());
77 mcBasicCmty.setCreateBy(SecurityUtils.getUserId().toString()); 81 mcBasicCmty.setCreateBy(SecurityUtils.getUserId().toString());
  82 + HashMap<String, String> sysDeptByidName = commonService.selectSysDeptByidName(mcBasicCmty.getCompanyCode(), mcBasicCmty.getCompanyName());
  83 + if (sysDeptByidName == null || sysDeptByidName.size() == 0) {
  84 + throw new ServiceException(String.format("项目公司:‘%s’,项目公司代码:‘%s’,与组织信息不匹配,请核实", mcBasicCmty.getCompanyName(),mcBasicCmty.getCompanyCode()));
  85 + }
78 int i = mcBasicCmtyMapper.insertMcBasicCmty(mcBasicCmty); 86 int i = mcBasicCmtyMapper.insertMcBasicCmty(mcBasicCmty);
79 if (i > 0) { 87 if (i > 0) {
80 iMcConstructionService.insertMcConstructionByMcBasicCmty(mcBasicCmty); 88 iMcConstructionService.insertMcConstructionByMcBasicCmty(mcBasicCmty);
zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/service/impl/McBasicMoneyServiceImpl.java
@@ -6,10 +6,12 @@ import com.chinagas.common.security.utils.SecurityUtils; @@ -6,10 +6,12 @@ import com.chinagas.common.security.utils.SecurityUtils;
6 import com.chinagas.modules.schsf.domain.McBasicMoney; 6 import com.chinagas.modules.schsf.domain.McBasicMoney;
7 import com.chinagas.modules.schsf.domain.vo.McBasicMoneyVo; 7 import com.chinagas.modules.schsf.domain.vo.McBasicMoneyVo;
8 import com.chinagas.modules.schsf.mapper.McBasicMoneyMapper; 8 import com.chinagas.modules.schsf.mapper.McBasicMoneyMapper;
  9 +import com.chinagas.modules.schsf.service.ICommonService;
9 import com.chinagas.modules.schsf.service.IMcBasicMoneyService; 10 import com.chinagas.modules.schsf.service.IMcBasicMoneyService;
10 import org.springframework.beans.factory.annotation.Autowired; 11 import org.springframework.beans.factory.annotation.Autowired;
11 import org.springframework.stereotype.Service; 12 import org.springframework.stereotype.Service;
12 13
  14 +import java.util.HashMap;
13 import java.util.List; 15 import java.util.List;
14 16
15 /** 17 /**
@@ -23,7 +25,8 @@ public class McBasicMoneyServiceImpl implements IMcBasicMoneyService @@ -23,7 +25,8 @@ public class McBasicMoneyServiceImpl implements IMcBasicMoneyService
23 { 25 {
24 @Autowired 26 @Autowired
25 private McBasicMoneyMapper mcBasicMoneyMapper; 27 private McBasicMoneyMapper mcBasicMoneyMapper;
26 - 28 + @Autowired
  29 + private ICommonService commonService;
27 /** 30 /**
28 * 查询基础数据-金额 31 * 查询基础数据-金额
29 * 32 *
@@ -68,6 +71,11 @@ public class McBasicMoneyServiceImpl implements IMcBasicMoneyService @@ -68,6 +71,11 @@ public class McBasicMoneyServiceImpl implements IMcBasicMoneyService
68 } 71 }
69 mcBasicMoney.setCreateTime(DateUtils.getNowLocal()); 72 mcBasicMoney.setCreateTime(DateUtils.getNowLocal());
70 mcBasicMoney.setCreateBy(SecurityUtils.getUserId().toString()); 73 mcBasicMoney.setCreateBy(SecurityUtils.getUserId().toString());
  74 + HashMap<String, String> sysDeptByidName = commonService.selectSysDeptByidName(mcBasicMoney.getCompanyCode(), mcBasicMoney.getCompanyName());
  75 + if (sysDeptByidName == null || sysDeptByidName.size() == 0) {
  76 + throw new RuntimeException(String.format("项目公司:‘%s’,项目公司代码:‘%s’,与组织信息不匹配,请核实", mcBasicMoney.getCompanyName(),mcBasicMoney.getCompanyCode()));
  77 + }
  78 +
71 return mcBasicMoneyMapper.insertMcBasicMoney(mcBasicMoney); 79 return mcBasicMoneyMapper.insertMcBasicMoney(mcBasicMoney);
72 } 80 }
73 81
zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/utils/listener/McBasicCmtyImportInspection.java
@@ -5,14 +5,19 @@ import com.alibaba.excel.event.AnalysisEventListener; @@ -5,14 +5,19 @@ import com.alibaba.excel.event.AnalysisEventListener;
5 import com.alibaba.excel.exception.ExcelDataConvertException; 5 import com.alibaba.excel.exception.ExcelDataConvertException;
6 import com.chinagas.common.core.utils.StringUtils; 6 import com.chinagas.common.core.utils.StringUtils;
7 import com.chinagas.modules.schsf.domain.McBasicCmty; 7 import com.chinagas.modules.schsf.domain.McBasicCmty;
  8 +import com.chinagas.modules.schsf.service.ICommonService;
  9 +import org.springframework.beans.factory.annotation.Autowired;
  10 +
  11 +import java.util.HashMap;
8 12
9 public class McBasicCmtyImportInspection extends AnalysisEventListener { 13 public class McBasicCmtyImportInspection extends AnalysisEventListener {
10 14
11 @Override 15 @Override
12 public void invoke(Object data, AnalysisContext context) { 16 public void invoke(Object data, AnalysisContext context) {
  17 +
13 McBasicCmty mcBasicCmty = (McBasicCmty) data; 18 McBasicCmty mcBasicCmty = (McBasicCmty) data;
14 System.out.println(mcBasicCmty); 19 System.out.println(mcBasicCmty);
15 - if (mcBasicCmty.getFiscalYear()==null) { 20 + if (mcBasicCmty.getFiscalYear() == null) {
16 throw new RuntimeException(String.format("第%s行 财年 为空,请核实", context.readRowHolder().getRowIndex() + 1)); 21 throw new RuntimeException(String.format("第%s行 财年 为空,请核实", context.readRowHolder().getRowIndex() + 1));
17 } 22 }
18 if (StringUtils.isEmpty(mcBasicCmty.getRegionName())) { 23 if (StringUtils.isEmpty(mcBasicCmty.getRegionName())) {
@@ -29,9 +34,6 @@ public class McBasicCmtyImportInspection extends AnalysisEventListener { @@ -29,9 +34,6 @@ public class McBasicCmtyImportInspection extends AnalysisEventListener {
29 } 34 }
30 } 35 }
31 36
32 -  
33 -  
34 -  
35 /** 37 /**
36 * 出现异常回调 38 * 出现异常回调
37 * 39 *
zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/utils/listener/McBasicMoneyImportInspection.java 0 → 100644
@@ -0,0 +1,43 @@ @@ -0,0 +1,43 @@
  1 +package com.chinagas.modules.schsf.utils.listener;
  2 +
  3 +import com.alibaba.excel.context.AnalysisContext;
  4 +import com.alibaba.excel.event.AnalysisEventListener;
  5 +import com.alibaba.excel.exception.ExcelDataConvertException;
  6 +import com.chinagas.common.core.utils.StringUtils;
  7 +import com.chinagas.modules.schsf.domain.McBasicMoney;
  8 +
  9 +public class McBasicMoneyImportInspection extends AnalysisEventListener {
  10 +
  11 +
  12 +
  13 + @Override
  14 + public void invoke(Object data, AnalysisContext context) {
  15 + McBasicMoney mcBasicMoney = (McBasicMoney) data;
  16 + if (StringUtils.isEmpty(mcBasicMoney.getCompanyName())) {
  17 + throw new RuntimeException(String.format("第%s行 项目公司 为空,请核实", context.readRowHolder().getRowIndex() + 1));
  18 + }
  19 + if (StringUtils.isEmpty(mcBasicMoney.getCompanyCode())) {
  20 + throw new RuntimeException(String.format("第%s行 公司代码 为空,请核实", context.readRowHolder().getRowIndex() + 1));
  21 + }
  22 + }
  23 +
  24 + @Override
  25 + public void onException(Exception exception, AnalysisContext context) throws Exception {
  26 + if (exception instanceof ExcelDataConvertException) {
  27 + /**从0开始计算*/
  28 + Integer columnIndex = ((ExcelDataConvertException) exception).getColumnIndex() + 1;
  29 + Integer rowIndex = ((ExcelDataConvertException) exception).getRowIndex() + 1;
  30 + String message = "第" + rowIndex + "行,第" + columnIndex + "列" + "数据格式有误,请核实";
  31 + throw new RuntimeException(message);
  32 + } else if (exception instanceof RuntimeException) {
  33 + throw exception;
  34 + } else {
  35 + super.onException(exception, context);
  36 + }
  37 + }
  38 +
  39 + @Override
  40 + public void doAfterAllAnalysed(AnalysisContext analysisContext) {
  41 +
  42 + }
  43 +}
zr-cloud/zr-modules/zr-schsf/src/main/resources/mapper/CommonMapper.xml 0 → 100644
@@ -0,0 +1,10 @@ @@ -0,0 +1,10 @@
  1 +<?xml version="1.0" encoding="UTF-8" ?>
  2 +<!DOCTYPE mapper
  3 + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4 + "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5 +<mapper namespace="com.chinagas.modules.schsf.mapper.CommonMapper">
  6 +
  7 + <select id="selectSysDeptByidName" resultType="java.util.HashMap" parameterType="java.lang.String">
  8 + SELECT dept_id,dept_name FROM sys_dept WHERE dept_id=#{deptId,jdbcType=VARCHAR} and dept_name=#{deptName,jdbcType=VARCHAR}
  9 + </select>
  10 +</mapper>