Himall商城- web私有方法

目录

1 Himall商城- web私有方法

1.1 /// 获取用户所有可用的优惠券

1.2 List<BaseCoupon> coupons = new List<BaseCoupon>();

1.3 BaseCoupon c = new BaseCoupon();

  1. Himall商城- web私有方法

   #region web私有方法

        /// <summary>

    1.         /// 获取用户所有可用的优惠券

        /// </summary>

        static List<BaseCoupon> GetBaseCoupon(long shopId, long userId, decimal totalPrice, List<CartItemModel> cartItems, bool isPc = false)

        {

            var userCoupons = CouponApplication.GetUserCoupon(shopId, userId, totalPrice);

            var userBonus = ShopBonusApplication.GetDetailToUse(shopId, userId, totalPrice);

    1.             List<BaseCoupon> coupons = new List<BaseCoupon>();

            foreach (var coupon in userCoupons)

            {

                if (coupon.Himall_Coupon.UseArea == 1)

                {

                    var pids = CouponApplication.GetCouponProductsByCouponId(coupon.CouponId).Select(p => p.ProductId).ToList();

                    decimal totalAmount = 0;

                    var canUse = false;

                    foreach (var cartitem in cartItems)

                    {

                        if (pids.Contains(cartitem.id))

                        {

                            totalAmount += cartitem.count * cartitem.price;

                            canUse = true;

                        }

                    }

                    if (canUse && totalAmount >= coupon.Himall_Coupon.OrderAmount)

                    {

                        BaseCoupon c = new BaseCoupon();

                        c.BaseEndTime = coupon.BaseEndTime;

                        c.BaseId = coupon.BaseId;

                        c.BaseName = coupon.BaseName;

                        if (isPc)

                            c.BasePrice = coupon.BasePrice > totalAmount ? totalAmount : coupon.BasePrice;

                        else

                        {

                            c.BasePrice = coupon.BasePrice;

                        }

                        c.BaseShopId = coupon.BaseShopId;

                        c.BaseShopName = coupon.BaseShopName;

                        c.BaseType = coupon.BaseType.GetHashCode() == 0 ? CouponType.Coupon : CouponType.ShopBonus;

                        c.OrderAmount = coupon.Himall_Coupon.OrderAmount;

                        c.UseArea = coupon.Himall_Coupon.UseArea;

                        c.Remark = coupon.Himall_Coupon.Remark;

                        c.StartDateStr = coupon.Himall_Coupon.StartTime.ToString("yyyy.MM.dd");

                        c.EndDateStr = coupon.Himall_Coupon.EndTime.ToString("yyyy.MM.dd");

                        coupons.Add(c);

                    }

                }

                else

                {

                    BaseCoupon c = new BaseCoupon();

                    c.BaseEndTime = coupon.BaseEndTime;

                    c.BaseId = coupon.BaseId;

                    c.BaseName = coupon.BaseName;

                    c.BasePrice = coupon.BasePrice;

                    c.BaseShopId = coupon.BaseShopId;

                    c.BaseShopName = coupon.BaseShopName;

                    c.BaseType = coupon.BaseType.GetHashCode() == 0 ? CouponType.Coupon : CouponType.ShopBonus;

                    c.OrderAmount = coupon.Himall_Coupon.OrderAmount;

                    c.UseArea = coupon.Himall_Coupon.UseArea;

                    c.Remark = coupon.Himall_Coupon.Remark;

                    c.StartDateStr = coupon.Himall_Coupon.StartTime.ToString("yyyy.MM.dd");

                    c.EndDateStr = coupon.Himall_Coupon.EndTime.ToString("yyyy.MM.dd");

                    coupons.Add(c);

                }

            }

            foreach (var coupon in userBonus)

            {

    1.                 BaseCoupon c = new BaseCoupon();

                c.BaseEndTime = coupon.BaseEndTime;

                c.BaseId = coupon.BaseId;

                c.BaseName = coupon.BaseName;

                c.BasePrice = coupon.BasePrice;

                c.BaseShopId = coupon.BaseShopId;

                c.BaseShopName = coupon.BaseShopName;

                c.BaseType = coupon.BaseType.GetHashCode() == 0 ? CouponType.Coupon : CouponType.ShopBonus;

                c.OrderAmount = coupon.Himall_ShopBonusGrant.Himall_ShopBonus.UsrStatePrice;

                c.StartDateStr = coupon.Himall_ShopBonusGrant.Himall_ShopBonus.BonusDateStart.ToString("yyyy.MM.dd");

                c.EndDateStr = coupon.Himall_ShopBonusGrant.Himall_ShopBonus.BonusDateEnd.ToString("yyyy.MM.dd");

                coupons.Add(c);

            }

            return coupons;

        }

        /// <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、付费专栏及课程。

余额充值