package doumeemes.service.system.impl;
|
|
import com.github.pagehelper.PageHelper;
|
import com.github.pagehelper.PageInfo;
|
import doumeemes.core.constants.ResponseStatus;
|
import doumeemes.core.exception.BusinessException;
|
import doumeemes.core.model.LoginUserInfo;
|
import doumeemes.core.model.PageData;
|
import doumeemes.core.model.PageWrap;
|
import doumeemes.core.utils.Constants;
|
import doumeemes.dao.system.SystemPermissionMapper;
|
import doumeemes.dao.system.dto.QuerySystemPermissionDTO;
|
import doumeemes.dao.system.model.SystemPermission;
|
import doumeemes.dao.system.vo.SystemPermissionListVO;
|
import doumeemes.service.system.SystemPermissionService;
|
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import org.apache.shiro.SecurityUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.util.CollectionUtils;
|
|
import java.util.List;
|
|
/**
|
* 系统权限Service实现
|
* @author Eva.Caesar Liu
|
* @date 2022/04/18 18:12
|
*/
|
@Service
|
public class SystemPermissionServiceImpl implements SystemPermissionService {
|
|
@Autowired
|
private SystemPermissionMapper systemPermissionMapper;
|
|
@Override
|
public Integer create(SystemPermission systemPermission) {
|
systemPermissionMapper.insert(systemPermission);
|
return systemPermission.getId();
|
}
|
|
@Override
|
public void deleteById(Integer id) {
|
SystemPermission systemPermission = new SystemPermission();
|
systemPermission.setId(id);
|
systemPermission.setDeleted(Boolean.TRUE);
|
this.updateById(systemPermission);
|
}
|
|
@Override
|
@Transactional
|
public void deleteByIdInBatch(List<Integer> ids) {
|
if (CollectionUtils.isEmpty(ids)) return;
|
for (Integer id : ids) {
|
this.deleteById(id);
|
}
|
}
|
|
@Override
|
public void updateById(SystemPermission systemPermission) {
|
systemPermissionMapper.updateById(systemPermission);
|
}
|
|
@Override
|
@Transactional
|
public void updateByIdInBatch(List<SystemPermission> systemPermissions) {
|
if (CollectionUtils.isEmpty(systemPermissions)) return;
|
for (SystemPermission systemPermission: systemPermissions) {
|
this.updateById(systemPermission);
|
}
|
}
|
|
@Override
|
public SystemPermission findById(Integer id) {
|
return systemPermissionMapper.selectById(id);
|
}
|
|
@Override
|
public List<SystemPermission> findByUserId(Integer userId) {
|
return systemPermissionMapper.selectByUserId(userId);
|
}
|
@Override
|
public List<SystemPermission> findByUserModel(Integer id, SystemPermission per) {
|
return systemPermissionMapper.findByUserModel(id,per);
|
}
|
|
@Override
|
public List<SystemPermission> findByRoleId(Integer roleId) {
|
return systemPermissionMapper.selectByRoleId(roleId);
|
}
|
|
@Override
|
public SystemPermission findOne(SystemPermission systemPermission) {
|
Wrapper<SystemPermission> wrapper = new QueryWrapper<>(systemPermission);
|
return systemPermissionMapper.selectOne(wrapper);
|
}
|
|
@Override
|
public List<SystemPermission> findList(SystemPermission systemPermission) {
|
LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
|
if(Constants.equalsInteger(user.getType(),Constants.USERTYPE.COM)){
|
systemPermission.setType(Constants.USERTYPE.COM);
|
}else{
|
if(systemPermission.getType() == null){
|
systemPermission.setType(Constants.USERTYPE.PLAT);
|
}
|
}
|
Wrapper<SystemPermission> wrapper = new QueryWrapper<>(systemPermission);
|
return systemPermissionMapper.selectList(wrapper);
|
}
|
|
@Override
|
public PageData<SystemPermissionListVO> findPage(PageWrap<QuerySystemPermissionDTO> pageWrap) {
|
LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
|
if(Constants.equalsInteger(user.getType(),Constants.USERTYPE.COM)){
|
pageWrap.getModel().setType(Constants.USERTYPE.COM);
|
}else{
|
pageWrap.getModel().setType(Constants.USERTYPE.PLAT);
|
}
|
PageHelper.startPage(pageWrap.getPage(), pageWrap.getCapacity());
|
return PageData.from(new PageInfo<>(systemPermissionMapper.selectManageList(pageWrap.getModel(), pageWrap.getOrderByClause())));
|
}
|
|
@Override
|
public long count(SystemPermission systemPermission) {
|
Wrapper<SystemPermission> wrapper = new QueryWrapper<>(systemPermission);
|
return systemPermissionMapper.selectCount(wrapper);
|
}
|
}
|