Commit d10a76de authored by 王琮's avatar 王琮

修改角色已被使用不能停用

parent bd6d11c3
......@@ -8,11 +8,13 @@ import io.swagger.annotations.ApiOperation;
import org.rcisoft.core.anno.CyOpeLogAnno;
import org.rcisoft.core.model.CyGridModel;
import org.rcisoft.core.operlog.enums.CyLogTypeEnum;
import org.rcisoft.core.util.CyUserUtil;
import org.rcisoft.sys.rbac.role.entity.SysRoleRbac;
import org.rcisoft.sys.sysrole.service.SysRoleService;
import org.rcisoft.sys.wbac.role.dto.SysRoleDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*;
import org.rcisoft.core.result.CyResult;
......@@ -21,6 +23,8 @@ import org.rcisoft.core.model.CyPersistModel;
import org.rcisoft.core.constant.CyMessCons;
import org.rcisoft.core.controller.CyPaginationController;
import javax.validation.Valid;
/**
* Created by cy on 2022年11月21日 下午5:13:38.
......@@ -72,4 +76,15 @@ public class SysRoleController extends CyPaginationController<SysRoleRbac> {
sysRoleServiceImpl.findAllByPagination(getPaginationUtility(), sysRoleDTO);
return this.getGridModelResponse();
}
@CyOpeLogAnno(title = "system-角色管理-修改角色", businessType = CyLogTypeEnum.UPDATE)
@ApiOperation(value = "状态修改", notes = "状态修改")
@PutMapping("/changeStatus")
public CyResult changeStatus(@Valid SysRoleRbac sysRole, BindingResult bindingResult) {
sysRole.setUpdateBy(CyUserUtil.getAuthenUsername());
return CyResultGenUtil.builder(sysRoleServiceImpl.updateRoleStatus(sysRole),
CyMessCons.MESSAGE_ALERT_SUCCESS,
CyMessCons.MESSAGE_ALERT_ERROR,
sysRole);
}
}
......@@ -33,4 +33,5 @@ public interface SysRoleService {
IPage<SysRole> findAllByPagination(CyPageInfo<SysRoleRbac> var1, SysRoleDTO var2);
CyPersistModel updateRoleStatus(SysRoleRbac sysRole);
}
......@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.rcisoft.core.exception.CyServiceException;
import org.rcisoft.core.model.CyPageInfo;
import org.rcisoft.core.result.enums.CyResAuthExcEnum;
import org.rcisoft.core.util.CyEscapeUtil;
import org.rcisoft.core.util.CyUserUtil;
import org.rcisoft.core.model.CyPersistModel;
......@@ -133,4 +134,14 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleRbacRepository,SysRol
sysRoleDTO.setRoleKey(CyEscapeUtil.sqlEscape(sysRoleDTO.getRoleKey()));
return sysRoleMapper.querySysRolesPaged(paginationUtility, sysRoleDTO);
}
@Override
public CyPersistModel updateRoleStatus(SysRoleRbac sysRole) {
// 如果停用判断是否已存在用户
if (baseMapper.countUserByRoleId(sysRole.getBusinessId()) > 0) {
throw new CyServiceException(4309, "本数据已经被使用,不能停用");
}
int line = baseMapper.updateById(sysRole);
return new CyPersistModel(line);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment