#region << 版 本 注 释 >>
|
/*----------------------------------------------------------------
|
* 命名空间:WIDESEA_ITaskInfoService
|
* 创建者:胡童庆
|
* 创建时间:2024/8/2 16:13:36
|
* 版本:V1.0.0
|
* 描述:
|
*
|
* ----------------------------------------------------------------
|
* 修改人:
|
* 修改时间:
|
* 版本:V1.0.1
|
* 修改说明:
|
*
|
*----------------------------------------------------------------*/
|
#endregion << 版 本 注 释 >>
|
|
using Microsoft.AspNetCore.Mvc;
|
using SqlSugar;
|
using System;
|
using System.Collections.Generic;
|
using System.Diagnostics.CodeAnalysis;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
using WIDESEA_Common.CommonEnum;
|
using WIDESEA_Core;
|
using WIDESEA_Core.BaseServices;
|
using WIDESEA_Core.Enums;
|
using WIDESEA_DTO;
|
using WIDESEA_DTO.ERP;
|
using WIDESEA_DTO.MES;
|
using WIDESEA_DTO.Stock;
|
using WIDESEA_DTO.Task;
|
using WIDESEA_ITaskInfoRepository;
|
using WIDESEA_Model.Models;
|
|
namespace WIDESEA_ITaskInfoService
|
{
|
public interface ITaskService : IService<Dt_Task>
|
{
|
ITaskRepository Repository { get; }
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="tasks"></param>
|
/// <param name="agvDescription"></param>
|
/// <returns></returns>
|
WebResponseContent PushTasksToWCS(List<Dt_Task> tasks, string agvDescription = "", string agvtaskNum = "");
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="taskNum"></param>
|
/// <param name="agvDescription"></param>
|
/// <returns></returns>
|
WebResponseContent PushTasksToWCSSingle(int taskNum, string agvDescription = "", string agvtaskNum = "");
|
|
/// <summary>
|
/// 申请入库任务(PDA使用,仅托盘绑定入库站台,不分配货位)
|
/// </summary>
|
/// <param name="palletCode">托盘号</param>
|
/// <param name="stationCode">站台号</param>
|
/// <returns></returns>
|
//WebResponseContent RequestInboundTask(string palletCode, string stationCode);
|
WebResponseContent RequestInboundTask(SaveModel saveModel);
|
/// <summary>
|
/// 查询质检数量
|
/// </summary>
|
WebResponseContent InQualityConfirm(string palletCode);
|
/// <summary>
|
/// 空箱入库
|
/// </summary>
|
/// <param name="barcode"></param>
|
/// <param name="address"></param>
|
/// <returns></returns>
|
WebResponseContent InEmpty(string barcode, string address, int WarehouseId);
|
/// <summary>
|
/// 空箱出库
|
/// </summary>
|
/// <param name="qty">数量</param>
|
/// <param name="address">地址</param>
|
/// <returns></returns>
|
WebResponseContent OutEmpty(int qty, string address, int WarehouseId, string barcode);
|
|
/// <summary>
|
/// WCS申请入库
|
/// </summary>
|
/// <param name="stationCode"></param>
|
/// <param name="roadwayNo"></param>
|
/// <param name="palletCode"></param>
|
/// <returns></returns>
|
WebResponseContent DeviceRequestInboundTask(string stationCode, string roadwayNo, string palletCode,string materielBoxCode = "");
|
|
/// <summary>
|
/// 仅申请任务,让WCS根据路由确定下一地址
|
/// </summary>
|
/// <param name="stationCode"></param>
|
/// <param name="palletCode"></param>
|
/// <returns></returns>
|
WebResponseContent DeviceRequestInboundTaskSimple(string stationCode, string palletCode);
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="stationCode"></param>
|
/// <param name="palletCode"></param>
|
/// <param name="roadwayNos"></param>
|
/// <param name="heightType"></param>
|
/// <returns></returns>
|
WebResponseContent DeviceRequestInboundTaskByRoadways(string stationCode, string palletCode, List<string> roadwayNos, int heightType);
|
|
/// <summary>
|
/// 入库任务申请分配货位
|
/// </summary>
|
/// <param name="taskNum">任务号</param>
|
/// <param name="roadwayNo">巷道号</param>
|
/// <param name="palletType">托盘类型</param>
|
/// <returns></returns>
|
WebResponseContent AssignInboundTaskLocation(int taskNum, string roadwayNo);
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="taskNum"></param>
|
/// <param name="roadwayNo"></param>
|
/// <param name="heightType"></param>
|
/// <returns></returns>
|
WebResponseContent AssignInboundTaskLocationByHeight(int taskNum, string roadwayNo, int heightType);
|
|
WebResponseContent RequestZHInboundTask(string agvTaskCode, string palletCode, string palletType, string materialLot);
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="taskNum"></param>
|
/// <returns></returns>
|
Task<WebResponseContent> TaskCompleted(int taskNum);
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="taskNum"></param>
|
/// <returns></returns>
|
WebResponseContent InboundTaskCompleted(int taskNum);
|
/// <summary>
|
/// 测试架出仓
|
/// </summary>
|
/// <param name="model"></param>
|
/// <returns></returns>
|
MesResponseContent TestToolOut(TestToolOutModel model);
|
|
//防焊到线边
|
MesResponseContent SolderMaskOut(SolderMaskOut model);
|
//防焊派工
|
MesResponseContent SolderMaskOutNotice(SolderMaskOutNotice model);
|
/// <summary>
|
/// 生成出库任务
|
/// </summary>
|
/// <param name="orderDetailId"></param>
|
/// <param name="stockSelectViews"></param>
|
/// <returns></returns>
|
WebResponseContent GenerateOutboundTask(int orderDetailId, List<StockSelectViewDTO> stockSelectViews);
|
|
/// <summary>
|
/// 生成出库任务
|
/// </summary>
|
/// <param name="keys"></param>
|
/// <returns></returns>
|
WebResponseContent GenerateOutboundTasks(int[] keys);
|
|
/// <summary>
|
/// 出库任务完成
|
/// </summary>
|
/// <param name="taskNum">任务号</param>
|
/// <returns></returns>
|
WebResponseContent OutboundTaskCompleted(int taskNum);
|
|
/// <summary>
|
/// 判断是否需要移库
|
/// </summary>
|
/// <param name="taskNum">任务号</param>
|
/// <param name="locationCode">入库或出库的货位号</param>
|
/// <returns></returns>
|
MesResponseContent TestToolBack(TestToolBackModel backModel);
|
|
/// <summary>
|
/// 测试架报废
|
/// </summary>
|
/// <param name="toolScrap"></param>
|
/// <returns></returns>
|
MesResponseContent TestScrap(TestToolScrap toolScraps);
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="taskNum"></param>
|
/// <param name="locationCode"></param>
|
/// <returns></returns>
|
WebResponseContent IsRelocation(int taskNum, string locationCode);
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="toolSynInfo"></param>
|
/// <returns></returns>
|
WebResponseContent TestSynStock(TestToolSynInfo toolSynInfo);
|
|
/// <summary>
|
/// 选择库存生成出库任务
|
/// </summary>
|
/// <param name="id"></param>
|
/// <returns></returns>
|
WebResponseContent Outbound(int id);
|
WebResponseContent TakeOutbound(List<StockViewDTO> stockViews);
|
|
/// <summary>
|
/// 物料出库,WMS同步出库物料批次至MES
|
/// </summary>
|
/// <param name="model"></param>
|
/// <returns></returns>
|
WebResponseContent UploadMesMaterialLotaAcept(MesMaterialLotaAceptModel model);
|
|
/// <summary>
|
/// 基板出库
|
/// </summary>
|
/// <param name="model"></param>
|
/// <returns></returns>
|
MesResponseContent SubstrateOut(SubstrateOutModel model);
|
|
/// <summary>
|
/// 基板余料退库
|
/// </summary>
|
/// <param name="model"></param>
|
/// <returns></returns>
|
MesResponseContent SubstrateBack(SubstrateBackModel model);
|
|
/// <summary>
|
/// PP大卷出库-进行分卷
|
/// </summary>
|
/// <param name="model"></param>
|
/// <returns></returns>
|
MesResponseContent PPSubsectionOut(PPSubsectionOutModel model);
|
|
/// <summary>
|
/// PP小卷出库
|
/// </summary>
|
/// <param name="model"></param>
|
/// <returns></returns>
|
MesResponseContent PPCutOut(PPCutOutModle model);
|
|
/// <summary>
|
/// PP入库(大卷、小卷、张料)
|
/// </summary>
|
/// <param name="model"></param>
|
/// <returns></returns>
|
MesResponseContent PPBack(PPBackModel model);
|
/// <summary>
|
/// PP库存查询
|
/// </summary>
|
/// <param name="model"></param>
|
/// <returns></returns>
|
MesResponseContent QueryPpByWidth(QueryPpByWidthModel model);
|
|
/// <summary>
|
/// 成品返工提库
|
/// </summary>
|
/// <param name="model"></param>
|
/// <returns></returns>
|
MesResponseContent RworkTask(RworkTaskModel model);
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="roadwayNos"></param>
|
/// <param name="taskNum"></param>
|
/// <param name="heightType"></param>
|
/// <returns></returns>
|
WebResponseContent AssignRoadwayByHeight(List<string> roadwayNos, int taskNum, int heightType = 0);
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="roadwayNos"></param>
|
/// <param name="palletCode"></param>
|
/// <param name="heightType"></param>
|
/// <returns></returns>
|
WebResponseContent AssignRoadwayByHeightAndCode(List<string> roadwayNos, string palletCode, int heightType = 0);
|
|
/// <summary>
|
/// 分配巷道
|
/// </summary>
|
/// <param name="taskNum"></param>
|
/// <param name="roadwayNos"></param>
|
/// <returns></returns>
|
WebResponseContent AssignRoadway(int taskNum, List<string> roadwayNos, int heightType);
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="roadwayNos"></param>
|
/// <returns></returns>
|
WebResponseContent SingleAssignRoadway(List<string> roadwayNos);
|
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="orderId"></param>
|
/// <returns></returns>
|
WebResponseContent HandSubstrateOut(int orderId);
|
|
/// <summary>
|
/// 修改任务状态
|
/// </summary>
|
/// <param name="task"></param>
|
/// <returns></returns>
|
WebResponseContent UpdateTaskInfo(WCSTaskDTO task);
|
|
/// <summary>
|
/// PP仓agv搬运任务
|
/// </summary>
|
/// <param name="task"></param>
|
/// <returns></returns>
|
WebResponseContent AGVTasks(SaveModel saveModel);
|
|
|
WebResponseContent GeneratePKOutboundTask(int orderDetailId, List<StockSelectViewDTO> stockSelectViews);
|
/// <summary>
|
/// MES成品内包信息接收
|
/// </summary>
|
/// <returns></returns>
|
MesResponseContent BagInfoSync(MesBagInfoModel bagInfoModel);
|
/// <summary>
|
/// MES成品外包信息接收
|
/// </summary>
|
/// <param name="boxInfoModel"></param>
|
/// <returns></returns>
|
MesResponseContent BoxStockin(MesBoxInfoModel boxInfoModel);
|
/// <summary>
|
/// MES成品出库接口调用
|
/// </summary>
|
/// <returns></returns>
|
WebResponseContent ShipmentOrderSync(MesShipmentOrderSync model);
|
/// <summary>
|
/// 生成MESPP大卷出库任务
|
/// </summary>
|
/// <param name="keys"></param>
|
/// <returns></returns>
|
WebResponseContent MESPPGenerateOutboundTasks(int[] keys);
|
|
/// <summary>
|
/// 生成MESPP小卷出库任务
|
/// </summary>
|
/// <param name="keys"></param>
|
/// <returns></returns>
|
//WebResponseContent PPCutOutGenerateOutboundTasks(int[] keys);
|
|
WebResponseContent PPCutOutGenerateOutboundTasks(int orderDetailId, List<PPStockSelectViewDTO> stockSelectViews);
|
|
WebResponseContent PPGeneratePKOutboundTask(int orderDetailId, List<PPStockSelectViewDTO> stockSelectViews);
|
/// <summary>
|
/// 生成成品出库任务
|
/// </summary>
|
/// <param name="ProOutNo">出库订单号</param>
|
/// <param name="StationCode">站台地址</param>
|
/// <returns></returns>
|
Task<WebResponseContent> OutProductTask(int[] keys, string StationCode, int Grade);
|
/// <summary>
|
/// 成品余料退库入仓
|
/// </summary>
|
/// <param name="barCode"></param>
|
/// <param name="startPoint"></param>
|
/// <returns></returns>
|
WebResponseContent BackProductTask(string barCode, string startPoint);
|
/// <summary>
|
/// 成品空框回库
|
/// </summary>
|
/// <param name="barCode"></param>
|
/// <param name="startPoint"></param>
|
/// <returns></returns>
|
WebResponseContent EmptyBackTask(string barCode, string startPoint);
|
/// <summary>
|
/// 人工选择库存
|
/// </summary>
|
WebResponseContent OutProductSelect(int orderDetailId, List<ProStockViewDTO> proStockViews);
|
WebResponseContent GetZHMesMaterialLot(string materialLot);
|
}
|
}
|