Merge branch 'feature/REQ-1465' of axzsource.com:universal/infrastructure/backend/msg-center-plat into dev

This commit is contained in:
luofu 2023-10-13 14:54:40 +08:00
commit 2e5fa22ac0
6 changed files with 190 additions and 2 deletions

View File

@ -4,9 +4,13 @@ import cn.axzo.msg.center.message.domain.param.MessageTemplateCreateParam;
import cn.axzo.msg.center.message.service.MessageTemplateNewService;
import cn.axzo.msg.center.service.template.client.MessageTemplateClient;
import cn.axzo.msg.center.service.template.request.MessageTemplateCreateRequest;
import cn.axzo.msg.center.service.template.request.MessageTemplatePageRequest;
import cn.axzo.msg.center.service.template.request.MessageTemplateUpdateRequest;
import cn.axzo.msg.center.service.template.request.MessageTemplateUpdateStatusRequest;
import cn.axzo.msg.center.service.template.response.MessageTemplateDetailResponse;
import cn.axzo.msg.center.service.template.response.MessageTemplatePageResponse;
import cn.azxo.framework.common.model.CommonResponse;
import cn.azxo.framework.common.model.Page;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.RestController;
@ -41,4 +45,16 @@ public class MessageTemplateController implements MessageTemplateClient {
// TODO:[cold_blade] [P0] query template
return null;
}
@Override
public CommonResponse<Page<MessageTemplatePageResponse>> page(MessageTemplatePageRequest request) {
// TODO:[cold_blade] [P0] page query template
return null;
}
@Override
public CommonResponse<Void> updateStatus(MessageTemplateUpdateStatusRequest request) {
// TODO:[cold_blade] [P0] update template status
return null;
}
}

View File

@ -2,9 +2,13 @@ package cn.axzo.msg.center.service.template.client;
import cn.axzo.msg.center.service.template.client.fallback.MessageTemplateClientFallback;
import cn.axzo.msg.center.service.template.request.MessageTemplateCreateRequest;
import cn.axzo.msg.center.service.template.request.MessageTemplatePageRequest;
import cn.axzo.msg.center.service.template.request.MessageTemplateUpdateRequest;
import cn.axzo.msg.center.service.template.request.MessageTemplateUpdateStatusRequest;
import cn.axzo.msg.center.service.template.response.MessageTemplateDetailResponse;
import cn.axzo.msg.center.service.template.response.MessageTemplatePageResponse;
import cn.azxo.framework.common.model.CommonResponse;
import cn.azxo.framework.common.model.Page;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Component;
@ -37,10 +41,9 @@ public interface MessageTemplateClient {
CommonResponse<String> save(@RequestBody @Valid MessageTemplateCreateRequest request);
/**
* 添加消息模板
* 编辑消息模板
*
* @param request 模板数据模型
* @return 模板编码
*/
@PostMapping(value = "/message/template/update", produces = {MediaType.APPLICATION_JSON_VALUE})
CommonResponse<Void> update(@RequestBody @Valid MessageTemplateUpdateRequest request);
@ -53,4 +56,21 @@ public interface MessageTemplateClient {
*/
@PostMapping(value = "/message/template/detail", produces = {MediaType.APPLICATION_JSON_VALUE})
CommonResponse<MessageTemplateDetailResponse> detail(@RequestParam("templateCode") String templateCode);
/**
* 分页查询模板
*
* @param request 分页查询参数
* @return 模板列表
*/
@PostMapping(value = "/message/template/page", produces = {MediaType.APPLICATION_JSON_VALUE})
CommonResponse<Page<MessageTemplatePageResponse>> page(@RequestBody MessageTemplatePageRequest request);
/**
* 启用/禁用消息模板
*
* @param request 模板状态
*/
@PostMapping(value = "/message/template/update-status", produces = {MediaType.APPLICATION_JSON_VALUE})
CommonResponse<Void> updateStatus(@RequestBody @Valid MessageTemplateUpdateStatusRequest request);
}

View File

@ -2,9 +2,13 @@ package cn.axzo.msg.center.service.template.client.fallback;
import cn.axzo.msg.center.service.template.client.MessageTemplateClient;
import cn.axzo.msg.center.service.template.request.MessageTemplateCreateRequest;
import cn.axzo.msg.center.service.template.request.MessageTemplatePageRequest;
import cn.axzo.msg.center.service.template.request.MessageTemplateUpdateRequest;
import cn.axzo.msg.center.service.template.request.MessageTemplateUpdateStatusRequest;
import cn.axzo.msg.center.service.template.response.MessageTemplateDetailResponse;
import cn.axzo.msg.center.service.template.response.MessageTemplatePageResponse;
import cn.azxo.framework.common.model.CommonResponse;
import cn.azxo.framework.common.model.Page;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
@ -35,4 +39,16 @@ public class MessageTemplateClientFallback implements MessageTemplateClient {
log.error("fall back while query template detail. templateCode:{}", templateCode);
return CommonResponse.error("fall back while query template detail");
}
@Override
public CommonResponse<Page<MessageTemplatePageResponse>> page(MessageTemplatePageRequest request) {
log.error("fall back while paging query template. request:{}", request);
return CommonResponse.error("fall back while paging query template");
}
@Override
public CommonResponse<Void> updateStatus(MessageTemplateUpdateStatusRequest request) {
log.error("fall back while updating template status. request:{}", request);
return CommonResponse.error("fall back while updating template status");
}
}

View File

@ -0,0 +1,45 @@
package cn.axzo.msg.center.service.template.request;
import cn.axzo.msg.center.service.enums.MessageCategoryEnum;
import cn.axzo.msg.center.service.enums.StatusEnum;
import lombok.Getter;
import lombok.Setter;
import java.io.Serializable;
/**
* @author cold_blade
* @date 2023/10/13
* @version 1.0
*/
@Setter
@Getter
public class MessageTemplatePageRequest implements Serializable {
private static final long serialVersionUID = 3501567663122621175L;
/**
* 模板名称
*/
private String templateName;
/**
* 模板编码
*/
private String templateCode;
/**
* 消息类型
* GENERAL_MESSAGE: 普通消息
* PENDING_MESSAGE: 待办消息
*/
private MessageCategoryEnum category;
/**
* 分类树的结点编码
*/
private String groupNodeCode;
/**
* 模板状态
* ENABLE: 启用
* DISABLE: 禁用
*/
private StatusEnum status;
}

View File

@ -0,0 +1,32 @@
package cn.axzo.msg.center.service.template.request;
import cn.axzo.msg.center.service.enums.StatusEnum;
import lombok.Getter;
import lombok.Setter;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* @author cold_blade
* @date 2023/10/13
* @version 1.0
*/
@Setter
@Getter
public class MessageTemplateUpdateStatusRequest implements Serializable {
private static final long serialVersionUID = 818483349559289586L;
/**
* 操作者的自然人id
*/
@NotNull(message = "operatorId is required")
private Long operatorId;
/**
* 模板状态
* ENABLE: 启用
* DISABLE: 禁用
*/
private StatusEnum status;
}

View File

@ -0,0 +1,59 @@
package cn.axzo.msg.center.service.template.response;
import cn.axzo.msg.center.service.enums.MessageCategoryEnum;
import cn.axzo.msg.center.service.enums.StatusEnum;
import com.alibaba.fastjson.JSON;
import lombok.Getter;
import lombok.Setter;
import java.io.Serializable;
/**
* @author cold_blade
* @date 2023/10/12
* @version 1.0
*/
@Setter
@Getter
public class MessageTemplatePageResponse implements Serializable {
private static final long serialVersionUID = 4748193413608569743L;
/**
* 模板名称
*/
private String templateName;
/**
* 模板编码
*/
private String templateCode;
/**
* 消息类型
* GENERAL_MESSAGE: 普通消息
* PENDING_MESSAGE: 待办消息
*/
private MessageCategoryEnum category;
/**
* 消息标题
*/
private String title;
/**
* 消息内容
*/
private String content;
/**
* 分类路径eg发薪管理/发薪提醒/提醒工人
*/
private String groupNodePath;
/**
* 模板状态
* ENABLE: 启用
* DISABLE: 禁用
*/
private StatusEnum status;
@Override
public String toString() {
return JSON.toJSONString(this);
}
}