Beispiel #1
0
 public ActionResult Create(RateQuoteViewModel model)
 {
     if (ModelState.IsValid)
     {
         try
         {
             var fromList = model.RateQuote.From.Split(';');
             foreach (var ft in fromList)
             {
                 RQLeg legs = new RQLeg();
                 legs.From = ft;
                 legs.To   = model.RateQuote.To;
                 model.RqLegs.Add(legs);
             }
             //var res = db.CreateRateQuote(model.BillTo, string.Empty, model.GUID);
             //db.SaveChanges();
         }
         catch (Exception e)
         {
             ViewData["EditError"] = e.Message;
         }
     }
     else
     {
         ViewData["EditError"] = "Please, correct all errors.";
     }
     //return RedirectToAction("Index");
     return(View(model));
 }
Beispiel #2
0
        public ActionResult Create(int RateQuoteId = 0)
        {
            RateQuoteViewModel rq = new RateQuoteViewModel();

            rq.RoundTrip = true;
            if (RateQuoteId != 0)
            {
                rq.RateQuote = db.RateQuotes.Where(item => item.RateQuoteId == RateQuoteId).FirstOrDefault();
                var fromItems = rq.RateQuote.From.Split(';').ToList();
                var addItems  = db.APTAddress_Master.Where(i => !Equals(i.Accronym.ToLower(), "others")).Select(i => i.Accronym).ToList();
                foreach (var item in fromItems)
                {
                    if (!addItems.Contains(item))
                    {
                        rq.RateQuote.From = rq.RateQuote.From + ";Others";
                        break;
                    }
                }

                if (!addItems.Contains(rq.RateQuote.To))
                {
                    rq.RateQuote.To = "Others;" + rq.RateQuote.To;
                }

                rq.RqAdditionalItems = rq.RateQuote.RQAdditionalItems.ToList();
                rq.RqLegs            = rq.RateQuote.RQLegs.ToList();
                rq.RoundTrip         = Convert.ToBoolean(rq.RateQuote.RoundTrip);
            }
            return(View(rq));
        }
Beispiel #3
0
        public ActionResult SaveLegsAndAddItem(RateQuoteViewModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var rqIds = model.RQStatus.Split(',');
                    foreach (var id in rqIds)
                    {
                        var rqid = Convert.ToInt32(id);
                        var rq   = db.RateQuotes.Where(item => item.RateQuoteId == rqid).FirstOrDefault();
                        foreach (var item in model.RqLegs)
                        {
                            RQLeg rqLegs = item;
                            rqLegs.RateQuoteId = Convert.ToInt32(id);
                            if (rqLegs.RQLegId > 0)
                            {
                                db.RQLegs.Attach(rqLegs);
                                db.Entry(rqLegs).State = System.Data.Entity.EntityState.Modified;
                                //this.UpdateModel(rqLegs);
                            }
                            else
                            {
                                db.RQLegs.Add(rqLegs);
                            }
                        }
                        db.SaveChanges();
                    }

                    foreach (var id in rqIds)
                    {
                        foreach (var item in model.RqAdditionalItems)
                        {
                            RQAdditionalItem rqAI = item;
                            rqAI.RateQuoteId = Convert.ToInt32(id);
                            db.RQAdditionalItems.Add(rqAI);
                            //if (rqAI.Id > 0)
                            //{
                            //    db.Entry(rqAI).State = System.Data.Entity.EntityState.Modified;
                            //    //this.UpdateModel(rqAI);
                            //}
                            //else
                            //{
                            db.RQAdditionalItems.Add(rqAI);
                            //}
                        }
                        db.SaveChanges();
                    }
                }
                catch (Exception e)
                {
                    ViewData["EditError"] = e.Message;
                }
            }
            else
            {
                ViewData["EditError"] = "Please, correct all errors.";
            }
            return(Json(true));
        }
Beispiel #4
0
        public ActionResult SaveRateQuote(RateQuoteViewModel model)
        {
            var rateQuoteIds = new List <int>();

            if (ModelState.IsValid)
            {
                try
                {
                    if (model.RateQuote.RateQuoteId > 0)
                    {
                        model.RateQuote.UppdatedDate    = DateTime.Now;
                        db.Entry(model.RateQuote).State = System.Data.Entity.EntityState.Modified;
                    }
                    else
                    {
                        model.RateQuote.RoundTrip   = model.RoundTrip;
                        model.RateQuote.CreatedDate = DateTime.Now;
                        db.RateQuotes.Add(model.RateQuote);
                    }

                    db.SaveChanges();
                }
                catch (Exception e)
                {
                    ViewData["EditError"] = e.Message;
                }
            }
            else
            {
                ViewData["EditError"] = "Please, correct all errors.";
            }
            return(Json(new { RateQuoteIds = model.RateQuote.RateQuoteId }));
        }
Beispiel #5
0
        public ActionResult NewRQLegs(RateQuoteViewModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var fs = db.Settings.Where(item => item.Item.Equals("Fuel Surcharge", StringComparison.OrdinalIgnoreCase)).FirstOrDefault().Value;

                    RQLeg legs = new RQLeg();
                    legs.RQFrom = model.RQTriggerLegFrom;
                    legs.From   = model.RQNewFrom;
                    legs.To     = model.RQNewTo;

                    legs = CalculateFaresAndFS(legs);

                    legs.ToDispatch = true;

                    model.RqLegs.Add(legs);
                }
                catch (Exception e)
                {
                    ViewData["EditError"] = e.Message;
                }
            }
            else
            {
                ViewData["EditError"] = "Please, correct all errors.";
            }
            return(PartialView("RQLegs", model));
        }
Beispiel #6
0
        public ActionResult RQLegs(RateQuoteViewModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    model.RateQuote.RoundTrip = model.RoundTrip;

                    var fromList = model.RateQuote.From.Split(';');

                    foreach (var ft in fromList)
                    {
                        if (!string.IsNullOrWhiteSpace(ft))
                        {
                            RQLeg legs = new RQLeg();
                            legs.RQFrom     = ft;
                            legs.From       = ft;
                            legs.To         = model.RateQuote.To;
                            legs.ToDispatch = true; // Need to test on edit or ratequote
                            legs            = CalculateFaresAndFS(legs);

                            model.RqLegs.Add(legs);

                            if (model.RateQuote.RoundTrip != null && Convert.ToBoolean(model.RateQuote.RoundTrip))
                            {
                                RQLeg rtlegs = new RQLeg();
                                rtlegs.RQFrom     = ft;
                                rtlegs.From       = model.RateQuote.To;
                                rtlegs.To         = ft;
                                rtlegs.ToDispatch = true; // Need to test on edit or ratequote
                                rtlegs            = CalculateFaresAndFS(rtlegs);

                                model.RqLegs.Add(rtlegs);
                            }
                        }
                    }
                }
                catch (Exception e)
                {
                    ViewData["EditError"] = e.Message;
                }
            }
            else
            {
                ViewData["EditError"] = "Please, correct all errors.";
            }
            return(PartialView("RQLegs", model));
        }
Beispiel #7
0
        public ActionResult EditRQLegs(int rateQuoteId)
        {
            RateQuoteViewModel model = new RateQuoteViewModel();

            if (rateQuoteId != 0)
            {
                var rqList = db.RateQuotes.Where(item => item.RateQuoteId == rateQuoteId);
                var frmLst = rqList.Select(item => item.From).ToList();
                model.RateQuote = rqList.FirstOrDefault();
                //model.RateQuote.From = string.Join(",", frmLst);
                model.RqAdditionalItems = model.RateQuote.RQAdditionalItems.ToList();
                model.RqLegs            = model.RateQuote.RQLegs.ToList();


                //model.RateQuote.RoundTrip = model.RoundTrip;

                //var fromList = model.RateQuote.From.Split(',');

                //foreach (var ft in frmLst)
                //{
                //    RQLeg legs = new RQLeg();
                //    legs.RQFrom = ft;
                //    legs.From = ft;
                //    legs.To = model.RateQuote.To;

                //    legs = CalculateFaresAndFS(legs);

                //    model.RqLegs.Add(legs);

                //    if (model.RateQuote.RoundTrip != null && Convert.ToBoolean(model.RateQuote.RoundTrip))
                //    {
                //        RQLeg rtlegs = new RQLeg();
                //        rtlegs.RQFrom = ft;
                //        rtlegs.From = model.RateQuote.To;
                //        rtlegs.To = ft;

                //        rtlegs = CalculateFaresAndFS(rtlegs);

                //        model.RqLegs.Add(rtlegs);
                //    }
                //}
            }
            return(PartialView("RQLegs", model));
        }
Beispiel #8
0
 public ActionResult NewRQAdditionalItems(RateQuoteViewModel model)
 {
     if (ModelState.IsValid)
     {
         try
         {
             foreach (var item in model.RqAdditionalItems)
             {
                 var billingItem = db.APTAdditionalItems_Master.Where(ai => ai.Id == item.Id).FirstOrDefault();
                 item.BillingItem = billingItem.Item;
                 item.Total       = item.Quantity * billingItem.Fare;
             }
         }
         catch (Exception e)
         {
             ViewData["EditError"] = e.Message;
         }
     }
     else
     {
         ViewData["EditError"] = "Please, correct all errors.";
     }
     return(PartialView("RQLegs", model));
 }