MesApiAskConService.java 3.82 KB
package com.huaheng.api.mes.service;

import java.util.List;

import com.huaheng.api.general.domain.ReceiptDomain;
import com.huaheng.api.general.domain.ShipmentDomain;
import com.huaheng.api.mes.domain.Cartons;
import com.huaheng.framework.web.domain.AjaxResult;
import com.huaheng.pc.inventory.inventoryDetail.domain.InventoryDetail;
import com.huaheng.pc.receipt.receiptDetail.domain.ReceiptDetail;
import com.huaheng.pc.shipment.shipmentDetail.domain.ShipmentDetail;

/**
 * mes接口业务实现层
 * @author 肖超群
 */
public interface MesApiAskConService {

    /**
     * 出库单添加
     * @param  shipmentDomain 出库单
     * @return
     */
    AjaxResult productionShipment(ShipmentDomain shipmentDomain);

    /**
     * 自动组盘并生成任务
     * @param  shipmentDomain 出库单
     * @return
     */
    AjaxResult autoCombinationAndCreateTask(ShipmentDomain shipmentDomain);

    /**
     * 生产入库单添加
     * @param  receiptDomain
     * @return
     */
    AjaxResult productionReceipt(ReceiptDomain receiptDomain);

    /**
     * 不合格品入库单添加
     * @param  receiptDomain
     * @return
     */
    AjaxResult unqualifiedProductsReceipt(ReceiptDomain receiptDomain);

    /**
     * 生产入库校验
     * @param  receiptDomain
     * @return
     */
    AjaxResult checkReceiptType(ReceiptDomain receiptDomain);

    /**
     * 创建出库返回结果
     * @param  code 单据编码
     * @return
     */
    AjaxResult createShipmentResultData(String code, String shipmentType);

    /**
     * 创建半成品出库组盘
     * @param  shipmentDomain
     * @return
     */
    AjaxResult createShipmentCombination(ShipmentDomain shipmentDomain);

    /**
     * 创建半成品虚拟库出库组盘
     * @param  shipmentDomain
     * @return
     */
    AjaxResult createVirtualShipmentCombination(ShipmentDomain shipmentDomain);

    /**
     * 创建其他入库单
     * @param  inventoryDetailList
     * @return
     */
    ReceiptDomain createOtherReceiptDomain(List<InventoryDetail> inventoryDetailList, String inventorySts, String station);

    /**
     * 创建其他出库数据
     * @param  inventoryDetailList
     * @return
     */
    ShipmentDomain createOtherShipmentDomain(List<InventoryDetail> inventoryDetailList, String station);

    /**
     * 库存形态转换
     * @param  inventoryDetail
     * @return
     */
    AjaxResult inventoryMorphologicalTransformationServer(InventoryDetail inventoryDetail);

    /**
     * 生产报废品入库
     * @param  receiptDetails
     * @return
     */
    AjaxResult scrapProductsReceiptServer(List<ReceiptDetail> receiptDetails);

    /**
     * 统计所有材料出库
     * @return
     */
    AjaxResult statisticsMaterialShipment();

    /**
     * 发送材料出库结果
     * @param  shipmentDomain 出库结果
     * @return
     */
    AjaxResult sendMaterialShipment(ShipmentDomain shipmentDomain);

    /**
     * 创建成品入库单
     * @param  receiptDomain
     * @return
     */
    AjaxResult createFinishedProductReceipt(ReceiptDomain receiptDomain);

    /**
     * mes强制入库
     * @param  cartons 纸箱数据
     * @return
     */
    AjaxResult forcedReceiptServer(Cartons cartons);

    /**
     * 纸箱出库
     * @param  shipmentDetail
     * @return
     */
    AjaxResult cartonsShipmentService(List<ShipmentDetail> shipmentDetail);

    /**
     * 创建虚拟入库单
     * @param  receiptDomain
     * @return
     */
    AjaxResult createVirtualReceipt(ReceiptDomain receiptDomain);

    /**
     * 创建虚拟出库单
     * @param  shipmentDomain
     * @return
     */
    AjaxResult createVirtualShipment(ShipmentDomain shipmentDomain);

    /**
     * 获取托盘状态
     * @param  containerCode
     * @return
     */
    AjaxResult getContainerCodeStateService(String containerCode);
}