public IActionResult OnPost(string vesselDetails)
        {
            Vessel = vesselDetails;

            if (Vessel != null)
            {
                ModelState.Clear();
                TryValidateModel(Vessel);
            }

            if (!ModelState.IsValid)
            {
                InitialisePage();

                return(Page());
            }

            try
            {
                uint imo    = Convert.ToUInt32(Vessel.Split('-').FirstOrDefault().TrimEnd());
                var  vessel = _context.WorldFleet
                              .Where(a => a.Imo == imo)
                              .First();

                MSD1 = new MSD1(TempData.GetKeep <MSD1>(MSD1Key))
                {
                    Imo        = vessel.Imo,
                    Deadweight = vessel.Deadweight,
                    ShipName   = vessel.ShipName,
                    FlagCode   = vessel.FlagCode
                };
                TempData.Put(MSD1Key, MSD1);

                return(RedirectToPage("./VoyageDetails", new { FromSummary = FromSummary.ToString(), IsEdited = FromSummary.ToString() }));
            }

            catch (Exception e)
            {
                _logger.LogError(e, e.Message);
                ModelState.AddModelError("CustomError", "Enter a valid IMO number or Vessel Name");
                InitialisePage();
                return(Page());
            }
        }
Ejemplo n.º 2
0
        public IActionResult OnPost()
        {
            if (!ModelState.IsValid)
            {
                InitialisePage();
                return(Page());
            }

            MSD1 = CustomExtensions.NotNullOrEmpty(TempData) && TempData[MSD1Key] != null ? new MSD1(TempData.GetKeep <MSD1>(MSD1Key)) : new MSD1();

            MSD1.AgentSenderID = Input.AgentSenderId.Split('-').FirstOrDefault().TrimEnd();
            MSD1.LineSenderID  = Input.LineSenderId.Split('-').FirstOrDefault().TrimEnd();

            MSD1.AgentCompanyName = Input.AgentSenderId.Split('-').LastOrDefault().TrimStart();
            MSD1.LineCompanyName  = Input.LineSenderId.Split('-').LastOrDefault().TrimStart();
            TempData.Put(MSD1Key, MSD1);

            return(RedirectToPage("./VesselDetails", new { FromSummary = FromSummary.ToString(), IsEdited = FromSummary.ToString() }));
        }