导入规则修改

dev^2
zjh 1 year ago
parent 37dfa02311
commit 65a5b17237
  1. 367
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/demo/rulex/controller/RulexController.java
  2. 11
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/demo/rulex/entity/RuleVo.java

@ -53,9 +53,12 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.math.BigDecimal;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
@ -99,6 +102,8 @@ public class RulexController extends JeecgController<Rulex, IRulexService> {
@Autowired @Autowired
private ISysUserService iSysUserService; private ISysUserService iSysUserService;
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
/** /**
* 分页列表查询 * 分页列表查询
* *
@ -275,7 +280,6 @@ public class RulexController extends JeecgController<Rulex, IRulexService> {
return Result.error("文件格式不正确"); return Result.error("文件格式不正确");
} }
//校验时间 //校验时间
final DateValidator validator = new DateValidatorUsingDateFormat("yyyy-MM-dd hh:mm:ss");
ImportParams params = new ImportParams(); ImportParams params = new ImportParams();
params.setTitleRows(2);//表格标题行数,默认0 params.setTitleRows(2);//表格标题行数,默认0
params.setHeadRows(1);//表头行数,默认1 params.setHeadRows(1);//表头行数,默认1
@ -345,70 +349,119 @@ public class RulexController extends JeecgController<Rulex, IRulexService> {
webSocketUtils.sendMessage(loginUser.getId(), message); webSocketUtils.sendMessage(loginUser.getId(), message);
rulexList = new ArrayList<>(); rulexList = new ArrayList<>();
//判断模块输入是否错误
List<Modulex> modulexList = iModulexService.list();
for (int i = 0; i < ruleVoList.size(); i++) { for (int i = 0; i < ruleVoList.size(); i++) {
Rulex rulex = new Rulex(); Rulex rulex = new Rulex();
RuleVo ruleVo = ruleVoList.get(i); RuleVo ruleVo = ruleVoList.get(i);
//对应字段
String fieldId = ruleVo.getFieldId(); String pModuleId = ruleVo.getModulePid();
if(fieldId!=null){ String moduleId = ruleVo.getModuleId();
LambdaQueryWrapper<Fieldx> rulexLambdaQueryWrapper = new LambdaQueryWrapper<>(); //对应模块
rulexLambdaQueryWrapper.eq(Fieldx::getFieldName, fieldId); //判断上级模块是否存在
Fieldx byId = iFieldxService.getOne(rulexLambdaQueryWrapper); int n = 0;
if (byId == null) { if (pModuleId != null) {
iRuleVoService.remove(null); //存在
message.put("isError", "true"); String pid = "";
message.put("closeable","true"); for (Modulex modulex : modulexList) {
message.put("status","第"+(i + 1) + "条数据,对应字段输入错误,请核对"); //判断表中是否存在
webSocketUtils.sendMessage(loginUser.getId(), message); if (modulex.getModuleName().equals(pModuleId)) {
return Result.error("第"+(i + 1) +"条数据,对应字段输入错误,请核对");
pid = modulex.getId();
break;
}
n++;
if (n == modulexList.size()) {
message.put("isError", "true");
message.put("closeable", "true");
message.put("status", "第" + (i + 1) + "条数据,上级模块输入错误,请核对");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第" + (i + 1) + "条数据,上级模块输入错误,请核对");
}
}
//判断上级模块+模块是否存在
for (Modulex modulex : modulexList) {
if (modulex.getModuleName().equals(moduleId) && modulex.getPid().equals(pid)) {
rulex.setModuleId(modulex.getId());
break;
}
n++;
if (n == modulexList.size()) {
message.put("isError", "true");
message.put("closeable", "true");
message.put("status", "第" + (i + 1) + "条数据,模块输入错误,请核对");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第" + (i + 1) + "条数据,模块输入错误,请核对");
}
}
} else {
n = 0;
//判断模块是否存在
for (Modulex modulex : modulexList) {
if (modulex.getModuleName().equals(moduleId) && modulex.getPid() == null) {
rulex.setModuleId(modulex.getId());
break;
}
n++;
if (n == modulexList.size()) {
message.put("isError", "true");
message.put("closeable", "true");
message.put("status", "第" + (i + 1) + "条数据,模块输入错误,请核对");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第" + (i + 1) + "条数据,模块输入错误,请核对");
}
} }
rulex.setFieldId(byId.getId());
} }
//对应功能 //对应功能
String functionName = ruleVo.getFunctionId(); String functionName = ruleVo.getFunctionId();
LambdaQueryWrapper<Functionx> functionxLambdaQueryWrapper = new LambdaQueryWrapper<Functionx>(); LambdaQueryWrapper<Functionx> functionxLambdaQueryWrapper = new LambdaQueryWrapper<Functionx>();
functionxLambdaQueryWrapper.eq(Functionx::getFunctionName, functionName); functionxLambdaQueryWrapper.eq(Functionx::getFunctionName, functionName).eq(Functionx::getModuleId, rulex.getModuleId());
Functionx byId1 = functionxService.getOne(functionxLambdaQueryWrapper); Functionx functionx = functionxService.getOne(functionxLambdaQueryWrapper);
if (byId1 == null) { if (functionx == null) {
iRuleVoService.remove(null); iRuleVoService.remove(null);
message.put("isError", "true"); message.put("isError", "true");
message.put("closeable","true"); message.put("closeable", "true");
message.put("status","第"+(i + 1) +"条数据,对应功能输入错误,请核对"); message.put("status", "第" + (i + 1) + "条数据,对应功能输入错误,请核对");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第"+(i + 1) +"条数据,对应功能输入错误,请核对");
}
rulex.setFunctionId(byId1.getId());
//对应模块
String moduleName = ruleVo.getModuleId();
LambdaQueryWrapper<Modulex> modulexLambdaQueryWrapper = new LambdaQueryWrapper<>();
modulexLambdaQueryWrapper.eq(Modulex::getModuleName, moduleName);
Modulex byId2 = iModulexService.getOne(modulexLambdaQueryWrapper);
if (byId2 == null) {
iRuleVoService.remove(null);
message.put("isError", "true");
message.put("closeable","true");
message.put("status","第"+(i + 1) +"条数据,对应模块输入错误,请核对");
webSocketUtils.sendMessage(loginUser.getId(), message); webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第"+(i + 1) +"条数据,对应模块输入错误,请核对"); return Result.error("第" + (i + 1) + "条数据,对应功能输入错误,请核对");
} }
rulex.setModuleId(byId2.getId()); rulex.setFunctionId(functionx.getId());
//
//对应实体 //对应实体
String tableId = ruleVo.getTableId(); String tableId = ruleVo.getTableId();
LambdaQueryWrapper<Tablex> tableLambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<Tablex> tableLambdaQueryWrapper = new LambdaQueryWrapper<>();
tableLambdaQueryWrapper.eq(Tablex::getTableName, tableId); tableLambdaQueryWrapper.eq(Tablex::getTableName, tableId).eq(Tablex::getModuleId, rulex.getModuleId());
Tablex byId3 = iTablexService.getOne(tableLambdaQueryWrapper); Tablex tablex = iTablexService.getOne(tableLambdaQueryWrapper);
if (byId3 == null) { if (tablex == null) {
iRuleVoService.remove(null); iRuleVoService.remove(null);
message.put("isError", "true"); message.put("isError", "true");
message.put("closeable","true"); message.put("closeable", "true");
message.put("status","第"+(i + 1) +"条数据,对应实体输入错误,请核对"); message.put("status", "第" + (i + 1) + "条数据,对应实体输入错误,请核对");
webSocketUtils.sendMessage(loginUser.getId(), message); webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第"+(i + 1) +"条数据,对应实体输入错误,请核对"); return Result.error("第" + (i + 1) + "条数据,对应实体输入错误,请核对");
}
rulex.setTableId(tablex.getId());
//对应字段
String fieldId = ruleVo.getFieldId();
String tableId1 = rulex.getTableId();
if (fieldId != null) {
LambdaQueryWrapper<Fieldx> rulexLambdaQueryWrapper = new LambdaQueryWrapper<>();
rulexLambdaQueryWrapper.eq(Fieldx::getFieldName, fieldId).eq(Fieldx::getTableId, tableId1);
Fieldx fieldx = iFieldxService.getOne(rulexLambdaQueryWrapper);
if (fieldx == null) {
iRuleVoService.remove(null);
message.put("isError", "true");
message.put("closeable", "true");
message.put("status", "第" + (i + 1) + "条数据,对应字段输入错误,请核对");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第" + (i + 1) + "条数据,对应字段输入错误,请核对");
}
rulex.setFieldId(fieldx.getId());
} }
rulex.setTableId(byId3.getId());
Double aDouble = null; Double aDouble = null;
try { try {
if (aDouble != null) if (aDouble != null)
@ -417,10 +470,10 @@ public class RulexController extends JeecgController<Rulex, IRulexService> {
} catch (Exception e) { } catch (Exception e) {
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); //手动回滚,这样上层就无需去处理异常了 TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); //手动回滚,这样上层就无需去处理异常了
message.put("isError", "true"); message.put("isError", "true");
message.put("closeable","true"); message.put("closeable", "true");
message.put("status","第"+(i + 1) +"条数据,任务时长输入错误,请核对"); message.put("status", "第" + (i + 1) + "条数据,任务时长输入错误,请核对");
webSocketUtils.sendMessage(loginUser.getId(), message); webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第"+(i + 1) +"条数据,任务时长输入错误,请核对"); return Result.error("第" + (i + 1) + "条数据,任务时长输入错误,请核对");
} }
Double d; Double d;
@ -429,10 +482,10 @@ public class RulexController extends JeecgController<Rulex, IRulexService> {
} catch (Exception e) { } catch (Exception e) {
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); //手动回滚,这样上层就无需去处理异常了 TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); //手动回滚,这样上层就无需去处理异常了
message.put("isError", "true"); message.put("isError", "true");
message.put("closeable","true"); message.put("closeable", "true");
message.put("status","第"+(i + 1) +"条数据,实际时长输入错误,请核对"); message.put("status", "第" + (i + 1) + "条数据,实际时长输入错误,请核对");
webSocketUtils.sendMessage(loginUser.getId(), message); webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第"+(i + 1) +"条数据,实际时长输入错误,请核对"); return Result.error("第" + (i + 1) + "条数据,实际时长输入错误,请核对");
} }
rulex.setRealDuration(d); rulex.setRealDuration(d);
Integer integer; Integer integer;
@ -441,16 +494,16 @@ public class RulexController extends JeecgController<Rulex, IRulexService> {
} catch (Exception e) { } catch (Exception e) {
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); //手动回滚,这样上层就无需去处理异常了 TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); //手动回滚,这样上层就无需去处理异常了
message.put("isError", "true"); message.put("isError", "true");
message.put("closeable","true"); message.put("closeable", "true");
message.put("status","第"+(i + 1) +"条数据,任务等级输入错误,请核对"); message.put("status", "第" + (i + 1) + "条数据,任务等级输入错误,请核对");
webSocketUtils.sendMessage(loginUser.getId(), message); webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第"+(i + 1) +"条数据,任务等级输入错误,请核对"); return Result.error("第" + (i + 1) + "条数据,任务等级输入错误,请核对");
} }
rulex.setWorkLevel(integer); rulex.setWorkLevel(integer);
String workStatus = ruleVo.getWorkStatus(); String workStatus = ruleVo.getWorkStatus();
// LambdaQueryWrapper<SysDictItem> sysDictItemLambdaQueryWrapper = new LambdaQueryWrapper<>(); // LambdaQueryWrapper<SysDictItem> sysDictItemLambdaQueryWrapper = new LambdaQueryWrapper<>();
// sysDictItemLambdaQueryWrapper.eq(SysDictItem::getItemText, workStatus).eq(SysDictItem::getDictId, "1645268542514421762"); // sysDictItemLambdaQueryWrapper.eq(SysDictItem::getItemText, workStatus).eq(SysDictItem::getDictId, "1645268542514421762");
// SysDictItem sysDictItem = sysDictItemMapper.selectOne(sysDictItemLambdaQueryWrapper); // SysDictItem sysDictItem = sysDictItemMapper.selectOne(sysDictItemLambdaQueryWrapper);
if (workStatus.equals("未发布")) if (workStatus.equals("未发布"))
rulex.setWorkStatus(0); rulex.setWorkStatus(0);
@ -467,15 +520,15 @@ public class RulexController extends JeecgController<Rulex, IRulexService> {
else { else {
iRuleVoService.remove(null); iRuleVoService.remove(null);
message.put("isError", "true"); message.put("isError", "true");
message.put("closeable","true"); message.put("closeable", "true");
message.put("status","第"+(i + 1) +"条数据,任务状态输入错误,请核对"); message.put("status", "第" + (i + 1) + "条数据,任务状态输入错误,请核对");
webSocketUtils.sendMessage(loginUser.getId(), message); webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第"+(i + 1) +"条数据,任务状态输入错误,请核对"); return Result.error("第" + (i + 1) + "条数据,任务状态输入错误,请核对");
} }
String status = ruleVo.getStatus(); String status = ruleVo.getStatus();
// LambdaQueryWrapper<SysDictItem> sysDictItemLambdaQueryWrapper2 = new LambdaQueryWrapper<>(); // LambdaQueryWrapper<SysDictItem> sysDictItemLambdaQueryWrapper2 = new LambdaQueryWrapper<>();
// sysDictItemLambdaQueryWrapper2.eq(SysDictItem::getItemText, status).eq(SysDictItem::getDictId, "1645264493205491713"); // sysDictItemLambdaQueryWrapper2.eq(SysDictItem::getItemText, status).eq(SysDictItem::getDictId, "1645264493205491713");
// SysDictItem sysDictItem2 = sysDictItemMapper.selectOne(sysDictItemLambdaQueryWrapper2); // SysDictItem sysDictItem2 = sysDictItemMapper.selectOne(sysDictItemLambdaQueryWrapper2);
if (status.equals("正常")) if (status.equals("正常"))
rulex.setStatus(1); rulex.setStatus(1);
else if (status.equals("停用")) else if (status.equals("停用"))
@ -485,10 +538,10 @@ public class RulexController extends JeecgController<Rulex, IRulexService> {
else { else {
iRuleVoService.remove(null); iRuleVoService.remove(null);
message.put("isError", "true"); message.put("isError", "true");
message.put("closeable","true"); message.put("closeable", "true");
message.put("status","第"+(i + 1) +"条数据,规则状态输入错误,请核对"); message.put("status", "第" + (i + 1) + "条数据,规则状态输入错误,请核对");
webSocketUtils.sendMessage(loginUser.getId(), message); webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第"+(i + 1) +"条数据,规则状态输入错误,请核对"); return Result.error("第" + (i + 1) + "条数据,规则状态输入错误,请核对");
} }
String verisonStatus = ruleVo.getVerisonStatus(); String verisonStatus = ruleVo.getVerisonStatus();
LambdaQueryWrapper<SysDictItem> sysDictItemLambdaQueryWrapper3 = new LambdaQueryWrapper<>(); LambdaQueryWrapper<SysDictItem> sysDictItemLambdaQueryWrapper3 = new LambdaQueryWrapper<>();
@ -497,51 +550,53 @@ public class RulexController extends JeecgController<Rulex, IRulexService> {
if (sysDictItem3 == null) { if (sysDictItem3 == null) {
iRuleVoService.remove(null); iRuleVoService.remove(null);
message.put("isError", "true"); message.put("isError", "true");
message.put("closeable","true"); message.put("closeable", "true");
message.put("status","第"+(i + 1) +"条数据,版本状态输入错误,请核对"); message.put("status", "第" + (i + 1) + "条数据,版本状态输入错误,请核对");
webSocketUtils.sendMessage(loginUser.getId(), message); webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第"+(i + 1) +"条数据,版本状态输入错误,请核对"); return Result.error("第" + (i + 1) + "条数据,版本状态输入错误,请核对");
} }
rulex.setVerisonStatus(Integer.valueOf(sysDictItem3.getItemValue())); rulex.setVerisonStatus(Integer.valueOf(sysDictItem3.getItemValue()));
Date date;
//String转Date //String转Date
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String startTime = ruleVo.getStartTime();
if (!StringUtils.isBlank(startTime)) {
try { String time = getTime(startTime);
String startTime = ruleVo.getStartTime();
if (startTime != null) try {
if (!validator.isValid(startTime)) { date = simpleDateFormat.parse(time);
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); //手动回滚,这样上层就无需去处理异常了 rulex.setStartTime(date);
message.put("isError", "true"); } catch (ParseException e) {
message.put("closeable","true"); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); //手动回滚,这样上层就无需去处理异常了
message.put("status","第"+(i + 1) +"条数据,开始时间输入错误"); message.put("isError", "true");
webSocketUtils.sendMessage(loginUser.getId(), message); message.put("closeable", "true");
return Result.error("第"+(i + 1) +"条数据,开始时间输入错误"); message.put("status", "第" + (i + 1) + "条数据,开始时间输入错误");
} else { webSocketUtils.sendMessage(loginUser.getId(), message);
Date date = simpleDateFormat.parse(startTime); return Result.error("第" + (i + 1) + "条数据,开始时间输入错误");
rulex.setStartTime(date); }
}
String submitTime = ruleVo.getSubmitTime();
if (submitTime != null)
if (!validator.isValid(submitTime)) {
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); //手动回滚,这样上层就无需去处理异常了
message.put("isError", "true");
message.put("closeable","true");
message.put("status","第"+(i + 1) +"条数据,提交时间输入错误");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第"+(i + 1) +"条数据,提交时间输入错误");
} else {
Date date1 = simpleDateFormat.parse(submitTime);
rulex.setSubmitTime(date1);
}
} catch (ParseException e) {
e.printStackTrace();
} }
rulex.setRuleNo(ruleVo.getRuleNo()); String submitTime = ruleVo.getSubmitTime();
if (!StringUtils.isBlank(submitTime)){
String submitTimeT = getTime(submitTime);
try {
date = simpleDateFormat.parse(submitTimeT);
rulex.setSubmitTime(date);
} catch (ParseException e) {
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); //手动回滚,这样上层就无需去处理异常了
message.put("isError", "true");
message.put("closeable", "true");
message.put("status", "第" + (i + 1) + "条数据,开始时间输入错误");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第" + (i + 1) + "条数据,开始时间输入错误");
}
}
//规则序号
String ruleNo = ruleVo.getRuleNo();
rulex.setRuleNo(ruleNo);
//规则编码 //规则编码
String ruleCode = ruleVo.getRuleCode(); String ruleCode = ruleVo.getRuleCode();
String functionCode1 = byId1.getFunctionCode(); String functionCode1 = functionx.getFunctionCode();
if (ruleCode == null) { if (ruleCode == null) {
message.put("isError", "true"); message.put("isError", "true");
message.put("closeable", "true"); message.put("closeable", "true");
@ -550,7 +605,7 @@ public class RulexController extends JeecgController<Rulex, IRulexService> {
return Result.error("第" + (i + 1) + "条数据,规则编码错误,请核对"); return Result.error("第" + (i + 1) + "条数据,规则编码错误,请核对");
} }
//截取到功能编码校验(去除后三位) //截取到功能编码校验(去除后三位)
if (!ruleCode.substring(0,ruleCode.length() - 3).equals(functionCode1)){ if (!ruleCode.substring(0, ruleCode.length() - 3).equals(functionCode1)) {
message.put("isError", "true"); message.put("isError", "true");
message.put("closeable", "true"); message.put("closeable", "true");
message.put("status", "第" + (i + 1) + "条数据,规则编码错误,请核对"); message.put("status", "第" + (i + 1) + "条数据,规则编码错误,请核对");
@ -559,10 +614,10 @@ public class RulexController extends JeecgController<Rulex, IRulexService> {
} }
//后三位 //后三位
String substring = ruleCode.substring(ruleCode.length()-3); String substring = ruleCode.substring(ruleCode.length() - 3);
try { try {
Integer integer1 = Integer.valueOf(substring); Integer integer1 = Integer.valueOf(substring);
if (integer1<0){ if (integer1 < 0) {
message.put("isError", "true"); message.put("isError", "true");
message.put("closeable", "true"); message.put("closeable", "true");
message.put("status", "第" + (i + 1) + "条数据,规则编码错误,请核对"); message.put("status", "第" + (i + 1) + "条数据,规则编码错误,请核对");
@ -587,58 +642,58 @@ public class RulexController extends JeecgController<Rulex, IRulexService> {
rulex.setDiagrams(diagrams); rulex.setDiagrams(diagrams);
//版本号 //版本号
String verison = ruleVo.getVerison(); String verison = ruleVo.getVerison();
if (ruleVo.getVerison()==null||verison.length() >=5){ if (ruleVo.getVerison() == null || verison.length() >= 5) {
message.put("isError", "true"); message.put("isError", "true");
message.put("closeable", "true"); message.put("closeable", "true");
message.put("status", "第" + (i + 1) + "条数据,版本号错误,请核对"); message.put("status", "第" + (i + 1) + "条数据,版本号错误,请核对");
webSocketUtils.sendMessage(loginUser.getId(), message); webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第" + (i + 1) + "条数据,版本号错误,请核对"); return Result.error("第" + (i + 1) + "条数据,版本号错误,请核对");
} }
try { try {
Integer integer2 = Integer.valueOf(verison); Integer integer2 = Integer.valueOf(verison);
if (integer2>0) if (integer2 > 0)
rulex.setVerison(String.valueOf(integer2)); rulex.setVerison(String.valueOf(integer2));
else { else {
message.put("isError", "true"); message.put("isError", "true");
message.put("closeable", "true"); message.put("closeable", "true");
message.put("status", "第" + (i + 1) + "条数据,版本号输入错误,请核对"); message.put("status", "第" + (i + 1) + "条数据,版本号输入错误,请核对");
webSocketUtils.sendMessage(loginUser.getId(), message); webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第" + (i + 1) + "条数据,版本号输入错误,请核对"); return Result.error("第" + (i + 1) + "条数据,版本号输入错误,请核对");
} }
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
message.put("isError", "true"); message.put("isError", "true");
message.put("closeable", "true"); message.put("closeable", "true");
message.put("status", "第" + (i + 1) + "条数据,版本号输入错误,请核对"); message.put("status", "第" + (i + 1) + "条数据,版本号输入错误,请核对");
webSocketUtils.sendMessage(loginUser.getId(), message); webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("第" + (i + 1) + "条数据,版本号输入错误,请核对"); return Result.error("第" + (i + 1) + "条数据,版本号输入错误,请核对");
} }
//责任人 //责任人
String managerUsers = ruleVo.getManagerUsers(); String managerUsers = ruleVo.getManagerUsers();
if (managerUsers != null){ if (managerUsers != null) {
LambdaQueryWrapper<SysUser> sysUserLambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<SysUser> sysUserLambdaQueryWrapper = new LambdaQueryWrapper<>();
String[] split = managerUsers.split(","); String[] split = managerUsers.split(",");
sysUserLambdaQueryWrapper.in(SysUser::getUsername,split); sysUserLambdaQueryWrapper.in(SysUser::getUsername, split);
List<SysUser> iSysUserServiceOne = iSysUserService.list(sysUserLambdaQueryWrapper); List<SysUser> iSysUserServiceOne = iSysUserService.list(sysUserLambdaQueryWrapper);
if(iSysUserServiceOne==null){ if (iSysUserServiceOne == null) {
message.put("isError", "true"); message.put("isError", "true");
message.put("status","导入失败,责任人信息查询不到"); message.put("status", "导入失败,责任人信息查询不到");
message.put("closeable","true"); message.put("closeable", "true");
webSocketUtils.sendMessage(loginUser.getId(), message); webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,责任人信息查询不到"); return Result.error("导入失败,责任人信息查询不到");
} }
if (iSysUserServiceOne.size()>1) { if (iSysUserServiceOne.size() > 1) {
List<String> list3 = iSysUserServiceOne.stream().map(SysUser::getId).collect(Collectors.toList()); List<String> list3 = iSysUserServiceOne.stream().map(SysUser::getId).collect(Collectors.toList());
if (list3 == null) { if (list3 == null) {
message.put("isError", "true"); message.put("isError", "true");
message.put("status","导入失败,责任人信息查询不到"); message.put("status", "导入失败,责任人信息查询不到");
message.put("closeable","true"); message.put("closeable", "true");
webSocketUtils.sendMessage(loginUser.getId(), message); webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,责任人信息查询不到"); return Result.error("导入失败,责任人信息查询不到");
} }
rulex.setManagerUsers(Joiner.on(",").join(list3)); rulex.setManagerUsers(Joiner.on(",").join(list3));
}else if (iSysUserServiceOne.size()==1){ } else if (iSysUserServiceOne.size() == 1) {
String id = iSysUserServiceOne.get(0).getId(); String id = iSysUserServiceOne.get(0).getId();
rulex.setManagerUsers(id); rulex.setManagerUsers(id);
} }
@ -698,5 +753,51 @@ public class RulexController extends JeecgController<Rulex, IRulexService> {
} }
return null; return null;
} }
/**
* 将日期数字转为时间格式
* daysDuration = 44745
*
* @param daysDuration
* @return
*/
public String getTime(String daysDuration) {
//如果不是数字
if(!isNumeric(daysDuration)){
return daysDuration;
}
//如果是数字
BigDecimal bd = new BigDecimal(daysDuration);
int days = bd.intValue();//天数
int mills = (int) Math.round(bd.subtract(new BigDecimal(days)).doubleValue() * 24 * 3600);
//获取时间
Calendar c = Calendar.getInstance();
c.set(1900, 0, 1);
c.add(Calendar.DATE, days);
int hour = mills / 3600;
int minute = (mills - hour * 3600) / 60;
int second = mills - hour * 3600 - minute * 60;
c.set(Calendar.HOUR_OF_DAY, hour);
c.set(Calendar.MINUTE, minute);
c.set(Calendar.SECOND, second);
return simpleDateFormat.format(c.getTime());
}
/**
* 校验是否数据含小数点
*
* @param str
* @return
*/
private static boolean isNumeric(String str){
Pattern pattern = Pattern.compile("[0-9]+\\.*[0-9]*");
Matcher isNum = pattern.matcher(str);
if(!isNum.matches()){
return false;
}
return true;
}
} }

@ -1,7 +1,10 @@
package org.jeecg.modules.demo.rulex.entity; package org.jeecg.modules.demo.rulex.entity;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data; import lombok.Data;
@ -59,6 +62,14 @@ public class RuleVo implements Serializable {
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期") @ApiModelProperty(value = "更新日期")
private String updateTime; private String updateTime;
/**
* 对应模块父id
*/
@TableField(exist = false)
@Excel(name = "对应模块父模块", width = 15)
@ApiModelProperty(value = "对应模块")
private java.lang.String modulePid;
/** /**
* 对应模块id * 对应模块id
*/ */

Loading…
Cancel
Save