public IHttpActionResult GenMemberPhoneNumbers(String userId) { var id = Guid.Empty; if (Guid.TryParse(userId, out id)) { using (var ctx = new RT2020Entities()) { var staff = ctx.Staff.Where(x => x.StaffId == id && x.Status > 0).SingleOrDefault(); if (staff != null) { BackgroundJob.Enqueue(() => SuperUserHelper.GenMemberPhoneNumbers(id)); //SuperUserHelper.GenMemberPhoneNumbers(id); log.Info(String.Format("[bot, SuperUser, GenMemberPhoneNumbers] \r\nHangfire findished the Job\r\nUser = {0}", String.IsNullOrEmpty(staff.FullName) ? staff.StaffCode : staff.FullName)); return(StatusCode(HttpStatusCode.Accepted)); // 202 or use: return new StatusCodeResult(202); } } } log.Info(String.Format("[bot, SuperUser, GenMemberPhoneNumbers] \r\nError found before submitting to Hangfire\r\nUser Id = {0}", userId)); return(BadRequest()); }
public static LoginResponse Login(LoginRequest request) { request.mobile_number = Common.GetStandardMobileNumber(request.mobile_number); LoginResponse response = new LoginResponse(); SuperAdmin superuser = null; string hashPassword = TokenGenerator.GetHashedPassword(request.password, 49); try { using (SuperUserDao dao = new SuperUserDao()) { superuser = dao.FindByMobileNumber(request.mobile_number); if (superuser == null) { MakeNouserResponse(response); return(response); } if (hashPassword == superuser.Password) { response.code = 1; response.has_resource = 0; //admin. = request.app_id; superuser.AppToken = request.push_token; superuser.AppID = request.app_id; superuser.LastLogin = DateTime.Now; string authToken = TokenGenerator.GenerateToken(superuser.FullName, superuser.Password, request.mobile_number); superuser.AccToken = authToken; dao.Update(superuser); response.code = 0; SuperUserLoginDto dto = new SuperUserLoginDto(); SuperUserHelper.CopyFromEntity(dto, superuser); SuperUserLoginDetailsDto dtoDetails = new SuperUserLoginDetailsDto(); SuperUserHelper.CopyFromEntity(dtoDetails, superuser); response.user_login = dto; response.super_user_details = dtoDetails; response.has_resource = 1; response.code = 0; response.message = MessagesSource.GetMessage("login.ok"); return(response); } else { response.code = 1; response.has_resource = 0; response.message = MessagesSource.GetMessage("login.fail"); } } } catch (Exception ex) { response.MakeExceptionResponse(ex); } return(response); }
public IHttpActionResult GetCurrentUserLiteData() { try { UserLiteDTO data = new UserLiteDTO(); List <Claim> claims = ClaimsPrincipal.Current.Claims.ToList(); if (claims.Count < 1) { return(Content(HttpStatusCode.Unauthorized, "Access is denied due to invalid credentials")); } data.UserName = claims.Where(x => x.Type == ClaimTypes.Email).FirstOrDefault().Value; data.Id = Convert.ToInt32(claims.Where(x => x.Type == ClaimTypes.UserData).FirstOrDefault().Value); List <MenuAccessLiteParameters> list = new List <MenuAccessLiteParameters>(); List <string> listAccess = claims.Where(x => x.Type == ClaimTypes.Webpage).Select(y => y.Value).ToList(); foreach (string access in listAccess) { string[] acc = access.Split(new string[] { "$%" }, StringSplitOptions.None); if (acc != null && acc.Count() == 2) { MenuAccessLiteParameters menu = new MenuAccessLiteParameters(); menu.ControllerName = acc[0]; menu.ActionName = acc[1]; list.Add(menu); } } IList <MenuAccessLiteWithChildDTO> resListAccess; resListAccess = _menuService.GetByListControllerAndActionMenu(list); if (resListAccess != null) { var userRole = _userService.GetUserRole(data.Id); if (userRole != null) { data.RoleName = userRole.Role.Name; data.EmployeeType = userRole.Role.EmployeeTypes; if (userRole.Role.Name == "SuperAdmin") { data.MenuList = resListAccess.ToList(); } else { var su = new SuperUserHelper(); data.MenuList = su.filterSuperAdminAccess(resListAccess).ToList(); } } else { data.MenuList = null; } } return(Ok(data)); } catch (Exception ex) { string errMessage = string.Empty; if (!string.IsNullOrWhiteSpace(ex.InnerException.Message)) { errMessage = ex.InnerException.Message; } else { errMessage = ex.Message; } return(Content(HttpStatusCode.InternalServerError, errMessage)); } }