Browse Source

任务编辑bug

master
陈裕财 4 years ago
parent
commit
bd83a5b1ee
  1. 5
      xm-core/src/main/java/com/xm/core/ctrl/XmProjectGroupController.java
  2. 93
      xm-core/src/main/java/com/xm/core/service/XmProjectGroupService.java
  3. 6
      xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmMenuMapper.xml

5
xm-core/src/main/java/com/xm/core/ctrl/XmProjectGroupController.java

@ -73,6 +73,11 @@ public class XmProjectGroupController {
return m;
}
String projectId = xmProjectGroupVo.get(0).getProjectId();
if(!StringUtils.hasText(projectId)){
tips.setFailureMsg("项目编号projectId不能为空");
m.put("tips", tips);
return m;
}
tips= xmProjectGroupService.updateGroup(projectId,xmProjectGroupVo); //列出XmProjectGroup列表
//m.put("data",xmProjectGroupVo);
m.put("tips", tips);

93
xm-core/src/main/java/com/xm/core/service/XmProjectGroupService.java

@ -364,53 +364,7 @@ public class XmProjectGroupService extends BaseService {
});
if(delGroups.size()>0) {
delGroups.forEach(g->{
XmProjectGroupUser UserDel = new XmProjectGroupUser();
UserDel.setGroupId(g.getId());
xmProjectGroupUserService.delete("deleteByGroupId",UserDel);
XmProjectGroup delGroup=new XmProjectGroup();
delGroup.setId(g.getId());
this.deleteByPk(delGroup);
pushMsgService.pushChannelGroupRemoveMsg(user.getBranchId(), g.getId());
xmRecordService.addXmGroupRecord(projectId, g.getId(),"项目-团队-删除小组", "删除小组["+g.getGroupName()+"]",g.getId(),null);
});
}
if(xmProjectGroupVoAdd.size()>0) {
xmProjectGroupVoAdd.forEach(gvo -> {
gvo.setId(xmProjectGroupService.createKey("id"));
gvo.setProjectId(projectId);
XmProjectGroup g = new XmProjectGroup();
BeanUtils.copyProperties(gvo,g);
xmProjectGroupService.insert(g);
List<XmProjectGroupUser> guser = gvo.getGroupUsers();
List<String> addGroupUsernames=new ArrayList<>();
List<Map<String,Object>> users=new ArrayList<>();
if(guser != null && guser.size() > 0) {
guser.forEach(u -> {
Map<String,Object> userMap=new HashMap<>();
userMap.put("userid", u.getUserid());
userMap.put("username", u.getUsername());
users.add(userMap);
u.setId(xmProjectGroupUserService.createKey("id"));
u.setGroupId(gvo.getId());
u.setProjectId(projectId);
u.setJoinTime(new Date());
u.setStatus("0");
addGroupUsernames.add(u.getUsername());
xmProjectGroupUserService.insert(u);
allUsersFromUi.add(u);
});
}
pushMsgService.pushChannelGroupCreateMsg(user.getBranchId(),g.getProjectId(),g.getId(), g.getId(), g.getGroupName(), user.getUserid(), user.getUsername(), users,"新增小组["+gvo.getGroupName()+"]及以下组员:"+StringUtils.arrayToDelimitedString(addGroupUsernames.toArray(), ","));
xmRecordService.addXmGroupRecord(projectId, gvo.getId(),"项目-团队-新增小组", "新增小组["+gvo.getGroupName()+"]及以下组员:"+StringUtils.arrayToDelimitedString(addGroupUsernames.toArray(), ","),JSON.toJSONString(gvo),null);
});
}
if(allUsersAdd.size()>0) {
xmProjectGroupUserService.batchInsert(allUsersAdd);
@ -453,6 +407,53 @@ public class XmProjectGroupService extends BaseService {
}
}
if(delGroups.size()>0) {
delGroups.forEach(g->{
XmProjectGroupUser UserDel = new XmProjectGroupUser();
UserDel.setGroupId(g.getId());
xmProjectGroupUserService.delete("deleteByGroupId",UserDel);
XmProjectGroup delGroup=new XmProjectGroup();
delGroup.setId(g.getId());
this.deleteByPk(delGroup);
pushMsgService.pushChannelGroupRemoveMsg(user.getBranchId(), g.getId());
xmRecordService.addXmGroupRecord(projectId, g.getId(),"项目-团队-删除小组", "删除小组["+g.getGroupName()+"]",g.getId(),null);
});
}
if(xmProjectGroupVoAdd.size()>0) {
xmProjectGroupVoAdd.forEach(gvo -> {
gvo.setId(xmProjectGroupService.createKey("id"));
gvo.setProjectId(projectId);
XmProjectGroup g = new XmProjectGroup();
BeanUtils.copyProperties(gvo,g);
xmProjectGroupService.insert(g);
List<XmProjectGroupUser> guser = gvo.getGroupUsers();
List<String> addGroupUsernames=new ArrayList<>();
List<Map<String,Object>> users=new ArrayList<>();
if(guser != null && guser.size() > 0) {
guser.forEach(u -> {
Map<String,Object> userMap=new HashMap<>();
userMap.put("userid", u.getUserid());
userMap.put("username", u.getUsername());
users.add(userMap);
u.setId(xmProjectGroupUserService.createKey("id"));
u.setGroupId(gvo.getId());
u.setProjectId(projectId);
u.setJoinTime(new Date());
u.setStatus("0");
addGroupUsernames.add(u.getUsername());
xmProjectGroupUserService.insert(u);
allUsersFromUi.add(u);
});
}
pushMsgService.pushChannelGroupCreateMsg(user.getBranchId(),g.getProjectId(),g.getId(), g.getId(), g.getGroupName(), user.getUserid(), user.getUsername(), users,"新增小组["+gvo.getGroupName()+"]及以下组员:"+StringUtils.arrayToDelimitedString(addGroupUsernames.toArray(), ","));
xmRecordService.addXmGroupRecord(projectId, gvo.getId(),"项目-团队-新增小组", "新增小组["+gvo.getGroupName()+"]及以下组员:"+StringUtils.arrayToDelimitedString(addGroupUsernames.toArray(), ","),JSON.toJSONString(gvo),null);
});
}
groupCacheService.putGroups(projectId, null);
Tips tips=new Tips("全部更新成功");

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

@ -42,7 +42,7 @@
</if>
<if test=' projectId !=null and projectId!="" and ( taskFilterType==null or taskFilterType=="" )'>
and exists ( select 1 from XM.xm_task t where t.menu_id =res.id and t.project_id=#{projectId})
and exists ( select 1 from XM.xm_task t where t.menu_id =res.menu_id and t.project_id=#{projectId})
</if>
<if test="compete !=null and compete!=''">
and ( exists ( select 1 from XM.xm_menu m1 where m.mm_userid=#{compete} and m.product_id=res.product_id)
@ -63,7 +63,6 @@
</foreach>
</if>
<include refid="where"/>
<if test=" projectId !=null and projectId !='' "> and plan.project_id=#{projectId}</if>
<if test=' iterationFilterType=="join" '>
and exists ( select 1 from XM.xm_iteration_menu im where im.menu_id=res.menu_id
<if test="iterationId!=null"> and im.iteration_id=#{iterationId}</if>
@ -77,6 +76,9 @@
exists ( select 1 from XM.xm_task t where t.menu_id=res.menu_id)
</if>
<if test=' projectId !=null and projectId!="" and ( taskFilterType==null or taskFilterType=="" )'>
and exists ( select 1 from XM.xm_task t where t.menu_id =res.menu_id and t.project_id=#{projectId})
</if>
<if test="compete !=null and compete!=''">
and ( exists ( select 1 from XM.xm_menu m1 where m.mm_userid=#{compete} and m.product_id=res.product_id)
or exists ( select 1 from xm_product p where p.pm_userid=#{compete} and res.product_id=p.id)

Loading…
Cancel
Save