package org.jeecg.modules.fbsMomOrder.service;

import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.fbsMomOrder.entity.FbsMomOrderdetail;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;
import java.util.Map;

/**
 * @Description: 生产订单子表
 * @author： jeecg-boot
 * @date：   2020-10-16
 * @version： V1.0
 */
public interface IFbsMomOrderdetailService extends IService<FbsMomOrderdetail> {
    /**
    * @Author chenchuang
    * @Description //TODO 查询生产订单总数，入库总数
    * @Date 2020/10/21 12:00
    * @Param []
    * @return org.jeecg.modules.fbsMomOrder.entity.FbsMomOrderdetail
    */
    Map<String,Object> getFbsMomOrderdetailSum();

    /**
    * @Author chenchuang
    * @Description //TODO 查询U8物料中的完工数量
    * @Date 2020/10/21 17:41
    * @Param []
    * @return java.util.List<org.jeecg.modules.fbsMomOrder.entity.FbsMomOrderdetail>
    */
    List<FbsMomOrderdetail> getQualifiedInQty();

    /**
    * @Author chenchuang
    * @Description //TODO 周成品入库数量
    * @Date 2020/10/21 21:44
    * @Param []
    * @return java.util.List<org.jeecg.modules.fbsMomOrder.entity.FbsMomOrderdetail>
    */
    Map<String,Object> getQualifiedInQtyWeek();

    /**
    * @Author chenchuang
    * @Description //TODO 制造看板：月生产计划
    * @Date 2020/10/28 17:05
    * @Param []
    * @return java.util.List<org.jeecg.modules.fbsMomOrder.entity.FbsMomOrderdetail>
    */
    List<FbsMomOrderdetail> getMonthList();


    List<FbsMomOrderdetail> getMonthListStatre(FbsMomOrderdetail fbsMomOrderdetail);
    List<FbsMomOrderdetail> getMonthListStatreReviewed(FbsMomOrderdetail fbsMomOrderdetail);

    List<FbsMomOrderdetail> getMonthListNotStatre(String month);

    /**
    * @Author chenchuang
    * @Description //TODO 制造看板：项目完工进度
    * @Date 2020/11/11 11:26
    * @Param []
    * @return java.util.List<org.jeecg.modules.fbsMomOrder.entity.FbsMomOrderdetail>
    */
    List<FbsMomOrderdetail> getMonthListGroupDefine12();

    /**
    * @Author chenchuang
    * @Description //TODO 产线看板：日生产计划
    * @Date 2020/10/28 17:20
    * @Param []
    * @return java.util.List<org.jeecg.modules.fbsMomOrder.entity.FbsMomOrderdetail>
    */
    List<FbsMomOrderdetail> getDayList();

    /**
    * @Author chenchuang
    * @Description //TODO
    * @Date 2020/10/28 21:18
    * @Param []
    * @return java.util.List<org.jeecg.modules.fbsMomOrder.entity.FbsMomOrderdetail>
    */
    List<FbsMomOrderdetail> getListByOrderSheet(String type);

    /**
    * @Author chenchuang
    * @Description //TODO 仓库看板：领料申请通知
    * @Date 2020/10/28 22:15
    * @Param []
    * @return java.util.List<org.jeecg.modules.fbsMomOrder.entity.FbsMomOrderdetail>
    */
    List<FbsMomOrderdetail> getApplyList();

    /**
    * @Author chenchuang
    * @Description //TODO 工单缺料
    * @Date 2020/11/5 21:08
    * @Param []
    * @return java.util.List<org.jeecg.modules.fbsMomOrder.entity.FbsMomOrderdetail>
    */
    List<FbsMomOrderdetail> getListByOrderSheetNotEnough();

    /**
    * @Author chenchuang
    * @Description //TODO 仓库看板：领料申请完成数量
    * @Date 2020/11/6 10:41
    * @Param []
    * @return java.lang.Integer
    */
    Integer getApplyCompleteSum();

    /**
    * @Author chenchuang
    * @Description //TODO 仓库看板：齐套数据
    * @Date 2020/11/9 19:46
    * @Param []
    * @return java.util.List<org.jeecg.modules.fbsMomOrder.entity.FbsMomOrderdetail>
    */
    List<FbsMomOrderdetail> getListByOrderSheetEnough();
}
