修改返回实体类
This commit is contained in:
parent
a31db293ee
commit
124594c983
@ -5,17 +5,21 @@ import cn.axzo.msg.center.api.enums.ReceiveTypeEnum;
|
||||
import cn.axzo.msg.center.api.request.CreateModuleReq;
|
||||
import cn.axzo.msg.center.api.request.SearchModuleReq;
|
||||
import cn.axzo.msg.center.api.request.UpdateModuleReq;
|
||||
import cn.axzo.msg.center.api.response.CommonPlatManagerRes;
|
||||
import cn.axzo.msg.center.api.response.MessageModuleRes;
|
||||
import cn.axzo.msg.center.api.response.SyncModuleDataRes;
|
||||
import cn.axzo.msg.center.api.response.*;
|
||||
import cn.axzo.msg.center.common.utils.BeanConvertUtils;
|
||||
import cn.axzo.msg.center.domain.dto.CreateModuleDTO;
|
||||
import cn.axzo.msg.center.domain.dto.SearchModuleDTO;
|
||||
import cn.axzo.msg.center.domain.dto.UpdateModuleDTO;
|
||||
import cn.axzo.msg.center.domain.entity.MessageModule;
|
||||
import cn.axzo.msg.center.domain.entity.MessageRelation;
|
||||
import cn.axzo.msg.center.domain.entity.MessageRouter;
|
||||
import cn.axzo.msg.center.domain.entity.MessageTemplate;
|
||||
import cn.axzo.msg.center.domain.enums.UserTypeEnum;
|
||||
import cn.axzo.msg.center.domain.request.inside.SearchModuleVO;
|
||||
import cn.axzo.msg.center.inside.notices.service.MessageModuleService;
|
||||
import cn.axzo.msg.center.inside.notices.service.MessageRelationService;
|
||||
import cn.axzo.msg.center.inside.notices.service.MessageRouterService;
|
||||
import cn.axzo.msg.center.inside.notices.service.MessageTemplateService;
|
||||
import cn.azxo.framework.common.model.CommonResponse;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@ -27,6 +31,8 @@ import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.*;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Slf4j
|
||||
@RestController
|
||||
@ -37,6 +43,13 @@ public class InsideMessageModuleApiImpl implements InsideMessageModuleApi {
|
||||
private MessageModuleService moduleService;
|
||||
@Resource
|
||||
private Environment environment;
|
||||
@Resource
|
||||
private MessageRelationService relationService;
|
||||
@Resource
|
||||
private MessageTemplateService templateService;
|
||||
@Resource
|
||||
private MessageRouterService routerService;
|
||||
|
||||
|
||||
@Override
|
||||
public CommonResponse<Map<Long, String>> getModules(@PathVariable Integer identityType) {
|
||||
@ -126,21 +139,53 @@ public class InsideMessageModuleApiImpl implements InsideMessageModuleApi {
|
||||
@Override
|
||||
public CommonResponse<List<SyncModuleDataRes>> findModuleByIds(List<Long> ids) {
|
||||
List<SyncModuleDataRes> result = new ArrayList<>();
|
||||
if (!CollectionUtils.isEmpty(ids)) {
|
||||
List<MessageModule> modules = moduleService.getModuleByIds(ids);
|
||||
if (!CollectionUtils.isEmpty(modules)) {
|
||||
modules.forEach(i -> {
|
||||
SyncModuleDataRes dto = new SyncModuleDataRes();
|
||||
dto.setId(i.getId());
|
||||
dto.setModuleName(i.getModuleName());
|
||||
dto.setIcon(i.getIcon());
|
||||
dto.setRemark(i.getRemark());
|
||||
dto.setOwnedType(i.getOwnedType().getCode());
|
||||
dto.setBizType(i.getBizType().getCode());
|
||||
result.add(dto);
|
||||
// process relation
|
||||
List<MessageRelation> mrs = relationService.getRelationByIds(new HashSet<>(ids));
|
||||
|
||||
// process template
|
||||
List<Long> mtIds = mrs.stream().map(MessageRelation::getTemplateId)
|
||||
.collect(Collectors.toList());
|
||||
Map<Long, MessageTemplate> mtMaps = templateService.getTemplateByIds(mtIds).stream()
|
||||
.collect(Collectors.toMap(
|
||||
MessageTemplate::getId, Function.identity(), (s, t) -> s));
|
||||
|
||||
// process module
|
||||
Map<Long, List<MessageRouter>> routerMaps = routerService.getRouterMapByRelationIds(
|
||||
ids).stream().collect(Collectors.groupingBy(MessageRouter::getRelationId));
|
||||
|
||||
// general data
|
||||
mrs.forEach(i -> {
|
||||
SyncModuleDataRes relation = new SyncModuleDataRes();
|
||||
relation.setId(i.getId());
|
||||
relation.setModuleId(i.getModuleId());
|
||||
relation.setTemplateId(i.getTemplateId());
|
||||
relation.setContactUser(i.getContactUser());
|
||||
|
||||
SyncTemplateDataRes template = new SyncTemplateDataRes();
|
||||
MessageTemplate tempMT;
|
||||
if (Objects.nonNull(tempMT = mtMaps.getOrDefault(i.getTemplateId(), null))) {
|
||||
template.setId(tempMT.getId());
|
||||
template.setTitle(tempMT.getTitle());
|
||||
template.setContent(tempMT.getContent());
|
||||
}
|
||||
relation.setTemplate(template);
|
||||
|
||||
List<SyncRouterDataRes> routers = new ArrayList<>();
|
||||
List<MessageRouter> tempRouters;
|
||||
if (!CollectionUtils.isEmpty(
|
||||
tempRouters = routerMaps.getOrDefault(i.getId(), new ArrayList<>()))) {
|
||||
tempRouters.forEach(mr -> {
|
||||
SyncRouterDataRes router = new SyncRouterDataRes();
|
||||
router.setId(mr.getId());
|
||||
router.setRelationId(mr.getRelationId());
|
||||
router.setRouterType(mr.getRouterType().getCode());
|
||||
router.setRouterUrl(mr.getRouterUrl());
|
||||
routers.add(router);
|
||||
});
|
||||
}
|
||||
}
|
||||
relation.setRouters(routers);
|
||||
result.add(relation);
|
||||
});
|
||||
return CommonResponse.success(result);
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,6 +2,8 @@ package cn.axzo.msg.center.api.response;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author wangli
|
||||
* @since 2022/10/26 20:52
|
||||
@ -11,13 +13,13 @@ public class SyncModuleDataRes {
|
||||
|
||||
private Long id;
|
||||
|
||||
private String moduleName;
|
||||
private Long moduleId;
|
||||
|
||||
private String icon;
|
||||
private Long templateId;
|
||||
|
||||
private String remark;
|
||||
private String contactUser;
|
||||
|
||||
private Integer ownedType;
|
||||
private SyncTemplateDataRes template;
|
||||
|
||||
private Integer bizType;
|
||||
private List<SyncRouterDataRes> routers;
|
||||
}
|
||||
|
||||
@ -2,6 +2,8 @@ package cn.axzo.msg.center.domain.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author wangli
|
||||
* @since 2022/10/26 15:51
|
||||
@ -18,6 +20,6 @@ public class SyncRelationDataDTO {
|
||||
|
||||
private SyncTemplateDataDTO template;
|
||||
|
||||
//private List<SyncRouterDataDTO> routers;
|
||||
private List<SyncRouterDataDTO> routers;
|
||||
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user