public JsonResult GetAllUsers(int?cycleId = null, int?department = null, string territories = null)
        {
            List <AppUser> users;

            if (!string.IsNullOrEmpty(territories))
            {
                List <int> territoryIds = new List <int>();
                try
                {
                    territoryIds = territories.Split(", ", StringSplitOptions.RemoveEmptyEntries)
                                   .Select(int.Parse)
                                   .ToList();
                    users = UnitOfWork.AppUserBL.GetActiveUsersByTerritoriesAndDepartment(territoryIds, department);
                }
                catch
                {
                    users = new List <AppUser>();
                }
            }
            else
            {
                users = UnitOfWork.AppUserBL.Find(u => department == null || u.DepartmentId == department);
            }

            var selectedUsers = UnitOfWork.CycleUserBL.Find(c => c.CycleId == cycleId)
                                .Select(c => c.UserId)
                                .ToList();

            var model = new CycleDto_Users
            {
                Items = users.Select(u => new UserItem
                {
                    Id           = u.Id,
                    Name         = u.FullName,
                    JobTitleId   = u.JobTitleId ?? 0,
                    JobTitleName = u.JobTitle?.Name,
                    DepartmentId = u.DepartmentId ?? 0,
                    Selected     = selectedUsers.Contains(u.Id),
                }).ToList()
            };

            return(Json(model));
        }
        public JsonResult GetAllUsersCycleDetails(int?cycleId = null)
        {
            var selectedUsers = UnitOfWork.CycleUserBL.GetUserCycle(c => c.CycleId == cycleId)
                                .ToList();

            var model = new CycleDto_Users
            {
                Items = selectedUsers.Select(u => new UserItem
                {
                    Id           = u.Id,
                    Name         = u.Name,
                    JobTitleId   = u.JobTitleId,
                    JobTitleName = u.JobTitleName,
                    DepartmentId = u.DepartmentId,
                }).ToList()
            };

            return(Json(model));
        }