Esempio n. 1
0
 public IActionResult AdminStatistics()
 {
     try
     {
         var    user   = HttpContext.User;
         bool   status = false;
         string message;
         if (user.HasClaim(c => c.Type == _tokenType))
         {
             if (user.Claims.FirstOrDefault(c => c.Type == _tokenType).Value == _login &&
                 user.Claims.FirstOrDefault(c => c.Type == _userType).Value == _admin)
             {
                 int userId = Convert.ToInt32(user.Claims.FirstOrDefault(c => c.Type == _userId).Value);
                 AdminStatisticsResponseModel data = _adminBusiness.AdminStatistics(userId);
                 if (data != null)
                 {
                     status  = true;
                     message = "Here Is the Statistics of Regular User.";
                     return(Ok(new { status, message, data }));
                 }
                 message = "No Data Present.";
                 return(Ok(new { status, message }));
             }
         }
         message = "Invalid Token.";
         return(BadRequest(new { status, message }));
     }
     catch (Exception e)
     {
         return(BadRequest(new { e.Message }));
     }
 }
Esempio n. 2
0
        /// <summary>
        /// It Gives the Statistics Of Basic and Advanced User.
        /// </summary>
        /// <param name="userId">User Id</param>
        /// <returns>Admin Statistics Model</returns>
        public AdminStatisticsResponseModel AdminStatistics(int userId)
        {
            try
            {
                UserDetails user = _applicationContext.UserDetails.
                                   FirstOrDefault(usr => usr.UserId == userId && usr.UserRole == _admin);

                if (user != null)
                {
                    AdminStatisticsResponseModel adminStatistics = new AdminStatisticsResponseModel
                    {
                        Basic = _applicationContext.UserDetails.
                                Where(usr => usr.UserRole == _regularUser && usr.Type == _basicUser).Count(),

                        Advanced = _applicationContext.UserDetails.
                                   Where(usr => usr.UserRole == _regularUser && usr.Type == _advanceUser).Count()
                    };

                    return(adminStatistics);
                }

                return(null);
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
        }