From ad3c446720a996d3bad0e53d1c2bc448753c5e1c Mon Sep 17 00:00:00 2001
From: cjs <2216046164@qq.com>
Date: 星期五, 20 六月 2025 17:13:48 +0800
Subject: [PATCH] 111

---
 ams/Hanhe.iWCS.JingmenGEMTwoTCP/.vs/Hanhe.iWCS.JingmenGEMTwoTCP/v17/DocumentLayout.json        |    2 
 ams/Hanhe.iWCS.JingmenGEMTwoProtocol/ERPService.cs                                             |  241 +++++++++++++++++++++++++++++++++++++++++++++--
 ams/Hanhe.iWCS.JingmenGEMTwoTCP/.vs/Hanhe.iWCS.JingmenGEMTwoTCP/v17/DocumentLayout.backup.json |    6 +
 ams/Hanhe.iWCS.JingmenGEMTwoProtocol/WMSHelper.cs                                              |    6 
 ams/Hanhe.iWCS.JingmenGEMTwoProtocol/ProtocolAnalysis.cs                                       |   22 +++-
 ams/Hanhe.iWCS.JingmenGEMTwoProtocol/EnentListen.cs                                            |    9 +
 6 files changed, 262 insertions(+), 24 deletions(-)

diff --git a/ams/Hanhe.iWCS.JingmenGEMTwoProtocol/ERPService.cs b/ams/Hanhe.iWCS.JingmenGEMTwoProtocol/ERPService.cs
index 5a261a0..0613efb 100644
--- a/ams/Hanhe.iWCS.JingmenGEMTwoProtocol/ERPService.cs
+++ b/ams/Hanhe.iWCS.JingmenGEMTwoProtocol/ERPService.cs
@@ -190,13 +190,26 @@
         public static void SendERPTaskInfo(TN_I_TASK_MST mst)
         {
             CMMLog.Info($"SendERPTaskInfo 鎻掑叆鏁版嵁 寮�锛屼换鍔″彿锛歿mst.CN_S_SOURCE_NO}");
-            var sendERPTaskInfo = MongoDBSingleton.Instance.FindOne<SendErpTaskInfoTable>(Query.EQ("taskNo", mst.CN_S_SOURCE_NO), "SendErpTaskInfoTable");
-            if (sendERPTaskInfo != null)
+            if (mst.CN_S_BUSS_TYPE.Contains("鐢甸挻"))
             {
-                CMMLog.Info($"SendERPTaskInfo 鎻掑叆鏁版嵁锛屼换鍔″彿锛歿mst.CN_S_SOURCE_NO}");
-                MongoDBSingleton.Instance.Update<SendErpTaskInfoTable>(Query.EQ("taskNo", mst.CN_S_SOURCE_NO), Update.Set("isFinish", "Y"), "SendErpTaskInfoTable", UpdateFlags.None);
+                var sendERPTaskInfo = MongoDBSingleton.Instance.FindOne<SendErpTaskInfoTableDG>(Query.EQ("taskNo", mst.CN_S_SOURCE_NO), "SendErpTaskInfoTableDG");
+                if (sendERPTaskInfo != null)
+                {
+                    CMMLog.Info($"SendERPTaskInfo 鎻掑叆鏁版嵁锛屼换鍔″彿锛歿mst.CN_S_SOURCE_NO}");
+                    MongoDBSingleton.Instance.Update<SendErpTaskInfoTableDG>(Query.EQ("taskNo", mst.CN_S_SOURCE_NO), Update.Set("isFinish", "Y"), "SendErpTaskInfoTableDG", UpdateFlags.None);
+                }
+                else CMMLog.Error($"SendERPTaskInfo Error:褰撳墠浠诲姟鍙锋暟鎹瓨鍦紝涓嶅厑璁告彃鍏�SendErpTaskInfoTableDG 璁板綍琛ㄣ�浠诲姟鍙凤細{mst.CN_S_SOURCE_NO}");
             }
-            else CMMLog.Error($"SendERPTaskInfo Error:褰撳墠浠诲姟鍙锋暟鎹瓨鍦紝涓嶅厑璁告彃鍏�SendErpTaskInfoTable 璁板綍琛ㄣ�浠诲姟鍙凤細{mst.CN_S_SOURCE_NO}");
+            else
+            {
+                var sendERPTaskInfo = MongoDBSingleton.Instance.FindOne<SendErpTaskInfoTable>(Query.EQ("taskNo", mst.CN_S_SOURCE_NO), "SendErpTaskInfoTable");
+                if (sendERPTaskInfo != null)
+                {
+                    CMMLog.Info($"SendERPTaskInfo 鎻掑叆鏁版嵁锛屼换鍔″彿锛歿mst.CN_S_SOURCE_NO}");
+                    MongoDBSingleton.Instance.Update<SendErpTaskInfoTable>(Query.EQ("taskNo", mst.CN_S_SOURCE_NO), Update.Set("isFinish", "Y"), "SendErpTaskInfoTable", UpdateFlags.None);
+                }
+                else CMMLog.Error($"SendERPTaskInfo Error:褰撳墠浠诲姟鍙锋暟鎹瓨鍦紝涓嶅厑璁告彃鍏�SendErpTaskInfoTable 璁板綍琛ㄣ�浠诲姟鍙凤細{mst.CN_S_SOURCE_NO}");
+            }
         }
 
         public class SendErpTaskInfoTable
@@ -365,7 +378,96 @@
             public string needReport { get; set; } = "0";
         }
 
-
+        public class SendErpTaskInfoTableDG
+        {
+            public ObjectId _id { get; set; }
+            /// <summary>
+            /// 浠诲姟鍙�+            /// </summary>
+            public string taskNo { get; set; } = "";
+            /// <summary>
+            /// 鐐逛綅
+            /// </summary>
+            public string Bit { get; set; }
+            /// <summary>
+            /// 鍖呰鏈哄彿
+            /// </summary>
+            public string packingMachineNumber { get; set; }
+            /// <summary>
+            /// 琚嬪彿1
+            /// </summary>
+            public string bagNumber1 { get; set; }
+            /// <summary>
+            /// 琚嬪彿2
+            /// </summary>
+            public string bagNumber2 { get; set; }
+            /// <summary>
+            /// 琚嬪彿3
+            /// </summary>
+            public string bagNumber3 { get; set; }
+            /// <summary>
+            /// 琚嬪彿4
+            /// </summary>
+            public string bagNumber4 { get; set; }
+            /// <summary>
+            /// 鐗╂枡缂栫爜(鍞竴)
+            /// </summary>
+            public string materiCode { get; set; }
+            /// <summary>
+            /// 鐗╂枡鍚嶇О
+            /// </summary>
+            public string materiName { get; set; }
+            /// <summary>
+            /// 鐗╂枡瑙勬牸
+            /// </summary>
+            public string materialSpec { get; set; }
+            /// <summary>
+            /// 鎬绘�閲�+            /// </summary>
+            public int totalWeight { get; set; }
+            /// <summary>
+            /// 鎵规鍙�+            /// </summary>
+            public string lotCode { get; set; }
+            /// <summary>
+            /// 鏃堕棿鎴�瀵瑰簲浠诲姟鏁版嵁 CN_S_BATCH_NO 瀛楁鍊�+            /// </summary>
+            public string timeStamp { get; set; }
+            /// <summary>
+            /// 鐢熶骇鏃ユ湡 
+            /// </summary>
+            public DateTime productTime { get; set; }
+            /// <summary>
+            /// 澶辨晥鏃ユ湡
+            /// </summary>
+            public DateTime invalidationTime { get; set; }
+            /// <summary>
+            /// 鏄惁瀹屾垚
+            /// </summary>
+            public string isFinish { get; set; } = "N";
+            public DateTime dateTime { get; set; }
+            //鍙樻洿娉ㄩ噴
+            /// <summary>
+            /// 鐢熶骇璁㈠崟缂栧彿
+            /// </summary>
+            public string orderCode { get; set; }
+            /// <summary>
+            /// 闇�眰鎬婚噸閲�+            /// </summary>
+            public int totalNeedWeight { get; set; }
+            /// <summary>
+            /// 鍙犲寘鍚庢�閲嶉噺锛堝噣閲嶏級
+            /// </summary>
+            public int netWeight { get; set; }
+            /// <summary>
+            /// 鍒嗗綍id
+            /// </summary>
+            public int FEntryID { get; set; }
+            /// <summary>
+            /// 鍙嶉mes  1- 鏃犻渶鍙嶉锛�-鏈弽棣�+            /// </summary>
+            public string mesSucess { get; set; }
+        }
         public class SendMESTaskInfoTable
         {
             public ObjectId _id { get; set; }
@@ -647,9 +749,6 @@
                                         });
                                     }
                                     #endregion
-
-                                    //鎻掑叆鎴愬姛 娓呴櫎涓棿琛�-                                    MongoDBSingleton.Instance.Remove<SendErpTaskInfoTable>(Query.EQ("_id", a._id), "SendErpTaskInfoTable", RemoveFlags.None);
                                 }
                                 else
                                 {
@@ -672,8 +771,6 @@
                                 string sql = $"INSERT INTO T_JY_SPInStockADD (FBillNO,FStockOrgNumber,FPrdOrgNumber,FSeq,FMaterialNumber,Flot,FInStockType,FMustQty,FStockNumber,FWorkShopNumber,FStockStatus,FProduceDate ,FExpiryDate,FTaskNumber,FCountEntry,FOpStatus) VALUES ('{FBillNO}','02','02','{n}','{a.materiCode}','{a.lotCode}','1','{a.totalWeight}','CK020','BM000161','1','{a.productTime}','{a.invalidationTime}','{a.taskNo}',{sendERPTaskInfoList.Count},'0')";
                                 if(new SqlHelper<object>().ExecuteSql(sql, false))
                                 {
-                                    //鎻掑叆鎴愬姛 娓呴櫎涓棿琛�-                                    MongoDBSingleton.Instance.Remove<SendErpTaskInfoTable>(Query.EQ("_id", a._id), "SendErpTaskInfoTable", RemoveFlags.None);
                                 }
                                 else
                                 {
@@ -690,6 +787,8 @@
                                     }, "SendErpTaskInfoTableBak");
                                 }
                             }
+                            //鎻掑叆鎴愬姛 娓呴櫎涓棿琛�+                            MongoDBSingleton.Instance.Remove<SendErpTaskInfoTable>(Query.EQ("_id", a._id), "SendErpTaskInfoTable", RemoveFlags.None);
                             MongoDBSingleton.Instance.Remove<TimeCuoInfoCom>(Query.EQ("timeStamp", int.Parse(a.timeStamp)), "TimeCuoInfoCom", RemoveFlags.None);
                         });
                     }
@@ -1936,7 +2035,125 @@
 
         }
 
-        
+        internal static void senderpTaskDG(string startBit)
+        {
+            try
+            {
+                //閫氳繃鎵樼洏鍙疯皟鐢╳ms鎺ュ彛鑾峰彇鐗╂枡淇℃伅
+
+                CMMLog.Info("鎻掑叆SendErpTaskInfoTable 琛�寮�:" + startBit);
+                var erpInfo = MongoDBSingleton.Instance.FindOne<SendErpTaskInfoTable>(Query.EQ("Bit", startBit), "SendErpTaskInfoTable");
+                if (erpInfo == null)
+                {
+                    //string fEntryId = time.FEntryID_1.ToString() + (time.FEntryID_2 == 0 ? "" : ";" + time.FEntryID_2.ToString()) + (time.FEntryID_3 == 0 ? "" : ";" + time.FEntryID_3.ToString()) + (time.FEntryID_4 == 0 ? "" : ";" + time.FEntryID_4.ToString());
+
+                    CMMLog.Info("鎻掑叆SendErpTaskInfoTable 琛�1");
+                    MongoDBSingleton.Instance.Insert<SendErpTaskInfoTable>(new SendErpTaskInfoTable
+                    {
+                        Bit = startBit,
+                        //materiCode = time.materialCode,
+                        //lotCode = time.batchNumber,
+                        //productTime = Convert.ToDateTime(time.ProductionDate).AddHours(8),
+                        //invalidationTime = Convert.ToDateTime(time.ProductionDate).AddHours(8).AddDays(365),
+                        dateTime = DateTime.Now.AddHours(8),
+                        //鍙樻洿娉ㄩ噴
+                        mesSucess = "0"
+                    }, "SendErpTaskInfoTable");
+                }
+
+                CMMLog.Info("鎻掑叆SendErpTaskInfoTable 琛�缁撴潫");
+            }
+            catch (Exception ex)
+            {
+
+                CMMLog.Info("鎻掑叆SendErpTaskInfoTable 琛�err:" + ex.Message);
+            }
+        }
+
+        internal static void SendERPTaskCompleteFuncDG()
+        {
+
+            try
+            {
+                var db = new SqlHelper<object>().GetInstance();
+                var sendERPTaskInfoList = MongoDBSingleton.Instance.Find<SendErpTaskInfoTableDG>(Query.And(Query.EQ("isFinish", "Y"), Query.EQ("mesSucess", "0")), "SendErpTaskInfoTableDG");
+                if (sendERPTaskInfoList.Count > 0)
+                {
+                    var timeInfo = sendERPTaskInfoList.OrderBy(a => a.dateTime).First();
+                    CMMLog.Info($"SendERPTaskCompleteFunc:{sendERPTaskInfoList.Count}");
+                    CMMLog.Info($"SendERPTaskCompleteFunc:{timeInfo.dateTime.AddHours(1) < DateTime.Now}");
+                    if (sendERPTaskInfoList.Count == 5 || timeInfo.dateTime.AddHours(1) < DateTime.Now)
+                    {
+                        // 鍏堟牴鎹换鍔℃壒娆″彿瀛楁鑾峰彇鏃堕棿鎴充腑闂磋〃-TimeCuoInfoCom 鏁版嵁锛屽苟杩涜鍚庣画璋冪敤锛屽鐞嗘垚鍔熷垹闄ゆ椂闂存埑涓棿琛�TimeCuoInfoCom 鏁版嵁
+
+                        int n = 0; //琛屽彿
+                        sendERPTaskInfoList.ForEach(a =>
+                        {
+                            n = n + 1;
+                            #region 璁$畻鍗曟嵁缂栧彿
+                            string FBillNO = "";
+                            int num = 0;
+                            string S_NUM = "";
+                            string time = DateTime.Now.ToString("yyMMdd");
+                            CMMLog.Info($"SendERPTaskCompleteFunc time锛歿time}");
+                            var midInfo = db.Queryable<ADDMid>().Where(b => b.time == time).First();
+                            if (midInfo != null)
+                            {
+                                midInfo.num = midInfo.num + 1;
+                                num = midInfo.num;
+                                db.Updateable(midInfo).UpdateColumns(b => new { b.num }).ExecuteCommand();
+                            }
+                            else
+                            {
+                                num = 1;
+                                midInfo = new ADDMid
+                                {
+                                    time = DateTime.Now.ToString("yyMMdd"),
+                                    num = 1
+                                };
+                                db.Insertable(midInfo).ExecuteCommand();
+                            }
+
+                            CMMLog.Info($"SendERPTaskCompleteFunc num: {num}");
+                            for (int i = num.ToString().Length + 1; i <= 4; i++)
+                            {
+                                S_NUM = S_NUM + "0";
+                            }
+
+                            FBillNO = "ARKD" + DateTime.Now.ToString("yyMMdd") + S_NUM + num.ToString();
+                            CMMLog.Info($"SendERPTaskCompleteFunc: {FBillNO}");
+                            #endregion
+
+                            CMMLog.Info($"SendERPTaskCompleteFunc:INSERT INTO T_JY_SPInStockADD (FBillNO,FStockOrgNumber,FPrdOrgNumber,FSeq,FMaterialNumber,Flot,FInStockType,FMustQty,FStockNumber,FWorkShopNumber,FStockStatus,FProduceDate ,FExpiryDate,FTaskNumber,FCountEntry,FOpStatus) VALUES ('{FBillNO}','02','02','{n}','{a.materiCode}','{a.lotCode}','1','{a.totalWeight}','CK020','G0200400','1','{a.productTime}','{a.invalidationTime}','{a.taskNo}',{sendERPTaskInfoList.Count},'0')");
+                            string sql = $"INSERT INTO T_JY_SPInStockADD (FBillNO,FStockOrgNumber,FPrdOrgNumber,FSeq,FMaterialNumber,Flot,FInStockType,FMustQty,FStockNumber,FWorkShopNumber,FStockStatus,FProduceDate ,FExpiryDate,FTaskNumber,FCountEntry,FOpStatus) VALUES ('{FBillNO}','02','02','{n}','{a.materiCode}','{a.lotCode}','1','{a.totalWeight}','CK020','G0200400','1','{a.productTime}','{a.invalidationTime}','{a.taskNo}',{sendERPTaskInfoList.Count},'0')";
+                            if (new SqlHelper<object>().ExecuteSql(sql, false))
+                            {
+                                //鎻掑叆鎴愬姛 娓呴櫎涓棿琛�+                                MongoDBSingleton.Instance.Remove<SendErpTaskInfoTableDG>(Query.EQ("_id", a._id), "SendErpTaskInfoTableDG", RemoveFlags.None);
+                            }
+                            else
+                            {
+                                //鎻掑叆澶辫触锛屽皢鏁版嵁鎻掑叆鏂拌〃锛屼汉宸ユ墜鍔ㄥ鐞嗭紝閲嶆柊鎻掑叆
+                                //MongoDBSingleton.Instance.Insert<SendErpTaskInfoTableBak>(new SendErpTaskInfoTableBak
+                                //{
+                                //    orderCode = a.orderCode,
+                                //    FEntryID = a.FEntryID,
+                                //    totalNeedWeight = a.totalNeedWeight,
+                                //    lotCode = a.lotCode,
+                                //    productTime = a.productTime,
+                                //    invalidationTime = a.invalidationTime,
+                                //    taskNo = a.taskNo
+                                //}, "SendErpTaskInfoTableBak");
+                            }
+                        });
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                CMMLog.Info("SendERPTaskCompleteFunc err:" + ex.Message);
+            }
+        }
 
         public class packageInfoModel
         {
diff --git a/ams/Hanhe.iWCS.JingmenGEMTwoProtocol/EnentListen.cs b/ams/Hanhe.iWCS.JingmenGEMTwoProtocol/EnentListen.cs
index c8a8ce9..5b0292d 100644
--- a/ams/Hanhe.iWCS.JingmenGEMTwoProtocol/EnentListen.cs
+++ b/ams/Hanhe.iWCS.JingmenGEMTwoProtocol/EnentListen.cs
@@ -376,7 +376,7 @@
             }
             #endregion
 
-            #region 鍥涢挻
+            #region 鐢甸挻
 
             #region 10017-A鍙�             if (currActionModel.CN_N_ACTION_CODE == 10017)
@@ -436,6 +436,13 @@
             }
             #endregion
 
+            #region 10022-鍙嶉erp 鎻掑叆绠�崟鐢熶骇鍏ュ簱琛�+            if (currActionModel.CN_N_ACTION_CODE == 10022)
+            {
+                ERPService.SendERPTaskCompleteFuncDG();
+            }
+            #endregion
+
             #endregion
             return bResult;
         }
diff --git a/ams/Hanhe.iWCS.JingmenGEMTwoProtocol/ProtocolAnalysis.cs b/ams/Hanhe.iWCS.JingmenGEMTwoProtocol/ProtocolAnalysis.cs
index 8bee715..3d7b0da 100644
--- a/ams/Hanhe.iWCS.JingmenGEMTwoProtocol/ProtocolAnalysis.cs
+++ b/ams/Hanhe.iWCS.JingmenGEMTwoProtocol/ProtocolAnalysis.cs
@@ -237,13 +237,25 @@
                     {
                         AMSHelper.SetStatus(action.CN_S_TASK_NO, 1, "1", action.CN_S_DEVICE_CODE, true);
                         WMSHelper.ExecuteState(mst.CN_S_SOURCE_NO, action.CN_N_ACTION_CODE);
-                        if (mst.CN_S_BUSS_TYPE == "缂撳瓨鏋跺叆绔嬪簱")
+                        if (mst.CN_S_BUSS_TYPE.Contains("缂撳瓨鏋跺叆绔嬪簱"))
                         {
-                            //灏嗕换鍔″彿鎻掑叆鍒颁腑闂磋〃
-                            var erpInfo = MongoDBSingleton.Instance.FindOne<SendErpTaskInfoTable>(Query.And(Query.EQ("Bit", mst.CN_S_START_BIT), Query.EQ("taskNo", "")), "SendErpTaskInfoTable");
-                            if (erpInfo != null)
+                            if (mst.CN_S_BUSS_TYPE.Contains("鐢甸挻"))
                             {
-                                MongoDBSingleton.Instance.Update<SendErpTaskInfoTable>(Query.And(Query.EQ("Bit", mst.CN_S_START_BIT), Query.EQ("taskNo", "")), Update.Set("taskNo", mst.CN_S_SOURCE_NO), UpdateFlags.None);
+                                //灏嗕换鍔″彿鎻掑叆鍒颁腑闂磋〃
+                                var erpInfo = MongoDBSingleton.Instance.FindOne<SendErpTaskInfoTableDG>(Query.And(Query.EQ("Bit", mst.CN_S_START_BIT), Query.EQ("taskNo", "")), "SendErpTaskInfoTableDG");
+                                if (erpInfo != null)
+                                {
+                                    MongoDBSingleton.Instance.Update<SendErpTaskInfoTableDG>(Query.And(Query.EQ("Bit", mst.CN_S_START_BIT), Query.EQ("taskNo", "")), Update.Set("taskNo", mst.CN_S_SOURCE_NO), UpdateFlags.None);
+                                }
+                            }
+                            else
+                            {
+                                //灏嗕换鍔″彿鎻掑叆鍒颁腑闂磋〃
+                                var erpInfo = MongoDBSingleton.Instance.FindOne<SendErpTaskInfoTable>(Query.And(Query.EQ("Bit", mst.CN_S_START_BIT), Query.EQ("taskNo", "")), "SendErpTaskInfoTable");
+                                if (erpInfo != null)
+                                {
+                                    MongoDBSingleton.Instance.Update<SendErpTaskInfoTable>(Query.And(Query.EQ("Bit", mst.CN_S_START_BIT), Query.EQ("taskNo", "")), Update.Set("taskNo", mst.CN_S_SOURCE_NO), UpdateFlags.None);
+                                }
                             }
                         }
                         if (mst.CN_S_BUSS_TYPE == "鑰佺墿鏂欑紦瀛樻灦鍏ョ珛搴�)
diff --git a/ams/Hanhe.iWCS.JingmenGEMTwoProtocol/WMSHelper.cs b/ams/Hanhe.iWCS.JingmenGEMTwoProtocol/WMSHelper.cs
index a0430f9..dc42c2a 100644
--- a/ams/Hanhe.iWCS.JingmenGEMTwoProtocol/WMSHelper.cs
+++ b/ams/Hanhe.iWCS.JingmenGEMTwoProtocol/WMSHelper.cs
@@ -516,11 +516,9 @@
                             if(DGinfoList.Count > 0){
                                 var DGinfo = DGinfoList.OrderBy(a => a.createTime).First();
                                 model.trayCode = DGinfo.trayCode;
-                                //model.endArea = endArea;
+                                //灏嗘暟鎹彃鍏ヤ腑闂磋〃
+                                ERPService.senderpTaskDG(startBit);
                             }
-
-                            //灏嗘暟鎹彃鍏ヤ腑闂磋〃
-                            //ERPService.senderpTask(time, startBit);
                         }
                     }
                     else
diff --git a/ams/Hanhe.iWCS.JingmenGEMTwoTCP/.vs/Hanhe.iWCS.JingmenGEMTwoTCP/v17/DocumentLayout.backup.json b/ams/Hanhe.iWCS.JingmenGEMTwoTCP/.vs/Hanhe.iWCS.JingmenGEMTwoTCP/v17/DocumentLayout.backup.json
index 65d74a5..911576c 100644
--- a/ams/Hanhe.iWCS.JingmenGEMTwoTCP/.vs/Hanhe.iWCS.JingmenGEMTwoTCP/v17/DocumentLayout.backup.json
+++ b/ams/Hanhe.iWCS.JingmenGEMTwoTCP/.vs/Hanhe.iWCS.JingmenGEMTwoTCP/v17/DocumentLayout.backup.json
@@ -1,6 +1,6 @@
 {
   "Version": 1,
-  "WorkspaceRootPath": "C:\\software\\A-\u5DE5\u4F5C\\\u6E90\u7801\\GIT\\\u8346\u95E8\u683C\u6797\u7F8E\u5357\u533A\\ams\\Hanhe.iWCS.JingmenGEMTwoTCP\\",
+  "WorkspaceRootPath": "C:\\software\\A-\u5DE5\u4F5C\\\u6E90\u7801\\WCS\\Hanhe.iWCS.3.3\\\u8346\u95E8\u683C\u6797\u7F8E\\Hanhe.iWCS.JingmenGEMTwoTCP\\",
   "Documents": [],
   "DocumentGroupContainers": [
     {
@@ -34,6 +34,10 @@
             {
               "$type": "Bookmark",
               "Name": "ST:129:0:{116d2292-e37d-41cd-a077-ebacac4c8cc4}"
+            },
+            {
+              "$type": "Bookmark",
+              "Name": "ST:0:0:{1c4feeaa-4718-4aa9-859d-94ce25d182ba}"
             }
           ]
         },
diff --git a/ams/Hanhe.iWCS.JingmenGEMTwoTCP/.vs/Hanhe.iWCS.JingmenGEMTwoTCP/v17/DocumentLayout.json b/ams/Hanhe.iWCS.JingmenGEMTwoTCP/.vs/Hanhe.iWCS.JingmenGEMTwoTCP/v17/DocumentLayout.json
index 911576c..870b24e 100644
--- a/ams/Hanhe.iWCS.JingmenGEMTwoTCP/.vs/Hanhe.iWCS.JingmenGEMTwoTCP/v17/DocumentLayout.json
+++ b/ams/Hanhe.iWCS.JingmenGEMTwoTCP/.vs/Hanhe.iWCS.JingmenGEMTwoTCP/v17/DocumentLayout.json
@@ -1,6 +1,6 @@
 {
   "Version": 1,
-  "WorkspaceRootPath": "C:\\software\\A-\u5DE5\u4F5C\\\u6E90\u7801\\WCS\\Hanhe.iWCS.3.3\\\u8346\u95E8\u683C\u6797\u7F8E\\Hanhe.iWCS.JingmenGEMTwoTCP\\",
+  "WorkspaceRootPath": "C:\\software\\A-\u5DE5\u4F5C\\\u6E90\u7801\\GIT\\\u8346\u95E8\u683C\u6797\u7F8E\u5357\u533A\\ams\\Hanhe.iWCS.JingmenGEMTwoTCP\\",
   "Documents": [],
   "DocumentGroupContainers": [
     {

--
Gitblit v1.9.1