/// <summary> /// 注册成功赠送优惠券 /// </summary> /// <param name="id">会员ID</param> /// <param name="userName">会员登录名</param> /// <returns>返回赠送张数</returns> public static int RegisterSendCoupon(long id, string userName) { int result = 0; var model = GetCouponSendByRegister(); if (model != null && model.Status.Equals(Himall.CommonModel.CouponSendByRegisterStatus.Open) && model.total > 0) //如果活动开启,且优惠券有剩余 { foreach (var item in model.CouponIds) { if (item.inventory > 0) { CouponRecordInfo info = new CouponRecordInfo(); info.UserId = id; info.UserName = userName; info.ShopId = item.ShopId; info.CouponId = item.Id; _iCouponService.AddCouponRecord(info); result++; } } } return(result); }
public JsonResult AcceptCoupon(long vshopid, long couponid) { if (base.CurrentUser == null) { return(Json(new { status = 1, success = false, msg = "未登录." })); } ICouponService service = ServiceHelper.Create <ICouponService>(); CouponInfo couponInfo = service.GetCouponInfo(couponid); if (couponInfo.EndTime < DateTime.Now) { return(Json(new { status = 2, success = false, msg = "优惠券已经过期." })); } CouponRecordQuery query = new CouponRecordQuery { CouponId = new long?(couponid), UserId = new long?(base.CurrentUser.Id) }; PageModel <CouponRecordInfo> couponRecordList = service.GetCouponRecordList(query); if ((couponInfo.PerMax != 0) && (couponRecordList.Total >= couponInfo.PerMax)) { return(Json(new { status = 3, success = false, msg = "达到个人领取最大张数,不能再领取." })); } query = new CouponRecordQuery { CouponId = new long?(couponid) }; if (service.GetCouponRecordList(query).Total >= couponInfo.Num) { return(Json(new { status = 4, success = false, msg = "此优惠券已经领完了." })); } if ((couponInfo.ReceiveType == (CouponInfo.CouponReceiveType) 1) && (ServiceHelper.Create <IMemberService>().GetMember(base.CurrentUser.Id).AvailableIntegrals < couponInfo.NeedIntegral)) { return(Json(new { status = 5, success = false, msg = "积分不足 " + couponInfo.NeedIntegral.ToString() })); } CouponRecordInfo info = new CouponRecordInfo { CouponId = couponid, UserId = base.CurrentUser.Id, UserName = base.CurrentUser.UserName, ShopId = couponInfo.ShopId }; service.AddCouponRecord(info); return(Json(new { status = 0, success = true, msg = "领取成功", crid = info.Id })); }
public JsonResult AcceptCoupon(long vshopid, long couponid) { ICouponService couponService = ServiceHelper.Create <ICouponService>(); CouponInfo couponInfo = couponService.GetCouponInfo(couponid); if (couponInfo.EndTime < DateTime.Now) { return(Json(new { status = 2, success = false, msg = "优惠券已经过期." })); } CouponRecordQuery couponRecordQuery = new CouponRecordQuery() { CouponId = new long?(couponid), UserId = new long?(base.CurrentUser.Id) }; PageModel <CouponRecordInfo> couponRecordList = couponService.GetCouponRecordList(couponRecordQuery); if (couponInfo.PerMax != 0 && couponRecordList.Total >= couponInfo.PerMax) { return(Json(new { status = 3, success = false, msg = "达到个人领取最大张数,不能再领取." })); } couponRecordQuery = new CouponRecordQuery() { CouponId = new long?(couponid) }; couponRecordList = couponService.GetCouponRecordList(couponRecordQuery); if (couponRecordList.Total >= couponInfo.Num) { return(Json(new { status = 4, success = false, msg = "此优惠券已经领完了." })); } if (couponInfo.ReceiveType == CouponInfo.CouponReceiveType.IntegralExchange && ServiceHelper.Create <IMemberService>().GetMember(base.CurrentUser.Id).AvailableIntegrals < couponInfo.NeedIntegral) { int needIntegral = couponInfo.NeedIntegral; return(Json(new { status = 5, success = false, msg = string.Concat("积分不足 ", needIntegral.ToString()) })); } CouponRecordInfo couponRecordInfo = new CouponRecordInfo() { CouponId = couponid, UserId = base.CurrentUser.Id, UserName = base.CurrentUser.UserName, ShopId = couponInfo.ShopId }; CouponRecordInfo couponRecordInfo1 = couponRecordInfo; couponService.AddCouponRecord(couponRecordInfo1); return(Json(new { status = 0, success = true, msg = "领取成功", crid = couponRecordInfo1.Id })); }
public static void WinnerSubmit(WeiActivityWinModel winModel) { //添加中奖信息记录 WeiActivityWinInfo activityWinInfo = new WeiActivityWinInfo(); activityWinInfo.ActivityId = winModel.activityId; activityWinInfo.AddDate = DateTime.Now; activityWinInfo.UserId = winModel.userId; activityWinInfo.IsWin = winModel.isWin; if (activityWinInfo.IsWin) { if (winModel.awardType == WeiActivityAwardType.Integral)//积分 { activityWinInfo.AwardName = winModel.awardName + " 积分"; //新增积分记录 var factoryService = ServiceProvider.Instance <IMemberIntegralConversionFactoryService> .Create; MemberIntegralRecord info = new MemberIntegralRecord(); info.UserName = _iMemberService.GetMember(activityWinInfo.UserId).UserName; info.MemberId = activityWinInfo.UserId; info.RecordDate = DateTime.Now; info.ReMark = "微信活动中奖"; info.TypeId = MemberIntegral.IntegralType.WeiActivity; var memberIntegral = factoryService.Create(MemberIntegral.IntegralType.WeiActivity, Convert.ToInt32(winModel.awardName));//winModel.integrals为消耗积分 此处不是用户总积分 _iMemberIntegralService.AddMemberIntegral(info, memberIntegral); } else if (winModel.awardType == WeiActivityAwardType.Bonus)//红包 { activityWinInfo.AwardName = winModel.awardName; _iBonusService.SetShareByUserId(winModel.bonusId, false, winModel.userId);//添加红包记录 _iBonusService.IncrReceiveCount(winModel.bonusId); } else { activityWinInfo.AwardName = winModel.awardName; //添加优惠券记录 CouponRecordInfo recordInfo = new CouponRecordInfo(); recordInfo.UserId = winModel.userId; recordInfo.UserName = _iMemberService.GetMember(winModel.userId).UserName; recordInfo.ShopId = _iCouponService.GetCouponInfo(winModel.couponId).ShopId; recordInfo.CouponId = winModel.couponId; _iCouponService.AddCouponRecord(recordInfo); } } else { activityWinInfo.AwardName = winModel.awardName; } activityWinInfo.AwardId = winModel.awardId; _iWeiActivityWinService.AddWinner(activityWinInfo); //消耗积分 if (winModel.integrals > 0) { var factoryService = ServiceProvider.Instance <IMemberIntegralConversionFactoryService> .Create; MemberIntegralRecord info = new MemberIntegralRecord(); info.UserName = _iMemberService.GetMember(activityWinInfo.UserId).UserName; info.MemberId = activityWinInfo.UserId; info.RecordDate = DateTime.Now; info.ReMark = "微信活动消耗"; info.TypeId = MemberIntegral.IntegralType.WeiActivity; var memberIntegral = factoryService.Create(MemberIntegral.IntegralType.WeiActivity, -winModel.integrals); _iMemberIntegralService.AddMemberIntegral(info, memberIntegral); } }
public JsonResult ReceiveCoupons(long couponId, long shopId) { ICouponService couponService = ServiceHelper.Create <ICouponService>(); CouponInfo couponInfo = couponService.GetCouponInfo(shopId, couponId); if (base.CurrentUser == null) { Result result = new Result() { success = false, msg = "请登录后领取", status = -1 }; return(Json(result)); } if (couponInfo.EndTime < DateTime.Now.Date) { Result result1 = new Result() { success = false, msg = "此优惠券已过期", status = -2 }; return(Json(result1)); } int userReceiveCoupon = couponService.GetUserReceiveCoupon(couponId, base.CurrentUser.Id); if (couponInfo.PerMax != 0 && userReceiveCoupon >= couponInfo.PerMax) { Result result2 = new Result() { success = false, msg = string.Concat("每人最多领取", couponInfo.PerMax, "张该类型的优惠券"), status = -3 }; return(Json(result2)); } if (couponInfo.Himall_CouponRecord.Count >= couponInfo.Num) { Result result3 = new Result() { success = false, msg = "优惠券已领完", status = -3 }; return(Json(result3)); } if (couponInfo.ReceiveType == CouponInfo.CouponReceiveType.IntegralExchange) { int availableIntegrals = base.CurrentUser.AvailableIntegrals; int needIntegral = couponInfo.NeedIntegral; } CouponRecordInfo couponRecordInfo = new CouponRecordInfo() { UserId = base.CurrentUser.Id, UserName = base.CurrentUser.UserName, ShopId = shopId, CouponId = couponId }; couponService.AddCouponRecord(couponRecordInfo); Result result4 = new Result() { success = true, msg = "领取成功", status = 1 }; return(Json(result4)); }
public JsonResult ReceiveCoupons(long couponId, long shopId) { ICouponService couponService = ServiceHelper.Create <ICouponService>(); CouponInfo couponInfo = couponService.GetCouponInfo(shopId, couponId); if (base.CurrentUser == null) { Result result = new Result() { success = false, msg = "Obtain it after sign in", status = -1 }; return(Json(result)); } if (couponInfo.EndTime < DateTime.Now.Date) { Result result1 = new Result() { success = false, msg = "This Coupon expired", status = -2 }; return(Json(result1)); } int userReceiveCoupon = couponService.GetUserReceiveCoupon(couponId, base.CurrentUser.Id); if (couponInfo.PerMax != 0 && userReceiveCoupon >= couponInfo.PerMax) { Result result2 = new Result() { success = false, msg = string.Concat("Every customer can obtain ", couponInfo.PerMax, " this type coupons"), status = -3 }; return(Json(result2)); } if (couponInfo.Himall_CouponRecord.Count >= couponInfo.Num) { Result result3 = new Result() { success = false, msg = "Coupons have been brought out", status = -3 }; return(Json(result3)); } if (couponInfo.ReceiveType == CouponInfo.CouponReceiveType.IntegralExchange) { int availableIntegrals = base.CurrentUser.AvailableIntegrals; int needIntegral = couponInfo.NeedIntegral; } CouponRecordInfo couponRecordInfo = new CouponRecordInfo() { UserId = base.CurrentUser.Id, UserName = base.CurrentUser.UserName, ShopId = shopId, CouponId = couponId }; couponService.AddCouponRecord(couponRecordInfo); Result result4 = new Result() { success = true, msg = "Obtain Success", status = 1 }; return(Json(result4)); }