Ejemplo n.º 1
0
        public ActionResult CreateProjectForClient(int?id)
        {
            var user = User.Identity.GetUserId();

            if (id == null)
            {
                ViewBag.error = id == null;
                return(View());
            }
            var company = db.CompanyEmployees.SingleOrDefault(x => x.EmployeeId == user);
            var client  = db.Clients.SingleOrDefault(x => x.CompanyId == company.CompanyId && x.ClientId == id);
            CreateProjectForClientModel model = new CreateProjectForClientModel();
            var isClient = db.Clients.Any(x => x.ClientId == id);

            if (isClient == false)
            {
                ViewBag.project = true;
                return(View());
            }
            model.ClientId = client.ClientId;
            return(View(model));
        }
Ejemplo n.º 2
0
        public ActionResult CreateProjectForClient(CreateProjectForClientModel project)
        {
            var user    = User.Identity.GetUserId();
            var company = db.CompanyEmployees.SingleOrDefault(x => x.EmployeeId == user);

            if (db.Clients.Any(x => x.ClientId == project.ClientId && x.BillByProject == true) && project.BillRate == null)
            {
                ModelState.AddModelError("bill", "You opted to bill on a per project basis.So you must fill out the bill rate.");
                return(View(project));
            }
            if (ModelState.IsValid)
            {
                var newProj = db.Projects.Add(new Project {
                    CompanyId = company.CompanyId, ProjectName = project.ProjectName, IsCompleted = false, IsDeleted = false, IsForClient = true
                });
                db.ClientProjects.Add(new ClientProject {
                    ClientId = project.ClientId, ProjectId = newProj.ProjectId, BillRate = project.BillRate
                });
                db.SaveChanges();
                return(RedirectToAction("ClientProjectIndex"));
            }
            return(View(project));
        }