package com.aucma.api.service;

import com.aucma.api.domain.dto.SAPBOMPortDto;
import com.aucma.api.domain.dto.SAPPortDto;
import com.aucma.base.domain.BaseDeviceLedger;
import com.aucma.base.domain.BaseMaterialInfo;
import com.aucma.base.domain.BaseOrderInfo;
import com.aucma.base.domain.OrderBomInfo;
import com.aucma.production.domain.BaseBomInfo;
import com.aucma.production.domain.CalendarInfo;
import com.fasterxml.jackson.core.JsonProcessingException;
import org.springframework.stereotype.Service;

import java.text.ParseException;
import java.util.List;

/**
 * @Author YinQ
 * @create 2023-09-26 14:33
 */
@Service("SAPPort")
public interface ISAPPortService {

    /**
     * 获取SAP物料主数据
     * @param sapPortDto
     * @return
     */
    List<BaseMaterialInfo> getSAPMaterialData(SAPPortDto sapPortDto);


    /**
     * 获取生产工单
     * @param sapPortDto
     * @return
     */
    List<BaseOrderInfo> getSapBaseOrderInfo(SAPPortDto sapPortDto);

    /**
     * 获取设备台账
     * @param sapPortDto
     * @return
     */
    List<BaseDeviceLedger> getSapDeviceLedgers(SAPPortDto sapPortDto);

    /**
     * 获取产品bom信息
     * @param sapPortDto
     * @return
     */
    List<OrderBomInfo> getSapOrderBomInfo(SAPBOMPortDto sapPortDto);

    /**
     * 新增SAP生产日历
     *
     * @param calendarInfo 生产日历
     * @return 结果
     */
    public int addSAPCalendar(CalendarInfo calendarInfo);

    /**
     * 获取生产工单测试
     * @param params
     * @return
     */
    List<BaseOrderInfo> getProduceWorkTest(String params);
}
