ModuleDataAuthorizeSchemeServiceImpl.java 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169
  1. package jnpf.base.service.impl;
  2. import com.baomidou.mybatisplus.core.metadata.IPage;
  3. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  4. import com.google.common.collect.Lists;
  5. import jnpf.base.Pagination;
  6. import jnpf.base.service.SuperServiceImpl;
  7. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  8. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  9. import jnpf.base.entity.ModuleColumnEntity;
  10. import jnpf.base.entity.ModuleDataAuthorizeSchemeEntity;
  11. import jnpf.base.mapper.ModuleDataAuthorizeSchemeMapper;
  12. import jnpf.base.service.ModuleDataAuthorizeSchemeService;
  13. import jnpf.util.DateUtil;
  14. import jnpf.util.RandomUtil;
  15. import jnpf.util.StringUtil;
  16. import jnpf.util.UserProvider;
  17. import org.springframework.beans.factory.annotation.Autowired;
  18. import org.springframework.stereotype.Service;
  19. import java.util.ArrayList;
  20. import java.util.Collections;
  21. import java.util.List;
  22. /**
  23. * 数据权限方案
  24. *
  25. * @author JNPF开发平台组
  26. * @version V3.1.0
  27. * @copyright 引迈信息技术有限公司
  28. * @date 2019年9月27日 上午9:18
  29. */
  30. @Service
  31. public class ModuleDataAuthorizeSchemeServiceImpl extends SuperServiceImpl<ModuleDataAuthorizeSchemeMapper, ModuleDataAuthorizeSchemeEntity> implements ModuleDataAuthorizeSchemeService {
  32. @Override
  33. public List<ModuleDataAuthorizeSchemeEntity> getList() {
  34. QueryWrapper<ModuleDataAuthorizeSchemeEntity> queryWrapper = new QueryWrapper<>();
  35. queryWrapper.lambda().eq(ModuleDataAuthorizeSchemeEntity::getEnabledMark,1);
  36. // 排序
  37. queryWrapper.lambda().orderByDesc(ModuleDataAuthorizeSchemeEntity::getCreatorTime);
  38. return this.list(queryWrapper);
  39. }
  40. @Override
  41. public List<ModuleDataAuthorizeSchemeEntity> getEnabledMarkList(String enabledMark) {
  42. QueryWrapper<ModuleDataAuthorizeSchemeEntity> queryWrapper = new QueryWrapper<>();
  43. queryWrapper.lambda().eq(ModuleDataAuthorizeSchemeEntity::getEnabledMark, enabledMark);
  44. // 排序
  45. queryWrapper.lambda().orderByDesc(ModuleDataAuthorizeSchemeEntity::getCreatorTime);
  46. return this.list(queryWrapper);
  47. }
  48. @Override
  49. public List<ModuleDataAuthorizeSchemeEntity> getList(String moduleId) {
  50. QueryWrapper<ModuleDataAuthorizeSchemeEntity> queryWrapper = new QueryWrapper<>();
  51. queryWrapper.lambda().eq(ModuleDataAuthorizeSchemeEntity::getModuleId, moduleId);
  52. // 排序
  53. queryWrapper.lambda().orderByDesc(ModuleDataAuthorizeSchemeEntity::getCreatorTime);
  54. return this.list(queryWrapper);
  55. }
  56. @Override
  57. public List<ModuleDataAuthorizeSchemeEntity> getList(String moduleId, Pagination pagination) {
  58. QueryWrapper<ModuleDataAuthorizeSchemeEntity> queryWrapper = new QueryWrapper<>();
  59. queryWrapper.lambda().eq(ModuleDataAuthorizeSchemeEntity::getModuleId, moduleId);
  60. // 排序
  61. queryWrapper.lambda().orderByDesc(ModuleDataAuthorizeSchemeEntity::getCreatorTime);
  62. Page<ModuleDataAuthorizeSchemeEntity> page = new Page<>(pagination.getCurrentPage(), pagination.getPageSize());
  63. IPage<ModuleDataAuthorizeSchemeEntity> iPage = this.page(page, queryWrapper);
  64. return pagination.setData(iPage.getRecords(), iPage.getTotal());
  65. }
  66. @Override
  67. public ModuleDataAuthorizeSchemeEntity getInfo(String id) {
  68. QueryWrapper<ModuleDataAuthorizeSchemeEntity> queryWrapper = new QueryWrapper<>();
  69. queryWrapper.lambda().eq(ModuleDataAuthorizeSchemeEntity::getId, id);
  70. return this.getOne(queryWrapper);
  71. }
  72. @Override
  73. public void create(ModuleDataAuthorizeSchemeEntity entity) {
  74. entity.setId(RandomUtil.uuId());
  75. entity.setEnabledMark(1);
  76. entity.setSortCode(RandomUtil.parses());
  77. this.save(entity);
  78. }
  79. @Override
  80. public boolean update(String id, ModuleDataAuthorizeSchemeEntity entity) {
  81. entity.setId(id);
  82. entity.setEnabledMark(1);
  83. entity.setLastModifyTime(DateUtil.getNowDate());
  84. return this.updateById(entity);
  85. }
  86. @Override
  87. public void delete(ModuleDataAuthorizeSchemeEntity entity) {
  88. this.removeById(entity.getId());
  89. }
  90. @Override
  91. public Boolean isExistByFullName(String id, String fullName, String moduleId) {
  92. QueryWrapper<ModuleDataAuthorizeSchemeEntity> queryWrapper = new QueryWrapper<>();
  93. queryWrapper.lambda().eq(ModuleDataAuthorizeSchemeEntity::getModuleId, moduleId);
  94. queryWrapper.lambda().eq(ModuleDataAuthorizeSchemeEntity::getFullName, fullName);
  95. if (StringUtil.isNotEmpty(id)) {
  96. queryWrapper.lambda().ne(ModuleDataAuthorizeSchemeEntity::getId, id);
  97. }
  98. return this.count(queryWrapper) > 0;
  99. }
  100. @Override
  101. public Boolean isExistByEnCode(String id, String enCode, String moduleId) {
  102. QueryWrapper<ModuleDataAuthorizeSchemeEntity> queryWrapper = new QueryWrapper<>();
  103. queryWrapper.lambda().eq(ModuleDataAuthorizeSchemeEntity::getModuleId, moduleId);
  104. queryWrapper.lambda().eq(ModuleDataAuthorizeSchemeEntity::getEnCode, enCode);
  105. if (StringUtil.isNotEmpty(id)) {
  106. queryWrapper.lambda().ne(ModuleDataAuthorizeSchemeEntity::getId, id);
  107. }
  108. return this.count(queryWrapper) > 0;
  109. }
  110. @Override
  111. public Boolean isExistAllData(String moduleId) {
  112. QueryWrapper<ModuleDataAuthorizeSchemeEntity> queryWrapper = new QueryWrapper<>();
  113. queryWrapper.lambda().eq(ModuleDataAuthorizeSchemeEntity::getModuleId, moduleId);
  114. queryWrapper.lambda().eq(ModuleDataAuthorizeSchemeEntity::getAllData, 1);
  115. return this.count(queryWrapper) > 0;
  116. }
  117. @Override
  118. public List<ModuleDataAuthorizeSchemeEntity> getListByModuleId(List<String> ids,Integer type) {
  119. if (ids.isEmpty()) {
  120. return new ArrayList<>();
  121. }
  122. QueryWrapper<ModuleDataAuthorizeSchemeEntity> queryWrapper = new QueryWrapper<>();
  123. List<List<String>> lists = Lists.partition(ids, 1000);
  124. for (List<String> list : lists) {
  125. queryWrapper.lambda().and(t->{
  126. t.in(ModuleDataAuthorizeSchemeEntity::getModuleId, list).or();
  127. });
  128. }
  129. if (type ==1) {
  130. queryWrapper.lambda().eq(ModuleDataAuthorizeSchemeEntity::getEnabledMark, 1);
  131. }
  132. queryWrapper.lambda().orderByAsc(ModuleDataAuthorizeSchemeEntity::getSortCode).orderByDesc(ModuleDataAuthorizeSchemeEntity::getCreatorTime);
  133. return this.list(queryWrapper);
  134. }
  135. @Override
  136. public List<ModuleDataAuthorizeSchemeEntity> getListByIds(List<String> ids) {
  137. if (ids.size() == 0) {
  138. return new ArrayList<>();
  139. }
  140. QueryWrapper<ModuleDataAuthorizeSchemeEntity> queryWrapper = new QueryWrapper<>();
  141. List<List<String>> lists = Lists.partition(ids, 1000);
  142. for (List<String> list : lists) {
  143. queryWrapper.lambda().or().in(ModuleDataAuthorizeSchemeEntity::getId, list);
  144. }
  145. queryWrapper.lambda().eq(ModuleDataAuthorizeSchemeEntity::getEnabledMark, 1);
  146. return this.list(queryWrapper);
  147. }
  148. }