TdCPoliceCarInfoDaoImpl.java 5 KB
package com.zteits.pay.dao.impl;

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

import org.apache.commons.collections4.CollectionUtils;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.zteits.clouds.api.apibase.constants.DataStatusEnum;
import com.zteits.clouds.api.dto.pay.param.TdCPoliceCarInfoRequest;
import com.zteits.pay.dao.TdCPoliceCarInfoDao;
import com.zteits.pay.domain.TdCPoliceCarInfo;
import com.zteits.pay.domain.TdCPoliceCarInfoExample;
import com.zteits.pay.domain.TdCPoliceCarInfoExample.Criteria;
import com.zteits.pay.mapper.TdCPoliceCarInfoMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

@Component
public class TdCPoliceCarInfoDaoImpl implements TdCPoliceCarInfoDao {
    @Autowired
    private TdCPoliceCarInfoMapper tdCPoliceCarInfoMapper;

    @Override
    public int saveTdCPoliceCarInfo(TdCPoliceCarInfo tdCPoliceCarInfo) {
        if (tdCPoliceCarInfo.getCreateDate() == null) {
            tdCPoliceCarInfo.setCreateDate(new Date());
        }
        return tdCPoliceCarInfoMapper.insertSelective(tdCPoliceCarInfo);
    }

    @Override
    public int deleteTdCPoliceCarInfo(String carNumber) {

        TdCPoliceCarInfo record = new TdCPoliceCarInfo();
        record.setDataState(DataStatusEnum.DATA_STATUS_NO_VALID.value());
        record.setModifyDate(new Date());
        TdCPoliceCarInfoExample example = new TdCPoliceCarInfoExample();
        example.createCriteria().andCarNumberEqualTo(carNumber).andDataStateEqualTo(
            DataStatusEnum.DATA_STATUS_VALID.value());
        return tdCPoliceCarInfoMapper.updateByExampleSelective(record, example);
    }

    @Override
    public int updateByExampleSelective(TdCPoliceCarInfo record, TdCPoliceCarInfoExample example) {
        return tdCPoliceCarInfoMapper.updateByExampleSelective(record, example);
    }

    @Override
    public int updateByPrimaryKeySelective(TdCPoliceCarInfo record) {
        return tdCPoliceCarInfoMapper.updateByPrimaryKeySelective(record);
    }

    @Override
    public List<TdCPoliceCarInfo> selectByExample(TdCPoliceCarInfoExample example) {
        return tdCPoliceCarInfoMapper.selectByExample(example);
    }

    @Override
    public TdCPoliceCarInfo queryByPrimaryKey(Long id) {
        return tdCPoliceCarInfoMapper.selectByPrimaryKey(id);
    }

    @Override
    public List<TdCPoliceCarInfo> queryTdCPoliceCarInfo(TdCPoliceCarInfoRequest request) {
        TdCPoliceCarInfoExample example = new TdCPoliceCarInfoExample();
        Criteria sql = example.createCriteria();
        sql.andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value());
        if (null != request.getCarNumber()) {
            sql.andCarNumberLike(request.getCarNumber());
        }
        if (null != request.getPhoneNumber()) {
            sql.andPhoneNumberLike(request.getPhoneNumber());
        }
        if (null != request.getCheckStatus()) {
            sql.andCheckStatusEqualTo(request.getCheckStatus());
        }
        if (CollectionUtils.isNotEmpty(request.getCarNumbers())) {
            sql.andCarNumberIn(request.getCarNumbers());
        }
        example.setOrderByClause("id desc");
        List<TdCPoliceCarInfo> list = tdCPoliceCarInfoMapper.selectByExample(example);
        return list;
    }

    @Override
    public int batchDeleteTdCPoliceCarInfoByPrimaryKey(List<Long> ids, String opId, String opName) {
        TdCPoliceCarInfo record = new TdCPoliceCarInfo();
        record.setModifyEmpid(opId);
        record.setModifyDate(new Date());
        record.setDataState(DataStatusEnum.DATA_STATUS_NO_VALID.value());
        TdCPoliceCarInfoExample example = new TdCPoliceCarInfoExample();
        example.createCriteria().andIdIn(ids);
        return tdCPoliceCarInfoMapper.updateByExampleSelective(record, example);
    }

    @Override
    public PageInfo<TdCPoliceCarInfo> queryTdCPoliceCarInfoForPage(TdCPoliceCarInfoRequest request) {
        PageHelper.startPage(request.getBaseRequest().getPageNum(), request.getBaseRequest().getPageSize());

        TdCPoliceCarInfoExample example = new TdCPoliceCarInfoExample();
        Criteria sql = example.createCriteria();
        sql.andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value());
        if (null != request.getCarNumber()) {
            sql.andCarNumberLike(request.getCarNumber());
        }
        if (null != request.getPhoneNumber()) {
            sql.andPhoneNumberLike(request.getPhoneNumber());
        }
        if (null != request.getCheckStatus()) {
            sql.andCheckStatusEqualTo(request.getCheckStatus());
        }

        if (CollectionUtils.isNotEmpty(request.getCarNumbers())) {
            sql.andCarNumberIn(request.getCarNumbers());
        }
        example.setOrderByClause("id desc");
        List<TdCPoliceCarInfo> list = tdCPoliceCarInfoMapper.selectByExample(example);
        if (CollectionUtils.isNotEmpty(list)) {
            return new PageInfo<>(list);
        }
        return new PageInfo<>(new ArrayList<>());
    }
}