From b895b34c3288ad887ddc34787136b0f28bc58edc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BF=97=E9=93=AD=20=E5=90=95?= <896951544@qq.com> Date: Thu, 20 Mar 2025 14:52:35 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=B0=83=E7=94=A8LCS?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E7=9B=B8=E5=85=B3=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- WcfControlMonitorHost/app.config | 9 ++++-- WcfControlMonitorLib/CCallService.cs | 41 ++++++++++++++-------------- WcfControlMonitorLib/CStaticClass.cs | 2 +- 3 files changed, 28 insertions(+), 24 deletions(-) diff --git a/WcfControlMonitorHost/app.config b/WcfControlMonitorHost/app.config index 7d682a5..4e6f581 100644 --- a/WcfControlMonitorHost/app.config +++ b/WcfControlMonitorHost/app.config @@ -103,11 +103,14 @@ <!--立库到化成B倒箔间任务每个巷道最多两个--> <add key="HCBLanewayOutDB" value="2" /> <!--WMS服务地址1任务状态--> - <add key="ManageServiceAddress" value="http://192.168.0.213:18285/api/v1/result" /> + <add key="ManageServiceAddress" value="http://localhost:5252/lcs/thirdParty/taskStatusReport" /> <!--WMS服务地址2任务删除--> - <add key="ManageServiceAddressTwo" value="http://192.168.0.213:18285/api/v1/cancel" /> + <add key="ManageServiceAddressTwo" value="http://localhost:5252/lcs/thirdParty/inboundApply" /> <!--WMS服务地址3设备状态--> - <add key="ManageServiceAddressThree" value="http://192.168.0.213:18285/api/v1/state" /> + <add key="ManageServiceAddressThree" value="http://localhost:5252/lcs/thirdParty/wcsTaskInfo" /> + <add key="ManageServiceAddressFour" value="http://localhost:5252/api/lcs/thirdParty/requestRescore" /> + <add key="ManageServiceAddressFive" value="http://localhost:5252/api/lcs/thirdParty/autoMoveOut" /> + <!--调度系统显示的名称--> <add key="SystemName" value="WCS服务端" /> <add key="StockCodeCheck" value="^[B|D|G|P][A-Z][0-9]{4}$" /> diff --git a/WcfControlMonitorLib/CCallService.cs b/WcfControlMonitorLib/CCallService.cs index 954e860..bd5459a 100644 --- a/WcfControlMonitorLib/CCallService.cs +++ b/WcfControlMonitorLib/CCallService.cs @@ -1031,7 +1031,7 @@ namespace WcfControlMonitorLib /// <param name="ask_data"></param> /// <param name="resp_data"></param> /// <returns></returns> - public static string UpdateTaskStatusToWMS(int Managertask_Id,out WMS_WCS_PARAM_UPDATE resp_data) + public static string UpdateTaskStatusToWMS(int Managertask_Id,int state,out WMS_WCS_PARAM_UPDATE resp_data) { string bResult = string.Empty; bool sResult = true; @@ -1041,38 +1041,39 @@ namespace WcfControlMonitorLib { sql.Clear(); DataView data = new DataView(); - sql.Append(string.Format("select CONTROL_ID,MANAGE_ID,CONTROL_TASK_TYPE, STOCK_BARCODE, START_WAREHOUSE_CODE,START_DEVICE_CODE, END_WAREHOUSE_CODE, END_DEVICE_CODE, CONTROL_BEGIN_TIME,CONTROL_STATUS,NeedAGV from IO_CONTROL where FMANAGE_ID={0}", Managertask_Id)); + sql.Append(string.Format("select * from IO_CONTROL where CONTROL_ID={0}", Managertask_Id)); data = dbo.ExceSQL(sql.ToString()).Tables[0].DefaultView; WCS_WMS_PARAM_UPDATE upd = new WCS_WMS_PARAM_UPDATE();//传参解析使用 if (data.Count > 0) { upd.taskId = Managertask_Id.ToString(); - upd.taskStatus = Convert.ToInt32(data[0]["CONTROL_STATUS"]); + upd.taskStatus = state; if (Convert.ToInt32(data[0]["CONTROL_TASK_TYPE"]) == 1) { - upd.endSpaceCode = data[0]["END_WAREHOUSE_CODE"].ToString(); + upd.endSpaceCode = data[0]["END_DEVICE_CODE"].ToString(); } else if (Convert.ToInt32(data[0]["CONTROL_TASK_TYPE"]) == 2) { - upd.startSpaceCode = data[0]["START_WAREHOUSE_CODE"].ToString(); + upd.startSpaceCode = data[0]["START_DEVICE_CODE"].ToString(); } else if (Convert.ToInt32(data[0]["CONTROL_TASK_TYPE"]) == 3) { - upd.startSpaceCode = data[0]["START_WAREHOUSE_CODE"].ToString(); - upd.endSpaceCode = data[0]["END_WAREHOUSE_CODE"].ToString(); + upd.startSpaceCode = data[0]["START_DEVICE_CODE"].ToString(); + upd.endSpaceCode = data[0]["END_DEVICE_CODE"].ToString(); } - upd.sendAgv =data[0]["NeedAGV"].ToString(); + //upd.sendAgv =data[0]["NeedAGV"].ToString(); upd.reportTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); upd.reportInfo = null; - WMS_WCS_PARAM_UPDATE upd_res = new WMS_WCS_PARAM_UPDATE();//返回值 + // WMS_WCS_PARAM_UPDATE upd_res = new WMS_WCS_PARAM_UPDATE();//返回值 string data_json_string = Model.JsonHelper.Serializer(upd); sResult = Invok_WMS_new(data_json_string, CStaticClass.ManageServiceAddress, out outJson); - + if (sResult == false) { + resp_data = Model.JsonHelper.Deserialize<WMS_WCS_PARAM_UPDATE>(outJson); bResult = outJson; } else { - upd_res = Model.JsonHelper.Deserialize<WMS_WCS_PARAM_UPDATE>(outJson);//WMS的返回值需要反序列化 + resp_data = Model.JsonHelper.Deserialize<WMS_WCS_PARAM_UPDATE>(outJson);//WMS的返回值需要反序列化 } } @@ -1382,17 +1383,17 @@ namespace WcfControlMonitorLib //int FControlTaskType = 0; sql.Clear(); - sql.Append("select * from IO_CONTROL WHERE CONTROL_STATUS < 900 and CONTROL_Status<>0 and IsSendLCS=0 and CONTROL_TASK_TYPE=1");//查询还未发送给WMS但是任务状态已经是拆分完的状态的任务 数据库加一个IsSendLCS字段 + sql.Append("select * from IO_CONTROL WHERE CONTROL_STATUS < 900 and CONTROL_Status<>0 and IsSendLCS=0 ");//查询还未发送给WMS但是任务状态已经是拆分完的状态的任务 数据库加一个IsSendLCS字段 DataView dataIOtaskstart = dbo.ExceSQL(sql.ToString()).Tables[0].DefaultView; if (dataIOtaskstart.Count > 0) { for (int i = 0; i < dataIOtaskstart.Count; i++) { - CommonClassLib.CCarryConvert.WriteDarkCasket("CallService", "taskStatusReporstart", "准备开始调用wms服务:", $"ID:{dataIOtaskstart[i]["MANAGE_ID"]},条码{dataIOtaskstart[i]["STOCK_BARCODE"]}"); - UpdateTaskStatusToWMS(Convert.ToInt16(dataIOtaskstart[i]["MANAGE_ID"]),out WMS_WCS_PARAM_UPDATE resp_data); + CommonClassLib.CCarryConvert.WriteDarkCasket("CallService", "taskStatusReporstart", "准备开始调用wms服务:", $"ID:{dataIOtaskstart[i]["CONTROL_ID"]},条码{dataIOtaskstart[i]["STOCK_BARCODE"]}"); + UpdateTaskStatusToWMS(Convert.ToInt16(dataIOtaskstart[i]["CONTROL_ID"]),1,out WMS_WCS_PARAM_UPDATE resp_data);//1任务开始 if (resp_data.code == 0) { //成功 sql.Clear(); - sql.Append($"update IO_Control set IsSendLCS=1 where MANAGE_ID={dataIOtaskstart[i]["MANAGE_ID"]}");//查询还未发送给WMS但是任务状态已经是拆分完的状态的任务 + sql.Append($"update IO_Control set IsSendLCS=1 where CONTROL_ID={dataIOtaskstart[i]["CONTROL_ID"]}");//查询还未发送给WMS但是任务状态已经是拆分完的状态的任务 dbo.ExceSQL(sql.ToString()); } else { @@ -1401,18 +1402,18 @@ namespace WcfControlMonitorLib } } sql.Clear(); - sql.Append("select * from IO_CONTROL WHERECONTROL_STATUS = 999 OR CONTROL_STATUS = 900 OR CONTROL_STATUS = 970 and IsSendLCS=1 and CONTROL_TASK_TYPE=1");//查询还未发送给WMS但是任务状态已经是完成的状态的任务 + sql.Append("select * from IO_CONTROL WHERE CONTROL_STATUS = 999 OR CONTROL_STATUS = 900 OR CONTROL_STATUS = 970 and IsSendLCS=1 and CONTROL_TASK_TYPE=1");//查询还未发送给WMS但是任务状态已经是完成的状态的任务 DataView dataIOtask2finish = dbo.ExceSQL(sql.ToString()).Tables[0].DefaultView; if (dataIOtask2finish.Count > 0) { for (int i = 0; i < dataIOtask2finish.Count; i++) { - CommonClassLib.CCarryConvert.WriteDarkCasket("CallService", "taskStatusReporfinish", "准备开始调用wms服务:", $"ID:{dataIOtask2finish[i]["MANAGE_ID"]},条码{dataIOtask2finish[i]["STOCK_BARCODE"]}"); - UpdateTaskStatusToWMS(Convert.ToInt16(dataIOtask2finish[i]["MANAGE_ID"]), out WMS_WCS_PARAM_UPDATE resp_data); + CommonClassLib.CCarryConvert.WriteDarkCasket("CallService", "taskStatusReporfinish", "准备开始调用wms服务:", $"ID:{dataIOtask2finish[i]["CONTROL_ID"]},条码{dataIOtask2finish[i]["STOCK_BARCODE"]}"); + UpdateTaskStatusToWMS(Convert.ToInt16(dataIOtask2finish[i]["CONTROL_ID"]),2, out WMS_WCS_PARAM_UPDATE resp_data);//2任务结束 if (resp_data.code == 0) { //成功 sql.Clear(); - sql.Append($"delete from IO_CONTROL where MANAGE_ID={dataIOtask2finish[i]["MANAGE_ID"]}");//查询还未发送给WMS但是任务状态已经是拆分完的状态的任务 + sql.Append($"delete from IO_CONTROL where CONTROL_ID={dataIOtask2finish[i]["CONTROL_ID"]}");//查询还未发送给WMS但是任务状态已经是拆分完的状态的任务 dbo.ExceSQL(sql.ToString()); } else { @@ -1421,7 +1422,7 @@ namespace WcfControlMonitorLib } } sql.Clear(); - sql.Append("select * from IO_CONTROL WHERECONTROL_STATUS = 999 OR CONTROL_STATUS = 900 OR CONTROL_STATUS = 970 and CONTROL_TASK_TYP991");//直接删除回退任务 + sql.Append("select * from IO_CONTROL WHERE CONTROL_STATUS = 999 OR CONTROL_STATUS = 900 OR CONTROL_STATUS = 970 and CONTROL_TASK_TYP991");//直接删除回退任务 DataView dataIOBacktaskfinish = dbo.ExceSQL(sql.ToString()).Tables[0].DefaultView; if (dataIOBacktaskfinish.Count > 0) { diff --git a/WcfControlMonitorLib/CStaticClass.cs b/WcfControlMonitorLib/CStaticClass.cs index 38b8d67..00f11c0 100644 --- a/WcfControlMonitorLib/CStaticClass.cs +++ b/WcfControlMonitorLib/CStaticClass.cs @@ -114,7 +114,7 @@ namespace WcfControlMonitorLib //20091107 - static string _ManageServiceAddress = "http://localhost:525/lcs/thirdParty/taskStatusReport";//WCS ����ִ�й��̣�������ִ�е�״̬�ش��� LCS ϵͳ�� + static string _ManageServiceAddress = "http://localhost:5252/lcs/thirdParty/taskStatusReport";//WCS ����ִ�й��̣�������ִ�е�״̬�ش��� LCS ϵͳ�� static string _ManageServiceAddress2 = "http://localhost:5252/lcs/thirdParty/inboundApply";//��������ҵ��Ҫ�����ⲿɨ���豸���������λ��У���Ƿ������ʱ��WCS ͨ���� �ӿ��� LCS ���롣 static string _ManageServiceAddress3 = "http://localhost:5252/lcs/thirdParty/wcsTaskInfo";//WCS ֪ͨ LCS ���� AGV ȡ�� static string _ManageServiceAddress4 = "http://localhost:5252/api/lcs/thirdParty/requestRescore";//WCS ͨ���ýӿ����� LCS ��Ŀ���λ�������·��䡣