| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256 |
- package jnpf.base.service.impl;
- import com.baomidou.mybatisplus.core.metadata.IPage;
- import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
- import com.google.common.collect.Lists;
- import jnpf.base.entity.ModuleFormEntity;
- import jnpf.base.service.SuperServiceImpl;
- import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
- import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
- import jnpf.base.Pagination;
- import jnpf.base.entity.ModuleButtonEntity;
- import jnpf.base.entity.ModuleColumnEntity;
- import jnpf.base.mapper.ModuleColumnMapper;
- import jnpf.base.service.ModuleColumnService;
- import jnpf.util.DateUtil;
- import jnpf.util.RandomUtil;
- import jnpf.util.StringUtil;
- import jnpf.util.UserProvider;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import com.baomidou.dynamic.datasource.annotation.DSTransactional;
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.List;
- import java.util.stream.Collectors;
- /**
- * 列表权限
- *
- * @author JNPF开发平台组
- * @version V3.1.0
- * @copyright 引迈信息技术有限公司
- * @date 2019年9月27日 上午9:18
- */
- @Service
- public class ModuleColumnServiceImpl extends SuperServiceImpl<ModuleColumnMapper, ModuleColumnEntity> implements ModuleColumnService {
- @Override
- public List<ModuleColumnEntity> getList() {
- QueryWrapper<ModuleColumnEntity> queryWrapper = new QueryWrapper<>();
- queryWrapper.lambda().eq(ModuleColumnEntity::getEnabledMark,1);
- // 排序
- queryWrapper.lambda().orderByAsc(ModuleColumnEntity::getSortCode)
- .orderByDesc(ModuleColumnEntity::getCreatorTime);
- return this.list(queryWrapper);
- }
- @Override
- public List<ModuleColumnEntity> getEnabledMarkList(String enabledMark) {
- QueryWrapper<ModuleColumnEntity> queryWrapper = new QueryWrapper<>();
- queryWrapper.lambda().eq(ModuleColumnEntity::getEnabledMark, enabledMark);
- // 排序
- queryWrapper.lambda().orderByAsc(ModuleColumnEntity::getSortCode)
- .orderByDesc(ModuleColumnEntity::getCreatorTime);
- return this.list(queryWrapper);
- }
- @Override
- public List<ModuleColumnEntity> getList(String moduleId, Pagination pagination) {
- QueryWrapper<ModuleColumnEntity> queryWrapper = new QueryWrapper<>();
- queryWrapper.lambda().eq(ModuleColumnEntity::getModuleId, moduleId);
- if (!StringUtil.isEmpty(pagination.getKeyword())) {
- queryWrapper.lambda().and(
- t -> t.like(ModuleColumnEntity::getEnCode, pagination.getKeyword()).or().like(ModuleColumnEntity::getFullName, pagination.getKeyword())
- );
- }
- // 排序
- queryWrapper.lambda().orderByAsc(ModuleColumnEntity::getSortCode)
- .orderByDesc(ModuleColumnEntity::getCreatorTime);
- Page<ModuleColumnEntity> page = new Page<>(pagination.getCurrentPage(), pagination.getPageSize());
- IPage<ModuleColumnEntity> iPage = this.page(page, queryWrapper);
- return pagination.setData(iPage.getRecords(), iPage.getTotal());
- }
- @Override
- public List<ModuleColumnEntity> getList(String moduleId) {
- QueryWrapper<ModuleColumnEntity> queryWrapper = new QueryWrapper<>();
- queryWrapper.lambda().eq(ModuleColumnEntity::getModuleId, moduleId);
- // 排序
- queryWrapper.lambda().orderByAsc(ModuleColumnEntity::getSortCode)
- .orderByDesc(ModuleColumnEntity::getCreatorTime);
- return this.list(queryWrapper);
- }
- @Override
- public List<ModuleColumnEntity> getListByBindTable(String bindTable) {
- QueryWrapper<ModuleColumnEntity> queryWrapper = new QueryWrapper<>();
- queryWrapper.lambda().eq(ModuleColumnEntity::getBindTable, bindTable);
- // 排序
- queryWrapper.lambda().orderByAsc(ModuleColumnEntity::getSortCode)
- .orderByDesc(ModuleColumnEntity::getCreatorTime);
- List<ModuleColumnEntity> list = this.list(queryWrapper);
- return list;
- }
- @Override
- public ModuleColumnEntity getInfo(String id) {
- QueryWrapper<ModuleColumnEntity> queryWrapper = new QueryWrapper<>();
- queryWrapper.lambda().eq(ModuleColumnEntity::getId, id);
- return this.getOne(queryWrapper);
- }
- @Override
- public ModuleColumnEntity getInfo(String id, String moduleId) {
- QueryWrapper<ModuleColumnEntity> queryWrapper = new QueryWrapper<>();
- queryWrapper.lambda().eq(ModuleColumnEntity::getId, id);
- queryWrapper.lambda().eq(ModuleColumnEntity::getModuleId, moduleId);
- return this.getOne(queryWrapper);
- }
- @Override
- public boolean isExistByFullName(String moduleId, String fullName, String id) {
- QueryWrapper<ModuleColumnEntity> queryWrapper = new QueryWrapper<>();
- queryWrapper.lambda().eq(ModuleColumnEntity::getFullName, fullName).eq(ModuleColumnEntity::getModuleId, moduleId);
- if (!StringUtil.isEmpty(id)) {
- queryWrapper.lambda().ne(ModuleColumnEntity::getId, id);
- }
- return this.count(queryWrapper) > 0 ? true : false;
- }
- @Override
- public boolean isExistByEnCode(String moduleId, String enCode, String id) {
- QueryWrapper<ModuleColumnEntity> queryWrapper = new QueryWrapper<>();
- queryWrapper.lambda().eq(ModuleColumnEntity::getEnCode, enCode).eq(ModuleColumnEntity::getModuleId, moduleId);
- if (!StringUtil.isEmpty(id)) {
- queryWrapper.lambda().ne(ModuleColumnEntity::getId, id);
- }
- return this.count(queryWrapper) > 0 ? true : false;
- }
- @Override
- public void create(ModuleColumnEntity entity) {
- entity.setSortCode(entity.getSortCode());
- entity.setId(RandomUtil.uuId());
- this.save(entity);
- }
- @Override
- @DSTransactional
- public void create(List<ModuleColumnEntity> entitys) {
- Long sortCode = RandomUtil.parses();
- String userId = UserProvider.getUser().getUserId();
- for (ModuleColumnEntity entity : entitys) {
- entity.setId(RandomUtil.uuId());
- entity.setSortCode(sortCode++);
- entity.setEnabledMark("1".equals(String.valueOf(entity.getEnabledMark())) ? 0 : 1);
- entity.setCreatorUserId(userId);
- this.save(entity);
- }
- }
- @Override
- public boolean update(String id, ModuleColumnEntity entity) {
- entity.setId(id);
- entity.setLastModifyTime(DateUtil.getNowDate());
- return this.updateById(entity);
- }
- @Override
- public void delete(ModuleColumnEntity entity) {
- this.removeById(entity.getId());
- }
- @Override
- @DSTransactional
- public boolean first(String id) {
- boolean isOk = false;
- //获取要上移的那条数据的信息
- ModuleColumnEntity upEntity = this.getById(id);
- Long upSortCode = upEntity.getSortCode() == null ? 0 : upEntity.getSortCode();
- //查询上几条记录
- QueryWrapper<ModuleColumnEntity> queryWrapper = new QueryWrapper<>();
- queryWrapper.lambda()
- .eq(ModuleColumnEntity::getModuleId, upEntity.getModuleId())
- .eq(ModuleColumnEntity::getBindTable, upEntity.getBindTable())
- .lt(ModuleColumnEntity::getSortCode, upSortCode)
- .orderByDesc(ModuleColumnEntity::getSortCode);
- List<ModuleColumnEntity> downEntity = this.list(queryWrapper);
- if (downEntity.size() > 0) {
- //交换两条记录的sort值
- Long temp = upEntity.getSortCode();
- upEntity.setSortCode(downEntity.get(0).getSortCode());
- downEntity.get(0).setSortCode(temp);
- this.updateById(downEntity.get(0));
- this.updateById(upEntity);
- isOk = true;
- }
- return isOk;
- }
- @Override
- @DSTransactional
- public boolean next(String id) {
- boolean isOk = false;
- //获取要下移的那条数据的信息
- ModuleColumnEntity downEntity = this.getById(id);
- Long upSortCode = downEntity.getSortCode() == null ? 0 : downEntity.getSortCode();
- //查询下几条记录
- QueryWrapper<ModuleColumnEntity> queryWrapper = new QueryWrapper<>();
- queryWrapper.lambda()
- .eq(ModuleColumnEntity::getModuleId, downEntity.getModuleId())
- .eq(ModuleColumnEntity::getBindTable, downEntity.getBindTable())
- .gt(ModuleColumnEntity::getSortCode, upSortCode)
- .orderByAsc(ModuleColumnEntity::getSortCode);
- List<ModuleColumnEntity> upEntity = this.list(queryWrapper);
- if (upEntity.size() > 0) {
- //交换两条记录的sort值
- Long temp = downEntity.getSortCode();
- downEntity.setSortCode(upEntity.get(0).getSortCode());
- upEntity.get(0).setSortCode(temp);
- this.updateById(upEntity.get(0));
- this.updateById(downEntity);
- isOk = true;
- }
- return isOk;
- }
- @Override
- public List<ModuleColumnEntity> getListByModuleId(List<String> ids,Integer type) {
- if (ids.isEmpty()) {
- return new ArrayList<>();
- }
- QueryWrapper<ModuleColumnEntity> queryWrapper = new QueryWrapper<>();
- List<List<String>> lists = Lists.partition(ids, 1000);
- for (List<String> list : lists) {
- queryWrapper.lambda().and(t->{
- t.in(ModuleColumnEntity::getModuleId, list).or();
- });
- }
- if (type==1){
- queryWrapper.lambda().eq(ModuleColumnEntity::getEnabledMark, 1);
- }
- queryWrapper.lambda().orderByAsc(ModuleColumnEntity::getSortCode).orderByDesc(ModuleColumnEntity::getCreatorTime);
- return this.list(queryWrapper);
- }
- @Override
- public List<ModuleColumnEntity> getListByIds(List<String> ids) {
- if (ids.size() == 0) {
- return new ArrayList<>();
- }
- QueryWrapper<ModuleColumnEntity> queryWrapper = new QueryWrapper<>();
- List<List<String>> lists = Lists.partition(ids, 1000);
- for (List<String> list : lists) {
- queryWrapper.lambda().or().in(ModuleColumnEntity::getId, list);
- }
- queryWrapper.lambda().eq(ModuleColumnEntity::getEnabledMark, 1);
- return this.list(queryWrapper);
- }
- }
|