diff --git a/xm-core/src/main/java/com/xm/core/ctrl/XmGroupController.java b/xm-core/src/main/java/com/xm/core/ctrl/XmGroupController.java index aff86914..0a516d26 100644 --- a/xm-core/src/main/java/com/xm/core/ctrl/XmGroupController.java +++ b/xm-core/src/main/java/com/xm/core/ctrl/XmGroupController.java @@ -4,6 +4,7 @@ import com.mdp.core.entity.Tips; import com.mdp.core.err.BizException; import com.mdp.core.utils.RequestUtils; import com.mdp.core.utils.ResponseHelper; +import com.mdp.msg.client.PushNotifyMsgService; import com.mdp.mybatis.PageUtils; import com.mdp.qx.HasQx; import com.mdp.safe.client.entity.User; @@ -67,6 +68,10 @@ public class XmGroupController { @Autowired XmPushMsgService pushMsgService; + + @Autowired + PushNotifyMsgService notifyMsgService; + @Autowired XmRecordService xmRecordService; @@ -97,8 +102,7 @@ public class XmGroupController { tips= xmGroupService.updateGroup(group,groupDb); //列出XmProjectGroup列表 xmGroupCacheService.clearProjectGroup(groupDb.getProjectId()); xmRecordService.addXmGroupRecord(groupDb.getProjectId(),groupDb.getId(),"团队-小组-修改小组","修改小组信息【"+groupDb.getGroupName()+"】"); - - m.put("tips", tips); + m.put("tips", tips); return m; } diff --git a/xm-core/src/main/java/com/xm/core/ctrl/XmGroupUserController.java b/xm-core/src/main/java/com/xm/core/ctrl/XmGroupUserController.java index 98fba751..48748b99 100644 --- a/xm-core/src/main/java/com/xm/core/ctrl/XmGroupUserController.java +++ b/xm-core/src/main/java/com/xm/core/ctrl/XmGroupUserController.java @@ -4,6 +4,7 @@ import com.mdp.core.entity.Tips; import com.mdp.core.err.BizException; import com.mdp.core.utils.RequestUtils; import com.mdp.core.utils.ResponseHelper; +import com.mdp.msg.client.PushNotifyMsgService; import com.mdp.mybatis.PageUtils; import com.mdp.safe.client.entity.User; import com.mdp.safe.client.utils.LoginUtils; @@ -65,6 +66,11 @@ public class XmGroupUserController { @Autowired XmPushMsgService pushMsgService; + + + + @Autowired + PushNotifyMsgService notifyMsgService; @ApiOperation( value = "查询xm_group_user信息列表",notes="listXmProjectGroupUser,条件之间是 and关系,模糊查询写法如 {studentName:'%才哥%'}") @@ -114,46 +120,24 @@ public class XmGroupUserController { } String pgClass=gu.getPgClass(); User user=LoginUtils.getCurrentUserInfo(); - if("1".equals(pgClass)){ - - if(!StringUtils.hasText(gu.getProductId())){ - return ResponseHelper.failed("productId-0","请上送小组归属产品编号"); - } - XmProduct xmProduct=this.xmProductService.getProductFromCache(gu.getProductId()); - if(xmProduct==null){ - return ResponseHelper.failed("product-0","产品已不存在"); - } - if(!xmGroupService.checkUserIsProductAdm(xmProduct, user.getUserid())){ - XmGroupVo xmGroupVo=this.xmGroupService.getProductGroupFromCache(xmProduct.getId(),gu.getGroupId()); - if(xmGroupVo==null){ - return ResponseHelper.failed("group-0","小组已不存在"); - } - boolean isHead=xmGroupService.checkUserIsTeamHeadOrAss(xmGroupVo,user.getUserid()); - if(isHead==false){ - return ResponseHelper.failed("not-leader-ass","组长、副组长、组长助理以上人员可以添加小组成员。"); - } - } - }else{ - if(!StringUtils.hasText(gu.getProjectId())){ - return ResponseHelper.failed("projectId-0","请上送小组归属项目编号"); - } + if(!StringUtils.hasText(gu.getProjectId())){ + return ResponseHelper.failed("projectId-0","请上送小组归属项目编号"); + } - XmProject xmProject=this.xmProjectService.getProjectFromCache(gu.getProjectId()); - if(xmProject==null){ - return ResponseHelper.failed("product-0","产品已不存在"); + XmProject xmProject=this.xmProjectService.getProjectFromCache(gu.getProjectId()); + if(xmProject==null){ + return ResponseHelper.failed("product-0","产品已不存在"); + } + if(!xmGroupService.checkUserIsProjectAdm(xmProject, user.getUserid())){ + XmGroupVo xmGroupVo=this.xmGroupService.getProjectGroupFromCache(xmProject.getId(),gu.getGroupId()); + if(xmGroupVo==null){ + return ResponseHelper.failed("group-0","小组已不存在"); } - if(!xmGroupService.checkUserIsProjectAdm(xmProject, user.getUserid())){ - XmGroupVo xmGroupVo=this.xmGroupService.getProjectGroupFromCache(xmProject.getId(),gu.getGroupId()); - if(xmGroupVo==null){ - return ResponseHelper.failed("group-0","小组已不存在"); - } - boolean isHead=xmGroupService.checkUserIsTeamHeadOrAss(xmGroupVo,user.getUserid()); - if(isHead==false){ - return ResponseHelper.failed("not-leader-ass","组长、副组长、组长助理以上人员可以添加小组成员。"); - } + boolean isHead=xmGroupService.checkUserIsTeamHeadOrAss(xmGroupVo,user.getUserid()); + if(isHead==false){ + return ResponseHelper.failed("not-leader-ass","组长、副组长、组长助理以上人员可以添加小组成员。"); } } - if(xmGroupUserService.countByWhere(gu)>0){ tips.setFailureMsg("该用户已在小组中"); m.put("tips", tips); @@ -166,6 +150,7 @@ public class XmGroupUserController { List> users=new ArrayList<>(); users.add(usermap); pushMsgService.pushJoinChannelGroupMsg(user.getBranchId(), gu.getGroupId(), users); + notifyMsgService.pushMsg(user,gu.getUserid(),gu.getUsername(),"7",gu.getProjectId(),gu.getGroupId(),"恭喜您加入项目【"+xmProject.getName()+"】"); if("1".equals(pgClass)){ xmGroupService.clearProductGroup(gu.getProductId()); xmRecordService.addXmGroupRecord(gu.getProductId(),gu.getGroupId(), "产品-团队-新增小组成员", "增加组员["+gu.getUsername()+"]",gu.getUserid(),null); @@ -204,43 +189,22 @@ public class XmGroupUserController { } String pgClass=gu.getPgClass(); User user=LoginUtils.getCurrentUserInfo(); - if("1".equals(pgClass)){ - - if(!StringUtils.hasText(gu.getProductId())){ - return ResponseHelper.failed("productId-0","请上送小组归属产品编号"); - } - XmProduct xmProduct=this.xmProductService.getProductFromCache(gu.getProductId()); - if(xmProduct==null){ - return ResponseHelper.failed("product-0","产品已不存在"); - } - if(!xmGroupService.checkUserIsProductAdm(xmProduct, user.getUserid())){ - XmGroupVo xmGroupVo=this.xmGroupService.getProductGroupFromCache(xmProduct.getId(),gu.getGroupId()); - if(xmGroupVo==null){ - return ResponseHelper.failed("group-0","小组已不存在"); - } - boolean isHead=xmGroupService.checkUserIsTeamHeadOrAss(xmGroupVo,user.getUserid()); - if(isHead==false){ - return ResponseHelper.failed("not-leader-ass","组长、副组长、组长助理以上人员可以删除小组成员。"); - } - } - }else{ - if(!StringUtils.hasText(gu.getProjectId())){ - return ResponseHelper.failed("projectId-0","请上送小组归属项目编号"); - } + if(!StringUtils.hasText(gu.getProjectId())){ + return ResponseHelper.failed("projectId-0","请上送小组归属项目编号"); + } - XmProject xmProject=this.xmProjectService.getProjectFromCache(gu.getProjectId()); - if(xmProject==null){ - return ResponseHelper.failed("project-0","项目已不存在"); + XmProject xmProject=this.xmProjectService.getProjectFromCache(gu.getProjectId()); + if(xmProject==null){ + return ResponseHelper.failed("project-0","项目已不存在"); + } + if(!xmGroupService.checkUserIsProjectAdm(xmProject, user.getUserid())){ + XmGroupVo xmGroupVo=this.xmGroupService.getProjectGroupFromCache(xmProject.getId(),gu.getGroupId()); + if(xmGroupVo==null){ + return ResponseHelper.failed("group-0","小组已不存在"); } - if(!xmGroupService.checkUserIsProjectAdm(xmProject, user.getUserid())){ - XmGroupVo xmGroupVo=this.xmGroupService.getProjectGroupFromCache(xmProject.getId(),gu.getGroupId()); - if(xmGroupVo==null){ - return ResponseHelper.failed("group-0","小组已不存在"); - } - boolean isHead=xmGroupService.checkUserIsTeamHeadOrAss(xmGroupVo,user.getUserid()); - if(isHead==false){ - return ResponseHelper.failed("not-leader-ass","组长、副组长、组长助理以上人员可以删除小组成员。"); - } + boolean isHead=xmGroupService.checkUserIsTeamHeadOrAss(xmGroupVo,user.getUserid()); + if(isHead==false){ + return ResponseHelper.failed("not-leader-ass","组长、副组长、组长助理以上人员可以删除小组成员。"); } } xmGroupUserService.deleteByPk(gu); @@ -249,15 +213,11 @@ public class XmGroupUserController { usermap.put("username", gu.getUsername()); List> users=new ArrayList<>(); users.add(usermap); - pushMsgService.pushLeaveChannelGroupMsg(user.getBranchId(), gu.getGroupId(), users); - if("1".equals(pgClass)){ + notifyMsgService.pushMsg(user,gu.getUserid(),gu.getUsername(),"7",gu.getProjectId(),gu.getGroupId(),"您离开项目【"+xmProject.getName()+"】中的小组【"+gu.getGroupId()+"】"); - xmGroupService.clearProductGroup(gu.getProductId()); - xmRecordService.addXmGroupRecord(gu.getProductId(),gu.getGroupId(), "项目-团队-删除小组成员", "删除组员["+gu.getUsername()+"]",gu.getUserid(),null); - }else{ - xmGroupService.clearProjectGroup(gu.getProjectId()); - xmRecordService.addXmGroupRecord(gu.getProjectId(),gu.getGroupId(), "项目-团队-删除小组成员", "删除组员["+gu.getUsername()+"]",gu.getUserid(),null); - } + pushMsgService.pushLeaveChannelGroupMsg(user.getBranchId(), gu.getGroupId(), users); + xmGroupService.clearProjectGroup(gu.getProjectId()); + xmRecordService.addXmGroupRecord(gu.getProjectId(),gu.getGroupId(), "项目-团队-删除小组成员", "删除组员["+gu.getUsername()+"]",gu.getUserid(),null); }catch (BizException e) { diff --git a/xm-core/src/main/java/com/xm/core/ctrl/XmQuestionController.java b/xm-core/src/main/java/com/xm/core/ctrl/XmQuestionController.java index e7d28599..4c823f94 100644 --- a/xm-core/src/main/java/com/xm/core/ctrl/XmQuestionController.java +++ b/xm-core/src/main/java/com/xm/core/ctrl/XmQuestionController.java @@ -7,6 +7,7 @@ import com.mdp.core.err.BizException; import com.mdp.core.utils.BaseUtils; import com.mdp.core.utils.RequestUtils; import com.mdp.core.utils.ResponseHelper; +import com.mdp.msg.client.PushNotifyMsgService; import com.mdp.mybatis.PageUtils; import com.mdp.qx.HasQx; import com.mdp.safe.client.entity.User; @@ -60,6 +61,10 @@ public class XmQuestionController { @Autowired XmQuestionHandleService xmQuestionHandleService; + + @Autowired + PushNotifyMsgService notifyMsgService; + Map fieldsMap = BaseUtils.toMap(new XmQuestion()); @ApiOperation( value = "查询xm_question信息列表",notes="listXmQuestion,条件之间是 and关系,模糊查询写法如 {studentName:'%才哥%'}") @@ -183,6 +188,7 @@ public class XmQuestionController { } xmQuestionService.addQuestion(xmQuestionVo); if(!StringUtils.isEmpty(xmQuestionVo.getHandlerUserid())) { + notifyMsgService.pushMsg(user,xmQuestionVo.getHandlerUserid(),xmQuestionVo.getHandlerUsername(),"5",xmQuestionVo.getProductId(),xmQuestionVo.getId(),"您有新的bug【"+xmQuestionVo.getName()+"】需要处理,请尽快修复!"); xmPushMsgService.pushPrichatMsgToIm(user.getBranchId(), user.getUserid(), user.getUsername(), xmQuestionVo.getHandlerUserid(),xmQuestionVo.getHandlerUsername(), user.getUsername()+"创建bug【"+xmQuestionVo.getName()+"】并指派给"+xmQuestionVo.getHandlerUsername()); } m.put("data",xmQuestionVo); @@ -324,6 +330,8 @@ public class XmQuestionController { handle.setReceiptMessage(user.getUsername()+"修改缺陷处理意见为:"+xmQuestionVo.getRemarks()); }else if(StringUtils.hasText(handlerUsername)){ handle.setReceiptMessage(user.getUsername()+"将缺陷指派给"+handlerUsername); + notifyMsgService.pushMsg(user,xmQuestionVo.getHandlerUserid(),xmQuestionVo.getHandlerUsername(),"5",xmQuestionVo.getProductId(),xmQuestionVo.getId(),"您有新的bug【"+xmQuestionVo.getName()+"】需要处理,请尽快修复!"); + }else if(StringUtils.hasText(bugStatus)){ handle.setReceiptMessage(user.getUsername()+"将缺陷状态改为"+bugStatus); }else{ diff --git a/xm-core/src/main/java/com/xm/core/service/XmTaskExecuserService.java b/xm-core/src/main/java/com/xm/core/service/XmTaskExecuserService.java index e6f6234c..cd9a9bde 100644 --- a/xm-core/src/main/java/com/xm/core/service/XmTaskExecuserService.java +++ b/xm-core/src/main/java/com/xm/core/service/XmTaskExecuserService.java @@ -3,6 +3,7 @@ package com.xm.core.service; import com.alibaba.fastjson.JSONObject; import com.mdp.core.err.BizException; import com.mdp.core.service.BaseService; +import com.mdp.msg.client.PushNotifyMsgService; import com.mdp.safe.client.entity.User; import com.mdp.safe.client.utils.LoginUtils; import com.xm.core.entity.XmTaskExecuser; @@ -41,6 +42,10 @@ public class XmTaskExecuserService extends BaseService { @Autowired CashOperateServie cashOperateServie; + + @Autowired + PushNotifyMsgService notifyMsgService; + public void addExecuser(XmTaskExecuser xmTaskExecuser){ User user = LoginUtils.getCurrentUserInfo(); @@ -62,6 +67,8 @@ public class XmTaskExecuserService extends BaseService { String imMsg=xmTaskExecuser.getUsername()+"成为任务【"+xmTaskExecuser.getTaskId()+"-"+xmTaskExecuser.getTaskName()+"】的候选人"; this.pushMsgService.pushPrichatMsgToIm(user.getBranchId(),user.getUserid(),user.getUsername(), xmTaskExecuser.getUserid(), xmTaskExecuser.getUsername(),imMsg); this.pushMsgService.pushCreateCssGroupMsg(user.getBranchId(), xmTaskExecuser.getUserid(), xmTaskExecuser.getUsername(), imMsg); + notifyMsgService.pushMsg(user,xmTaskExecuser.getUserid(),xmTaskExecuser.getUsername(),"2",xmTaskExecuser.getProjectId(),xmTaskExecuser.getTaskId(),"您成为任务【"+xmTaskExecuser.getTaskId()+"-"+xmTaskExecuser.getTaskName()+"】的候选人,请等待雇主选标,在雇主选标前,您还可以修改报价,合理的报价更容易获得雇主的喜欢哦!"); + xmRecordService.addXmTaskRecord(xmTaskExecuser.getProjectId(), xmTaskExecuser.getTaskId(), "项目-任务-增加候选人", "任务增加候选人"+xmTaskExecuser.getUsername(),JSONObject.toJSONString(xmTaskExecuser),null); } /** @@ -95,10 +102,12 @@ public class XmTaskExecuserService extends BaseService { userMap.put("username", xmTaskExecuser.getUsername()); users.add(userMap); String imMsg=xmTaskExecuser.getUsername()+"放弃任务【"+xmTaskExecuser.getTaskId()+"-"+xmTaskExecuser.getTaskName()+"】"; + notifyMsgService.pushMsg(LoginUtils.getCurrentUserInfo(),xmTaskExecuser.getUserid(),xmTaskExecuser.getUsername(),"2",xmTaskExecuser.getProjectId(),xmTaskExecuser.getTaskId(),"您已离开任务【"+xmTaskExecuser.getTaskId()+"-"+xmTaskExecuser.getTaskName()+"】!"); for (XmGroupVo g : userGroups) { this.pushMsgService.pushGroupMsg(user.getBranchId(), g.getId(), xmTaskExecuser.getUserid(), xmTaskExecuser.getUsername(), imMsg); - this.pushMsgService.pushLeaveChannelGroupMsg(user.getBranchId(), g.getId(), users); + this.pushMsgService.pushLeaveChannelGroupMsg(user.getBranchId(), g.getId(), users); + } this.pushMsgService.pushCssMsg(user.getBranchId(), xmTaskExecuser.getUserid(), xmTaskExecuser.getUsername(), imMsg); @@ -152,8 +161,8 @@ public class XmTaskExecuserService extends BaseService { this.pushMsgService.pushGroupMsg(user.getBranchId(),g.getId(), xmTaskExecuser.getUserid(), xmTaskExecuser.getUsername(),imMsg ); this.pushMsgService.pushPrichatMsgToIm(user.getBranchId(), user.getUserid(),user.getUsername(),xmTaskExecuser.getUserid(), xmTaskExecuser.getUsername(),imMsg); } - this.pushMsgService.pushCssMsg(user.getBranchId(), xmTaskExecuser.getUserid(), xmTaskExecuser.getUsername(), imMsg); - + this.pushMsgService.pushCssMsg(user.getBranchId(), xmTaskExecuser.getUserid(), xmTaskExecuser.getUsername(), imMsg); + notifyMsgService.pushMsg(user,xmTaskExecuser.getUserid(),xmTaskExecuser.getUsername(),"2",xmTaskExecuser.getProjectId(),xmTaskExecuser.getTaskId(),"恭喜您被雇主选为任务【"+xmTaskExecuser.getTaskId()+"-"+xmTaskExecuser.getTaskName()+"】的中标人。"); updateXmTaskExeUseridsAndUsernamesByTaskId(taskId); xmRecordService.addXmTaskRecord(projectId, taskId, "项目-任务-变更为执行人", xmTaskExecuser.getUsername()+"变更为任务执行人",null,null); } @@ -176,6 +185,7 @@ public class XmTaskExecuserService extends BaseService { this.updateSomeFieldByPk(xmTaskExecuserNew); updateXmTaskExeUseridsAndUsernamesByTaskId(xmTaskExecuser.getTaskId()); this.pushMsgService.pushCssMsg(xmTaskExecuser.getBranchId(), xmTaskExecuser.getUserid(), xmTaskExecuser.getUsername(), xmTaskExecuser.getUsername()+"变更为候选人并提交关于任务【"+xmTaskExecuser.getTaskId()+"-"+xmTaskExecuser.getTaskName()+"】报价信息"); + notifyMsgService.pushMsg(LoginUtils.getCurrentUserInfo(),xmTaskExecuser.getUserid(),xmTaskExecuser.getUsername(),"2",xmTaskExecuser.getProjectId(),xmTaskExecuser.getTaskId(),"您成为任务【"+xmTaskExecuser.getTaskId()+"-"+xmTaskExecuser.getTaskName()+"】的候选人,请等待雇主选标,在雇主选标前,您还可以修改报价,合理的报价更容易获得雇主的喜欢哦!"); xmRecordService.addXmTaskRecord(xmTaskExecuser.getProjectId(), xmTaskExecuser.getTaskId(), "项目-任务-候选人报价", xmTaskExecuser.getUsername()+"变更为候选人并提交报价信息",JSONObject.toJSONString(xmTaskExecuser),null); }