public UnitOfWork(ApplicationDbContext context) { _context = context; Utilities = new UtilityRepository(_context); Locations = new LocationRepository(_context); Providers = new ProviderRepository(_context); }
public List <TradelaneBookingCoLoadFormModel> ColoadReportObj(TradelaneBooking ShipmentDetail) { List <TradelaneBookingCoLoadFormModel> ColoadList = new List <TradelaneBookingCoLoadFormModel>(); if (ShipmentDetail != null) { TradelaneBookingCoLoadFormModel ColoadModel = new TradelaneBookingCoLoadFormModel(); ColoadModel.FrayteNumber = ShipmentDetail.FrayteNumber; ColoadModel.ColoadTitle = "CO LOAD BOOKING FORM (" + DateTime.UtcNow.Date.Year + ")"; ColoadModel.ShipperAddress = UtilityRepository.ConcatinateAddress(ShipmentDetail.ShipFrom, ShipmentDetail.DepartureAirport.AirportCode); ColoadModel.ConsigneeAddress = UtilityRepository.ConcatinateAddress(ShipmentDetail.ShipTo, ShipmentDetail.DestinationAirport.AirportCode); ColoadModel.OperationZoneId = UtilityRepository.GetOperationZone().OperationZoneId; ColoadModel.CTCPerson = ""; ColoadModel.ShipperPhoneNo = !string.IsNullOrEmpty(ShipmentDetail.ShipFrom.Phone) && !string.IsNullOrEmpty(ShipmentDetail.ShipFrom.Country.CountryPhoneCode) ? "(+" + ShipmentDetail.ShipFrom.Country.CountryPhoneCode + ") " + ShipmentDetail.ShipFrom.Phone : ""; ColoadModel.ConsigneePhoneNo = !string.IsNullOrEmpty(ShipmentDetail.ShipTo.Phone) && !string.IsNullOrEmpty(ShipmentDetail.ShipTo.Country.CountryPhoneCode) ? "(+" + ShipmentDetail.ShipTo.Country.CountryPhoneCode + ") " + ShipmentDetail.ShipTo.Phone : ""; ColoadModel.NotifyPartyAddress = ShipmentDetail.IsNotifyPartySameAsReceiver ? ColoadModel.ConsigneeAddress : UtilityRepository.ConcatinateAddress(ShipmentDetail.NotifyParty, ""); ColoadModel.NotifyPartyPhoneNo = !string.IsNullOrEmpty(ShipmentDetail.NotifyParty.Phone) && !string.IsNullOrEmpty(ShipmentDetail.NotifyParty.Country.CountryPhoneCode) ? "(+" + ShipmentDetail.NotifyParty.Country.CountryPhoneCode + ") " + ShipmentDetail.NotifyParty.Phone : ""; ColoadModel.CagroReadyDate = dbContext.TradelaneShipmentAllocations.Where(a => a.TradelaneShipmentId == ShipmentDetail.TradelaneShipmentId).FirstOrDefault() != null && dbContext.TradelaneShipmentAllocations.Where(a => a.TradelaneShipmentId == ShipmentDetail.TradelaneShipmentId).FirstOrDefault().CreatedOnUTC != null?dbContext.TradelaneShipmentAllocations.Where(a => a.TradelaneShipmentId == ShipmentDetail.TradelaneShipmentId).FirstOrDefault().CreatedOnUTC.Value.Date.ToString("dd-MMM-yy") : ""; ColoadModel.DepartureAirport = ShipmentDetail.DepartureAirport != null ? ShipmentDetail.DepartureAirport.AirportCode + " - " + ShipmentDetail.DepartureAirport.AirportName : ""; ColoadModel.DestinationAirport = ShipmentDetail.DestinationAirport != null ? ShipmentDetail.DestinationAirport.AirportCode + " - " + ShipmentDetail.DestinationAirport.AirportName : ""; ColoadModel.MawbNo = !string.IsNullOrEmpty(ShipmentDetail.MAWB) ? ShipmentDetail.AirlinePreference.AilineCode + " " + ShipmentDetail.MAWB.Substring(0, 4) + " " + ShipmentDetail.MAWB.Substring(4, 4) : ""; ColoadModel.SpecialInstruction = ""; ColoadModel.ExportLicenceNo = !string.IsNullOrEmpty(ShipmentDetail.ExportLicenceNo) ? ShipmentDetail.ExportLicenceNo : "";; ColoadModel.AirLine = ShipmentDetail.AirlinePreference != null && !string.IsNullOrEmpty(ShipmentDetail.AirlinePreference.AirLineName) ? ShipmentDetail.AirlinePreference.AirLineName : ""; ColoadModel.TotalPackages = GetTotalPackages(ShipmentDetail.TradelaneShipmentId); ColoadModel.ShipmentDescription = !string.IsNullOrEmpty(ShipmentDetail.ShipmentDescription) ? ShipmentDetail.ShipmentDescription : ""; ColoadModel.GrossWeight = GetGrossWeight(ShipmentDetail.TradelaneShipmentId); ColoadModel.Volume = ShipmentDetail.HAWBPackages.Select(a => a.TotalVolume).Sum().ToString(); ColoadModel.CopyrightText = "Published by FRAYTE Logistics Ltd" + Environment.NewLine + "© CopyRight " + DateTime.UtcNow.Date.Year; ColoadList.Add(ColoadModel); } return(ColoadList); }
public SkyPostalResponse CreateShipment(SkyPostalRequest skyPostalRequest, int ExpressId) { SkyPostalResponse respone = new SkyPostalResponse(); var logisticIntegration = UtilityRepository.getLogisticIntegration(UtilityRepository.GetOperationZone().OperationZoneId, AppSettings.ApplicationMode, FrayteIntegration.SKYPOSTAL); string result = string.Empty; #region SKYPOSTaL API Login skyPostalRequest.user_info.user_code = Convert.ToInt32(logisticIntegration.AppId); skyPostalRequest.user_info.app_key = logisticIntegration.InetgrationKey; skyPostalRequest.user_info.user_key = logisticIntegration.UserName; var skyPostalJson = Newtonsoft.Json.JsonConvert.SerializeObject(skyPostalRequest); result = SkyPostalWebApi(logisticIntegration, skyPostalJson); try { respone = Newtonsoft.Json.JsonConvert.DeserializeObject <SkyPostalResponse>(result); } catch (Exception ex) { ex.ToString(); } return(respone); }
public FrayteManifestName GetQuotation(int QuotationShipmentId, string CustomerName, string FromPostCode, string ToPostCode, int CreatedBy) { FrayteManifestName result = new FrayteManifestName(); var item = new QuotationRepository().GetQuotationDetail(QuotationShipmentId, CustomerName); var TimeZone = new QuotationRepository().GetUserTimeZone(CreatedBy); var UserType = UtilityRepository.GetUserType(CreatedBy); var DateObj = DateTime.UtcNow; TimeZoneInfo TimeZoneInformation = TimeZoneInfo.FindSystemTimeZoneById(TimeZone.Name); var remoteTime = TimeZoneInfo.ConvertTime(DateObj, TimeZoneInformation).ToString("hh:mm:ss tt"); if (item != null) { int CartoonQty = new QuotationRepository().SumofCartoonQty(item.QuotationShipmentId); decimal Volume = new QuotationRepository().TotalVolume(item.QuotationShipmentId, item.PackageCalculationType); if (item.OperationZoneId == 1) { result = HKQuoteReport(item, Volume, CartoonQty, TimeZoneInformation, remoteTime); } else if (item.OperationZoneId == 2) { result = UKQuoteReport(item, Volume, CartoonQty, TimeZoneInformation, remoteTime, UserType, CreatedBy); } } return(result); }
public List <FrayteLogisticServiceItem> GetLogisticServiceItems(int Year) { FrayteOperationZone OperationZone = UtilityRepository.GetOperationZone(); var list = (from ls in dbContext.LogisticServices join lsbrch in dbContext.LogisticServiceBaseRateCardHistories on ls.LogisticServiceId equals lsbrch.LogisticServiceId into leftJoin from tempRate in leftJoin.DefaultIfEmpty() where ls.OperationZoneId == OperationZone.OperationZoneId && ls.IsActive == true && tempRate.ReportYear == Year select new FrayteLogisticServiceItem { LogisticServiceId = ls.LogisticServiceId, LogisticCompany = ls.LogisticCompany, LogisticCompanyDisplay = ls.LogisticCompanyDisplay, LogisticType = ls.LogisticType, LogisticTypeDisplay = ls.LogisticTypeDisplay, RateType = ls.RateType, RateTypeDisplay = ls.RateTypeDisplay, IssueDate = ls.IssuedDate.Value, ExpiryDate = ls.ExpiryDate.Value }).ToList(); return(list); }
public List <FrayteLogisticServices> LogisticServices(int operationZoneId) { List <FrayteLogisticServices> list = new List <FrayteLogisticServices>(); var OperationZone = UtilityRepository.GetOperationZone(); var collection = dbContext.LogisticServices.Where(p => p.OperationZoneId == OperationZone.OperationZoneId && p.IsActive == true).ToList(); FrayteLogisticServices lt; foreach (var item in collection) { lt = new FrayteLogisticServices(); lt.LogisticCompany = item.LogisticCompany; lt.LogisticCompanyDisplay = item.LogisticCompanyDisplay; lt.LogisticServiceId = item.LogisticServiceId; lt.LogisticType = item.LogisticType; lt.LogisticTypeDisplay = item.LogisticTypeDisplay; lt.RateType = item.RateType; lt.RateTypeDisplay = item.RateTypeDisplay; lt.ModuleType = item.ModuleType; lt.OperationZoneId = item.OperationZoneId; list.Add(lt); } return(list); }
public List <DirectBookingCustomer> GetAgents() { // To Do : customer should come according to moduleType var operationzone = UtilityRepository.GetOperationZone(); var customers = (from r in dbContext.Users join ua in dbContext.UserAdditionals on r.UserId equals ua.UserId join ur in dbContext.UserRoles on r.UserId equals ur.UserId where ur.RoleId == (int)FrayteUserRole.Agent && r.IsActive == true && r.OperationZoneId == operationzone.OperationZoneId select new DirectBookingCustomer { CustomerId = r.UserId, CustomerName = r.ContactName, CompanyName = r.CompanyName, AccountNumber = ua.AccountNo, EmailId = r.UserEmail, ValidDays = ua.DaysValidity.HasValue ? ua.DaysValidity.Value : 0, CustomerCurrency = ua.CreditLimitCurrencyCode, OperationZoneId = r.OperationZoneId }).Distinct().ToList(); return(customers.OrderBy(p => p.CompanyName).ToList()); }
public List <FrayteAddress> GetShippeOtherAddresses(int shipperId) { List <FrayteAddress> shipperOtherAddresses = new List <FrayteAddress>(); var addresses = dbContext.UserAddresses.Where(p => p.UserId == shipperId && (p.AddressTypeId == (int)FrayteAddressType.OtherAddress || p.AddressTypeId == (int)FrayteAddressType.MainAddress)).ToList(); if (addresses != null) { foreach (UserAddress userAddress in addresses) { FrayteAddress address = UtilityRepository.UserAddressMapping(userAddress); var countryResult = dbContext.Countries.Where(p => p.CountryId == address.Country.CountryId).FirstOrDefault(); if (countryResult != null) { address.Country.Name = countryResult.CountryName; address.Country.Code = countryResult.CountryCode; } shipperOtherAddresses.Add(address); } } return(shipperOtherAddresses); }
public TermAndCondition SaveTermAndCondition(TermAndCondition termAndCondition) { //For Term And Condition, we always have to create new term and condition in database. string shortCode = string.Empty; var customerCompanyDetail = dbContext.CustomerCompanyDetails.Where(p => p.UserId == termAndCondition.CreatedBy).FirstOrDefault(); if (customerCompanyDetail != null) { shortCode = customerCompanyDetail.CompanyName.ToLower().Contains("mex") ? "MEX" : ""; } var OperationZone = UtilityRepository.GetOperationZone(); TermAndCondition newTermAndCondition = new TermAndCondition(); newTermAndCondition.TermAndConditionId = 0; newTermAndCondition.Detail = termAndCondition.Detail; newTermAndCondition.CreatedOn = DateTime.UtcNow; newTermAndCondition.OperationZoneId = termAndCondition.OperationZoneId; newTermAndCondition.TermAndConditionType = termAndCondition.TermAndConditionType; newTermAndCondition.CreatedBy = termAndCondition.CreatedBy; newTermAndCondition.ConpanyCode = shortCode; dbContext.TermAndConditions.Add(newTermAndCondition); dbContext.SaveChanges(); return(newTermAndCondition); }
internal static void SendPODMail() { try { var setting = new ReportSettingRepository().GetAllReportSettings().Where(p => p.PODScheduleSetting == FrayteCustomerMailSetting.Scheduled && p.ScheduleSettingType == FrayteCustomerMailSetting.POD).ToList(); if (setting.Count > 0) { foreach (FryateReportSetting report in setting) { //Get server date in utc standard DateTime serverdate = UtilityRepository.ConvertDateTimetoUniversalTime(DateTime.Now).Date; //Get server time in HH:mm format TimeSpan servertime = TimeSpan.Parse(DateTime.Now.ToString("HH:mm")); DateTime scheduledate = new DateTime(report.ScheduleDate.Year, report.ScheduleDate.Month, report.ScheduleDate.Day); if (report.ScheduleTime <= servertime) { if (report.UpdatedOn == null || report.UpdatedOn.Value.Date < DateTime.Now.Date) { UpdateDirectShipmentPOD(report.UserId); //Update Customer Setting UpdateOn information new ReportSettingRepository().UpdateCustomerSettingInformation(report.CustomerPODSettingId, report.UserId); } } } } } catch (Exception ex) { Logger _log = Get_Log(); _log.Info("Error due to send customer pod information mail"); _log.Error(ex.Message); } }
public List <FrayteWarehouseLocation> GetAllLocations(int userId) { List <FrayteWarehouseLocation> locations = new List <FrayteWarehouseLocation>(); try { var OpearatiopZone = UtilityRepository.GetOperationZone(); var Country = dbContext.Countries.Where(p => p.CountryCode == OpearatiopZone.OperationZoneName).FirstOrDefault(); var list = dbContext.Locations.Where(p => p.CountryId == Country.CountryId).ToList(); if (list != null && list.Count > 0) { FrayteWarehouseLocation location; foreach (var data in list) { location = new FrayteWarehouseLocation(); location.LocationName = data.LocationName; location.Barcode = data.Barcode; locations.Add(location); } } } catch (Exception ex) { Elmah.ErrorSignal.FromCurrentContext().Raise(ex); } return(locations); }
public List <DirectBookingCustomer> GetCustomersWithoutCharges(int userId, string moduleType, string mode) { var customerIds = dbcontext.AdminCharges.Where(p => p.CustomerId > 0 && p.IsActive == true).Select(p => p.CustomerId).Distinct().ToList(); // To Do : customer should come according to moduleType var operationzone = UtilityRepository.GetOperationZone(); List <DirectBookingCustomer> customers = new List <DirectBookingCustomer>(); if (mode == "Add") { customers = (from r in dbcontext.Users join ua in dbcontext.UserAdditionals on r.UserId equals ua.UserId join ur in dbcontext.UserRoles on r.UserId equals ur.UserId join CM in dbcontext.CustomerMarginCosts on r.UserId equals CM.CustomerId where ur.RoleId == (int)FrayteUserRole.Customer && r.IsActive == true && r.OperationZoneId == operationzone.OperationZoneId && !customerIds.Contains(r.UserId) select new DirectBookingCustomer { CustomerId = r.UserId, CustomerName = r.ContactName, CompanyName = r.CompanyName, AccountNumber = ua.AccountNo, EmailId = r.Email, ValidDays = ua.DaysValidity.HasValue ? ua.DaysValidity.Value : 0, CustomerCurrency = ua.CreditLimitCurrencyCode, OperationZoneId = r.OperationZoneId }).Distinct().ToList(); // customers.Where(p => !customerIds.Contains(p.CustomerId)).ToList(); } else { customers = (from r in dbcontext.Users join ua in dbcontext.UserAdditionals on r.UserId equals ua.UserId join ur in dbcontext.UserRoles on r.UserId equals ur.UserId join CM in dbcontext.CustomerMarginCosts on r.UserId equals CM.CustomerId where ur.RoleId == (int)FrayteUserRole.Customer && r.IsActive == true && r.OperationZoneId == operationzone.OperationZoneId select new DirectBookingCustomer { CustomerId = r.UserId, CustomerName = r.ContactName, CompanyName = r.CompanyName, AccountNumber = ua.AccountNo, EmailId = r.Email, ValidDays = ua.DaysValidity.HasValue ? ua.DaysValidity.Value : 0, CustomerCurrency = ua.CreditLimitCurrencyCode, OperationZoneId = r.OperationZoneId }).Distinct().ToList(); } return(customers); }
public FrayteResult SaveTradelaneTracking(TradelaneUpdateTrackingModel TM) { var Shipment = dbContext.TradelaneShipments.Where(a => a.TradelaneShipmentId == TM.TradelaneShipmentId).FirstOrDefault(); var user = dbContext.Users.Where(a => a.UserId == Shipment.CustomerId).FirstOrDefault(); FrayteResult FR = new FrayteResult(); FR.Status = false; var Result = dbContext.TradelaneFlightDetails.Where(a => a.TradelaneFlightDetailId == TM.TradelaneFlightId).FirstOrDefault(); if (Result != null) { Result.TradelaneShipmentId = TM.TradelaneShipmentId; Result.FlightNumber = TM.FlightNo; Result.ArrivalAirportCode = TM.DestinationAirportCode; Result.DepartureAirportCode = TM.DepartureAirportCode; var Timezone = dbContext.Timezones.Where(a => a.TimezoneId == user.TimezoneId).FirstOrDefault(); TimeZoneModal TZM = new TimeZoneModal(); if (Timezone != null) { TZM.TimezoneId = Timezone.TimezoneId; TZM.Name = Timezone.Name; } Result.ArrivalDate = UtilityRepository.ConvertToUniversalTimeWitDate(TM.ArrivalTime, TM.ArrivalDate.Value, TZM); Result.DepartureDate = UtilityRepository.ConvertToUniversalTimeWitDate(TM.DepartureTime, TM.DepartureDate.Value, TZM); Result.BookingStatus = TM.BookingStatus; Result.Pieces = TM.TotalPeices; Result.TotalVolume = TM.Volume; Result.TotalWeight = TM.TotalWeight; dbContext.Entry(Result).State = System.Data.Entity.EntityState.Modified; dbContext.SaveChanges(); FR.Status = true; } else { TradelaneFlightDetail TlST = new TradelaneFlightDetail(); TlST.TradelaneShipmentId = TM.TradelaneShipmentId; TlST.FlightNumber = TM.FlightNo; TlST.ArrivalAirportCode = TM.DestinationAirportCode; TlST.DepartureAirportCode = TM.DepartureAirportCode; var Timezone = dbContext.Timezones.Where(a => a.TimezoneId == user.TimezoneId).FirstOrDefault(); TimeZoneModal TZM = new TimeZoneModal(); if (Timezone != null) { TZM.TimezoneId = Timezone.TimezoneId; TZM.Name = Timezone.Name; } TlST.ArrivalDate = UtilityRepository.ConvertToUniversalTimeWitDate(TM.ArrivalTime, TM.ArrivalDate.Value, TZM); TlST.DepartureDate = UtilityRepository.ConvertToUniversalTimeWitDate(TM.DepartureTime, TM.DepartureDate.Value, TZM); TlST.BookingStatus = TM.BookingStatus; TlST.Pieces = TM.TotalPeices; TlST.TotalVolume = TM.Volume; TlST.TotalWeight = TM.TotalWeight; dbContext.TradelaneFlightDetails.Add(TlST); dbContext.SaveChanges(); FR.Status = true; } return(FR); }
public List <MawbAllocationModel> GetMawbAllocation(int TradelaneShipmentId, string Leg) { List <MawbAllocationModel> MAMList = new List <MawbAllocationModel>(); var userid = dbContext.TradelaneShipments.Where(a => a.TradelaneShipmentId == TradelaneShipmentId).FirstOrDefault().CustomerId; var CustomerDetail = new CustomerRepository().GetCustomerDetail(userid); List <TradelaneShipmentAllocation> Result = new List <TradelaneShipmentAllocation>(); if (!string.IsNullOrEmpty(Leg)) { Result = dbContext.TradelaneShipmentAllocations.Where(a => a.TradelaneShipmentId == TradelaneShipmentId && a.LegNum == Leg).ToList(); } else { Result = dbContext.TradelaneShipmentAllocations.Where(a => a.TradelaneShipmentId == TradelaneShipmentId).ToList(); } if (Result != null && Result.Count > 0) { foreach (var res in Result) { TimeZoneModal TZM = new TimeZoneModal(); var Timezone = dbContext.Timezones.Where(a => a.TimezoneId == res.TimezoneId).FirstOrDefault(); if (Timezone != null) { TZM.TimezoneId = Timezone.TimezoneId; TZM.Name = Timezone.Name; } MawbAllocationModel MAM = new MawbAllocationModel(); MAM.AgentId = res.AgentId.Value; MAM.AirlineId = res.AirlineId.Value; MAM.CreatedBy = res.CreatedBy.Value; MAM.CreatedOnUTC = res.CreatedOnUTC.Value; MAM.ETA = res.EstimatedDateofArrival != null?UtilityRepository.ConvertDatetoSpecifiedTimeZoneTime(res.EstimatedDateofArrival.Value, TZM) : (DateTime?)null; MAM.ETD = res.EstimatedDateofDelivery != null?UtilityRepository.ConvertDatetoSpecifiedTimeZoneTime(res.EstimatedDateofDelivery.Value, TZM) : (DateTime?)null; MAM.ETATime = res.EstimatedDateofArrival != null?UtilityRepository.ConvertToCustomerTimeZone(res.EstimatedDateofArrival.Value.TimeOfDay, TZM) : ""; MAM.ETDTime = res.EstimatedDateofDelivery != null?UtilityRepository.ConvertToCustomerTimeZone(res.EstimatedDateofDelivery.Value.TimeOfDay, TZM) : ""; MAM.TimezoneId = res.TimezoneId.Value; MAM.FlightNumber = res.FlightNumber; MAM.LegNum = res.LegNum; MAM.MAWB = res.MAWB; MAM.MawbAllocationId = res.TradelaneShipmentAllocationId; MAM.TradelaneId = res.TradelaneShipmentId.Value; MAMList.Add(MAM); } return(MAMList); } else { return(MAMList); } }
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); }
public static List <Utility> GetActiveUtilities() { List <Utility> ut; using (CustomClearviewEntities ctx = new CustomClearviewEntities()) { UtilityRepository repo = new UtilityRepository(ctx); ut = repo.GetActiveItems(); } return(ut); }
public FrayteManifestName GenerateExpressTrackandTraceDetail(ExpressTrackandTrace trackdetail) { FrayteManifestName result = new FrayteManifestName(); string Name = ""; if (trackdetail.CustomerName == "ALL") { var OperationZone = UtilityRepository.GetOperationZone(); if (OperationZone.OperationZoneId == 1) { Name = "AllHK"; } else if (OperationZone.OperationZoneId == 2) { Name = "AllUK"; } } else { Name = trackdetail.CustomerName; } try { var track = new ExpressRepository().GetExpressTrackAndTraceDetail(trackdetail); if (track != null && track.Count > 0) { ReportTemplate.Other.AllUKReport rp = new ReportTemplate.Other.AllUKReport(); rp.DataSource = track; if (File.Exists(HttpContext.Current.Server.MapPath(AppSettings.ReportFolder) + "/" + "ExpressTrack&Trace" + "/" + Name + "_" + "Express_Track_Trace_Detail" + "_" + DateTime.Now.ToString("dd_MM_yyyy") + ".xlsx")) { File.Delete(HttpContext.Current.Server.MapPath(AppSettings.ReportFolder) + "/" + "ExpressTrack&Trace" + "/" + Name + "_" + "Express_Track_Trace_Detail" + "_" + DateTime.Now.ToString("dd_MM_yyyy") + ".xlsx"); rp.ExportToXlsx(HttpContext.Current.Server.MapPath(AppSettings.ReportFolder) + "/" + "ExpressTrack&Trace" + "/" + Name + "_" + "Express_Track_Trace_Detail" + "_" + DateTime.Now.ToString("dd_MM_yyyy") + ".xlsx"); result.FileName = Name + "_" + "Express_Track_Trace_Detail" + "_" + DateTime.Now.ToString("dd_MM_yyyy") + ".xlsx"; result.FilePath = AppSettings.WebApiPath + "ReportFiles/ExpressTrack&Trace/" + Name + "_" + "Express_Track_Trace_Detail" + "_" + DateTime.Now.ToString("dd_MM_yyyy") + ".xlsx"; result.FileStatus = true; } else { System.IO.Directory.CreateDirectory(HttpContext.Current.Server.MapPath(AppSettings.ReportFolder + "/" + "ExpressTrack&Trace" + "/")); rp.ExportToXlsx(HttpContext.Current.Server.MapPath(AppSettings.ReportFolder) + "/" + "ExpressTrack&Trace" + "/" + Name + "_" + "Express_Track_Trace_Detail" + "_" + DateTime.Now.ToString("dd_MM_yyyy") + ".xlsx"); result.FileName = Name + "_" + "Express_Track_Trace_Detail" + "_" + DateTime.Now.ToString("dd_MM_yyyy") + ".xlsx"; result.FilePath = AppSettings.WebApiPath + "ReportFiles/ExpressTrack&Trace/" + Name + "_" + "Express_Track_Trace_Detail" + "_" + DateTime.Now.ToString("dd_MM_yyyy") + ".xlsx"; result.FileStatus = true; } } } catch (Exception ex) { } return(result); }
public List <FrayteUnAssignedJob> GetUnAssignedJobs(TrackHSCodeJob obj) { List <FrayteUnAssignedJob> list = new List <FrayteUnAssignedJob>(); try { int SkipRows = 0; SkipRows = (obj.CurrentPage - 1) * obj.TakeRows; var OperationZone = UtilityRepository.GetOperationZone(); // To Do : Get ETD Date And Time in the list var jobs = dbContext.TrackUnAssignedJob(obj.FromDate, obj.ToDate, SkipRows, obj.TakeRows, OperationZone.OperationZoneId).ToList(); var d = jobs.Where(p => p.EstimatedDateOfDelivery.HasValue).ToList(); if (jobs != null && jobs.Count > 0) { foreach (var data in jobs) { FrayteUnAssignedJob job = new FrayteUnAssignedJob(); job.CourierCompany = data.LogisticCompany; job.CourierCompanyDisplay = data.LogisticCompanyDisplay; job.Customer = data.ContactName; job.DisplayStatus = data.StatusName; job.ShippedFromCompany = data.FromCompany; job.ShippedToCompany = data.ToCompany; job.ShippingDate = data.CreatedOn; job.TotalRows = data.TotalRows.HasValue ? data.TotalRows.Value : 0; job.TrackingNo = data.TrackingNo; job.EstimatedDateOfDeparture = data.EstimatedDateOfDelivery; job.EstimatedTimeOfDeparture = UtilityRepository.GetTimeZoneTime(data.EstimatedTimeofDelivery); job.EstimatedDateOfArrival = data.EstimatedDateofArrival; job.EstimatedTimeOfArrival = UtilityRepository.GetTimeZoneTime(data.EstimatedTimeofArrival); job.ShipmentId = data.DirectShipmentId; job.ShipmentDescription = data.ContentDescription; job.Reference1 = data.Reference1; job.FrayteNumber = data.FrayteNumber; job.FromCountry = data.FromCountry; job.ToCountry = data.ToCountry; list.Add(job); } } // To Do : OrderBy on ETD date and then ETD Time var collection = list.OrderByDescending(p => p.EstimatedDateOfDeparture).ThenByDescending(p => UtilityRepository.GetTimeFromString(p.EstimatedTimeOfDeparture)).ToList(); return(collection); } catch (Exception ex) { Elmah.ErrorSignal.FromCurrentContext().Raise(ex); return(list); } }
public ReceiverPaymentInfo GetPaymentInitials(string key) { try { string decriptString = UtilityRepository.ConvertHexToString(key, System.Text.Encoding.UTF8); ReceiverPaymentInfo result = new PaymentRepository().GetReceiverPaymentInfo(decriptString); return(result); } catch (Exception ex) { return(null); } }
public FrayteAddress GetShipperMainAddress(int shipperId) { FrayteAddress shipperMainAddress = new FrayteAddress(); var address = dbContext.UserAddresses.Where(p => p.UserId == shipperId && p.AddressTypeId == (int)FrayteAddressType.MainAddress).FirstOrDefault(); if (address != null) { shipperMainAddress = UtilityRepository.UserAddressMapping(address); } return(shipperMainAddress); }
public List <FrayteCustomerSpecificAdminCharges> GetCustomerSpecificAdminCharges() { List <FrayteCustomerSpecificAdminCharges> list = new List <FrayteCustomerSpecificAdminCharges>(); try { var OperationZoneId = UtilityRepository.GetOperationZone().OperationZoneId; var charges = (from r in dbcontext.AdminCharges join u in dbcontext.Users on r.CustomerId equals u.UserId join ua in dbcontext.UserAdditionals on r.CustomerId equals ua.UserId where r.IsActive == true && r.OperationZoneId == OperationZoneId select new { CustomerName = u.CompanyName, CustomerId = r.CustomerId, AdminChargeId = r.AdminChargesId, CreatedBy = r.CreatedBy, ChargeType = r.ChargeType, Key = r.ShortName, Value = r.Name, Amount = r.Value, CurrencyCode = r.CurrencyCode, CreatedOn = r.CreatedOnUtc } ).ToList(); list = charges.GroupBy(x => x.CustomerId) .Select(group => new FrayteCustomerSpecificAdminCharges { CustomerId = group.FirstOrDefault().CustomerId, CustomerName = group.FirstOrDefault().CustomerName, Charges = group.Select(subGroup => new AdminChargesTypes { AdminChargeId = subGroup.AdminChargeId, Amount = subGroup.Amount, ChargeType = subGroup.ChargeType, CreatedBy = subGroup.CreatedBy, CreatedOn = subGroup.CreatedOn, Key = subGroup.Key, CurrencyCode = subGroup.CurrencyCode, Value = subGroup.Value }).ToList() }).ToList(); } catch (Exception ex) { Elmah.ErrorSignal.FromCurrentContext().Raise(ex); } return(list); }
public EtowerResponseModel CreateShipment(List <ETowerRequestModel> request, int DirectShipmentDraftId) { EtowerResponseModel response = new EtowerResponseModel(); var logisticIntegration = UtilityRepository.getLogisticIntegration(UtilityRepository.GetOperationZone().OperationZoneId, AppSettings.ApplicationMode, FrayteIntegration.ETOWER); string url = logisticIntegration.ServiceUrl + "/services/shipper/orders"; var shipmentRequestjson = JsonConvert.SerializeObject(request); var result = ETowerApiCalling(url, shipmentRequestjson, "Shipment"); response = Newtonsoft.Json.JsonConvert.DeserializeObject <EtowerResponseModel>(result); response.Request = shipmentRequestjson; response.Response = result; if (response.status == "Success") { LabelResponseModel label = new LabelResponseModel(); #region Label Dwonload var eTowerLableRequest = new EtowerLableRequest() { labelFormat = "PDF", labelType = 1, merged = false, packinglist = true, }; eTowerLableRequest.orderIds = new List <string>(); eTowerLableRequest.orderIds.Add(response.data[0].orderId); var labeljson = JsonConvert.SerializeObject(eTowerLableRequest); string Labelurl = logisticIntegration.ServiceUrl + "/services/shipper/labels"; var lableResponse = ETowerApiCalling(Labelurl, labeljson, "Label"); label = JsonConvert.DeserializeObject <LabelResponseModel>(lableResponse); if (label.status == "Success") { response.data[0].labelContent = label.data[0].labelContent; } else { //Label Error } #endregion } else { var EtowerError = JsonConvert.DeserializeObject <EtowerError>(result); } return(response); }
public void ShowDatabaseScript(object obj) { var model = (DatabaseObjectItemViewModel)obj; var dbObject = new DatabaseObject { DatabaseName = model.DatabaseName, ObjectSchema = model.SchemaName, ObjectName = model.Name, TypeCode = model.Type }; var utility = new UtilityRepository(); utility.GetSmoObject(dbObject); ShowScript(dbObject.DbSql, $"Source {"Database"}: {dbObject.FormattedName}"); }
public IActionResult UpdateUser([FromBody] User oUser, int id) { try { oUser.Password = UtilityRepository.Encrypt(oUser.Password, "sblw-3hn8-sqoy19"); int res = _repoUser.Update(oUser); if (res != 0) { return(Ok(res)); } return(Forbid()); } catch (Exception ex) { return(null); } }
public TimeZoneModal GetOperationTimezone() { FrayteOperationZone operationZone = UtilityRepository.GetOperationZone(); var timeZone = (from tz in dbContext.Timezones join c in dbContext.Countries on tz.TimezoneId equals c.TimeZoneId where c.CountryCode == operationZone.OperationZoneName select new TimeZoneModal() { TimezoneId = tz.TimezoneId, Name = tz.Name, Offset = tz.Offset, OffsetShort = tz.OffsetShort }).FirstOrDefault(); return(timeZone); }
public List <FrayteCourier> GetUKCourier() { List <FrayteCourier> lstCourier = new List <FrayteCourier>(); var result = dbContext.Couriers.ToList().Skip(3); foreach (Courier courier in result) { FrayteCourier frayteCourier = new FrayteCourier(); frayteCourier.CourierId = courier.CourierId; frayteCourier.Name = courier.CourierName; frayteCourier.DisplayName = courier.DisplayName; frayteCourier.Website = courier.Website; frayteCourier.CourierType = courier.ShipmentType; frayteCourier.LatestBookingTime = UtilityRepository.GetTimeZoneTime(courier.LatestBookingTime); lstCourier.Add(frayteCourier); } return(lstCourier); }
private Tuple <string, string> GetDateTimeZone(int?UserId, DateTime?CreatedOn) { var customerDetail = dbContext.Users.Where(a => a.UserId == UserId).FirstOrDefault(); var timeZone = dbContext.Timezones.Where(p => p.TimezoneId == customerDetail.TimezoneId).FirstOrDefault(); var Timezone = new TimeZoneModal(); if (timeZone != null) { Timezone.TimezoneId = timeZone.TimezoneId; Timezone.Name = timeZone.Name; Timezone.Offset = timeZone.Offset; Timezone.OffsetShort = timeZone.OffsetShort; } var TimeZoneDetail = TimeZoneInfo.FindSystemTimeZoneById(timeZone.Name); var CreatedOn1 = UtilityRepository.UtcDateToOtherTimezone(CreatedOn.Value, CreatedOn.Value.TimeOfDay, TimeZoneDetail).Item1; return(Tuple.Create(CreatedOn1.ToString("dd-MMM-yyyy hh:mm"), "(" + Timezone.OffsetShort + ")")); }
public List <FrayteSystemAlert> GetSystemAlerts(TrackSystemAlert trackSystemAlert) { int SkipRows = 0; SkipRows = (trackSystemAlert.CurrentPage - 1) * trackSystemAlert.TakeRows; var result = dbContext.spGet_GetSystemAlerts(trackSystemAlert.OperationZoneId, trackSystemAlert.FromDate, trackSystemAlert.ToDate, SkipRows, trackSystemAlert.TakeRows).ToList(); List <FrayteSystemAlert> list = new List <FrayteSystemAlert>(); if (result != null && result.Count > 0) { FrayteSystemAlert SystemAlertResult; foreach (var data in result) { SystemAlertResult = new FrayteSystemAlert(); SystemAlertResult.SystemAlertId = data.SystemAlertId; SystemAlertResult.OperationZoneId = data.OperationZoneId; SystemAlertResult.Heading = data.Heading; SystemAlertResult.Description = data.Description; SystemAlertResult.FromDate = data.FromDate; SystemAlertResult.FromTime = UtilityRepository.GetTimeZoneTime(data.FromTime); SystemAlertResult.ToDate = data.ToDate; SystemAlertResult.ToTime = UtilityRepository.GetTimeZoneTime(data.ToTime); SystemAlertResult.IsActive = data.IsActive; SystemAlertResult.TotalRows = data.TotalRows.Value; SystemAlertResult.TimeZoneDetail = new TimeZoneModal(); SystemAlertResult.TimeZoneDetail.Name = data.TimeZoneName; if (data.TimezoneId.HasValue) { SystemAlertResult.TimeZoneDetail.TimezoneId = data.TimezoneId.Value; } SystemAlertResult.TimeZoneDetail.Offset = data.TimeZoneOffset; SystemAlertResult.TimeZoneDetail.OffsetShort = data.TimeZoneOffsetShort; var TimeZoneInformation = TimeZoneInfo.FindSystemTimeZoneById(data.TimeZoneName); SystemAlertResult.FromTime = UtilityRepository.UtcDateToOtherTimezone(data.FromDate, data.FromTime, TimeZoneInformation).Item2; SystemAlertResult.FromDate = UtilityRepository.UtcDateToOtherTimezone(data.FromDate, data.FromTime, TimeZoneInformation).Item1; SystemAlertResult.ToTime = UtilityRepository.UtcDateToOtherTimezone(data.ToDate, data.ToTime, TimeZoneInformation).Item2; SystemAlertResult.ToDate = UtilityRepository.UtcDateToOtherTimezone(data.ToDate, data.ToTime, TimeZoneInformation).Item1; list.Add(SystemAlertResult); } } return(list); }
public FrayteResult SaveCustomerCharge(FrayteCustomerSpecificAdminCharges charge) { FrayteResult result = new FrayteResult(); try { AdminCharge adminCharge; foreach (var item in charge.Charges) { if (item.AdminChargeId == 0) { adminCharge = new AdminCharge(); adminCharge.Value = item.Amount; adminCharge.CustomerId = charge.CustomerId; adminCharge.CreatedOnUtc = DateTime.UtcNow; adminCharge.IsActive = true; adminCharge.Name = item.Value; adminCharge.ShortName = item.Key; adminCharge.OperationZoneId = UtilityRepository.GetOperationZone().OperationZoneId; adminCharge.ChargeType = item.ChargeType; adminCharge.CreatedBy = item.CreatedBy; adminCharge.CurrencyCode = "GBP";// item.CurrencyCode; dbcontext.AdminCharges.Add(adminCharge); dbcontext.SaveChanges(); } else { adminCharge = dbcontext.AdminCharges.Find(item.AdminChargeId); adminCharge.Value = item.Amount; adminCharge.UpdatedOnUtc = DateTime.UtcNow; adminCharge.UpdatedBy = item.CreatedBy; dbcontext.SaveChanges(); } } result.Status = true; } catch (Exception ex) { Elmah.ErrorSignal.FromCurrentContext().Raise(ex); result.Status = false; } return(result); }
public USPSResponse CreateShipment(USPSRequest request, int ExpressId) { USPSResponse response = new USPSResponse(); FrayteLogisticIntegration logisticIntegration = UtilityRepository.getLogisticIntegration(UtilityRepository.GetOperationZone().OperationZoneId, AppSettings.ApplicationMode, FrayteIntegration.USPS); string res = string.Empty; request.header.key = logisticIntegration.InetgrationKey; request.header.version = logisticIntegration.AppVersion; var usps = Newtonsoft.Json.JsonConvert.SerializeObject(request); res = GetResponse(logisticIntegration, usps); response = JsonConvert.DeserializeObject <USPSResponse>(res); var error = JsonConvert.DeserializeObject <USPSError>(res); return(response); }