| #region << 版 本 注 释 >> | 
| /*---------------------------------------------------------------- | 
|  * 命名空间:WIDESEA_ITaskInfoService | 
|  * 创建者:胡童庆 | 
|  * 创建时间:2024/8/2 16:13:36 | 
|  * 版本:V1.0.0 | 
|  * 描述: | 
|  * | 
|  * ---------------------------------------------------------------- | 
|  * 修改人: | 
|  * 修改时间: | 
|  * 版本:V1.0.1 | 
|  * 修改说明: | 
|  *  | 
|  *----------------------------------------------------------------*/ | 
| #endregion << 版 本 注 释 >> | 
|   | 
| 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 = ""); | 
|   | 
|         /// <summary> | 
|         ///  | 
|         /// </summary> | 
|         /// <param name="taskNum"></param> | 
|         /// <param name="agvDescription"></param> | 
|         /// <returns></returns> | 
|         WebResponseContent PushTasksToWCSSingle(int taskNum, string agvDescription = ""); | 
|   | 
|         /// <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> | 
|         /// <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); | 
|   | 
|         /// <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); | 
|   | 
|         /// <summary> | 
|         ///  | 
|         /// </summary> | 
|         /// <param name="taskNum"></param> | 
|         /// <returns></returns> | 
|         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); | 
|   | 
|         /// <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); | 
|   | 
|         /// <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> | 
|         ///  | 
|         /// </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); | 
|   | 
|         /// <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); | 
|   | 
|   | 
|         WebResponseContent GeneratePKOutboundTask(int orderDetailId, List<StockSelectViewDTO> stockSelectViews); | 
|     } | 
| } |