模块管理导入功能交互

dev^2
lijinyu 1 year ago
parent 230822887e
commit b34b278fb7
  1. 92
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/modulex/service/impl/ModulexServiceImpl.java

@ -10,10 +10,7 @@ import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;
import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;
import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.apache.shiro.SecurityUtils;
import org.checkerframework.checker.units.qual.A;
@ -380,6 +377,9 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
//标题需要单独处理
//获取页行数
Row row = sheet.getRow(j);
if(row==null){
continue;
}
//获取单行单元格数
Integer physicalNumberOfCells = null;
if (row == null) {
@ -390,7 +390,14 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
if (j == 2) {
for (int k = 0; k < physicalNumberOfCells; k++) {
Cell cell = row.getCell(k);
String name = cell.getStringCellValue();
if(cell==null){
propertyNames.add(null);
}
FormulaEvaluator evaluator = wb.getCreationHelper().createFormulaEvaluator();
DataFormatter formatter = new DataFormatter();
//单元格不设置数字格式
cell.setCellStyle(null);
String name = formatter.formatCellValue(cell,evaluator);
propertyNames.add(name);
}
if(propertyNames.size()!=19 || !propertyNames.get(0).equals("上级模块名称")
@ -425,13 +432,6 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
int annual = 0;
for (int k = 0; k < physicalNumberOfCells; k++) {
Cell cell = row.getCell(k);
if(cell==null){
message.put("isError", "true");
message.put("status","表格中有空白行,"+"请重新导入");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("数据匹配读取失败,"+"请重新导入");
}
String value = cell.getStringCellValue();
switch (k){
case 0:
@ -565,7 +565,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
List<Modulex> list = this.list(queryWrapper);
if(list==null ||list.size()==0){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"此模块不存在上级");
message.put("status","导入失败,第" + (i+4) +"行" +"此模块不存在上级");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,此模块不存在上级");
@ -573,14 +573,14 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
Modulex one =list.get(0);
if(one==null){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"此模块不存在上级");
message.put("status","导入失败,第" + (i+4) +"行" +"此模块不存在上级");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,此模块不存在上级");
}String pid1 = one.getId();
if(pid1==null){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"此模块不存在上级");
message.put("status","导入失败,第" + (i+4) +"行" +"此模块不存在上级");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,此模块不存在上级");
@ -590,7 +590,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
String projectId = modulexTemplate.getProjectId();
if(projectId==null){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"项目名称不能为空");
message.put("status","导入失败,第" + (i+4) +"行" +"项目名称不能为空");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,项目名称不能为空");
@ -600,7 +600,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
Projectx projectx = projectxService.getOne(projectxLambdaQueryWrapper);
if(projectx==null){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"项目名称不存在");
message.put("status","导入失败,第" + (i+4) +"行" +"项目名称不存在");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,项目名称不存在");
@ -613,7 +613,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
String pid1 = modulex.getPid();
if(moduleName==null){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"中文名称不能为空");
message.put("status","导入失败,第" + (i+4) +"行" +"中文名称不能为空");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,中文名称不能为空");
@ -623,7 +623,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
List<Modulex> modulexes = this.list(queryWrapper);
if(modulexes.size()>0){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"模块中文名称已存在,请重新输入");
message.put("status","导入失败,第" + (i+4) +"行" +"模块中文名称已存在,请重新输入");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("模块中文名称已存在,请重新输入");
@ -635,7 +635,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
Modulex modulex1 = this.getOne(modulexLambdaQueryWrapper);
if(modulex1!=null){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"相同的上级模块不能重名");
message.put("status","导入失败,第" + (i+4) +"行" +"相同的上级模块不能重名");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,相同的上级模块不能重名");
@ -643,7 +643,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
String moduleEnName = modulexTemplate.getModuleEnName();
if(moduleEnName==null){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"英文名称不能为空");
message.put("status","导入失败,第" + (i+4) +"行" +"英文名称不能为空");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,英文名称不能为空");
@ -651,7 +651,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
String moduleCode = modulexTemplate.getModuleCode();
if(moduleCode==null||moduleCode.length()>30){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"模块编码不能为空或者模块编码过长");
message.put("status","导入失败,第" + (i+4) +"行" +"模块编码不能为空或者模块编码过长");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,模块编码不能为空或者模块编码过长");
@ -664,7 +664,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
String projectCode = projectx.getProjectCode();
if(projectCode==null){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"项目编码不存在,请重新填写");
message.put("status","导入失败,第" + (i+4) +"行" +"项目编码不存在,请重新填写");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("项目编码不存在,请重新填写");
@ -672,7 +672,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
modulecode = projectCode + firstChar;
if(!modulecode.equals(moduleCode)){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"模块编码不规范,导入失败");
message.put("status","导入失败,第" + (i+4) +"行" +"模块编码不规范,导入失败");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("模块编码不规范,导入失败");
@ -683,7 +683,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
modulex.setPmDescribe(null);
}if(pmDescribe.length()>500){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"内容描述过长,导入失败");
message.put("status","导入失败,第" + (i+4) +"行" +"内容描述过长,导入失败");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("内容描述过长,导入失败");
@ -701,7 +701,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
List<SysUser> iSysUserServiceOne = iSysUserService.list(sysUserLambdaQueryWrapper);
if(iSysUserServiceOne==null){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"责任人信息查询不到");
message.put("status","导入失败,第" + (i+4) +"行" +"责任人信息查询不到");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,责任人信息查询不到");
@ -709,7 +709,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
List<String> list = iSysUserServiceOne.stream().map(SysUser::getId).collect(Collectors.toList());
if (list == null) {
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"责任人信息查询不到");
message.put("status","导入失败,第" + (i+4) +"行" +"责任人信息查询不到");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,责任人信息查询不到");
@ -727,7 +727,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
String workLevel = modulexTemplate.getWorkLevel();
if(StringUtils.isBlank(workLevel)){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"任务等级不能为空");
message.put("status","导入失败,第" + (i+4) +"行" +"任务等级不能为空");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,任务等级不能为空");
@ -738,14 +738,14 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
integer = Integer.valueOf(workLevel);
} catch (Exception e) {
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"任务等级不规范");
message.put("status","导入失败,第" + (i+4) +"行" +"任务等级不规范");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,任务等级不规范");
}
if(integer<=0&&integer>=6){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"任务等级不规范");
message.put("status","导入失败,第" + (i+4) +"行" +"任务等级不规范");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,任务等级不规范");
@ -755,7 +755,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
String workStatus = modulexTemplate.getWorkStatus();
if(StringUtils.isBlank(workStatus)){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"任务状态不能为空");
message.put("status","导入失败,第" + (i+4) +"行" +"任务状态不能为空");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,任务状态不能为空");
@ -776,7 +776,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
break;
default:
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"任务状态不规范");
message.put("status","导入失败,第" + (i+4) +"行" +"任务状态不规范");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,任务状态不规范");
@ -790,7 +790,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
Boolean result = this.checkTime(publishTime);
if(!result){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"日期格式不规范");
message.put("status","导入失败,第" + (i+4) +"行" +"日期格式不规范");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,日期格式不规范");
@ -802,7 +802,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
String duration = modulexTemplate.getDuration();
if(StringUtils.isBlank(duration)){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"任务时长不能为空");
message.put("status","导入失败,第" + (i+4) +"行" +"任务时长不能为空");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,任务时长不能为空");
@ -817,7 +817,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
Boolean result = this.checkTime(startTime);
if(!result){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"开始时间不规范");
message.put("status","导入失败,第" + (i+4) +"行" +"开始时间不规范");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,开始时间不规范");
@ -833,7 +833,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
Boolean result = this.checkTime(submitTime);
if(!result){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"提交时间不规范");
message.put("status","导入失败,第" + (i+4) +"行" +"提交时间不规范");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,提交时间不规范");
@ -845,7 +845,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
String realDuration = modulexTemplate.getRealDuration();
if(StringUtils.isBlank(realDuration)){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"实际时长不能为空");
message.put("status","导入失败,第" + (i+4) +"行" +"实际时长不能为空");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,实际时长不能为空");
@ -853,7 +853,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
double parseDouble = Double.parseDouble(realDuration);
if(parseDouble<0.1){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"最小时间0.1小时");
message.put("status","导入失败,第" + (i+4) +"行" +"最小时间0.1小时");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,最小时间0.1小时");
@ -869,7 +869,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
SysRole one = iSysRoleService.getOne(sysRoleLambdaQueryWrapper);
if(one==null){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"用户角色不存在");
message.put("status","导入失败,第" + (i+4) +"行" +"用户角色不存在");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,用户角色不存在");
@ -877,7 +877,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
String useRole = one.getId();
if(useRole==null){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"用户角色不存在");
message.put("status","导入失败,第" + (i+4) +"行" +"用户角色不存在");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,用户角色不存在");
@ -890,7 +890,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
Boolean extracted = extracted(modulex, relatedBean);
if(!extracted){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"关联实体不存在");
message.put("status","导入失败,第" + (i+4) +"行" +"关联实体不存在");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("关联实体不存在");
@ -899,7 +899,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
String status = modulexTemplate.getStatus();
if(StringUtils.isBlank(status)){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"模块状态不能为空");
message.put("status","导入失败,第" + (i+4) +"行" +"模块状态不能为空");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,模块状态不能为空");
@ -914,7 +914,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
break;
default:
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"模块状态不规范匹配不到");
message.put("status","导入失败,第" + (i+4) +"行" +"模块状态不规范匹配不到");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,模块状态不规范匹配不到");
@ -924,7 +924,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
String verisonStatus = modulexTemplate.getVerisonStatus();
if(StringUtils.isBlank(verisonStatus)){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"版本状态不能为空");
message.put("status","导入失败,第" + (i+4) +"行" +"版本状态不能为空");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,版本状态不能为空");
@ -937,7 +937,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
break;
default:
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" +"版本状态不规范,匹配失败");
message.put("status","导入失败,第" + (i+4) +"行" +"版本状态不规范,匹配失败");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,版本状态不规范,匹配失败");
@ -947,7 +947,7 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
String verison = modulexTemplate.getVerison();
if(StringUtils.isBlank(verison)){
message.put("isError", "true");
message.put("status","导入失败,第" + i+4 +"行" + "版本号不能为空");
message.put("status","导入失败,第" + (i+4) +"行" + "版本号不能为空");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,版本号不能为空");

Loading…
Cancel
Save