public ActionResult DeleteConfirmed(int id) { UserOrderInfo userOrderInfo = db.UserOrderInfoSet.Find(id); db.UserOrderInfoSet.Remove(userOrderInfo); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Index() { Order order = null; int sum = 0; ViewData["uoi"] = null; String uname = (String)Session["uname"]; //判断当前用户是否为管理员 List <string> names = GetStaffs(); ifAdmin = names.Contains(uname); ViewData["ifAdmin"] = ifAdmin; Session["ifAdmin"] = ifAdmin; //判断今日商家是否发布预定 int dateSum = (from od in db.OrderSet where od.OrderDate >= Tooday && od.OrderDate < Enday select od).Count(); if (dateSum != 0) { //获取到今日最新的菜单 order = GetNewestOrder(); order.Describe = order.Describe.Replace("\n", "<br />"); List <UserOrderInfo> listUoi = (from usi in db.UserOrderInfoSet where usi.OrderId == order.Id && usi.State == "已预订" select usi).ToList(); foreach (UserOrderInfo uoi in listUoi) { sum += uoi.PeopleNumber; } } else { return(RedirectToAction("NoRelease")); } //判断用户今日是否预定 IQueryable <UserOrderInfo> uois = db.UserOrderInfoSet.Where(o => o.UName == uname && o.Order.OrderDate >= Tooday && o.Order.OrderDate < Enday); int count = uois.Count(); if (count > 0) { sum = 0; UserOrderInfo uoi = uois.FirstOrDefault(); List <UserOrderInfo> list = (from usi in db.UserOrderInfoSet where usi.OrderId == uoi.OrderId && usi.State == "已预订" select usi).ToList(); foreach (UserOrderInfo uoiy in list) { sum += uoiy.PeopleNumber; } ViewData["uoi"] = uoi; } ViewData["sum"] = sum; return(View(order)); }
public ActionResult Cancel(int uid) { UserOrderInfo uoii = db.UserOrderInfoSet.Find(uid); uoii.State = "已取消"; uoii.CancelDateTime = DateTime.Now; db.Entry(uoii).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "Id,UName,OrderId")] UserOrderInfo userOrderInfo) { if (ModelState.IsValid) { db.Entry(userOrderInfo).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.OrderId = new SelectList(db.OrderSet, "Id", "Describe", userOrderInfo.OrderId); return(View(userOrderInfo)); }
public ActionResult UpdatePeopleNumber(int Id, int pNumber) { UserOrderInfo uoii = db.UserOrderInfoSet.Find(Id); uoii.PeopleNumber = pNumber; uoii.UpdateDateTime = DateTime.Now; db.Entry(uoii).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); }
private async Task Update(CancellationToken ct) { var t = RefreshTimeSpan; try { while (!ct.IsCancellationRequested) { var addlist = new List <UserOrderInfo>(); var deletelist = new List <UserOrderInfo>(); var s = _stockAgent.User_order(); lock (this) { s.ForEach(x => { var ss = UserOrderInfoList.FirstOrDefault(y => y.OrderId == x.OrderId); if (ss != null) { ss.Update(x); } else { var si = new UserOrderInfo { StockInfo = _stockInfoViewModel.StockInfoList.First(y => y.StockId == x.StockId) }; si.Create(x); addlist.Add(si); } }); UserOrderInfoList.ForEach(x => { var ss = s.FirstOrDefault(y => y.OrderId == x.OrderId); if (ss == null) { deletelist.Add(x); } }); addlist.ForEach(x => UserOrderInfoList.Add(x)); deletelist.ForEach(x => UserOrderInfoList.Remove(x)); UserOrderInfoList = UserOrderInfoList.OrderBy(x => x.OrderId).ToList(); } await Task.Delay(t, ct); } } catch (Exception e) { if (!ct.IsCancellationRequested) { await _dialogService.ShowError(e, "错误", "确定", null); } } }
/// <summary> /// 个人中心 /// </summary> /// <returns></returns> public ActionResult Center() { var user = UserSvc.GetById((long)UserHelper.GetUserId(HttpContext)); var ids = OrderUserSvc.GetById(user.Id).LastOrDefault(); var orders = OrderSvc.GetById(ids); UserOrderInfo info = new UserOrderInfo(); info.user = user; info.orders = orders; ViewBag.phonenum = user.PhoneNum; ViewBag.userid = UserHelper.GetUserId(HttpContext); ViewBag.IsGuide = new UserService().IsGuide((long)Session["LoginUserId"]); return(View(info)); }
// GET: UserOrderInfoes/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } UserOrderInfo userOrderInfo = db.UserOrderInfoSet.Find(id); if (userOrderInfo == null) { return(HttpNotFound()); } return(View(userOrderInfo)); }
public ActionResult Update(int uid, int xinNumber) { UserOrderInfo uoii = db.UserOrderInfoSet.Find(uid); uoii.State = "已预订"; uoii.PeopleNumber = xinNumber; uoii.OrderDateTime = DateTime.Now; db.Entry(uoii).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); }
// GET: UserOrderInfoes/Edit/5 private ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } UserOrderInfo userOrderInfo = db.UserOrderInfoSet.Find(id); if (userOrderInfo == null) { return(HttpNotFound()); } ViewBag.OrderId = new SelectList(db.OrderSet, "Id", "Describe", userOrderInfo.OrderId); return(View(userOrderInfo)); }
public async Task <BaseResult <UserOrderInfo> > GetOrderById(string id) { UserOrderInfo query = (from o in await orderRepository.GetAllAsync(c => c.order_id == id) join u in await userRepository.GetAllAsync() on o.user_id equals u.user_id select new UserOrderInfo() { order_id = o.order_id, order_number = o.order_number, order_total = o.order_total, order_privilege = o.order_privilege, order_actualpay = o.order_actualpay, order_paystatus = o.order_paystatus, order_goods = o.order_goods, order_payway = o.order_payway, order_delete = o.order_delete, createtime = o.createtime, disable = o.disable, user_email = u.user_email, order_memo = o.order_memo, disabledesc = o.disabledesc, }).FirstOrDefault(); var orderdetailinfo = from o in await orderDetailRepository.GetAllAsync(c => c.order_id == id) join s in await shopRepository.GetAllAsync() on o.shop_id equals s.shop_id join k in await shopSkuRepository.GetAllAsync() on o.shopsku_id equals k.shopsku_id select new OrderDetailInfo() { orderdetail_id = o.orderdetail_id, shop_id = s.shop_id, shopsku_id = k.shopsku_id, shop_currentprice = o.shop_currentprice, shop_count = o.shop_count, shop_name = s.shop_name, shop_number = s.shop_number, shop_code = k.shop_code, shopsku_originalprice = k.shopsku_originalprice, shop_defaultimg = s.shop_defaultimg }; query.orderdetailinfo = orderdetailinfo; return(new BaseResult <UserOrderInfo>(200, query)); }
public ActionResult Create(int Id, String uname, int pNumber) { IQueryable <UserOrderInfo> uois = db.UserOrderInfoSet.Where(o => o.UName == uname && o.OrderId == Id); if (uois.Count() > 0) { return(RedirectToAction("Index")); } else { UserOrderInfo uoi = new UserOrderInfo(); uoi.UName = uname; uoi.OrderId = Id; uoi.PeopleNumber = pNumber; uoi.OrderDateTime = DateTime.Now; uoi.State = "已预订"; db.UserOrderInfoSet.Add(uoi); db.SaveChanges(); return(RedirectToAction("Index")); } }
public async Task Execute12306cnAsync(Execute12306cnInfo execute12306cnInfo) { _execute12306cnInfo = execute12306cnInfo; _userOrderInfo = GetUserOrderInfo(execute12306cnInfo.UserName); var otnLeftTicketQueryInfo = new OtnLeftTicketQueryInfo { PurposeCode = _userOrderInfo.PurposeCode, Date = _userOrderInfo.RideDate, FromStation = _userOrderInfo.FromStationCode, ToStation = _userOrderInfo.ToStationCode }; otnLeftTicketQueryInfo.Referer = string.Format(UrlsIn12306cn._otnLeftTicketInitUrl, _userOrderInfo.TourFlag, string.Format("{0},{1}", _userOrderInfo.FromStationName, _userOrderInfo.FromStationCode), string.Format("{0},{1}", _userOrderInfo.ToStationName, _userOrderInfo.ToStationCode), _userOrderInfo.RideDate, "N,N,Y"); var otnLeftTicketQueryResult = await OtnLeftTicketQueryAsync(otnLeftTicketQueryInfo); if (otnLeftTicketQueryResult == null) { return; } var tickets = ParseToTickets(otnLeftTicketQueryResult.data); if (tickets == null || !tickets.Any()) { return; } var ticketInfo = tickets.FirstOrDefault(m => !string.IsNullOrEmpty(m.TrainNo) && m.TrainNo.ToUpper().StartsWith(_userOrderInfo.TrainType.ToString().ToUpper())); Console.WriteLine("Execute12306cnAsync,ticketInfo:{0} /r/n", JsonConvert.SerializeObject(ticketInfo)); Console.WriteLine("----------------------------------------------------------------"); if (ticketInfo == null) { return; } var submitOrderRequestInfo = new SubmitOrderRequestInfo { SecretStr = ticketInfo.SecretStr, TrainDate = _userOrderInfo.RideDate, BackTrainDate = _userOrderInfo.BackRideDate, FromStation = _userOrderInfo.FromStationName, ToStation = _userOrderInfo.ToStationName, TourFlag = _userOrderInfo.TourFlag, PurposeCode = _userOrderInfo.PurposeCode, Referer = otnLeftTicketQueryInfo.Referer }; var submitOrderRequestResult = await SubmitOrderRequestAsync(submitOrderRequestInfo); if (submitOrderRequestResult == null) { return; } var confirmPassengerInitDcResult = await OtnConfirmPassengerInitDcAsync(otnLeftTicketQueryInfo.Referer); if (confirmPassengerInitDcResult == null) { return; } var confirmPassengerDTOsResult = await ConfirmPassengerDTOsAsync(confirmPassengerInitDcResult.GlobalRepeatSubmitToken); if (confirmPassengerDTOsResult == null) { return; } var passengerInfo = confirmPassengerDTOsResult.data.normal_passengers.FirstOrDefault(); if (passengerInfo == null) { Console.WriteLine("ConfirmPassengerDTOsAsync,passengerInfo is null"); return; } var confirmPassengerCheckOrderInfo = new ConfirmPassengerCheckOrderInfo { RepeatSubmitToken = confirmPassengerInitDcResult.GlobalRepeatSubmitToken, JsonAtt = string.Empty, BedLevelOrderNum = "000000000000000000000000000000", CancelFlag = 2, OldPassengerStr = Enum12306Datas.OldPassengerStrFormat(passengerInfo), PassengerTicketStr = Enum12306Datas.PassengerTicketStrFormat(_userOrderInfo, passengerInfo), TourFlag = _userOrderInfo.TourFlag, WhatsSelect = 1, Referer = UrlsIn12306cn._otnConfirmPassengerInitDcUrl }; var confirmPassengerCheckOrderResult = await ConfirmPassengerCheckOrderAsync(confirmPassengerCheckOrderInfo); if (!confirmPassengerCheckOrderResult.data.submitStatus) { return; } var confirmPassengerQueueCountInfo = new ConfirmPassengerQueueCountInfo { TrainDate = DateTime.Parse(_userOrderInfo.RideDate).ToCst(), TrainNo = ticketInfo.TrainCode, RepeatSubmitToken = confirmPassengerInitDcResult.GlobalRepeatSubmitToken, FromStationTelecode = ticketInfo.FromStationTelecode, ToStationTelecode = ticketInfo.ToStationTelecode, LeftTicket = confirmPassengerInitDcResult.TicketInfoForPassengerInfo.leftTicketStr, PurposeCode = confirmPassengerInitDcResult.TicketInfoForPassengerInfo.purpose_codes, SeatType = _userOrderInfo.SeatType.ToString(), TrainLocation = confirmPassengerInitDcResult.TicketInfoForPassengerInfo.train_location, StationTrainCode = ticketInfo.TrainNo, Referer = UrlsIn12306cn._otnConfirmPassengerInitDcUrl }; var confirmPassengerQueueCountResult = await ConfirmPassengerQueueCountAsync(confirmPassengerQueueCountInfo); var confirmSingleForQueueInfo = new ConfirmSingleForQueueInfo (confirmPassengerCheckOrderInfo.Referer, confirmPassengerInitDcResult.GlobalRepeatSubmitToken, confirmPassengerCheckOrderInfo.JsonAtt, null, null, confirmPassengerInitDcResult.TicketInfoForPassengerInfo.key_check_isChange, confirmPassengerInitDcResult.TicketInfoForPassengerInfo.leftTicketStr, confirmPassengerCheckOrderInfo.OldPassengerStr, confirmPassengerCheckOrderInfo.PassengerTicketStr, _userOrderInfo.PurposeCode, null, null, null, ticketInfo.TrainLocation, confirmPassengerCheckOrderInfo.WhatsSelect.ToString() ); var confirmSingleForQueueResult = await ConfirmSingleForQueueAsync(confirmSingleForQueueInfo); }
public ActionResult UpdateNumber(int uid) { UserOrderInfo uoii = db.UserOrderInfoSet.Find(uid); return(View(uoii)); }
public async Task <BaseResult <bool> > Pay(string order_id, int payway, SendMailConfig sendMailConfig) { if (string.IsNullOrEmpty(order_id)) { return(new BaseResult <bool>(808)); } //第一步:查询订单信息,如果订单有问题,则不允许用户修改支付状态 UserOrderInfo query = (from o in await orderRepository.GetAllAsync(c => c.order_id == order_id) join u in await userRepository.GetAllAsync() on o.user_id equals u.user_id select new UserOrderInfo() { order_id = o.order_id, order_number = o.order_number, order_goods = o.order_goods, order_delete = o.order_delete, disable = o.disable, user_email = u.user_email, }).FirstOrDefault(); //已支付,已禁用,已删除 不允许操作 if (query.order_paystatus == 2) { return(new BaseResult <bool>(5002)); } if (query.disable == 1) { return(new BaseResult <bool>(5000)); } if (query.order_delete != 1) { return(new BaseResult <bool>(5001)); } var orderdetail = await orderDetailRepository.GetAllAsync(c => c.order_id == order_id); query.orderdetail = orderdetail; //首先查询信息并且发送邮件,如果邮件发送成功同步修改订单信息,否则不修改订单信息 //根据订单详情查询对应的商品信息(商品名称,商品编码 商品code 商品下载地址 对应下载码),然后拼接发送的信息发送邮件 IList <ShopDetailInfo> shopDetailList = (from s in await shopRepository.GetAllAsync(s => (from o in orderdetail select o.shop_id).Contains(s.shop_id)) join k in await shopSkuRepository.GetAllAsync(k => (from o in orderdetail select o.shopsku_id).Contains(k.shopsku_id)) on s.shop_id equals k.shop_id select new ShopDetailInfo() { shopEntity = s, shopSkuEntity = k }).ToList(); StringBuilder sbHtmlEmail = new StringBuilder(); for (int i = 0; i < shopDetailList.Count; i++) { sbHtmlEmail.AppendFormat(@"<tr> <td style='padding - left:10px; padding - right:10px; padding - top:5px; padding - bottom:5px; '>{0}</td> <td style='padding - left:10px; padding - right:10px; padding - top:5px; padding - bottom:5px; '>{1}</td> <td style='padding - left:10px; padding - right:10px; padding - top:5px; padding - bottom:5px; '> <a href='{2}'>{2}</a></td><td style='padding - left:10px; padding - right:10px; padding - top:5px; padding - bottom:5px; '>{3}</td></tr>", shopDetailList[i].shopEntity.shop_name, shopDetailList[i].shopSkuEntity.shop_code, shopDetailList[i].shopSkuEntity.shopsku_url, shopDetailList[i].shopSkuEntity.shopsku_code); } var isEmailTrue = await EmailUtil.SendEmailAsync(query.user_email, string.Format(EmailKeyUtil.send_order_title, query.user_email), string.Format(EmailKeyUtil.send_order_content, query.user_email, sbHtmlEmail.ToString()), sendMailConfig, "h"); if (isEmailTrue) { OrderEntity order = new OrderEntity() { order_id = order_id, order_paystatus = 2, order_payway = payway, order_goods = 2 }; var isTrue = await orderRepository.UpdateAsync(order, true, true, o => o.order_paystatus, o => o.order_payway, o => o.order_goods); if (isTrue) { return(new BaseResult <bool>(200)); } } return(new BaseResult <bool>(201)); }