| 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/WMS/MapSynchronizationDto.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/WMS/WMSController.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/KLSTaskMethods.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| 代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/WMS/MapSynchronizationDto.cs
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,44 @@ using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace WIDESEAWCS_DTO.WMS { /// <summary> /// å°å¾ç¼å·åæ¥ /// </summary> public class MapSynchronizationDto { /// <summary> /// ç¹ä½ /// </summary> public string pointCod { get; set; } /// <summary> /// ç¹ä½ç±»å /// </summary> public string pointType { get; set; } /// <summary> /// ä¹å¡ç±»åï¼1 颿ï¼2 æåï¼3è£åªï¼4é å¥ï¼ /// </summary> public int buinessType { get; set; } } public enum WMStakeType { Fabric=1, Finishedproduct, Cutting, Accessories } } ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs
@@ -33,6 +33,8 @@ using WIDESEAWCS_DTO.WMS; using WIDESEAWCS_Common; using WIDESEAWCS_Common.LocationEnum; using Microsoft.VisualBasic; using System.Web; namespace WIDESEAWCS_ITaskInfoService { @@ -222,5 +224,55 @@ /// <param name="locationStatusEnum"></param> /// <returns></returns> WebResponseContent UpdateLocationStatus(string LocationCode, DeviceTypeEnum deviceTypeEnum, LocationStatusEnum locationStatusEnum); WebResponseContent ModifyWMSLayoutZone(WMSUpdateLocationArea wMSUpdateLocationArea); /// <summary> /// 容卿µå¨è¯·æ± /// </summary> /// <param name="wMSContainerFlow"></param> /// <returns></returns> WebResponseContent ContainerFlow(WMSContainerFlow wMSContainerFlow); /// <summary> /// åºååºä½ä¿¡æ¯æ¥è¯¢ /// </summary> /// <param name="AreaCode">åºåå·</param> /// <returns></returns> WebResponseContent LocationInquiry(string AreaCode); /// <summary> /// å°å¾åæ¥ /// </summary> /// <param name="mapSynchronizationDto"></param> /// <returns></returns> public WebResponseContent MapSynchronize(MapSynchronizationDto mapSynchronizationDto); /// <summary> /// åºå ¥åºå®æ /// </summary> /// <param name=""></param> /// <returns></returns> public WebResponseContent InandoutCompleted(WMSInOutBoundCompleteFeedback wMSInOutBoundCompleteFeedback); /// <summary> /// æç®±éªè¯ /// </summary> /// <param name="taskCode">ä»»å¡å·</param> /// <param name="containerCode">容å¨ç¼ç </param> /// <returns></returns> public WebResponseContent MaterialBoxInspection(string taskCode ,string containerCode); /// <summary> /// wcsç§»åºæ°æ®åä¼ /// </summary> /// <param name="wMSMoveLocationFeedback"></param> /// <returns></returns> public WebResponseContent WcsMovingDataBack(WMSMoveLocationFeedback wMSMoveLocationFeedback); } } ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/WMS/WMSController.cs
@@ -2,6 +2,7 @@ using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using System.Threading.Tasks; using WIDESEAWCS_Core; using WIDESEAWCS_DTO.WMS; using WIDESEAWCS_ITaskInfoService; @@ -34,9 +35,26 @@ /// <param name="wMSCancelTask"></param> /// <returns></returns> [HttpPost, Route("CancelWMSTask"), AllowAnonymous] public WebResponseContent CancelWMSTask([FromBody] WMSCancelTask wMSCancelTask) public object CancelWMSTask([FromBody] WMSCancelTask wMSCancelTask) { return _taskService.CancelWMSTask(wMSCancelTask); WebResponseContent content = _taskService.CancelWMSTask(wMSCancelTask); if (!content.Status) { return new { code = "404", msg = content.Message }; } else { return new { code = "0", msg = content.Message, data = content.Data }; } } /// <summary> @@ -45,10 +63,81 @@ /// <param name="updateTaskPriority"></param> /// <returns></returns> [HttpPost, Route("UpdateWMSTaskPriority"), AllowAnonymous] public WebResponseContent UpdateWMSTaskPriority([FromBody] WMSUpdateTaskPriority updateTaskPriority) public object UpdateWMSTaskPriority([FromBody] WMSUpdateTaskPriority updateTaskPriority) { return _taskService.UpdateWMSTaskPriority(updateTaskPriority); WebResponseContent content = _taskService.UpdateWMSTaskPriority(updateTaskPriority); if (!content.Status) { return new { code = "404", msg = content.Message }; } else { return new { code = "0", msg = content.Message, data = content.Data }; } } /// <summary> /// ä¿®æ¹åºä½ååº /// </summary> /// <param name="WMSUpdateLocationArea"></param> /// <returns></returns> [HttpPost, Route("ModifyWMSLayoutZone"), AllowAnonymous] public object ModifyWMSLayoutZone([FromBody] WMSUpdateLocationArea wMSUpdateLocationArea) { WebResponseContent content = _taskService.ModifyWMSLayoutZone(wMSUpdateLocationArea); if (!content.Status) { return new { code = "404", msg = content.Message }; } else { return new { code = "0", msg = content.Message, data = content.Data }; } } /// <summary> /// åºååºä½ä¿¡æ¯æ¥è¯¢ /// </summary> /// <param name="AreaCode">åºåå·</param> /// <returns></returns> public object LocationInquiry(string AreaCode) { WebResponseContent content = _taskService.LocationInquiry(AreaCode); if (!content.Status) { return new { code = "404", msg = content.Message }; } else { return new { code = "0", msg = content.Message, data = content.Data }; } } } } ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/KLSTaskMethods.cs
@@ -158,15 +158,37 @@ { try { int containerType = taskDTO.containerCode.Contains("LLM") ? LocationTypeEnum.LargePallet.ObjToInt() : LocationTypeEnum.SmallPallet.ObjToInt();//è¿éæä¸ç¥éæ¯ä»ä¹ç±»å //è·åè´§ä½ä¿¡æ¯ Dt_HKLocationInfo? kLSLocationInfo = _hKLocationInfoService.Repository.QueryFirst(x => x.WarehouseId.ToString() == taskDTO.toAreaCode && x.EnableStatus == EnableStatusEnum.Normal.ObjToInt() && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() && x.LocationType == containerType); if (kLSLocationInfo == null) throw new Exception($"æªæ¾å°ç»ç¹åºåºã{taskDTO.toAreaCode}ãå¯ç¨ç©ºè´§ä½ï¼"); Dt_Task dt_Task = new Dt_Task() { TaskNum = GetTaskNum(nameof(SequenceEnum.SeqTaskNum)), WMSTaskNum = taskDTO.taskCode, WMSId = GetTaskNum(nameof(SequenceEnum.SeqTaskNum)), Grade = taskDTO.taskPriority, PalletCode = taskDTO.containerCode, Roadway = kLSLocationInfo.RoadwayNo, TaskState = TaskStatusEnum.New.ObjToInt(), TaskType = taskType, SourceAddress = taskDTO.fromLocationCode, CurrentAddress = taskDTO.fromLocationCode, NextAddress = kLSLocationInfo.LocationCode, TargetAddress = kLSLocationInfo.LocationCode, Creater = "WMS", }; kLSLocationInfo.LocationStatus = LocationStatusEnum.InLock.ObjToInt(); Db.Ado.BeginTran(); BaseDal.AddData(dt_Task); _hKLocationInfoService.Repository.UpdateData(kLSLocationInfo); Db.Ado.CommitTran(); return WebResponseContent.Instance.OK(); } catch (Exception ex) { Db.Ado.RollbackTran(); return WebResponseContent.Instance.Error(ex.Message); throw new Exception(ex.Message); } } /// <summary> @@ -179,17 +201,54 @@ { try { Dt_HKLocationInfo? hKLocationInfo = _hKLocationInfoService.Repository.QueryFirst(x => x.LocationCode == taskDTO.fromLocationCode); if (hKLocationInfo == null) throw new Exception($"æªæ¾å°èµ·ç¹åºä½ã{taskDTO.fromLocationCode}ãï¼"); if (hKLocationInfo.LocationStatus != LocationStatusEnum.InStock.ObjToInt()) throw new Exception($"èµ·ç¹åºä½ã{taskDTO.fromLocationCode}ãå½ååºä½ç¶æä¸å¯åºåºï¼"); Dt_Task dt_Task = new Dt_Task() { TaskNum = GetTaskNum(nameof(SequenceEnum.SeqTaskNum)), WMSTaskNum = taskDTO.taskCode, WMSId = GetTaskNum(nameof(SequenceEnum.SeqTaskNum)), Grade = taskDTO.taskPriority, PalletCode = taskDTO.containerCode, Roadway = hKLocationInfo.RoadwayNo, TaskState = TaskStatusEnum.New.ObjToInt(), TaskType = taskType, SourceAddress = taskDTO.fromLocationCode, CurrentAddress = taskDTO.fromLocationCode, NextAddress = taskDTO.toLocationCode, TargetAddress = taskDTO.toLocationCode, Creater = "WMS", }; hKLocationInfo.LocationStatus = LocationStatusEnum.OutLock.ObjToInt(); Db.Ado.BeginTran(); BaseDal.AddData(dt_Task); _hKLocationInfoService.Repository.UpdateData(hKLocationInfo); Db.Ado.CommitTran(); return WebResponseContent.Instance.OK(); } catch (Exception ex) { Db.Ado.RollbackTran(); return WebResponseContent.Instance.Error(ex.Message); throw new Exception(ex.Message); } } #endregion #region 5 跨楼å±è¿è¾ä»»å¡å建 public WebResponseContent CarryTask(TaskDTO taskDTO, int taskType) { return WebResponseContent.Instance.OK(); } #endregion #region 6 è£åªéè´§ public WebResponseContent CJCarryTaske(TaskDTO taskDTO, int taskType) { return WebResponseContent.Instance.OK(); } #endregion } } ´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
@@ -19,6 +19,7 @@ using SqlSugar; using System.Diagnostics.CodeAnalysis; using System.Threading.Tasks; using WIDESEAWCS_BasicInfoService; using WIDESEAWCS_Common; using WIDESEAWCS_Common.TaskEnum; using WIDESEAWCS_Core; @@ -107,6 +108,12 @@ case (int)TaskTypeEnum.CJOutbound: CreateHKNewOutTask(task, item.taskType); break; case (int)TaskTypeEnum.Carry: CarryTask(task, item.taskType); break; case (int)TaskTypeEnum.CJCarry: CJCarryTaske(task, item.taskType); break; default: break; } @@ -133,12 +140,9 @@ { Dt_Task dt_Task = BaseDal.QueryFirst(x => x.WMSTaskNum == wMSCancelTask.TaskCode); if (dt_Task == null) throw new Exception("æªæ¥è¯¢å°ä»»å¡å·ç¸å ³ä»»å¡"); if (dt_Task.TaskType == TaskTypeEnum.MLInbound.ObjToInt() || dt_Task.TaskType == TaskTypeEnum.CPInbound.ObjToInt() || dt_Task.TaskType == TaskTypeEnum.CJInbound.ObjToInt()) dt_Task.TaskType = TaskInStatusEnum.InCancel.ObjToInt(); else if (dt_Task.TaskType == TaskTypeEnum.MLOutbound.ObjToInt() || dt_Task.TaskType == TaskTypeEnum.CPOutbound.ObjToInt() || dt_Task.TaskType == TaskTypeEnum.CJOutbound.ObjToInt()) dt_Task.TaskType = TaskOutStatusEnum.OutCancel.ObjToInt(); dt_Task.TaskType = TaskOutStatusEnum.OutCancel.ObjToInt(); BaseDal.UpdateData(dt_Task); content.OK(); content.OK("忶任塿å",dt_Task); } catch (Exception ex) { @@ -162,7 +166,7 @@ if (dt_Task == null) throw new Exception("æªæ¥è¯¢å°ä»»å¡å·ç¸å ³ä»»å¡"); dt_Task.Grade = updateTaskPriority.taskPriority; BaseDal.UpdateData(dt_Task); content.OK(); content.OK("ä¿®æ¹ä»»å¡ä¼å 级æå", dt_Task); } catch (Exception ex) { @@ -175,21 +179,45 @@ /// ä¿®æ¹åºä½ååº /// </summary> /// <returns></returns> /// public WebResponseContent ModifyWMSLayoutZone(WMSUpdateLocationArea wMSUpdateLocationArea) { WebResponseContent content = new WebResponseContent(); try { var rgv = new List<Dt_RGVLocationInfo>(); var kls=new List<Dt_KLSLocationInfo>(); var hk=new List<Dt_HKLocationInfo>(); if(wMSUpdateLocationArea.WarehouseId == 1) { foreach (var LocationCode in wMSUpdateLocationArea.LocationCodes) { Dt_RGVLocationInfo dt_RGVLocationInfo = _rGVLocationInfoService.Repository.QueryFirst(x => x.LocationCode == LocationCode); UpdateLocationCode(dt_RGVLocationInfo,wMSUpdateLocationArea.UpdateAreaCode); rgv.Add(dt_RGVLocationInfo); } } if (wMSUpdateLocationArea.WarehouseId == 2) { foreach (var LocationCode in wMSUpdateLocationArea.LocationCodes) { Dt_KLSLocationInfo dt_KLSLocationInfo = _kLSLocationInfoService.Repository.QueryFirst(x => x.LocationCode == LocationCode); kls.Add(dt_KLSLocationInfo); } } if (wMSUpdateLocationArea.WarehouseId == 3) { foreach (var LocationCode in wMSUpdateLocationArea.LocationCodes) { Dt_HKLocationInfo dt_HKLocationInfo = _hKLocationInfoService.Repository.QueryFirst(x => x.LocationCode == LocationCode); hk.Add(dt_HKLocationInfo); } } Db.Ado.BeginTran(); _rGVLocationInfoService.UpdateData(rgv); _kLSLocationInfoService.UpdateData(kls); _hKLocationInfoService.UpdateData(hk); Db.Ado.CommitTran(); content.OK(); } catch (Exception ex) @@ -742,5 +770,75 @@ return Db.Ado.GetScalar($"SELECT NEXT VALUE FOR {sequenceName}").ObjToInt(); } } /// <summary> /// 容卿µå¨è¯·æ± /// </summary> /// <param name="wMSContainerFlow"></param> /// <returns></returns> /// <exception cref="NotImplementedException"></exception> public WebResponseContent ContainerFlow(WMSContainerFlow wMSContainerFlow) { return WebResponseContent.Instance.Error("该æ¥å£ææªå®ç°"); } /// <summary> /// åºååºä½ä¿¡æ¯æ¥è¯¢ /// </summary> /// <param name="AreaCode"></param> /// <returns></returns> /// <exception cref="NotImplementedException">åºåå·</exception> public WebResponseContent LocationInquiry(string AreaCode) { if (AreaCode == null) { //æ¥è¯¢è¾é线空æç¼åä¿¡æ¯æ¶è¿åç©ºä½æ°é } return WebResponseContent.Instance.OK(); } /// <summary> /// å°å¾åæ¥ /// </summary> /// <param name="mapSynchronizationDto"></param> /// <returns></returns> public WebResponseContent MapSynchronize(MapSynchronizationDto mapSynchronizationDto) { return WebResponseContent.Instance; } /// <summary> /// åºå ¥åºå®æ /// </summary> /// <param name=""></param> /// <returns></returns> /// <exception cref="NotImplementedException"></exception> public WebResponseContent InandoutCompleted(WMSInOutBoundCompleteFeedback wMSInOutBoundCompleteFeedback) { throw new NotImplementedException(); } /// <summary> /// æç®±éªè¯ /// </summary> /// <param name="taskCode">ä»»å¡å·</param> /// <param name="containerCode">容å¨ç¼ç </param> /// <returns></returns> public WebResponseContent MaterialBoxInspection(string taskCode, string containerCode) { throw new NotImplementedException(); } /// <summary> /// wcsç§»åºæ°æ®åä¼ /// </summary> /// <param name="wMSMoveLocationFeedback"></param> public WebResponseContent WcsMovingDataBack(WMSMoveLocationFeedback wMSMoveLocationFeedback) { throw new NotImplementedException(); } } }