| | |
| | | using System.Linq; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using WIDESEAWCS_Common.TaskEnum; |
| | | using WIDESEAWCS_Core; |
| | | using WIDESEAWCS_Core.BaseServices; |
| | | using WIDESEAWCS_Core.Enums; |
| | | using WIDESEAWCS_DTO.TaskInfo; |
| | | using WIDESEAWCS_DTO.BasicInfo; |
| | | using WIDESEAWCS_Model.Models; |
| | | |
| | | namespace WIDESEAWCS_ITaskInfoService |
| | |
| | | public interface ITaskService : IService<Dt_Task> |
| | | { |
| | | /// <summary> |
| | | /// ä»»å¡æåº |
| | | /// æ¥è¯¢æå®é¨æ¶è®¾å¤æªæ§è¡çä»»å¡ |
| | | /// </summary> |
| | | public Dictionary<string, OrderByType> TaskOrderBy { get; set; } |
| | | /// <param name="gantryDeviceNo">鍿¶è®¾å¤ç¼å·</param> |
| | | /// <returns>æªæ§è¡ç任塿°æ®ï¼è¥ä¸åå¨åè¿ånull</returns> |
| | | Dt_Task? QueryAGantryUnExecuteTask(string gantryDeviceNo); |
| | | |
| | | /// <summary> |
| | | /// ææå
¥åºä»»å¡ç±»å |
| | | /// æ§è¡è®¢ååæ¾ç½®æµè¯ï¼æ ¹æ®è®¢åè¡IDè·å订åæç»å¹¶è®¡ç®æ¾ç½®ä½ç½® |
| | | /// </summary> |
| | | public List<int> TaskInboundTypes { get; } |
| | | /// <param name="orderRowId">订åè¡ID</param> |
| | | /// <returns>å
嫿¾ç½®åä¿¡æ¯çWebååºå
容ãæåæ¶è¿åæ¾ç½®åå表ï¼å¤±è´¥æ¶è¿åé误信æ¯</returns> |
| | | /// <remarks> |
| | | /// 1. éè¿è®¢åè¡IDæ¥è¯¢è®¢åæç»æ°æ® <br/> |
| | | /// 2. 对æ¯ä¸ªææè®¢åæç»è®¡ç®åéçæ¾ç½®ä½ç½® <br/> |
| | | /// 3. å建容å¨é¡¹åä»»å¡è®°å½ <br/> |
| | | /// 4. éè¿WebSocketå叿¾ç½®ä½ç½®ä¿¡æ¯ <br/> |
| | | /// 5. è¿åæææåæ¾ç½®çåä¿¡æ¯ |
| | | /// </remarks> |
| | | WebResponseContent PlaceBlockTest(int orderRowId); |
| | | |
| | | /// <summary> |
| | | /// ææåºåºä»»å¡ç±»å |
| | | /// å建任å¡å¹¶è®¡ç®ç©åæ¾ç½®ä½ç½® |
| | | /// </summary> |
| | | public List<int> TaskOutboundTypes { get; } |
| | | /// <param name="takePosition">åè´§ä½ç½®ç¼ç </param> |
| | | /// <param name="putPosition">æ¾è´§ä½ç½®ç¼ç </param> |
| | | /// <param name="deviceCode">设å¤ç¼ç </param> |
| | | /// <param name="length">ç©åé¿åº¦</param> |
| | | /// <param name="width">ç©å宽度</param> |
| | | /// <param name="height">ç©åé«åº¦</param> |
| | | /// <returns>å
嫿ä½ç»æçWebååºå
容</returns> |
| | | /// <remarks> |
| | | /// 1. éªè¯åè´§/æ¾è´§ä½ç½®æ¯å¦åå¨ <br/> |
| | | /// 2. 计ç®ç©åå¨å®¹å¨ä¸çæä½³æ¾ç½®ä½ç½® <br/> |
| | | /// 3. å建容å¨ç©åè®°å½åä»»å¡è®°å½ <br/> |
| | | /// 4. éè¿WebSocketéç¥å®¢æ·ç«¯ |
| | | /// </remarks> |
| | | WebResponseContent CreateTask(string takePosition, string putPosition, string deviceCode, int length, int width, int height); |
| | | |
| | | /// <summary> |
| | | /// æ¥æ¶WMSä»»å¡ä¿¡æ¯ |
| | | /// æ ¹æ®è®¢åä¿¡æ¯çæä»»å¡ |
| | | /// </summary> |
| | | /// <param name="taskDTOs">WMSä»»å¡å¯¹è±¡éå</param> |
| | | /// <returns>è¿åå¤çç»æ</returns> |
| | | WebResponseContent ReceiveWMSTask(Dt_Task taskDTOs); |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®è®¾å¤ç¼å·ãå½åå°åæ¥è¯¢è¾éçº¿æªæ§è¡çä»»å¡ |
| | | /// </summary> |
| | | /// <param name="deviceNo">设å¤ç¼å·</param> |
| | | /// <param name="currentAddress">å½åå°å</param> |
| | | /// <returns></returns> |
| | | Dt_Task QueryConveyorLineTask(string deviceNo, string currentAddress); |
| | | /// <summary> |
| | | /// æ¥è¯¢å½åå°åæ¯å¦æè¯¥ä»»å¡ |
| | | /// </summary> |
| | | /// <param name="deviceNo"></param> |
| | | /// <param name="currentAddress"></param> |
| | | /// <returns></returns> |
| | | List<string> QueryConveyorLineTaskSourceAddress(); |
| | | /// <summary> |
| | | /// æ¥æ¾ä»»å¡æ¯å¦éè¦å°å |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | Dt_Task QueryConveyorLineTaskRoadway(int agvarea); |
| | | /// <param name="orderInfo">订åä¿¡æ¯</param> |
| | | /// <returns>å
å«ä¸ä¸ªå¼çå
ç»ï¼ <br/> |
| | | /// Item1 - æä½æ¯å¦æå (bool) <br/> |
| | | /// Item2 - çæçä»»å¡å¯¹è±¡ (Dt_Task)ï¼å¤±è´¥æ¶ä¸ºnull <br/> |
| | | /// Item3 - éè¯¯æ¶æ¯ (string)ï¼æåæ¶ä¸ºç©ºå符串 |
| | | /// </returns> |
| | | /// <remarks> |
| | | /// è¯¥æ¹æ³ä¼ï¼ <br/> |
| | | /// 1. æ ¹æ®è®¢å尺寸è·ååéçè´§ä½ <br/> |
| | | /// 2. å建容å¨é¡¹åä»»å¡è®°å½ <br/> |
| | | /// 3. æ´æ°ç¸å
³å®¹å¨ç¶æ <br/> |
| | | /// 4. å¨äºå¡ä¸æ§è¡æææ°æ®åºæä½ |
| | | /// </remarks> |
| | | (bool, Dt_Task?, string) GenerateTask(OrderInfo orderInfo); |
| | | |
| | | /// <summary> |
| | | /// æ¥æ¾è¯¥å°åæ¯å¦æèµ·ç¹è´§ç»ç¹ä»»å¡ |
| | | /// éæ°çæä»»å¡ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | bool QueryConveyorLinetaeersuadd(string taeersuadd); |
| | | /// <param name="task">åå§ä»»å¡å¯¹è±¡</param> |
| | | /// <param name="stationCode">å·¥ä½ç«ç¼ç </param> |
| | | /// <returns> |
| | | /// å
å«ä¸ä¸ªå¼çå
ç»ï¼ <br/> |
| | | /// 1. bool - æä½æ¯å¦æå <br/> |
| | | /// 2. Dt_Task - æ´æ°åçä»»å¡å¯¹è±¡ï¼å¤±è´¥æ¶ä¸ºnullï¼ <br/> |
| | | /// 3. string - éè¯¯æ¶æ¯ï¼æåæ¶ä¸ºç©ºåç¬¦ä¸²ï¼ |
| | | /// </returns> |
| | | /// <remarks> |
| | | /// è¯¥æ¹æ³ç¨äºéæ°çæä»»å¡ä¿¡æ¯ï¼å
æ¬ï¼ <br/> |
| | | /// 1. è§£ææ¿åå°ºå¯¸ä¿¡æ¯ <br/> |
| | | /// 2. éªè¯åè´§/æ¾è´§ä½ç½® <br/> |
| | | /// 3. 计ç®ç©åæ¾ç½®ä½ç½® <br/> |
| | | /// 4. æ´æ°ä»»å¡ç¶æåä½ç½®ä¿¡æ¯ <br/> |
| | | /// 5. å¨äºå¡ä¸æ´æ°æ°æ®åºè®°å½ |
| | | /// </remarks> |
| | | (bool, Dt_Task?, string) RegenerateTask(Dt_Task task, string stationCode); |
| | | |
| | | /// <summary> |
| | | /// ä¿®æ¹ä»»å¡ä¿¡æ¯ï¼æ·»å ç®æ å°å |
| | | /// çæå¼å¸¸ä»»å¡ |
| | | /// </summary> |
| | | /// <param name="TaskId"></param> |
| | | /// <param name="TargetAddress"></param> |
| | | /// <returns></returns> |
| | | WebResponseContent UpdateTargetAddress(int TaskId, string TargetAddress); |
| | | |
| | | /// <param name="orderInfo">订åä¿¡æ¯</param> |
| | | /// <returns>å
ç»å
å«ä¸ä¸ªå¼ï¼ <br/> |
| | | /// Item1 - æä½æ¯å¦æåï¼boolï¼ <br/> |
| | | /// Item2 - çæçä»»å¡å¯¹è±¡ï¼Dt_Taskï¼ï¼å¤±è´¥æ¶ä¸ºnull <br/> |
| | | /// Item3 - éè¯¯æ¶æ¯ï¼stringï¼ï¼æåæ¶ä¸ºç©ºå符串</returns> |
| | | /// <remarks> |
| | | /// è¯¥æ¹æ³ä¼æ ¹æ®è®¢åä¿¡æ¯çæä¸ä¸ªå¼å¸¸å¤çä»»å¡ï¼å
æ¬ï¼ <br/> |
| | | /// 1. è·åå¼å¸¸ä½ç½® <br/> |
| | | /// 2. éªè¯æ¾è´§/åè´§ä½ç½® <br/> |
| | | /// 3. å建容å¨é¡¹åä»»å¡è®°å½ <br/> |
| | | /// 4. æäº¤äºå¡ |
| | | /// </remarks> |
| | | (bool, Dt_Task?, string) GenerateExceptionTask(OrderInfo orderInfo); |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®ä»»å¡å·ãä¸ä¸å°åæ¥è¯¢è¾é线æ§è¡ä¸çä»»å¡ |
| | | /// æ ¹æ®è®¾å¤ç¼å·è·ååè´§ä½ç½® |
| | | /// </summary> |
| | | /// <param name="taskNum">ä»»å¡å·</param> |
| | | /// <param name="nextAddress">ä¸ä¸å°å</param> |
| | | /// <returns></returns> |
| | | Dt_Task QueryExecutingConveyorLineTask(int taskNum, string nextAddress); |
| | | /// <param name="deviceCode">设å¤ç¼å·</param> |
| | | /// <returns>ç¬¦åæ¡ä»¶ç容å¨å¯¹è±¡ï¼è¥æ¾ä¸å°åè¿ånull</returns> |
| | | /// <remarks> |
| | | /// 1. é¦å
æ¥è¯¢æå®è®¾å¤ä¸ææå¯ç¨çå货容å¨ï¼å¹¶æContainerSortååºæåº <br/> |
| | | /// 2. æ¥æ¾è¯¥è®¾å¤æè¿çä»»å¡è®°å½ <br/> |
| | | /// 3. 妿æ¾å°ä»»å¡è®°å½ï¼åæ ¹æ®ä»»å¡æºå°åå¹é
容å¨ï¼è¿åä¸ä¸ä¸ªå®¹å¨(è¥å·²æ¯æåä¸ä¸ªåè¿å第ä¸ä¸ª) <br/> |
| | | /// 4. 妿åºç°å¼å¸¸ææªæ¾å°å¹é
项ï¼åè¿å第ä¸ä¸ªå¯ç¨å®¹å¨ |
| | | /// </remarks> |
| | | Dt_Container? GetTakePosition(string deviceCode); |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®ä»»å¡å·ãå½åå°åæ¥è¯¢è¾éçº¿å®æçä»»å¡ |
| | | /// ä»»å¡å®æå¤çæ¹æ³ |
| | | /// </summary> |
| | | /// <param name="taskNum">ä»»å¡å·</param> |
| | | /// <param name="currentAddress">å½åå°å</param> |
| | | /// <returns></returns> |
| | | Dt_Task QueryCompletedConveyorLineTask(int taskNum, string currentAddress); |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®è®¾å¤ç¼å·ãä»»å¡ç±»ååç»(å¯é)æç
§ä¼å
级以åå建æ¶é´æåºæ¥è¯¢ä»»å¡æ± æ°å¢çä»»å¡ |
| | | /// </summary> |
| | | /// <param name="deviceNo">设å¤ç¼å·</param> |
| | | /// <param name="taskTypeGroup">ä»»å¡ç±»ååç»(å¯é)</param> |
| | | /// <returns></returns> |
| | | Dt_Task? QuertStackerCraneTask(string deviceNo, TaskTypeGroup? taskTypeGroup = null); |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®è®¾å¤ç¼å·ãå½åå°åæç
§ä¼å
级以åå建æ¶é´æåºæ¥è¯¢ä»»å¡æ± æ°å¢çä»»å¡ |
| | | /// </summary> |
| | | /// <param name="deviceNo">设å¤ç¼å·</param> |
| | | /// <param name="currentAddress">å½åå°å</param> |
| | | /// <returns>è¿åä»»å¡å®ä½å¯¹è±¡ï¼å¯è½ä¸ºnull</returns> |
| | | Dt_Task QueryStackerCraneTask(string deviceNo, string currentAddress = ""); |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®è®¾å¤ç¼å·æ¥å½åå¨åä»»å¡å· |
| | | /// </summary> |
| | | /// <param name="deviceNo">设å¤ç¼å·</param> |
| | | /// <param name="currentAddress">å½åå°å</param> |
| | | /// <returns>è¿åä»»å¡å®ä½å¯¹è±¡ï¼å¯è½ä¸ºnull</returns> |
| | | Dt_Task IngStackerCraneTask(string deviceNo); |
| | | Dt_Task IngStackerCraneTask2(string deviceNo); |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®è®¾å¤ç¼å·ãå½åå°åæç
§ä¼å
级以åå建æ¶é´æåºæ¥è¯¢ä»»å¡æ± å
¥åºç±»åçæ°å¢çä»»å¡ |
| | | /// </summary> |
| | | /// <param name="deviceNo">设å¤ç¼å·</param> |
| | | /// <param name="currentAddress">å½åå°å</param> |
| | | /// <returns>è¿åä»»å¡å®ä½å¯¹è±¡ï¼å¯è½ä¸ºnull</returns> |
| | | Dt_Task QueryStackerCraneInTask(string deviceNo, string currentAddress = ""); |
| | | |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®è®¾å¤ç¼å·ãå½åå°åæç
§ä¼å
级以åå建æ¶é´æåºæ¥è¯¢ä»»å¡æ± åºåºç±»åçæ°å¢çä»»å¡ |
| | | /// </summary> |
| | | /// <param name="deviceNo">设å¤ç¼å·</param> |
| | | /// <param name="currentAddress">å½åå°å</param> |
| | | /// <returns>è¿åä»»å¡å®ä½å¯¹è±¡ï¼å¯è½ä¸ºnull</returns> |
| | | Dt_Task QueryStackerCraneOutTask(string deviceNo, string currentAddress = ""); |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®è®¾å¤ç¼å·ãå½åå°åæç
§ä¼å
级以åå建æ¶é´æåºæ¥è¯¢ä»»å¡æ± åºåºç±»åçæ°å¢çä»»å¡ |
| | | /// </summary> |
| | | /// <param name="deviceNo">设å¤ç¼å·</param> |
| | | /// <param name="outStationCodes">å½åå°å</param> |
| | | /// <returns>è¿åä»»å¡å®ä½å¯¹è±¡éåï¼å¯è½ä¸ºnull</returns> |
| | | List<Dt_Task> QueryStackerCraneOutTasks(string deviceNo, List<string> outStationCodes); |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®è®¾å¤ç¼å·ãå½åå°åæç
§ä¼å
级以åå建æ¶é´æåºæ¥è¯¢ä»»å¡æ± åºåºç±»åçæ°å¢çä»»å¡ |
| | | /// </summary> |
| | | /// <param name="deviceNo">设å¤ç¼å·</param> |
| | | /// <param name="outStationCodes">å½åå°å</param> |
| | | /// <returns>è¿åä»»å¡å®ä½å¯¹è±¡éåï¼å¯è½ä¸ºnull</returns> |
| | | List<Dt_Task> QueryStationIsOccupiedOutTasks(string deviceNo, string SourceAddress); |
| | | |
| | | |
| | | /// <summary> |
| | | /// æ´æ°ä»»å¡å¼å¸¸ä¿¡æ¯æ¾ç¤º |
| | | /// </summary> |
| | | /// <param name="taskNum">ä»»å¡å·</param> |
| | | /// <param name="message">å¼å¸¸ä¿¡æ¯</param> |
| | | WebResponseContent UpdateTaskExceptionMessage(int taskNum, string message); |
| | | |
| | | /// <summary> |
| | | /// æ´æ°ä»»å¡ç¶æä¿¡æ¯ï¼å¹¶åæ¥è³WMS |
| | | /// </summary> |
| | | /// <param name="taskNum">ä»»å¡å·</param> |
| | | /// <param name="status">ä»»å¡ç¶æ</param> |
| | | void UpdateTaskStatus(int taskNum, int status); |
| | | |
| | | /// <summary> |
| | | /// å°ä»»å¡ç¶æä¿®æ¹ä¸ºä¸ä¸ä¸ªç¶æ |
| | | /// </summary> |
| | | /// <param name="taskNum">ä»»å¡å·</param> |
| | | WebResponseContent UpdateTaskStatusToNext(int taskNum); |
| | | |
| | | /// <summary> |
| | | /// å°ä»»å¡ç¶æä¿®æ¹ä¸ºä¸ä¸ä¸ªç¶æ |
| | | /// </summary> |
| | | /// <param name="task">ä»»å¡å®ä½å¯¹è±¡</param> |
| | | /// <returns></returns> |
| | | WebResponseContent UpdateTaskStatusToNext([NotNull] Dt_Task task); |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®ä»»å¡å·ãå½åå°åæ´æ°ä»»å¡ä½ç½®ä¿¡æ¯ |
| | | /// </summary> |
| | | /// <param name="taskNum">ä»»å¡å·</param> |
| | | /// <param name="currentAddress">å½åå°å</param> |
| | | /// <returns></returns> |
| | | Dt_Task? UpdatePosition(int taskNum, string currentAddress); |
| | | |
| | | /// <summary> |
| | | /// ä»»å¡å®æ |
| | | /// </summary> |
| | | /// <param name="taskNum">ä»»å¡ç¼å·</param> |
| | | /// <returns>è¿åå¤çç»æ</returns> |
| | | WebResponseContent StackCraneTaskCompleted(int taskNum); |
| | | |
| | | /// <summary> |
| | | /// æ¢å¤æèµ·ä»»å¡ |
| | | /// </summary> |
| | | /// <param name="taskNum">ä»»å¡å·</param> |
| | | /// <returns>è¿åå¤çç»æ</returns> |
| | | WebResponseContent TaskStatusRecovery(int taskNum); |
| | | |
| | | /// <summary> |
| | | /// 忻任å¡ç¶æ |
| | | /// </summary> |
| | | /// <param name="taskNum">ä»»å¡å·</param> |
| | | /// <returns>è¿åå¤çç»æ</returns> |
| | | WebResponseContent RollbackTaskStatusToLast(int taskNum); |
| | | /// <summary> |
| | | /// å端å±ç¤º |
| | | /// </summary> |
| | | /// <param name="model"></param> |
| | | /// <returns></returns> |
| | | WebResponseContent GetAgvStatusData(); |
| | | WebResponseContent GetAgvStatusData2(); |
| | | WebResponseContent GetAgvTaskData(); |
| | | /// <param name="task">ä»»å¡å®ä½</param> |
| | | /// <returns>Webååºå
容</returns> |
| | | /// <remarks> |
| | | /// 1. æ´æ°ä»»å¡ç¶æä¸º"é¾é¨æ¶å®æ" <br/> |
| | | /// 2. æ´æ°ç¸å
³è®¢å详æ
ç¶æä¸º"ç åæå" <br/> |
| | | /// 3. æ´æ°è®¢åè¡ä¸çæçæ°é <br/> |
| | | /// 4. æ ¹æ®ä»»å¡å®ææ
åµåéWebSocketéç¥ <br/> |
| | | /// 5. è®°å½æä½æ¥å¿å¹¶æäº¤äºå¡ <br/> |
| | | /// 6. å¼å¸¸æ¶åæ»äºå¡å¹¶è¿åéè¯¯ä¿¡æ¯ |
| | | /// </remarks> |
| | | WebResponseContent TaskComplete(Dt_Task task); |
| | | } |
| | | } |