public object Post([FromBody] ProjectOrganismModel newProjectOrganism) { var organism = (Organism)HttpContext.Current.Items["organism"]; var project = (Project)HttpContext.Current.Items["project"]; var groups = (List <Group>)HttpContext.Current.Items["groups"]; var user = (User)HttpContext.Current.Items["user"]; var actionProposed = (ActionProposed)HttpContext.Current.Items["actionProposed"]; var condition = (Condition)HttpContext.Current.Items["condition"]; var daps = (int[])HttpContext.Current.Items["daps"]; if (string.IsNullOrEmpty(newProjectOrganism.Commentary)) { newProjectOrganism.Commentary = ""; } TreeDetail treeDetail = new TreeDetailBLL().CreateProject_Organism( newProjectOrganism.Varas, newProjectOrganism.Height, newProjectOrganism.Lat, newProjectOrganism.Lon, daps, // newProjectOrganism.Daps.Select(instance => instance.DapValue).ToArray(), actionProposed, condition, newProjectOrganism.Commentary, organism, project, user); return(ProjectOrganismModel.GetProjectOrganismObject(treeDetail)); }
public List <object> GetAll([FromBody] ProjectIDModel projectIDModel) { var project = (Project)HttpContext.Current.Items["project"]; //var groups = (List<Group>)HttpContext.Current.Items["groups"]; return(new Project_OrganismsBLL().GetAllProject_Organisms() .Where(instance => instance.ProjectID == project.ProjectID) .OrderByDescending(instance3 => instance3.TreeDetails.First().Number) .Select(instance2 => ProjectOrganismModel.GetProjectOrganismObject(instance2)) .ToList()); }
public override bool IsValid(object value) { int projectOrganismID; Project_Organisms projectOrganism; if (value == null) { this.ErrorMessage = "ProjectOrganismID es requerido"; return(false); } if (!int.TryParse(value.ToString(), out projectOrganismID)) { this.ErrorMessage = "ProjectOrganismID contiene formato inválido"; return(false); } if (projectOrganismID == 0 || ProjectOrganismModel.IsNull(new Project_OrganismsBLL().GetProject_OrganismsByProjectOrganismID((int)value), out projectOrganism)) { this.ErrorMessage = "ProjectOrganismID no existente"; return(false); } User user = UserModel.GetUserFromAuthorizationHeader(HttpContext.Current.Request); List <Group> groups = UserModel.GetUserGroups(user); if (ProjectOrganismModel.IsAuthorized(projectOrganism, groups)) { this.ErrorMessage = "ProjectID no autorizado"; } HttpContext.Current.Items["projectOrganism"] = projectOrganism; HttpContext.Current.Items["groups"] = groups; HttpContext.Current.Items["user"] = user; return(true); }
public object Update([FromBody] ProjectOrganismUpdateModel projectOrganismUpdate) { //var projectOrganism = (Project_Organisms)HttpContext.Current.Items["projectOrganism"]; //var organism = (Organism)HttpContext.Current.Items["organism"]; var project = (Project)HttpContext.Current.Items["project"]; var groups = (List <Group>)HttpContext.Current.Items["groups"]; var user = (User)HttpContext.Current.Items["user"]; //var actionProposed = (ActionProposed)HttpContext.Current.Items["actionProposed"]; //var condition = (Condition)HttpContext.Current.Items["condition"]; var daps = (int[])HttpContext.Current.Items["daps"]; var varas = (int)HttpContext.Current.Items["varas"]; using (DatabaseContext _DatabaseContext = new DatabaseContext()) { // TreeDetail Project_Organisms projectOrganism = _DatabaseContext.Project_Organisms.First(instance => instance.ProjectOrganismID == projectOrganismUpdate.ProjectOrganismID); TreeDetail treeDetail = _DatabaseContext.TreeDetails.First(instance => instance.ProjectOrganismID == projectOrganism.ProjectOrganismID); //Delete existing Daps foreach (Dap item in _DatabaseContext.Daps.Where(instance => instance.TreeDetailsID == treeDetail.TreeDetailsID).ToList()) { _DatabaseContext.Daps.DeleteObject(item); } if (varas != 0) // Is Cepa { treeDetail.Dap = 0; treeDetail.Dap_Counter = 0; } else if (daps.Length == 1) // Solo un Dap { treeDetail.Dap = Convert.ToDecimal(daps[0]); treeDetail.Dap_Counter = 1; Dap dapObj = new Dap(); dapObj.DapValue = Convert.ToDecimal(daps[0]); dapObj.TreeDetailsID = treeDetail.TreeDetailsID; dapObj.TreeDetailReference.EntityKey = treeDetail.EntityKey; _DatabaseContext.Daps.AddObject(dapObj); } else // 1 o Mas de un Dap { double dapTotal = 0; foreach (int dap in daps) { dapTotal += Convert.ToDouble(dap); } //dapTotal;// new DapBLL().GetDap(0); treeDetail.Dap = Convert.ToDecimal(Math.Round(Math.Sqrt(Math.Pow(dapTotal, 2D) / Convert.ToDouble(daps.Count())) * 100) / 100); treeDetail.Dap_Counter = Convert.ToInt32(daps.Length); //new DapBLL().GetDapCount(0); foreach (int dapInt in daps) { Dap dap = new Dap(); dap.DapValue = Convert.ToDecimal(dapInt); dap.TreeDetailsID = treeDetail.TreeDetailsID; dap.TreeDetailReference.EntityKey = treeDetail.EntityKey; _DatabaseContext.Daps.AddObject(dap); } } //treeDetail.Dap = new DapBLL().GetDap(treeDetail.TreeDetailsID); //Convert.ToDecimal(hfDap.Value); //treeDetail.Dap_Counter = new DapBLL().GetDapCount(treeDetail.TreeDetailsID); //Convert.ToInt32(hfDapCounter.Value); treeDetail.Varas = projectOrganismUpdate.Varas; treeDetail.Height = Convert.ToDecimal(projectOrganismUpdate.Height); int CommentaryMaxLength = Convert.ToInt32(ConfigurationManager.AppSettings["CommentaryMaxLength"]); if (!string.IsNullOrEmpty(projectOrganismUpdate.Commentary)) { treeDetail.Commentary = (projectOrganismUpdate.Commentary.Length > CommentaryMaxLength) ? projectOrganismUpdate.Commentary.Substring(0, CommentaryMaxLength) : projectOrganismUpdate.Commentary; } else { treeDetail.Commentary = ""; } treeDetail.Number = Convert.ToInt32(treeDetail.Number); treeDetail.Lat = Convert.ToDecimal(projectOrganismUpdate.Lat); treeDetail.Lon = Convert.ToDecimal(projectOrganismUpdate.Lon); Dictionary <string, object> anewpointObj = Utility.ConvertToStatePlane(projectOrganismUpdate.Lon.ToString(), projectOrganismUpdate.Lat.ToString(), @"~/Javascript/"); treeDetail.X = Convert.ToDecimal(anewpointObj["x"]); treeDetail.Y = Convert.ToDecimal(anewpointObj["y"]); // treeDetail.EditedDate = DateTime.Now; treeDetail.EditorUserID = user.UserID; //projectOrganism Organism organism = new OrganismBLL().GetOrganismByOrganismID(Convert.ToInt32(projectOrganismUpdate.OrganismID)); projectOrganism.OrganismID = organism.OrganismID; projectOrganism.OrganismReference.EntityKey = organism.EntityKey; //ActionProposed ActionProposed actionProposed = new ActionProposedBLL().GetActionProposedByActionProposedID(Convert.ToInt32(projectOrganismUpdate.ActionProposedID)); treeDetail.ActionProposedID = actionProposed.ActionProposedID; treeDetail.ActionProposedReference.EntityKey = actionProposed.EntityKey; //Condition Condition condition = new ConditionBLL().GetConditionByConditionID(Convert.ToInt32(projectOrganismUpdate.ConditionID)); treeDetail.ConditionID = condition.ConditionID; treeDetail.ConditionReference.EntityKey = condition.EntityKey; treeDetail.ProjectOrganismID = (int)projectOrganismUpdate.ProjectOrganismID; treeDetail.Project_OrganismsReference.EntityKey = projectOrganism.EntityKey; _DatabaseContext.SaveChanges(); // } var updatedProjectOrganism = new Project_OrganismsBLL().GetProject_OrganismsByProjectOrganismID((int)projectOrganismUpdate.ProjectOrganismID); return(ProjectOrganismModel.GetProjectOrganismObject(updatedProjectOrganism)); }
public object Get([FromBody] ProjectOrganismIDModel projectOrganismIDModel) { Project_Organisms projectOrganism = (Project_Organisms)HttpContext.Current.Items["projectOrganism"]; return(ProjectOrganismModel.GetProjectOrganismObject(projectOrganism)); }