瀏覽代碼

1138入库产线调整

xu.lu 8 月之前
父節點
當前提交
fa2fc7ed99

+ 52 - 1
WCS.WorkEngineering/Systems/AgvSystems.cs

@@ -5,6 +5,7 @@ using ServiceCenter.Extensions;
 using ServiceCenter.Logs;
 using ServiceCenter.Redis;
 using ServiceCenter.SqlSugars;
+using SqlSugar;
 using System.ComponentModel;
 using WCS.Core;
 using WCS.Entity;
@@ -153,7 +154,7 @@ namespace WCS.WorkEngineering.Systems
 
                                     //找到对应WCS任务
                                     var task = db.Default.Queryable<WCS_TaskInfo>().First(v => v.AgvTaskID == agvInfo.ID);
-                                    if (task == null) throw new Exception($"AGV任务{agvInfo.ID}未找到对应WCS任务");
+                                    if (task == null) throw new Exception($"AGV任务{agvInfo.ID}未找到对应WCS任务");                                   
                                     this.ExRecord(obj.Entity.Code, $"AGV任务{agvInfo.ID}开始进行巷道分配");
                                     //向WMS获取巷道优先级'
                                     var res = WmsApi.GetTunnelPriorityList(task.ID);
@@ -286,6 +287,16 @@ namespace WCS.WorkEngineering.Systems
                                         throw new Exception("WCS任务:" + task.ID + "已经分配过巷道,不允许重新分配不同巷道");
                                     }
 
+                                    if (task.BusType == "二楼湿拉空轮回立库")
+                                    {
+                                        //获取在途任务
+                                        var n = db.Default.Queryable<WCS_TaskInfo>().Count(v => v.BusType == "二楼湿拉空轮回立库" && v.Status == Entity.TaskStatus.AGVExecution && v.AddrTo == "srm" && v.AddrNext == null);
+                                        var config = db.Default.Queryable<hjSysConfig>().First(v => v.Code == "MaxAgvTaskNum");
+                                        if (nextPos.Entity.Code != "1127" && config != null && config.SContent.ToShort() > n)
+                                        {
+                                            throw new Exception($"当前在途任务数{n}不足{config.SContent.ToShort()},需在此等待或修改配置数量");
+                                        }
+                                    }
 
                                     //更新AGV任务状态
                                     agvInfo.Status = AGVTaskStatus.Complete1;
@@ -382,6 +393,46 @@ namespace WCS.WorkEngineering.Systems
                 }
             }
         }
+        /// <summary>
+        ///  配置信息表
+        /// </summary>
+        [Tenant("hj")]
+        [SugarTable("sys_config", "配置信息表")]
+        public class hjSysConfig : BaseModel
+        {
+            /// <summary>
+            ///  编号
+            /// </summary>
+            [SugarColumn(ColumnName = "code", Length = 100)]
+            public string Code { get; set; }
+
+            /// <summary>
+            ///  名称
+            /// </summary>
+            [SugarColumn(ColumnName = "name", Length = 100)]
+            public string Name { get; set; }
+
+            /// <summary>
+            ///  内容
+            /// </summary>
+            [SugarColumn(ColumnName = "scontent", Length = 100)]
+            public string SContent { get; set; }
+
+            /// <summary>
+            ///  类型
+            /// </summary>
+            [SugarColumn(ColumnName = "stype", Length = 50)]
+            public string SType { get; set; }
+
+            [SugarColumn(ColumnName = "default1", Length = 100, IsNullable = true)]
+            public string Default1 { get; set; }
+
+            [SugarColumn(ColumnName = "default2", Length = 100, IsNullable = true)]
+            public string Default2 { get; set; }
+
+            [SugarColumn(ColumnName = "default3", Length = 100, IsNullable = true)]
+            public string Default3 { get; set; }
+        }
 
         public override bool Select(Device dev)
         {

+ 49 - 0
WCS.WorkEngineering/Systems/BaseModel.cs

@@ -0,0 +1,49 @@
+using SqlSugar;
+
+namespace WCS.WorkEngineering.Systems
+{
+    /// <summary>
+    ///  基础表实体
+    /// </summary>
+    public class BaseModel
+    {
+        public BaseModel()
+        { }
+
+        /// <summary>
+        ///  ID
+        /// </summary>
+        [SugarColumn(ColumnName = "Id", IsPrimaryKey = true, ColumnDescription = "ID")]
+        public virtual long Id { get; set; }
+
+        /// <summary>
+        ///  备注
+        /// </summary>
+        [SugarColumn(ColumnName = "Memo", Length = 500, IsNullable = true, ColumnDataType = "nvarchar", DefaultValue = "", ColumnDescription = "备注")]
+        public virtual string Memo { get; set; }
+
+        /// <summary>
+        ///  创建用户
+        /// </summary>
+        [SugarColumn(ColumnName = "AddWho", Length = 50, ColumnDataType = "nvarchar", DefaultValue = "", IsNullable = false, ColumnDescription = "创建用户")]
+        public virtual string AddWho { get; set; } = "";
+
+        /// <summary>
+        ///  更新用户
+        /// </summary>
+        [SugarColumn(ColumnName = "EditWho", Length = 50, ColumnDataType = "nvarchar", DefaultValue = "", IsNullable = false, ColumnDescription = "更新用户")]
+        public virtual string EditWho { get; set; } = "";
+
+        /// <summary>
+        ///  创建时间
+        /// </summary>
+        [SugarColumn(ColumnName = "AddTime", DefaultValue = "1900-1-1", IsNullable = false, ColumnDescription = "创建时间")]
+        public virtual DateTime AddTime { get; set; } = DateTime.Now;
+
+        /// <summary>
+        /// 更新时间
+        /// </summary>
+        [SugarColumn(ColumnName = "EditTime", DefaultValue = "1900-1-1", IsNullable = false, ColumnDescription = "更新时间")]
+        public virtual DateTime EditTime { get; set; } = DateTime.Now;
+    }
+}

+ 12 - 12
WCS.WorkEngineering/WebApi/Controllers/AgvApi.cs

@@ -48,7 +48,7 @@ namespace WCS.WorkEngineering.WebApi.Controllers
         {
             string tunCode = "HJLK";
             string preCode = "1015";
-            if (position.StartsWith("HA") && !(position.Contains("HA01") || position.Contains("HA02") || position.Contains("HA03") || position.Contains("HA04") || position.Contains("HA05")))
+            if (position.StartsWith("HA") && (position.Contains("HA09") || position.Contains("HA10")))
             {
                 tunCode = "HJLK4";
                 preCode = "1138";
@@ -169,17 +169,17 @@ namespace WCS.WorkEngineering.WebApi.Controllers
         /// <returns></returns>
         public static GenAgvSchedulingTaskResponse 一楼空轮出库下发AGV(string ctnrCode, string position1, string position2, string taskCode, string priority)
         {
-            string code = "500";
-            string tp = "04";
-            if (position1.Contains("101"))
-            {
-                code = "500";
-            }
-            else
-            {
-                code = "666";
-                tp = "02";
-            }
+            string code = "666";
+            string tp = "02";
+            //if (position1.Contains("101"))
+            //{
+            //    code = "500";
+            //}
+            //else
+            //{
+            //    code = "666";
+            //    tp = "02";
+            //}
             return GenAgvSchedulingTask2("iwms", ctnrCode, "4", new List<positionCodeClass>()
             {
                 new positionCodeClass(){ //取货站台