package com.foreverwin.mesnac.dispatch.service;

import com.alibaba.fastjson.JSONObject;
import com.foreverwin.mesnac.dispatch.model.IssueItem;
import com.baomidou.mybatisplus.extension.service.IService;

import java.math.BigDecimal;
import java.util.Map;


/**
 * <p>
 * 车间发料 服务类
 * </p>
 *
 * @author Leon.L
 * @since 2021-07-09
 */
public interface IssueItemService extends IService<IssueItem> {

    /**
     * 查询库存已发料的总数量
     *
     * @param site
     * @param inventory
     * @return
     */
    BigDecimal getInvIssueQty(String site, String inventory);

    /**
     * 校验扫描的物料条码
     * 1.原材料-扫描的必须是ERP发送的物料批次
     * 2.半成品-扫描的必须是库存批次
     * 3.当前工单物料-扫描的是当前SFC
     *
     * @param site
     * @param item
     * @param inventory
     * @return
     */
    Map<String, Object> scanIssueInventory(String site, String item, String inventory, Boolean oddments);

    /**
     * 发料
     * 1.余料：库存拆分
     * 2.原材料：创建库存
     * 3.半成品|成品：记录发料
     *
     * @param site
     * @param user
     * @param jsonObject
     */
    void issueItem(String site, String user, JSONObject jsonObject);
}