public JsonResult UpdateLocationMap_Async(int?geoPointID, int cersID, decimal latitude, decimal longitude, decimal?accuracyMeasure, int referenceDatumID, int collectionMethodID, int referencePointID, DateTime collectionDate) { bool success = false; try { if (geoPointID != null && geoPointID != 0) { CERSFacilityGeoPoint geoPoint = Repository.CERSFacilityGeoPoints.GetByID(Convert.ToInt32(geoPointID)); if (geoPoint != null) { geoPoint.LatitudeMeasure = latitude; geoPoint.LongitudeMeasure = longitude; geoPoint.HorizontalAccuracyMeasure = accuracyMeasure != null ? accuracyMeasure.Value : 100; geoPoint.HorizontalReferenceDatumID = referenceDatumID; geoPoint.HorizontalCollectionMethodID = collectionMethodID; geoPoint.GeographicReferencePointID = referencePointID; //geoPoint.DataCollectionDate = DateTime.Now; geoPoint.DataCollectionDate = collectionDate; Repository.CERSFacilityGeoPoints.Update(geoPoint); } } else { CERSFacilityGeoPoint geoPoint = new CERSFacilityGeoPoint(); geoPoint.CERSID = cersID; geoPoint.LatitudeMeasure = latitude; geoPoint.LongitudeMeasure = longitude; geoPoint.HorizontalAccuracyMeasure = accuracyMeasure != null ? accuracyMeasure.Value : 100; geoPoint.HorizontalReferenceDatumID = referenceDatumID; geoPoint.HorizontalCollectionMethodID = collectionMethodID; geoPoint.GeographicReferencePointID = referencePointID; //geoPoint.DataCollectionDate = DateTime.Now; geoPoint.DataCollectionDate = collectionDate; Repository.CERSFacilityGeoPoints.Create(geoPoint); } success = true; } catch (Exception ex) { string message = ex.Message; } var result = new { Success = success }; return(Json(result)); }
protected virtual ActionResult Handle_BusinessActivitiesGet(int organizationId, int CERSID, int?fseID = null) { var viewModel = GetSingleEntityViewModel <BPActivity>(organizationId, CERSID, SubmittalElementType.FacilityInformation, ResourceType.BusinessActivities, fseID); //See if BusinessName or address is null/empty. If yes, get them from dbo.Facility. var bpActivities = viewModel.Entity; //Get the facility. var facility = Repository.Facilities.GetByID(CERSID); FeedGuidanceMessagesIntoModelState(viewModel.FacilitySubmittalElementResource); Services.BusinessLogic.SubmittalElements.FacilityInformation.InitializeDraftActivitiesForm(viewModel); //var siteAddress = (!string.IsNullOrWhiteSpace(bpActivities.SiteAddress)) ? bpActivities.SiteAddress : facility.WashedStreet; //var city = (!string.IsNullOrWhiteSpace(bpActivities.City)) ? bpActivities.City : facility.WashedCity; //var zipCode = (!string.IsNullOrWhiteSpace(bpActivities.ZipCode)) ? bpActivities.ZipCode : facility.WashedZipCode; viewModel.AddressInformation = new AddressInformation(); viewModel.Facility = facility; CERSFacilityGeoPoint geoPoint = facility.CERSFacilityGeoPoint; //if geopoint is null create a generic one using the county centroid if (geoPoint == null) { if (facility.CountyID != null) { CountyGISCentroid countyCentroid = Repository.DataModel.CountyGISCentroids.SingleOrDefault(p => p.CountyID == facility.CountyID); if (countyCentroid != null) { geoPoint = new CERSFacilityGeoPoint(); geoPoint.LatitudeMeasure = countyCentroid.LatCentroid != null?Convert.ToDecimal(countyCentroid.LatCentroid) : 0; geoPoint.LongitudeMeasure = countyCentroid.LonCentroid != null?Convert.ToDecimal(countyCentroid.LonCentroid) : 0; geoPoint.HorizontalAccuracyMeasure = 100000; geoPoint.HorizontalCollectionMethodID = 104; geoPoint.HorizontalReferenceDatumID = 3; geoPoint.GeographicReferencePointID = 102; geoPoint.DataCollectionDate = DateTime.Now; } } } //if geopoint is still null setup a generic geopoint if (geoPoint == null) { geoPoint = new CERSFacilityGeoPoint(); geoPoint.LatitudeMeasure = 0; geoPoint.LongitudeMeasure = 0; geoPoint.HorizontalAccuracyMeasure = 100000; geoPoint.HorizontalCollectionMethodID = 104; geoPoint.HorizontalReferenceDatumID = 3; geoPoint.GeographicReferencePointID = 102; geoPoint.DataCollectionDate = DateTime.Now; } viewModel.CERSFacilityGeoPoint = geoPoint; return(View(viewModel)); }
protected virtual ActionResult Handle_BusinessActivitiesPost(int organizationId, int CERSID, int?fseID = null, FormCollection fc = null) { var viewModel = GetSingleEntityViewModel <BPActivity>(organizationId, CERSID, SubmittalElementType.FacilityInformation, ResourceType.BusinessActivities, fseID); var facility = Repository.Facilities.GetByID(CERSID); viewModel.AddressInformation = new AddressInformation(); viewModel.Facility = facility; CERSFacilityGeoPoint geoPoint = facility.CERSFacilityGeoPoint; //if geopoint is null create a generic one using the county centroid if (geoPoint == null) { CountyGISCentroid countyCentroid = Repository.DataModel.CountyGISCentroids.SingleOrDefault(p => p.CountyID == facility.CountyID); if (countyCentroid != null) { geoPoint = new CERSFacilityGeoPoint(); geoPoint.LatitudeMeasure = countyCentroid.LatCentroid != null?Convert.ToDecimal(countyCentroid.LatCentroid) : 0; geoPoint.LongitudeMeasure = countyCentroid.LonCentroid != null?Convert.ToDecimal(countyCentroid.LonCentroid) : 0; geoPoint.HorizontalAccuracyMeasure = 100000; geoPoint.HorizontalCollectionMethodID = 104; geoPoint.HorizontalReferenceDatumID = 3; geoPoint.GeographicReferencePointID = 102; geoPoint.DataCollectionDate = DateTime.Now; } } //if geopoint is still null setup a generic geopoint if (geoPoint == null) { geoPoint = new CERSFacilityGeoPoint(); geoPoint.LatitudeMeasure = 0; geoPoint.LongitudeMeasure = 0; geoPoint.HorizontalAccuracyMeasure = 100000; geoPoint.HorizontalCollectionMethodID = 104; geoPoint.HorizontalReferenceDatumID = 3; geoPoint.GeographicReferencePointID = 102; geoPoint.DataCollectionDate = DateTime.Now; } viewModel.CERSFacilityGeoPoint = geoPoint; var entity = viewModel.Entity; if (TryUpdateModel(entity, "Entity")) { if (ModelState.IsValid) { //Call the Business Logic Layer that will handle the validation/flag setting //and all the other junk that needs to occur to persist a form. Services.BusinessLogic.SubmittalElements.FacilityInformation.SaveActivitiesForm(viewModel); string routeName = GetDraftEditRouteName(SubmittalElementType.FacilityInformation, ResourceType.BusinessOwnerOperatorIdentification); return(RedirectToRoute(routeName, new { organizationID = organizationId, CERSID = CERSID, FSEID = viewModel.FacilitySubmittalElement.ID })); } } return(View(viewModel)); }
private static void Main(string[] args) { Console.WriteLine("CERS2 Address Washing Utility, v0.01"); Console.WriteLine("Initializing Data Registry..."); DataRegistry.Initialize(); int successCount = 0; int failureCount = 0; int lengthViolationsCount = 0; int skippedDueToMissingStreet = 0; bool lengthViolation = false; using (ICERSRepositoryManager repo = ServiceLocator.GetRepositoryManager()) { ICERSSystemServiceManager services = ServiceLocator.GetSystemServiceManager(repo); Console.WriteLine("Gathering Facilities..."); //DateTime washDate = DateTime.Now.Date.AddDays( -3 ); //DateTime washDate = Convert.ToDateTime( "12/31/2013" ); DateTime washDate = Convert.ToDateTime("6/30/2014"); //var facilities = repo.Facilities.Search(washDate: washDate).ToList(); var facilities = (from fac in repo.DataModel.Facilities where !fac.Voided && !fac.IsAddressWashed && fac.WashDate > washDate select fac).ToList(); //var facilities = ( from facil in repo.DataModel.Facilities where facil.Voided == false select facil ).ToList(); Console.WriteLine("Found " + facilities.Count() + " Facilities..."); foreach (var facility in facilities) { lengthViolation = false; Console.WriteLine("CERSID: " + facility.CERSID); Console.WriteLine("Facility Name: " + facility.Name); Console.Write("\tSource Address: "); Console.WriteLine(GetSourceAddress(facility)); if (!string.IsNullOrWhiteSpace(facility.Street)) { Console.Write("\tWashed Address:"); AddressInformation result = services.Geo.GetAddressInformation(facility.Street, facility.City, facility.ZipCode, facility.State); if (result != null) { CheckLength("WashedStreet", result.Street, 100, ref lengthViolation); CheckLength("WashedCity", result.City, 100, ref lengthViolation); CheckLength("WashedState", result.State, 2, ref lengthViolation); CheckLength("WashedZipCode", result.ZipCode, 10, ref lengthViolation); if (!lengthViolation) { int washConfidence; if (int.TryParse(result.MelissaAddressWashConfidence, out washConfidence) == false) { washConfidence = 0; } if (result.MelissaAddressWashSucceeded && Convert.ToInt32(washConfidence) > 0) { facility.IsAddressWashed = true; facility.WashDate = DateTime.Now; facility.WashedStreet = result.Street; facility.WashedStreetWithoutSuite = result.StreetWithoutSuiteNumber; facility.WashedSuite = result.Suite; facility.WashedCity = result.City; facility.WashedState = result.State; facility.WashedZipCode = result.ZipCode; facility.WashedStreetName = result.StreetName; facility.WashedStreetPostDirection = result.PostDirection; facility.WashedStreetPreDirection = result.PreDirection; facility.WashedStreetRange = result.Range; facility.WashedStreetSuffix = result.Suffix; facility.WashConfidence = washConfidence; facility.WashSourceID = (int)WashSource.Melissa; if (facility.CountyID == null) { facility.CountyID = result.CountyID; } CERSFacilityGeoPoint geoPoint = facility.CERSFacilityGeoPoint; if (geoPoint == null) { geoPoint = new CERSFacilityGeoPoint(); } //make sure the result coordinates are in range before saving them if ((result.Latitude >= 32 && result.Latitude < 43) && (result.Longitude >= -114 && result.Longitude < 125)) { geoPoint.CERSID = facility.CERSID; geoPoint.LatitudeMeasure = result.Latitude; geoPoint.LongitudeMeasure = result.Longitude; geoPoint.HorizontalAccuracyMeasure = result.HorizontalAccuracyMeasure; geoPoint.HorizontalCollectionMethodID = result.HorizontalCollectionMethodID; geoPoint.HorizontalReferenceDatumID = result.HorizontalReferenceDatumID; geoPoint.GeographicReferencePointID = result.GeographicReferencePointID; geoPoint.SetCommonFields(); repo.CERSFacilityGeoPoints.Save(geoPoint); } } else if (result.MelissaAddressWashSucceeded) { //Use the parsed street values to get a standardized address facility.IsAddressWashed = false; facility.WashDate = DateTime.Now; facility.WashSourceID = (int)WashSource.Melissa; facility.WashedStreet = result.Street; facility.WashedStreetWithoutSuite = result.StreetWithoutSuiteNumber; facility.WashedSuite = result.Suite; facility.WashedCity = result.City; facility.WashedState = result.State; facility.WashedZipCode = result.ZipCode; facility.WashedStreetName = result.StreetName; facility.WashedStreetPostDirection = null; facility.WashedStreetPreDirection = null; facility.WashedStreetRange = result.Range; facility.WashedStreetSuffix = result.Suffix; } Console.WriteLine(GetWashedAddress(result)); Console.WriteLine("\tUpdating Facility..."); repo.Facilities.Save(facility); Console.WriteLine("\tFacility Updated"); successCount++; } else { Console.WriteLine("\tFacility NOT Updated"); lengthViolationsCount++; } } else { Console.WriteLine("Unable to obtain washed address."); failureCount++; } } else { skippedDueToMissingStreet++; Console.WriteLine("\tSkipped Due to Missing Street!"); } } Console.WriteLine("Process Completed."); Console.WriteLine("Successfully Washed: " + successCount); Console.WriteLine("Failed To Wash: " + failureCount); Console.WriteLine("Length Violations (NOT Washed): " + lengthViolationsCount); Console.WriteLine("Skipped Due to Missing Street: " + skippedDueToMissingStreet); } Console.Write("Press enter to quit."); Console.ReadLine(); }