package com.zteits.pay.dao.impl; import org.apache.commons.lang3.StringUtils; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.xiaoleilu.hutool.util.CollectionUtil; import com.zteits.clouds.api.dto.pay.dto.TdCCustInvoiceSaleParkRelDTO; import com.zteits.clouds.api.dto.pay.param.InvoiceParkRelRequest; import com.zteits.clouds.api.dto.pay.param.TdCCustInvoiceSaleQueryRequest; import com.zteits.pay.dao.TdCCustInvoiceSaleParkRelDao; import com.zteits.pay.domain.TdCCustInvoiceSaleParkRel; import com.zteits.pay.domain.TdCCustInvoiceSaleParkRelExample; import com.zteits.pay.mapper.TdCCustInvoiceSaleParkRelMapper; import com.zteits.pay.mapper.smapper.TdCCustInvoiceSaleParkRelSMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.util.ArrayList; import java.util.List; /** * @Description: * @Author: zengqc * @Date: 2022/3/22 17:03 */ @Component public class TdCCustInvoiceSaleParkRelDaoImpl implements TdCCustInvoiceSaleParkRelDao { @Autowired private TdCCustInvoiceSaleParkRelMapper tdCCustInvoiceSaleParkRelMapper; @Autowired private TdCCustInvoiceSaleParkRelSMapper tdCCustInvoiceSaleParkRelSMapper; /** * 根据 销方纳税人识别号(税号) 获取关联的停车场 */ @Override public List queryInvoiceParkRels(List invoiceTaxids) { if (CollectionUtil.isEmpty(invoiceTaxids)) { return new ArrayList<>(); } TdCCustInvoiceSaleParkRelExample example = new TdCCustInvoiceSaleParkRelExample(); example.createCriteria() .andSaleTaxidIn(invoiceTaxids); return tdCCustInvoiceSaleParkRelMapper.selectByExample(example); } /** * 分页查询关联停车场列表 * * @param request * @return */ @Override public PageInfo queryRelParkForPage(TdCCustInvoiceSaleQueryRequest request) { List saleTaxids = request.getSaleTaxids(); if (CollectionUtil.isEmpty(saleTaxids)) { return new PageInfo<>(new ArrayList<>()); } PageHelper.startPage(request.getBaseRequest().getPageNum(), request.getBaseRequest().getPageSize()); TdCCustInvoiceSaleParkRelExample example = new TdCCustInvoiceSaleParkRelExample(); TdCCustInvoiceSaleParkRelExample.Criteria sql = example.createCriteria(); sql.andSaleTaxidEqualTo(saleTaxids.get(0)); // 根据名称模糊查询 if(!StringUtils.isBlank(request.getPlName())){ sql.andPlNameLike("%" + request.getPlName() + "%"); } example.setOrderByClause("pl_no"); List list = tdCCustInvoiceSaleParkRelMapper.selectByExample(example); if (CollectionUtil.isNotEmpty(list)) { return new PageInfo<>(list); } return new PageInfo<>(new ArrayList<>()); } /** * 删除关联的停车场列表 * */ @Override public void deleteInvoiceRelPlNo(InvoiceParkRelRequest invoiceParkRelRequest) { String saleTaxid = invoiceParkRelRequest.getSaleTaxid(); if(saleTaxid == null){ return; } TdCCustInvoiceSaleParkRelExample example = new TdCCustInvoiceSaleParkRelExample(); example.createCriteria().andSaleTaxidEqualTo(saleTaxid); tdCCustInvoiceSaleParkRelMapper.deleteByExample(example); } /** * 新增关联的停车场列表 */ @Override public void batchAddInvoiceRelPlNo(List relList) { if (CollectionUtil.isEmpty(relList)) { return; } tdCCustInvoiceSaleParkRelSMapper.batchAddInvoiceRelPlNo(relList); } /** * 根据停车场编号获取关联关系列表 * * @param plNos * @return */ @Override public List queryInvoiceSaleParkRelByPlNos(List plNos) { if (CollectionUtil.isEmpty(plNos)) { return new ArrayList<>(); } TdCCustInvoiceSaleParkRelExample example = new TdCCustInvoiceSaleParkRelExample(); example.createCriteria().andPlNoIn(plNos); List saleParkRelList = tdCCustInvoiceSaleParkRelMapper.selectByExample(example); return saleParkRelList; } /** * 根据停车场编号批量删除 * */ @Override public void batchDeleteInvoiceRelPlNoByPlNo(List plNos) { if (CollectionUtil.isEmpty(plNos)) { return ; } TdCCustInvoiceSaleParkRelExample example = new TdCCustInvoiceSaleParkRelExample(); example.createCriteria().andPlNoIn(plNos); tdCCustInvoiceSaleParkRelMapper.deleteByExample(example); } /** * 获取停车场与销方关联关系 */ @Override public List queryInvoiceParkRelByPlNo(List plNos) { return tdCCustInvoiceSaleParkRelSMapper.queryInvoiceParkRelByPlNo(plNos); } /** * 据 税号LIST 去删除关联的停车场编号 */ @Override public void batchDeleteInvoiceParkRelByTaxIds(List saleTaxIds) { if (CollectionUtil.isEmpty(saleTaxIds)) { return ; } TdCCustInvoiceSaleParkRelExample example = new TdCCustInvoiceSaleParkRelExample(); example.createCriteria().andSaleTaxidIn(saleTaxIds); tdCCustInvoiceSaleParkRelMapper.deleteByExample(example); } }