public async Task <IActionResult> Login([FromBody] User model)
        {
            LoginValidationStatus _status = await dal.loginStatus(model);

            if (_status.validateResult == "000")
            {
                _status.securityToken = jwtService.createToken_NameAndRole(_status.user);
            }

            return(Ok(_status));
        }
Example #2
0
        public async Task <LoginValidationStatus> loginStatus(User model)
        {
            LoginValidationStatus _status = new LoginValidationStatus();

            using (SqlConnection con = SqlCon())
            {
                SqlCommand cmd = SqlCmd(con);
                cmd.CommandText = "ValidateLogin";
                cmd.Parameters.AddWithValue("@userName", model.userName);
                cmd.Parameters.AddWithValue("@userPass", model.userPass);

                SqlParameter prm1 = new SqlParameter
                {
                    ParameterName = "@status",
                    SqlDbType     = SqlDbType.NVarChar,
                    Size          = 50,
                    Direction     = ParameterDirection.Output
                };
                SqlParameter prm2 = new SqlParameter
                {
                    ParameterName = "@message",
                    SqlDbType     = SqlDbType.NVarChar,
                    Size          = 50,
                    Direction     = ParameterDirection.Output
                };

                cmd.Parameters.Add(prm1);
                cmd.Parameters.Add(prm2);
                DataTable      dt = new DataTable();
                SqlDataAdapter da = new SqlDataAdapter(cmd);
                try
                {
                    con.Open();
                    da.Fill(dt);
                    _status.validateResult  = (string)prm1.Value;
                    _status.validateMessage = (string)prm2.Value;
                    if (dt.Rows.Count > 0)
                    {
                        User    user = new User();
                        DataRow dr   = dt.Rows[0];
                        user.userName      = (string)dr[nameof(user.userName)];
                        user.userFullName  = (string)dr[nameof(user.userFullName)];
                        user.userTitleCode = (string)dr[nameof(user.userTitleCode)];
                        user.userDeptCode  = (string)dr[nameof(user.userDeptCode)];
                        _status.user       = user;
                    }
                }
                catch (SqlException ex)
                {
                    _status.validateResult  = ex.Number.ToString();
                    _status.validateMessage = ex.Message;
                }
                finally
                {
                    dt.Dispose();
                    da.Dispose();
                    if (con.State == System.Data.ConnectionState.Open)
                    {
                        con.Close();
                    }
                    cmd.Dispose();
                }
            }
            return(_status);
        }