|
@@ -11,9 +11,11 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.usky.common.core.bean.CommonPage;
|
|
|
import com.usky.common.core.exception.BusinessException;
|
|
|
import com.usky.common.security.utils.SecurityUtils;
|
|
|
+import com.usky.meeting.domain.EgDevice;
|
|
|
import com.usky.meeting.domain.MeetingDevice;
|
|
|
import com.usky.meeting.domain.MeetingFloor;
|
|
|
import com.usky.meeting.domain.MeetingRoom;
|
|
|
+import com.usky.meeting.mapper.EgDeviceMapper;
|
|
|
import com.usky.meeting.mapper.MeetingDeviceMapper;
|
|
|
import com.usky.meeting.mapper.MeetingRoomMapper;
|
|
|
import com.usky.meeting.service.MeetingDeviceService;
|
|
@@ -47,40 +49,89 @@ import java.util.stream.Collectors;
|
|
|
public class MeetingDeviceServiceImpl extends AbstractCrudService<MeetingDeviceMapper, MeetingDevice> implements MeetingDeviceService {
|
|
|
@Autowired
|
|
|
private MeetingRoomMapper meetingRoomMapper;
|
|
|
+ @Autowired
|
|
|
+ private EgDeviceMapper egDeviceMapper;
|
|
|
|
|
|
@Override
|
|
|
public CommonPage<MeetingDevice> meetingDeviceList(MeetingDeviceRequestVO requestVO){
|
|
|
Integer current = requestVO.getCurrent();
|
|
|
Integer size = requestVO.getSize();
|
|
|
IPage<MeetingDevice> page = new Page<>(current,size);
|
|
|
- LambdaQueryWrapper<MeetingDevice> queryWrapper = Wrappers.lambdaQuery();
|
|
|
- queryWrapper.like(StringUtils.isNotBlank(requestVO.getDeviceName()),MeetingDevice::getDeviceName,requestVO.getDeviceName())
|
|
|
+
|
|
|
+ //根据输入所属会议室名称刷选
|
|
|
+ List<Long> roomIdList = new ArrayList<>();
|
|
|
+ List<MeetingRoom> meetingRoomsList = null;
|
|
|
+ LambdaQueryWrapper<MeetingRoom> queryWrapper = Wrappers.lambdaQuery();
|
|
|
+ if(StringUtils.isNotBlank(requestVO.getRoomName())){
|
|
|
+ queryWrapper.like(MeetingRoom::getRoomName,requestVO.getRoomName()).eq(MeetingRoom::getTenantId,SecurityUtils.getTenantId());
|
|
|
+ meetingRoomsList = meetingRoomMapper.selectList(queryWrapper);
|
|
|
+ if(CollectionUtils.isNotEmpty(meetingRoomsList)){
|
|
|
+ for (int i = 0; i < meetingRoomsList.size(); i++) {
|
|
|
+ roomIdList.add(meetingRoomsList.get(i).getRoomId());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ queryWrapper.eq(MeetingRoom::getTenantId,SecurityUtils.getTenantId());
|
|
|
+ meetingRoomsList = meetingRoomMapper.selectList(queryWrapper);
|
|
|
+ }
|
|
|
+ //根据输入所属门禁设备名称刷选
|
|
|
+ List<Integer> egDeviceIdList = new ArrayList<>();
|
|
|
+ List<EgDevice> egDeviceList = null;
|
|
|
+ LambdaQueryWrapper<EgDevice> queryWrapper1 = Wrappers.lambdaQuery();
|
|
|
+ if(StringUtils.isNotBlank(requestVO.getEgDeviceName())){
|
|
|
+ queryWrapper1.like(EgDevice::getDeviceName,requestVO.getEgDeviceName()).eq(EgDevice::getTenantId,SecurityUtils.getTenantId());
|
|
|
+ egDeviceList = egDeviceMapper.selectList(queryWrapper1);
|
|
|
+ if(CollectionUtils.isNotEmpty(egDeviceList)){
|
|
|
+ for (int i = 0; i < egDeviceList.size(); i++) {
|
|
|
+ egDeviceIdList.add(egDeviceList.get(i).getId());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ queryWrapper1.eq(EgDevice::getTenantId,SecurityUtils.getTenantId());
|
|
|
+ egDeviceList = egDeviceMapper.selectList(queryWrapper1);
|
|
|
+ }
|
|
|
+
|
|
|
+ LambdaQueryWrapper<MeetingDevice> queryWrapper3 = Wrappers.lambdaQuery();
|
|
|
+ queryWrapper3.like(StringUtils.isNotBlank(requestVO.getDeviceName()),MeetingDevice::getDeviceName,requestVO.getDeviceName())
|
|
|
.like(StringUtils.isNotBlank(requestVO.getNameplate()),MeetingDevice::getNameplate,requestVO.getNameplate())
|
|
|
.like(StringUtils.isNotBlank(requestVO.getMaintainer()),MeetingDevice::getMaintainer,requestVO.getMaintainer())
|
|
|
.like(StringUtils.isNotBlank(requestVO.getContacts()),MeetingDevice::getContacts,requestVO.getContacts())
|
|
|
.like(StringUtils.isNotBlank(requestVO.getRemark()),MeetingDevice::getRemark,requestVO.getRemark())
|
|
|
+ .like(requestVO.getRoomId() != null,MeetingDevice::getRoomId,requestVO.getRoomId())
|
|
|
+ .in(CollectionUtils.isNotEmpty(roomIdList),MeetingDevice::getRoomId,roomIdList)
|
|
|
+ .in(CollectionUtils.isNotEmpty(egDeviceIdList),MeetingDevice::getEgDeviceId,egDeviceIdList)
|
|
|
.eq(MeetingDevice::getTenantId,SecurityUtils.getTenantId())
|
|
|
- .orderByAsc(MeetingDevice::getDeviceId);
|
|
|
- page = this.page(page,queryWrapper);
|
|
|
+ .orderByAsc(MeetingDevice::getDeviceUuid);
|
|
|
+ page = this.page(page,queryWrapper3);
|
|
|
if(page.getRecords().size()>0){
|
|
|
- List<Long> roomIdList = new ArrayList<>();
|
|
|
- for (int i = 0; i < page.getRecords().size(); i++) {
|
|
|
- roomIdList.add(Long.valueOf(page.getRecords().get(i).getRoomId()));
|
|
|
+
|
|
|
+ if(CollectionUtils.isNotEmpty(meetingRoomsList)){
|
|
|
+ for (int i = 0; i < page.getRecords().size(); i++) {
|
|
|
+ if(Objects.nonNull(page.getRecords().get(i).getRoomId())){
|
|
|
+ Long RId = Long.valueOf(page.getRecords().get(i).getRoomId());
|
|
|
+ for (int j = 0; j < meetingRoomsList.size(); j++) {
|
|
|
+ if(RId.equals(meetingRoomsList.get(j).getRoomId())){
|
|
|
+ page.getRecords().get(i).setMeetingRoom(meetingRoomsList.get(j));
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
}
|
|
|
- List<Long> list = roomIdList.stream().distinct().collect(Collectors.toList());
|
|
|
|
|
|
- LambdaQueryWrapper<MeetingRoom> queryWrapper1 = Wrappers.lambdaQuery();
|
|
|
- queryWrapper1.in(MeetingRoom::getRoomId,list).eq(MeetingRoom::getTenantId,SecurityUtils.getTenantId());
|
|
|
- List<MeetingRoom> meetingRoomList = meetingRoomMapper.selectList(queryWrapper1);
|
|
|
- if(CollectionUtils.isNotEmpty(meetingRoomList)){
|
|
|
+ if(CollectionUtils.isNotEmpty(egDeviceList)){
|
|
|
for (int i = 0; i < page.getRecords().size(); i++) {
|
|
|
- Long RId = Long.valueOf(page.getRecords().get(i).getRoomId());
|
|
|
- for (int j = 0; j < meetingRoomList.size(); j++) {
|
|
|
- if(RId.equals(meetingRoomList.get(j).getRoomId())){
|
|
|
- page.getRecords().get(i).setRoomName(meetingRoomList.get(j).getRoomName());
|
|
|
- break;
|
|
|
+ if(Objects.nonNull(page.getRecords().get(i).getEgDeviceId())){
|
|
|
+ Integer egDeviceId = page.getRecords().get(i).getEgDeviceId();
|
|
|
+ for (int j = 0; j < egDeviceList.size(); j++) {
|
|
|
+ if(egDeviceId.equals(egDeviceList.get(j).getId())){
|
|
|
+ page.getRecords().get(i).setEgDevice(egDeviceList.get(j));
|
|
|
+ break;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -122,11 +173,11 @@ public class MeetingDeviceServiceImpl extends AbstractCrudService<MeetingDeviceM
|
|
|
}
|
|
|
|
|
|
public boolean checkNameUnique(MeetingDevice meetingDevice){
|
|
|
- Long deviceId = null == meetingDevice.getDeviceId()?-1:meetingDevice.getDeviceId();
|
|
|
+ Long deviceId = null == meetingDevice.getDeviceUuid()?-1:meetingDevice.getDeviceUuid();
|
|
|
LambdaQueryWrapper<MeetingDevice> queryWrapper = Wrappers.lambdaQuery();
|
|
|
queryWrapper.eq(MeetingDevice::getDeviceName,meetingDevice.getDeviceName())
|
|
|
.eq(MeetingDevice::getTenantId,SecurityUtils.getTenantId());
|
|
|
MeetingDevice one = this.getOne(queryWrapper);
|
|
|
- return null != one && !Objects.equals(one.getDeviceId(),deviceId);
|
|
|
+ return null != one && !Objects.equals(one.getDeviceUuid(),deviceId);
|
|
|
}
|
|
|
}
|