消息待办
parent
3bc461280b
commit
3fca101701
|
|
@ -56,6 +56,7 @@ public class ProjectTaskAddExe {
|
||||||
private final DomainDepartmentRepository domainDepartmentRepository;
|
private final DomainDepartmentRepository domainDepartmentRepository;
|
||||||
private final TodoListEventPusherUtil todoListEventPusherUtil;
|
private final TodoListEventPusherUtil todoListEventPusherUtil;
|
||||||
private final DomainGroupRepository domainGroupRepository;
|
private final DomainGroupRepository domainGroupRepository;
|
||||||
|
private final CorpInfoRepository corpInfoRepository;
|
||||||
@DubboReference
|
@DubboReference
|
||||||
private MessageFacade messageFacade;
|
private MessageFacade messageFacade;
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
|
@ -127,41 +128,67 @@ public class ProjectTaskAddExe {
|
||||||
} else if (CollUtil.isNotEmpty(projectTaskGroupUserAddCmdList) && CollUtil.isEmpty(projectTaskScoreInfoAddCmdList)) {
|
} else if (CollUtil.isNotEmpty(projectTaskGroupUserAddCmdList) && CollUtil.isEmpty(projectTaskScoreInfoAddCmdList)) {
|
||||||
// 只有group user列表不为空,等待评分设置
|
// 只有group user列表不为空,等待评分设置
|
||||||
projectTaskE.setExecuteStatus(ProjectTaskExecuteStatusEnum.SCORE_WAIT_SET.getCode());
|
projectTaskE.setExecuteStatus(ProjectTaskExecuteStatusEnum.SCORE_WAIT_SET.getCode());
|
||||||
|
//通知department
|
||||||
|
String domainDepartmentId = projectTaskE.getDomainDepartmentId();
|
||||||
|
DomainDepartmentDO infoByUUID = domainDepartmentRepository.getInfoByUUID(domainDepartmentId);
|
||||||
|
messageNotice(infoByUUID.getMasterUserId(),"MS000105",projectTaskE.getId(),null);
|
||||||
|
//股份端主账号
|
||||||
|
List<CorpInfoDO> gufen = corpInfoRepository.getGufen();
|
||||||
|
gufen.forEach(info -> {
|
||||||
|
messageNotice(info.getId(),"MS000105",projectTaskE.getId(),null);
|
||||||
|
});
|
||||||
|
|
||||||
} else if (CollUtil.isEmpty(projectTaskGroupUserAddCmdList) && CollUtil.isNotEmpty(projectTaskScoreInfoAddCmdList)) {
|
} else if (CollUtil.isEmpty(projectTaskGroupUserAddCmdList) && CollUtil.isNotEmpty(projectTaskScoreInfoAddCmdList)) {
|
||||||
// 只有score info列表不为空,等待项目组设置
|
// 只有score info列表不为空,等待项目组设置
|
||||||
|
//通知group
|
||||||
projectTaskE.setExecuteStatus(ProjectTaskExecuteStatusEnum.PROJECT_GROUP_WAIT_SET.getCode());
|
projectTaskE.setExecuteStatus(ProjectTaskExecuteStatusEnum.PROJECT_GROUP_WAIT_SET.getCode());
|
||||||
|
String domainGroupId = projectTaskE.getDomainGroupId();
|
||||||
|
DomainGroupDO info = domainGroupRepository.getInfoByGroupId(domainGroupId);
|
||||||
|
DomainDepartmentDO infoByUUID = domainDepartmentRepository.getInfoByUUID(projectTaskE.getDomainDepartmentId());
|
||||||
|
|
||||||
|
Map<String, Object> sendParams = new HashMap<String, Object>();
|
||||||
|
sendParams.put("DomainDepartment", infoByUUID.getMasterDepartmentName());
|
||||||
|
messageNotice(info.getTeamUserId(),"MS000108",projectTaskE.getId(),sendParams);
|
||||||
|
messageNotice(info.getCorpinfoId(),"MS000108",projectTaskE.getId(),sendParams);
|
||||||
}
|
}
|
||||||
|
|
||||||
projectTaskGateway.update(projectTaskE);
|
projectTaskGateway.update(projectTaskE);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
return true;
|
||||||
|
|
||||||
|
}
|
||||||
|
// Map<String, Object> sendParams = new HashMap<String, Object>();
|
||||||
|
//
|
||||||
|
// sendParams.put("SpecialTaskForceName", infoByGroupId.getDomainGroupName());
|
||||||
|
// sendParams.put("ResearchTask", infoByTaskId.getProjectName());
|
||||||
|
// sendParams.put("AverageScore", averageScore);
|
||||||
|
// messageSendCmd.setParams(sendParams);
|
||||||
|
private void messageNotice(Long userId,String sourceCode,Long foreignKey,Map<String, Object> sendParams) {
|
||||||
//消息通知
|
//消息通知
|
||||||
try{
|
try{
|
||||||
String domainDepartmentId = projectTaskE.getDomainDepartmentId();
|
|
||||||
DomainDepartmentDO infoByUUID = domainDepartmentRepository.getInfoByUUID(domainDepartmentId);
|
|
||||||
|
|
||||||
MessageSendCmd messageSendCmd = new MessageSendCmd();
|
MessageSendCmd messageSendCmd = new MessageSendCmd();
|
||||||
messageSendCmd.setBusinessId(UuidUtil.get32UUID());
|
messageSendCmd.setBusinessId(UuidUtil.get32UUID());
|
||||||
MessageTargetCmd messageTargetCmd = new MessageTargetCmd();
|
MessageTargetCmd messageTargetCmd = new MessageTargetCmd();
|
||||||
messageTargetCmd.setUserId(infoByUUID.getMasterUserId());
|
messageTargetCmd.setUserId(userId);
|
||||||
messageSendCmd.setTargetCmd(messageTargetCmd);
|
messageSendCmd.setTargetCmd(messageTargetCmd);
|
||||||
messageSendCmd.setSourceCode("MS000105");
|
messageSendCmd.setSourceCode(sourceCode);
|
||||||
messageSendCmd.setNeedTokenEnum(false);
|
messageSendCmd.setNeedTokenEnum(false);
|
||||||
Map<String, Object> sendParams = new HashMap<String, Object>();
|
|
||||||
messageSendCmd.setParams(sendParams);
|
messageSendCmd.setParams(sendParams);
|
||||||
|
|
||||||
log.info("评分完成消息提醒发送消息参数:messageSendCmd: {}", JSONUtil.toJsonStr(messageSendCmd));
|
log.info("评分完成消息提醒发送消息参数:messageSendCmd: {}", JSONUtil.toJsonStr(messageSendCmd));
|
||||||
SingleResponse<Boolean> d = messageFacade.send(messageSendCmd);
|
SingleResponse<Boolean> d = messageFacade.send(messageSendCmd);
|
||||||
log.info("评分完成消息提醒发送消息结果:d: {}", JSONUtil.toJsonStr(d));
|
log.info("评分完成消息提醒发送消息结果:d: {}", JSONUtil.toJsonStr(d));
|
||||||
|
|
||||||
|
|
||||||
// 发送待办
|
// 发送待办
|
||||||
TodoListAddEvent event = new TodoListAddEvent();
|
TodoListAddEvent event = new TodoListAddEvent();
|
||||||
event.setTitle("您有一条【专项领域】待处理");
|
event.setTitle("您有一条【专项领域】待处理");
|
||||||
event.setContent("待开始");
|
event.setContent("待开始");
|
||||||
event.setForeignKey(projectTaskE.getId()); // 业务表ID -申请
|
event.setForeignKey(foreignKey); // 业务表ID -申请
|
||||||
event.setForeignSubsidiaryKey(projectTaskE.getId()); // 业务附表ID 没有附表时为foreignKey的值
|
event.setForeignSubsidiaryKey(foreignKey); // 业务附表ID 没有附表时为foreignKey的值
|
||||||
event.setReceiveUser(infoByUUID.getMasterUserId());// user表ID
|
event.setReceiveUser(userId);// user表ID
|
||||||
event.setPcFlag(1); // 是否PC端待办 1是 0否
|
event.setPcFlag(1); // 是否PC端待办 1是 0否
|
||||||
event.setAppFlag(0); // 是否APP端待办 1是 0否
|
event.setAppFlag(0); // 是否APP端待办 1是 0否
|
||||||
event.setOtherParams(new JSONObject());
|
event.setOtherParams(new JSONObject());
|
||||||
|
|
@ -170,8 +197,6 @@ public class ProjectTaskAddExe {
|
||||||
}catch (Exception e) {
|
}catch (Exception e) {
|
||||||
log.error("评分完成消息提醒发送消息异常:", e);
|
log.error("评分完成消息提醒发送消息异常:", e);
|
||||||
}
|
}
|
||||||
return true;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -27,5 +27,7 @@ public interface DomainDepartmentMapper extends BaseMapper<DomainDepartmentDO> {
|
||||||
IPage<DomainDepartmentDO> listPage(IPage<DomainDepartmentDO> iPage, Map<String, Object> params, String menuPerms);
|
IPage<DomainDepartmentDO> listPage(IPage<DomainDepartmentDO> iPage, Map<String, Object> params, String menuPerms);
|
||||||
|
|
||||||
List<DomainDepartmentDO> listAll(Map<String, Object> params);
|
List<DomainDepartmentDO> listAll(Map<String, Object> params);
|
||||||
|
|
||||||
|
DomainDepartmentDO getInfoByUUID(String domainDepartmentId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ import com.alibaba.cola.dto.PageResponse;
|
||||||
import com.jjb.saas.framework.repository.repo.BaseRepository;
|
import com.jjb.saas.framework.repository.repo.BaseRepository;
|
||||||
import com.zcloud.domain.persistence.dataobject.CorpInfoDO;
|
import com.zcloud.domain.persistence.dataobject.CorpInfoDO;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -22,5 +23,7 @@ public interface CorpInfoRepository extends BaseRepository<CorpInfoDO> {
|
||||||
boolean isSupper();
|
boolean isSupper();
|
||||||
|
|
||||||
Boolean checkCorp();
|
Boolean checkCorp();
|
||||||
|
|
||||||
|
List<CorpInfoDO> getGufen();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -25,5 +25,6 @@ public interface DomainGroupRepository extends BaseRepository<DomainGroupDO> {
|
||||||
List<DomainGroupDO> getListByCorpinfoId(@NotNull(message = "主责企业不能为空") Long corpinfoId);
|
List<DomainGroupDO> getListByCorpinfoId(@NotNull(message = "主责企业不能为空") Long corpinfoId);
|
||||||
|
|
||||||
DomainGroupDO getInfoByGroupId(String domainGroupId);
|
DomainGroupDO getInfoByGroupId(String domainGroupId);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,7 @@ import com.zcloud.gbscommon.utils.Query;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -68,5 +69,13 @@ public class CorpInfoRepositoryImpl extends BaseRepositoryImpl<CorpInfoMapper, C
|
||||||
public Boolean checkCorp() {
|
public Boolean checkCorp() {
|
||||||
return AuthContext.getUserId().equals(AuthContext.getTenantId());
|
return AuthContext.getUserId().equals(AuthContext.getTenantId());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<CorpInfoDO> getGufen() {
|
||||||
|
QueryWrapper<CorpInfoDO> queryWrapper = new QueryWrapper<>();
|
||||||
|
queryWrapper.eq("type", 2);
|
||||||
|
List<CorpInfoDO> corpInfoDOS = corpInfoMapper.selectList(queryWrapper);
|
||||||
|
return corpInfoDOS;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -65,9 +65,7 @@ public class DomainDepartmentRepositoryImpl extends BaseRepositoryImpl<DomainDep
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public DomainDepartmentDO getInfoByUUID(String domainDepartmentId) {
|
public DomainDepartmentDO getInfoByUUID(String domainDepartmentId) {
|
||||||
QueryWrapper<DomainDepartmentDO> queryWrapper = new QueryWrapper<>();
|
DomainDepartmentDO domainDepartmentDO = domainDepartmentMapper.getInfoByUUID(domainDepartmentId);
|
||||||
queryWrapper.eq("domain_department_id", domainDepartmentId);
|
|
||||||
DomainDepartmentDO domainDepartmentDO = getOne(queryWrapper);
|
|
||||||
return domainDepartmentDO;
|
return domainDepartmentDO;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -44,5 +44,14 @@
|
||||||
group by dd.id
|
group by dd.id
|
||||||
order by dd.create_time desc
|
order by dd.create_time desc
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="getInfoByUUID" resultType="com.zcloud.domain.persistence.dataobject.DomainDepartmentDO">
|
||||||
|
select dd.*, d.name as masterDepartmentName, u.name as masterUserName
|
||||||
|
from domain_department dd
|
||||||
|
left join department d on dd.master_department_id = d.id
|
||||||
|
left join user u on dd.master_user_id = u.id
|
||||||
|
where dd.delete_enum = 'FALSE'
|
||||||
|
and dd.domain_department_id = #{domainDepartmentId}
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue