コード例 #1
0
ファイル: SalesData.cs プロジェクト: davinx/himedi
 public override bool UpdateLineItem(string orderId, LineItemInfo lineItem, DbTransaction dbTran)
 {
     DbCommand sqlStringCommand = database.GetSqlStringCommand("UPDATE Hishop_OrderItems SET ShipmentQuantity=@ShipmentQuantity,ItemAdjustedPrice=@ItemAdjustedPrice,Quantity=@Quantity, PurchaseGiftId=@PurchaseGiftId,PurchaseGiftName=@PurchaseGiftName,WholesaleDiscountId=@WholesaleDiscountId,WholesaleDiscountName=@WholesaleDiscountName  WHERE OrderId=@OrderId AND SkuId=@SkuId");
     database.AddInParameter(sqlStringCommand, "OrderId", DbType.String, orderId);
     database.AddInParameter(sqlStringCommand, "SkuId", DbType.String, lineItem.SkuId);
     database.AddInParameter(sqlStringCommand, "ShipmentQuantity", DbType.Int32, lineItem.ShipmentQuantity);
     database.AddInParameter(sqlStringCommand, "ItemAdjustedPrice", DbType.Currency, lineItem.ItemAdjustedPrice);
     database.AddInParameter(sqlStringCommand, "Quantity", DbType.Int32, lineItem.Quantity);
     database.AddInParameter(sqlStringCommand, "PurchaseGiftId", DbType.Int32, lineItem.PurchaseGiftId);
     database.AddInParameter(sqlStringCommand, "PurchaseGiftName", DbType.String, lineItem.PurchaseGiftName);
     database.AddInParameter(sqlStringCommand, "WholesaleDiscountId", DbType.Int32, lineItem.WholesaleDiscountId);
     database.AddInParameter(sqlStringCommand, "WholesaleDiscountName", DbType.String, lineItem.WholesaleDiscountName);
     if (dbTran != null)
     {
         return (database.ExecuteNonQuery(sqlStringCommand, dbTran) == 1);
     }
     return (database.ExecuteNonQuery(sqlStringCommand) == 1);
 }
コード例 #2
0
ファイル: SubsiteSalesHelper.cs プロジェクト: davinx/himedi
 public static bool UpdateOrderItem(string orderId, LineItemInfo lineItem)
 {
     return SubsiteSalesProvider.Instance().UpdateLineItem(orderId, lineItem, null);
 }
コード例 #3
0
ファイル: SalesProvider.cs プロジェクト: davinx/himedi
 public abstract bool UpdateLineItem(string orderId, LineItemInfo lineItem, DbTransaction dbTran);
コード例 #4
0
ファイル: ShoppingProcessor.cs プロジェクト: davinx/himedi
        public static OrderInfo ConvertShoppingCartToOrder(ShoppingCartInfo shoppingCart, bool isGroupBuy, bool isCountDown, bool isSignBuy)
        {
            if ((shoppingCart.LineItems.Count == 0) && (shoppingCart.LineGifts.Count == 0))
            {
                return null;
            }
            OrderInfo info = new OrderInfo();
            info.ActivityId = shoppingCart.FeeFreeActivityId;
            info.ActivityName = shoppingCart.FeeFreeName;
            info.OrderOptionFree = shoppingCart.OrderOptionFree;
            info.ProcedureFeeFree = shoppingCart.ProcedureFeeFree;
            info.EightFree = shoppingCart.EightFree;
            info.DiscountId = shoppingCart.DiscountActivityId;
            info.DiscountName = shoppingCart.DiscountName;
            info.DiscountValue = shoppingCart.DiscountValue;
            info.DiscountValueType = shoppingCart.DiscountValueType;
            //OrderInfo info = info6;

            string skuIds = string.Empty;
            if (shoppingCart.LineItems.Values.Count > 0)
            {
                foreach (ShoppingCartItemInfo item in shoppingCart.LineItems.Values)
                {
                    skuIds = skuIds + string.Format("'{0}',", item.SkuId);
                }
            }

            Dictionary<string, decimal> costPriceForItems = new Dictionary<string, decimal>();
            if (!string.IsNullOrEmpty(skuIds))
            {
                skuIds = skuIds.Substring(0, skuIds.Length - 1);
                costPriceForItems = ShoppingProvider.Instance().GetCostPriceForItems(skuIds);
            }

            if (shoppingCart.LineItems.Values.Count > 0)
            {
                foreach (ShoppingCartItemInfo info2 in shoppingCart.LineItems.Values)
                {
                    decimal memberPrice = info2.MemberPrice;
                    decimal costPrice = 0M;
                    if (((info2.WholesaleDiscountId > 0) && !string.IsNullOrEmpty(info2.WholesaleDiscountName)) && info2.DiscountRate.HasValue)
                    {
                        memberPrice = info2.MemberPrice * (info2.DiscountRate.Value / 100M);
                    }
                    if ((isGroupBuy || isCountDown) || isSignBuy)
                    {
                        costPrice = ShoppingProvider.Instance().GetCostPrice(info2.SkuId);
                    }
                    else if (costPriceForItems.ContainsKey(info2.SkuId))
                    {
                        costPrice = costPriceForItems[info2.SkuId];
                    }
                    LineItemInfo info3 = new LineItemInfo(info2.SkuId, info2.ProductId, info2.SKU, info2.Quantity, info2.Quantity + info2.GiveQuantity, costPrice, info2.MemberPrice, memberPrice, info2.Name, info2.ThumbnailUrl40, info2.Weight, info2.PurchaseGiftId, info2.PurchaseGiftName, info2.WholesaleDiscountId, info2.WholesaleDiscountName, info2.SkuContent);
                    info.LineItems.Add(info3.SkuId, info3);
                }
            }
            if (shoppingCart.LineGifts.Count > 0)
            {
                foreach (ShoppingCartGiftInfo info4 in shoppingCart.LineGifts)
                {
                    OrderGiftInfo item = new OrderGiftInfo();
                    item.GiftId = info4.GiftId;
                    item.GiftName = info4.Name;
                    item.Quantity = info4.Quantity;
                    item.ThumbnailsUrl = info4.ThumbnailUrl40;
                    if (HiContext.Current.SiteSettings.IsDistributorSettings)
                    {
                        item.CostPrice = info4.PurchasePrice;
                    }
                    else
                    {
                        item.CostPrice = info4.CostPrice;
                    }
                    info.Gifts.Add(item);
                }
            }
            return info;
        }