| | |
| | | |
| | | @Override |
| | | public Integer create(DeviceRole deviceRole) { |
| | | |
| | | if(Objects.isNull(deviceRole) |
| | | || StringUtils.isBlank(deviceRole.getName()) |
| | | || Objects.isNull(deviceRole.getType()) |
| | | || Objects.isNull(deviceRole.getIsDefault()) |
| | | ){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST); |
| | | } |
| | | // 获取之前是否存在默认门禁组 |
| | | DeviceRole newDeviceRole = null; |
| | | if(null != deviceRole.getType()) { |
| | | newDeviceRole = getDeviceRole(deviceRole.getType()); |
| | | } |
| | | LoginUserInfo loginUserInfo = (LoginUserInfo)SecurityUtils.getSubject().getPrincipal(); |
| | | if(null != newDeviceRole) { |
| | | if(null != newDeviceRole && deviceRole.getIsDefault().equals(Constants.ZERO)) { |
| | | DeviceRole updateDeviceRole = new DeviceRole(); |
| | | // 若现在新增数据设置默认门禁组;那么先把之前的默认门禁组状态改为不是默认的 |
| | | updateDeviceRole.setId(newDeviceRole.getId()); |
| | |
| | | newDeviceRole = getDeviceRole(deviceRole.getType()); |
| | | } |
| | | LoginUserInfo loginUserInfo = (LoginUserInfo)SecurityUtils.getSubject().getPrincipal(); |
| | | if(null != newDeviceRole) { |
| | | if(null != newDeviceRole && deviceRole.getIsDefault().equals(Constants.ZERO)) { |
| | | DeviceRole update = new DeviceRole(); |
| | | update.setEdirot(loginUserInfo.getId().toString()); |
| | | update.setEditDate(new Date()); |
| | |
| | | LambdaQueryWrapper<DeviceRole> query = new LambdaQueryWrapper<>(); |
| | | query.eq(DeviceRole::getIsdeleted,Constants.ZERO) |
| | | .eq(DeviceRole::getIsDefault,Constants.ZERO) |
| | | .eq(DeviceRole::getType,type); |
| | | .eq(DeviceRole::getType,type) |
| | | .last(" limit 1"); |
| | | // 查询是否有默认门禁组,只能有一组默认门禁组 |
| | | DeviceRole getDeviceRole = deviceRoleMapper.selectOne(query); |
| | | return getDeviceRole; |