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>
@@ -1775,6 +1920,59 @@
                        else
                            ;
                    }
                    //更新订单支付金额
                    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>
        /// <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);
@@ -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;//返回结果
            }