From a4f39526873f45396bf778413979293eabb3be07 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期五, 20 九月 2024 13:16:48 +0800
Subject: [PATCH] 修改优化查询等

---
 CY_ECommercePlatform/CY.WebForm/Pages/business/kaipiaoConfirm.aspx.cs |  125 ++++++++++++++++++++++++++---------------
 1 files changed, 78 insertions(+), 47 deletions(-)

diff --git a/CY_ECommercePlatform/CY.WebForm/Pages/business/kaipiaoConfirm.aspx.cs b/CY_ECommercePlatform/CY.WebForm/Pages/business/kaipiaoConfirm.aspx.cs
index 9f0e539..5a982f0 100644
--- a/CY_ECommercePlatform/CY.WebForm/Pages/business/kaipiaoConfirm.aspx.cs
+++ b/CY_ECommercePlatform/CY.WebForm/Pages/business/kaipiaoConfirm.aspx.cs
@@ -51,22 +51,33 @@
                 decimal total = 0;
                 string name = "";
                 this.txtOrderIds.Value = orderIdStr;
-                string[] idsArray = orderIdStr.Split(',');
-                if (idsArray != null && idsArray.Length > 0)
-                {                    
-                    foreach(var item in idsArray)
-                    {
-                        var model = _eC_OrderBLL.GetOrderById(int.Parse(item));
-                        if (model != null)
-                        {
-                            total += model.SumPrice??0;
-                            if(string.IsNullOrEmpty(name))
-                            {
-                                name = model.BuyerName;
-                            }
-                        }
-                    }
+                // string[] idsArray = orderIdStr.Split(',');
+                //if (idsArray != null && idsArray.Length > 0)
+                //{
+
+
+                var models = _eC_OrderBLL.GetOrderByIds(orderIdStr).ToList();
+                if(models!=null&& models.Count > 0)
+                {
+                    name = models[0].BuyerName;
                 }
+                total = models.Sum(x=>x.SumPrice)??0;
+
+
+
+                    //foreach (var item in idsArray)
+                    //{
+                    //    var model = _eC_OrderBLL.GetOrderById(int.Parse(item));
+                    //    if (model != null)
+                    //    {
+                    //        total += model.SumPrice??0;
+                    //        if(string.IsNullOrEmpty(name))
+                    //        {
+                    //            name = model.BuyerName;
+                    //        }
+                    //    }
+                    //}
+                //}
                 kpmoney.InnerText = total.ToString("0.00");
                 khname.InnerText = name;
             }
@@ -93,60 +104,80 @@
             {
                 EC_OrderBasic eC_OrderBasic = bll_EC_OrderBasicBLL.SelectModelById(idsArray[0].ToInt32().Value);
                 OA_CorporateClients oA_CorporateClients = _oA_CorporateClientsBLL.SelectModelByFirmIdandMemberId(CurrentUser.MemberId, eC_OrderBasic.BuyerId);
-                using (TransactionScope scope = new TransactionScope())
+                using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required,
+           new TransactionOptions
+           {
+               IsolationLevel = IsolationLevel.ReadCommitted,
+               Timeout = TransactionManager.MaximumTimeout
+           }
+           )
+                    )
                 {
-                    string ssss = DateTime.Now.ToString("yyyyMMdd");
-                    string SellerOrderId = ssss + 1.ToString("000");
 
-                    string maxSellerOrderId = _oA_KaipiaoshenqingBLL.GetModelByformid(CurrentUser.MemberId).Where(x => x.SellerOrderId.Contains(ssss)).Max(x => x.SellerOrderId);
-                    if (!string.IsNullOrWhiteSpace(maxSellerOrderId))
+                    try
                     {
-                        string aaaaaaaaaaaa = maxSellerOrderId.Substring(maxSellerOrderId.Length - 3, 3);
-                        SellerOrderId = ssss + (aaaaaaaaaaaa.ToInt32().Value + 1).ToString("000");
-                    }
-                    OA_Kaipiaoshenqing oA_DeliverPlan = new OA_Kaipiaoshenqing();
+                        string ssss = DateTime.Now.ToString("yyyyMMdd");
+                        string SellerOrderId = ssss + 1.ToString("000");
+
+                        string maxSellerOrderId = _oA_KaipiaoshenqingBLL.GetModelByformid(CurrentUser.MemberId).Where(x => x.SellerOrderId.Contains(ssss)).Max(x => x.SellerOrderId);
+                        if (!string.IsNullOrWhiteSpace(maxSellerOrderId))
+                        {
+                            string aaaaaaaaaaaa = maxSellerOrderId.Substring(maxSellerOrderId.Length - 3, 3);
+                            SellerOrderId = ssss + (aaaaaaaaaaaa.ToInt32().Value + 1).ToString("000");
+                        }
+                        OA_Kaipiaoshenqing oA_DeliverPlan = new OA_Kaipiaoshenqing();
 
 
-                    oA_DeliverPlan.Keyid = Guid.NewGuid();
-                    oA_DeliverPlan.FirmId = CurrentUser.MemberId;
-                    oA_DeliverPlan.BuyerId = eC_OrderBasic.BuyerId;
-                    oA_DeliverPlan.Kaipiaoshenqing = 1;
-                    oA_DeliverPlan.Kehuqianshou = 1;
-                    oA_DeliverPlan.SellerOrderId = SellerOrderId;
-                    oA_DeliverPlan.remark = this.txtContent.Value;//.Replace("\r\n", "<br>");
+                        oA_DeliverPlan.Keyid = Guid.NewGuid();
+                        oA_DeliverPlan.FirmId = CurrentUser.MemberId;
+                        oA_DeliverPlan.BuyerId = eC_OrderBasic.BuyerId;
+                        oA_DeliverPlan.Kaipiaoshenqing = 1;
+                        oA_DeliverPlan.Kehuqianshou = 1;
+                        oA_DeliverPlan.SellerOrderId = SellerOrderId;
+                        oA_DeliverPlan.remark = this.txtContent.Value;//.Replace("\r\n", "<br>");
 
-                    oA_DeliverPlan.KehuqianshouTime = null;
-                    oA_DeliverPlan.KehuqianshouCreater = null;
-                    oA_DeliverPlan.KaipiaoquerenTime = null;
-                    oA_DeliverPlan.KaipiaoquerenCreater = null;
-                    oA_DeliverPlan.BusinessManagerId = oA_CorporateClients.BusinessManagerId ?? 0;
+                        oA_DeliverPlan.KehuqianshouTime = null;
+                        oA_DeliverPlan.KehuqianshouCreater = null;
+                        oA_DeliverPlan.KaipiaoquerenTime = null;
+                        oA_DeliverPlan.KaipiaoquerenCreater = null;
+                        oA_DeliverPlan.BusinessManagerId = oA_CorporateClients.BusinessManagerId ?? 0;
 
-                    oA_DeliverPlan.Creater = CurrentUser.TrueMemberId;
-                    oA_DeliverPlan.CreateTime = DateTime.Now;
-                    oA_DeliverPlan.Updater = CurrentUser.TrueMemberId;
-                    oA_DeliverPlan.LastUpdateTime = DateTime.Now;
+                        oA_DeliverPlan.Creater = CurrentUser.TrueMemberId;
+                        oA_DeliverPlan.CreateTime = DateTime.Now;
+                        oA_DeliverPlan.Updater = CurrentUser.TrueMemberId;
+                        oA_DeliverPlan.LastUpdateTime = DateTime.Now;
 
-                    _oA_KaipiaoshenqingBLL.InsertModel(oA_DeliverPlan);
+                        _oA_KaipiaoshenqingBLL.InsertModel(oA_DeliverPlan);
 
-                    DateTime kaipiaoshenqing = DateTime.Now;
-                    for (int i = 0; i < idsArray.Length; i++)
-                    {
+                        DateTime kaipiaoshenqing = DateTime.Now;
+                        //for (int i = 0; i < idsArray.Length; i++)
+                        //{
                         bool result = true;
                         EC_OrderExtend model = new EC_OrderExtend();
-                        model.Keyid = idsArray[i].ToInt32();
+                        //model.Keyid = idsArray[i].ToInt32();
                         model.KaipiaoshenqingCreater = CurrentUser.TrueMemberId;
                         model.KaipiaoshenqingTime = kaipiaoshenqing;
                         model.Kaipiaoshenqing = 1;
                         model.KaipiaoshenqingId = oA_DeliverPlan.Keyid;
 
-                        result = _eC_OrderBLL.OldUpdateKaipiaoshenqing(model);
+                        result = _eC_OrderBLL.OldUpdateKaipiaoshenqings(model, ids);
 
                         if (!result)
                         {
                             return;
                         }
+                        //}
+                        scope.Complete();
                     }
-                    scope.Complete();
+                    catch (Exception ex)
+                    {
+                        // 鍥炴粴浜嬪姟
+                    }
+                    finally
+                    {
+                        // 閲婃斁璧勬簮
+                        scope.Dispose();
+                    }
                 }
                 JavaScript.MessageBox("鎻愪氦鎴愬姛", this);
 

--
Gitblit v1.9.1