From 1032e7e409dff2134a4a1086fda34a55f025dcbc Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期五, 31 十月 2025 11:46:43 +0800
Subject: [PATCH] 提交

---
 CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderDAL.cs |  136 +++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 129 insertions(+), 7 deletions(-)

diff --git a/CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderDAL.cs b/CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderDAL.cs
index 624a1f1..7399928 100644
--- a/CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderDAL.cs
+++ b/CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderDAL.cs
@@ -157,6 +157,112 @@
         }
 
 
+
+        /// <summary>
+        /// 鏂板缓璁㈠崟(鍏紝鍚鏉�)
+        /// </summary>
+        /// <param name="orderBasic">璁㈠崟鍩虹淇℃伅</param>
+        /// <param name="orderExtend">璁㈠崟鎵╁睍淇℃伅</param>
+        /// <param name="tradingSingle">浜ゆ槗鍗�</param>
+        /// <param name="acceptWayByOrder">璁㈠崟鏀惰揣鏂瑰紡</param>
+        /// <param name="payRequest">鏀粯璇锋眰(鍙┖)</param>
+        /// <param name="commission">璁㈠崟鍙楃悊浣i噾(浼犲叆鍊煎ぇ浜�0鏃朵細璋冪敤鍙楃悊璁㈠崟杩涜鍙楃悊)</param>
+        /// <param name="seckillId">绉掓潃涓氬姟缂栧彿(浼犲叆鍊煎ぇ浜�0鏃朵細鍑忓皯绉掓潃鏁伴噺1)</param>
+        /// <param name="orderPrintParameter">鍗板埛鍙傛暟瀵硅薄(绉掓潃璁㈠崟涓嶄紶鍏�)</param>
+        /// <returns></returns>
+        public bool NewOrdersheji(EC_OrderBasic orderBasic, EC_OrderExtend orderExtend, Pay_TradingSingle tradingSingle, EC_AcceptWayByOrder acceptWayByOrder, Pay_Request payRequest = null, double commission = 0, int seckillId = 0, EC_OrderPrintParameter orderPrintParameter = null)
+        {
+            try
+            {
+                _eC_OrderExtendDAL = new EC_OrderExtendDAL(_dataBase);
+                _pay_TradingSingleDAL = new Pay_TradingSingleDAL(_dataBase);
+                _eC_AcceptWayByOrderDAL = new EC_AcceptWayByOrderDAL(_dataBase);
+                _eC_OrderOperateDAL = new EC_OrderOperateDAL(_dataBase);
+                _eC_MemberBasicDAL = new EC_MemberBasicDAL(_dataBase);
+                _oA_CorporateClientsDAL = new OA_CorporateClientsDAL(_dataBase);
+                using (System.Transactions.TransactionScope tran = new System.Transactions.TransactionScope())
+                {
+                    bool isWin = false;
+                    isWin = _eC_OrderBasicDAL.InserModelsheji(orderBasic);
+                    if (!isWin)
+                    {
+                        return false;
+                    }
+                    acceptWayByOrder.TargetId = tradingSingle.OrderId = orderExtend.Keyid = orderBasic.Keyid;//鑾峰彇杩斿洖鐨勮鍗曞敮涓�缂栧彿
+                    isWin = _eC_OrderExtendDAL.InserModel(orderExtend);
+                    if (!isWin)
+                    {
+                        return false;
+                    }
+
+                    isWin = _eC_AcceptWayByOrderDAL.InserModel(acceptWayByOrder);
+                    if (!isWin)
+                    {
+                        return false;
+                    }
+                    isWin = _pay_TradingSingleDAL.InserModel(tradingSingle);
+                    if (!isWin)
+                    {
+                        return false;
+                    }
+
+                    //澧炲姞涓嬪崟鎿嶄綔璁板綍
+                    isWin = _eC_OrderOperateDAL.InserModel(new EC_OrderOperate()
+                    {
+                        OperateType = 1,
+                        Operator = orderBasic.Operator,
+                        OrderId = orderBasic.Keyid,
+                        Remark = string.Empty
+                    });
+                    if (!isWin)
+                    {
+                        return false;
+                    }
+
+                    if (null != payRequest)//鏈夋敮浠樿姹傚垯璋冪敤鏀粯璁㈠崟鏂规硶
+                    {
+                        //浼犲叆鐨刾ayRequest.Subject蹇呴』涓烘牸寮忓寲鍣� 鏍煎紡渚嬪:{0},{1},{2}
+                        //0:Keyid,1:SellerOrderId,2:DocumentName
+                        payRequest.Subject = string.Format(payRequest.Subject, orderBasic.Keyid, orderBasic.SellerOrderId, orderBasic.DocumentName);
+                        isWin = _eC_OrderBasicDAL.PayOrder(orderBasic.Keyid.Value, payRequest, commission, 0);
+                    }
+
+                    if (0 < seckillId)
+                    {
+                        _eC_SeckillBusinessDAL = new EC_SeckillBusinessDAL(_dataBase);
+                        //鑻ユ湁绉掓潃涓氬姟缂栧彿鍒欐墸闄ゅ叾绉掓潃鏁伴噺1
+                        isWin = _eC_SeckillBusinessDAL.DecreaseSeckillNum(seckillId, 1, orderBasic.BuyerId);
+                    }
+                    if (!isWin)
+                    {
+                        return false;
+                    }
+                    if (null != orderPrintParameter)
+                    {
+                        _eC_OrderPrintParameterDAL = new EC_OrderPrintParameterDAL(_dataBase);
+                        orderPrintParameter.OrderId = orderBasic.Keyid.Value;
+                        isWin = _eC_OrderPrintParameterDAL.InserModel(orderPrintParameter);
+                    }
+
+                    if (!isWin)
+                    {
+                        return false;
+                    }
+                    else
+                        tran.Complete();
+                }
+
+            }
+            catch (Exception ex)
+            {
+                throw ex;
+            }
+            return true;
+        }
+
+
+
+
         /// <summary>
         /// 鏂板缓璁㈠崟(鍏紝鍚鏉�)鎵归噺
         /// </summary>
@@ -1570,7 +1676,7 @@
             fromSouce += @" 
                       
      select occ.City+occ.County as quyu   ,oc.CompanyName as BuyerName,os.Name as BusinessManager,oc.CreateTime,contracttype.Name as ContracttypeName,oc.Contractmoney
-,expiretype.Name as ExpiretypeName,oc.ExpireTime,ob.SumPrice,  ob.PayedMoney,oc.CustomerId
+,expiretype.Name as ExpiretypeName,oc.ExpireTime,ob.SumPrice,  ob.PayedMoney,oc.CustomerId,ob.OrAllUnPayedMoney
 
 
 from  [OA_CorporateClients] oc
@@ -1578,17 +1684,33 @@
 left join  OA_Staff os  on oc.BusinessManagerId = os.Keyid
 left join [Sys_Dictionary] contracttype on contracttype.DicType='鍚堝悓閲戦' and contracttype.MeanValue = oc.Contracttype
 left join [Sys_Dictionary] expiretype on expiretype.DicType='鍒版湡鏃堕棿' and expiretype.MeanValue = oc.Expiretype
-left join ( select  ob.BuyerId,sum(ob.SumPrice) SumPrice,sum(ts.PayedMoney)  PayedMoney ,COUNT(*) as shuliang
-  from EC_OrderBasic ob Inner Join EC_OrderExtend as oe On(ob.Keyid=oe.Keyid) Inner Join Pay_TradingSingle as ts On(ob.Keyid = ts.OrderId)
-  left join EC_AwbInfo ea  on ob.Keyid = ea.Keyid  Inner Join OA_CorporateClients occ  on ob.BuyerId = occ.Keyid  where   (occ.WanjieTime IS NULL OR DATEDIFF(DAY,occ.WanjieTime,ob.CreateTime)>=0) 
-   
-  group by ob.BuyerId ) ob  on oc.Keyid = ob.BuyerId
+left join ( select  ob.BuyerId,sum(ob.SumPrice) SumPrice,sum(ts.PayedMoney)  PayedMoney ,COUNT(*) as shuliang,SUM( Case When ( (ob.SumPrice-ts.PayedMoney) <=0 or ob.PayState =-1) then 0 else (ob.SumPrice-ts.PayedMoney) end) OrAllUnPayedMoney "
+ + "  from EC_OrderBasic ob Inner Join EC_OrderExtend as oe On(ob.Keyid=oe.Keyid) Inner Join Pay_TradingSingle as ts On(ob.Keyid = ts.OrderId  and ob.OrderState != 0  and  ob.SellerId = '" + FirmId + "'   )  "
+ // + "left join EC_AwbInfo ea  on ob.Keyid = ea.Keyid  Inner Join OA_CorporateClients occ  on ob.BuyerId = occ.Keyid  "
+  + " and (ob.OrderState <> 0 or (ob.OrderState = 0 and ts.PayedMoney > 0))"
+  + "group by ob.BuyerId ) ob  on oc.Keyid = ob.BuyerId  " + where;
 
-                         " + where;
+
 
 
             fromSouce += " )as t   ";
 
+
+
+
+
+            var ssss = _dataBase.SelectModel<Model.OA_DeliverPlan>("  sum(t.Contractmoney) as Contractmoney,sum(t.SumPrice) as SumPrice,sum(t.PayedMoney) as PayedMoney,sum(t.OrAllUnPayedMoney) OrAllUnPayedMoney ", fromSouce);
+            if (ssss.Count > 0)
+            {
+                var aaaaa = ssss.First();
+                pagination.heji1 = aaaaa.Contractmoney ?? 0;
+                pagination.heji2 = aaaaa.SumPrice ?? 0;
+                pagination.heji3 = aaaaa.UnorderMoney ?? 0;
+                pagination.heji4 = aaaaa.PayedMoney ?? 0;
+                pagination.heji5 = aaaaa.OrAllUnPayedMoney;
+            }
+
+
             var result = _dataBase.SelectModelPage<Model.OA_DeliverPlan>(pagination, selectTarget, fromSouce, " CreateTime DESC ");//鎵ц鏌ヨ
             return null == result ? null : result;//杩斿洖缁撴灉
         }

--
Gitblit v1.9.1