| | |
| | | import com.java110.dto.report.QueryStatisticsDto; |
| | | import com.java110.intf.community.IRoomV1InnerServiceSMO; |
| | | import com.java110.report.statistics.IBaseDataStatistics; |
| | | import com.java110.utils.util.StringUtil; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | |
| | | @Autowired |
| | | private IRoomV1InnerServiceSMO roomV1InnerServiceSMOImpl; |
| | | |
| | | /** |
| | | * 查询全部房屋 |
| | | * |
| | | * @param queryStatisticsDto |
| | | * @return |
| | | */ |
| | | @Override |
| | | public long getRoomCount(QueryStatisticsDto queryStatisticsDto) { |
| | | |
| | | RoomDto roomDto = new RoomDto(); |
| | | roomDto.setCommunityId(queryStatisticsDto.getCommunityId()); |
| | | roomDto.setFloorId(queryStatisticsDto.getFloorId()); |
| | | addRoomNumCondition(queryStatisticsDto, roomDto); |
| | | return roomV1InnerServiceSMOImpl.queryRoomsCount(roomDto); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 查询空闲房屋 |
| | | * |
| | | * @param queryStatisticsDto |
| | | * @return |
| | | */ |
| | | @Override |
| | | public long getFreeRoomCount(QueryStatisticsDto queryStatisticsDto) { |
| | | RoomDto roomDto = new RoomDto(); |
| | | roomDto.setCommunityId(queryStatisticsDto.getCommunityId()); |
| | | roomDto.setState(RoomDto.STATE_FREE); |
| | | roomDto.setFloorId(queryStatisticsDto.getFloorId()); |
| | | addRoomNumCondition(queryStatisticsDto, roomDto); |
| | | return roomV1InnerServiceSMOImpl.queryRoomsCount(roomDto); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * roomNum 拆分 查询房屋信息 |
| | | * |
| | | * @param queryStatisticsDto |
| | | * @param roomDto |
| | | */ |
| | | private void addRoomNumCondition(QueryStatisticsDto queryStatisticsDto, RoomDto roomDto) { |
| | | if (StringUtil.isEmpty(queryStatisticsDto.getObjName())) { |
| | | return; |
| | | } |
| | | if (!queryStatisticsDto.getObjName().contains("-")) { |
| | | roomDto.setRoomNumLike(queryStatisticsDto.getObjName()); |
| | | return; |
| | | } |
| | | String[] objNames = queryStatisticsDto.getObjName().split("-"); |
| | | if (objNames.length == 2) { |
| | | roomDto.setFloorNum(objNames[0]); |
| | | roomDto.setUnitNum("0"); |
| | | roomDto.setRoomNum(objNames[1]); |
| | | return; |
| | | } |
| | | objNames = queryStatisticsDto.getObjName().split("-", 3); |
| | | if (objNames.length == 3) { |
| | | roomDto.setFloorNum(objNames[0]); |
| | | roomDto.setUnitNum(objNames[1]); |
| | | roomDto.setRoomNum(objNames[2]); |
| | | } |
| | | |
| | | } |
| | | } |