Exemplo n.º 1
0
        public void Insert(int? CashOrderID,int? CashCompanyID,int CashSum,int? CreatedBy,DateTime? CreatedOn,int? ModifiedBy,DateTime? ModifiedOn)
        {
            OrdersCashCompany item = new OrdersCashCompany();

            item.CashOrderID = CashOrderID;

            item.CashCompanyID = CashCompanyID;

            item.CashSum = CashSum;

            item.CreatedBy = CreatedBy;

            item.CreatedOn = CreatedOn;

            item.ModifiedBy = ModifiedBy;

            item.ModifiedOn = ModifiedOn;

            item.Save(UserName);
        }
Exemplo n.º 2
0
        public static bool SaveSaleRate(Order data, SysMember member,out string message)
        {
            message = string.Empty;

            //赠送积分=(现金支付+储值支付) * 赠送比例
            data.OrderPoint = (data.OrderPay + data.OrderPayCash) * data.OrderRate;
            if (data.OrderPoint.HasValue && data.OrderPoint > 0)
            {
                if (CompanyBLL.IsMaxPointLevel(data.OrderSellerID, data.OrderPoint.Value))
                {
                    message = "累计赠送的积分已经超过500,须进行积分结算后才能继续操作系统";
                    return false;
                }
            }
            data.Save( );
            //data.OrderPoint = (AppContextBase.Context.Company.CompanyType == 2) ? (data.OrderPayCash * data.OrderRate) : ((data.OrderPay + data.OrderPayCash) * data.OrderRate);
            //推荐好友奖励
            RewardBLL.RewardMemberPoint(member, data);
            if (data.OrderPoint > 0M)
            {
                new Payment
                {
                    PaymentDate = data.OrderDate,
                    PaymentCompanyID = data.OrderSellerID,
                    PaymentMemberID = data.OrderMemberID,
                    PaymentMemo = string.Format("在【{0}】消费{1:0.00}元,并获赠{2:0.00}个积分",  AppContextBase.Context.Company.CompanyName,data.OrderSumOk, data.OrderPoint.Value.ToString("#####0.00")),
                    PaymentStatus = 1,
                    PaymentSum = Convert.ToDecimal(data.OrderPoint),
                    PaymentType = 1,
                    PaymentOrderID = data.Id,
                    PaymentCode = data.OrderCode,
                    PaymentEmail = string.Empty
                }.Save( );
            }
            if (data.OrderPayPoint > 0M)
            {
                new Payment
                {
                    PaymentDate = data.OrderDate,
                    PaymentCompanyID = data.OrderSellerID,
                    PaymentMemberID = data.OrderMemberID,
                    PaymentMemo = string.Format("在【{0}】消费{1:0.00}元,其中使用{2:0.00}个积分抵扣", AppContextBase.Context.Company.CompanyName, data.OrderSumOk, Math.Abs(data.OrderPayPoint.Value).ToString("#####0.00")),
                    PaymentStatus = 1,
                    PaymentSum = -Convert.ToDecimal(data.OrderPayPoint),
                    PaymentType = 2,
                    PaymentOrderID = data.Id,
                    PaymentCode = data.OrderCode,
                    PaymentEmail = string.Empty
                }.Save( );
            }
            if (data.OrderPayCash > 0M)
            {
                #region hot company
                if (CompanyBLL.GetCompanyType(AppContextBase.Context.Company.CompanyType) == CompanyType.MealCompany)
                {
                    string queryCode = string.Concat(AreaBLL.GetCompanyCodePrefix(AppContextBase.Context.Company.CompanyCode), "%");
                    //queryCode = queryCode.Substring(0, queryCode.Length - 2) + "%";
                    var query = DB.Select("CashCompanyID", "sum(CashSum) as CashSum")
                                  .From<SysMemberCash>( ).InnerJoin(SysCompany.IdColumn, SysMemberCash.CashCompanyIDColumn)
                                  .Where(SysMemberCash.CashMemberIDColumn).IsEqualTo(member.Id)
                                  .And(SysCompany.CompanyCodeColumn).Like(queryCode)
                                  .ConstraintExpression("Group By CashCompanyID");
                    DataTable result = query.ExecuteDataTable( );
                    foreach (DataRow row in result.Rows)
                    {
                        if (!Utilities.IsNull(row["CashSum"]) && Convert.ToDecimal(row["CashSum"]) > 0M)
                        {
                            OrdersCashCompany orders_cashcompany = new OrdersCashCompany
                            {
                                CashCompanyID = Convert.ToInt32(row["CashCompanyID"]),
                                CashOrderID = data.Id,
                                CashSum = Convert.ToInt32(data.OrderPayCash)
                            };
                            if (Convert.ToInt32(row["CashCompanyID"]) != data.OrderSellerID)
                            {
                                orders_cashcompany.Save( );
                            }
                            new PaymentCash
                            {
                                PaymentCashDate = data.OrderDate,
                                PaymentCashCompanyID = orders_cashcompany.CashCompanyID,
                                PaymentCashMemberID = data.OrderMemberID,
                                PaymentMemo = string.Format("在【{0}】消费{1:0.00}元,使用储值支付{2:0.00}元", AppContextBase.Context.Company.CompanyName, data.OrderSumOk, Math.Abs(data.OrderPayCash.Value).ToString("######.##")),
                                PaymentStatus = 1,
                                PaymentCashSum = -Convert.ToDecimal(data.OrderPayCash),
                                PaymentType = 2,
                                PaymentOrderID = data.Id,
                                PaymentCashCode = data.OrderCode
                            }.Save( );
                            new SysMemberCash
                            {
                                CashCompanyID = orders_cashcompany.CashCompanyID,
                                CashMemberID = data.OrderMemberID,
                                CashOrderID = data.Id,
                                CashDate = data.OrderDate,
                                CashSum = -data.OrderPayCash,
                                CashRate = 0M,
                                CashPoint = 0,
                                CashMemo = "储值支付",
                                CashRateSale = 0,
                            }.Save( );
                        }
                    }
                }
                #endregion
                else
                {
                    new PaymentCash
                    {
                        PaymentCashDate = data.OrderDate,
                        PaymentCashCompanyID = data.OrderSellerID,
                        PaymentCashMemberID = data.OrderMemberID,
                        PaymentMemo = string.Format("在【{0}】消费{1:0.00}元,其中储值支付{2:0.00}元", AppContextBase.Context.Company.CompanyName, data.OrderSumOk, Math.Abs(data.OrderPayCash.Value).ToString("#######.##")),
                        PaymentStatus = 1,
                        PaymentCashSum = -Convert.ToDecimal(data.OrderPayCash),
                        PaymentType = 2,
                        PaymentOrderID = data.Id,
                        PaymentCashCode = data.OrderCode
                    }.Save( );
                    new SysMemberCash
                    {
                        CashCompanyID = data.OrderSellerID,
                        CashMemberID = data.OrderMemberID,
                        CashOrderID = data.Id,
                        CashDate = data.OrderDate,
                        CashSum = -(data.OrderPayCash),
                        CashRate = 0M,
                        CashPoint = 0,
                        CashMemo = "储值支付",
                        CashRateSale = 0
                    }.Save( );
                }
            }

            return true;
        }
Exemplo n.º 3
0
        public void Update(int Id,int? CashOrderID,int? CashCompanyID,int CashSum,int? CreatedBy,DateTime? CreatedOn,int? ModifiedBy,DateTime? ModifiedOn)
        {
            OrdersCashCompany item = new OrdersCashCompany();
            item.MarkOld();
            item.IsLoaded = true;

            item.Id = Id;

            item.CashOrderID = CashOrderID;

            item.CashCompanyID = CashCompanyID;

            item.CashSum = CashSum;

            item.CreatedBy = CreatedBy;

            item.CreatedOn = CreatedOn;

            item.ModifiedBy = ModifiedBy;

            item.ModifiedOn = ModifiedOn;

            item.Save(UserName);
        }