//returns aDataFile whenever called public DATA_FILE GetDataFile(decimal?id) { STNServiceCaller serviceCaller = STNServiceCaller.Instance; var request = new RestRequest(); request.Resource = "DataFiles/{entityId}"; request.RootElement = "DATA_FILE"; request.AddParameter("entityId", id, ParameterType.UrlSegment); DATA_FILE aDataFile = serviceCaller.Execute <DATA_FILE>(request); return(aDataFile); }
public void GetPeakSummaries(int id) { //Site Peaks STNServiceCaller serviceCaller = STNServiceCaller.Instance; var request = new RestRequest(); request.Resource = "/Sites/{siteId}/PeakSummaries"; request.RootElement = "ArrayOfPEAK_SUMMARY"; request.AddParameter("siteId", id, ParameterType.UrlSegment); List <PEAK_SUMMARY> SiteSummaries = serviceCaller.Execute <List <PEAK_SUMMARY> >(request); //HWM Peaks List <HWM> HWMSummaries = new List <HWM>(); List <DATA_FILE> DataFileSums = new List <DATA_FILE>(); //each set within loop List <PeakSummaryModel> allPeakSums = new List <PeakSummaryModel>(); //do the rest of this only if there are SiteSummaries if (SiteSummaries != null && SiteSummaries.Count >= 1) { //go through Site peaks and pull out which are hwm and/or datafile //add all pieces to PeakSummaryModel to pass to view (Elevation, Date, Time, Event, Description) foreach (PEAK_SUMMARY p in SiteSummaries) { PeakSummaryModel PeakSum = new PeakSummaryModel(); //populate peak pieces PeakSum.Link2Details = id; PeakSum.PeakStage = p.PEAK_STAGE;// string.Format("{0:n0}", p.PEAK_STAGE); PeakSum.PeakDate = ((DateTime)p.PEAK_DATE).ToString("M/d/yy"); PeakSum.PeakTime = ((DateTime)p.PEAK_DATE).ToString("t"); PeakSum.DateEstimated = p.IS_PEAK_ESTIMATED; PeakSum.TimeEstimated = p.IS_PEAK_TIME_ESTIMATED; //get hwm peaks request = new RestRequest(); request.Resource = "PeakSummaries/{peakSummaryId}/HWMs"; request.RootElement = "ArrayOfHWM"; request.AddParameter("peakSummaryId", p.PEAK_SUMMARY_ID, ParameterType.UrlSegment); HWMSummaries = serviceCaller.Execute <List <HWM> >(request); // should return list containing only 1 //if it is a HWM Peak, add Description to model and get Event if (HWMSummaries != null && HWMSummaries.Count >= 1) { HWM thisOne = HWMSummaries[0]; PeakSum.PeakHWMDesc = thisOne.HWM_LOCATIONDESCRIPTION; PeakSum.eventId = thisOne.EVENT_ID; //get event if (thisOne.EVENT_ID != null) { request = new RestRequest(); request.Resource = "/Events/{entityId}"; request.RootElement = "EVENT"; request.AddParameter("entityId", thisOne.EVENT_ID, ParameterType.UrlSegment); PeakSum.EventName = serviceCaller.Execute <EVENT>(request).EVENT_NAME; } } // get datafile peaks request = new RestRequest(); request.Resource = "/PeakSummaries/{peakSummaryId}/DataFiles"; request.RootElement = "ArrayOfDATA_FILE"; request.AddParameter("peakSummaryId", p.PEAK_SUMMARY_ID, ParameterType.UrlSegment); DataFileSums = serviceCaller.Execute <List <DATA_FILE> >(request); //if it is a datafile peak, get instrument for Description and event name if (DataFileSums != null && DataFileSums.Count >= 1) { DATA_FILE thisDF = DataFileSums[0]; //get event name and description via instrument request = new RestRequest(); request.Resource = "Instruments/{entityId}"; request.RootElement = "INSTRUMENT"; request.AddParameter("entityId", thisDF.INSTRUMENT_ID, ParameterType.UrlSegment); INSTRUMENT thisInstr = serviceCaller.Execute <INSTRUMENT>(request); PeakSum.PeakDataFileDesc = thisInstr.LOCATION_DESCRIPTION; PeakSum.eventId = thisInstr.EVENT_ID; request = new RestRequest(); request.Resource = "/Events/{entityId}"; request.RootElement = "EVENT"; request.AddParameter("entityId", thisInstr.EVENT_ID, ParameterType.UrlSegment); PeakSum.EventName = serviceCaller.Execute <EVENT>(request).EVENT_NAME; } allPeakSums.Add(PeakSum); } } ViewData["Peaks"] = allPeakSums; }
public ActionResult CreatePeakSumForm(PeakSummaryModel peak) { try { STNServiceCaller serviceCaller = STNServiceCaller.Instance; //build the PEAKSUMMARY object from Peak Model PEAK_SUMMARY newPeakSum = new PEAK_SUMMARY(); newPeakSum.MEMBER_ID = GetMember(User.Identity.Name).MEMBER_ID; string date = peak.PeakDate; // mm/dd/yyyy string time = peak.PeakTime; // hh:mm PM string datetime = date + " " + time; newPeakSum.PEAK_DATE = DateTime.Parse(datetime, System.Globalization.CultureInfo.InvariantCulture); newPeakSum.TIME_ZONE = peak.TimeZone; if (newPeakSum.TIME_ZONE != "UTC") { newPeakSum.TIME_ZONE = "UTC"; newPeakSum.PEAK_DATE = newPeakSum.PEAK_DATE.Value.ToUniversalTime(); } newPeakSum.IS_PEAK_ESTIMATED = peak.DateEstimated; newPeakSum.IS_PEAK_TIME_ESTIMATED = peak.TimeEstimated; newPeakSum.PEAK_STAGE = peak.PeakStage; newPeakSum.IS_PEAK_STAGE_ESTIMATED = peak.StageEstimated; newPeakSum.VDATUM_ID = peak.VdatumID; newPeakSum.HEIGHT_ABOVE_GND = peak.HeightAboveGround; newPeakSum.IS_HAG_ESTIMATED = peak.HAGEstimated; newPeakSum.PEAK_DISCHARGE = peak.PeakDischarge; newPeakSum.IS_PEAK_DISCHARGE_ESTIMATED = peak.DischargeEstimated; //post the new Peak Summary var request = new RestRequest(Method.POST); request.Resource = "/PeakSummaries"; request.RequestFormat = DataFormat.Xml; request.AddHeader("Content-Type", "application/xml"); STNWebSerializer serializer = new STNWebSerializer(); request.AddParameter("application/xml", serializer.Serialize <PEAK_SUMMARY>(newPeakSum), ParameterType.RequestBody); PEAK_SUMMARY createdPeakSum = serviceCaller.Execute <PEAK_SUMMARY>(request); //check to see if this is a Peak summary for a File or for a HWM //put peakSummary_id into File.PEakSummaryID or HWM.PeakSummaryID var FROM = peak.From; if (FROM == "File") { //use id to get the file, then datafile to assign peak summary id to field FILE aFile = GetFile(peak.objID); DATA_FILE thisDF = GetDataFile(aFile.DATA_FILE_ID); thisDF.PEAK_SUMMARY_ID = createdPeakSum.PEAK_SUMMARY_ID; //now PUT this back to the service request = new RestRequest(Method.POST); request.Resource = "DataFiles/{entityId}"; request.RequestFormat = DataFormat.Xml; request.AddParameter("entityId", thisDF.DATA_FILE_ID, ParameterType.UrlSegment); request.AddHeader("X-HTTP-Method-Override", "PUT"); request.AddHeader("Content-Type", "application/xml"); //Use extended serializer serializer = new STNWebSerializer(); request.AddParameter("application/xml", serializer.Serialize <DATA_FILE>(thisDF), ParameterType.RequestBody); serviceCaller.Execute <DATA_FILE>(request); //return to filedetails page using fileid to refresh return(RedirectToAction("FileDetails", "Files", new { id = peak.objID })); } else //(FROM == "HWM") { //use id to get HWM file to assign peak summary id to field request = new RestRequest(); request.Resource = "HWMs/{entityId}"; request.RootElement = "HWM"; request.AddParameter("entityId", peak.objID, ParameterType.UrlSegment); HWM aHWM = serviceCaller.Execute <HWM>(request); aHWM.PEAK_SUMMARY_ID = createdPeakSum.PEAK_SUMMARY_ID; //now PUT this back to the service request = new RestRequest(Method.POST); request.Resource = "HWMs/{entityId}"; request.RequestFormat = DataFormat.Xml; request.AddParameter("entityId", aHWM.HWM_ID, ParameterType.UrlSegment); request.AddHeader("X-HTTP-Method-Override", "PUT"); request.AddHeader("Content-Type", "application/xml"); //Use extended serializer serializer = new STNWebSerializer(); request.AddParameter("application/xml", serializer.Serialize <HWM>(aHWM), ParameterType.RequestBody); serviceCaller.Execute <HWM>(request); //return to hwmdetails page using hwmid to refresh return(RedirectToAction("Details", "HWMs", new { id = peak.objID })); } } catch (Exception e) { return(View("../Shared/Error", e)); } }
//GET approvalInfoBox/id public PartialViewResult ApprovalInfoBox(int id, string FROM) { try { STNServiceCaller serviceCaller = STNServiceCaller.Instance; var request = new RestRequest(); APPROVAL anApproval = new APPROVAL(); ViewData["FROM"] = FROM; ViewData["ID"] = id; //which approval are we interested in if (FROM == "HWM") { request.Resource = "HWMs/{entityId}"; request.RootElement = "HWM"; request.AddParameter("entityId", id, ParameterType.UrlSegment); HWM aHWM = serviceCaller.Execute <HWM>(request); request = new RestRequest(); request.Resource = "/Approvals/{entityId}"; request.RootElement = "APPROVAL"; request.AddParameter("entityId", aHWM.APPROVAL_ID, ParameterType.UrlSegment); anApproval = serviceCaller.Execute <APPROVAL>(request); } else if (FROM == "DF") { //if it's 0, there is an issue from the uploader not connecting the file to the datafile if (id != 0) { request = new RestRequest(); request.Resource = "DataFiles/{entityId}"; request.RootElement = "DATA_FILE"; request.AddParameter("entityId", id, ParameterType.UrlSegment); DATA_FILE aDataFile = serviceCaller.Execute <DATA_FILE>(request); request = new RestRequest(); request.Resource = "/Approvals/{entityId}"; request.RootElement = "APPROVAL"; request.AddParameter("entityId", aDataFile.APPROVAL_ID, ParameterType.UrlSegment); anApproval = serviceCaller.Execute <APPROVAL>(request); } else { anApproval = null; } } if (anApproval != null) { //Get Approving Member request = new RestRequest(); request.Resource = "Members/{entityId}"; request.RootElement = "MEMBER"; request.AddParameter("entityId", anApproval.MEMBER_ID, ParameterType.UrlSegment); string memUsername = serviceCaller.Execute <MEMBER>(request).USERNAME; ViewData["ApprovalSummary"] = memUsername; } //get member logged in's role request = new RestRequest(); request.Resource = "/Members?username={userName}"; request.RootElement = "MEMBER"; request.AddParameter("userName", User.Identity.Name, ParameterType.UrlSegment); MEMBER thisMember = serviceCaller.Execute <MEMBER>(request); if (thisMember.ROLE_ID == 1) { ViewData["Role"] = "Admin"; } if (thisMember.ROLE_ID == 2) { ViewData["Role"] = "Manager"; } if (thisMember.ROLE_ID == 3) { ViewData["Role"] = "Field"; } return(PartialView()); } catch (Exception e) { return(PartialView("../Shared/Error", e)); } }