Ejemplo n.º 1
0
        public ExportManifestPdfModel GetExportManifestPDFDataSource(int TradelaneShipmentId)
        {
            ExportManifestPdfModel EMPM = new ExportManifestPdfModel();
            var Result = dbContext.ExpressManifests.Where(a => a.TradelaneShipmentId == TradelaneShipmentId).FirstOrDefault();
            TradelaneBooking ShipmentDetail = new TradelaneBookingRepository().GetTradelaneBookingDetails(TradelaneShipmentId, "");

            if (Result != null)
            {
                EMPM.ExportManifestName = "Origin Manifest-" + Result.BarCode + " (" + ShipmentDetail.ShipmentHandlerMethod.DisplayName + ")";
                EMPM.BarCode            = Result.BarCode;
                EMPM.PrintedBy          = dbContext.Users.Where(a => a.UserId == Result.CreadtdBy.Value).FirstOrDefault().ContactName;
                EMPM.PrintedOn          = GetDateTimeString(Result.CreadtdBy, Result.CreatedOn);
                EMPM.PickUpAddress      = UtilityRepository.ConcatinateExpressAddress(ShipmentDetail.ShipFrom);
                EMPM.MawbInfo           = new List <ExpressMawbInformationModel>();
                var MawbDtl = dbContext.TradelaneShipmentAllocations.Where(a => a.TradelaneShipmentId == TradelaneShipmentId).ToList();
                if (MawbDtl != null && MawbDtl.Count > 0)
                {
                    foreach (var MD in MawbDtl)
                    {
                        ExpressMawbInformationModel ExMa = new ExpressMawbInformationModel();
                        ExMa.Airline     = GetAirlineName(MD.AirlineId);
                        ExMa.ETA         = GetDateTimeZone(MD.AgentId, MD.EstimatedDateofArrival).Item1;
                        ExMa.ETD         = GetDateTimeZone(MD.AgentId, MD.EstimatedDateofDelivery).Item1;
                        ExMa.ETATimeZone = GetDateTimeZone(MD.AgentId, MD.EstimatedDateofDelivery).Item2;
                        ExMa.ETDTimeZone = GetDateTimeZone(MD.AgentId, MD.EstimatedDateofDelivery).Item2;
                        ExMa.FlightNo    = MD.FlightNumber;
                        var AirlineCode = ExMa.Airline.Split('-');
                        ExMa.Mawb = AirlineCode[1].Substring(1, 3) + " " + MD.MAWB.Substring(0, 4) + " " + MD.MAWB.Substring(4, 4);
                        EMPM.MawbInfo.Add(ExMa);
                    }
                }
                EMPM.BagsInfo = new List <BagDetail>();
                var list = dbContext.spGet_GetExpressManifestedShipments(Result.ExpressManifestId).ToList();
                ExpressViewManifest EVM = new ExpressViewManifest();

                EVM.ManifestedList = new List <ExpressManifestDetail>();
                if (list != null && list.Count > 0)
                {
                    var Bags = list.GroupBy(a => a.BagBarCode).ToList();
                    foreach (var b in Bags)
                    {
                        BagDetail Bg = new BagDetail();
                        EVM.ManifestName = Bags.FirstOrDefault().FirstOrDefault().BarCode;
                        Bg.BagNumber     = b.FirstOrDefault().BagBarCode;
                        Bg.Carrier       = b.FirstOrDefault().Carrier;
                        Bg.ExporterName  = b.FirstOrDefault().ContactName;
                        Bg.TotalPieces   = b.FirstOrDefault().TotalNoOfShipments.Value;
                        Bg.TotalWeight   = b.FirstOrDefault().TotalWeight;
                        EMPM.BagsInfo.Add(Bg);
                    }
                }
            }
            return(EMPM);
        }