public ActionResult DoConcludeProject(int IDProject) { List <ActiveProject> activeProjects = new List <ActiveProject>(); Project project = null; using (ProjectToolsEntities db = new ProjectToolsEntities()) { project = db.Project.Where(l => l.IDProject == IDProject).FirstOrDefault(); activeProjects = db.ActiveProject.Where(l => l.IDProject == IDProject).ToList(); if (activeProjects.Count != 0) { project.IsFinish = true; project.EndDate = DateTime.Now; foreach (ActiveProject a in activeProjects) { a.EndActiveDate = DateTime.Now; } } else { ViewBag.MyErrorMessage = "You can't conclude the project because is not active!"; return(PartialView()); } } return(RedirectToAction("Index")); }
public ActionResult GetResources(int IDProject) { List <ProjectResource> projectResources = new List <ProjectResource>(); List <ActiveProject> activeProjects = new List <ActiveProject>(); List <ProjectResource> resources = new List <ProjectResource>(); ProjectModel projectModel = new ProjectModel(); using (ProjectToolsEntities db = new ProjectToolsEntities()) { activeProjects = db.ActiveProject.Where(l => l.IDProject == IDProject).ToList(); foreach (ActiveProject a in activeProjects) { projectResources = db.ActiveProject.Include(m => m.Person).Where(l => l.IDPerson == a.IDPerson).Select(l => new ProjectResource() { Resources = l.Person, Percentage = l.Percentage }).ToList(); resources.Add(projectResources[0]); } projectModel.ProjectResources = resources; return(Json(new { projectModel.ProjectResources }, JsonRequestBehavior.AllowGet)); } }
public ActionResult AddNewClient() { using (ProjectToolsEntities db = new ProjectToolsEntities()) { } return(PartialView()); }
public ActionResult ResourceProject(int IDPerson) { List <SingleProjectModel> projects = new List <SingleProjectModel>(); List <ActiveProject> activeProjects = new List <ActiveProject>(); List <SingleProjectModel> proj = new List <SingleProjectModel>(); using (ProjectToolsEntities db = new ProjectToolsEntities()) { activeProjects = db.ActiveProject.Where(l => l.IDPerson == IDPerson).ToList(); foreach (ActiveProject a in activeProjects) { projects = db.ActiveProject.Include(m => m.Project).Where(l => l.IDProject == a.IDProject).Select(l => new SingleProjectModel() { ProjectName = l.Project.ProjectName, StartDate = l.Project.StartDate, EndDate = l.Project.EndDate, IsFinish = l.Project.IsFinish, Percentage = l.Percentage, }).ToList(); proj.Add(projects[0]); } } return(PartialView(proj)); }
public ActionResult _JSONAddProject(Project data) { string EMail = ((System.Security.Claims.ClaimsIdentity)HttpContext.GetOwinContext().Authentication.User.Identity).Name; if (!string.IsNullOrEmpty(data.ProjectName) && data.StartDate.HasValue && data.EndDate.HasValue /*&& data.Client.IDClient != 0*/) { using (ProjectToolsEntities db = new ProjectToolsEntities()) { var d = db.Person.Where(l => l.EMail == EMail).FirstOrDefault(); var r = db.Person.Where(l => l.IDRole == 1).FirstOrDefault(); if (data != null) { data.IDPerson = d.IDPerson; } //data.IDPerson = 2; db.Project.Add(data); db.SaveChanges(); } return(Json(new { messaggio = $"Project{data.IDProject} add with success", flag = true })); } else { return(Json(new { messaggio = $"Dati mancanti o non validi", flag = false })); } }
public ActionResult ConcludeModal(int IDProject) { Project project = null; using (ProjectToolsEntities db = new ProjectToolsEntities()) { project = db.Project.Where(l => l.IDProject == IDProject).FirstOrDefault(); } return(PartialView(project)); }
public ActionResult Resources() { using (ProjectToolsEntities db = new ProjectToolsEntities()) { List <Person> resources = new List <Person>(); resources = db.Person.Where(x => x.IDRole == 0).ToList(); return(View(resources)); } }
public ActionResult EditClient(int IDClient) { Client client = null; using (ProjectToolsEntities db = new ProjectToolsEntities()) { client = db.Client.Where(l => l.IDClient == IDClient).FirstOrDefault(); } return(PartialView(client)); }
public ActionResult ClientProject(int IDClient) { List <Project> projectclient = null; using (ProjectToolsEntities db = new ProjectToolsEntities()) { projectclient = db.Project.Where(l => l.IDClient == IDClient).ToList(); } return(PartialView(projectclient)); }
public ActionResult DoDeleteProject(int IDProject) { Project project = null; using (ProjectToolsEntities db = new ProjectToolsEntities()) { project = db.Project.Where(l => l.IDProject == IDProject).FirstOrDefault(); db.Project.Remove(project); db.SaveChanges(); } return(RedirectToAction("Index")); }
public ActionResult AddProject() { List <Client> clientlist = new List <Client>(); using (ProjectToolsEntities db = new ProjectToolsEntities()) { ViewBag.RoleList = db.Client.Select(r => new SelectListItem() { Value = r.IDClient.ToString(), Text = r.Name }).ToList(); } return(PartialView()); }
public ActionResult DoDeleteClient(int IDClient) { Client client = null; using (ProjectToolsEntities db = new ProjectToolsEntities()) { client = db.Client.Where(l => l.IDClient == IDClient).FirstOrDefault(); db.Client.Remove(client); db.SaveChanges(); } return(RedirectToAction("Index")); }
// GET: ClientSection public ActionResult ClientSection() { using (ProjectToolsEntities db = new ProjectToolsEntities()) { List <Client> c = new List <Client>(); ProjectModel project = new ProjectModel(); c = db.Client.ToList(); project.Clients = c; return(View(project)); } }
public ActionResult AddResourceProject(data data) { ActiveResourceModel projectResource = new ActiveResourceModel(); Person resource = null; using (ProjectToolsEntities db = new ProjectToolsEntities()) { resource = db.Person.Where(l => l.IDPerson == data.IDPerson).FirstOrDefault(); } projectResource.ProjectResource = resource.IDPerson; projectResource.IDProject = data.IDProject; return(PartialView(projectResource)); }
public ActionResult ModifyForm(int IDProject) { Project project = null; List <Client> clientlist = new List <Client>(); using (ProjectToolsEntities db = new ProjectToolsEntities()) { project = db.Project.Where(l => l.IDProject == IDProject).FirstOrDefault(); ViewBag.RoleList = db.Client.Select(r => new SelectListItem() { Value = r.IDClient.ToString(), Text = r.Name }).ToList(); } return(PartialView(project)); }
public ActionResult DoModifyProject(Project data) { Project project = null; using (ProjectToolsEntities db = new ProjectToolsEntities()) { project = db.Project.Where(l => l.IDProject == data.IDProject).FirstOrDefault(); project.ProjectName = data.ProjectName; project.StartDate = data.StartDate; project.EndDate = data.EndDate; project.Client = data.Client; db.SaveChanges(); } return(RedirectToAction("Index")); }
public ActionResult DoEditClient(Client data) { Client client = null; using (ProjectToolsEntities db = new ProjectToolsEntities()) { client = db.Client.Where(l => l.IDClient == data.IDClient).FirstOrDefault(); client.Name = data.Name; client.Society = data.Society; client.NumberPhone = data.NumberPhone; client.Email = data.Email; client.PartitaIva = data.PartitaIva; db.SaveChanges(); } return(RedirectToAction("ClientSection")); }
public ActionResult DeleteModal(int IDProject) { Project project = null; List <ActiveProject> activeProject = new List <ActiveProject>(); using (ProjectToolsEntities db = new ProjectToolsEntities()) { project = db.Project.Where(l => l.IDProject == IDProject).FirstOrDefault(); activeProject = db.ActiveProject.Where(l => l.IDProject == project.IDProject).ToList(); if (activeProject.Count != 0) { TempData["msg"] = "<script>alert('There some active resources ih this project!');</script>"; } } return(PartialView(project)); }
public ActionResult DeleteClient(int IDClient) { Client client = null; List <ActiveProject> activeProject = new List <ActiveProject>(); using (ProjectToolsEntities db = new ProjectToolsEntities()) { client = db.Client.Where(l => l.IDClient == IDClient).FirstOrDefault(); activeProject = db.ActiveProject.Where(l => l.IDProject == client.IDClient).ToList(); if (activeProject.Count == 0) { TempData["msg"] = "<script>alert('This client have got some project active!');</script>"; } } return(PartialView(client)); }
public ActionResult DoAddResourceProject(ActiveResourceModel data) { List <ActiveProject> activeProject = new List <ActiveProject>(); ActiveProject projectToAdd = new ActiveProject(); bool flag = false; int percentage = 0; //ActiveResourceModel model = new ActiveResourceModel(); data model = new data(); using (ProjectToolsEntities db = new ProjectToolsEntities()) { activeProject = db.ActiveProject.ToList(); foreach (ActiveProject a in activeProject) { if (data.ProjectResource == a.IDPerson) { percentage += data.ActiveProject.Percentage; flag = true; } else if (data.ProjectResource != a.IDPerson && flag == false) { percentage += data.ActiveProject.Percentage; flag = true; } } if ((data.ActiveProject.Percentage + percentage) <= 100 && (data.ActiveProject.Percentage + percentage) > 0) { projectToAdd.IDPerson = data.ProjectResource; projectToAdd.IDProject = data.IDProject; projectToAdd.Percentage = data.ActiveProject.Percentage; projectToAdd.StartActiveDate = data.ActiveProject.StartActiveDate; projectToAdd.EndActiveDate = data.ActiveProject.EndActiveDate; db.ActiveProject.Add(projectToAdd); db.SaveChanges(); } else { model.IDPerson = data.ProjectResource; model.IDProject = data.IDProject; ViewBag.MyErrorMessage = "The percentage is bigger than 100%, insert another percentage!"; return(RedirectToAction("AddResourceProject", model)); } } model.IDPerson = data.ProjectResource; model.IDProject = data.IDProject; return(RedirectToAction("Index")); }
public ActionResult AssegnaProject(int IDPerson) { ProjectResourceView ProjectResource = new ProjectResourceView(); ActiveProjectModel projectResource = new ActiveProjectModel(); List <ActiveProject> activeProjects = new List <ActiveProject>(); List <Project> projects = new List <Project>(); bool flag = false; string EMail = ((System.Security.Claims.ClaimsIdentity)HttpContext.GetOwinContext().Authentication.User.Identity).Name; using (ProjectToolsEntities db = new ProjectToolsEntities()) { var d = db.Person.Where(l => l.EMail == EMail).FirstOrDefault(); activeProjects = db.ActiveProject.ToList(); foreach (ActiveProject a in activeProjects) { if (IDPerson == a.IDPerson) { projectResource.Percentage += a.Percentage; if (projectResource.Percentage >= 100) { TempData["msg"] = "<script>alert('Impossibile to add project at this resource because has got more 100% of percentage');</script>"; return(RedirectToAction("Resources")); } else { if (IDPerson == a.IDPerson) { flag = true; } if (flag == false) { ProjectResource.projects = db.Project.Where(m => m.IDPerson == d.IDPerson).ToList(); } //projects = db.Project.Where(m => m.IDPerson == IDPerson).ToList(); //ProjectResource.projects = db.Project.ToList(); } } } } return(PartialView(ProjectResource)); }
public ActionResult _JSONAddNewClient(Client data) { ; if (!string.IsNullOrEmpty(data.Name) && !string.IsNullOrEmpty(data.Society) && !string.IsNullOrEmpty(data.NumberPhone) && !string.IsNullOrEmpty(data.Email) && !string.IsNullOrEmpty(data.PartitaIva)) { using (ProjectToolsEntities db = new ProjectToolsEntities()) { db.Client.Add(data); db.SaveChanges(); } return(Json(new { messaggio = $"Client {data.IDClient} add with success", flag = true })); } else { return(Json(new { messaggio = $"Dati mancanti o non validi", flag = false })); } }
public ActionResult DoAddProjectResource(ActiveResourceModel data) { List <ActiveProject> activeProject = new List <ActiveProject>(); ActiveProject projectToAdd = new ActiveProject(); bool flag = false; int percentage = 0; using (ProjectToolsEntities db = new ProjectToolsEntities()) { activeProject = db.ActiveProject.ToList(); foreach (ActiveProject a in activeProject) { if (data.ProjectResource == a.IDPerson) { percentage += a.Percentage; flag = true; } else if (data.ProjectResource != a.IDPerson && flag == false) { percentage += a.Percentage; } } if ((data.ActiveProject.Percentage + percentage) <= 100) { projectToAdd.IDPerson = data.ProjectResource; projectToAdd.IDProject = data.IDProject; projectToAdd.Percentage = data.ActiveProject.Percentage; projectToAdd.StartActiveDate = data.ActiveProject.StartActiveDate; projectToAdd.EndActiveDate = data.ActiveProject.EndActiveDate; db.ActiveProject.Add(projectToAdd); db.SaveChanges(); } else { TempData["msg"] = "<script>alert('The percentage is bigger than 100%!');</script>"; } } return(RedirectToAction("AssegnaProject")); }
public ActionResult AddProjectResource(int IDPerson, int IDProject) { ActiveProjectModel projectResource = new ActiveProjectModel(); ActiveProject activeProject = null; Project projects = null; using (ProjectToolsEntities db = new ProjectToolsEntities()) { activeProject = db.ActiveProject.Where(l => l.IDPerson == l.IDPerson).FirstOrDefault(); if (projectResource.Percentage >= 100) { TempData["msg"] = "<script>alert('Impossibile to add project at this resource');</script>"; } else { projects = db.Project.Where(l => l.IDPerson == IDPerson).FirstOrDefault(); projectResource.ProjectResource = projects.IDProject; projectResource.IDPerson = IDPerson; } } return(PartialView(projectResource)); }
public ActionResult SeeResource(int IDProject) { List <ActiveProject> activeProjects = new List <ActiveProject>(); ProjectResource projectResources = new ProjectResource(); List <ProjectResource> freeResources = new List <ProjectResource>(); List <Person> resources = new List <Person>(); AddResourceModel model = new AddResourceModel(); List <int> resourcesPercentage = new List <int>(); List <int> arrayResource = new List <int>(); bool flag = false; bool activeFlag = false; bool projectFlag = false; using (ProjectToolsEntities db = new ProjectToolsEntities()) { resources = db.Person.Where(l => l.IDRole == 0).ToList(); activeProjects = db.ActiveProject.ToList(); //controllo della percentuale delle risorse, se sono libere, se percentuale < 100 //se rispettano i controlli vengono visualizzate foreach (Person p in resources) { activeFlag = false; projectResources = new ProjectResource(); projectFlag = false; foreach (ActiveProject z in activeProjects) { if (p.IDPerson == z.IDPerson) { activeFlag = true; } if (z.IDProject == IDProject && p.IDPerson == z.IDPerson) { projectFlag = true; } } foreach (ActiveProject a in activeProjects) { foreach (int i in arrayResource) { if (p.IDPerson == i && a.IDPerson == p.IDPerson) { if ((a.Percentage + resourcesPercentage[i]) == 100) { flag = true; freeResources.Remove(freeResources[i]); } else { flag = false; } } } if (p.IDPerson == a.IDPerson && flag == false && projectFlag == false) { projectResources.Percentage = a.Percentage; if (projectResources.Percentage < 100) { projectResources.Resources = p; projectResources.Percentage = a.Percentage; activeFlag = true; resourcesPercentage.Add(projectResources.Percentage); arrayResource.Add(projectResources.Resources.IDPerson); freeResources.Add(projectResources); } } else if (p.IDPerson != a.IDPerson && activeFlag == false && projectFlag == false) { projectResources.Resources = p; projectResources.Percentage = 0; resourcesPercentage.Add(projectResources.Percentage); arrayResource.Add(projectResources.Resources.IDPerson); freeResources.Add(projectResources); activeFlag = true; } } } } model.ProjectResources = freeResources; model.IDProject = IDProject; return(PartialView(model)); }
public ActionResult Index() { //int IDPerson = 0; //int IDRole = 1; string EMail = ((System.Security.Claims.ClaimsIdentity)HttpContext.GetOwinContext().Authentication.User.Identity).Name; ProjectModel projectModel = new ProjectModel(); List <SingleProjectModel> Projects = new List <SingleProjectModel>(); List <ProjectResource> resources = new List <ProjectResource>(); Person ManagerName = null; Client ClientName = null; List <ActiveProject> activeProjects = new List <ActiveProject>(); List <Project> projects = new List <Project>(); List <SingleProjectModel> Proj = new List <SingleProjectModel>(); List <ProjectResource> projectResources = new List <ProjectResource>(); using (ProjectToolsEntities db = new ProjectToolsEntities()) { //var d = db.Person.Where(l => l.EMail == EMail).FirstOrDefault(); //if (d != null) //{ // Session["IDPerson"] = d.IDPerson; // IDRole = d.IDRole; // IDPerson = d.IDPerson; //} projects = db.Project.ToList(); foreach (Project a in projects) { ClientName = db.Client.Where(l => l.IDClient == a.IDClient).FirstOrDefault(); ManagerName = db.Person.Where(l => l.IDPerson == a.IDPerson).FirstOrDefault(); Projects = db.Project.Where(l => l.IDProject == a.IDProject).Select(l => new SingleProjectModel() { ProjectName = l.ProjectName, StartDate = l.StartDate, EndDate = l.EndDate, IsFinish = l.IsFinish, ClientName = ClientName.Name, ManagerName = ManagerName.Name, IDProject = l.IDProject, }).ToList(); Proj.Add(Projects[0]); } activeProjects = db.ActiveProject.ToList(); foreach (ActiveProject a in activeProjects) { //projects = db.Project.Where(l => l.IDProject == a.IDProject).FirstOrDefault(); //ClientName = db.Client.Where(l => l.IDClient == projects.IDClient).FirstOrDefault(); //ManagerName = db.Person.Where(l => l.IDPerson == projects.IDPerson).FirstOrDefault(); //Projects = db.ActiveProject.Include(m => m.Project).Where(l => l.IDProject == a.IDProject).Select(l => new SingleProjectModel() //{ // ProjectName = l.Project.ProjectName, // StartDate = l.Project.StartDate, // EndDate = l.Project.EndDate, // IsFinish = l.Project.IsFinish, // ClientName = ClientName.Name, // ManagerName = ManagerName.Name, // IDProject = l.IDProject, //}).ToList(); //projectResources = db.ActiveProject.Include(m => m.Person).Where(l => l.IDPerson == a.IDPerson).Select(l => new ProjectResource() //{ // Serial = l.Person.Serial, // Name = l.Person.Name, // Surname = l.Person.Surname, // Email = l.Person.EMail, // Percentage = l.Percentage //}).ToList(); //resources.Add(projectResources[0]); } } projectModel.Projects = Proj; //projectModel.ProjectResources = resources; return(View(projectModel)); }