package com.zteits.pay.dao.impl; import java.util.List; import org.apache.commons.lang3.StringUtils; import com.xiaoleilu.hutool.util.CollectionUtil; import com.zteits.clouds.api.dto.park.param.SwitchETCstateRequest; import com.zteits.clouds.api.dto.pay.custperson.CustPersonStatisticDTO; import com.zteits.clouds.api.dto.pay.custperson.CustPersonStatisticForHourDTO; import com.zteits.clouds.api.dto.pay.custperson.CustPersonStatisticForWeekDTO; import com.zteits.clouds.api.dto.pay.param.QueryPersonForPageByUserPhoneQReq; import com.zteits.clouds.api.dto.pay.param.TdCCustPersonQueryStatisticRequest; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; 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.TdCCustPersonDTO; import com.zteits.clouds.api.dto.pay.param.TdCCustPersonRequest; import com.zteits.pay.dao.TdCCustPersonDao; import com.zteits.pay.domain.TdCCustPerson; import com.zteits.pay.domain.TdCCustPersonExample; import com.zteits.pay.mapper.TdCCustPersonMapper; import com.zteits.pay.mapper.smapper.TdCCustPersonSMapper; @Component public class TdCCustPersionDaoImpl implements TdCCustPersonDao { @Autowired private TdCCustPersonSMapper tdCCustPersonSMapper; @Autowired private TdCCustPersonMapper tdCCustPersonMapper; @Override public PageInfo queryPersonForPage(TdCCustPersonRequest request) { PageHelper.startPage(request.getBaseRequest().getPageNum(), request.getBaseRequest().getPageSize()); List list = tdCCustPersonSMapper.queryPersonForPage(request); return new PageInfo<>(list); } @Override public TdCCustPerson selectByUserPhone(String userPhone) { return tdCCustPersonSMapper.selectByUserPhone(userPhone); } @Override public int insertSelective(TdCCustPerson record) { return tdCCustPersonMapper.insertSelective(record); } @Override public int updateByUserPhone(TdCCustPerson person) { return tdCCustPersonSMapper.updateByUserPhone(person); } @Override public int updateByCustId(TdCCustPerson person) { return tdCCustPersonSMapper.updateByCustId(person); } @Override public TdCCustPerson queryPersonByCustId(String custId) { return tdCCustPersonSMapper.queryPersonByCustId(custId); } @Override public int updateCustPersonBaseInfoByCustId(TdCCustPerson person) { return tdCCustPersonSMapper.updateCustPersonBaseInfoByCustId(person); } @Override public List queryPersonByCustIds(List custIds) { TdCCustPersonExample example = new TdCCustPersonExample(); example.createCriteria().andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value()).andCustIdIn(custIds); return tdCCustPersonMapper.selectByExample(example); } @Override public CustPersonStatisticDTO queryUserPersonStatistic(TdCCustPersonQueryStatisticRequest request) { return tdCCustPersonSMapper.queryUserPersonStatistic(request); } @Override public List queryUserPersonStatisticForHour(TdCCustPersonQueryStatisticRequest request) { return tdCCustPersonSMapper.queryUserPersonStatisticForHour(request); } @Override public List queryUserPersonStatisticForWeek(TdCCustPersonQueryStatisticRequest request) { return tdCCustPersonSMapper.queryUserPersonStatisticForWeek(request); } @Override public PageInfo queryPersonForPageByUserPhone(QueryPersonForPageByUserPhoneQReq request) { //1.设置分页 PageHelper.startPage(request.getBaseRequest().getPageNum(), request.getBaseRequest().getPageSize()); //2.查询数据 TdCCustPersonExample example = new TdCCustPersonExample(); TdCCustPersonExample.Criteria criteria = example.createCriteria(); if(StringUtils.isNotEmpty(request.getUserPhone())){ criteria.andUserPhoneEqualTo(request.getUserPhone()); } criteria.andDataStateEqualTo(1); //criteria.andOrgIdEqualTo(request.getOrgId()); List list = tdCCustPersonMapper.selectByExample(example); return new PageInfo(list); } @Override public TdCCustPerson selectByCustId(TdCCustPersonRequest personRequest) { TdCCustPersonExample example = new TdCCustPersonExample(); example.createCriteria().andCustIdEqualTo(personRequest.getCustId()) .andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value()); List tdCCustPeople = tdCCustPersonMapper.selectByExample(example); if(CollectionUtil.isNotEmpty(tdCCustPeople)){ return tdCCustPeople.get(0); } return null; } @Override public int switchETCstate(SwitchETCstateRequest request) { TdCCustPersonExample example = new TdCCustPersonExample(); example.createCriteria().andCustIdEqualTo(request.getCustId()) .andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value()); TdCCustPerson person = new TdCCustPerson(); person.setEtcOpenState(request.getEtcOpenState()); if(request.getEtcProtocolState() == 0) { person.setEtcProtocolState(1); } return tdCCustPersonMapper.updateByExampleSelective(person,example); } }