From c701f4c3a21a159e9b1efcfc6e9c4769e87b1e6f Mon Sep 17 00:00:00 2001
From: Ben Lin <maobin001@msn.com>
Date: 星期四, 18 四月 2024 20:15:56 +0800
Subject: [PATCH] 盟祺-按出货单出货和退回更新

---
 Tiger.Business/WMS/MengQi/Biz.Mq.SNData.cs |   49 ++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 48 insertions(+), 1 deletions(-)

diff --git a/Tiger.Business/WMS/MengQi/Biz.Mq.SNData.cs b/Tiger.Business/WMS/MengQi/Biz.Mq.SNData.cs
index 978ab99..c6e8205 100644
--- a/Tiger.Business/WMS/MengQi/Biz.Mq.SNData.cs
+++ b/Tiger.Business/WMS/MengQi/Biz.Mq.SNData.cs
@@ -43,6 +43,7 @@
                         result.Message = $"閫�鍥炲垹闄ゆ潯鐮佷笉瀛樺湪";
                         return result;
                     }
+                    result.Data = data_His.DeliveryNo;
                     var db = Db;
                     var dbTran = db.UseTran(() =>
                     {
@@ -52,6 +53,49 @@
                     if (!dbTran.IsSuccess)
                     {
                         result.IsSuccessed = false; 
+                        result.Message = $"閫�鍥炲垹闄ゆ潯鐮佸紓甯�";
+                    }
+                }
+                catch (Exception ex)
+                {
+                    result.CatchExceptionWithLog(ex, "閫�鍥炲垹闄ゆ潯鐮佸紓甯�");
+                }
+                return result;
+            }
+
+            /// <summary>
+            /// 鏁村崟閫�鍥�
+            /// </summary>
+            /// <param name="deliveryNo"></param>
+            /// <returns></returns>
+            public async Task<ApiAction> ReturnWhole(string deliveryNo)
+            {
+                var result = new ApiAction();
+                try
+                {
+                    List<SNData_His> listHis = await Db.Queryable<SNData_His>().Where(x => x.DeliveryNo == deliveryNo).ToListAsync();
+                    if (listHis.Count == 0)
+                    {
+                        result.IsSuccessed = false;
+                        result.Message = $"閫�鍥為�佽揣鍗昜{deliveryNo}]鏌ヤ笉鍒拌鍒犻櫎鐨勬潯鐮�";
+                        return result;
+                    }
+                    List<SNData> sndatas = await Db.Queryable<SNData>().Where(x => x.DeliveryNo == deliveryNo).ToListAsync();
+                    if (sndatas.Count == 0)
+                    {
+                        result.IsSuccessed = false;
+                        result.Message = $"閫�鍥為�佽揣鍗昜{deliveryNo}]鏌ヤ笉鍒拌鍒犻櫎鐨勬潯鐮�";
+                        return result;
+                    }
+                    var db = Db;
+                    var dbTran = db.UseTran(() =>
+                    {
+                        db.Deleteable(listHis).ExecuteCommand();
+                        db.Deleteable(sndatas).ExecuteCommand();
+                    });
+                    if (!dbTran.IsSuccess)
+                    {
+                        result.IsSuccessed = false;
                         result.Message = $"閫�鍥炲垹闄ゆ潯鐮佸紓甯�";
                     }
                 }
@@ -79,6 +123,7 @@
                         .WhereIF(!string.IsNullOrEmpty(strTime[1]) && strTime.Length == 2, x => Convert.ToDateTime(x.ScanTime) < Convert.ToDateTime(strTime[1]))
                         .WhereIF(!string.IsNullOrEmpty(strTime[2]), x => x.ModelCode.Equals(strTime[2]))
                         .WhereIF(!string.IsNullOrEmpty(strTime[3]), x => x.CustomerCode.Equals(strTime[3]))
+                        .WhereIF(!string.IsNullOrEmpty(strTime[4]), x => x.DeliveryNo.Equals(strTime[4]))
                         .ToPageListAsync(pageList.pageIndex, pageList.pageSize, total);
                     pageList.totals = total;
                 }
@@ -111,6 +156,7 @@
                         .WhereIF(!string.IsNullOrEmpty(where.strStartEnd) && strTime.Length == 2, x => Convert.ToDateTime(x.ScanTime) < EndTime)
                         .WhereIF(!string.IsNullOrEmpty(where.model), x => x.ModelCode == where.model)
                         .WhereIF(!string.IsNullOrEmpty(where.customerCode), x => x.CustomerCode.Equals(where.customerCode))
+                        .WhereIF(!string.IsNullOrEmpty(where.deliveryNo), x => x.DeliveryNo.Equals(where.deliveryNo))
                         .ToListAsync();
                 }
                 catch (Exception ex)
@@ -142,7 +188,8 @@
                         .WhereIF(!string.IsNullOrEmpty(where.strStartEnd) && strTime.Length == 2, x => Convert.ToDateTime(x.CREATE_TIME) < EndTime)
                         .WhereIF(!string.IsNullOrEmpty(where.model), x => x.ItemCode == where.model)
                         .WhereIF(!string.IsNullOrEmpty(where.customerCode), x => x.CustomerCode.Equals(where.customerCode))
-                        .ToListAsync();
+                        .WhereIF(!string.IsNullOrEmpty(where.deliveryNo), x => x.DeliveryNo.Equals(where.deliveryNo))
+                        .OrderBy(x=>x.CREATE_TIME).OrderBy(x => x.Scanner).ToListAsync();
                 }
                 catch (Exception ex)
                 {

--
Gitblit v1.9.3