Browse Source

添加角色增加系统消息

recovery
ma 4 years ago
parent
commit
871104abe8
  1. 11
      tall/src/main/java/com/ccsens/tall/bean/vo/MessageVo.java
  2. 68
      tall/src/main/java/com/ccsens/tall/service/IRobotService.java
  3. 9
      tall/src/main/java/com/ccsens/tall/service/ProRoleService.java
  4. 61
      tall/src/main/java/com/ccsens/tall/service/RobotService.java
  5. 14
      tall/src/main/java/com/ccsens/tall/util/WxTemplateUtil.java
  6. 5
      tall/src/main/java/com/ccsens/tall/web/MemberController.java
  7. 4
      tall/src/main/java/com/ccsens/tall/web/RoleController.java
  8. 4
      tall/src/main/resources/application.yml
  9. 2
      util/src/main/java/com/ccsens/util/WebConstant.java

11
tall/src/main/java/com/ccsens/tall/bean/vo/MessageVo.java

@ -281,4 +281,15 @@ public class MessageVo {
.appendMessage(new MessageVo.Message(WebConstant.TemplateParam.Deliverable.value,deliverName));
return inform;
}
/**
* 添加角色
*/
public static Inform addRoleComment(Long userId,String userName,Long projectId,String projectName,String roleName) {
MessageVo.Inform inform = new MessageVo.Inform(projectId, userId);
inform.appendMessage(new MessageVo.Message(WebConstant.TemplateParam.Operator.value, userName))
.appendMessage(new MessageVo.Message(WebConstant.TemplateParam.ProjectName.value, projectName, WebConstant.Message.TYPE_LINK, Message.getProjectSettings(projectId)))
.appendMessage(new MessageVo.Message(WebConstant.TemplateParam.RoleName.value,roleName));
return inform;
}
}

68
tall/src/main/java/com/ccsens/tall/service/IRobotService.java

@ -18,85 +18,93 @@ public interface IRobotService {
/**
* 添加任务消息
* @param currentUserId
* @param project
* @param taskName
* @param executorId
* @param currentUserId 登录用户id
* @param project 项目
* @param taskName 任务名称
* @param executorId 负责人
*/
void addTaskRobotSend(Long currentUserId, SysProject project, String taskName, Long executorId) throws Exception;
/**
* 删除任务消息
* @param currentUserId
* @param taskDetail
* @param currentUserId 登录用户id
* @param taskDetail 任务详情
*/
void deleteTaskRobotSend(Long currentUserId, ProTaskDetail taskDetail) throws Exception;
/**
* 修改任务信息
* @param currentUserId
* @param normalTask
* @param currentUserId 登录用户id
* @param normalTask 任务
*/
void changeTaskRobotSend(Long currentUserId, TaskVo.NormalTask normalTask) throws Exception;
/**
* 上传交付物信息
* @param currentUserId
* @param subTimeId
* @param currentUserId 登录用户id
* @param subTimeId 分解任务id
*/
void addDeliverRobotSend(Long currentUserId,String deliverName, Long subTimeId,SysProject project) throws Exception;
/**
* 删除交付物信息
* @param currentUserId
* @param name
* @param subTimeId
* @param currentUserId 登录用户id
* @param name 交付物名称
* @param subTimeId 分解任务id
*/
void deleteDeliverRobotSend(Long currentUserId, String name, Long subTimeId) throws Exception;
/**
* 检查交付物信息
* @param currentUserId
* @param task
* @param userIdSet
* @param name
* @param currentUserId 当前登录用户id
* @param task 任务
* @param userIdSet 上传用户id
* @param name 交付物名称
*/
void checkDeliverRobotSend(Long currentUserId, ProTaskDetail task, Long userIdSet, String name,Boolean flag) throws Exception;
/**
* 评论任务信息
* @param userId
* @param proTaskDetail
* @param userId 用户id
* @param proTaskDetail 项目详情
*/
void addCommentRobotSend(Long userId, ProTaskDetail proTaskDetail) throws Exception;
/**
* 上传输入文档的文件消息记录
* @param currentUserId
* @param task
* @param deliverable
* @throws Exception
* @param currentUserId 登录用户id
* @param task 任务详情
* @param deliverable 交付物
* @throws Exception 异常
*/
void uploadForDocRobotSend(Long currentUserId,ProTaskDetail task,String deliverable) throws Exception;
/**
* 删除输入文档中的文件消息记录
* @param userId
* @param taskDetail
* @param name
* @param userId 登录用户id
* @param taskDetail 任务详情
* @param name 交付物名称
* @throws Exception
*/
void delDocRobotSend(Long userId, ProTaskDetail taskDetail, String name) throws Exception;
/**
* 修改输入文档中的备注 消息记录
* @param userId
* @param taskDetail
* @param name
* @throws Exception
* @param userId 登录用户id
* @param taskDetail 任务详情
* @param name 交付物名称
* @throws Exception 异常
*/
void updateRemarkRobotSend(Long userId, ProTaskDetail taskDetail, String name) throws Exception;
/**
* 添加角色 消息记录
* @param currentUserId 当前用户id
* @param projectId 项目id
* @param roleName 角色名称
*/
void addRoleRobotSend(Long currentUserId, Long projectId, String roleName,Long roleId) throws Exception;
/**
* 查询模板
* @param code

9
tall/src/main/java/com/ccsens/tall/service/ProRoleService.java

@ -74,6 +74,8 @@ public class ProRoleService implements IProRoleService {
private ProRoleMapper proRoleMapper;
@Resource
private ProRoleExcludeMapper proRoleExcludeMapper;
@Resource
private RobotService robotService;
@Override
public void saveProRole(ProRole proRole) {
proRoleDao.insertSelective(proRole);
@ -579,6 +581,13 @@ public class ProRoleService implements IProRoleService {
RoleVo.RoleByProjectId roleInfo = new RoleVo.RoleByProjectId();
roleInfo.setRoleId(role.getId());
roleInfo.setRoleName(role.getName());
//发送系统消息
try {
robotService.addRoleRobotSend(currentUserId,saveRole.getProjectId(),saveRole.getRoleName(),roleInfo.getRoleId());
}catch (Exception e){
log.info("发送系统消息异常",e);
}
return roleInfo;
}

61
tall/src/main/java/com/ccsens/tall/service/RobotService.java

@ -253,11 +253,11 @@ public class RobotService implements IRobotService{
/**
* 上传交付物信息 消息
* @param currentUserId
* @param deliverName
* @param subTimeId
* @param project
* @throws Exception
* @param currentUserId 当前用户id
* @param deliverName 交付物名称
* @param subTimeId 分解任务id
* @param project 项目
* @throws Exception 异常
*/
@Override
public void addDeliverRobotSend(Long currentUserId, String deliverName, Long subTimeId,SysProject project) throws Exception {
@ -334,11 +334,11 @@ public class RobotService implements IRobotService{
/**
* 检查交付物 消息
* @param currentUserId
* @param task
* @param uploadUserId
* @param deliverName
* @throws Exception
* @param currentUserId 当前登录用户id
* @param task 任务详情
* @param uploadUserId 上传用户id
* @param deliverName 交付物名称
* @throws Exception 异常
*/
@Override
public void checkDeliverRobotSend(Long currentUserId, ProTaskDetail task, Long uploadUserId, String deliverName,Boolean flag) throws Exception {
@ -436,7 +436,6 @@ public class RobotService implements IRobotService{
RobotUtil.setInform(inform);
// 添加wx消息通知
RobotUtil.setWxTemplate(WxTemplateUtil.uploadFileForDoc(project.getId(), userName,project.getName(),task.getName(),deliverable));
}
/**
@ -477,10 +476,10 @@ public class RobotService implements IRobotService{
/**
* 修改输入文档备注 消息记录
* @param userId
* @param taskDetail
* @param name
* @throws Exception
* @param userId 当前用户id
* @param taskDetail 任务详情
* @param name 交付物名称
* @throws Exception 异常
*/
@Override
public void updateRemarkRobotSend(Long userId, ProTaskDetail taskDetail, String name) throws Exception {
@ -548,4 +547,36 @@ public class RobotService implements IRobotService{
/**
*新增角色 系统消息
*/
@Override
public void addRoleRobotSend(Long currentUserId, Long projectId, String roleName,Long roleId) throws Exception {
String userName = userService.getUserNameByUserId(currentUserId);
String projectName = "";
SysProject project = sysProjectDao.selectByPrimaryKey(projectId);
if (ObjectUtil.isNotNull(project)){
projectName = project.getName();
}
//生成消息
RobotUtil.Message message = new RobotUtil.Message(project.getId());
message.appendParams(
new MessageVo.Message(WebConstant.TemplateParam.Operator.value,userName),
new MessageVo.Message(WebConstant.TemplateParam.ProjectName.value,projectName),
new MessageVo.Message(WebConstant.TemplateParam.RoleName.value,roleName)
);
//获取角色内成员的手机号
String[] memberPhone = getMemberPhonesByRoleId(roleId);
if(memberPhone.length != 0){
message.appendMentionedMobileList(memberPhone);
}
RobotUtil.setRobotMessage(message);
MessageVo.Inform inform = MessageVo.addRoleComment(currentUserId, userName, project.getId(), project.getName(),roleName);
RobotUtil.setInform(inform);
// 添加wx消息通知
RobotUtil.setWxTemplate(WxTemplateUtil.addRoleRemark(project.getId(), userName,project.getName(),roleName));
}
}

14
tall/src/main/java/com/ccsens/tall/util/WxTemplateUtil.java

@ -221,4 +221,18 @@ public class WxTemplateUtil {
message.setData(data);
return message;
}
/**
* 添加角色
*/
public static WxTemplateMessage addRoleRemark(Long projectId, String userName,String projectName,String roleName) {
WxTemplateMessage message = getWxTemplateMessage(projectId);
message.setTemplate_id(WxGzhUtil.Template.TASK_PROGRESS.templateId);
WxTemplateMessage.TemplateData data = new WxTemplateMessage.TemplateData();
data.setFirst(new WxTemplateMessage.TemplateSettings(""));
data.setKeyword1(new WxTemplateMessage.TemplateSettings(userName + "在项目《"+projectName+"》内的新增了角色" + roleName));
data.setKeyword2(new WxTemplateMessage.TemplateSettings("新增角色"));
message.setData(data);
return message;
}
}

5
tall/src/main/java/com/ccsens/tall/web/MemberController.java

@ -7,6 +7,7 @@ import com.ccsens.tall.bean.vo.RoleVo;
import com.ccsens.tall.service.IProMemberService;
import com.ccsens.util.JsonResponse;
import com.ccsens.util.WebConstant;
import com.ccsens.util.annotation.OperateType;
import io.jsonwebtoken.Claims;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParams;
@ -34,7 +35,7 @@ public class MemberController {
@Resource
private IProMemberService proMemberService;
@OperateType(value = 20)
@ApiOperation(value = "添加成员",notes = "")
@ApiImplicitParams({
})
@ -47,6 +48,7 @@ public class MemberController {
return JsonResponse.newInstance().ok(memberInfo);
}
@OperateType(value = 21)
@ApiOperation(value = "删除成员",notes = "")
@ApiImplicitParams({
})
@ -58,6 +60,7 @@ public class MemberController {
return JsonResponse.newInstance().ok();
}
@OperateType(value = 22)
@ApiOperation(value = "修改成员信息",notes = "")
@ApiImplicitParams({
})

4
tall/src/main/java/com/ccsens/tall/web/RoleController.java

@ -12,6 +12,7 @@ import com.ccsens.tall.bean.vo.TaskVo;
import com.ccsens.tall.service.IProRoleService;
import com.ccsens.util.JsonResponse;
import com.ccsens.util.WebConstant;
import com.ccsens.util.annotation.OperateType;
import com.ccsens.util.bean.dto.QueryDto;
import io.jsonwebtoken.Claims;
import io.swagger.annotations.*;
@ -35,6 +36,7 @@ public class RoleController {
@Resource
private IProRoleService proRoleService;
@OperateType(value = 18)
@ApiOperation(value = "删除角色",notes = "")
@ApiImplicitParams({
})
@ -46,6 +48,7 @@ public class RoleController {
return JsonResponse.newInstance().ok();
}
@OperateType(value = 17)
@ApiOperation(value = "添加角色",notes = "")
@ApiImplicitParams({
})
@ -57,6 +60,7 @@ public class RoleController {
return JsonResponse.newInstance().ok(roleInfo);
}
@OperateType(value = 19)
@ApiOperation(value = "修改角色信息",notes = "")
@ApiImplicitParams({
})

4
tall/src/main/resources/application.yml

@ -1,5 +1,5 @@
spring:
profiles:
active: dev
include: util-dev,common
active: test
include: util-test,common

2
util/src/main/java/com/ccsens/util/WebConstant.java

@ -71,6 +71,8 @@ public class WebConstant {
Deliverable("{{deliverable}}", "交付物"),
Operate("{{operate}}", "操作"),
Principal("{{principal}}", "负责人"),
RoleName("{{roleName}}", "角色名"),
MemberName("{{memberName}}", "成员名"),
;
public String value;

Loading…
Cancel
Save