package com.zteits.business.dao.impl; import org.apache.commons.collections4.CollectionUtils; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.zteits.business.dao.TdCCustBusinessDao; import com.zteits.business.domain.*; import com.zteits.business.mapper.TdCBusinessOrderParkRecordMapper; import com.zteits.business.mapper.TdCCustBusinessMapper; import com.zteits.business.mapper.smapper.TdCBusinessOrderParkRecordSMapper; import com.zteits.clouds.api.apibase.constants.DataStatusEnum; import com.zteits.clouds.api.dto.business.dto.TdCBusinessOrderParkCouponSummaryDTO; import com.zteits.clouds.api.dto.business.param.TdCBusinessOrderParkRecordRequest; import com.zteits.clouds.api.dto.business.param.TdCCustBusinessRequest; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import org.springframework.util.StringUtils; import java.util.ArrayList; import java.util.Date; import java.util.List; @Component("com.zteits.business.dao.impl.TdCCustBusinessDaoImpl") public class TdCCustBusinessDaoImpl implements TdCCustBusinessDao { @Autowired private TdCCustBusinessMapper tdCCustBusinessMapper; @Autowired private TdCBusinessOrderParkRecordMapper tdCBusinessOrderParkRecordMapper; @Autowired private TdCBusinessOrderParkRecordSMapper tdCBusinessOrderParkRecordSMapper; @Override public int saveTdCCustBusiness(TdCCustBusiness tdCCustBusiness) { if(tdCCustBusiness.getCreateDate()==null){ tdCCustBusiness.setCreateDate(new Date()); } return tdCCustBusinessMapper.insertSelective(tdCCustBusiness); } @Override public int updateByExampleSelective(TdCCustBusiness record, TdCCustBusinessExample example) { return tdCCustBusinessMapper.updateByExampleSelective(record,example); } @Override public int updateByPrimaryKeySelective(TdCCustBusiness record) { return tdCCustBusinessMapper.updateByPrimaryKeySelective(record); } @Override public List selectByExample(TdCCustBusinessExample example) { return tdCCustBusinessMapper.selectByExample(example); } @Override public TdCCustBusiness queryByPrimaryKey(Long id) { return tdCCustBusinessMapper.selectByPrimaryKey(id); } @Override public List queryTdCCustBusiness(TdCCustBusinessRequest request) { TdCCustBusinessExample example = new TdCCustBusinessExample(); TdCCustBusinessExample.Criteria sql = example.createCriteria(); if(!StringUtils.isEmpty(request.getCustId())){ sql.andCustIdEqualTo(request.getCustId()); } if(!StringUtils.isEmpty(request.getBusinessName())){ sql.andBusinessNameEqualTo(request.getBusinessName()); } if(!StringUtils.isEmpty(request.getOrgId())){ sql.andOrgIdEqualTo(request.getOrgId()); } sql.andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value()); return tdCCustBusinessMapper.selectByExample(example); } @Override public int batchDeleteTdCCustBusinessByPrimaryKey(List ids, String opId, String opName) { TdCCustBusiness record = new TdCCustBusiness(); record.setModifyEmpid(opId); record.setModifyDate(new Date()); record.setDataState(DataStatusEnum.DATA_STATUS_NO_VALID.value()); TdCCustBusinessExample example = new TdCCustBusinessExample(); example.createCriteria().andIdIn(ids); return tdCCustBusinessMapper.updateByExampleSelective(record,example); } @Override public PageInfo queryTdCCustBusinessForPage(TdCCustBusinessRequest request) { PageHelper.startPage(request.getBaseRequest().getPageNum(), request.getBaseRequest().getPageSize()); TdCCustBusinessExample example = new TdCCustBusinessExample(); TdCCustBusinessExample.Criteria sql = example.createCriteria(); if(!StringUtils.isEmpty(request.getBusinessName())){ sql.andBusinessNameLike("%"+request.getBusinessName()+"%"); } if(!StringUtils.isEmpty(request.getUserPhone())){ sql.andUserPhoneLike("%"+request.getUserPhone()+"%"); } if(!StringUtils.isEmpty(request.getOrgId())){ sql.andOrgIdEqualTo(request.getOrgId()); } sql.andDataStateEqualTo(1); List list = tdCCustBusinessMapper.selectByExample(example); if (CollectionUtils.isNotEmpty(list)) { return new PageInfo(list); } return new PageInfo<>(new ArrayList()); } @Override public PageInfo queryBusinessParkOrderForPage(TdCBusinessOrderParkRecordRequest request) { PageHelper.startPage(request.getBaseRequest().getPageNum(), request.getBaseRequest().getPageSize()); //20220629修改页面只查询券已使用的停车记录信息 List list = tdCBusinessOrderParkRecordSMapper.queryBusinessOrderParkRecordForPageList(request); if (CollectionUtils.isNotEmpty(list)) { return new PageInfo(list); } return new PageInfo<>(new ArrayList<>()); } @Override public TdCBusinessOrderParkCouponSummary parkingCouponSummary(TdCBusinessOrderParkRecordRequest request) { TdCBusinessOrderParkCouponSummary summary = new TdCBusinessOrderParkCouponSummary(); TdCBusinessOrderParkCouponSummaryDTO dto = tdCBusinessOrderParkRecordSMapper.queryParkingCouponSummary(request); if(dto != null){ BeanUtils.copyProperties(dto,summary); }else{ summary.setDicountFeeAll(0L); summary.setOrderActFeeAll(0L); summary.setOrderTotalFeeAll(0L); } return summary; } }