public ActionResult CooperationCheck(string id) { Cooperation cooper = new CooperationService().GetCooperationByWhere(a => a.Id.Equals(id) && a.IsDeleted != 1); if (cooper != null) { var customer = new FCake.Bll.CustomersService().GetById(cooper.CustomerId); cooper.CustomerId = customer.Mobile; return(View(cooper)); } return(View()); }
/// <summary> /// 创建优惠券 /// </summary> /// <param name="coupons">优惠券实体</param> /// <returns>成功或失败,失败信息</returns> public OpResult CreateCoupons(Coupons coupons) { OpResult result = new OpResult() { Successed = false }; bool isEdit = false; try { if (coupons.Id == null) { //id为空 添加id coupons.Id = CommonRules.GUID; coupons.CouponBatch = CommonRules.CommonNoRules("couponbatch"); } else { isEdit = true; } //如果优惠券是要生成的则执行生成的代码 if (coupons.Status == 1) { if (coupons.GiveWay == 1) { //hstodo:检查短信条数 //if (coupons.IsSendSMS == 1 && coupons.DistributingType == 0) //{ // int SMSBalance = 0; // var SMSBalanceStr = EChiHelper.GetBalance_Normal(); // if (!string.IsNullOrEmpty(SMSBalanceStr)) // { // try // { // SMSBalance = int.Parse(SMSBalanceStr); // } // catch (Exception ex) // { // return OpResult.Fail("对不起,查询短信余额时发生错误,错误:" + SMSBalanceStr); // } // if (SMSBalance < coupons.Quantity) // { // return OpResult.Fail(string.Format("对不起,需要发送短信{0}条,短信余额剩余{1}条,短信余额不足,请充值。", coupons.Quantity, SMSBalance)); // } // } //} Random _random = new Random(); switch (coupons.GivenObjectType) { case 1: //1的时候是所有用户都加入数据 List <Customers> datas = new FCake.Bll.CustomersService().GetCustomerByWhere(a => a.IsDeleted != 1); coupons.Quantity = datas.Count(); foreach (var item in datas) { CreateCouponsDetail(coupons, item, _random); } break; case 2: //2的时候按会员等级来 List <Customers> customers = new FCake.Bll.CustomersService().GetCustomerByWhere(a => coupons.GivenObjectIds.Contains(a.MemberLevelValue.ToString())); coupons.Quantity = customers.Count(); foreach (var item in customers) { CreateCouponsDetail(coupons, item, _random); } break; case 3: //3的时候按指定用户来 List <Customers> customer = new FCake.Bll.CustomersService().GetCustomerByWhere(a => coupons.GivenObjectIds.Contains(a.Id)); if (coupons.DistributingType == 1) { var cu = customer.FirstOrDefault(); if (cu != null) { for (var i = 0; i < coupons.Quantity; i++) { CreateCouponsDetail(coupons, cu, _random); } } } else { coupons.Quantity = customer.Count(); foreach (var item in customer) { CreateCouponsDetail(coupons, item, _random); } } break; } } else { var createCount = coupons.Quantity; Random _random = new Random(); //不绑定客户生成优惠券 for (int i = 0; i < createCount; i++) { CouponDetail couponDetail = new CouponDetail() { Id = CommonRules.GUID }; couponDetail.CouponId = coupons.Id; // 优惠券id couponDetail.CouponSN = CommonRules.CouponsNo(12, _random); //优惠券号 //查询重复 var data = _context.CouponDetails.SingleOrDefault(p => p.CouponSN.Equals(couponDetail.CouponSN) && p.IsDeleted != 1); if (data != null) { createCount++; continue; } //couponDetail.MemberId = customers.Id; couponDetail.UseState = 0; //生成状态 couponDetail.Title = coupons.Title; couponDetail.CouponBatch = coupons.CouponBatch; couponDetail.Denomination = coupons.Denomination; couponDetail.SalesMoney = coupons.SalesMoney; couponDetail.ConditionMoney = coupons.ConditionMoney; couponDetail.BeginValidDate = coupons.BeginValidDate; couponDetail.EndValidDate = coupons.EndValidDate; couponDetail.CreatedOn = DateTime.Now; couponDetail.CreatedBy = coupons.CreatedBy; couponDetail.IsDeleted = 0; _context.CouponDetails.Add(couponDetail); } } } if (!isEdit) { _context.Coupons.Add(coupons); } else { var cdata = _context.Coupons.SingleOrDefault(p => p.Id.Equals(coupons.Id) && p.IsDeleted != 1); if (cdata != null) { cdata.CopyProperty(coupons); cdata.ModifiedOn = DateTime.Now; } } if (_context.SaveChanges() > 0) { result.Successed = true; result.Message = "创建优惠券成功!"; result.Code = coupons.Quantity.ToString(); #region 发送短信 if (coupons.IsSendSMS == 1 && coupons.Status == 1) { List <string> mobileList = new List <string>(); mobileList = GetMobileListByCouponId(coupons.Id); //将需要发送短信的号码加入result.Data中,导出Excel手动发送 result.Data = mobileList; } #endregion } else { result.Message = "创建优惠券失败!"; } } catch (Exception e) { result.Message = "创建优惠券发生异常!"; } return(result); }