package com.unis.detectionnum.server.domain;

import java.util.ArrayList;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import com.unis.common.utils.LsBeanUtils;
import com.unis.detectionnum.common.vo.DeviceInfoQueryVO;
import com.unis.detectionnum.common.vo.DeviceInfoVO;
import com.unis.detectionnum.server.dao.DeviceInfoDao;
import com.unis.detectionnum.server.entity.DeviceInfoDO;

@Component
public class DeviceInfoDomain extends BaseDomain{

	@Autowired
	private DeviceInfoDao deviceInfoDao;
	
	public DeviceInfoVO getDeviceInfoByQuery(DeviceInfoQueryVO deviceInfoQueryVO) {
	    DeviceInfoVO dInfoVO = new DeviceInfoVO();
	    DeviceInfoDO dInfoDO = deviceInfoDao.selectOneByParams(deviceInfoQueryVO);
	   
	    LsBeanUtils.copyAllProperties(dInfoDO,dInfoVO);
	    
	    return dInfoVO;
	}

	public List<DeviceInfoVO> getDeviceInfoList(DeviceInfoQueryVO deviceInfoQueryVO) {
		List<DeviceInfoVO> deviceInfoVOs = new ArrayList<>();
		List<DeviceInfoDO> deviceInfoDOs = deviceInfoDao.selectListByParams(deviceInfoQueryVO);
		for(DeviceInfoDO infoDO : deviceInfoDOs) {
			DeviceInfoVO infoVO = new DeviceInfoVO();
			LsBeanUtils.copyAllProperties(infoDO,infoVO);
			deviceInfoVOs.add(infoVO);
		}
		return deviceInfoVOs;
	}

	public List<DeviceInfoDO> selectListAll(){
		return deviceInfoDao.selectListAll();
	}
}
