package com.java110.report.statistics.impl;
|
|
import com.java110.dto.RoomDto;
|
import com.java110.dto.report.QueryStatisticsDto;
|
import com.java110.intf.community.IRoomV1InnerServiceSMO;
|
import com.java110.report.statistics.IBaseDataStatistics;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
/**
|
* 基础数据统计类
|
*/
|
@Service
|
public class BaseDataStatisticsImpl implements IBaseDataStatistics {
|
|
@Autowired
|
private IRoomV1InnerServiceSMO roomV1InnerServiceSMOImpl;
|
|
@Override
|
public long getRoomCount(QueryStatisticsDto queryStatisticsDto) {
|
|
RoomDto roomDto = new RoomDto();
|
roomDto.setCommunityId(queryStatisticsDto.getCommunityId());
|
roomDto.setFloorId(queryStatisticsDto.getFloorId());
|
if(queryStatisticsDto.getObjName().contains("-")){
|
String[] objNames = queryStatisticsDto.getObjName().split("-");
|
if(objNames.length == 2){
|
roomDto.setFloorNum(objNames[0]);
|
roomDto.setUnitNum("0");
|
roomDto.setRoomNum(objNames[1]);
|
}
|
objNames = queryStatisticsDto.getObjName().split("-",3);
|
if(objNames.length == 3){
|
roomDto.setFloorNum(objNames[0]);
|
roomDto.setUnitNum(objNames[1]);
|
roomDto.setRoomNum(objNames[2]);
|
}
|
}else{
|
roomDto.setRoomNumLike(queryStatisticsDto.getObjName());
|
}
|
return roomV1InnerServiceSMOImpl.queryRoomsCount(roomDto);
|
}
|
|
@Override
|
public long getFreeRoomCount(QueryStatisticsDto queryStatisticsDto) {
|
RoomDto roomDto = new RoomDto();
|
roomDto.setCommunityId(queryStatisticsDto.getCommunityId());
|
roomDto.setState(RoomDto.STATE_FREE);
|
roomDto.setFloorId(queryStatisticsDto.getFloorId());
|
if(queryStatisticsDto.getObjName().contains("-")){
|
String[] objNames = queryStatisticsDto.getObjName().split("-");
|
if(objNames.length == 2){
|
roomDto.setFloorNum(objNames[0]);
|
roomDto.setUnitNum("0");
|
roomDto.setRoomNum(objNames[1]);
|
}
|
objNames = queryStatisticsDto.getObjName().split("-",3);
|
if(objNames.length == 3){
|
roomDto.setFloorNum(objNames[0]);
|
roomDto.setUnitNum(objNames[1]);
|
roomDto.setRoomNum(objNames[2]);
|
}
|
}else{
|
roomDto.setRoomNumLike(queryStatisticsDto.getObjName());
|
}
|
return roomV1InnerServiceSMOImpl.queryRoomsCount(roomDto);
|
}
|
}
|