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)); }
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); }