| | |
| | | import org.apache.commons.collections.CollectionUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.apache.shiro.SecurityUtils; |
| | | import org.checkerframework.checker.units.qual.C; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.context.annotation.Bean; |
| | |
| | | |
| | | @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; |
| | |
| | | IPage<DeviceRole> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); |
| | | QueryWrapper<DeviceRole> queryWrapper = new QueryWrapper<>(); |
| | | Utils.MP.blankToNull(pageWrap.getModel()); |
| | | pageWrap.getModel().setIsdeleted(Constants.ZERO); |
| | | if (pageWrap.getModel().getId() != null) { |
| | | queryWrapper.lambda().eq(DeviceRole::getId, pageWrap.getModel().getId()); |
| | | } |
| | |
| | | if (StringUtils.isNotBlank(pageWrap.getModel().getType())) { |
| | | if(pageWrap.getModel().getType().length() > 1) { |
| | | String[] types = pageWrap.getModel().getType().split(","); |
| | | queryWrapper.lambda() |
| | | .eq(DeviceRole::getType, types[0]) |
| | | queryWrapper.lambda().and(p-> p.eq(DeviceRole::getType, types[0]) |
| | | .or() |
| | | .eq(DeviceRole::getType, types[1]); |
| | | .eq(DeviceRole::getType, types[1])); |
| | | }else { |
| | | queryWrapper.lambda().eq(DeviceRole::getType, pageWrap.getModel().getType()); |
| | | } |