package com.jianshui.invoice.mapper; import java.util.List; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.jianshui.invoice.domain.BillInfo; import com.jianshui.invoice.domain.BillDetail; import com.jianshui.invoice.domain.Invoice; import org.apache.ibatis.annotations.Param; /** * 开票信息Mapper接口 * * @author Gong Quanlin * @date 2022-03-06 */ public interface BillInfoMapper extends BaseMapper { /** * 查询开票信息 * * @param id 开票信息主键 * @return 开票信息 */ public BillInfo selectBillInfoById(Long id); /** * 查询开票信息列表 * * @param billInfo 开票信息 * @return 开票信息集合 */ public List selectBillInfoList(BillInfo billInfo); /** * 新增开票信息 * * @param billInfo 开票信息 * @return 结果 */ public int insertBillInfo(BillInfo billInfo); /** * 修改开票信息 * * @param billInfo 开票信息 * @return 结果 */ public int updateBillInfo(BillInfo billInfo); /** * 删除开票信息 * * @param id 开票信息主键 * @return 结果 */ public int deleteBillInfoById(Long id); /** * 批量删除开票信息 * * @param ids 需要删除的数据主键集合 * @return 结果 */ public int deleteBillInfoByIds(Long[] ids); /** * 批量删除发票明细 * * @param ids 需要删除的数据主键集合 * @return 结果 */ public int deleteBillDetailByBillInfoIds(Long[] ids); /** * 批量新增发票明细 * * @param billDetailList 发票明细列表 * @return 结果 */ public int batchBillDetail(List billDetailList); /** * 通过开票信息主键删除发票明细信息 * * @param id 开票信息ID * @return 结果 */ public int deleteBillDetailByBillInfoId(Long id); /** * 根据税号和系统订单号查找billinfo * * @param companyId * @param systemOrderNo * @return */ public BillInfo selectBySystemOrderNo(@Param(("companyId")) Long companyId, @Param("system_orderno") String systemOrderNo); public BillInfo selectByOutTradeOrderno(@Param(("companyId")) Long companyId, @Param("out_trade_orderno") String outTradeOrderno); public BillInfo selectByOutTradeOrdernoNotDel(@Param(("companyId")) Long companyId, @Param("out_trade_orderno") String outTradeOrderno, @Param("updateBy") String updateBy); }