コード例 #1
0
        public async Task <ActionResult> EditCustomers(string id)
        {
            var model = new ClientRoleEditModel();

            using (var custLogic = Kernel.Get <ICustomerLogic>())
                using (var userLogic = Kernel.Get <IUserLogic>())
                {
                    var clients = await custLogic.ToListAsync();

                    Dictionary <string, string> result = new Dictionary <string, string>();
                    foreach (var c in clients.OrderBy(x => x.CompanyName))
                    {
                        if (!result.ContainsKey(c.CustomerId.ToString()))
                        {
                            result.Add(c.CustomerId.ToString(), c.CompanyName);
                        }
                    }

                    model.UserId    = id;
                    model.Customers = new SelectList(result, "Key", "Value", null);

                    var assignedCustomers = await userLogic.GetCustomersLinkedByUser(id);

                    var assignedDivisions = await userLogic.GetDivisionsForUser(id);

                    model.SelectedCustomers = assignedCustomers;
                    model.SelectedDivisions = assignedDivisions;

                    var current = await userLogic.GetUserCustomers(id);

                    model.CurrentRoles = current.ToArray();

                    var user = await userLogic.GetUserInfo(id);

                    ViewBag.UserName = user.UserName;

                    model.Divisions = new SelectList(new Dictionary <int, string>(), "Key", "Value", null);

                    return(View("CustomerRoleEdit", model));
                }
        }
コード例 #2
0
        public async Task <ActionResult> EditCustomers(ClientRoleEditModel model)
        {
            using (var userLogic = Kernel.Get <IUserLogic>())
            {
                Dictionary <int, string> roles = new Dictionary <int, string>();

                foreach (var y in model.NewRoles)
                {
                    roles.Add(y.DivisionId, y.CustomerId);
                }
                var result = await userLogic.AssignDivisions(model.UserId, roles);

                if (result)
                {
                    //return RedirectToAction("Index", "Admin");
                    return(Json(new { url = "Index/Admin" }));
                }
                return(Json(new { url = "/" }));
                //return View("CustomerRoleEdit", model);
            }
        }