public ActionResult Assign(int id, [Bind(Include = "RequestId, DistributorUsername, EmployeeId")] AssignEmployeeToRequestBindingModel model)
        {
            if (!ModelState.IsValid)
            {
                return(RedirectToAction("Assign", new { id = id }));
            }

            this._service.AssignEmployeeToRequest(model);
            return(RedirectToAction("All"));
        }
        public void AssignEmployeeToRequest(AssignEmployeeToRequestBindingModel model)
        {
            Request  request     = this.Context.Requests.Find(model.RequestId);
            Employee owner       = this.Context.Employees.Find(model.EmployeeId);
            Admin    distributor = this.Context.Admins.FirstOrDefault(a => a.ApplicationUser.UserName == model.DistributorUsername);

            var requestExists     = request != null;
            var ownerExists       = owner != null;
            var distributorExists = distributor != null;
            var allEntitiesExist  = requestExists && ownerExists && distributorExists;

            if (allEntitiesExist)
            {
                request.Owner       = owner;
                request.Distributor = distributor;
                request.Status      = RequestStatus.Pending;

                this.Context.SaveChanges();
            }
        }