qinchulong
2025-03-04 6acfe6b52441943b1ceb8468a2235326dad880fe
ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/GZJ/GZJJob.cs
@@ -29,6 +29,7 @@
using WIDESEAWCS_QuartzJob.StackerCrane.Enum;
using WIDESEAWCS_TaskInfoService;
using WIDESEAWCS_Tasks.OHT;
using static System.Collections.Specialized.BitVector32;
namespace WIDESEAWCS_Tasks
{
@@ -88,6 +89,9 @@
                    {
                        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上料模式,且东跨架子有上料信号
@@ -164,7 +168,59 @@
                    task.TaskState = (int)TaskInStatusEnum.InNew;
                    task.PalletCode = "text";
                    task.CurrentAddress = "text";
                        task.WMSId = 3;
                        var oldhtytask = _dt_taskRepositiry.QueryFirst(v => v.SourceAddress == task.SourceAddress);
                        if (oldhtytask == null)
                        {
                    _dt_taskRepositiry.AddData(task);
                        }
                    }
                    else if(Inisout.InOut == 2)
                    {
                        if (!OHTJob.oHTReadData.R_ZXJ_TCMode || !OHTJob.oHTReadData.R_HC_isReadyWork)
                        {
                            throw new Exception($"整形机不属于天车上料模式或天车放板信号为false");
                        }
                        Dt_Task outtask = new Dt_Task();
                        if (OHTJob.oHTReadData.R_RGVMode && 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_RGVMode && OHTJob.oHTReadData.R_XK_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)
                        {
                            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";
                        outtask.Roadway = "TC01";
                        outtask.TaskType = (int)TaskOutboundTypeEnum.OutInventory;
                        outtask.TaskState = (int)TaskOutStatusEnum.OutNew;
                        outtask.WMSId = 3;
                        outtask.PalletCode = "text";
                        outtask.CurrentAddress = "text";
                        var oldtask = _dt_taskRepositiry.QueryFirst(v => v.SourceAddress == outtask.SourceAddress &&v.TargetAddress== outtask.SourceAddress);
                        if (oldtask == null)
                        {
                            _dt_taskRepositiry.AddData(outtask);
                        }
                    }
                    #endregion
                }
@@ -181,10 +237,8 @@
                        throw new Exception($"整形机投入使用信号为false");
                    }
                    var isout = _outStockRepository.QueryFirst(v => v.Id == 1);
                    if (isout.isout != 1)
                    if (isout.isout == 1)
                    {
                        throw new Exception($"当前系统设置为不出库模式");
                    }
                    if (!OHTJob.oHTReadData.R_ZXJ_TCMode || !OHTJob.oHTReadData.R_HC_isReadyWork)
                    {
                        throw new Exception($"整形机不属于天车上料模式或天车放板信号为false");
@@ -245,6 +299,8 @@
                    _dt_taskRepositiry.AddData(outtask);
                    _StockInfoRepository.UpdateData(stocks[0]);
                    _unitOfWorkManage.CommitTran();
                    }
                    #endregion
                }
                catch (Exception ex)