陈裕财 2 years ago
parent
commit
11e4974123
  1. 80
      xm-core/src/main/java/com/xm/core/service/XmTaskExecuserService.java

80
xm-core/src/main/java/com/xm/core/service/XmTaskExecuserService.java

@ -5,18 +5,15 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.mdp.core.err.BizException;
import com.mdp.core.service.BaseService;
import com.mdp.core.utils.ObjectTools;
import com.mdp.msg.client.PushNotifyMsgService;
import com.mdp.safe.client.entity.Dept;
import com.mdp.safe.client.entity.User;
import com.mdp.safe.client.utils.LoginUtils;
import com.xm.core.entity.XmProject;
import com.xm.core.entity.XmTask;
import com.xm.core.entity.XmTaskExecuser;
import com.xm.core.mapper.XmTaskExecuserMapper;
import com.xm.core.service.client.MkClient;
import com.xm.core.service.client.SysClient;
import com.xm.core.service.push.XmPushMsgService;
import com.xm.core.vo.XmGroupVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
@ -40,9 +37,6 @@ public class XmTaskExecuserService extends BaseService<XmTaskExecuserMapper,XmTa
@Autowired
XmTaskService xmTaskService;
@Autowired
XmProjectService xmProjectService;
@Autowired
XmGroupService groupService;
@ -54,22 +48,10 @@ public class XmTaskExecuserService extends BaseService<XmTaskExecuserMapper,XmTa
@Autowired
PushNotifyMsgService notifyMsgService;
@Autowired
SysClient sysClient;
@Autowired
MkClient mkClient;
/**
* 自定义查询支持多表关联
* @param page 分页条件
* @param ew 一定要并且必须加@Param("ew")注解
* @param ext 如果xml中需要根据某些值进行特殊处理可以通过这个进行传递非必须注解也可以不加
* @return
*/
public List<Map<String,Object>> selectListMapByWhere(IPage page, QueryWrapper ew, Map<String,Object> ext){
return baseMapper.selectListMapByWhere(page,ew,ext);
}
/**
*
@ -107,7 +89,7 @@ public class XmTaskExecuserService extends BaseService<XmTaskExecuserMapper,XmTa
}
this.pushMsgService.pushPrichatMsgToIm(user.getBranchId(),user.getUserid(),user.getUsername(), xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(),imMsg);
this.pushMsgService.pushCreateCssGroupMsg(user.getBranchId(), xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(), imMsg);
notifyMsgService.pushMsg(user, xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(), notifyMsg,null);
notifyMsgService.pushMsg(user.getBranchId(),user.getUserid(),user.getUsername(), xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(), notifyMsg,null);
}
xmRecordService.addXmTaskRecord(xmTaskExecuser.getProjectId(), xmTaskExecuser.getTaskId(), "项目-任务-增加候选人", "任务增加候选人"+xmTaskExecuser.getBidUsername(),JSONObject.toJSONString(xmTaskExecuser),null);
@ -122,13 +104,12 @@ public class XmTaskExecuserService extends BaseService<XmTaskExecuserMapper,XmTa
List<String> usernames=new ArrayList<>();
User user=LoginUtils.getCurrentUserInfo();
List<Dept> pgroups=groupService.getSubDeptList(projectId);
List<XmGroupVo> pgroups=groupService.getProjectGroupVoList(projectId);
for (XmTaskExecuser xmTaskExecuser : xmTaskExecuserList) {
List<Dept> userGroups=groupService.getUserGroups(pgroups, xmTaskExecuser.getBidUserid());
List<XmGroupVo> userGroups=groupService.getUserGroups(pgroups, xmTaskExecuser.getBidUserid());
XmTaskExecuser xmTaskExecuser2=new XmTaskExecuser();
xmTaskExecuser2.setTaskId(xmTaskExecuser.getTaskId());
xmTaskExecuser2.setBidUserid(xmTaskExecuser.getBidUserid());
xmTaskExecuser2.setPrjUserid(xmTaskExecuser.getBidUserid());
xmTaskExecuser2.setStatus("7");
this.updateSomeFieldByPk(xmTaskExecuser2);
projectId=xmTaskExecuser.getProjectId();
@ -144,11 +125,11 @@ public class XmTaskExecuserService extends BaseService<XmTaskExecuserMapper,XmTa
userMap.put("username", xmTaskExecuser.getBidUsername());
users.add(userMap);
String imMsg=xmTaskExecuser.getBidUsername()+"放弃任务【"+xmTaskExecuser.getTaskId()+"-"+xmTaskExecuser.getTaskName()+"】";
notifyMsgService.pushMsg(user,xmTaskExecuser.getBidUserid(),xmTaskExecuser.getBidUsername(),"您已离开任务【"+xmTaskExecuser.getTaskId()+"-"+xmTaskExecuser.getTaskName()+"】!",null);
notifyMsgService.pushMsg(user.getBranchId(),user.getUserid(),user.getUsername(),xmTaskExecuser.getBidUserid(),xmTaskExecuser.getBidUsername(),"您已离开任务【"+xmTaskExecuser.getTaskId()+"-"+xmTaskExecuser.getTaskName()+"】!",null);
for (Dept g : userGroups) {
this.pushMsgService.pushGroupMsg(user.getBranchId(), g.getDeptid(), xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(), imMsg);
this.pushMsgService.pushLeaveChannelGroupMsg(user.getBranchId(), g.getDeptid(), users);
for (XmGroupVo g : userGroups) {
this.pushMsgService.pushGroupMsg(user.getBranchId(), g.getId(), xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(), imMsg);
this.pushMsgService.pushLeaveChannelGroupMsg(user.getBranchId(), g.getId(), users);
}
this.pushMsgService.pushCssMsg(user.getBranchId(), xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(), imMsg);
@ -171,6 +152,10 @@ public class XmTaskExecuserService extends BaseService<XmTaskExecuserMapper,XmTa
public void becomeExecute(XmTask xmTaskDb,XmTaskExecuser xmTaskExecuser){
String projectId=xmTaskDb.getProjectId();
String taskId=xmTaskExecuser.getTaskId();
List<XmGroupVo> pgroups=groupService.getProjectGroupVoList(projectId);
User user=LoginUtils.getCurrentUserInfo();
List<XmGroupVo> userGroups=groupService.getUserGroups(pgroups, xmTaskExecuser.getBidUserid());
XmTaskExecuser query=new XmTaskExecuser();
query.setTaskId(taskId);
XmTaskExecuser xmTaskExecuserDb=null;
@ -199,33 +184,21 @@ public class XmTaskExecuserService extends BaseService<XmTaskExecuserMapper,XmTa
}
}
XmTaskExecuser xmTaskExecuser2=new XmTaskExecuser();
if(ObjectTools.isEmpty(xmTaskExecuserDb.getPrjUserid())){
XmProject projectDb=this.xmProjectService.getProjectFromCache(projectId);
User userParams=new User();
userParams.setCpaUserid(xmTaskExecuserDb.getBidUserid());
userParams.setCpaOrg(xmTaskExecuserDb.getBidBranchId());
userParams.setUsername(xmTaskExecuserDb.getBidUsername());
User userdb=sysClient.createUserIfNotExists(userParams,projectDb.getDeptid(),projectDb.getBranchId());
xmTaskExecuser2.setPrjUserid(userdb.getUserid());
xmTaskExecuser2.setPrjUsername(userdb.getUsername());
xmTaskExecuser2.setBranchId(userdb.getBranchId());
}
xmTaskExecuser2.setTaskId(xmTaskExecuser.getTaskId());
xmTaskExecuser2.setBidUserid(xmTaskExecuser.getBidUserid());
xmTaskExecuser2.setStatus("1");
this.updateById(xmTaskExecuser2,true);
User user=LoginUtils.getCurrentUserInfo();
this.updateSomeFieldByPk(xmTaskExecuser2);
/**
* 下面为推送任务执行人变更im通知消息
*/
String imMsg=xmTaskExecuser.getBidUsername()+"变更为任务["+xmTaskDb.getId()+"-"+xmTaskDb.getName()+"]执行人";
for (XmGroupVo g : userGroups) {
this.pushMsgService.pushGroupMsg(user.getBranchId(),g.getId(), xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(),imMsg );
this.pushMsgService.pushPrichatMsgToIm(user.getBranchId(), user.getUserid(),user.getUsername(),xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(),imMsg);
}
this.pushMsgService.pushCssMsg(user.getBranchId(), xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(), imMsg);
notifyMsgService.pushMsg(user, xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(), "恭喜您被雇主选为任务【" + xmTaskExecuser.getTaskId() + "-" + xmTaskDb.getName() + "】的中标人,请尽快开展工作。",null);
notifyMsgService.pushMsg(user.getBranchId(),user.getUserid(),user.getUsername(), xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(), "恭喜您被雇主选为任务【" + xmTaskExecuser.getTaskId() + "-" + xmTaskDb.getName() + "】的中标人,请尽快开展工作。",null);
updateXmTaskExeUseridsAndUsernamesByTaskId(taskId);
if("2".equals(xmTaskDb.getOshare()) && xmTaskDb.getShareFee()!=null && xmTaskDb.getShareFee().compareTo(BigDecimal.ZERO)>0){
@ -242,7 +215,6 @@ public class XmTaskExecuserService extends BaseService<XmTaskExecuserMapper,XmTa
public void becomeCandidate(XmTaskExecuser xmTaskExecuser) {
XmTaskExecuser xmTaskExecuserNew=new XmTaskExecuser();
xmTaskExecuserNew.setTaskId(xmTaskExecuser.getTaskId());
xmTaskExecuserNew.setBidUsername(xmTaskExecuser.getBidUsername());
xmTaskExecuserNew.setBidUserid(xmTaskExecuser.getBidUserid());
xmTaskExecuserNew.setQuoteWeekday(xmTaskExecuser.getQuoteWeekday());
xmTaskExecuserNew.setQuoteWorkload(xmTaskExecuser.getQuoteWorkload());
@ -251,11 +223,11 @@ public class XmTaskExecuserService extends BaseService<XmTaskExecuserMapper,XmTa
xmTaskExecuserNew.setQuoteStartTime(xmTaskExecuser.getQuoteStartTime());
xmTaskExecuserNew.setSkillRemark(xmTaskExecuser.getSkillRemark());
xmTaskExecuserNew.setStatus("0");
this.updateById(xmTaskExecuserNew,true);
this.updateSomeFieldByPk(xmTaskExecuserNew);
updateXmTaskExeUseridsAndUsernamesByTaskId(xmTaskExecuser.getTaskId());
this.pushMsgService.pushCssMsg(xmTaskExecuser.getBranchId(), xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(), xmTaskExecuser.getBidUsername()+"变更为候选人并提交关于任务【"+xmTaskExecuser.getTaskId()+"-"+xmTaskExecuser.getTaskName()+"】报价信息");
User user=LoginUtils.getCurrentUserInfo();
notifyMsgService.pushMsg(user, xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(), "您成为任务【" + xmTaskExecuser.getTaskId() + "-" + xmTaskExecuser.getTaskName() + "】的候选人,请等待雇主选标,在雇主选标前,您还可以修改报价,合理的报价更容易获得雇主的喜欢哦!",null);
notifyMsgService.pushMsg(user.getBranchId(),user.getUserid(),user.getUsername(), xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(), "您成为任务【" + xmTaskExecuser.getTaskId() + "-" + xmTaskExecuser.getTaskName() + "】的候选人,请等待雇主选标,在雇主选标前,您还可以修改报价,合理的报价更容易获得雇主的喜欢哦!",null);
xmRecordService.addXmTaskRecord(xmTaskExecuser.getProjectId(), xmTaskExecuser.getTaskId(), "项目-任务-候选人报价", xmTaskExecuser.getBidUsername()+"变更为候选人并提交报价信息",JSONObject.toJSONString(xmTaskExecuser),null);
}
@ -272,7 +244,7 @@ public class XmTaskExecuserService extends BaseService<XmTaskExecuserMapper,XmTa
this.updateSomeFieldByPk(xmTaskExecuserNew);
this.pushMsgService.pushCssMsg(xmTaskExecuser.getBranchId(), xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(), xmTaskExecuser.getBidUsername()+"提交关于任务【"+xmTaskExecuser.getTaskId()+"-"+xmTaskExecuser.getTaskName()+"】报价信息");
User user=LoginUtils.getCurrentUserInfo();
notifyMsgService.pushMsg(user, xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(), user.getUsername()+"成功修改了任务【" + xmTaskExecuser.getTaskId() + "-" + xmTaskExecuser.getTaskName() + "】的报价信息,请等待雇主选标,在雇主选标前,您还可以修改报价,合理的报价更容易获得雇主的喜欢哦!",null);
notifyMsgService.pushMsg(user.getBranchId(),user.getUserid(),user.getUsername(), xmTaskExecuser.getBidUserid(), xmTaskExecuser.getBidUsername(), user.getUsername()+"成功修改了任务【" + xmTaskExecuser.getTaskId() + "-" + xmTaskExecuser.getTaskName() + "】的报价信息,请等待雇主选标,在雇主选标前,您还可以修改报价,合理的报价更容易获得雇主的喜欢哦!",null);
xmRecordService.addXmTaskRecord(xmTaskExecuser.getProjectId(), xmTaskExecuser.getTaskId(), "项目-任务-候选人报价", xmTaskExecuser.getBidUsername()+"提交报价信息",JSONObject.toJSONString(xmTaskExecuser),null);
}
@ -287,11 +259,11 @@ public class XmTaskExecuserService extends BaseService<XmTaskExecuserMapper,XmTa
* @param taskId
*/
public void updateXmTaskExeUseridsAndUsernamesByTaskId(String taskId) {
baseMapper.updateXmTaskExeUseridsAndUsernamesByTaskId( taskId);
baseMapper.updateXmTaskExeUseridsAndUsernamesByTaskId(taskId);
}
public List<Map<String,Object>> selectListMapByWhereWithTask(IPage page, QueryWrapper ew, Map<String,Object> ext){
return baseMapper.selectListMapByWhereWithTask(page,ew,ext);
public List<Map<String,Object>> selectListMapByWhereWithTask(IPage page, QueryWrapper<XmTaskExecuser> qw, Map<String, Object> ext){
return baseMapper.selectListMapByWhereWithTask(page,qw,ext);
}
}

Loading…
Cancel
Save