模块管理导入功能交互

dev^2
lijinyu 1 year ago
parent 7f6569753b
commit 9a5f1c11a1
  1. 10
      ant-design-vue-jeecg/src/views/modulex/ModulexList.vue
  2. 7
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/modulex/entity/ModulexTemplate.java
  3. 127
      jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/modulex/service/impl/ModulexServiceImpl.java

@ -525,12 +525,16 @@ export default {
'项目名称(必填): 从已存在的项目中选',
'中文名称(必填): 相同上级的模块不能重名',
'英文名称(必填): 中文名称的英文名称',
'模块编码(必填): 项目编码+模块缩写',
'内容描述(非必填): 最大长度500',
'责任人(非必填): 模块的开发任务可以分配给1个或多个人员',
'任务等级(必填): 值: 1、2、3、4、5',
'开发状态(必填):值: 未发布、已发布、开发中、已完成、已撤回、已取消',
'任务状态(必填):值: 未发布、已发布、开发中、已完成、已撤回、已取消',
'发布时间(非必填):格式为yyyy-MM-dd HH:mm:ss 例:2023-01-01 12:00:00',
'任务时长(必填): 单位小时: 等于下级模块时长的和;默认1(小时)',
'实际时长(必填): 单位小时;最小0.1小时;默认16',
'开始时间(非必填):格式为yyyy-MM-dd HH:mm:ss 例:2023-01-01 12:00:00',
'提交时间(非必填):格式为yyyy-MM-dd HH:mm:ss 例:2023-01-01 12:00:00',
'实际时长(非必填): 单位小时;最小0.1小时',
'用户角色(非必填):对应角色列表',
'关联实体(非必填): 关联实体表;关联的是该模块管理的实体',
'模块状态(必填): 可填入值为正常、停用、废弃',
'版本状态(必填): 可填入值为当前、历史',

@ -71,12 +71,7 @@ public class ModulexTemplate implements Serializable {
@Excel(name = "英文名称", width = 15)
@ApiModelProperty(value = "英文名称")
private String moduleEnName;
/**
* 模块编码
*/
@Excel(name = "模块编码", width = 15)
@ApiModelProperty(value = "模块编码")
private String moduleCode;
/**
* 内容描述
*/

@ -409,25 +409,24 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
String name = formatter.formatCellValue(cell,evaluator);
propertyNames.add(name);
}
if(propertyNames.size()!=19 || !propertyNames.get(0).equals("上级模块名称")
if(propertyNames.size()!=18 || !propertyNames.get(0).equals("上级模块名称")
|| !propertyNames.get(1).equals("项目名称")
|| !propertyNames.get(2).equals("中文名称")
|| !propertyNames.get(3).equals("英文名称")
|| !propertyNames.get(4).equals("模块编码")
|| !propertyNames.get(5).equals("内容描述")
|| !propertyNames.get(6).equals("责任人")
|| !propertyNames.get(7).equals("任务等级")
|| !propertyNames.get(8).equals("任务状态")
|| !propertyNames.get(9).equals("发布时间")
|| !propertyNames.get(10).equals("任务时长")
|| !propertyNames.get(11).equals("开始时间")
|| !propertyNames.get(12).equals("提交时间")
|| !propertyNames.get(13).equals("实际时长")
|| !propertyNames.get(14).equals("用户角色")
|| !propertyNames.get(15).equals("关联实体")
|| !propertyNames.get(16).equals("模块状态")
|| !propertyNames.get(17).equals("版本状态")
|| !propertyNames.get(18).equals("版本号")){
|| !propertyNames.get(4).equals("内容描述")
|| !propertyNames.get(5).equals("责任人")
|| !propertyNames.get(6).equals("任务等级")
|| !propertyNames.get(7).equals("任务状态")
|| !propertyNames.get(8).equals("发布时间")
|| !propertyNames.get(9).equals("任务时长")
|| !propertyNames.get(10).equals("开始时间")
|| !propertyNames.get(11).equals("提交时间")
|| !propertyNames.get(12).equals("实际时长")
|| !propertyNames.get(13).equals("用户角色")
|| !propertyNames.get(14).equals("关联实体")
|| !propertyNames.get(15).equals("模块状态")
|| !propertyNames.get(16).equals("版本状态")
|| !propertyNames.get(17).equals("版本号")){
message.put("isError", "true");
message.put("status", "模块管理execl表格不规范,请对比模板重新上传");
message.put("closeable","true");
@ -459,48 +458,52 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
modulexVo.setModuleEnName(value);
break;
case 4:
modulexVo.setModuleCode(value);
break;
case 5:
if(value.length()>500){
message.put("isError", "true");
message.put("status","导入失败,第" + (i+4) +"行" +"内容描述过长");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("内容描述过长,"+"请重新导入");
}
modulexVo.setPmDescribe(value);
break;
case 6:
case 5:
modulexVo.setManagerUsers(value);
break;
case 7:
case 6:
modulexVo.setWorkLevel(value);
break;
case 8:
case 7:
modulexVo.setWorkStatus(value);
break;
case 9:
case 8:
modulexVo.setPublishTime(value);
break;
case 10:
case 9:
modulexVo.setDuration(value);
break;
case 11:
case 10:
modulexVo.setStartTime(value);
break;
case 12:
case 11:
modulexVo.setSubmitTime(value);
break;
case 13:
case 12:
modulexVo.setRealDuration(value);
break;
case 14:
case 13:
modulexVo.setUserRole(value);
break;
case 15:
case 14:
modulexVo.setRelatedBean(value);
break;
case 16:
case 15:
modulexVo.setStatus(value);
break;
case 17:
case 16:
modulexVo.setVerisonStatus(value);
break;
case 18:
case 17:
modulexVo.setVerison(value);
break;
default:
@ -660,14 +663,14 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,英文名称不能为空");
}modulex.setModuleEnName(moduleEnName);
String moduleCode = modulexTemplate.getModuleCode();
if(moduleCode==null||moduleCode.length()>30){
message.put("isError", "true");
message.put("status","导入失败,第" + (i+4) +"行" +"模块编码不能为空或者模块编码过长");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,模块编码不能为空或者模块编码过长");
}
// String moduleCode = modulexTemplate.getModuleCode();
// if(moduleCode==null||moduleCode.length()>30){
// message.put("isError", "true");
// message.put("status","导入失败,第" + (i+4) +"行" +"模块编码不能为空或者模块编码过长");
// message.put("closeable","true");
// webSocketUtils.sendMessage(loginUser.getId(), message);
// return Result.error("导入失败,模块编码不能为空或者模块编码过长");
// }
String modulecode = null;
LambdaQueryWrapper<Projectx> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(Projectx::getProjectName,projectId);
@ -676,20 +679,20 @@ 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("项目编码不存在,请重新填写");
return Result.error("导入失败,模块对应的项目编码不存在,请完善对应项目里的项目编码后,重新导入");
}
modulecode = projectCode + firstChar;
if(!modulecode.equals(moduleCode)){
message.put("isError", "true");
message.put("status","导入失败,第" + (i+4) +"行" +"模块编码不规范,导入失败");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("模块编码不规范,导入失败");
}
modulex.setModuleCode(moduleCode);
// if(!modulecode.equals(moduleCode)){
// message.put("isError", "true");
// message.put("status","导入失败,第" + (i+4) +"行" +"模块编码不规范,导入失败");
// message.put("closeable","true");
// webSocketUtils.sendMessage(loginUser.getId(), message);
// return Result.error("模块编码不规范,导入失败");
// }
modulex.setModuleCode(modulecode);
String pmDescribe = modulexTemplate.getPmDescribe();
if(StringUtils.isBlank(pmDescribe)){
modulex.setPmDescribe(null);
@ -829,6 +832,13 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,任务时长不规范");
}
if(parseDouble<0){
message.put("isError", "true");
message.put("status","导入失败,第" + (i+4) +"行" +"任务时长不规范");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,任务时长不规范");
}
modulex.setDuration(parseDouble);
}
String startTime = modulexTemplate.getStartTime();
@ -865,11 +875,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("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,实际时长不能为空");
modulex.setRealDuration(null);
}else {
double parseDouble = 0;
try {
@ -883,10 +889,10 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
}
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小时");
return Result.error("导入失败,实际时长最小时间0.1小时");
}
modulex.setRealDuration(parseDouble);
}
@ -992,6 +998,13 @@ public class ModulexServiceImpl extends ServiceImpl<ModulexMapper, Modulex> impl
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,版本号不能为空");
}
if(parseInt<0){
message.put("isError", "true");
message.put("status","导入失败,第" + (i+4) +"行" + "版本号不能规范");
message.put("closeable","true");
webSocketUtils.sendMessage(loginUser.getId(), message);
return Result.error("导入失败,版本号不规范");
}
modulex.setVerison(parseInt);
}
modulexList.add(modulex);

Loading…
Cancel
Save