refactor(消息管理): 补充消息管理接口内容
This commit is contained in:
parent
fb5fec0966
commit
1a9d36534a
|
@ -21,6 +21,7 @@ import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|
||||||
|
@ -42,7 +43,7 @@ public class NoticeMessageTaskController {
|
||||||
@GetMapping("message/task/get/{projectId}")
|
@GetMapping("message/task/get/{projectId}")
|
||||||
@Operation(summary = "项目管理-项目与权限-消息管理-消息设置-获取消息设置")
|
@Operation(summary = "项目管理-项目与权限-消息管理-消息设置-获取消息设置")
|
||||||
@RequiresPermissions(PermissionConstants.PROJECT_MESSAGE_READ_ADD)
|
@RequiresPermissions(PermissionConstants.PROJECT_MESSAGE_READ_ADD)
|
||||||
public List<MessageTaskDTO> getMessageList(@PathVariable String projectId) {
|
public List<MessageTaskDTO> getMessageList(@PathVariable String projectId) throws IOException {
|
||||||
return noticeMessageTaskService.getMessageList(projectId);
|
return noticeMessageTaskService.getMessageList(projectId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -19,13 +19,13 @@ public class ProjectRobotDTO {
|
||||||
@NotBlank(message = "{project_robot.name.not_blank}", groups = {Created.class, Updated.class})
|
@NotBlank(message = "{project_robot.name.not_blank}", groups = {Created.class, Updated.class})
|
||||||
private String name;
|
private String name;
|
||||||
|
|
||||||
@Schema(description = "所属平台(飞书,钉钉,企业微信,自定义)", requiredMode = Schema.RequiredMode.REQUIRED)
|
@Schema(description = "所属平台(飞书:LARK,钉钉:DING_TALK,企业微信:WE_COM,自定义:CUSTOM, 站内信:IN_SITE, 邮件:MAIL)", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||||
private String platform;
|
private String platform;
|
||||||
|
|
||||||
@Schema(description = "webhook", requiredMode = Schema.RequiredMode.REQUIRED)
|
@Schema(description = "webhook", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||||
private String webhook;
|
private String webhook;
|
||||||
|
|
||||||
@Schema(description = "钉钉自定义和内部")
|
@Schema(description = "钉钉机器人的种类: 自定义:CUSTOM, 企业内部:ENTERPRISE")
|
||||||
private String type;
|
private String type;
|
||||||
|
|
||||||
@Schema(description = "钉钉AppKey")
|
@Schema(description = "钉钉AppKey")
|
||||||
|
|
|
@ -279,21 +279,17 @@ public class NoticeMessageTaskService {
|
||||||
* @param projectId 项目ID
|
* @param projectId 项目ID
|
||||||
* @return List<MessageTaskDTO>
|
* @return List<MessageTaskDTO>
|
||||||
*/
|
*/
|
||||||
public List<MessageTaskDTO> getMessageList(String projectId) {
|
public List<MessageTaskDTO> getMessageList(String projectId) throws IOException {
|
||||||
checkProjectExist(projectId);
|
checkProjectExist(projectId);
|
||||||
//获取返回数据结构
|
//获取返回数据结构
|
||||||
StringBuilder jsonStr = new StringBuilder();
|
StringBuilder jsonStr = new StringBuilder();
|
||||||
InputStream inputStream = getClass().getResourceAsStream("/message_task.json");
|
InputStream inputStream = getClass().getResourceAsStream("/message_task.json");
|
||||||
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
|
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
|
||||||
String line;
|
String line;
|
||||||
try {
|
|
||||||
while ((line = reader.readLine()) != null) {
|
while ((line = reader.readLine()) != null) {
|
||||||
jsonStr.append(line);
|
jsonStr.append(line);
|
||||||
}
|
}
|
||||||
reader.close();
|
reader.close();
|
||||||
} catch (IOException e) {
|
|
||||||
throw new RuntimeException(e);
|
|
||||||
}
|
|
||||||
List<MessageTaskDTO> messageTaskDTOList = JSON.parseArray(jsonStr.toString(), MessageTaskDTO.class);
|
List<MessageTaskDTO> messageTaskDTOList = JSON.parseArray(jsonStr.toString(), MessageTaskDTO.class);
|
||||||
//查询数据
|
//查询数据
|
||||||
MessageTaskExample messageTaskExample = new MessageTaskExample();
|
MessageTaskExample messageTaskExample = new MessageTaskExample();
|
||||||
|
|
|
@ -86,6 +86,9 @@ public class NoticeMessageTaskControllerTests extends BaseTest {
|
||||||
messageTaskRequest.setRobotId("test_message_robot2");
|
messageTaskRequest.setRobotId("test_message_robot2");
|
||||||
messageTaskRequest.setEnable(true);
|
messageTaskRequest.setEnable(true);
|
||||||
messageTaskRequest.setTemplate("发送消息测试");
|
messageTaskRequest.setTemplate("发送消息测试");
|
||||||
|
messageTaskRequest.setUseDefaultTemplate(true);
|
||||||
|
messageTaskRequest.setSubject("发送消息测试标题");
|
||||||
|
messageTaskRequest.setUseDefaultTemplate(true);
|
||||||
MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders.post("/notice/message/task/save")
|
MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders.post("/notice/message/task/save")
|
||||||
.header(SessionConstants.HEADER_TOKEN, sessionId)
|
.header(SessionConstants.HEADER_TOKEN, sessionId)
|
||||||
.header(SessionConstants.CSRF_TOKEN, csrfToken)
|
.header(SessionConstants.CSRF_TOKEN, csrfToken)
|
||||||
|
@ -300,8 +303,9 @@ public class NoticeMessageTaskControllerTests extends BaseTest {
|
||||||
messageTaskRequest.setTaskType(NoticeConstants.TaskType.API_DEFINITION_TASK);
|
messageTaskRequest.setTaskType(NoticeConstants.TaskType.API_DEFINITION_TASK);
|
||||||
messageTaskRequest.setEvent(NoticeConstants.Event.CREATE);
|
messageTaskRequest.setEvent(NoticeConstants.Event.CREATE);
|
||||||
List<String> userIds = new ArrayList<>();
|
List<String> userIds = new ArrayList<>();
|
||||||
userIds.add("CREATE_USER");
|
userIds.add(NoticeConstants.RelatedUser.CREATE_USER);
|
||||||
userIds.add("FOLLOW_PEOPLE");
|
userIds.add(NoticeConstants.RelatedUser.FOLLOW_PEOPLE);
|
||||||
|
userIds.add(NoticeConstants.RelatedUser.OPERATOR);
|
||||||
messageTaskRequest.setReceiverIds(userIds);
|
messageTaskRequest.setReceiverIds(userIds);
|
||||||
messageTaskRequest.setRobotId("test_message_robot2");
|
messageTaskRequest.setRobotId("test_message_robot2");
|
||||||
messageTaskRequest.setEnable(true);
|
messageTaskRequest.setEnable(true);
|
||||||
|
@ -326,8 +330,8 @@ public class NoticeMessageTaskControllerTests extends BaseTest {
|
||||||
messageTaskRequest.setTaskType(NoticeConstants.TaskType.API_DEFINITION_TASK);
|
messageTaskRequest.setTaskType(NoticeConstants.TaskType.API_DEFINITION_TASK);
|
||||||
messageTaskRequest.setEvent(NoticeConstants.Event.CREATE);
|
messageTaskRequest.setEvent(NoticeConstants.Event.CREATE);
|
||||||
List<String> userIds = new ArrayList<>();
|
List<String> userIds = new ArrayList<>();
|
||||||
userIds.add("CREATE_USER");
|
userIds.add(NoticeConstants.RelatedUser.CREATE_USER);
|
||||||
userIds.add("FOLLOW_PEOPLE");
|
userIds.add(NoticeConstants.RelatedUser.FOLLOW_PEOPLE);
|
||||||
userIds.add("project-message-user-5");
|
userIds.add("project-message-user-5");
|
||||||
messageTaskRequest.setReceiverIds(userIds);
|
messageTaskRequest.setReceiverIds(userIds);
|
||||||
messageTaskRequest.setRobotId("test_message_robot2");
|
messageTaskRequest.setRobotId("test_message_robot2");
|
||||||
|
@ -353,8 +357,8 @@ public class NoticeMessageTaskControllerTests extends BaseTest {
|
||||||
messageTaskRequest.setTaskType(NoticeConstants.TaskType.API_DEFINITION_TASK);
|
messageTaskRequest.setTaskType(NoticeConstants.TaskType.API_DEFINITION_TASK);
|
||||||
messageTaskRequest.setEvent(NoticeConstants.Event.CREATE);
|
messageTaskRequest.setEvent(NoticeConstants.Event.CREATE);
|
||||||
List<String> userIds = new ArrayList<>();
|
List<String> userIds = new ArrayList<>();
|
||||||
userIds.add("CREATE_USER");
|
userIds.add(NoticeConstants.RelatedUser.CREATE_USER);
|
||||||
userIds.add("FOLLOW_PEOPLE");
|
userIds.add(NoticeConstants.RelatedUser.FOLLOW_PEOPLE);
|
||||||
userIds.add("project-message-user-6");
|
userIds.add("project-message-user-6");
|
||||||
userIds.add("project-message-user-del");
|
userIds.add("project-message-user-del");
|
||||||
messageTaskRequest.setReceiverIds(userIds);
|
messageTaskRequest.setReceiverIds(userIds);
|
||||||
|
@ -375,14 +379,44 @@ public class NoticeMessageTaskControllerTests extends BaseTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Order(14)
|
@Order(14)
|
||||||
|
public void updateMessageTaskCheckSpecialUserThreeSuccess() throws Exception {
|
||||||
|
MessageTaskRequest messageTaskRequest = new MessageTaskRequest();
|
||||||
|
messageTaskRequest.setProjectId("project-message-test");
|
||||||
|
messageTaskRequest.setTaskType(NoticeConstants.TaskType.API_DEFINITION_TASK);
|
||||||
|
messageTaskRequest.setEvent(NoticeConstants.Event.CREATE);
|
||||||
|
List<String> userIds = new ArrayList<>();
|
||||||
|
userIds.add(NoticeConstants.RelatedUser.CREATE_USER);
|
||||||
|
userIds.add(NoticeConstants.RelatedUser.FOLLOW_PEOPLE);
|
||||||
|
userIds.add("project-message-user-6");
|
||||||
|
messageTaskRequest.setReceiverIds(userIds);
|
||||||
|
messageTaskRequest.setRobotId("test_message_robot2");
|
||||||
|
messageTaskRequest.setEnable(false);
|
||||||
|
messageTaskRequest.setTemplate("发送消息测试");
|
||||||
|
messageTaskRequest.setSubject("发送消息测试标题");
|
||||||
|
messageTaskRequest.setUseDefaultTemplate(false);
|
||||||
|
messageTaskRequest.setUseDefaultSubject(false);
|
||||||
|
MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders.post("/notice/message/task/save")
|
||||||
|
.header(SessionConstants.HEADER_TOKEN, sessionId)
|
||||||
|
.header(SessionConstants.CSRF_TOKEN, csrfToken)
|
||||||
|
.content(JSON.toJSONString(messageTaskRequest))
|
||||||
|
.contentType(MediaType.APPLICATION_JSON))
|
||||||
|
.andExpect(status().isOk())
|
||||||
|
.andExpect(content().contentType(MediaType.APPLICATION_JSON)).andReturn();
|
||||||
|
String contentAsString = mvcResult.getResponse().getContentAsString(StandardCharsets.UTF_8);
|
||||||
|
ResultHolder resultHolder = JSON.parseObject(contentAsString, ResultHolder.class);
|
||||||
|
Assertions.assertEquals(100200, resultHolder.getCode());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
@Order(15)
|
||||||
public void closeMessageTaskSuccess() throws Exception {
|
public void closeMessageTaskSuccess() throws Exception {
|
||||||
MessageTaskRequest messageTaskRequest = new MessageTaskRequest();
|
MessageTaskRequest messageTaskRequest = new MessageTaskRequest();
|
||||||
messageTaskRequest.setProjectId("project-message-test");
|
messageTaskRequest.setProjectId("project-message-test");
|
||||||
messageTaskRequest.setTaskType(NoticeConstants.TaskType.API_DEFINITION_TASK);
|
messageTaskRequest.setTaskType(NoticeConstants.TaskType.API_DEFINITION_TASK);
|
||||||
messageTaskRequest.setEvent(NoticeConstants.Event.CREATE);
|
messageTaskRequest.setEvent(NoticeConstants.Event.CREATE);
|
||||||
List<String> userIds = new ArrayList<>();
|
List<String> userIds = new ArrayList<>();
|
||||||
userIds.add("CREATE_USER");
|
userIds.add(NoticeConstants.RelatedUser.CREATE_USER);
|
||||||
userIds.add("FOLLOW_PEOPLE");
|
userIds.add(NoticeConstants.RelatedUser.FOLLOW_PEOPLE);
|
||||||
messageTaskRequest.setReceiverIds(userIds);
|
messageTaskRequest.setReceiverIds(userIds);
|
||||||
messageTaskRequest.setRobotId("test_message_robot2");
|
messageTaskRequest.setRobotId("test_message_robot2");
|
||||||
messageTaskRequest.setEnable(false);
|
messageTaskRequest.setEnable(false);
|
||||||
|
|
Loading…
Reference in New Issue