Esempio n. 1
0
        public override void EnsureSeeded()
        {
            /* add seeding data here */

            if (!Countries.Any())
            {
                var data = SeedDataReader.ReadCsv <Country>(typeof(ProjectContext).Assembly);
                AddRange(data);
            }

            if (!ProjectManagers.Any())
            {
                var data = SeedDataReader.ReadCsv <ProjectManager>(typeof(ProjectContext).Assembly);
                AddRange(data);
            }

            SaveChanges();
        }
Esempio n. 2
0
        public ActionResult AddUserToCurrentProject(int id)
        {
            var user = dbContext.Users.Where(u => u.ID == id).FirstOrDefault();

            // Change project manager
            if (user.UserRole == Enums.UserRole.ProjectManager)
            {
                var projectManagers = dbContext.ProjectManagers;
                var pm = projectManagers
                         .Where(p => p.ProjectID == ApplicationState.Instance.CurrentProjectID).FirstOrDefault();
                if (pm != null)
                {
                    pm.ProjectManagerID = id;
                }
                else
                {
                    pm = new ProjectManagers
                    {
                        ProjectID        = ApplicationState.Instance.CurrentProjectID,
                        ProjectManagerID = id
                    };
                    dbContext.ProjectManagers.Add(pm);
                }
                dbContext.SaveChanges();
            }
            // ad user as member to project
            else
            {
                var projectMembers = new ProjectMembers
                {
                    ProjectID       = ApplicationState.Instance.CurrentProjectID,
                    ProjectMemberID = id
                };
                dbContext.ProjectMembers.Add(projectMembers);
                dbContext.SaveChanges();
            }
            return(Redirect(Request.UrlReferrer.ToString()));
        }
        private void UpdateDb(ProjectViewModel projectVM)
        {
            // Update Project Table
            var project = new Project
            {
                Name = projectVM.Name
            };

            db.Projects.Add(project);
            db.SaveChanges();

            //Update ProjectManagers Table
            var projectManager = new ProjectManagers
            {
                ProjectID        = project.ID,
                ProjectManagerID = projectVM.ProjectManagerID
            };

            db.ProjectManagers.Add(projectManager);

            //Update ProjectMembers Table
            foreach (var user in projectVM.TeamMembers)
            {
                var projectMember = new ProjectMembers
                {
                    ProjectID       = project.ID,
                    ProjectMemberID = user.ID
                };
                db.ProjectMembers.Add(projectMember);
            }
            db.SaveChanges();

            // Update ActivityMonitor Table
            var activityDescription = ApplicationState.Instance.CurrentUser.FirstName + " " + ApplicationState.Instance.CurrentUser.LastName + " created project.";

            new ActivityMonitorUpdater(db).WriteToDatabase(activityDescription, project.ID);
        }