示例#1
0
        //
        // GET: /Public/
        public ActionResult HWMInfoPage(int siteId, int hwmId)
        {
            try
            {
                STNServiceCaller serviceCaller = STNServiceCaller.Instance;
                var request = new RestRequest();

                #region SiteInfo
                //get site
                request.Resource    = "Sites/{entityId}";
                request.RootElement = "SITE";
                request.AddParameter("entityId", siteId, ParameterType.UrlSegment);
                SITE thisSite = serviceCaller.Execute <SITE>(request);
                ViewData["Site"] = thisSite;

                //get hdatum

                request             = new RestRequest();
                request.Resource    = "Sites/{siteId}/hDatum";
                request.RootElement = "HORIZONTAL_DATUMS";
                request.AddParameter("siteId", thisSite.SITE_ID, ParameterType.UrlSegment);
                ViewData["HDatum"] = serviceCaller.Execute <HORIZONTAL_DATUMS>(request).DATUM_NAME;
                #endregion SiteInfo

                //get Peaks
                GetPeakSummaries(siteId);

                #region HWMinfo
                //get hwm
                request             = new RestRequest();
                request.Resource    = "HWMs/{entityId}";
                request.RootElement = "HWM";
                request.AddParameter("entityId", hwmId, ParameterType.UrlSegment);
                HWM aHWM = serviceCaller.Execute <HWM>(request);
                ViewData["HWM"] = aHWM;

                //get event
                request             = new RestRequest();
                request.Resource    = "/HWMs/{hwmId}/Event";
                request.RootElement = "EVENT";
                request.AddParameter("hwmId", aHWM.HWM_ID, ParameterType.UrlSegment);
                EVENT hwmEvent = serviceCaller.Execute <EVENT>(request);
                if (hwmEvent != null)
                {
                    ViewData["HwmEvent"] = hwmEvent.EVENT_NAME;
                }

                //get HWM Type
                request             = new RestRequest();
                request.Resource    = "/HWMTypes/{entityId}";
                request.RootElement = "HWM_TYPES";
                request.AddParameter("entityId", aHWM.HWM_TYPE_ID, ParameterType.UrlSegment);
                HWM_TYPES thisHWMType = serviceCaller.Execute <HWM_TYPES>(request);
                if (thisHWMType != null)
                {
                    ViewData["HWMType"] = thisHWMType.HWM_TYPE;
                }

                //get HWM Quality
                request             = new RestRequest();
                request.Resource    = "/HWMQualities/{entityId}";
                request.RootElement = "HWM_QUALITIES";
                request.AddParameter("entityId", aHWM.HWM_QUALITY_ID, ParameterType.UrlSegment);
                HWM_QUALITIES thisHWMQual = serviceCaller.Execute <HWM_QUALITIES>(request);
                if (thisHWMQual != null)
                {
                    ViewData["HWMQaul"] = thisHWMQual.HWM_QUALITY;
                }

                if (aHWM.FLAG_TEAM_ID != null && aHWM.FLAG_TEAM_ID != 0)
                {
                    //get CollectionTeam
                    request             = new RestRequest();
                    request.Resource    = "/CollectionTeams/{entityId}";
                    request.RootElement = "COLLECT_TEAM";
                    request.AddParameter("entityId", aHWM.FLAG_TEAM_ID, ParameterType.UrlSegment);
                    ViewData["FlagTeam"] = serviceCaller.Execute <COLLECT_TEAM>(request).DESCRIPTION;
                }

                if (aHWM.SURVEY_TEAM_ID != null && aHWM.SURVEY_TEAM_ID != 0)
                {
                    //get CollectionTeam
                    request             = new RestRequest();
                    request.Resource    = "/CollectionTeams/{entityId}";
                    request.RootElement = "COLLECT_TEAM";
                    request.AddParameter("entityId", aHWM.SURVEY_TEAM_ID, ParameterType.UrlSegment);
                    ViewData["SurveyTeam"] = serviceCaller.Execute <COLLECT_TEAM>(request).DESCRIPTION;
                }

                //get collectionMethod
                request             = new RestRequest();
                request.Resource    = "/VerticalMethods/{entityId}";
                request.RootElement = "VERTICAL_COLLECT_METHODS";
                request.AddParameter("entityId", aHWM.VCOLLECT_METHOD_ID, ParameterType.UrlSegment);
                VERTICAL_COLLECT_METHODS thisVCollMtd = serviceCaller.Execute <VERTICAL_COLLECT_METHODS>(request);
                if (thisVCollMtd != null)
                {
                    ViewData["VCollectMethod"] = thisVCollMtd.VCOLLECT_METHOD;
                }

                //Get Vertical Datum
                request             = new RestRequest();
                request.Resource    = "/VerticalDatums/{entityId}";
                request.RootElement = "VERTICAL_DATUMS";
                request.AddParameter("entityId", aHWM.VDATUM_ID, ParameterType.UrlSegment);
                VERTICAL_DATUMS thisVD = serviceCaller.Execute <VERTICAL_DATUMS>(request);
                if (thisVD != null)
                {
                    ViewData["VerticalDatum"] = thisVD.DATUM_NAME;
                }

                //Get marker
                request             = new RestRequest();
                request.Resource    = "/Markers/{entityId}";
                request.RootElement = "MARKER";
                request.AddParameter("entityId", aHWM.MARKER_ID, ParameterType.UrlSegment);
                MARKER thisMarker = serviceCaller.Execute <MARKER>(request);
                if (thisMarker != null)
                {
                    ViewData["Marker"] = thisMarker.MARKER1;
                }

                //get Horizontal Collection Method
                request             = new RestRequest();
                request.Resource    = "/HorizontalMethods/{entityId}";
                request.RootElement = "HORIZONTAL_COLLECT_METHODS";
                request.AddParameter("entityId", aHWM.HCOLLECT_METHOD_ID, ParameterType.UrlSegment);
                HORIZONTAL_COLLECT_METHODS thisHColMethod = serviceCaller.Execute <HORIZONTAL_COLLECT_METHODS>(request);
                if (thisHColMethod != null)
                {
                    ViewData["HColMethod"] = thisHColMethod.HCOLLECT_METHOD;
                }
                #endregion HWMinfo

                #region FileInfo
                //now get all the files
                request             = new RestRequest();
                request.Resource    = "/HWMs/{hwmId}/Files/";
                request.RootElement = "ArrayOfFILE";
                request.AddParameter("hwmId", aHWM.HWM_ID, ParameterType.UrlSegment);
                List <FILE> allTheseFiles = serviceCaller.Execute <List <FILE> >(request);
                List <FILE> photoFiles    = allTheseFiles.Where(pf => pf.FILETYPE_ID == 1).ToList();

                List <PhotoFileCaption> PhotoCapFiles = new List <PhotoFileCaption>();
                foreach (FILE f in photoFiles)
                {
                    //build caption
                    PhotoFileCaption thisPhoto = new PhotoFileCaption();
                    thisPhoto.FileID          = f.FILE_ID.ToString();
                    thisPhoto.FileDesc        = f.DESCRIPTION;
                    thisPhoto.SiteDescription = thisSite.SITE_DESCRIPTION;
                    thisPhoto.County          = thisSite.COUNTY;
                    thisPhoto.State           = thisSite.STATE;
                    thisPhoto.Date            = f.FILE_DATE;

                    request             = new RestRequest();
                    request.Resource    = "/Sources/{entityId}";
                    request.RootElement = "SOURCE";
                    request.AddParameter("entityId", f.SOURCE_ID, ParameterType.UrlSegment);
                    SOURCE thisSource = serviceCaller.Execute <SOURCE>(request);
                    thisPhoto.MemberName = thisSource.SOURCE_NAME;

                    request             = new RestRequest();
                    request.Resource    = "/Agencies/{entityId}";
                    request.RootElement = "AGENCY";
                    request.AddParameter("entityId", thisSource.AGENCY_ID, ParameterType.UrlSegment);
                    thisPhoto.MemberAgency = serviceCaller.Execute <AGENCY>(request).AGENCY_NAME;
                    PhotoCapFiles.Add(thisPhoto);
                }

                ViewData["PhotoCaptionList"] = PhotoCapFiles;
                #endregion FileInof

                return(PartialView());
            }
            catch (Exception e)
            {
                return(PartialView("../Shared/Error", e));
            }
        }
示例#2
0
        public ActionResult SensorInfoPage(int siteId, int sensorId)
        {
            try
            {
                STNServiceCaller serviceCaller = STNServiceCaller.Instance;
                var request = new RestRequest();

                #region SiteInfo
                //get site
                request.Resource    = "Sites/{entityId}";
                request.RootElement = "SITE";
                request.AddParameter("entityId", siteId, ParameterType.UrlSegment);
                SITE thisSite = serviceCaller.Execute <SITE>(request);
                ViewData["Site"] = thisSite;

                //get hdatum
                request             = new RestRequest();
                request.Resource    = "/HorizontalDatums/{entityId}";
                request.RootElement = "HORIZONTAL_DATUMS";
                request.AddParameter("entityId", thisSite.HDATUM_ID, ParameterType.UrlSegment);
                ViewData["HDatum"] = serviceCaller.Execute <HORIZONTAL_DATUMS>(request).DATUM_NAME;
                #endregion SiteInfo

                //get peaks
                GetPeakSummaries(siteId);

                #region SensorInfo
                //get the sensor
                request             = new RestRequest();
                request.Resource    = "Instruments/{entityId}";
                request.RootElement = "INSTRUMENT";
                request.AddParameter("entityId", sensorId, ParameterType.UrlSegment);
                INSTRUMENT thisInstrument = serviceCaller.Execute <INSTRUMENT>(request);
                ViewData["Instrument"] = thisInstrument;

                //get event
                request             = new RestRequest();
                request.Resource    = "/Instruments/{instrumentId}/Event";
                request.RootElement = "EVENT";
                request.AddParameter("instrumentId", thisInstrument.INSTRUMENT_ID, ParameterType.UrlSegment);
                EVENT sensorEvent = serviceCaller.Execute <EVENT>(request);
                ViewData["sensorEvent"] = sensorEvent.EVENT_NAME;

                //pull from log the statuses
                request             = new RestRequest();
                request.Resource    = "/Instruments/{instrumentId}/InstrumentStatusLog";
                request.RootElement = "ArrayOfInstrumentStatus";
                request.AddParameter("instrumentId", sensorId, ParameterType.UrlSegment);
                List <INSTRUMENT_STATUS> InstrStatusList = serviceCaller.Execute <List <INSTRUMENT_STATUS> >(request);

                foreach (INSTRUMENT_STATUS IS in InstrStatusList)
                {
                    switch (Convert.ToInt32(IS.STATUS_TYPE_ID))
                    {
                    case 1:
                        ViewData["DeployedStatus"] = IS;
                        break;

                    case 2:
                        ViewData["RetrievedStatus"] = IS;
                        break;

                    default:
                        ViewData["LostStatus"] = IS;
                        break;
                    }
                }

                //get Sensor Type if one
                if (thisInstrument.SENSOR_TYPE_ID != null)
                {
                    request             = new RestRequest();
                    request.Resource    = "/SensorTypes/{entityId}";
                    request.RootElement = "SENSOR_TYPE";
                    request.AddParameter("entityId", thisInstrument.SENSOR_TYPE_ID, ParameterType.UrlSegment);
                    string aSensor = serviceCaller.Execute <SENSOR_TYPE>(request).SENSOR;
                    ViewData["SensorType"] = aSensor;
                }

                ////get deployment_type if one
                if (thisInstrument.DEPLOYMENT_TYPE_ID != null && thisInstrument.DEPLOYMENT_TYPE_ID != 0)
                {
                    request             = new RestRequest();
                    request.Resource    = "/DeploymentTypes/{entityId}";
                    request.RootElement = "DEPLOYMENT_TYPE";
                    request.AddParameter("entityId", thisInstrument.DEPLOYMENT_TYPE_ID, ParameterType.UrlSegment);
                    string aDepType = serviceCaller.Execute <DEPLOYMENT_TYPE>(request).METHOD;
                    ViewData["DeplType"] = aDepType;
                }
                //get condition
                if (thisInstrument.INST_COLLECTION_ID != null && thisInstrument.INST_COLLECTION_ID != 0)
                {
                    request             = new RestRequest();
                    request.Resource    = "/InstrCollectConditions/{entityId}";
                    request.RootElement = "INSTR_COLLECTION_CONDITIONS";
                    request.AddParameter("entityId", thisInstrument.INST_COLLECTION_ID, ParameterType.UrlSegment);
                    ViewData["Condition"] = serviceCaller.Execute <INSTR_COLLECTION_CONDITIONS>(request).CONDITION;
                }

                if (InstrStatusList.Count > 1)
                {
                    if (InstrStatusList[0].COLLECTION_TEAM_ID != 0 && InstrStatusList[0].COLLECTION_TEAM_ID != null)
                    {
                        request             = new RestRequest();
                        request.Resource    = "/CollectionTeams/{entityId}";
                        request.RootElement = "COLLECT_TEAM";
                        request.AddParameter("entityId", InstrStatusList[0].COLLECTION_TEAM_ID, ParameterType.UrlSegment);
                        COLLECT_TEAM ct = serviceCaller.Execute <COLLECT_TEAM>(request);
                        ViewData["depTeamName"] = ct.DESCRIPTION;
                    }
                    if (InstrStatusList[1].COLLECTION_TEAM_ID != 0 && InstrStatusList[1].COLLECTION_TEAM_ID != null)
                    {
                        request             = new RestRequest();
                        request.Resource    = "/CollectionTeams/{entityId}";
                        request.RootElement = "COLLECT_TEAM";
                        request.AddParameter("entityId", InstrStatusList[1].COLLECTION_TEAM_ID, ParameterType.UrlSegment);
                        COLLECT_TEAM ct = serviceCaller.Execute <COLLECT_TEAM>(request);
                        ViewData["retTeamName"] = ct.DESCRIPTION;
                    }
                }
                #endregion SensorInfo

                #region FileInfo
                request             = new RestRequest();
                request.Resource    = "/Instruments/{instrumentId}/Files";
                request.RootElement = "ArrayOfFILE";
                request.AddParameter("instrumentId", sensorId, ParameterType.UrlSegment);
                List <FILE> sensorFiles = serviceCaller.Execute <List <FILE> >(request);

                ViewData["dataFiles"] = sensorFiles.Where(df => df.FILETYPE_ID == 2).ToList();
                List <FILE> photoFiles = sensorFiles.Where(pf => pf.FILETYPE_ID == 1).ToList();

                //build photo caption
                List <PhotoFileCaption> photoCapFiles = new List <PhotoFileCaption>();
                foreach (FILE f in photoFiles)
                {
                    PhotoFileCaption thisPhoto = new PhotoFileCaption();
                    thisPhoto.FileID          = f.FILE_ID.ToString();
                    thisPhoto.FileDesc        = f.DESCRIPTION;
                    thisPhoto.SiteDescription = thisSite.SITE_DESCRIPTION;
                    thisPhoto.County          = thisSite.COUNTY;
                    thisPhoto.State           = thisSite.STATE;
                    thisPhoto.Date            = f.FILE_DATE;

                    request             = new RestRequest();
                    request.Resource    = "/Sources/{entityId}";
                    request.RootElement = "SOURCE";
                    request.AddParameter("entityId", f.SOURCE_ID, ParameterType.UrlSegment);
                    SOURCE thisSource = serviceCaller.Execute <SOURCE>(request);
                    thisPhoto.MemberName = thisSource.SOURCE_NAME;

                    request             = new RestRequest();
                    request.Resource    = "/Agencies/{entityId}";
                    request.RootElement = "AGENCY";
                    request.AddParameter("entityId", thisSource.AGENCY_ID, ParameterType.UrlSegment);
                    thisPhoto.MemberAgency = serviceCaller.Execute <AGENCY>(request).AGENCY_NAME;
                    photoCapFiles.Add(thisPhoto);
                }
                ViewData["PhotoCaptionList"] = photoCapFiles;

                #endregion FileInfo

                return(PartialView());
            }
            catch (Exception e)
            {
                return(PartialView("../Shared/Error", e));
            }
        }