Himall商城- web私有方法

目录

1 Himall商城- web私有方法

1.1 /// 订单提交页面,拼团数据组装

1.2 /// 处理会员订单类别

1.3 // 平台确认订单支付

  1. Himall商城- web私有方法

   #region web私有方法

        /// <summary>

    1.         /// 订单提交页面,拼团数据组装

        /// </summary>

        /// <param name="actionId">活动编号</param>

        /// <param name="skuId">规格</param>

        /// <param name="count">数量</param>

        /// <returns></returns>

        static List<CartItemModel> GenerateGroupItem(long actionId, string skuId, int count, long? groupId = null)

        {

            bool isnewgroup = false;

            if (groupId > 0)

            {

                isnewgroup = true;

            }

            List<CartItemModel> result = new List<CartItemModel>();

            var actobj = FightGroupApplication.GetActive(actionId);

            var sku = actobj.ActiveItems.FirstOrDefault(d => d.SkuId == skuId);

            if (sku == null)

            {

                throw new HimallException("错误的规格信息");

            }

            if (count > actobj.LimitQuantity)

            {

                throw new HimallException("超过最大限购数量:" + actobj.LimitQuantity.ToString() + "");

            }

            if (sku.ActiveStock < count)

            {

                //throw new HimallException("库存不足");

            }

            if (isnewgroup)

            {

                if (actobj.ActiveStatus != CommonModel.FightGroupActiveStatus.Ongoing)

                {

                    throw new HimallException("拼团活动已结束,不可以开团");

                }

            }

            ProductTypeInfo typeInfo = ServiceProvider.Instance<ITypeService>.Create.GetTypeByProductId(sku.ProductId);

            string colorAlias = (typeInfo == null || string.IsNullOrEmpty(typeInfo.ColorAlias)) ? SpecificationType.Color.ToDescription() : typeInfo.ColorAlias;

            string sizeAlias = (typeInfo == null || string.IsNullOrEmpty(typeInfo.SizeAlias)) ? SpecificationType.Size.ToDescription() : typeInfo.SizeAlias;

            string versionAlias = (typeInfo == null || string.IsNullOrEmpty(typeInfo.VersionAlias)) ? SpecificationType.Version.ToDescription() : typeInfo.VersionAlias;

            string skuDetails = "";

            if (!string.IsNullOrWhiteSpace(sku.Size))

            {

                if (!string.IsNullOrWhiteSpace(skuDetails))

                {

                    skuDetails += "、";

                }

                skuDetails += sku.Size;

            }

            if (!string.IsNullOrWhiteSpace(sku.Color))

            {

                if (!string.IsNullOrWhiteSpace(skuDetails))

                {

                    skuDetails += "、";

                }

                skuDetails += sku.Color;

            }

            if (!string.IsNullOrWhiteSpace(sku.Version))

            {

                if (!string.IsNullOrWhiteSpace(skuDetails))

                {

                    skuDetails += "、";

                }

                skuDetails += sku.Version;

            }

            var product = ProductManagerApplication.GetProduct(sku.ProductId);

            var data = new CartItemModel()

            {

                skuId = skuId,

                id = sku.ProductId,

                imgUrl = HimallIO.GetRomoteProductSizeImage(actobj.ProductImgPath, 1, (int)ImageSize.Size_100),

                name = actobj.ProductName,

                shopId = actobj.ShopId,

                price = sku.ActivePrice,

                count = count,

                productCode = actobj.ProductCode,

                unit = actobj.MeasureUnit,

                size = sku.Size,

                color = sku.Color,

                version = sku.Version,

                skuDetails = skuDetails,

                IsSelf = ShopApplication.IsSelfShop(actobj.ShopId),

                ColorAlias = colorAlias,

                SizeAlias = sizeAlias,

                VersionAlias = versionAlias,

                FreightTemplateId = actobj.FreightTemplateId,

                IsOpenLadder = product.IsOpenLadder

            };

            result.Add(data);

            return result;

        }

        /// <summary>

    1.         /// 处理会员订单类别

        /// </summary>

        /// <param name="orderId"></param>

        /// <param name="userId"></param>

        public static void DealDithOrderCategoryByUserId(long orderId, long userId)

        {

            var orderItem = GetOrderItemsByOrderId(orderId);

            var productIds = orderItem.Select(p => p.ProductId);

            var product = ProductManagerApplication.GetProductsByIds(productIds);

            foreach (var item in product)

            {

                var categoryId = long.Parse(item.CategoryPath.Split('|')[0]);

                OrderAndSaleStatisticsApplication.SynchronizeMemberBuyCategory(categoryId, userId);

            }

        }

        /// <summary>

    1.         // 平台确认订单支付

        public static void PlatformConfirmOrderPay(long orderId, string payRemark, string managerName)

        {

            _iOrderService.PlatformConfirmOrderPay(orderId, payRemark, managerName);

        }

        /// <summary>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

m0_74456535

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值