package com.doumee.biz.system.impl; import com.doumee.biz.system.SystemPermissionBiz; import com.doumee.core.constants.Constants; import com.doumee.core.exception.BusinessException; import com.doumee.core.constants.ResponseStatus; import com.doumee.dao.system.model.SystemPermission; import com.doumee.service.system.SystemPermissionService; 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 public class SystemPermissionBizImpl implements SystemPermissionBiz { @Autowired private SystemPermissionService systemPermissionService; @Override public void deleteById(Integer id) { SystemPermission permission = systemPermissionService.findById(id); if (permission == null) { return; } if (Constants.formatIntegerNum(permission.getFixed()) ==Constants.ONE) { throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "请勿删除" + permission.getName() + ",因为这是固定权限"); } systemPermissionService.deleteById(id); } @Override @Transactional public void deleteByIdInBatch(List ids) { if (CollectionUtils.isEmpty(ids)) { return; } for (Integer id : ids) { this.deleteById(id); } } @Override public Integer create(SystemPermission systemPermission) { SystemPermission queryDto = new SystemPermission(); queryDto.setCode(systemPermission.getCode()); queryDto.setDeleted(Constants.ZERO); SystemPermission permission = systemPermissionService.findOne(queryDto); if (permission != null) { throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "权限编码已存在"); } return systemPermissionService.create(systemPermission); } @Override public void updateById(SystemPermission systemPermission) { SystemPermission queryDto = new SystemPermission(); queryDto.setCode(systemPermission.getCode()); queryDto.setDeleted(Constants.ZERO); SystemPermission permission = systemPermissionService.findOne(queryDto); if (permission != null && !systemPermission.getId().equals(permission.getId())) { throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "权限编码已存在"); } systemPermissionService.updateById(systemPermission); } }