InParkLogDaoImpl.java 2.7 KB
package com.zteits.park.dao.impl;

import java.util.Date;
import java.util.List;

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

import org.apache.commons.lang3.StringUtils;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.zteits.park.constant.ParkConstant;
import com.zteits.park.dao.InParkLogDao;
import com.zteits.park.domain.InparkLog;
import com.zteits.park.domain.InparkLogCountDO;
import com.zteits.park.domain.InparkLogExample;
import com.zteits.park.domain.InparkLogVplNumberDO;
import com.zteits.park.mapper.InparkLogMapper;
import com.zteits.park.mapper.smapper.InparkLogSMapper;
@Component
public class InParkLogDaoImpl implements InParkLogDao {
	@Autowired
	private InparkLogMapper inparkLogMapper;
	@Autowired
	private InparkLogSMapper inparkLogSMapper;
	@Override
	public Boolean SaveInParkLog(InparkLog irainInparkLog) {
		if(irainInparkLog.getCreateTime()==null){
			irainInparkLog.setCreateTime(new Date());
		}
		return inparkLogMapper.insertSelective(irainInparkLog)==1;
	}
	@Override
	public PageInfo<InparkLog> queryBerthsForStatistic(int pageNum,int pageSize, Date beginTime, Date endTime) {
		PageHelper.startPage(pageNum, pageSize);
		List<InparkLog> inparkLogs = inparkLogSMapper.queryBerthsForStatistic(beginTime,endTime);
		return new PageInfo<InparkLog>(inparkLogs);
	}
	@Override
	public long countByExample(InparkLogExample example) {
	    return this.inparkLogMapper.countByExample(example);
	}
	@Override
	public List<InparkLogCountDO> queryParklotInCarCount(Date beginTime, Date endTime, List<String> plNos) {
		
		return inparkLogSMapper.queryParklotInCarCount(beginTime, endTime, plNos);
	}
	@Override
	public List<InparkLogVplNumberDO> queryParklotInCarTime(Date beginTime, Date endTime,
			String vplNumber,List<String> plNos) {
		
		return inparkLogSMapper.queryParklotInCarTime(beginTime,endTime,vplNumber,plNos);
	}
	@Override
	public List<InparkLogCountDO> queryParklotInCar(Date beginTime, Date endTime, List<String> plNos) {
		return inparkLogSMapper.queryParklotInCar(beginTime, endTime, plNos);
	}
	@Override
	public Integer queryMaxNum(Date beginTime, Date endTime, String vplNumber, List<String> plNos) {
		return inparkLogSMapper.queryMaxNum(beginTime,endTime,vplNumber,plNos);
	}
	@Override
	public Boolean updateInOutStatusByRecordId(String recordId) {
		if(StringUtils.isBlank(recordId)){
			return true;
		}
		InparkLogExample example = new InparkLogExample();
		example.createCriteria().andRecordIdEqualTo(recordId);
		InparkLog record = new InparkLog();
		record.setInOutStatus(ParkConstant.InterfaceLog.Type.TYPE_OUT_PARKING);
		return inparkLogMapper.updateByExampleSelective(record , example)>0;
	}
}