public JsonResult AddItemToOrder(Int64 OID, Int64 ItemId) { var UserInfo = Request.Cookies["UserInfo"]; var UserId = int.Parse(UserInfo["UserCode"]); HG_Items ObjItem = new HG_Items().GetOne(ItemID: ItemId); HG_OrderItem OrderItem = new HG_OrderItem() { FID = ObjItem.ItemID, Price = ObjItem.Price, Count = 0, IsAddon = "0", OID = OID, Status = 4, TickedNo = 0, OrgId = ObjItem.OrgID, ChefSeenBy = UserId, OrderDate = DateTime.Now, UpdatedBy = 0, UpdationDate = DateTime.Now, OrdById = UserId, TaxInItm = ObjItem.Tax, CostPrice = ObjItem.CostPrice }; OrderItem.Save(); OrderItem.CostPrice = OrderItem.Price; OrderItem.Price = 0.00; OrderItem.ItemNam = ObjItem.Items; return(Json(new { msg = OrderItem }, JsonRequestBehavior.AllowGet)); }
public JsonResult SaveEditOrder(Int64 OID, int PMode) { var UserInfo = Request.Cookies["UserInfo"]; var UserType = UserInfo["UserType"]; HG_Orders ObjOrder = new HG_Orders().GetOne(OID); if (UserType != "SA") { if (ObjOrder.Create_Date < DateTime.Now.AddDays(-2).Date) { return(Json(new { msg = "Can't Modify Order After 2 days" })); } if (ObjOrder.PaymentStatus == 3 && PMode != ObjOrder.PaymentStatus) { return(Json(new { msg = "Can't change Payment mode" })); } if (ObjOrder.PaymentStatus != 3 && PMode == 3) { return(Json(new { msg = "Can't change Payment To foodDo" })); } } ObjOrder.PaymentStatus = PMode; var OrderItems = new HG_OrderItem().GetAll(OID); var OrderItemsWithouTicket = OrderItems.FindAll(x => x.TickedNo == 0); if (OrderItemsWithouTicket.Count > 0) { List <HG_Ticket> list = new HG_Ticket().GetAll(ObjOrder.OrgId, onDate: ObjOrder.Create_Date); HG_Ticket objticket = new HG_Ticket() { OrgId = ObjOrder.OrgId, OID = ObjOrder.OID, TicketNo = list.Count + 1, DeliveryCharge = 0, CreationDate = ObjOrder.Create_Date }; int Ticketno = objticket.save(); foreach (var OrdItem in OrderItemsWithouTicket) { OrdItem.TickedNo = Ticketno; OrdItem.Save(); } } var CompletedCancelItems = OrderItems.FindAll(x => x.Status == 3 || x.Status == 4); if (ObjOrder.PaymentStatus > 0 && OrderItems.Count == CompletedCancelItems.Count) { ObjOrder.Status = "3";// mark completed } ObjOrder.Save(); return(Json(new { data = OID }, JsonRequestBehavior.AllowGet)); }
public JObject UpdateAmt(int ID, int Cnt, int Pmode, double Rate) { HG_OrderItem OBJOrderItem = new HG_OrderItem().GetOne(ID); var UserInfo = Request.Cookies["UserInfo"]; var UserType = UserInfo["UserType"]; JObject result = new JObject(); if (UserType != "SA") { if (OBJOrderItem.OrderDate < DateTime.Now.AddDays(-2).Date) { result.Add("Status", 400); result.Add("Rate", OBJOrderItem.Price); result.Add("MSG", "Can't Modify Order After 2 days"); return(result); } if (Pmode == 3) { result.Add("Status", 400); result.Add("Rate", OBJOrderItem.Price); result.Add("MSG", "Can't change Order in foodDo mode"); return(result); } } double price = 0.0; if (Cnt >= 0) { if (OBJOrderItem.Status == 4 && Cnt > 0) { OBJOrderItem.Status = 3; } OBJOrderItem.Count = Cnt; OBJOrderItem.Price = Rate; OBJOrderItem.Save(); price = OBJOrderItem.Count * OBJOrderItem.Price; result.Add("Status", 200); result.Add("MSG", price.ToString("0.00")); } else { result.Add("Status", 400); result.Add("Rate", OBJOrderItem.Price); result.Add("MSG", "Quantity Can't be minus"); return(result); } return(result); }
public ActionResult Delete(System.Int64 ID) { List <HG_OrderItem> orderList = new HG_OrderItem().GetAll(); orderList = orderList.FindAll(x => x.FID == ID); if (orderList.Count > 0) { return(Json(new { msg = "Item Already Used in Orders" }, JsonRequestBehavior.AllowGet)); } List <OrdMenuCtgItems> listitem = OrdMenuCtgItems.GetAll(ItemId: ID); if (listitem.Count > 0) { return(Json(new { msg = "Item Already Used in Order Menu " }, JsonRequestBehavior.AllowGet)); } else { int i = HG_Items.Dell(ID); } return(Json(new { data = "1" }, JsonRequestBehavior.AllowGet)); }
// Insert Into Balance Stement After Registration from Calaculation start Date public ActionResult InsertIntoBalanceStementAfterRegistration(DateTime CalaculationStartFrom, int OrgId) { BalanceStatement bObj = new BalanceStatement(); List <BalanceStatement> jObjList = new List <BalanceStatement>(); List <HG_Orders> OrdersDetails = new List <HG_Orders>(); List <HG_OrganizationDetails> OrgList = new List <HG_OrganizationDetails>(); List <HG_Orders> OrdrList = new List <HG_Orders>(); OrdrList = new HG_Orders().GetAll(OrgId, Status: 3); List <PaytmResn> Onlinepayment = new List <PaytmResn>(); int LastEntryNo = 0; double LastBalance = 0.00; foreach (var ord in OrdrList) { double totalAmt = 0.00; List <HG_OrderItem> orderitemlist = new HG_OrderItem().GetAll(ord.OID); orderitemlist = orderitemlist.FindAll(x => x.Status == 3 && x.OrderDate.Date >= CalaculationStartFrom.Date);//only completed items if (ord.PaymentStatus == 1 || ord.PaymentStatus == 2) { for (int i = 0; i < orderitemlist.Count; i++) { OrdrList = new HG_Orders().GetAll(orderitemlist[i].OrgId, Status: 3); HG_Orders Ord = OrdrList.Find(x => x.OID == orderitemlist[i].OID); totalAmt += Ord.DeliveryCharge; totalAmt += orderitemlist[i].Count * orderitemlist[i].Price; } BalanceStatement Obj = new BalanceStatement(); HG_Orders od = new HG_Orders().GetOne(ord.OID); Ledger LedgerDetail = Ledger.GetAllList().Where(x => x.DebtorType == 1 && x.OrgId == OrgId).FirstOrDefault(); if (od.PaymentStatus == 1 || od.PaymentStatus == 2) { double amt = (totalAmt * LedgerDetail.MarginOnCash) / 100; Obj.CRAmount = (amt) + ((amt * LedgerDetail.TaxOnAboveMargin) / 100); Obj.TaxOnCash = LedgerDetail.TaxOnAboveMargin; } Obj.Date = ord.Create_Date; // Obj.Amount = Amount; BalanceStatement TBalance = BalanceStatement.GetAllForBalanceCalculation(OrgId).Last(); Obj.Balance = TBalance.Balance - Obj.CRAmount; Obj.OrgId = OrgId; Obj.OrderId = ord.OID; Obj.Narration = "Commission of Order No." + ord.OID; Obj.SaveCRValue(); } else if (ord.PaymentStatus == 3) { Onlinepayment = PaytmResn.GetAll(); PaytmResn paytmTxn = Onlinepayment.Find(x => x.OID == ord.OID); totalAmt += ord.DeliveryCharge; totalAmt += Convert.ToDouble(paytmTxn.PaidAmount); if (Onlinepayment.Count > 0) { Ledger LedgerDetails = Ledger.GetAllList().Where(x => x.DebtorType == 1 && x.OrgId == OrgId).FirstOrDefault(); bObj.Date = ord.Create_Date; bObj.Amount = totalAmt; bObj.OrgId = LedgerDetails.OrgId; bObj.OrderId = orderitemlist[0].OID; BalanceStatement TotalBalance = BalanceStatement.GetAllForBalanceCalculation(OrgId).Last(); bObj.Balance = TotalBalance.Balance + totalAmt; bObj.Narration = "Online Payment of Order No." + orderitemlist[0].OID; bObj.isCash = false; bObj.SaveCRValue(); //=============================================================================== BalanceStatement Obj = new BalanceStatement(); HG_Orders od = new HG_Orders().GetOne(bObj.OrderId); Ledger LedgerDetail = Ledger.GetAllList().Where(x => x.DebtorType == 1 && x.OrgId == OrgId).FirstOrDefault(); if (od.PaymentStatus == 3) { double amt = (bObj.Amount * LedgerDetails.MarginOnline) / 100; Obj.CRAmount = (amt) + ((amt * LedgerDetails.TaxOnAboveMarginOnline) / 100); Obj.TaxOnOnline = LedgerDetails.TaxOnAboveMarginOnline; if (ord.PaymentStatus == 3 && ord.Status == "4") { double RefundAmt = bObj.Amount - totalAmt; double GetRefundAmt = (RefundAmt * 2) / 100; double GetRefundAmtwithTax = GetRefundAmt + ((GetRefundAmt * LedgerDetails.TaxOnAboveMarginOnline) / 100); Obj.CRAmount = Obj.CRAmount + GetRefundAmtwithTax; } } Obj.Date = bObj.Date; // Obj.Amount = Amount; BalanceStatement TBalance = BalanceStatement.GetAllForBalanceCalculation(OrgId).Last(); Obj.Balance = TBalance.Balance - Obj.CRAmount; Obj.OrgId = OrgId; Obj.OrderId = bObj.OrderId; Obj.Narration = "Commission of Order No." + bObj.OrderId; Obj.SaveCRValue(); } } } return(Json(new { data = bObj }, JsonRequestBehavior.AllowGet)); }
//=========FEEDBACK API=========== public JObject FeedBack(Int64 OID, int CID) { HG_Orders hG_Orders = new HG_Orders().GetOne(OID); HG_Tables_or_Sheat Seating = new HG_Tables_or_Sheat().GetOne(hG_Orders.Table_or_SheatId); JObject respose = new JObject(); if (Seating.FDBKId > 0)// feedback applied in seating { FeedbkForm feedbkForm = FeedbkForm.GetOne(Seating.FDBKId); List <FeedBackQue> feedBackQues = FeedBackQue.GetAll(feedbkForm.Id); feedBackQues = feedBackQues.FindAll(x => x.Status); feedBackQues = feedBackQues.OrderBy(x => x.OrderNo).ToList(); respose.Add("Status", 200); JArray jArray = new JArray(); foreach (var question in feedBackQues) { JObject jObject = new JObject(); jObject.Add("QID", question.ID); jObject.Add("Title", question.Title); jObject.Add("QuestionType", question.QuestionType); jObject.Add("FeedBkFormID", question.FeedBkFormID); if (question.Title.Contains("ITEM FEEDBACK") && (question.QuestionType == 0 || question.QuestionType == 3)) { jObject["Title"] = "ITEM FEEDBACK"; List <HG_OrderItem> hG_OrderItems = new HG_OrderItem().GetAll(OID); hG_OrderItems = hG_OrderItems.FindAll(x => x.Status == 3); hG_OrderItems = hG_OrderItems.FindAll(x => x.OrdById == CID); JArray itemfeedbks = new JArray(); for (int i = 0; i < hG_OrderItems.Count; i++) { HG_Items Objfood = new HG_Items().GetOne(hG_OrderItems[i].FID); JObject ItemJobj = new JObject(); ItemJobj.Add("ItmId", hG_OrderItems[i].FID);//FID is ItemId ItemJobj.Add("ItmName", Objfood.Items); itemfeedbks.Add(ItemJobj); } jObject.Add("Items", itemfeedbks); } if (question.QuestionType == 1) { List <FeedbkObj> objectivesList = FeedbkObj.GetAll(question.ID); FeedbkObj firstt = objectivesList.FirstOrDefault(); jObject.Add("ObjectiveType", firstt.ObjectiveType); jObject.Add("Objectives", JArray.FromObject(objectivesList)); } jArray.Add(jObject); } //=====add customer review comment in last at feedback JObject jObject2 = new JObject(); jObject2.Add("QID", 0); jObject2.Add("Title", ""); jObject2.Add("QuestionType", 5); jObject2.Add("FeedBkFormID", 0); jArray.Add(jObject2); respose.Add("Questions", jArray); } else { respose.Add("Status", 400); } return(respose); }