package com.ruoyi.sales.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.procurementrecord.bean.vo.ShippingProductVo; import com.ruoyi.sales.dto.ShippingApproveDto; import com.ruoyi.sales.dto.ShippingInfoDto; import com.ruoyi.sales.dto.ShippingProductDetailDto; import com.ruoyi.sales.pojo.ShippingInfo; import java.util.List; /** * @author :yys * @date : 2025/10/22 9:33 */ public interface ShippingInfoService extends IService{ IPage listPage(Page page, ShippingInfo req); boolean deductStock(ShippingInfoDto req); boolean delete(List ids); List getReturnManagementDtoById(Long shippingId); List getShippingInfoByCustomerName(String customerName); boolean add(ShippingInfoDto req); List getDetail(Long id); ShippingApproveDto getDateilByShippingNo(String shippingNo); boolean addReq(ShippingInfoDto req); /** * 仓储物流出库自动生成发货单:直接置为已发货,不发起发货审批,内部扣减库存 * * @return 生成的发货台账id */ Long addShippedFromOutbound(ShippingInfoDto req); /** * 出库单被删除时冲销发货单:删除发货单与明细,并回滚已扣减的库存 */ void cancelByOutbound(Long shippingInfoId); }