package com.ruoyi.cwgl.service.impl; import java.util.List; import com.ruoyi.common.utils.DateUtils; import javax.annotation.Resource; import org.springframework.transaction.annotation.Transactional; import org.springframework.stereotype.Service; import org.springframework.scheduling.annotation.Async; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.ruoyi.common.utils.PageUtils; import com.ruoyi.common.constant.Constants; import com.ruoyi.common.annotation.DataSource; import com.ruoyi.common.enums.DataSourceType; import com.ruoyi.common.core.service.BaseService; import com.ruoyi.cwgl.mapper.PayableInvoiceBusinessMapper; import com.ruoyi.cwgl.domain.PayableInvoiceBusiness; import com.ruoyi.cwgl.service.IPayableInvoiceBusinessService; import com.ruoyi.common.core.text.Convert; /** * 应付账单开票明细Service业务层处理 * * @author ruoyi * @date 2026-01-27 */ @Service @Transactional(rollbackFor = Exception.class) public class PayableInvoiceBusinessServiceImpl extends BaseService implements IPayableInvoiceBusinessService { protected final Logger logger = LoggerFactory.getLogger(getClass()); @Resource private PayableInvoiceBusinessMapper payableInvoiceBusinessMapper; /** * 查询应付账单开票明细 * * @param id 应付账单开票明细ID * @return 应付账单开票明细 */ @DataSource(DataSourceType.SLAVE) @Override public PayableInvoiceBusiness selectPayableInvoiceBusinessById(Integer id) { return payableInvoiceBusinessMapper.selectPayableInvoiceBusinessById(id); } /** * 查询应付账单开票明细 记录数 * * @param payableInvoiceBusiness 应付账单开票明细 * @return 应付账单开票明细集合 */ @DataSource(DataSourceType.SLAVE) @Override public int selectPayableInvoiceBusinessCount(PayableInvoiceBusiness payableInvoiceBusiness) { return payableInvoiceBusinessMapper.selectPayableInvoiceBusinessCount(payableInvoiceBusiness); } /** * 查询应付账单开票明细列表 * * @param payableInvoiceBusiness 应付账单开票明细 * @return 应付账单开票明细 */ @DataSource(DataSourceType.SLAVE) @Override public List selectPayableInvoiceBusinessList(PayableInvoiceBusiness payableInvoiceBusiness) { return payableInvoiceBusinessMapper.selectPayableInvoiceBusinessList(payableInvoiceBusiness); } /** * 查询应付账单开票明细列表 异步 导出 * * @param payableInvoiceBusiness 应付账单开票明细 * @param exportKey 导出功能的唯一标识 * @return 应付账单开票明细集合 */ @DataSource(DataSourceType.SLAVE) @Async @Override public void export(PayableInvoiceBusiness payableInvoiceBusiness,String exportKey) { super.export(PayableInvoiceBusiness.class,exportKey,"payableInvoiceBusinessData",(pageNum)->{ PageUtils.startPage(pageNum, Constants.EXPORT_PATE_SIZE); return selectPayableInvoiceBusinessList(payableInvoiceBusiness); }); } /** * 新增应付账单开票明细 * * @param payableInvoiceBusiness 应付账单开票明细 * @return 结果 */ @Override public int insertPayableInvoiceBusiness(PayableInvoiceBusiness payableInvoiceBusiness) { payableInvoiceBusiness.setCreateTime(DateUtils.getNowDate()); return payableInvoiceBusinessMapper.insertPayableInvoiceBusiness(payableInvoiceBusiness); } /** * 新增应付账单开票明细[批量] * * @param payableInvoiceBusinesss 应付账单开票明细 * @return 结果 */ @Override public int insertPayableInvoiceBusinessBatch(List payableInvoiceBusinesss) { int rows = payableInvoiceBusinessMapper.insertPayableInvoiceBusinessBatch(payableInvoiceBusinesss); return rows; } /** * 修改应付账单开票明细 * * @param payableInvoiceBusiness 应付账单开票明细 * @return 结果 */ @Override public int updatePayableInvoiceBusiness(PayableInvoiceBusiness payableInvoiceBusiness) { payableInvoiceBusiness.setUpdateTime(DateUtils.getNowDate()); return payableInvoiceBusinessMapper.updatePayableInvoiceBusiness(payableInvoiceBusiness); } /** * 修改应付账单开票明细[批量] * * @param payableInvoiceBusinesss 应付账单开票明细 * @return 结果 */ @Override public int updatePayableInvoiceBusinessBatch(List payableInvoiceBusinesss){ return payableInvoiceBusinessMapper.updatePayableInvoiceBusinessBatch(payableInvoiceBusinesss); } /** * 删除应付账单开票明细对象 * * @param ids 需要删除的数据ID * @return 结果 */ @Override public int deletePayableInvoiceBusinessByIds(String ids) { return deletePayableInvoiceBusinessByIds(Convert.toIntArray(ids)); } /** * 删除应付账单开票明细对象 * * * @param ids 需要删除的数据ID * @return 结果 */ @Override public int deletePayableInvoiceBusinessByIds(Integer[] ids) { return payableInvoiceBusinessMapper.deletePayableInvoiceBusinessByIds(ids); } /** * 删除应付账单开票明细信息 * * @param id 应付账单开票明细ID * @return 结果 */ @Override public int deletePayableInvoiceBusinessById(Integer id) { return payableInvoiceBusinessMapper.deletePayableInvoiceBusinessById(id); } }