Beispiel #1
0
        public override bool IsUserInRole(string username, string roleName)
        {
            bool outputResult = false;

            using (HelpDeskContext db = new HelpDeskContext())
            {
                try
                {
                    User user = (from u in db.Users
                                 where u.Login == username
                                 select u).FirstOrDefault();
                    if (user != null)
                    {
                        Role userRole = db.Roles.Find(user.RoleId);

                        if (userRole != null && userRole.Name == roleName)
                        {
                            outputResult = true;
                        }
                    }
                }
                catch
                {
                    outputResult = false;
                }
            }
            return(outputResult);
        }
Beispiel #2
0
        public override string[] GetRolesForUser(string login)
        {
            string[] role = { };
            using (HelpDeskContext db = new HelpDeskContext())
            {
                try
                {
                    User user = (from u in db.Users
                                 where u.Login == login
                                 select u).FirstOrDefault();
                    if (user != null)
                    {
                        Role userRole = db.Roles.Find(user.RoleId);

                        if (userRole != null)
                        {
                            role = new[] { userRole.Name };
                        }
                    }
                }
                catch
                {
                    role = new string[] { };
                }
            }
            return(role);
        }
        public async Task <string> CheckAvaibality(CheckAvaibalityDto data)
        {
            var query1 = await HelpDeskContext.Set <UserModel>()
                         .Where(u => u.UserName.Equals(data.UserName.ToString())).FirstOrDefaultAsync();

            var query2 = await HelpDeskContext.Set <UserModel>()
                         .Where(u => u.Email.Equals(data.Email.ToString())).FirstOrDefaultAsync();

            if (query1 == null && query2 == null)
            {
                return("NotTakenYet");
            }
            else if (query1 != null)
            {
                return("UserName_AlreadyTaken");
            }
            else if (query2 != null)
            {
                return("Email_AlreadyTaken");
            }
            else
            {
                return("Both_AlreadyTaken");
            }
        }
Beispiel #4
0
        public async Task <DashboardMainInformationDto> GetDashboardDetails(string userType)
        {
            var details = new DashboardMainInformationDto();

            if (userType == "HelpDesk")
            {
                var totalTickets = await HelpDeskContext.Set <TicketModel>().CountAsync();

                var OpenTickets = await HelpDeskContext.Set <TicketModel>()
                                  .Where(t => t.TktStatus.Equals("Open".ToString())).CountAsync();

                var closedTickets = await HelpDeskContext.Set <TicketModel>()
                                    .Where(t => t.TktStatus.Equals("Closed".ToString())).CountAsync();

                var inprogressTickets = await HelpDeskContext.Set <TicketModel>()
                                        .Where(t => t.TktStatus.Equals("in-progress".ToString())).CountAsync();

                var companies = await HelpDeskContext.Set <CompanyModel>()
                                .ToListAsync();

                foreach (var company in companies)
                {
                    var companyDetails = new DashboardCompanyDetailsDto();

                    var totalTicketsInCompany = await HelpDeskContext.Set <TicketModel>()
                                                .Where(t => t.CompanyId.Equals(company.CompanyId)).CountAsync();

                    var OpenTicketsInCompany = await HelpDeskContext.Set <TicketModel>()
                                               .Where(t => t.CompanyId.Equals(company.CompanyId) & t.TktStatus.Equals("Open".ToString())).CountAsync();

                    var closedTicketsInCompany = await HelpDeskContext.Set <TicketModel>()
                                                 .Where(t => t.CompanyId.Equals(company.CompanyId) & t.TktStatus.Equals("Closed".ToString())).CountAsync();

                    var inprogressTicketsInCompany = await HelpDeskContext.Set <TicketModel>()
                                                     .Where(t => t.CompanyId.Equals(company.CompanyId) & t.TktStatus.Equals("in-progress".ToString())).CountAsync();

                    companyDetails.CompanyId              = company.CompanyId;
                    companyDetails.CompanyName            = company.CompanyName;
                    companyDetails.TotalTickets           = totalTicketsInCompany;
                    companyDetails.TotalOpenTickets       = OpenTicketsInCompany;
                    companyDetails.TotalClosedTickets     = closedTicketsInCompany;
                    companyDetails.TotalInprogressTickets = inprogressTicketsInCompany;

                    details.DashboardCompanyDeatails.Add(companyDetails);
                }



                details.ClosedTickets = closedTickets;
                details.OpenTickets   = OpenTickets;
                details.TotalTickets  = totalTickets;
                details.inprogress    = inprogressTickets;

                return(details);
            }

            return(null);
        }
Beispiel #5
0
 public AccountController(ApplicationUserManager userManager, IMailer mailer)
 {
     UserManager             = userManager;
     this._context           = new HelpDeskContext();
     this._roleManger        = new RoleManager <IdentityRole>(new RoleStore <IdentityRole>(new HelpDeskContext()));
     this._mailer            = mailer;
     this._allRoles          = this._roleManger.Roles.ToList().Select(x => new RoleViewModel(x)).AsQueryable();
     this._reservedUsernames = ConfigurationHelper.GetAppSetting("dts.helpdesk.ReservedUsernames").ToString().Split(',');
 }
Beispiel #6
0
 public HomeController(ICategoryRepository categoryRepository, IArticleRepository articleRepository, HelpDeskContext context, SignInManager <ApplicationUsers> signInManager,
                       UserManager <ApplicationUsers> userManager)
 {
     _signInManager          = signInManager;
     _userManager            = userManager;
     this.articleRepository  = articleRepository;
     this.context            = context;
     this.categoryRepository = categoryRepository;
 }
 public async Task <UserModel> LoginUser(UserLoginDto userLoginDto)
 {
     return(await HelpDeskContext.Set <UserModel>()
            .Where(
                u => u.UserName.Equals(userLoginDto.UserNameOrEmail.ToString()) ||
                u.Email.Equals(userLoginDto.UserNameOrEmail.ToString())
                )
            .Where(u => u.PasswordHash.Equals(userLoginDto.Password.ToString()))
            .FirstOrDefaultAsync());
 }
Beispiel #8
0
        public static void CreateTicketUserAssociation(int userId, int ticketId, HelpDeskContext _context)
        {
            // Create association with user
            UserTickets userTicket = new UserTickets()
            {
                UserId   = userId,
                TicketId = ticketId
            };

            // Add association to database
            _context.UserTickets.Add(userTicket);
            _context.SaveChanges();
        }
Beispiel #9
0
        public static async Task <Ticket> CreateTicket(TicketForm ticketForm, HelpDeskContext _context)
        {
            // Create ticket
            Ticket ticket = new Ticket()
            {
                Title   = ticketForm.Title,
                Content = ticketForm.Content
            };

            // Add ticket to database
            _context.Ticket.Add(ticket);
            await _context.SaveChangesAsync();

            return(ticket);
        }
Beispiel #10
0
        public static async Task <User> CreateUser(Login login, string hashedPw, HelpDeskContext _context)
        {
            // Create new user object
            User newUser = new User()
            {
                UserName     = login.UserName,
                UserPassword = hashedPw
            };

            // Add user to database
            _context.User.Add(newUser);
            await _context.SaveChangesAsync();

            return(newUser);
        }
Beispiel #11
0
 private bool CreateUser(string login, string password, string salt)
 {
     using (HelpDeskContext db = new HelpDeskContext())
     {
         try
         {
             db.Users.Add(new User {
                 Login = login, Password = password, RoleId = 2, Salt = salt
             });
             db.SaveChanges();
         }
         catch
         {
             return(false);
         }
     }
     return(true);
 }
Beispiel #12
0
        public static Identity CreateIdentity(int userId, HelpDeskContext _context)
        {
            var userRoles = _context.UserRoles;

            // Query for identity
            var res =
                from u in userRoles
                where u.UserId == userId
                select new Identity()
            {
                UserName = u.User.UserName,
                RoleName = u.Role.Title,
                UserId   = userId,
                RoleId   = u.RoleId
            };

            return(res.FirstOrDefault());
        }
Beispiel #13
0
        public static TicketInfo GetTicketFromId(int ticketId, HelpDeskContext _context)
        {
            // Declare database entities
            var userTickets = _context.UserTickets;

            // Query for a ticket Info response
            var res =
                from u in userTickets
                where u.TicketId == ticketId
                select new TicketInfo()
            {
                TicketId  = u.TicketId,
                OwnerId   = u.User.Id,
                Title     = u.Ticket.Title,
                Content   = u.Ticket.Content,
                OwnerName = u.User.UserName
            };

            return(res.FirstOrDefault());
        }
Beispiel #14
0
        public static async Task <IEnumerable <TicketInfo> > GetAllTickets(HelpDeskContext _context)
        {
            // Declare database entities
            var tickets     = _context.Ticket;
            var userTickets = _context.UserTickets;
            var users       = _context.User;

            // Query for all tickets
            var res =
                from u in userTickets
                select new TicketInfo()
            {
                TicketId  = u.TicketId,
                OwnerId   = u.UserId,
                Title     = u.Ticket.Title,
                Content   = u.Ticket.Content,
                OwnerName = u.User.UserName
            };

            return(await res.ToListAsync());
        }
Beispiel #15
0
        public static IEnumerable <TicketInfo> GetTicketsFromUser(int userId, HelpDeskContext _context)
        {
            // Declare database entities
            var tickets     = _context.Ticket;
            var userTickets = _context.UserTickets;
            var users       = _context.User;

            // Query for tickets from user
            var res =
                from u in userTickets
                where u.UserId == userId
                select new TicketInfo()
            {
                TicketId  = u.TicketId,
                OwnerId   = u.User.Id,
                Title     = u.Ticket.Title,
                Content   = u.Ticket.Content,
                OwnerName = u.User.UserName
            };

            return(res.ToList());
        }
Beispiel #16
0
        private bool ValidateUser(string login, string password)
        {
            bool isValid = false;

            using (HelpDeskContext db = new HelpDeskContext())
            {
                try
                {
                    User user = db.Users.FirstOrDefault(u => u.Login == login);

                    if (user != null && password == null || user != null && Equals(user.Password, GenerateHash(password, user.Salt)))
                    {
                        isValid = true;
                    }
                }
                catch
                {
                    isValid = false;
                }
            }
            return(isValid);
        }
        public async Task <List <CompanyDto> > GetCompanyDetails(IEnumerable <CompanyModel> companies)
        {
            var companiesDetails = new List <CompanyDto>();

            if (companies != null)
            {
                foreach (var company in companies)
                {
                    var companyDetails = new CompanyDto();
                    companyDetails.CompanyId   = company.CompanyId;
                    companyDetails.CompanyName = company.CompanyName;

                    var numOfTickets = await HelpDeskContext.Set <TicketModel>()
                                       .Where(t => t.CompanyId.Equals(company.CompanyId.ToString())).CountAsync();

                    var numOfProducts = await HelpDeskContext.Set <ProductModel>()
                                        .Where(t => t.CompanyId.Equals(company.CompanyId.ToString())).CountAsync();

                    var numOfCategories = await HelpDeskContext.Set <CategoryModel>()
                                          .Where(t => t.CompanyId.Equals(company.CompanyId.ToString())).CountAsync();

                    var numOfModules = await HelpDeskContext.Set <ModuleModel>()
                                       .Where(t => t.CompanyId.Equals(company.CompanyId.ToString())).CountAsync();

                    var numOfBrands = await HelpDeskContext.Set <CompanyBrandModel>()
                                      .Where(t => t.CompanyId.Equals(company.CompanyId.ToString())).CountAsync();

                    companyDetails.NumOfTickets    = numOfTickets;
                    companyDetails.NumOfCategories = numOfCategories;
                    companyDetails.NumOfModules    = numOfModules;
                    companyDetails.NumOfBrands     = numOfBrands;
                    companyDetails.NumOfProducts   = numOfProducts;

                    companiesDetails.Add(companyDetails);
                }
                return(companiesDetails);
            }
            return(null);
        }
Beispiel #18
0
 public TicketTimelineRepository(HelpDeskContext helpDeskContext) : base(helpDeskContext)
 {
 }
 public RepositoryHelpDeskContext(HelpDeskContext context)
 {
     _context = context;
 }
 public CategoryRepository(HelpDeskContext dbcontext) : base(dbcontext)
 {
     this._dbcontext = dbcontext;
 }
 public UserTicketsController(HelpDeskContext context)
 {
     _context = context;
 }
Beispiel #22
0
 public ArticleRepository(HelpDeskContext helpDeskContext) : base(helpDeskContext)
 {
 }
Beispiel #23
0
 public BetRepository(HelpDeskContext context) : base(context)
 {
 }
Beispiel #24
0
 public ProductRepository(HelpDeskContext helpDeskContext) : base(helpDeskContext)
 {
 }
 public BrandRepository(HelpDeskContext helpDeskContext) : base(helpDeskContext)
 {
 }
Beispiel #26
0
 public IssueRepository(HelpDeskContext dbContext) : base(dbContext)
 {
 }
 public ResTemplateRepository(HelpDeskContext helpDeskContext) : base(helpDeskContext)
 {
 }
Beispiel #28
0
 public UserRolesController(HelpDeskContext context)
 {
     _context = context;
 }
 public NotificationRepository(HelpDeskContext helpDeskContext) : base(helpDeskContext)
 {
 }
Beispiel #30
0
 public UsuarioService(IUsuarioRepository usuarioRepository, HelpDeskContext context, IBetService betService)
 {
     _usuarioRepository = usuarioRepository;
     _context           = context;
     _betService        = betService;
 }