public StatisticalEngineDetails GetStatisticalEngineDetails(string name, string version) { try { var projectParam = ProjectParameters.GetProjectParameters(projectDBManager, name, version); DataTable dtStatEngineDetails = projectDBManager.GetDataTable("SELECT schema, template,uischema,defaultformdata FROM project.get_enginedetails(@name, @version)", CommandType.Text, projectParam.ToArray()); var statisticalEngineDetails = new StatisticalEngineDetails(); if (dtStatEngineDetails.Rows.Count > 0) { DataRow row = dtStatEngineDetails.Rows[0]; statisticalEngineDetails.Schema = JsonConvert.DeserializeObject(row["Schema"].ToString()); statisticalEngineDetails.Template = JsonConvert.DeserializeObject(row["Template"].ToString()); statisticalEngineDetails.UiSchema = JsonConvert.DeserializeObject(row["UiSchema"].ToString()); statisticalEngineDetails.DefaultFormData = JsonConvert.DeserializeObject(row["DefaultFormData"].ToString()); } return(statisticalEngineDetails); } catch (Exception getStatisticalEngineDatailsException) { throw new Exception(ExceptionMessages.GET_STAT_ENGINE_DETAILS_DATA_ACCESS_ERROR_MSG, getStatisticalEngineDatailsException); } }
public IEnumerable <Project> GetProjects(int resourceID, int projectID = 0, bool listAllProjects = true) { try { var projectParam = ProjectParameters.GetProjectParameters(projectDBManager, projectID, resourceID, listAllProjects); DataTable dtProject = projectDBManager.GetDataTable("SELECT * FROM project.get_project_list(@project_id,@resource_id,@list_all_projects)", CommandType.Text, projectParam.ToArray()); List <Project> projects = dtProject.AsEnumerable() .Select(x => new Project() { ID = x.Field <int>("projectid"), Name = x.Field <string>("projectname"), ProtocolID = x.Field <string>("protocolid"), Phase = x.Field <Int16>("phase"), CreatedBy = x.Field <string>("createdby"), ResourceID = x.Field <int>("resourceid"), Program = new Program { ID = x.Field <int>("programid"), Name = x.Field <string>("programname") }, Status = new Status { ID = x.Field <Int16>("statusid"), Value = x.Field <string>("projectstatus") }, Indication = new Indication { ID = x.Field <Int16>("indicationid"), Value = x.Field <string>("indicationname") }, ProjectTimeUnit = new ProjectTimeUnit { ID = x.Field <Int16>("timeunitid"), Value = x.Field <string>("timeunit") }, Currency = new Currency { ID = x.Field <Int16>("currencyid"), Value = x.Field <string>("currencyname") }, LastModified = x.Field <DateTime>("modifiedtimestamp"), CreatedDate = x.Field <DateTime>("createdtimestamp"), }).ToList(); return(projects); } catch (Exception getProjectsException) { throw new Exception(ExceptionMessages.GET_PROJECTS_DATA_ACCESS_ERROR_MSG, getProjectsException); } }