Browse Source

添加节点类型、标签等

master
陈裕财 4 years ago
parent
commit
bf62f46d29
  1. 13
      xm-core/src/main/java/com/xm/core/ctrl/XmMenuController.java
  2. 50
      xm-core/src/main/java/com/xm/core/ctrl/XmTaskController.java
  3. 4
      xm-core/src/main/java/com/xm/core/service/XmMenuService.java
  4. 4
      xm-core/src/main/java/com/xm/core/service/XmTaskService.java
  5. 9
      xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmMenuMapper.xml
  6. 11
      xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmTaskMapper.xml

13
xm-core/src/main/java/com/xm/core/ctrl/XmMenuController.java

@ -273,6 +273,7 @@ public class XmMenuController {
} }
xmMenuService.parentIdPathsCalcBeforeSave(xmMenu); xmMenuService.parentIdPathsCalcBeforeSave(xmMenu);
xmMenu.setStatus("0"); xmMenu.setStatus("0");
xmMenu.setChildrenCnt(0);
xmMenuService.insert(xmMenu); xmMenuService.insert(xmMenu);
xmRecordService.addXmMenuRecord(xmMenu.getProductId(),xmMenu.getMenuId(),"新增产品需求","新增需求"+xmMenu.getMenuName()); xmRecordService.addXmMenuRecord(xmMenu.getProductId(),xmMenu.getMenuId(),"新增产品需求","新增需求"+xmMenu.getMenuName());
m.put("data",xmMenu); m.put("data",xmMenu);
@ -305,9 +306,15 @@ public class XmMenuController {
if(taskCount>0) { if(taskCount>0) {
tips.setFailureMsg("存在"+taskCount+"个任务关联该需求,不允许删除"); tips.setFailureMsg("存在"+taskCount+"个任务关联该需求,不允许删除");
}else { }else {
xmMenu=this.xmMenuService.selectOneObject(xmMenu);
List<String> ids=new ArrayList<>();
ids.add(xmMenu.getMenuId());
List<XmMenu> xmMenus=this.xmMenuService.selectListByIdsWithsChildrenCnt(ids);
if(xmMenus==null || xmMenus.size()==0){
return ResponseHelper.failed("data-0","数据不存在");
}
xmMenu=xmMenus.get(0);
if(xmMenu.getChildrenCnt()!=null && xmMenu.getChildrenCnt()>0){ if(xmMenu.getChildrenCnt()!=null && xmMenu.getChildrenCnt()>0){
return ResponseHelper.failed("hadChild","该需求池有子需求,不能删除");
return ResponseHelper.failed("hadChild","该需求有子需求,不能删除");
} }
if(!groupService.calcCanOpMenus(xmMenu)){ if(!groupService.calcCanOpMenus(xmMenu)){
return ResponseHelper.failed("noqx","您无权删除此需求。"); return ResponseHelper.failed("noqx","您无权删除此需求。");
@ -440,7 +447,7 @@ public class XmMenuController {
List<XmMenu> noExists=new ArrayList<>(); List<XmMenu> noExists=new ArrayList<>();
List<String> hasChildMenus=new ArrayList<>(); List<String> hasChildMenus=new ArrayList<>();
List<XmMenu> canDelList=new ArrayList<>(); List<XmMenu> canDelList=new ArrayList<>();
List<XmMenu> xmMenusDb=this.xmMenuService.selectListByIds(xmMenus.stream().map(i->i.getMenuId()).collect(Collectors.toList()));
List<XmMenu> xmMenusDb=this.xmMenuService.selectListByIdsWithsChildrenCnt(xmMenus.stream().map(i->i.getMenuId()).collect(Collectors.toList()));
for (XmMenu xmMenu : xmMenusDb) { for (XmMenu xmMenu : xmMenusDb) {
boolean canDel=this.xmMenuService.checkCanDelAllChild(xmMenu,xmMenusDb); boolean canDel=this.xmMenuService.checkCanDelAllChild(xmMenu,xmMenusDb);
if(canDel){ if(canDel){

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

@ -6,6 +6,7 @@ import com.mdp.audit.log.client.annotation.AuditLog;
import com.mdp.audit.log.client.annotation.OperType; import com.mdp.audit.log.client.annotation.OperType;
import com.mdp.core.entity.Tips; import com.mdp.core.entity.Tips;
import com.mdp.core.err.BizException; import com.mdp.core.err.BizException;
import com.mdp.core.utils.BaseUtils;
import com.mdp.core.utils.NumberUtil; import com.mdp.core.utils.NumberUtil;
import com.mdp.core.utils.RequestUtils; import com.mdp.core.utils.RequestUtils;
import com.mdp.core.utils.ResponseHelper; import com.mdp.core.utils.ResponseHelper;
@ -279,6 +280,55 @@ public class XmTaskController {
return m; return m;
} }
/***/
@ApiOperation( value = "根据主键批量修改修改任务中的某些字段信息",notes="editXmMenu")
@ApiResponses({
@ApiResponse(code = 200,response=XmMenu.class, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}")
})
@HasQx(value = "xm_core_xmTask_editSomeFields",name = "批量修改修改任务中的某些字段",categoryId = "admin-xm",categoryName = "管理端-项目管理系统")
@RequestMapping(value="/editSomeFields",method=RequestMethod.POST)
public Map<String,Object> editSomeFields(@RequestBody Map<String,Object> xmTaskMap) {
Map<String,Object> m = new HashMap<>();
Tips tips=new Tips("成功更新一条数据");
try{
List<String> ids= (List<String>) xmTaskMap.get("ids");
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");
fields.add("pidPaths");
for (String fieldName : xmTaskMap.keySet()) {
if(fields.contains(fieldName)){
return ResponseHelper.failed(fieldName+"-no-edit",fieldName+"不允许修改");
}
}
xmTaskService.editSomeFields(xmTaskMap);
xmRecordService.addXmTaskRecord(xmTask.getProjectId(),xmTask.getId(),"修改项目任务","修改任务"+xmTask.getMenuName(),"", JSON.toJSONString(xmTask));
//m.put("data",xmMenu);
}catch (BizException e) {
tips=e.getTips();
logger.error("",e);
}catch (Exception e) {
tips.setFailureMsg(e.getMessage());
logger.error("",e);
}
m.put("tips", tips);
return m;
}
@ApiOperation( value = "查询任务的信息详情,免登录",notes="taskDetail,条件之间是 and关系,模糊查询写法如 {studentName:'%才哥%'}") @ApiOperation( value = "查询任务的信息详情,免登录",notes="taskDetail,条件之间是 and关系,模糊查询写法如 {studentName:'%才哥%'}")
@ApiResponses({ @ApiResponses({

4
xm-core/src/main/java/com/xm/core/service/XmMenuService.java

@ -305,5 +305,9 @@ public class XmMenuService extends BaseService {
public void editSomeFields(Map<String, Object> xmMenuMap) { public void editSomeFields(Map<String, Object> xmMenuMap) {
super.update("editSomeFields",xmMenuMap); super.update("editSomeFields",xmMenuMap);
} }
public List<XmMenu> selectListByIdsWithsChildrenCnt(List<String> ids) {
return super.selectList("selectListByIdsWithsChildrenCnt",ids);
}
} }

4
xm-core/src/main/java/com/xm/core/service/XmTaskService.java

@ -721,5 +721,9 @@ public class XmTaskService extends BaseService {
public void updateActCostAndActWorkloadAfterSettle(String taskId,String toTaskState) { public void updateActCostAndActWorkloadAfterSettle(String taskId,String toTaskState) {
super.update("updateActCostAndActWorkloadAfterSettle",map("id",taskId,"taskState",toTaskState)); super.update("updateActCostAndActWorkloadAfterSettle",map("id",taskId,"taskState",toTaskState));
} }
public void editSomeFields(Map<String, Object> xmTaskMap) {
super.update("editSomeFields",xmTaskMap);
}
} }

9
xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmMenuMapper.xml

@ -184,6 +184,15 @@
#{item} #{item}
</foreach> </foreach>
</update> </update>
<select id="selectListByIdsWithsChildrenCnt" parameterType="List" resultType="com.xm.core.entity.XmMenu">
select (select count(*) from xm_menu m where m.pmenu_id=res.menu_id) as children_cnt,res.* from xm_menu res
where (res.menu_id) in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")" >
( #{item})
</foreach>
</select>
<!--结束 自定义sql函数区域--> <!--结束 自定义sql函数区域-->

11
xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmTaskMapper.xml

@ -355,6 +355,17 @@
res.task_state=ifnull(#{taskState},res.task_state) res.task_state=ifnull(#{taskState},res.task_state)
where id=#{id} where id=#{id}
</update> </update>
<update id="editSomeFields" parameterType="HashMap">
update xm_task
<set>
<include refid="someFieldSet"/>
</set>
where id in
<foreach collection="ids" item="item" index="index" open="(" separator="," close=")" >
#{item}
</foreach>
</update>
<!--结束 自定义sql函数区域--> <!--结束 自定义sql函数区域-->

Loading…
Cancel
Save