Browse Source

项目计划修改(待增加时间校验和次数)

master
gjh 1 week ago
parent
commit
657e73b4cb
  1. 19
      huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouPlaninfoServiceImpl.java

19
huzhou/src/main/java/com/easy/admin/modules/huzhou/service/impl/HuzhouPlaninfoServiceImpl.java

@ -839,13 +839,13 @@ public class HuzhouPlaninfoServiceImpl extends ServiceImpl<HuzhouPlaninfoMapper,
@Override @Override
public void modifyPlaninfo(MultipartFile multipartFile, String projectid) throws Exception { public void modifyPlaninfo(MultipartFile multipartFile, String projectid) throws Exception {
//增加文件修改条件:项目立项阶段全部完成之后才可以修改项目计划 //增加文件修改条件:项目立项阶段全部完成之后才可以修改项目计划
LambdaQueryWrapper<HuzhouPlaninfo> queryWrapper = new LambdaQueryWrapper<>(); /* LambdaQueryWrapper<HuzhouPlaninfo> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(HuzhouPlaninfo::getProjectId,projectid); queryWrapper.eq(HuzhouPlaninfo::getProjectId,projectid);
queryWrapper.eq(HuzhouPlaninfo::getTaskName,"项目立项阶段"); queryWrapper.eq(HuzhouPlaninfo::getTaskName,"项目立项阶段");
queryWrapper.eq(HuzhouPlaninfo::getIsfinish,"2"); queryWrapper.eq(HuzhouPlaninfo::getIsfinish,"2");
if ( this.list(queryWrapper).size()<1){ if ( this.list(queryWrapper).size()<1){
throw new EasyException("项目立项阶段未完成,无法修改项目计划!"); throw new EasyException("项目立项阶段未完成,无法修改项目计划!");
} }*/
//解析项目计划文件 //解析项目计划文件
HashMap<String, Object> hashMap = getPlanInfoListFromFile(multipartFile, projectid); HashMap<String, Object> hashMap = getPlanInfoListFromFile(multipartFile, projectid);
@ -854,10 +854,10 @@ public class HuzhouPlaninfoServiceImpl extends ServiceImpl<HuzhouPlaninfoMapper,
if (!res) { if (!res) {
throw new EasyException((String) hashMap.get("msg")); throw new EasyException((String) hashMap.get("msg"));
} }
// List<HuzhouPlaninfo> excelList =(ArrayList<HuzhouPlaninfo>) hashMap.get("arr");
List<HuzhouPlaninfo> huzhouPlaninfoArrayList = (ArrayList<HuzhouPlaninfo>) hashMap.get("arr"); List<HuzhouPlaninfo> huzhouPlaninfoArrayList = (ArrayList<HuzhouPlaninfo>) hashMap.get("arr");
// 深克隆备份Excel重点计划以供后续做差集操作 // 深克隆备份Excel重点计划以供后续做差集操作
List<HuzhouPlaninfo> excelList = SerializationUtils.clone((ArrayList<HuzhouPlaninfo>) hashMap.get("arr")); List<HuzhouPlaninfo> excelList = SerializationUtils.clone((ArrayList<HuzhouPlaninfo>) hashMap.get("arr"));
// 未完成的项目则可以修改
String isAllow = IsAllowModifyPlaninfo(projectid, huzhouPlaninfoArrayList); String isAllow = IsAllowModifyPlaninfo(projectid, huzhouPlaninfoArrayList);
if (!"1".equals(isAllow)) { if (!"1".equals(isAllow)) {
throw new EasyException(isAllow); throw new EasyException(isAllow);
@ -878,6 +878,11 @@ public class HuzhouPlaninfoServiceImpl extends ServiceImpl<HuzhouPlaninfoMapper,
wrapper.set(HuzhouPlaninfo::getGroupId,huzhouPlaninfoArrayList.get(0).getGroupId()); wrapper.set(HuzhouPlaninfo::getGroupId,huzhouPlaninfoArrayList.get(0).getGroupId());
update(null,wrapper); update(null,wrapper);
//批量新增 //批量新增
huzhouPlaninfoArrayList.removeIf(item -> "项目立项阶段".equals(item.getTaskName()));
for (HuzhouPlaninfo huzhouPlaninfo : huzhouPlaninfoArrayList) {
log.info("待插入的计划信息为{}",huzhouPlaninfo.getTaskLevel());
}
saveBatch(huzhouPlaninfoArrayList); saveBatch(huzhouPlaninfoArrayList);
//创建流程 //创建流程
@ -933,7 +938,7 @@ public class HuzhouPlaninfoServiceImpl extends ServiceImpl<HuzhouPlaninfoMapper,
try { try {
// 过滤条件:只保留 taskLevel 大于 2 的记录 // 过滤条件:只保留 taskLevel 大于 2 的记录
BigDecimal taskLevel = new BigDecimal(item.getTaskLevel()); BigDecimal taskLevel = new BigDecimal(item.getTaskLevel());
return taskLevel.compareTo(BigDecimal.valueOf(1.7)) >= 0; return taskLevel.compareTo(BigDecimal.valueOf(1.6)) > 0;
} catch (NumberFormatException e) { } catch (NumberFormatException e) {
// 如果转换失败,可以选择处理异常或忽略这条记录 // 如果转换失败,可以选择处理异常或忽略这条记录
throw new EasyException("无法将 taskLevel 转换为数字: " + item.getTaskLevel()); throw new EasyException("无法将 taskLevel 转换为数字: " + item.getTaskLevel());
@ -957,9 +962,9 @@ public class HuzhouPlaninfoServiceImpl extends ServiceImpl<HuzhouPlaninfoMapper,
}); });
huzhouPlaninfoArrayList.addAll(tmpDifList); huzhouPlaninfoArrayList.addAll(tmpDifList);
// for (HuzhouPlaninfo huzhouPlaninfo : huzhouPlaninfoArrayList) { for (HuzhouPlaninfo huzhouPlaninfo : huzhouPlaninfoArrayList) {
// log.info("修改后的计划信息为{}",huzhouPlaninfo.getTaskLevel()); log.info("修改后的计划信息为{}",huzhouPlaninfo.getTaskLevel());
// } }
} }
@Override @Override

Loading…
Cancel
Save