From 800a881cec2b5e652e0a85b0897ecb64c6a8a71a Mon Sep 17 00:00:00 2001
From: Ben Lin <maobin001@msn.com>
Date: 星期三, 17 七月 2024 15:41:18 +0800
Subject: [PATCH] U9C接口更新

---
 Tiger.Business/MES/Biz.Route.cs |   45 ++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 40 insertions(+), 5 deletions(-)

diff --git a/Tiger.Business/MES/Biz.Route.cs b/Tiger.Business/MES/Biz.Route.cs
index b79435d..c36570e 100644
--- a/Tiger.Business/MES/Biz.Route.cs
+++ b/Tiger.Business/MES/Biz.Route.cs
@@ -10,7 +10,6 @@
 using System.Linq;
 using Newtonsoft.Json;
 using Tiger.IBusiness;
-using static Tiger.Business.Biz;
 using Microsoft.AspNetCore.Http;
 
 namespace Tiger.Business
@@ -64,12 +63,18 @@
                     }
                     //宸ヨ壓璺嚎
                     var route = await Db.Queryable<MES_ROUTE>()
-                        .WhereIF(!string.IsNullOrEmpty(routerId), x => x.ID.Equals(routerId))
+                        .WhereIF(!string.IsNullOrEmpty(routerId), x => x.ID.Equals(routerId) || x.ROT_CODE == routerId)
                         .OrderBy(x => x.CREATE_TIME).FirstAsync();
                     rotData.route = route;
+                    if (route == null)
+                    {
+                        res.IsSuccessed = false;
+                        res.LocaleMsg = new($"涓嶈兘鏌ユ壘鍒板伐鑹鸿矾绾匡紒");
+                        return res;
+                    }
                     //鑺傜偣
                     var nodes = await Db.Queryable<MES_ROUTE_NODE>()
-                        .WhereIF(!string.IsNullOrEmpty(routerId), x => x.ROT_ID.Equals(routerId))
+                        .WhereIF(!string.IsNullOrEmpty(route.ID), x => x.ROT_ID.Equals(route.ID))
                         .ToListAsync();
                     foreach (var node in nodes)
                     {
@@ -91,7 +96,7 @@
                     rotData.nodes = nodes;
 
                     var acts = await Db.Queryable<MES_ROUTE_NODE_ACT>()
-                        .WhereIF(!string.IsNullOrEmpty(routerId), x => x.ROT_ID.Equals(routerId))
+                        .WhereIF(!string.IsNullOrEmpty(route.ID), x => x.ROT_ID.Equals(route.ID))
                         .ToListAsync();
                     foreach (var act in acts)
                     {
@@ -114,7 +119,7 @@
 
                     //杈�
                     var edges = await Db.Queryable<MES_ROUTE_EDGE>()
-                        .WhereIF(!string.IsNullOrEmpty(routerId), x => x.ROT_ID.Equals(routerId))
+                        .WhereIF(!string.IsNullOrEmpty(route.ID), x => x.ROT_ID.Equals(route.ID))
                         .ToListAsync();
                     foreach (var edge in edges)
                     {
@@ -374,6 +379,36 @@
                 }
                 return await Task.FromResult(result);
             }
+
+            /// <summary>
+            /// 淇濆瓨鑺傜偣宀椾綅璧勬簮
+            /// </summary>
+            /// <param name="nodePost"></param>
+            /// <returns></returns>
+            public async Task<ApiAction> SaveRouteNodePost(List<MES_ROUTE_NODE_POST> nodePost) {
+                var result = new ApiAction();
+                try
+                {
+                    var db = Db;
+                    var dbTran = db.UseTran(() =>
+                    {
+                        var y = db.Storageable(nodePost)
+                           .ToStorage();
+                        y.AsInsertable.ExecuteCommand();
+                        y.AsUpdateable.ExecuteCommand();
+                    });
+                    if (!dbTran.IsSuccess)
+                    {
+                        result.IsSuccessed = false;
+                        result.LocaleMsg = new($"淇濆瓨鑺傜偣宀椾綅璧勬簮鏁版嵁寮傚父");
+                    }
+                }
+                catch (Exception ex)
+                {
+                    result.CatchExceptionWithLog(ex, "淇濆瓨鑺傜偣宀椾綅璧勬簮鏁版嵁寮傚父");
+                }
+                return await Task.FromResult(result);
+            }
         }
     }
 }

--
Gitblit v1.9.3