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 selectByExample(TdCPoliceCarInfoExample example) { return tdCPoliceCarInfoMapper.selectByExample(example); } @Override public TdCPoliceCarInfo queryByPrimaryKey(Long id) { return tdCPoliceCarInfoMapper.selectByPrimaryKey(id); } @Override public List 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 list = tdCPoliceCarInfoMapper.selectByExample(example); return list; } @Override public int batchDeleteTdCPoliceCarInfoByPrimaryKey(List 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 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 list = tdCPoliceCarInfoMapper.selectByExample(example); if (CollectionUtils.isNotEmpty(list)) { return new PageInfo<>(list); } return new PageInfo<>(new ArrayList<>()); } }