PortalManageServiceImpl.java 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. package jnpf.base.service.impl;
  2. import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO;
  3. import jnpf.base.entity.DictionaryDataEntity;
  4. import jnpf.base.entity.PortalManageEntity;
  5. import jnpf.base.entity.SystemEntity;
  6. import jnpf.base.mapper.PortalManageMapper;
  7. import jnpf.base.model.portalManage.PortalManagePage;
  8. import jnpf.base.model.portalManage.PortalManagePageDO;
  9. import jnpf.base.model.portalManage.PortalManagePrimary;
  10. import jnpf.base.model.portalManage.PortalManageVO;
  11. import jnpf.base.service.DictionaryDataService;
  12. import jnpf.base.service.PortalManageService;
  13. import jnpf.base.service.SuperServiceImpl;
  14. import jnpf.base.service.SystemService;
  15. import jnpf.exception.WorkFlowException;
  16. import jnpf.permission.entity.UserEntity;
  17. import jnpf.permission.service.UserService;
  18. import jnpf.util.StringUtil;
  19. import org.springframework.beans.BeanUtils;
  20. import org.springframework.beans.factory.annotation.Autowired;
  21. import org.springframework.stereotype.Service;
  22. import java.util.ArrayList;
  23. import java.util.List;
  24. import java.util.stream.Collectors;
  25. /**
  26. * <p>
  27. * 门户管理 服务实现类
  28. * </p>
  29. *
  30. * @author YanYu
  31. * @since 2023-02-16
  32. */
  33. @Service
  34. public class PortalManageServiceImpl extends SuperServiceImpl<PortalManageMapper, PortalManageEntity> implements PortalManageService {
  35. @Autowired
  36. private UserService userService;
  37. @Autowired
  38. private PortalManageMapper portalManageMapper;
  39. @Autowired
  40. private DictionaryDataService dictionaryDataService;
  41. @Autowired
  42. private SystemService systemService;
  43. @Override
  44. public void checkCreUp(PortalManageEntity creUpEntity) throws Exception{
  45. // 当ID为空时,为添加方法
  46. PortalManagePrimary primary = new PortalManagePrimary(
  47. creUpEntity.getPlatform(),
  48. creUpEntity.getPortalId(),
  49. creUpEntity.getSystemId());
  50. if(creUpEntity.getId() == null){
  51. if(count(primary.getQuery()) > 0) throw new Exception("此系统与平台下门户已存在");
  52. }
  53. // if(creUpEntity.getHomePageMark() == 1) {
  54. // primary.getQuery().lambda().eq(PortalManageEntity::getEnabledMark, 1);
  55. // PortalManageEntity one = getOne(primary.getQuery());
  56. // if(one != null && !one.getId().equals(creUpEntity.getId())){
  57. // throw new Exception("已存在默认首页,不允许被保存");
  58. // }
  59. // }
  60. }
  61. @Override
  62. public PortalManageVO convertVO(PortalManageEntity entity){
  63. PortalManageVO vo = new PortalManageVO();
  64. BeanUtils.copyProperties(entity, vo);
  65. vo.setId(entity.getId()); // 父类id声明泛型,会拷贝失败
  66. // 创建人
  67. UserEntity creatorUser = userService.getInfo(entity.getCreatorUserId());
  68. vo.setCreatorUser(creatorUser != null ? creatorUser.getRealName() + "/" + creatorUser.getAccount() : entity.getCreatorUserId());
  69. // 修改人
  70. UserEntity lastModifyUser = userService.getInfo(entity.getCreatorUserId());
  71. vo.setLastModifyUser(lastModifyUser != null ? lastModifyUser.getRealName() + "/" + lastModifyUser.getAccount() : "");
  72. // 门户名称
  73. vo.setFullName(portalManageMapper.getPortalFullName(entity.getPortalId()));
  74. String categoryId = portalManageMapper.getPortalCategoryId(entity.getPortalId());
  75. DictionaryDataEntity dicInfo = dictionaryDataService.getInfo(portalManageMapper.getPortalCategoryId(entity.getPortalId()));
  76. String categoryName = dicInfo==null ?"":dicInfo.getFullName();
  77. vo.setCategoryId(categoryId);
  78. vo.setCategoryName(categoryName);
  79. vo.setPlatform(entity.getPlatform());
  80. vo.setSystemId(entity.getSystemId());
  81. return vo;
  82. }
  83. @Override
  84. public List<PortalManageVO> getList(PortalManagePrimary primary) {
  85. return list(primary.getQuery()).stream().map(this::convertVO).collect(Collectors.toList());
  86. }
  87. @Override
  88. public List<PortalManageVO> getListByEnable(PortalManagePrimary primary) {
  89. primary.getQuery().lambda().eq(PortalManageEntity::getEnabledMark, 1);
  90. return getList(primary);
  91. }
  92. @Override
  93. public PageDTO<PortalManagePageDO> getPage(PortalManagePage pmPage) {
  94. String keyword = pmPage.getKeyword();
  95. if (StringUtil.isNotEmpty(keyword)) {
  96. pmPage.setKeyword("%" + keyword + "%");
  97. }
  98. PageDTO<PortalManagePageDO> pageDto = portalManageMapper.selectPortalManageDoPage(pmPage.getPageDto(), pmPage);
  99. pmPage.setTotal(pageDto.getTotal());
  100. return pageDto;
  101. }
  102. @Override
  103. public List<PortalManagePageDO> getSelectList(PortalManagePage pmPage) {
  104. List<PortalManagePageDO> list = portalManageMapper.selectPortalManageDoList(pmPage);
  105. return list;
  106. }
  107. @Override
  108. public List<PortalManagePageDO> selectPortalBySystemIds(List<String> systemIds, List<String> collect) {
  109. if (collect == null) {
  110. return new ArrayList<>();
  111. }
  112. if (systemIds.size() == 0) {
  113. systemIds.add("");
  114. }
  115. return portalManageMapper.selectPortalBySystemIds(systemIds, collect);
  116. }
  117. @Override
  118. public void createBatch(List<PortalManagePrimary> primaryLit) throws Exception {
  119. List<PortalManageEntity> list = new ArrayList<>();
  120. for (PortalManagePrimary primary : primaryLit) {
  121. if(list(primary.getQuery()).size() < 1){
  122. PortalManageEntity entity = primary.getEntity();
  123. SystemEntity info = systemService.getInfo(entity.getSystemId());
  124. if(info == null){
  125. throw new WorkFlowException("找不到该应用");
  126. }
  127. list.add(primary.getEntity());
  128. }
  129. }
  130. saveBatch(list);
  131. }
  132. }