public void SendMsgByButton(string livePageID) { var live_repo = new LivePostsRepository(); int liveid = live_repo.Select(livePageID); var order_repo = new OrderRepositories(); //List<string> ids = new List<string> { "3032519476788720", "2762673820474754" }; List <MsgTextViewModel> ordersinfo = order_repo.SelectAllOrdersInfo(liveid); //string token = (string)Session["token"]; string userid = User.Identity.GetUserId(); string token = FanPageService.GetToken(userid); var orders = new List <OrderList>(); foreach (var orderinfo in ordersinfo) { var order = new OrderList(); order.CustomerID = orderinfo.CustomerID; order.CustomerName = orderinfo.CustomerName; order.OrderID = orderinfo.OrderID; order.Product = new ProductViewModel { Salepage_id = orderinfo.ProductPageID, SkuId = orderinfo.ProductID, ProductName = orderinfo.ProductName }; order.Quantity = orderinfo.Quantity; orders.Add(order); FBSendMsgService.SuccessOrderToSendMsg(livePageID, order, token); } }
public ActionResult FbOrderChart(int liveId) { LivePostsRepository livePost_repo = new LivePostsRepository(); var time = livePost_repo.GetLivePost(liveId); OrderRepositories order_repo = new OrderRepositories(); var orders = order_repo.GetOrders(liveId); var post = time.postTime.Minute; TimeSpan interval = time.endTime - time.postTime; var minutes = Math.Round(Convert.ToDouble(interval.TotalMinutes)); var intervalOrders = new List <CommentOrderLIstViewModel>(); var sum = new List <int>(); var datetime = new List <string>(); var chartData = new { datetime, sum }; for (var i = 0; i <= minutes; i++) { intervalOrders = orders.Where((x) => post + i <= x.OrderDateTime.Minute && x.OrderDateTime.Minute < post + i + 1).ToList(); var qty = 0; foreach (var item in intervalOrders) { qty += item.Quantity; } datetime.Add(time.postTime.AddMinutes(i).ToString("HH:mm")); sum.Add(qty); } return(Json(chartData)); }
public ActionResult GetROIOrderInfo(string livePageId) { OrderRepositories o_repo = new OrderRepositories(); var amount = o_repo.GetAmount(livePageId); var qty = o_repo.GetQtyOfOrders(livePageId); var Order = new { Amount = amount, Qty = qty }; return(Json(Order, JsonRequestBehavior.AllowGet)); }
public ActionResult SetPostEndtime(string livePageID) { OrderRepositories o_repo = new OrderRepositories(); decimal Amount = o_repo.GetAmount(livePageID); int QtyOfOrders = o_repo.GetQtyOfOrders(livePageID); var live_repo = new LivePostsRepository(); int views = (int)Session["views"]; live_repo.UpdatePost(livePageID, QtyOfOrders, Amount, DateTime.UtcNow.AddHours(8), views); Session.Abandon(); return(RedirectToAction("Index", "Report")); }
public ActionResult CommentsOrderList(int liveId) { LivePostsRepository livePost_repo = new LivePostsRepository(); ViewData["LivePost"] = livePost_repo.GetLivePost(liveId); OrderRepositories order_repo = new OrderRepositories(); List <CommentOrderLIstViewModel> orders = order_repo.GetOrders(liveId); ViewData.Model = orders; return(View()); }
public ActionResult GetPlusOneBuyOrders(string livePageID, string keywordPattern) { //try //{ //string token = Session["token"].ToString(); string userid = User.Identity.GetUserId(); string token = FanPageService.GetToken(userid); var products = ProductService.GetCurrentProducts().ProductItems; var OrderList = CommentFilterService.getNewOrderList(livePageID, token, products, keywordPattern); var Success_order = new List <OrderList>(); if (OrderList.Count > 0) { var order_repo = new OrderRepositories(); Session["lastPostTime"] = OrderList.Last().OrderDateTime; foreach (var order in OrderList) { //留言成功,數量修改 if (ProductService.UpdateProductQty(order.Product.SkuId, order.Quantity)) { Success_order.Add(order); order_repo.InsertOrder(order); FBSendMsgService.SuccessOrderToSendMsg(livePageID, order, token); } else //留言失敗 { FBSendMsgService.FailedOrderToSendMsg(livePageID, order, token); } } } var result = JsonConvert.SerializeObject(Success_order); return(Json(result)); //} //catch (Exception e) //{ // DateTime date = DateTime.UtcNow.AddHours(8); // string today = date.ToString("yyyy-MM-dd"); // string now = date.ToString("yyyy-MM-dd HH:mm:ss"); // if (!Directory.Exists("C:\\log")) // { // Directory.CreateDirectory("C:\\log\\"); // } // string nowPath = "C:\\log\\" + today + ".txt"; // System.IO.File.AppendAllText("C:\\log\\" + today + ".txt", "\r\n" + now + " : " + e); // return Json("error"); //} }
public static List <OrderList> getNewOrderList(string livePageID, string token, List <ProductViewModel> products, string keywordPattern) { var orderList = new List <OrderList>(); var allComments = FBRequestService.getAllComments(livePageID, token); if (allComments.Count != 0) { //過濾出經由推播後的時間開始才喊關鍵字的人 var PickPosts = CommentFilterService.PostTimeFilter(allComments, livePageID); if (PickPosts.Count > 0) { orderList = CommentFilterService.KeywordFilter(products, PickPosts, livePageID, keywordPattern); var order_repo = new OrderRepositories(); order_repo.InsertOrder(orderList); } } return(orderList); }
public static List <Datum> PostTimeFilter(List <Datum> comments, string livePageID) { LivePostsRepository livePost_repo = new LivePostsRepository(); var livePostTime = livePost_repo.GetMaxPostTime(livePageID); //去Orders Table 看有沒有留言,有的話就抓最後一個留言的時間沒有的話就過濾livePostTime 的時間 var order_repo = new OrderRepositories(); var live_repo = new LivePostsRepository(); int liveid = live_repo.Select(livePageID); DateTime selectResult = order_repo.SelectLastOrderComment(liveid); //SQL 要改 if (selectResult != DateTime.MaxValue) { comments = comments.Where(x => DateTime.Compare(x.created_time.ToUniversalTime().AddHours(8), selectResult) > 0).ToList(); } else { comments = comments.Where(x => DateTime.Compare(x.created_time.ToUniversalTime().AddHours(8), livePostTime) > 0).ToList(); } return(comments); }
public OrderService() { Order_repo = new OrderRepositories(); }