/// <summary> /// 奖单详情 /// </summary> //public ActionResult PrizeOrderDetail(Guid id) //{ // PrizeOrderView model = PrizeOrderContract.PrizeOrders // .Where(p => p.Id.Equals(id)) // .Select(p => new PrizeOrderView() // { // Id = p.Id, // RevealTypeNum = p.RevealTypeNum, // RevealStateNum = p.RevealStateNum, // LaunchTime = p.Extend.LaunchTime, // MinLuckyCount = p.Extend.MinLuckyCount, // LuckyCount = p.Extend.LuckyCount, // LuckyPercent = p.Extend.LuckyPercent, // PoolCount = p.Extend.PoolCount, // Remarks = p.Extend.Remarks, // AddDate = p.AddDate // }).FirstOrDefault(); // if (model == null) // ViewBag.Message = string.Format("不存在Id为{0}的奖单", id); // return View(model); //} /// <summary> /// 奖单详情 /// </summary> public ActionResult PrizeOrderDetail(Guid id) { //PrizeOrderView model = PrizeOrderContract.PrizeOrders // .Where(p => p.Id.Equals(id)) // .Select(p => new PrizeOrderView() // { // Id = p.Id, // RevealTypeNum = p.RevealTypeNum, // RevealStateNum = p.RevealStateNum, // LaunchTime = p.Extend.LaunchTime, // MinLuckyCount = p.Extend.MinLuckyCount, // LuckyCount = p.Extend.LuckyCount, // LuckyPercent = p.Extend.LuckyPercent, // PoolCount = p.Extend.PoolCount, // Remarks = p.Extend.Remarks, // AddDate = p.AddDate // }).FirstOrDefault(); PrizeOrderDetailView model = PrizeOrderSiteContract.GetPrizeOrderDetailView(id); if (model == null) { ViewBag.Message = string.Format("不存在Id为{0}的奖单", id); } return(View(model)); }
public JsonResult Set2Top(string prizeorderIdString, decimal moneyvalue) { if (string.IsNullOrEmpty(prizeorderIdString)) { return(Json(new { OK = false, ErrorString = "prizeorder Id 为空" }, JsonRequestBehavior.AllowGet)); } if (!this.UserId.HasValue) { return(Json(new { ErrorString = "当前用户Id为空" }, JsonRequestBehavior.AllowGet)); } Guid prizeOrderId = new Guid(prizeorderIdString); int datelong = int.Parse(System.Configuration.ConfigurationManager.AppSettings["Set2TopTimeLong"]); //置顶时长(小时) OperationResult result = PrizeOrderSiteContract.Set2Top(prizeOrderId, moneyvalue, datelong, this.UserId.Value); if (result.ResultType == OperationResultType.Success) { return(Json(new { OK = true, ErrorString = "" }, JsonRequestBehavior.AllowGet)); } else { return(Json(new { OK = false, ErrorString = result.Message }, JsonRequestBehavior.AllowGet)); } }
/// <summary> /// 删除奖单 /// </summary> /// <param name="id"></param> public ActionResult PrizeOrderDelete(Guid id) { OperationResult result = PrizeOrderSiteContract.Delete(id); string msg = result.Message ?? result.ResultType.ToDescription(); if (result.ResultType == OperationResultType.Success) { TempData["Message"] = "奖单删除成功。<br /><a href='/Vip/PrizeOrderList'>返回</a>奖单管理页"; return(RedirectToAction("InfoPage")); } TempData["Message"] = msg; return(RedirectToAction("PrizeOrderList")); }
public JsonResult CloseReveal(Guid poid) { OperationResult result = PrizeOrderSiteContract.CancelReveal(poid); if (result.ResultType == OperationResultType.Success) { return(Json(new { OK = true, Message = "关闭奖单成功!" }, JsonRequestBehavior.AllowGet)); } string msg = result.Message ?? result.ResultType.ToDescription(); return(Json(new { OK = false, Message = msg }, JsonRequestBehavior.AllowGet)); }
public JsonResult ManualRevealLottery(Guid poid, int rtype) { OperationResult result = PrizeOrderSiteContract.ManualRevealLottery(poid, rtype); if (result.ResultType == OperationResultType.Success) { return(Json(new { OK = true, Message = "开奖成功!" }, JsonRequestBehavior.AllowGet)); } string msg = result.Message ?? result.ResultType.ToDescription(); return(Json(new { OK = false, Message = msg }, JsonRequestBehavior.AllowGet)); }
public ActionResult Scene(int?id, string keywords) { int pageIndex = id ?? 1; //ViewBag.PageIndex = pageIndex; //ViewBag.RevealType = RevealType.Quota.ToInt(); ViewBag.Keywords = keywords; ViewBag.UserId = this.UserId ?? 0; PropertySortCondition[] sortConditions = new[] { new PropertySortCondition("SortOrder") }; int pageSize = int.Parse(System.Configuration.ConfigurationManager.AppSettings["PageCount"]); string orderbyString = "SortOrder asc"; int totalCount; int totalPageCount; string whereString = GetWhereStringOfPrizeOrderDetail(keywords); PagedList <PrizeOrderDetailView> model = null; IEnumerable <PrizeOrderDetailView> rlist = null; OperationResult result = PrizeOrderSiteContract.GetRevealedSceneLotteries(pageSize, pageIndex, whereString, orderbyString, out totalCount, out totalPageCount, RevealState.Drawn.ToInt()); ViewBag.TotalCount = totalCount; ViewBag.PageIndex = pageIndex; ViewBag.PageCount = totalPageCount; if (result.ResultType == OperationResultType.Success) { DataSet ds = (DataSet)result.AppendData; if (ds != null && ds.Tables.Count > 0) { //DataTable dt = ds.Tables[0]; //DataRow[] rowarray = new DataRow[dt.Rows.Count]; //dt.Rows.CopyTo(rowarray, 0); ////所有 //ViewBag.AllPrizeOrders = rowarray; DataTable dt = ds.Tables[0]; rlist = dt.ToPrizeOrderDetailList(); if (rlist != null) { model = new PagedList <PrizeOrderDetailView>(rlist, pageIndex, pageSize, totalCount); return(View(model)); } } } ViewBag.Message = result.Message; return(View(model)); }
/// <summary> /// 开奖条件已过,但尚未开奖的奖单列表 /// </summary> public ActionResult DeadLotteries(int?id, int?rtype, string keywords) { long userid = this.UserId ?? 0; int pageIndex = id ?? 1; int total; ViewBag.UserId = this.UserId ?? 0; PropertySortCondition[] sortConditions = new[] { new PropertySortCondition("SortOrder") }; int pageSize = int.Parse(System.Configuration.ConfigurationManager.AppSettings["PageCount"]); string orderbyString = "SortOrder asc"; int totalCount; int totalPageCount; string whereString = GetWhereStringOfPrizeOrderDetail(keywords); whereString += string.IsNullOrEmpty(whereString) ? "MemberId = " + userid.ToString() : " and MemberId = " + userid.ToString(); PagedList <PrizeOrderDetailView> model = null; IEnumerable <PrizeOrderDetailView> rlist = null; OperationResult result = PrizeOrderSiteContract.GetDeadLotteries(pageSize, pageIndex, whereString, orderbyString, out totalCount, out totalPageCount, rtype ?? 0); ViewBag.TotalCount = totalCount; ViewBag.PageIndex = pageIndex; ViewBag.PageCount = totalPageCount; if (result.ResultType == OperationResultType.Success) { DataSet ds = (DataSet)result.AppendData; if (ds != null && ds.Tables.Count > 0) { //DataTable dt = ds.Tables[0]; //DataRow[] rowarray = new DataRow[dt.Rows.Count]; //dt.Rows.CopyTo(rowarray, 0); ////所有 //ViewBag.AllPrizeOrders = rowarray; DataTable dt = ds.Tables[0]; rlist = dt.ToPrizeOrderDetailList(); if (rlist != null) { model = new PagedList <PrizeOrderDetailView>(rlist, pageIndex, pageSize, totalCount); } } } ViewBag.Message = result.Message; return(View(model)); }
public ActionResult LaunchPrize(PrizeOrderView model) { ViewBag.IsPostBack = true; int rtype = int.Parse(Request.Form["RevealType"]); ViewBag.RevealType = rtype; if (this.PubishingEnableTimes == 0) { ViewBag.Message = "您还可发起抽奖0次,请续费后再执行此功能。"; return(View(model)); } if (ModelState.IsValid) { //验证码验证通过 } else { //验证码验证失败 //ModelState.AddModelError("", e.Message); ViewBag.Message = "验证码输入不正确"; return(View(model)); } bool shouldMinus = this.PubishingEnableTimes < 1000000 ? true : false; OperationResult result = PrizeOrderSiteContract.Add(model, shouldMinus); string msg = result.Message ?? result.ResultType.ToDescription(); if (result.ResultType == OperationResultType.Success) { if (shouldMinus) { if (!this.UpdatePubishingEnableTimes()) { //记日志(更新可发布奖品次数失败) } } TempData["Message"] = string.Format("发起抽奖成功。<br /><a href='/Vip/PrizeOrderDetail/{0}'>查看<a>奖单", model.PrizeId); return(RedirectToAction("InfoPage")); } //ModelState.AddModelError("", msg); ViewBag.Message = msg; return(View(model)); }
/// <summary> /// 获取最新的可抽奖信息 /// </summary> private void GetGetTopPrizeOrders(int? rtype) { int topCount = int.Parse(System.Configuration.ConfigurationManager.AppSettings["TopCountOfPrizeOrder"]); //OperationResult result = PrizeOrderSiteContract.GetTopPrizeOrders(topCount,rtype); OperationResult result = PrizeOrderSiteContract.GetTopPrizeOrders(topCount, null); if (result.ResultType == OperationResultType.Success) { DataSet ds = (DataSet)result.AppendData; if (ds != null && ds.Tables.Count > 0) { DataTable dt = ds.Tables[0]; //所有 ViewBag.AllPrizeOrders = dt.ToPrizeOrderDetailList(); if (rtype.HasValue) { //定时 ViewBag.TopTimingPrizeOrders = dt.Select("RevealType=" + (int)RevealType.Timing).ToPrizeOrderDetailList(); //定员 ViewBag.TopQuotaPrizeOrders = dt.Select("RevealType=" + (int)RevealType.Quota).ToPrizeOrderDetailList(); //竞猜 ViewBag.TopAnswerPrizeOrders = dt.Select("RevealType=" + (int)RevealType.Answer).ToPrizeOrderDetailList(); //现场 ViewBag.TopScenePrizeOrders = dt.Select("RevealType=" + (int)RevealType.Scene).ToPrizeOrderDetailList(); switch (rtype) { case (int)RevealType.Timing: ViewBag.AllPrizeOrders = ViewBag.TopTimingPrizeOrders; break; case (int)RevealType.Quota: ViewBag.AllPrizeOrders = ViewBag.TopQuotaPrizeOrders; break; case (int)RevealType.Answer: ViewBag.AllPrizeOrders = ViewBag.TopAnswerPrizeOrders; break; case (int)RevealType.Scene: ViewBag.AllPrizeOrders = ViewBag.TopScenePrizeOrders; break; } } } } }
public PagedList <PrizeOrderDetailView> GetPagedListOfPrizeOrderDetailView(int pageIndex, string keywords = null) { PropertySortCondition[] sortConditions = new[] { new PropertySortCondition("SortOrder") }; string orderbyString = "SortOrder asc"; int totalCount; int totalPageCount; string whereString = string.Empty; whereString = GetWhereStringOfPrizeOrderDetail(keywords); IEnumerable <PrizeOrderDetailView> rlist = null; OperationResult result = PrizeOrderSiteContract.GetLotteries(this.PageSize, pageIndex, whereString, orderbyString, out totalCount, out totalPageCount, 0, (int)RevealState.UnDrawn); ViewBag.TotalCount = totalCount; ViewBag.PageIndex = pageIndex; ViewBag.PageCount = totalPageCount; if (result.ResultType == OperationResultType.Success) { DataSet ds = (DataSet)result.AppendData; if (ds != null && ds.Tables.Count > 0) { DataTable dt = ds.Tables[0]; rlist = dt.ToPrizeOrderDetailList(); if (rlist != null) { PagedList <PrizeOrderDetailView> model = new PagedList <PrizeOrderDetailView>(rlist, pageIndex, this.PageSize, totalCount); return(model); } } } return(null); }
public ActionResult PrizeBetting(Guid poId) { if (!User.Identity.IsAuthenticated) { return(RedirectToAction("Login", "Account")); } else { string returnUrl = string.IsNullOrEmpty(Request.QueryString["returnUrl"]) ? "/Vip/Business/poId=" + poId.ToString() : Request.QueryString["returnUrl"]; ViewBag.ReturnUrl = returnUrl; //int rtvalue = int.Parse(Request.QueryString["RevealType"]); //ViewBag.RevealType = rtvalue; ViewBag.CurrentUserId = this.UserId ?? 0; OperationResult result = PrizeOrderSiteContract.GetPrizeOrderDetail(poId); if (result.ResultType == OperationResultType.Success) { PrizeBettingView model = new PrizeBettingView() { PrizeOrderDetailView = (PrizeOrderDetailView)result.AppendData, UserId = this.UserId ?? 0 }; ViewBag.RevealType = model.PrizeOrderDetailView != null?model.PrizeOrderDetailView.PrizeOrderView.RevealType.ToInt().ToString() : string.Empty; //if (RevealType.Answer.ToInt() == rtvalue) //{ // //InitAnswerOptions(model); //} return(View(model)); } else { return(View(new PrizeBettingView())); } } }
public ActionResult LaunchLottery(PrizeOrderDetailView model) { ViewBag.IsPostBack = true; ViewBag.RevealType = model.PrizeOrderView.RevealType.ToInt().ToString(); ViewBag.ScopeType = model.PrizeOrderView.ScopeType.ToInt().ToString(); ViewBag.ScopeProvince = model.PrizeOrderView.ScopeProvince; ViewBag.ScopeAreaCity = model.PrizeOrderView.ScopeAreaCity; //if (this.PubishingEnableTimes == 0) //{ // //验证码验证通过 // ViewBag.Message = "抱歉,您可发起抽奖的次数为0,请续费后再继续使用该功能。"; // return View(model); //} // 竞猜开奖并且开奖方式为“手动”,则取消对“开奖条件”的验证 if (model.PrizeOrderView.RevealType == RevealType.Answer && model.PrizeOrderView.RevealTypeOfAnswer == RevealTypeOfAnswer.Manual) { ModelState.Remove("PrizeOrderView.AnswerRevealConditionType"); } // 非竞猜开奖,则取消对“揭晓答案(先知、后知)方式”的验证 if (model.PrizeOrderView.RevealType != RevealType.Answer) { ModelState.Remove("PrizeOrderView.RevealTypeOfAnswer"); ModelState.Remove("PrizeOrderView.AnswerRevealConditionType"); } // 现场开奖,则取消对“是否需要兑奖码”的验证 if (model.PrizeOrderView.RevealType == RevealType.Scene) { ModelState.Remove("PrizeOrderView.IsNeedExchangeCode"); ModelState.Remove("PrizeOrderView.RevealTypeOfAnswer"); ModelState.Remove("PrizeOrderView.AnswerRevealConditionType"); } // 非现场开奖,则取消对“人员录入方式”的验证 if (model.PrizeOrderView.RevealType != RevealType.Scene) { ModelState.Remove("PrizeOrderView.InputTypeOfStaff"); } if (ModelState.IsValid) { //验证码验证通过 } else { //验证码验证失败 //ModelState.AddModelError("", e.Message); ViewBag.Message = "验证码输入不正确"; return(View(model)); } if ((this.UserId ?? 0) == 0) { //验证码验证失败 //ModelState.AddModelError("", e.Message); ViewBag.Message = "当前登录的用户Id莫名的为空,无法发布奖品,请尝试退出并重新登录。"; return(View(model)); } else { model.MemberView.Id = this.UserId.Value; } if (!ValidatePrizeOrderDetailViewModel(model)) { return(View(model)); } // 先上传图片 string upmessage = string.Empty; string photoname = string.Empty; bool uploadResult = UploadPhoto(out upmessage, out photoname); if (!uploadResult) { ViewBag.Message = upmessage; return(View(model)); } // 保存数据到数据库 model.PrizeView.OriginalPhoto = new PrizePhotoView() { Name = photoname, PhotoTypeNum = PhotoType.Original.ToInt() }; bool shouldMinus = this.PubishingEnableTimes < 1000000 ? true : false; OperationResult result = PrizeOrderSiteContract.BatchAdd(model, shouldMinus); if (result.ResultType == OperationResultType.Success) { if (shouldMinus) { if (!this.UpdatePubishingEnableTimes()) { //记日志(更新可发布奖品次数失败) } } PrizeOrder porder = (PrizeOrder)result.AppendData; //ViewBag.OkMessage = "发布抽奖成功"; //TempData["Message"] = string.Format("发起抽奖成功。<br /><a href='/Vip/PrizeOrderDetail/{0}'>查看<a>奖单", porder.Id); //return RedirectToAction("InfoPage"); ViewBag.PostBackIsOK = true; ViewBag.SuccessString = "发布抽奖成功,请等待审核。"; return(View(model)); } else { // 删除图片 bool delresult = DeletePhoto(photoname); ViewBag.Message = "发布抽奖失败" + (delresult ? string.Empty : ",已经上传的图片在删除过程中也失败,可能已产生图片冗余"); } return(View(model)); }