Exemple #1
0
        /// <summary>
        /// This method get all information about specific project from GetProjectUpdates on Data Access layer based on the projectID.
        /// The URL defined on route config look like ProjectList/GetprojectUpdates/{projectID}.
        /// The json format is clear from the foreach loop and the controller for angular can be found on Project-List.js.
        /// </summary>
        /// <param name="projectID">Guid ProjectID as string</param>
        /// <returns>Returns a string includes list of ProjectUpdates for the specified Project</returns>
        public string GetprojectUpdates(string projectID)
        {
            //var ProjectUpdateKeys = DataAccsess.GetUpdatesForKey(projectID);
            //string result = JsonConvert.SerializeObject(ProjectUpdateKeys);
            //return result;
            var passedStatusUpdateList = new List <StatusUpdatesModel.ProjectUpdate>();

            try
            {
                if (this.Session["username"].ToString() != null && DataAccsess.IsUserAuthorized(this.Session["username"].ToString()))
                {
                    var statusData = DataAccsess.GetProjectUpdates(projectID);


                    foreach (StatusUpdatesModel.ProjectUpdate passedStatusUpdate in statusData)
                    {
                        StatusUpdatesModel.ProjectUpdate tempStatusUpdate = new StatusUpdatesModel.ProjectUpdate();
                        tempStatusUpdate.Phase     = passedStatusUpdate.Phase;
                        tempStatusUpdate.PhaseID   = passedStatusUpdate.PhaseID;
                        tempStatusUpdate.ProjectID = passedStatusUpdate.ProjectID;
                        tempStatusUpdate.Date      = passedStatusUpdate.Date;
                        //tempStatusUpdate.Project = passedStatusUpdate.Project;
                        tempStatusUpdate.Subject       = passedStatusUpdate.Subject;
                        tempStatusUpdate.Phase         = passedStatusUpdate.Phase;
                        tempStatusUpdate.Environment   = passedStatusUpdate.Environment;
                        tempStatusUpdate.Description   = passedStatusUpdate.Description;
                        tempStatusUpdate.Body          = passedStatusUpdate.Body;
                        tempStatusUpdate.Project       = passedStatusUpdate.Project;
                        tempStatusUpdate.StatusUpdates = passedStatusUpdate.StatusUpdates;
                        //tempStatusUpdate.Vertical = passedStatusUpdate.Vertical;

                        tempStatusUpdate.ProjectUpdateID = passedStatusUpdate.ProjectUpdateID;
                        passedStatusUpdateList.Add(tempStatusUpdate);
                    }
                }
            }
            catch (Exception e)
            {
                string emptyException = JsonConvert.SerializeObject("");
                return(emptyException);
            }
            JsonSerializerSettings settings = new JsonSerializerSettings();

            settings.PreserveReferencesHandling = PreserveReferencesHandling.Objects;
            string result = JsonConvert.SerializeObject(passedStatusUpdateList, settings);

            return(result);
        }
        /// <summary>
        /// This method get all information about specific project from GetProjectUpdates on Data Access layer based on the projectID.
        /// The URL defined on route config look like ProjectList/GetprojectUpdates/{projectID}. 
        /// The json format is clear from the foreach loop and the controller for angular can be found on Project-List.js.
        /// </summary>
        /// <param name="projectID">Guid ProjectID as string</param>
        /// <returns>Returns a string includes list of ProjectUpdates for the specified Project</returns>
        public string GetprojectUpdates(string projectID)
        {
            //var ProjectUpdateKeys = DataAccsess.GetUpdatesForKey(projectID);
            //string result = JsonConvert.SerializeObject(ProjectUpdateKeys);
            //return result;
            var passedStatusUpdateList = new List<StatusUpdatesModel.ProjectUpdate>();
            try
            {
                if (this.Session["username"].ToString() != null && DataAccsess.IsUserAuthorized(this.Session["username"].ToString()))
                {
                    var statusData = DataAccsess.GetProjectUpdates(projectID);
                    

                    foreach (StatusUpdatesModel.ProjectUpdate passedStatusUpdate in statusData)
                    {
                        StatusUpdatesModel.ProjectUpdate tempStatusUpdate = new StatusUpdatesModel.ProjectUpdate();
                        tempStatusUpdate.Phase = passedStatusUpdate.Phase;
                        tempStatusUpdate.PhaseID = passedStatusUpdate.PhaseID;
                        tempStatusUpdate.ProjectID = passedStatusUpdate.ProjectID;
                        tempStatusUpdate.Date = passedStatusUpdate.Date;
                        //tempStatusUpdate.Project = passedStatusUpdate.Project;
                        tempStatusUpdate.Subject = passedStatusUpdate.Subject;
                        tempStatusUpdate.Phase = passedStatusUpdate.Phase;
                        tempStatusUpdate.Environment = passedStatusUpdate.Environment;
                        tempStatusUpdate.Description = passedStatusUpdate.Description;
                        tempStatusUpdate.Body = passedStatusUpdate.Body;
                        tempStatusUpdate.Project = passedStatusUpdate.Project;
                        tempStatusUpdate.StatusUpdates = passedStatusUpdate.StatusUpdates;
                        //tempStatusUpdate.Vertical = passedStatusUpdate.Vertical;
                        
                        tempStatusUpdate.ProjectUpdateID = passedStatusUpdate.ProjectUpdateID;
                        passedStatusUpdateList.Add(tempStatusUpdate);

                    }
                }
            }
            catch (Exception e)
            {
                string emptyException = JsonConvert.SerializeObject("");
                return emptyException;
            }
            JsonSerializerSettings settings = new JsonSerializerSettings();
            settings.PreserveReferencesHandling = PreserveReferencesHandling.Objects;
            string result = JsonConvert.SerializeObject(passedStatusUpdateList, settings);
            return result;

        }