Code Management/WCS/WIDESEAWCS_Client/src/api/http.js
@@ -19,7 +19,7 @@ } else if (process.env.NODE_ENV == 'production') { axios.defaults.baseURL = 'http://115.159.85.185:9291/'; axios.defaults.baseURL = 'http://127.0.0.1:9291/'; } if (!axios.defaults.baseURL.endsWith('/')) { axios.defaults.baseURL+="/"; Code Management/WCS/WIDESEAWCS_Client/src/extension/quartzJob/deviceInfo.js
@@ -31,7 +31,7 @@ icon: "el-icon-document", //按钮图标vue2版本见iview文档icon,vue3版本见element ui文档icon(注意不是element puls文档) type: "primary", //按钮样式vue2版本见iview文档button,vue3版本见element ui文档button onClick: function () { this.$Message.success("点击了按钮"); this.$Message.success("开启服务"); }, }); }, Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Core/Helper/HttpHelper.cs
@@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Net.Http.Headers; using System.Security.Policy; using System.Text; using System.Threading.Tasks; @@ -9,13 +10,16 @@ { public class HttpHelper { public static async Task<string> GetAsync(string serviceAddress, string contentType = "application/json", Dictionary<string, string>? headers = null) public static async Task<string> GetAsync(string serviceAddress, Dictionary<string, object> parameters, string contentType = "application/json", Dictionary<string, string>? headers = null) { try { string result = string.Empty; using HttpClient httpClient = new HttpClient(); httpClient.Timeout = new TimeSpan(0, 0, 60); // 将参数拼接到URL中 string queryString = string.Join("&", parameters.Select(x => $"{x.Key}={x.Value}")); serviceAddress += "?" + queryString; if (headers != null) { Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/WMS/RequestTaskDto.cs
@@ -1,10 +1,4 @@ using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace WIDESEAWCS_DTO.WMS namespace WIDESEAWCS_DTO.WMS { public class RequestTaskDto { @@ -22,5 +16,10 @@ /// 空托盘可入巷到 /// </summary> public string PositionList { get; set; } /// <summary> /// 任务类型 /// </summary> public string RequestType { get; set; } = string.Empty; } } Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
@@ -132,7 +132,7 @@ WebResponseContent content = new WebResponseContent(); try { #region 真实数据 #region 请求入库任务巷道 // TODO: 调用接口获取下一个地址 // 创建请求对象 RequestTaskDto request = new RequestTaskDto() @@ -429,7 +429,7 @@ if (task.TaskState == (int)TaskInStatusEnum.Line_InFinish) { #region 真实数据 #region 入库调用接口获取货位地址 // TODO: 调用接口获取货位地址 // 创建请求对象 RequestTaskDto taskDto = new RequestTaskDto() @@ -439,7 +439,7 @@ }; // 发送请求并等待响应 var abc = HttpHelper.PostAsync("http://127.0.0.1:5000/api/Task/RequestTaskAsync", taskDto.ToJsonString()).Result; var abc = HttpHelper.PostAsync("http://127.0.0.1:5000/api/Task/RequestLocationTaskAsync", taskDto.ToJsonString()).Result; if (abc == null) return content.Error(); // 反序列化响应内容 @@ -586,8 +586,11 @@ #region WMS同步任务完成 //var x = new { taskNum = taskNum }; var result = HttpHelper.GetAsync($"http://127.0.0.1:5000/api/Task/CompleteTaskAsync?taskNum={taskNum}").Result; var keys = new Dictionary<string, object>() { {"taskNum", taskNum} }; var result = HttpHelper.GetAsync($"http://127.0.0.1:5000/api/Task/CompleteTaskAsync", keys).Result; content = JsonConvert.DeserializeObject<WebResponseContent>(result); #endregion #region 更新任务状态 Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs
@@ -313,7 +313,7 @@ /// <summary> /// 陈化空托盘出库 /// 监测空托盘实盘出库 /// </summary> /// <param name="conveyorLine">输送线实例对象</param> /// <param name="command">读取的请求信息</param> @@ -335,42 +335,6 @@ } } #region ///// <summary> ///// 陈化实盘出库) ///// </summary> ///// <param name="conveyorLine">输送线实例对象</param> ///// <param name="command">读取的请求信息</param> ///// <param name="childDeviceCode">子设备编号</param> ///// <param name="index">线体当前bool读取偏移地址</param> //public void ChuanhuaOutbound(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode) //{ // CheckAndCreateTask(TaskOutboundTypeEnum.Outbound, childDeviceCode, "CHSC01", "001-001-001"); //} ///// 静置空托盘出库 ///// </summary> ///// <param name="conveyorLine">输送线实例对象</param> ///// <param name="command">读取的请求信息</param> ///// <param name="childDeviceCode">子设备编号</param> ///// <param name="index">线体当前bool读取偏移地址</param> //public void EmptyTrayOutbound(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int index) //{ // CheckAndCreateTask(TaskOutboundTypeEnum.OutTray, childDeviceCode, index, "JZSC01", "002-020-001"); //} ///// <summary> ///// 静置实盘出库 ///// </summary> ///// <param name="conveyorLine">输送线实例对象</param> ///// <param name="command">读取的请求信息</param> ///// <param name="childDeviceCode">子设备编号</param> ///// <param name="index">线体当前bool读取偏移地址</param> //public void JingzhiOutbound(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int index) //{ // CheckAndCreateTask(TaskOutboundTypeEnum.Outbound, childDeviceCode, index, "JZSC01", "002-000-001"); //} #endregion /// <summary> /// 检查任务并创建新任务 Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs
@@ -97,7 +97,11 @@ } // TODO调用WMS任务完成接口 var result = HttpHelper.GetAsync($"http://127.0.0.1:5000/api/Task/CompleteTaskAsync?taskNum={taskOut.TaskNum}").Result; var keys = new Dictionary<string, object>() { {"taskNum", taskOut.TaskNum} }; var result = HttpHelper.GetAsync($"http://127.0.0.1:5000/api/Task/CompleteTaskAsync", keys).Result; WebResponseContent content = JsonConvert.DeserializeObject<WebResponseContent>(result); if (content.Status) { Code Management/WMS/WIDESEA_WMSServer/WIDESEA_DTO/Basic/RequestTaskDto.cs
@@ -16,6 +16,11 @@ /// 空托盘可入巷到 /// </summary> public string PositionList { get; set; } /// <summary> /// 任务类型 /// </summary> public string RequestType { get; set; } = string.Empty; } public class RequestOutTaskDto Code Management/WMS/WIDESEA_WMSServer/WIDESEA_IStorageTaskService/Task/IDt_TaskService.cs
@@ -124,7 +124,7 @@ Task<WebResponseContent> CompleteAsync(int taskNum); /// <summary> /// 请求任务 /// 请求任务巷道 /// </summary> /// <param name="position"></param> /// <param name="areaCode"></param> @@ -132,6 +132,13 @@ /// <param name="type"></param> /// <returns></returns> Task<WebResponseContent> RequestTaskAsync(RequestTaskDto input); /// <summary> /// 请求任务货位 /// </summary> /// <param name="input"></param> /// <returns></returns> Task<WebResponseContent> UpdateExistingTask(RequestTaskDto input); /// <summary> /// 请求空托盘任务 @@ -157,4 +164,5 @@ /// <param name="input">请求数据</param> /// <returns></returns> Task<WebResponseContent> UpdateTaskStatus(int taskNum, int taskState); } Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/AgingInOrOutInput/AgingInOrOutInputService.cs
@@ -53,7 +53,7 @@ { input.SessionId = Guid.NewGuid().ToString(); input.EmployeeNo = "T00001"; input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ"); ; input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ"); var inputJson = input.ToDictionary(); var x = await HttpsClient.PostAsync("http://ts-momapp01:12020/api/MachineIntegration/AgingOutput", inputJson); content.OK(data: x); Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs
@@ -401,7 +401,7 @@ #region 请求任务入库 /// <summary> /// 请求任务 /// 请求任务巷道 /// </summary> /// <param name="input">请求模型</param> /// <returns>包含任务信息的响应内容</returns> @@ -416,7 +416,7 @@ var task = await BaseDal.QueryFirstAsync(x => x.PalletCode == input.PalletCode); if (task != null) { if (task.TaskState == (int)TaskInStatusEnum.InNew) //if (task.TaskState == (int)TaskInStatusEnum.InNew) { // 创建WMS任务 WMSTaskDTO taskDTO = new WMSTaskDTO() @@ -433,8 +433,6 @@ }; return content.OK(data: taskDTO); } content = await UpdateExistingTask(input, task); return content; } // 创建一个TrayCellsStatusDto对象,并赋值 TrayCellsStatusDto trayCells = new TrayCellsStatusDto() @@ -465,8 +463,8 @@ // 调用GetProcessResponseAsync方法,获取工艺响应 var processResponse = await GetProcessResponseAsync(process, input.Position); // 如果task不为null,则调用UpdateExistingTask方法,更新任务;否则调用CreateNewTask方法,创建新任务 content = task != null ? await UpdateExistingTask(input, task) : await CreateNewTask(input, processResponse); // 调用CreateNewTask方法,创建新任务 content = await CreateNewTask(input, processResponse); if (content.Status) { var isBox = await _boxingInfoRepository.AddDataNavAsync(boxing); @@ -483,6 +481,35 @@ return content; } /// <summary> /// 更新任务货位 /// </summary> /// <param name="input"></param> /// <returns></returns> public async Task<WebResponseContent> UpdateExistingTask(RequestTaskDto input) { WebResponseContent content = new WebResponseContent(); try { var task = await BaseDal.QueryFirstAsync(x => x.PalletCode == input.PalletCode); if (task == null) return content.Error($"暂未找到【{input.PalletCode}】的任务"); return content = await UpdateExistingTask(input, task); } catch (Exception err) { throw; } } /// <summary> /// 空托盘入库申请 /// </summary> /// <param name="input"></param> /// <returns></returns> public async Task<WebResponseContent> RequestTrayInTaskAsync(RequestTaskDto input) { WebResponseContent content = new WebResponseContent(); @@ -718,6 +745,12 @@ #region 任务状态更改 /// <summary> /// 更新任务状态&出库解盘 /// </summary> /// <param name="taskNum"></param> /// <param name="taskState"></param> /// <returns></returns> public async Task<WebResponseContent> UpdateTaskStatus(int taskNum, int taskState) { WebResponseContent content = new WebResponseContent(); @@ -726,6 +759,23 @@ var task = await BaseDal.QueryFirstAsync(x => x.TaskNum == taskNum); if (task == null) return content.Error("未找到任务"); if (taskState == (int)TaskOutStatusEnum.Line_OutFinish) { var taskHty = CreateHistoricalTask(task); await _unitOfWorkManage.UseTranAsync(async () => { var asb = await BaseDal.DeleteDataByIdAsync(task.TaskId); var asbHty = await _task_HtyRepository.AddDataAsync(taskHty) > 0; if (asb && asbHty) content.OK(); else throw new Exception(); }); content.OK(); } else { task.TaskState = taskState; var asb = await BaseDal.UpdateDataAsync(task); if (asb) @@ -733,6 +783,34 @@ else content.Error(); } } catch (Exception ex) { content.Error(ex.Message); } return content; } #endregion #region 出库解盘 /// <summary> /// 出库解盘接口 /// </summary> /// <param name="taskNum"></param> /// <returns></returns> public async Task<WebResponseContent> OutUnblockInterface(int taskNum) { WebResponseContent content = new WebResponseContent(); try { var task = await BaseDal.QueryFirstAsync(x => x.TaskNum == taskNum); if (task == null) return content.Error("未找到任务"); task.TaskState = (int)TaskOutStatusEnum.Line_OutFinish; var taskHty = CreateHistoricalTask(task); } catch (Exception ex) { content.Error(ex.Message); Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/TaskController.cs
@@ -46,7 +46,7 @@ } /// <summary> /// 任务请求 /// 请求任务巷道 /// </summary> /// <param name="input">请求数据</param> /// <returns></returns> @@ -54,6 +54,17 @@ public async Task<WebResponseContent> RequestTaskAsync([FromBody] RequestTaskDto input) { return await Service.RequestTaskAsync(input); } /// <summary> /// 请求任务货位 /// </summary> /// <param name="input">请求数据</param> /// <returns></returns> [HttpPost, AllowAnonymous, Route("RequestLocationTaskAsync")] public async Task<WebResponseContent> UpdateExistingTask([FromBody] RequestTaskDto input) { return await Service.UpdateExistingTask(input); } /// <summary> @@ -88,4 +99,5 @@ { return await Service.UpdateTaskStatus(input.TaskNum, input.TaskState); } }