package com.zteits.pay.dao.impl; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.xiaoleilu.hutool.util.CollectionUtil; import com.zteits.clouds.api.apibase.constants.DataStatusEnum; import com.zteits.clouds.api.dto.pay.param.TdCCustInvoiceSaleQueryRequest; import com.zteits.pay.dao.TdCCustInvoiceSaleDao; import com.zteits.pay.domain.TdCCustInvoiceSale; import com.zteits.pay.domain.TdCCustInvoiceSaleExample; import com.zteits.pay.domain.TdCCustInvoiceSaleExample.Criteria; import com.zteits.pay.mapper.TdCCustInvoiceSaleMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import org.springframework.util.CollectionUtils; import java.util.ArrayList; import java.util.Date; import java.util.List; @Component public class TdCCustInvoiceSaleDaoImpl implements TdCCustInvoiceSaleDao { @Autowired private TdCCustInvoiceSaleMapper tdCCustInvoiceSaleMapper; @Override public int deleteTdCCustInvoiceSaleByPrimaryKey(Long id, String opId, String opName) { TdCCustInvoiceSale record = new TdCCustInvoiceSale(); record.setId(id); record.setModfiyEmpid(opId); record.setModfiyDate(new Date()); record.setDataState(DataStatusEnum.DATA_STATUS_NO_VALID.value()); return tdCCustInvoiceSaleMapper.updateByPrimaryKeySelective(record); } @Override public int saveTdCCustInvoiceSale(TdCCustInvoiceSale tdCCustInvoiceSale) { if(tdCCustInvoiceSale.getCreateDate()==null){ tdCCustInvoiceSale.setCreateDate(new Date()); } return tdCCustInvoiceSaleMapper.insertSelective(tdCCustInvoiceSale); } @Override public int updateByPrimaryKeySelective(TdCCustInvoiceSale record) { return tdCCustInvoiceSaleMapper.updateByPrimaryKeySelective(record); } @Override public List queryTdCCustInvoiceSale(TdCCustInvoiceSaleQueryRequest request) { TdCCustInvoiceSaleExample example = new TdCCustInvoiceSaleExample(); Criteria sql = example.createCriteria(); if(request.getId() != null){ sql.andIdEqualTo(request.getId()); } if(request.getOrgId() != null){ sql.andOrgIdEqualTo(request.getOrgId()); } if(CollectionUtil.isNotEmpty(request.getSaleNames())){ sql.andSaleNameIn(request.getSaleNames()); } if(CollectionUtil.isNotEmpty(request.getSaleTaxids())){ sql.andSaleTaxidIn(request.getSaleTaxids()); } sql.andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value()); example.setOrderByClause("id desc"); return tdCCustInvoiceSaleMapper.selectByExample(example); } @Override public int batchDeleteTdCCustInvoiceSaleByPrimaryKey(List ids, String opId, String opName) { TdCCustInvoiceSale record = new TdCCustInvoiceSale(); record.setModfiyEmpid(opId); record.setModfiyDate(new Date()); record.setDataState(DataStatusEnum.DATA_STATUS_NO_VALID.value()); TdCCustInvoiceSaleExample example = new TdCCustInvoiceSaleExample(); example.createCriteria().andIdIn(ids); return tdCCustInvoiceSaleMapper.updateByExampleSelective(record,example); } @Override public PageInfo queryTdCCustInvoiceSaleForPage(TdCCustInvoiceSaleQueryRequest request) { PageHelper.startPage(request.getBaseRequest().getPageNum(), request.getBaseRequest().getPageSize()); TdCCustInvoiceSaleExample example = new TdCCustInvoiceSaleExample(); Criteria sql = example.createCriteria(); if(request.getId() != null){ sql.andIdEqualTo(request.getId()); } if(request.getOrgId() != null){ sql.andOrgIdEqualTo(request.getOrgId()); } if(CollectionUtil.isNotEmpty(request.getSaleNames())){ sql.andSaleNameIn(request.getSaleNames()); } if(CollectionUtil.isNotEmpty(request.getSaleTaxids())){ sql.andSaleTaxidIn(request.getSaleTaxids()); } sql.andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value()); example.setOrderByClause("id desc"); List list = tdCCustInvoiceSaleMapper.selectByExample(example); if (CollectionUtil.isNotEmpty(list)) { return new PageInfo(list); } return new PageInfo(new ArrayList()); } /** * 获取当前用户所在组织的默认销方 * * @Author: zengqc */ @Override public TdCCustInvoiceSale queryDefaultInvoiceSale(TdCCustInvoiceSaleQueryRequest request) { TdCCustInvoiceSaleExample example = new TdCCustInvoiceSaleExample(); example.createCriteria() .andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value()) .andSaleTypeEqualTo(1) .andOrgIdEqualTo(request.getOrgId()); List tdCCustInvoiceSales = tdCCustInvoiceSaleMapper.selectByExample(example); if(CollectionUtil.isEmpty(tdCCustInvoiceSales)){ return null; } return tdCCustInvoiceSales.get(0); } /** * 将orgId下的都置为普通 * @Author: zengqc */ @Override public int updateOtherCustInvoiceSaleToCommon(TdCCustInvoiceSale tdCCustInvoiceSale) { TdCCustInvoiceSale record = new TdCCustInvoiceSale(); record.setSaleType(0); TdCCustInvoiceSaleExample example = new TdCCustInvoiceSaleExample(); example.createCriteria() .andSaleTypeEqualTo(1) .andOrgIdEqualTo(tdCCustInvoiceSale.getOrgId()); return tdCCustInvoiceSaleMapper.updateByExampleSelective(record, example); } /** * 根据ID 获取对应的销方信息列表 */ @Override public List queryTdCCustInvoiceSaleById(List ids) { if(CollectionUtils.isEmpty(ids)){ return new ArrayList<>(); } TdCCustInvoiceSaleExample example = new TdCCustInvoiceSaleExample(); example.createCriteria().andIdIn(ids); return tdCCustInvoiceSaleMapper.selectByExample(example); } @Override public int updateInvoiceSaleByTaxId(TdCCustInvoiceSale record) { TdCCustInvoiceSaleExample example = new TdCCustInvoiceSaleExample(); example.createCriteria().andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value()) .andSaleTaxidEqualTo(record.getSaleTaxid()); record.setModfiyDate(new Date()); return tdCCustInvoiceSaleMapper.updateByExampleSelective(record, example ); } }