Пример #1
0
        public ActionResult CopyPermissions(CopyRolesViewModel vm)
        {
            if (ModelState.IsValid && vm.FromRoleId != vm.ToRoleId)
            {
                try
                {
                    _AdminSetupService.CopyPermission(vm, User.Identity.Name);
                }
                catch (Exception ex)
                {
                    throw;
                }
                return(Redirect(System.Configuration.ConfigurationManager.AppSettings["MenuDomain"] + "/Menu/Module/"));
            }

            return(View(vm));
        }
Пример #2
0
        public void CopyPermission(CopyRolesViewModel vm, string UserName)
        {
            var RolesSites         = _rolesSiteService.GetRolesSiteList(vm.FromRoleId);
            var ExistingRolesSites = _rolesSiteService.GetRolesSiteList(vm.ToRoleId);

            var PendingToUpdate = from p in RolesSites
                                  join t in ExistingRolesSites on p.RolesSiteId equals t.RolesSiteId into table
                                  from left in table.DefaultIfEmpty()
                                  where left == null
                                  select p;

            foreach (var item in PendingToUpdate)
            {
                RolesSite site = new RolesSite();
                site.CreatedBy    = UserName;
                site.CreatedDate  = DateTime.Now;
                site.ModifiedBy   = UserName;
                site.ModifiedDate = DateTime.Now;
                site.RoleId       = vm.ToRoleId;
                site.SiteId       = item.SiteId;
                site.ObjectState  = Model.ObjectState.Added;
                _rolesSiteService.Create(site);
            }

            var RolesDivisions         = _rolesDivisionService.GetRolesDivisionList(vm.FromRoleId);
            var ExistingRolesDivisions = _rolesDivisionService.GetRolesDivisionList(vm.ToRoleId);

            var PendingDivisionsToUpdate = from p in RolesDivisions
                                           join t in ExistingRolesDivisions on p.RolesDivisionId equals t.RolesDivisionId into table
                                           from left in table.DefaultIfEmpty()
                                           where left == null
                                           select p;

            foreach (var item in PendingDivisionsToUpdate)
            {
                RolesDivision division = new RolesDivision();
                division.CreatedBy    = UserName;
                division.CreatedDate  = DateTime.Now;
                division.DivisionId   = item.DivisionId;
                division.ModifiedBy   = UserName;
                division.ModifiedDate = DateTime.Now;
                division.RoleId       = vm.ToRoleId;
                division.ObjectState  = Model.ObjectState.Added;
                _rolesDivisionService.Create(division);
            }

            var RolesMenus         = _rolesMenuService.GetRolesMenuList(vm.FromRoleId);
            var ExistingRolesMenus = _rolesMenuService.GetRolesMenuList(vm.ToRoleId);

            var PendingMenusToUpDate = from p in RolesMenus
                                       join t in ExistingRolesMenus on p.RolesMenuId equals t.RolesMenuId into table
                                       from left in table.DefaultIfEmpty()
                                       where left == null
                                       select p;

            foreach (var item in PendingMenusToUpDate)
            {
                RolesMenu menu = new RolesMenu();
                menu.CreatedBy            = UserName;
                menu.CreatedDate          = DateTime.Now;
                menu.FullHeaderPermission = item.FullHeaderPermission;
                menu.FullLinePermission   = item.FullLinePermission;
                menu.MenuId       = item.MenuId;
                menu.SiteId       = item.SiteId;
                menu.DivisionId   = item.DivisionId;
                menu.ModifiedBy   = UserName;
                menu.ModifiedDate = DateTime.Now;
                menu.RoleId       = vm.ToRoleId;
                menu.ObjectState  = Model.ObjectState.Added;
                _rolesMenuService.Create(menu);
            }

            var RolesActions         = _rolesControllerActionService.GetRolesControllerActionList(vm.FromRoleId);
            var ExistingRolesActions = _rolesControllerActionService.GetRolesControllerActionList(vm.ToRoleId);

            var PendingRolesActionsToUpdate = from p in RolesActions
                                              join t in ExistingRolesActions on p.RolesControllerActionId equals t.RolesControllerActionId into table
                                              from left in table.DefaultIfEmpty()
                                              where left == null
                                              select p;


            foreach (var item in PendingRolesActionsToUpdate)
            {
                RolesControllerAction Actions = new RolesControllerAction();
                Actions.ControllerActionId = item.ControllerActionId;
                Actions.CreatedBy          = UserName;
                Actions.CreatedDate        = DateTime.Now;
                Actions.ModifiedBy         = UserName;
                Actions.ModifiedDate       = DateTime.Now;
                Actions.RoleId             = vm.ToRoleId;
                Actions.ObjectState        = Model.ObjectState.Added;
                _rolesControllerActionService.Create(Actions);
            }

            _unitOfWork.Save();
        }
Пример #3
0
        public ActionResult CopyPermissions()
        {
            CopyRolesViewModel vm = new CopyRolesViewModel();

            return(View(vm));
        }
Пример #4
0
        public ActionResult CopyPermissions(CopyRolesViewModel vm)
        {
            if (ModelState.IsValid && vm.FromRoleId != vm.ToRoleId)
            {
                var RolesSites         = new RolesSiteService(_unitOfWork).GetRolesSiteList(vm.FromRoleId);
                var ExistingRolesSites = new RolesSiteService(_unitOfWork).GetRolesSiteList(vm.ToRoleId);

                var PendingToUpdate = from p in RolesSites
                                      join t in ExistingRolesSites on p.RolesSiteId equals t.RolesSiteId into table
                                      from left in table.DefaultIfEmpty()
                                      where left == null
                                      select p;

                foreach (var item in PendingToUpdate)
                {
                    RolesSite site = new RolesSite();
                    site.CreatedBy    = User.Identity.Name;
                    site.CreatedDate  = DateTime.Now;
                    site.ModifiedBy   = User.Identity.Name;
                    site.ModifiedDate = DateTime.Now;
                    site.RoleId       = vm.ToRoleId;
                    site.SiteId       = item.SiteId;
                    site.ObjectState  = Model.ObjectState.Added;
                    new RolesSiteService(_unitOfWork).Create(site);
                }

                var RolesDivisions         = new RolesDivisionService(_unitOfWork).GetRolesDivisionList(vm.FromRoleId);
                var ExistingRolesDivisions = new RolesDivisionService(_unitOfWork).GetRolesDivisionList(vm.ToRoleId);

                var PendingDivisionsToUpdate = from p in RolesDivisions
                                               join t in ExistingRolesDivisions on p.RolesDivisionId equals t.RolesDivisionId into table
                                               from left in table.DefaultIfEmpty()
                                               where left == null
                                               select p;

                foreach (var item in PendingDivisionsToUpdate)
                {
                    RolesDivision division = new RolesDivision();
                    division.CreatedBy    = User.Identity.Name;
                    division.CreatedDate  = DateTime.Now;
                    division.DivisionId   = item.DivisionId;
                    division.ModifiedBy   = User.Identity.Name;
                    division.ModifiedDate = DateTime.Now;
                    division.RoleId       = vm.ToRoleId;
                    division.ObjectState  = Model.ObjectState.Added;
                    new RolesDivisionService(_unitOfWork).Create(division);
                }

                var RolesMenus         = new RolesMenuService(_unitOfWork).GetRolesMenuList(vm.FromRoleId);
                var ExistingRolesMenus = new RolesMenuService(_unitOfWork).GetRolesMenuList(vm.ToRoleId);

                var PendingMenusToUpDate = from p in RolesMenus
                                           join t in ExistingRolesMenus on p.RolesMenuId equals t.RolesMenuId into table
                                           from left in table.DefaultIfEmpty()
                                           where left == null
                                           select p;

                foreach (var item in PendingMenusToUpDate)
                {
                    RolesMenu menu = new RolesMenu();
                    menu.CreatedBy            = User.Identity.Name;
                    menu.CreatedDate          = DateTime.Now;
                    menu.FullHeaderPermission = item.FullHeaderPermission;
                    menu.FullLinePermission   = item.FullLinePermission;
                    menu.MenuId       = item.MenuId;
                    menu.ModifiedBy   = User.Identity.Name;
                    menu.ModifiedDate = DateTime.Now;
                    menu.RoleId       = vm.ToRoleId;
                    menu.ObjectState  = Model.ObjectState.Added;
                    new RolesMenuService(_unitOfWork).Create(menu);
                }

                var RolesActions         = new RolesControllerActionService(_unitOfWork).GetRolesControllerActionList(vm.FromRoleId);
                var ExistingRolesActions = new RolesControllerActionService(_unitOfWork).GetRolesControllerActionList(vm.ToRoleId);

                var PendingRolesActionsToUpdate = from p in RolesActions
                                                  join t in ExistingRolesActions on p.RolesControllerActionId equals t.RolesControllerActionId into table
                                                  from left in table.DefaultIfEmpty()
                                                  where left == null
                                                  select p;


                foreach (var item in PendingRolesActionsToUpdate)
                {
                    RolesControllerAction Actions = new RolesControllerAction();
                    Actions.ControllerActionId = item.ControllerActionId;
                    Actions.CreatedBy          = User.Identity.Name;
                    Actions.CreatedDate        = DateTime.Now;
                    Actions.ModifiedBy         = User.Identity.Name;
                    Actions.ModifiedDate       = DateTime.Now;
                    Actions.RoleId             = vm.ToRoleId;
                    Actions.ObjectState        = Model.ObjectState.Added;
                    new RolesControllerActionService(_unitOfWork).Create(Actions);
                }

                _unitOfWork.Save();

                return(RedirectToAction("Module", "Menu"));
            }

            return(View(vm));
        }