Browse Source

添加节点类型、标签等

master
陈裕财 4 years ago
parent
commit
e838adc064
  1. 66
      xm-core/src/main/java/com/xm/core/ctrl/XmTaskController.java
  2. 2
      xm-core/src/main/java/com/xm/core/ctrl/XmTaskWorkloadController.java
  3. 2
      xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmTaskWorkloadMapper.xml

66
xm-core/src/main/java/com/xm/core/ctrl/XmTaskController.java

@ -327,16 +327,7 @@ public class XmTaskController {
if(ids==null || ids.size()==0){
ResponseHelper.failed("ids-0","ids不能为空");
}
XmTask xmTask= BaseUtils.fromMap(xmTaskMap,XmTask.class);
List<XmTask> xmTasksDb=xmTaskService.selectListByIds(ids);
if(xmTasksDb==null ||xmTasksDb.size()==0){
ResponseHelper.failed("tasks-0","该任务已不存在");
}
List<XmTask> can=new ArrayList<>();
List<XmTask> no=new ArrayList<>();
if(can.size()<=0){
//return ResponseHelper.failed("noqx","您无权修改选中的任务。");
}
Set<String> fields=new HashSet<>();
fields.add("childrenCnt");
fields.add("ntype");
@ -349,22 +340,55 @@ public class XmTaskController {
Set<String> fieldKey=xmTaskMap.keySet().stream().filter(i-> fieldsMap.containsKey(i)).collect(Collectors.toSet());
fieldKey=fieldKey.stream().filter(i->!StringUtils.isEmpty(xmTaskMap.get(i) )).collect(Collectors.toSet());
if(fieldKey.size()>0){
fieldKey=fieldKey.stream().filter(i->!StringUtils.isEmpty(xmTaskMap.get(i) )).collect(Collectors.toSet());
if(fieldKey.contains("budgetWorkload")){//如果调整了预估工时需要重新计算进度数据
if(xmTasksDb.size()>0){
this.xmTaskService.batchUpdateBudgetWorkloadAndRate(xmTasksDb.stream().map(i->i.getId()).collect(Collectors.toSet()).stream().collect(Collectors.toList()),NumberUtil.getBigDecimal(xmTaskMap.get("budgetWorkload")));
this.xmTaskService.batchSumParents(xmTasksDb);
if(fieldKey.size()<=0) {
return ResponseHelper.failed("fieldKey-0","没有需要更新的字段");
}
XmTask xmTask= BaseUtils.fromMap(xmTaskMap,XmTask.class);
List<XmTask> xmTasksDb=xmTaskService.selectListByIds(ids);
if(xmTasksDb==null ||xmTasksDb.size()==0){
return ResponseHelper.failed("tasks-0","该任务已不存在");
}
List<XmTask> can=new ArrayList<>();
List<XmTask> no=new ArrayList<>();
User user = LoginUtils.getCurrentUserInfo();
for (XmTask xmTaskDb : xmTasksDb) {
tips=groupService.checkIsAdmOrTeamHeadOrAssByPtype(user,user.getUserid(),xmTaskDb.getPtype(),xmTaskDb.getProductId(),xmTaskDb.getProjectId());
if(!tips.isOk()){
if(user.getUserid().equals(xmTaskDb.getExecutorUserid())||user.getUserid().equals(xmTaskDb.getCreateUserid())){
can.add(xmTaskDb);
}else{
no.add(xmTaskDb);
}
}else{
xmTaskService.editSomeFields(xmTaskMap);
can.add(xmTaskDb);
}
xmRecordService.addXmTaskRecord(xmTask.getProjectId(),xmTask.getId(),"修改项目任务","修改任务"+xmTask.getMenuName(),"", JSON.toJSONString(xmTask));
}
if(can.size()>0){
xmTaskMap.put("ids",can.stream().map(i->i.getId()).collect(Collectors.toList()));
if(fieldKey.contains("budgetWorkload")){//如果调整了预估工时需要重新计算进度数据
if(xmTasksDb.size()>0){
this.xmTaskService.batchUpdateBudgetWorkloadAndRate(xmTasksDb.stream().map(i->i.getId()).collect(Collectors.toSet()).stream().collect(Collectors.toList()),NumberUtil.getBigDecimal(xmTaskMap.get("budgetWorkload")));
this.xmTaskService.batchSumParents(xmTasksDb);
}
}else{
xmTaskService.editSomeFields(xmTaskMap);
}
xmRecordService.addXmTaskRecord(xmTask.getProjectId(),xmTask.getId(),"修改项目任务","修改任务"+xmTask.getMenuName(),"", JSON.toJSONString(xmTask));
}
List<String> msgs=new ArrayList<>();
if(can.size()>0){
msgs.add(String.format("成功更新以下%s个任务",can.size()));
}
if(no.size()>0){
msgs.add(String.format("以下%s个任务无权限更新",no.size()));
}
if(can.size()>0){
tips.setOkMsg(msgs.stream().collect(Collectors.joining()));
}else {
tips.setFailureMsg(msgs.stream().collect(Collectors.joining()));
}
//m.put("data",xmMenu);
}catch (BizException e) {
tips=e.getTips();

2
xm-core/src/main/java/com/xm/core/ctrl/XmTaskWorkloadController.java

@ -450,7 +450,7 @@ public class XmTaskWorkloadController {
List<XmTaskWorkload> canChanges=new ArrayList<>();
List<XmTaskWorkload> sstatusNot01=new ArrayList<>();
for (XmTaskWorkload xmTaskWorkload : xmTaskWorkloadsDb) {
if(!"1".equals(xmTaskWorkload.getSstatus()) && !"0".equals(xmTaskWorkload.getSstatus())){
if(!"1".equals(xmTaskWorkload.getSstatus()) && !"0".equals(xmTaskWorkload.getSstatus()) &&StringUtils.hasText(xmTaskWorkload.getSstatus())){
sstatusNot01.add(xmTaskWorkload);
}else{
canChanges.add(xmTaskWorkload);

2
xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmTaskWorkloadMapper.xml

@ -66,7 +66,7 @@
<!-- 通过条件查询获取数据列表 返回list<map> -->
<select id="selectListMapByWhere" parameterType="HashMap" resultType="HashMap">
select res.* ,task.project_name,task.name as task_name from xm_task_workload res
select res.* ,task.project_name,task.name as task_name,task.budget_workload,task.act_workload from xm_task_workload res
inner join xm_task task
on res.task_id = task.id
<where>

Loading…
Cancel
Save