package com.hzya.frame.u8c.Encapsulation.service;

import com.alibaba.fastjson.JSONObject;
import com.hzya.frame.basedao.service.IBaseService;
import com.hzya.frame.sysnew.application.entity.SysExtensionApiEntity;
import com.hzya.frame.u8c.Encapsulation.entity.EncapsulationEntity;

/**
 * (BdCorp)表服务接口
 *
 * @author makejava
 * @since 2023-09-06 14:47:18
 */
public interface IEncapsulationService extends IBaseService<EncapsulationEntity, String> {
    /**
     * @Author lvleigang
     * @Description  采购订单删除接口
     *  0、根据采购订单号查询入库单号,1、库存采购入库单取消签字，2、库存采购入库单删除,3、采购订单弃审,4、采购订单删除
     * @Date 9:44 上午 2024/9/4
     * @param jsonObject
     * @return java.lang.Object
     **/
    Object purchaseOrderDelete(JSONObject jsonObject);
    SysExtensionApiEntity addPurchaseOrderDelete(SysExtensionApiEntity jsonObject);

    /**
     * @Author lvleigang
     * @Description 采购入库单删除接口
     *  1、库存采购入库单取消签字，2、库存采购入库单删除
     * @Date 9:44 上午 2024/9/4
     * @param jsonObject
     * @return java.lang.Object
     **/
    Object purchaseWarehousingDelete(JSONObject jsonObject);
    SysExtensionApiEntity addPurchaseWarehousingDelete(SysExtensionApiEntity jsonObject);

    /**
     * @Author lvleigang
     * @Description 销售订单删除接口
     *  0、根据销售钉订单号查询出销售出库单号，1、库存销售出库单取消签字,2、库存销售出库单删除,3、销售订单取消审批,4、销售订单删除
     * @Date 9:44 上午 2024/9/4
     * @param jsonObject
     * @return java.lang.Object
     **/
    Object salesOrderDelete(JSONObject jsonObject);
    SysExtensionApiEntity addSalesOrderDelete(SysExtensionApiEntity jsonObject);

    /**
     * @Author lvleigang
     * @Description 调拨订单删除接口
     * 0、根据调拨订单号查询调拨入库，调拨出库单据，1、库存调拨出库取消签字 2、库存调拨出库删除 3、调拨入库取消签字 4、调拨入库删除 5、调拨订单弃审 6、调拨订单删除
     * @Date 9:44 上午 2024/9/4
     * @param jsonObject
     * @return java.lang.Object
     **/
    Object transferOrderDelete(JSONObject jsonObject);
    SysExtensionApiEntity addTransferOrderDelete(SysExtensionApiEntity jsonObject);

    /**
     * @Author lvleigang
     * @Description 产成品入库删除接口
     *  1、库存产成品入库单取消签字 2、库存产成品入库单删除
     * @Date 9:44 上午 2024/9/4
     * @param jsonObject
     * @return java.lang.Object
     **/
    Object finishedProductsAreStoredDelete(JSONObject jsonObject);
    SysExtensionApiEntity addFinishedProductsAreStoredDelete(SysExtensionApiEntity jsonObject);

    /**
     * @Author lvleigang
     * @Description 材料出库删除接口
     *  1、库存材料出库取消签字 2、库存材料出库单删除
     * @Date 9:44 上午 2024/9/4
     * @param jsonObject
     * @return java.lang.Object
     **/
    Object materialDeliveryDelete(JSONObject jsonObject);
    SysExtensionApiEntity addMaterialDeliveryDelete(SysExtensionApiEntity jsonObject);

    /**
     * @Author lvleigang
     * @Description 其他出库单删除接口
     *  1、库存其他出库取消签字 2、库存其他出库删除
     * @Date 9:44 上午 2024/9/4
     * @param jsonObject
     * @return java.lang.Object
     **/
    Object otherWarehouseOrdersDelete(JSONObject jsonObject);
    SysExtensionApiEntity addOtherWarehouseOrdersDelete(SysExtensionApiEntity jsonObject);

    /**
     * @Author lvleigang
     * @Description 其他入库单删除接口
     *  1、库存其他入库单取消签字. 2、库存其他入库删除
     * @Date 9:44 上午 2024/9/4
     * @param jsonObject
     * @return java.lang.Object
     **/
    Object otherWarehouseReceiptDelete(JSONObject jsonObject);
    SysExtensionApiEntity addOtherWarehouseReceiptDelete(SysExtensionApiEntity jsonObject);


}
