예제 #1
0
        public IActionResult Authenticate([FromBody] RegistrationReq req)
        {
            Trace.WriteLine("--auth--");
            var user = _userService.Authenticate(req.UserName, req.Password);

            if (user == null)
            {
                return(BadRequest(new { message = "Username or password is incorrect" }));
            }

            var tokenHandler    = new JwtSecurityTokenHandler();
            var key             = Encoding.ASCII.GetBytes(_appSettings.Secret);
            var tokenDescriptor = new SecurityTokenDescriptor
            {
                Subject = new ClaimsIdentity(new Claim[]
                {
                    new Claim(ClaimTypes.Name, user.ToString())
                }),
                Expires            = DateTime.UtcNow.AddDays(7),
                SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature)
            };
            var token       = tokenHandler.CreateToken(tokenDescriptor);
            var tokenString = tokenHandler.WriteToken(token);

            return(Ok(new { Token = tokenString }));
        }
예제 #2
0
        public int SaveRegistration(RegistrationReq req)
        {
            SqlParameter prmStatus = new SqlParameter("@Status", SqlDbType.Int);

            prmStatus.Value     = req.Status;
            prmStatus.Direction = ParameterDirection.Output;


            SqlParameter prmStudentName = new SqlParameter("@StudentName", SqlDbType.VarChar);

            prmStudentName.Value = String.IsNullOrEmpty(req.StudentName) ? string.Empty : req.StudentName;

            SqlParameter prmDOB = new SqlParameter("@DOB", SqlDbType.VarChar);

            prmDOB.Value = req.DOB;

            SqlParameter prmMobileNo = new SqlParameter("@MobileNo", SqlDbType.VarChar);

            prmMobileNo.Value = req.MobileNo;

            SqlParameter prmEmail = new SqlParameter("@Email", SqlDbType.VarChar);

            prmEmail.Value = req.Email;

            SqlParameter prmHSRollNo = new SqlParameter("@HSRollNo", SqlDbType.VarChar);

            prmHSRollNo.Value = req.HSRollNo;

            SqlParameter prmCURegNo = new SqlParameter("@CURegNo", SqlDbType.VarChar);

            prmCURegNo.Value = req.CURegNo;

            SqlParameter prmProgYear = new SqlParameter("@ProgYear", SqlDbType.VarChar);

            prmProgYear.Value = req.ProgYear;

            SqlParameter prmCrtdOn = new SqlParameter("@CrtdOn", SqlDbType.NVarChar);

            prmCrtdOn.Value = req.CrtdOn;

            SqlParameter prmType = new SqlParameter("@Type", SqlDbType.NVarChar);

            prmType.Value = req.Type;

            SqlServerHelper.ExecuteNonQueryProc("spMasterConsigneeDetails_Save", prmStudentName, prmDOB, prmMobileNo, prmEmail,
                                                prmHSRollNo, prmCURegNo, prmProgYear, prmCrtdOn, prmType, prmStatus);
            req.Status = Convert.ToInt32(prmStatus.Value);
            return(req.Status);
        }
예제 #3
0
        public IActionResult Register([FromBody] RegistrationReq req)
        {
            Trace.WriteLine("hey", req.UserName);
            User u = new User {
                UserName = req.UserName, Password = req.Password
            };

            Trace.WriteLine(u.Password, u.UserName);

            try
            {
                _userService.Create(u, req.Password);
                UserProfile up = new UserProfile {
                    User = u, Role = 1
                };                                                   //cuz its ordinary user
                _userProfileService.Create(up);

                return(Ok());
            }
            catch (ApplicationException ex)
            {
                return(BadRequest(new { message = ex.Message }));
            }
        }