TpCCarBreakRuleDaoImpl.java 3.45 KB
package com.zteits.park.dao.impl;

import java.util.List;

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

import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.zteits.clouds.api.apibase.constants.DataStatusEnum;
import com.zteits.clouds.api.dto.park.param.CarBreakRuleCheckRequest;
import com.zteits.clouds.api.dto.park.param.CarBreakRuleRequest;
import com.zteits.park.dao.TpCCarBreakRuleDao;
import com.zteits.park.domain.TpCCarBreakRule;
import com.zteits.park.domain.TpCCarBreakRuleExample;
import com.zteits.park.domain.TpCCarBreakRuleExample.Criteria;
import com.zteits.park.mapper.TpCCarBreakRuleMapper;

@Component
public class TpCCarBreakRuleDaoImpl implements TpCCarBreakRuleDao {

    
    @Autowired
	private TpCCarBreakRuleMapper tpCCarBreakRuleMapper;

	@Override
	public PageInfo<TpCCarBreakRule> queryCarBreakRuleForPage(CarBreakRuleRequest request) {
		PageHelper.startPage(request.getBaseRequest().getPageNum(), request.getBaseRequest().getPageSize());
		TpCCarBreakRuleExample example = new TpCCarBreakRuleExample();
		Criteria sql = example.createCriteria();
		sql.andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value());
		if(CollectionUtils.isNotEmpty(request.getIds())){
			sql.andIdIn(request.getIds());
		}
		if(request.getAuditType() != null){
			sql.andAuditTypeEqualTo(request.getAuditType());
		}
		if(CollectionUtils.isNotEmpty(request.getPlNos())){
			sql.andPlNoIn(request.getPlNos());
		}
		if(CollectionUtils.isEmpty(request.getPlNos())){
			sql.andPlNoIsNull();
		}
		if(CollectionUtils.isNotEmpty(request.getParkAreaCodes())){
			sql.andParkAreaCodeIn(request.getParkAreaCodes());
		}
		if(CollectionUtils.isNotEmpty(request.getChargerCodes())){
			sql.andChargerCodeIn(request.getChargerCodes());
		}
		if(request.getOrgId() != null){
			sql.andOrgIdEqualTo(request.getOrgId());
		}
		if(request.getId() != null){
			sql.andIdEqualTo(request.getId());
		}
		if(request.getBeginTime() != null){
			sql.andCreateDateGreaterThanOrEqualTo(request.getBeginTime());
		}
		if(request.getEndTime() != null){
			sql.andCreateDateLessThanOrEqualTo(request.getEndTime());
		}
		if(StringUtils.isNotEmpty(request.getBerthNo())){
			sql.andBerthNoLike("%" + request.getBerthNo() + "%");
		}
		if(StringUtils.isNotEmpty(request.getCarNo())){
			sql.andCarNoLike("%" + request.getCarNo() + "%");
		}
		if(StringUtils.isNotEmpty(request.getRoadCode())){
			sql.andRoadCodeLike("%" + request.getRoadCode() + "%");
		}
		if(StringUtils.isNotEmpty(request.getBreakRuleCode())){
			sql.andBreakRuleCodeLike("%" + request.getBreakRuleCode() + "%");
		}
		List<TpCCarBreakRule> list = tpCCarBreakRuleMapper.selectByExample(example);
		return new PageInfo<TpCCarBreakRule>(list);
	}

	@Override
	public Boolean updateCarBreakRuleCheckStatus(CarBreakRuleCheckRequest req) {
		TpCCarBreakRule record = new TpCCarBreakRule();
		BeanUtils.copyProperties(req, record);
		TpCCarBreakRuleExample example = new TpCCarBreakRuleExample();
		example.createCriteria().andIdEqualTo(req.getId())
			.andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value());
		return tpCCarBreakRuleMapper.updateByExampleSelective(record, example) > 0;
	}

	@Override
	public Integer insertSelective(TpCCarBreakRule record) {
		return tpCCarBreakRuleMapper.insertSelective(record);
	}


}