Browse Source

站内信处理

master
陈裕财 4 years ago
parent
commit
74859db676
  1. 8
      xm-core/src/main/java/com/xm/core/ctrl/XmGroupController.java
  2. 118
      xm-core/src/main/java/com/xm/core/ctrl/XmGroupUserController.java
  3. 8
      xm-core/src/main/java/com/xm/core/ctrl/XmQuestionController.java
  4. 16
      xm-core/src/main/java/com/xm/core/service/XmTaskExecuserService.java

8
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;
}

118
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<Map<String,Object>> 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<Map<String,Object>> 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) {

8
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<String,Object> 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{

16
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);
}

Loading…
Cancel
Save