项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskEnum/TaskTypeEnum.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/appsettings.json | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/GZJ/GZJJob.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTJob.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_WMSPart/LocationInfoService.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskEnum/TaskTypeEnum.cs
@@ -80,6 +80,6 @@ /// å¤©è½¦ç§»å¨ /// </summary> [Description("天车移å¨")] Mowe = 100, Mowe = 300, } } } ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/appsettings.json
@@ -19,8 +19,8 @@ //è¿æ¥å符串 //"ConnectionString": "HTI6FB1H05Krd07mNm9yBCNhofW6edA5zLs9TY~MNthRYW3kn0qKbMIsGp~3yyPDF1YZUCPBQx8U0Jfk4PH~ajNFXVIwlH85M3F~v_qKYQ3CeAz3q1mLVDn8O5uWt1~3Ut2V3KRkEwYHvW2oMDN~QIDXPxDgXN0R2oTIhc9dNu7QNaLEknblqmHhjaNSSpERdDVZIgHnMKejU_SL49tralBkZmDNi0hmkbL~837j1NWe37u9fJKmv91QPb~16JsuI9uu0EvNZ06g6PuZfOSAeFH9GMMIZiketdcJG3tHelo=", //"ConnectionString": "Data Source=.;Initial Catalog=WIDESEAWCS_TEST555;User ID=sa;Password=P@ssw0rd;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", //"ConnectionString": "server=localhost;Database=wideseawcs_yangji;Uid=root;Pwd=123456;Port=3306;Allow User Variables=True;AllowLoadLocalInfile=true", "ConnectionString": "server=localhost;Database=wideseawcs_yangji;Uid=root;Pwd=root;Port=3306;Allow User Variables=True;AllowLoadLocalInfile=true", "ConnectionString": "server=localhost;Database=wideseawcs_yangji;Uid=root;Pwd=123456;Port=3306;Allow User Variables=True;AllowLoadLocalInfile=true", //"ConnectionString": "server=localhost;Database=wideseawcs_yangji;Uid=root;Pwd=root;Port=3306;Allow User Variables=True;AllowLoadLocalInfile=true", ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
@@ -263,7 +263,8 @@ //ä¼å è¿åæ§è¡å°ä¸åçä»»å¡ç»§ç»æ§è¡ return task; } else { else { //æ¥è¯¢å¤©è½¦ç§»å¨ä»»å¡ task = BaseDal.QueryFirst(v => v.TaskType == (int)TaskMoveEnum.Mowe && v.TaskState == (int)TaskMoveStatusEnum.OutNewMove); if (task!=null) @@ -277,17 +278,22 @@ //{ // throw new Exception($"å½å任塿± ä¸å卿§è¡ä¸çä»»å¡,ä»»å¡å·:ã{task.TaskNum}ã"); //} if (task.TaskState!= (int)TaskMoveStatusEnum.OutNewMove) //if (task != null) //{ // if (task.TaskState != (int)TaskMoveStatusEnum.OutNewMove) // { // } //} if (workTpe.Equals("In")) { if (workTpe.Equals("In")) { task = BaseDal.QueryData(v => v.TaskType == (int)TaskInboundTypeEnum.Inbound && v.TaskState == (int)TaskInStatusEnum.InNew).OrderByDescending(v => v.Grade).OrderBy(v => v.CreateDate).First(); } else if (workTpe.Equals("Out")) { task = BaseDal.QueryData(v => (v.TaskType == (int)TaskOutboundTypeEnum.Outbound || v.TaskType == (int)TaskOutboundTypeEnum.OutInventory) && v.TaskState == (int)TaskOutStatusEnum.OutNew).OrderBy(v => v.CreateDate).First(); } task = BaseDal.QueryData(v => v.TaskType == (int)TaskInboundTypeEnum.Inbound && v.TaskState == (int)TaskInStatusEnum.InNew).OrderByDescending(v => v.Grade).OrderBy(v => v.CreateDate).First(); } else if (workTpe.Equals("Out")) { task = BaseDal.QueryData(v => (v.TaskType == (int)TaskOutboundTypeEnum.Outbound || v.TaskType == (int)TaskOutboundTypeEnum.OutInventory) && v.TaskState == (int)TaskOutStatusEnum.OutNew).OrderBy(v => v.CreateDate).First(); } } catch (Exception) { @@ -445,7 +451,7 @@ { task.TaskState = (int)TaskInStatusEnum.Line_InDownExecuting; } else if (status == 3 && task.TaskType == (int)TaskOutboundTypeEnum.Outbound || task.TaskType == (int)TaskOutboundTypeEnum.OutInventory) else if (status == 3 && (task.TaskType == (int)TaskOutboundTypeEnum.Outbound || task.TaskType == (int)TaskOutboundTypeEnum.OutInventory)) { task.TaskState = (int)TaskOutStatusEnum.Line_OutWownExecuting; } @@ -597,6 +603,8 @@ { throw new Exception(string.Format("天车æ¾è´§å®æä»»å¡æªæ¥è¯¢å°ä»»å¡å·{0}", taskNum)); } if (nawtask.TaskType == (int)TaskInboundTypeEnum.Inbound) { var batck = _batchinfoRepository.QueryFirst(v=>v.Id==1); @@ -648,6 +656,7 @@ taskhty.PalletCode = nawtask.PalletCode; taskhty.NextAddress = nawtask.NextAddress; taskhty.CurrentAddress = nawtask.CurrentAddress; //å¼å§æ°æ®åºäºå¡ _unitOfWorkManage.BeginTran(); _stockRepository.AddData(stock); @@ -689,8 +698,24 @@ taskhty.PalletCode = nawtask.PalletCode; taskhty.NextAddress = nawtask.NextAddress; taskhty.CurrentAddress = nawtask.CurrentAddress; //妿æ¾è´§ä½ç½®è¡æ¯40ï¼åç«é©¬çæä¸æ¡ç§»å¨ä»»å¡ //å¼å§åå»ºä»»å¡ Dt_Task Movstask = new Dt_Task(); Movstask.Roadway = "TC01"; Movstask.TaskType = (int)TaskMoveEnum.Mowe; Movstask.TaskState = (int)TaskMoveStatusEnum.OutNewMove; Movstask.SourceAddress = "0"; Movstask.TargetAddress = "1-5-1"; Movstask.NextAddress = "text"; Movstask.Grade = 1; Movstask.WMSId = 3; Movstask.Remark = 0; Movstask.PalletCode = "text"; Movstask.CurrentAddress = "text"; //å¼å§æ°æ®åºäºå¡ _unitOfWorkManage.BeginTran(); BaseDal.AddData(Movstask); _stockRepository.DeleteData(stock); _stockRepository.DeleteData(Towstock); _locationRepository.UpdateData(location); @@ -717,12 +742,38 @@ taskhty.PalletCode = nawtask.PalletCode; taskhty.NextAddress = nawtask.NextAddress; taskhty.CurrentAddress = nawtask.CurrentAddress; //å¼å§æ°æ®åºäºå¡ _unitOfWorkManage.BeginTran(); _taskhtyRepository.AddData(taskhty); BaseDal.DeleteData(nawtask); //æäº¤äºå¡ _unitOfWorkManage.CommitTran(); if (nawtask.TaskType == (int)TaskOutboundTypeEnum.OutInventory) { //å¼å§åå»ºä»»å¡ Dt_Task Movstask = new Dt_Task(); Movstask.Roadway = "TC01"; Movstask.TaskType = (int)TaskMoveEnum.Mowe; Movstask.TaskState = (int)TaskMoveStatusEnum.OutNewMove; Movstask.SourceAddress = "0"; Movstask.TargetAddress = "1-5-1"; Movstask.NextAddress = "text"; Movstask.Grade = 1; Movstask.WMSId = 3; Movstask.Remark = 0; Movstask.PalletCode = "text"; Movstask.CurrentAddress = "text"; //å¼å§æ°æ®åºäºå¡ _unitOfWorkManage.BeginTran(); BaseDal.AddData(Movstask); _taskhtyRepository.AddData(taskhty); BaseDal.DeleteData(nawtask); //æäº¤äºå¡ _unitOfWorkManage.CommitTran(); } else { //å¼å§æ°æ®åºäºå¡ _unitOfWorkManage.BeginTran(); _taskhtyRepository.AddData(taskhty); BaseDal.DeleteData(nawtask); //æäº¤äºå¡ _unitOfWorkManage.CommitTran(); } } content = WebResponseContent.Instance.OK(); } ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/GZJ/GZJJob.cs
@@ -85,22 +85,23 @@ try { #region çæå ¥åºä»»å¡ if (!OHTJob.oHTReadData.R_GZJ_isWork) { throw new Exception($"è§æ´æºæå ¥ä½¿ç¨ä¿¡å·ä¸ºfalse"); } //if (!OHTJob.oHTReadData.R_GZJ_isWork) //{ // throw new Exception($"è§æ´æºæå ¥ä½¿ç¨ä¿¡å·ä¸ºfalse"); //} var Inisout = _outStockRepository.QueryFirst(v => v.Id == 1); //å ¥åº if (Inisout.InOut==1) { Dt_Task task = new Dt_Task(); var storagemode = _storagemodeRepository.QueryFirst(v => v.Id == 1); if (OHTJob.oHTReadData.R_RGVMode && OHTJob.oHTReadData.R_DK_isready)//RGVä¸ææ¨¡å¼ï¼ä¸ä¸è·¨æ¶åæä¸æä¿¡å· if (OHTJob.oHTReadData.R_RGVMode && OHTJob.oHTReadData.R_XK_isready)//RGVä¸ææ¨¡å¼ï¼ä¸ä¸è·¨æ¶åæä¸æä¿¡å· { var station = _dt_stationInfoRepository.QueryFirst(v => v.msg == "ä¸è·¨æ¶å"); var station = _dt_stationInfoRepository.QueryFirst(v => v.msg == "西跨æ¶å"); task.SourceAddress = station.Row + "-" + station.Column + "-1"; var oldhtytask = _dt_taskRepositiry.QueryFirst(v => v.SourceAddress == task.SourceAddress); if (oldhtytask !=null) if (oldhtytask ==null) { task.TargetAddress = _locationInfoService.GetInLocation(storagemode.storagemode).LocationCode; task.Grade = 1; @@ -126,15 +127,15 @@ _dt_taskRepositiry.AddData(task); } } if (OHTJob.oHTReadData.R_RGVMode && OHTJob.oHTReadData.R_XK_isready)//RGVä¸ææ¨¡å¼ï¼ä¸è¥¿è·¨æ¶åæä¸æä¿¡å· if (OHTJob.oHTReadData.R_RGVMode && OHTJob.oHTReadData.R_DK_isready)//RGVä¸ææ¨¡å¼ï¼ä¸è¥¿è·¨æ¶åæä¸æä¿¡å· { var station = _dt_stationInfoRepository.QueryFirst(v => v.msg == "西跨æ¶å"); var station = _dt_stationInfoRepository.QueryFirst(v => v.msg == "ä¸è·¨æ¶å"); task.SourceAddress = station.Row + "-" + station.Column + "-1"; var oldhtytask = _dt_taskRepositiry.QueryFirst(v => v.SourceAddress == task.SourceAddress); if (oldhtytask!=null) if (oldhtytask==null) { task.TargetAddress = _locationInfoService.GetInLocation(storagemode.storagemode).LocationCode; var DKstation = _dt_stationInfoRepository.QueryFirst(v => v.msg == "ä¸è·¨æ¶å"); var DKstation = _dt_stationInfoRepository.QueryFirst(v => v.msg == "西跨æ¶å"); string address = DKstation.Row + "-" + DKstation.Column + "-1"; var oldtask = _dt_taskRepositiry.QueryFirst(v => v.SourceAddress == address); if (oldtask != null && oldtask.TaskState == (int)TaskInStatusEnum.InNew) @@ -167,12 +168,12 @@ _dt_taskRepositiry.AddData(task); } } if (OHTJob.oHTReadData.R_CCMode && OHTJob.oHTReadData.R_XK_isready)//人工åè½¦ä¸ææ¨¡å¼ï¼ä¸è¥¿è·¨æ¶åæä¸æä¿¡å· if (OHTJob.oHTReadData.R_CCMode && OHTJob.oHTReadData.R_DK_isready)//人工åè½¦ä¸ææ¨¡å¼ï¼ä¸è¥¿è·¨æ¶åæä¸æä¿¡å· { var station = _dt_stationInfoRepository.QueryFirst(v => v.msg == "西跨æ¶å"); var station = _dt_stationInfoRepository.QueryFirst(v => v.msg == "ä¸è·¨æ¶å"); task.SourceAddress = station.Row + "-" + station.Column + "-1"; var oldhtytask = _dt_taskRepositiry.QueryFirst(v => v.SourceAddress == task.SourceAddress); if (oldhtytask!=null) if (oldhtytask==null) { task.TargetAddress = _locationInfoService.GetInLocation(storagemode.storagemode).LocationCode; task.Grade = 1; @@ -198,15 +199,15 @@ _dt_taskRepositiry.AddData(task); } } if (OHTJob.oHTReadData.R_CCMode && OHTJob.oHTReadData.R_DK_isready)//人工åè½¦ä¸ææ¨¡å¼ï¼ä¸ä¸è·¨æ¶åæä¸æä¿¡å· if (OHTJob.oHTReadData.R_CCMode && OHTJob.oHTReadData.R_XK_isready)//人工åè½¦ä¸ææ¨¡å¼ï¼ä¸ä¸è·¨æ¶åæä¸æä¿¡å· { var station = _dt_stationInfoRepository.QueryFirst(v => v.msg == "ä¸è·¨æ¶å"); var station = _dt_stationInfoRepository.QueryFirst(v => v.msg == "西跨æ¶å"); task.SourceAddress = station.Row + "-" + station.Column + "-1"; var oldhtytask = _dt_taskRepositiry.QueryFirst(v => v.SourceAddress == task.SourceAddress); if (true) if (oldhtytask == null) { task.TargetAddress = _locationInfoService.GetInLocation(storagemode.storagemode).LocationCode; var XKstation = _dt_stationInfoRepository.QueryFirst(v => v.msg == "西跨æ¶å"); var XKstation = _dt_stationInfoRepository.QueryFirst(v => v.msg == "ä¸è·¨æ¶å"); string address = XKstation.Row + "-" + XKstation.Column + "-1"; var oldtask = _dt_taskRepositiry.QueryFirst(v => v.SourceAddress == address); if (oldtask != null && oldtask.TaskState == (int)TaskInStatusEnum.InNew) @@ -241,6 +242,7 @@ } } //ç´æ¥åºåº else if(Inisout.InOut == 2) { if (!OHTJob.oHTReadData.R_ZXJ_TCMode || !OHTJob.oHTReadData.R_HC_isReadyWork) @@ -248,15 +250,22 @@ throw new Exception($"æ´å½¢æºä¸å±äºå¤©è½¦ä¸ææ¨¡å¼æå¤©è½¦æ¾æ¿ä¿¡å·ä¸ºfalse"); } Dt_Task outtask = new Dt_Task(); if (OHTJob.oHTReadData.R_RGVMode && OHTJob.oHTReadData.R_DK_isready ) //å°è½¦ä¸æ if (OHTJob.oHTReadData.R_RGVMode && OHTJob.oHTReadData.R_XK_isready ) { var Stastation = _dt_stationInfoRepository.QueryFirst(v => v.msg == "ä¸è·¨æ¶å"); var Stastation = _dt_stationInfoRepository.QueryFirst(v => v.msg == "西跨æ¶å"); outtask.SourceAddress = Stastation.Row + "-" + Stastation.Column + "-1"; } else if (OHTJob.oHTReadData.R_RGVMode && OHTJob.oHTReadData.R_XK_isready) else if (OHTJob.oHTReadData.R_RGVMode && OHTJob.oHTReadData.R_DK_isready) { var Stastation = _dt_stationInfoRepository.QueryFirst(v => v.msg == "西跨æ¶å"); var Stastation = _dt_stationInfoRepository.QueryFirst(v => v.msg == "ä¸è·¨æ¶å"); outtask.SourceAddress = Stastation.Row + "-" + Stastation.Column + "-1"; } //äººå·¥ä¸æ else if (OHTJob.oHTReadData.R_CCMode && OHTJob.oHTReadData.R_DK_isready) { var Stastation = _dt_stationInfoRepository.QueryFirst(v => v.msg == "ä¸è·¨æ¶å"); outtask.SourceAddress = Stastation.Row + "-" + Stastation.Column + "-1"; } else if (OHTJob.oHTReadData.R_CCMode && OHTJob.oHTReadData.R_XK_isready) @@ -264,13 +273,9 @@ var Stastation = _dt_stationInfoRepository.QueryFirst(v => v.msg == "西跨æ¶å"); outtask.SourceAddress = Stastation.Row + "-" + Stastation.Column + "-1"; } else if (OHTJob.oHTReadData.R_CCMode && OHTJob.oHTReadData.R_DK_isready) { var Stastation = _dt_stationInfoRepository.QueryFirst(v => v.msg == "ä¸è·¨æ¶å"); outtask.SourceAddress = Stastation.Row + "-" + Stastation.Column + "-1"; } var Endstation = _dt_stationInfoRepository.QueryFirst(v => v.msg == "æ´å½¢æºæ¾æä½"); //æ·»å ä»»å¡ä¿¡æ¯ outtask.TargetAddress = Endstation.Row + "-" + Endstation.Column + "-1"; outtask.Grade = 1; outtask.NextAddress = Endstation.Row + "-" + Endstation.Column + "-1"; @@ -280,9 +285,11 @@ outtask.WMSId = 3; outtask.PalletCode = "text"; outtask.CurrentAddress = "text"; var oldtask = _dt_taskRepositiry.QueryFirst(v => v.SourceAddress == outtask.SourceAddress &&v.TargetAddress== outtask.SourceAddress); //鲿¢éå¤ä»»å¡ var oldtask = _dt_taskRepositiry.QueryFirst(v => v.SourceAddress == outtask.SourceAddress &&v.TargetAddress== outtask.TargetAddress); if (oldtask == null) { //çæä»»å¡ _dt_taskRepositiry.AddData(outtask); } } ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/OHT/OHTJob.cs
@@ -54,10 +54,10 @@ var ZXJdevice = Storage.Devices.Find(v => v.DeviceName == "鳿æ´å½¢æº"); //è§æ´æºPLC对象 var GZJevice = Storage.Devices.Find(v => v.DeviceName == "é³æè§æ´æº"); if (!device.Communicator.IsConnected || !ZXJdevice.Communicator.IsConnected || !GZJevice.Communicator.IsConnected) { return Task.CompletedTask; } //if (!device.Communicator.IsConnected || !ZXJdevice.Communicator.IsConnected || !GZJevice.Communicator.IsConnected) //{ // return Task.CompletedTask; //} try { #region å¤©è½¦å®æä»»å¡é»è¾ @@ -71,11 +71,13 @@ { throw new Exception(string.Format("天车åè´§å®æä»»å¡æªæ¥è¯¢å°ä»»å¡å·{0}", oHTReadData.R_TaskNumber)); } //å ¥åº if (nawtask.TaskType == (int)TaskInboundTypeEnum.Inbound) { //妿任å¡çç¶ææ¯å¤©è½¦å ¥åºåè´§æ§è¡ä¸ //妿任å¡çç¶ææ¯å¦æ¯å¤©è½¦å ¥åºåè´§æ§è¡ä¸ if (nawtask.TaskState == (int)TaskInStatusEnum.Line_InGrabExecuting) { //ä¿®æ¹ç¶æ WebResponseContent result = _taskService.UpdateTaskStatusToLine_Ingrab(nawtask); if (result.Status) { @@ -83,11 +85,13 @@ } } } //åºåº else if (nawtask.TaskType == (int)TaskOutboundTypeEnum.Outbound) { //妿任å¡ç¶ææ¯å¤©è½¦åºåºåè´§æ§è¡ä¸ //妿任å¡ç¶ææ¯å¦æ¯å¤©è½¦åºåºåè´§æ§è¡ä¸ if (nawtask.TaskState == (int)TaskOutStatusEnum.Line_OutGrabExecuting) { //ä¿®æ¹ç¶æ WebResponseContent result = _taskService.UpdateTaskStatusToLine_Outgrab(nawtask); if (result.Status) { @@ -95,8 +99,10 @@ } } } //ç´æ¥åºåº else if (nawtask.TaskType == (int)TaskOutboundTypeEnum.OutInventory) { //ä¿®æ¹ç¶æ WebResponseContent result = _taskService.UpdateTaskStatusToLine_Outgrab(nawtask); if (result.Status) { ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/WIDESEAWCS_WMSPart/LocationInfoService.cs
@@ -138,7 +138,9 @@ { //æ¥æ¾ç¸é»çåºä½ Dt_LocationInfo Towlocation = new Dt_LocationInfo(); var Onelocation = BaseDal.QueryFirst(v => v.LocationCode == location.LocationCode); if (Onelocation.Depth == 1) { Towlocation = BaseDal.QueryFirst(v => v.Row == Onelocation.Row && v.Column == Onelocation.Column && v.Depth == 2);