From 2605af51ca4787434c8c5f2b10dc0adc78a2fdb0 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期五, 14 三月 2025 17:17:45 +0800
Subject: [PATCH] 外协管理,外协订单,你列表操作后面增加一个完工点,完工就进行。就是说,已完工处理好,前面呢,有个批量完工,好检索查询条件,也加个完工。

---
 CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderBasicDAL.cs |  242 ++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 231 insertions(+), 11 deletions(-)

diff --git a/CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderBasicDAL.cs b/CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderBasicDAL.cs
index f9b77bf..8ad1113 100644
--- a/CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderBasicDAL.cs
+++ b/CY_ECommercePlatform/CY.SQLDAL/EC/EC_OrderBasicDAL.cs
@@ -124,6 +124,15 @@
             {
                 unitPricePar = new SqlParameter("@UnitPrice", DBNull.Value);
             }
+            SqlParameter DeliveryTime = null;
+            if (trueModel.DeliveryTime.HasValue)
+            {
+                DeliveryTime = new SqlParameter("@DeliveryTime", trueModel.DeliveryTime);
+            }
+            else
+            {
+                DeliveryTime = new SqlParameter("@DeliveryTime", DBNull.Value);
+            }
             IList<SqlParameter> sqlParms = new List<SqlParameter>()
             {
                     new SqlParameter(){ ParameterName ="@Keyid", SqlDbType=System.Data.SqlDbType.Int, DbType=System.Data.DbType.Int32, Direction=ParameterDirection.Output},
@@ -131,7 +140,7 @@
 					new SqlParameter("@OrderTypeId",trueModel.OrderTypeId),
 					new SqlParameter("@PrintTypeId",trueModel.PrintTypeId),
                     new SqlParameter("@DocumentName",trueModel.DocumentName),
-					new SqlParameter("@DeliveryTime",trueModel.DeliveryTime),
+                    DeliveryTime,//new SqlParameter("@DeliveryTime",trueModel.DeliveryTime),
 					new SqlParameter("@SellerId",trueModel.SellerId),
 					new SqlParameter("@BuyerId",trueModel.BuyerId),
                     new SqlParameter("@SellerName",trueModel.SellerName){SqlDbType=SqlDbType.VarChar,Size=200},
@@ -178,6 +187,16 @@
             {
                 unitPricePar = new SqlParameter("@UnitPrice", DBNull.Value);
             }
+            SqlParameter DeliveryTime = null;
+            if (trueModel.DeliveryTime.HasValue)
+            {
+                DeliveryTime = new SqlParameter("@DeliveryTime", trueModel.DeliveryTime);
+            }
+            else
+            {
+                DeliveryTime = new SqlParameter("@DeliveryTime", DBNull.Value);
+            }
+            
 
             IList<SqlParameter> sqlParms = new List<SqlParameter>()
             {
@@ -187,8 +206,8 @@
                     new SqlParameter("@SellerId",trueModel.SellerId),
                     new SqlParameter("@SellerName",trueModel.SellerName),
 					new SqlParameter("@DocumentName",trueModel.DocumentName),
-					new SqlParameter("@DeliveryTime",trueModel.DeliveryTime),
-					unitPricePar,
+                    DeliveryTime,//new SqlParameter("@DeliveryTime",trueModel.DeliveryTime),
+                    unitPricePar,
 					new SqlParameter("@SumPrice",trueModel.SumPrice),
 					new SqlParameter("@PayState",trueModel.PayState),
 					new SqlParameter("@Operator",trueModel.Operator),
@@ -272,6 +291,31 @@
             }
             return true;
         }
+
+        /// <summary>
+        /// 鍒犻櫎澶栧崗璁㈠崟
+        /// </summary>
+        /// <param name="OrderId"></param>
+        /// <returns></returns>
+        public bool UpdateOldOrderSurplusPrintNum(int OrderId)
+        {
+            IList<SqlParameter> sqlParms = new List<SqlParameter>()
+            {
+                new SqlParameter("@Keyid",OrderId)
+            };
+            string sql = " Update [EC_OrderExtend] Set [SurplusPrintNum]=[PrintNum]   where [Keyid] = (select [OrderId] from [OA_OrderWorkListRelation] where [RelationTargetId] = @Keyid and [RelationTypeId]=4 )  ;Update [EC_OrderBasic] Set [OrderState]=2   where [Keyid] = (select [OrderId] from [OA_OrderWorkListRelation] where [RelationTargetId] = @Keyid and [RelationTypeId]=4 )   ";
+
+            try
+            {
+                _dataBase.ExecuteSql(sql, sqlParms.ToArray<SqlParameter>());
+            }
+            catch (Exception ex)
+            {
+                throw ex;
+            }
+            return true;
+        }
+       
 
         /// <summary>
         /// 鍒嗛〉鏌ヨ
@@ -669,7 +713,8 @@
                      new SqlParameter("@KaipiaoshenqingId",DBNull.Value){SqlDbType=SqlDbType.UniqueIdentifier},
                      new SqlParameter("@buyerId",DBNull.Value){SqlDbType=SqlDbType.UniqueIdentifier},
                      new SqlParameter("@DocumentName",DBNull.Value){SqlDbType=SqlDbType.VarChar,Size=50},
-                     
+                     new SqlParameter("@Orderids",DBNull.Value){SqlDbType=SqlDbType.VarChar,Size=500},
+
             };
 
             /*
@@ -753,9 +798,9 @@
                 }
             }
             /*鑾峰彇椤垫暟涓庤繑鍥炴暟鎹潯鏁�*/
-            int? resultValue = CY.Infrastructure.Common.MyConvert.ConvertToInt32(sqlParms[31].Value);
+            int? resultValue = CY.Infrastructure.Common.MyConvert.ConvertToInt32(sqlParms[32].Value);
             pagination.PageCount = resultValue.HasValue ? resultValue.Value : 0;
-            resultValue = CY.Infrastructure.Common.MyConvert.ConvertToInt32(sqlParms[32].Value);
+            resultValue = CY.Infrastructure.Common.MyConvert.ConvertToInt32(sqlParms[33].Value);
             pagination.RecordCount = resultValue.HasValue ? resultValue.Value : 0;
 
             return result;
@@ -1008,7 +1053,9 @@
                 new SqlParameter("@businessManager",DBNull.Value){SqlDbType=SqlDbType.Int},
                 new SqlParameter("@payType",DBNull.Value){SqlDbType=SqlDbType.VarChar,Size=20},
                 new SqlParameter("@returnvisit",DBNull.Value){SqlDbType=SqlDbType.VarChar,Size=20},
-                 new SqlParameter("@appraise",DBNull.Value){SqlDbType=SqlDbType.VarChar,Size=20}
+                 new SqlParameter("@appraise",DBNull.Value){SqlDbType=SqlDbType.VarChar,Size=20},
+                  new SqlParameter("@Orderids",DBNull.Value){SqlDbType=SqlDbType.VarChar,Size=500}
+                 
             };
 
             /*
@@ -1075,9 +1122,9 @@
                 }
             }
             /*鑾峰彇椤垫暟涓庤繑鍥炴暟鎹潯鏁�*/
-            int? resultValue = CY.Infrastructure.Common.MyConvert.ConvertToInt32(sqlParms[19].Value);
+            int? resultValue = CY.Infrastructure.Common.MyConvert.ConvertToInt32(sqlParms[20].Value);
             pagination.PageCount = resultValue.HasValue ? resultValue.Value : 0;
-            resultValue = CY.Infrastructure.Common.MyConvert.ConvertToInt32(sqlParms[20].Value);
+            resultValue = CY.Infrastructure.Common.MyConvert.ConvertToInt32(sqlParms[21].Value);
             pagination.RecordCount = resultValue.HasValue ? resultValue.Value : 0;
 
             return result;
@@ -1283,6 +1330,57 @@
 
         }
 
+
+
+        /// <summary>
+        /// 浣滀笟鏈�佽揣鍒嗛〉鏌ヨ
+        /// </summary>
+        /// <param name="pagination"></param>
+        /// <returns></returns>
+        public IEnumerable<EC_OrderBasic> SelectModelPageWorkBook(Infrastructure.Query.Pagination pagination, Guid _MemberID, string txtBeginDate, string txtEndDate, string txtOrderId, string txtSearchyjname, string selCustormerManager, string selBusinessManager, string selOrderStates)
+        {
+            try
+            {
+                string condition = "  ob.PrintTypeId = 37 ";
+
+                if (_MemberID != Guid.Empty)
+                    condition += " and ob.SellerId = '" + _MemberID + "'";
+
+                if (!string.IsNullOrEmpty(txtBeginDate))
+                    condition += string.Format(" and CAST(ob.CreateTime AS DATE) >='{0}'", txtBeginDate);
+
+                if (!string.IsNullOrEmpty(txtEndDate))
+                {
+                  var EndDate = txtEndDate.ToDateTime2().Value.AddDays(1).ToShortDateString();
+                        condition += string.Format(" and CAST(ob.CreateTime AS DATE) <='{0}'", EndDate);
+                }
+                    
+
+                if (!string.IsNullOrEmpty(txtOrderId))
+                    condition += " and ob.SellerOrderId like '%" + txtOrderId + "%'";
+
+                if (!string.IsNullOrEmpty(txtSearchyjname))
+                    condition += " and ob.DocumentName like '%" + txtSearchyjname + "%'";
+
+                if (!string.IsNullOrEmpty(selCustormerManager))
+                    condition += " and oe.CustomerManagerId = '" + selCustormerManager + "'";
+
+                if (!string.IsNullOrEmpty(selBusinessManager))
+                    condition += " and oe.BusinessManagerId = '" + selBusinessManager + "'";
+
+                if (!string.IsNullOrEmpty(selOrderStates))
+                    condition += " and ob.OrderState = '" + selOrderStates + "'";
+
+ 
+
+                return _dataBase.SelectModelPage<EC_OrderBasic>(pagination, " ob.*,oe.shifouDelivery,oe.DeliveryOrderId,oe.KaipiaoshenqingCreater,oe.KaipiaoshenqingTime,oe.KaipiaoquerenCreater,oe.KaipiaoquerenTime,oe.Kehuqianshou,oe.KehuqianshouCreater,oe.KehuqianshouTime   ,oe.Quchudingdan,oe.QuchudingdanCreater,oe.QuchudingdanTime,oe.PrintPackDeliveryRequir,oe.PrintNum,oe.ExigencyCaseId,opy.Name as yssldw ", " EC_OrderBasic as ob Inner Join EC_OrderExtend as oe On(ob.Keyid=oe.Keyid) Left Join Sys_Dictionary as opy On (opy.DicType='鍗板埛鍗曚綅' And  opy.MeanValue = oe.printunit )   ", " ob.Keyid DESC ", " Keyid DESC ", condition);
+            }
+            catch (Exception ex)
+            {
+                throw ex;
+            }
+        }
+
         /// <summary>
         /// 鍗曚釜鏌ヨ
         /// </summary>
@@ -1361,6 +1459,53 @@
                 throw ex;
             }
 
+        }
+
+
+
+        /// <summary>
+        /// 閿佸崟璁㈠崟
+        /// </summary>
+        /// <param name="orderId">璁㈠崟缂栧彿</param>
+        /// <param name="operater">鎿嶄綔浜�</param>
+        /// <returns></returns>
+        public bool SuodingOrder(int orderId, string operater)
+        {
+            if (0 >= orderId || 0 >= orderId)
+            {
+                return false;
+            }
+            else
+            {
+            }
+           
+            IList<SqlParameter> sqlParms = new List<SqlParameter>()
+            {
+                  
+                    new SqlParameter("@SuodanState",true),
+                    new SqlParameter("@SuodanTime",DateTime.Now),
+                     new SqlParameter("@SuodanOperator",operater),
+                        new SqlParameter("@Keyid",orderId),
+            };
+            IList<SqlParameter> sqlParms1 = new List<SqlParameter>()
+            {
+                        new SqlParameter("@Keyid",orderId),
+            };
+            try
+            {
+                string sql = "Update EC_OrderBasic Set [SuodanState]=@SuodanState,[SuodanTime]=@SuodanTime,[SuodanOperator]=@SuodanOperator  where [Keyid] =@Keyid ";
+                _dataBase.ExecuteSql(sql, sqlParms.ToArray<SqlParameter>());
+                
+                string sql1 = "Update CoreCmsPlanOrder Set [status]=2  where [orderkeyid] =@Keyid ";
+                _dataBase.ExecuteSql(sql1, sqlParms1.ToArray<SqlParameter>());
+
+
+            }
+            catch (Exception ex)
+            {
+                throw ex;
+            }
+            return true;
         }
 
         /// <summary>
@@ -1803,6 +1948,59 @@
 
         }
 
+
+
+        /// <summary>
+        /// 鏀舵(绾夸笅杞处銆佺幇閲�)
+        /// </summary>
+        /// <param name="orderId">璁㈠崟缂栧彿</param>
+        /// <param name="firmAccountRecord">鎿嶄綔璁板綍</param>
+        /// <returns></returns>
+        public bool ReceiveMoneyToQueren(int orderId, OA_FirmAccountRecord firmAccountRecord)
+        {
+            bool isWin = false;
+            if (0 >= orderId  || !firmAccountRecord.Money.HasValue)
+                return false;
+            else
+                ;
+            if ( 0 > firmAccountRecord.Money.Value)
+                return false;
+            else
+                ;
+            try
+            {
+                OA_FirmAccountRecordDAL oA_FirmAccountRecordDAL = new OA_FirmAccountRecordDAL(_dataBase);
+                using (TransactionScope tran = new TransactionScope())
+                {
+                    
+
+                    //鏇存柊璁㈠崟鏀粯閲戦
+                    isWin = this.UpdateOrderPayedMoney(orderId, -1, firmAccountRecord.Money.Value);
+                    if (!isWin)
+                    {
+                        return isWin;
+                    }
+                    else
+                        ;
+                    //鏇存柊璁㈠崟鐘舵��
+                    isWin = this.UpdateOrderPayState(orderId);
+                    if (!isWin)
+                    {
+                        return isWin;
+                    }
+                    else
+                        ;
+                    tran.Complete();
+                }
+            }
+            catch (Exception ex)
+            {
+                throw ex;
+            }
+            return isWin;
+
+        }
+
         /// <summary>
         /// 鏀舵(澶栧崗棰勪粯娆俱�佸鎴烽浠樻)
         /// </summary>
@@ -1877,7 +2075,7 @@
                 if (string.IsNullOrEmpty(Keyids))
                     return null;//閿欒鏁版嵁杩斾細绌� 
 
-                IList<EC_OrderBasic> result = _dataBase.SelectModel<EC_OrderBasic>("*", "EC_OrderBasic", string.Format(" Keyid in ({0}) and SellerId ='{1}' order by SellerOrderId DESC ", Keyids, FirmId)) as IList<EC_OrderBasic>;//鎵ц鏌ヨ
+                IList<EC_OrderBasic> result = _dataBase.SelectModel<EC_OrderBasic>("*", "EC_OrderBasic", string.Format(" Keyid in ({0})  order by SellerOrderId DESC ", Keyids)) as IList<EC_OrderBasic>;//鎵ц鏌ヨ and SellerId ='{1}' , FirmId
 
                 return result;//杩斿洖缁撴灉
             }
@@ -2628,6 +2826,28 @@
             }
         }
 
+
+        /// <summary>
+        /// 淇敼鎵撳嵃鐘舵��
+        /// </summary>
+        /// <param name="orderId"></param>
+        public bool Updatejinedanjia(int orderId, decimal SumPrice, decimal UnitPrice,int num)
+        {
+            try
+            {
+                string sqlStr = string.Empty;
+                sqlStr = "UPDATE EC_OrderBasic SET SumPrice="+ SumPrice + " ,UnitPrice="+ UnitPrice + " WHERE Keyid=@orderId;UPDATE [EC_OrderExtend] SET [PrintNum]=" + num + "  WHERE Keyid="+ orderId ;
+                SqlParameter par = new SqlParameter("@orderId", orderId);
+                _dataBase.ExecuteSql(sqlStr, par);
+            }
+            catch
+            {
+
+            }
+
+            return true;
+        }
+
         /// <summary>
         /// 淇敼鎵撳嵃鐘舵��
         /// </summary>
@@ -2961,7 +3181,7 @@
                 if (deliverorderId==null || deliverorderId.Equals(Guid.Empty))
                     return null;//閿欒鏁版嵁杩斾細绌� 
 
-                IList<EC_OrderBasic> result = _dataBase.SelectModel<EC_OrderBasic>(" ob.*,oe.shifouDelivery,oe.DeliveryOrderId,oe.Kaipiaoshenqing,oe.KaipiaoshenqingCreater,oe.KaipiaoshenqingTime,oe.KaipiaoquerenCreater,oe.KaipiaoquerenTime,oe.Kehuqianshou,oe.KehuqianshouCreater,oe.KehuqianshouTime   ,oe.Quchudingdan,oe.QuchudingdanCreater,oe.QuchudingdanTime,oe.PrintPackDeliveryRequir,oe.PrintNum,oe.ExigencyCaseId,pt.PrintName as PrintTypeName ", "EC_OrderBasic ob   Inner Join EC_OrderExtend as oe On ob.Keyid=oe.Keyid   Left Join SysInquiry_PrintingType as pt On(ob.PrintTypeId=pt.Keyid) ", string.Format(" oe.DeliveryOrderId = '{0}' and ob.SellerId ='{1}' order by SellerOrderId DESC ", deliverorderId, FirmId)) as IList<EC_OrderBasic>;//鎵ц鏌ヨ
+                IList<EC_OrderBasic> result = _dataBase.SelectModel<EC_OrderBasic>(" ob.*,oe.printunit,oe.shifouDelivery,oe.DeliveryOrderId,oe.Kaipiaoshenqing,oe.KaipiaoshenqingCreater,oe.KaipiaoshenqingTime,oe.KaipiaoquerenCreater,oe.KaipiaoquerenTime,oe.Kehuqianshou,oe.KehuqianshouCreater,oe.KehuqianshouTime   ,oe.Quchudingdan,oe.QuchudingdanCreater,oe.QuchudingdanTime,oe.PrintPackDeliveryRequir,oe.PrintNum,oe.ExigencyCaseId,pt.PrintName as PrintTypeName ", "EC_OrderBasic ob   Inner Join EC_OrderExtend as oe On ob.Keyid=oe.Keyid   Left Join SysInquiry_PrintingType as pt On(ob.PrintTypeId=pt.Keyid) ", string.Format(" oe.DeliveryOrderId = '{0}' and ob.SellerId ='{1}' order by SellerOrderId DESC ", deliverorderId, FirmId)) as IList<EC_OrderBasic>;//鎵ц鏌ヨ
 
                 return result;//杩斿洖缁撴灉
             }

--
Gitblit v1.9.1