added create account record
This commit is contained in:
parent
6414c9feed
commit
b2a627a9c7
@ -17,9 +17,9 @@ namespace TeamHobby.HobbyProjectGenerator.DataAccess
|
|||||||
public SqlDAO(string info)
|
public SqlDAO(string info)
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
Console.WriteLine("Establising Connection");
|
Console.WriteLine("Establising Connection...");
|
||||||
_conn = new OdbcConnection(info);
|
_conn = new OdbcConnection(info);
|
||||||
Console.WriteLine("Connection established");
|
Console.WriteLine("Connection established.");
|
||||||
}
|
}
|
||||||
catch {
|
catch {
|
||||||
//_conn = null;
|
//_conn = null;
|
||||||
|
|||||||
@ -3,28 +3,68 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
using System.Data.Odbc;
|
||||||
|
using TeamHobby.HobbyProjectGenerator.DataAccess;
|
||||||
|
|
||||||
namespace TeamHobby.HobbyProjectGenerator.UserManagement
|
namespace TeamHobby.HobbyProjectGenerator.UserManagement
|
||||||
{
|
{
|
||||||
public class AccountService
|
public class AccountService
|
||||||
{
|
{
|
||||||
public bool CreateUserRecord(UserAccount newUser)
|
public bool CreateUserRecord(UserAccount newUser, IDataSource<string> dbSource)
|
||||||
|
{
|
||||||
|
// string checkAdmin = $"Select * from users where username = {user.username} and password = {user.password};";
|
||||||
|
// Insert into users table
|
||||||
|
string sqlUser = $"INSERT INTO hobby.users (UserName, Password," +
|
||||||
|
$"CreatedBy, CreatedDate, Email) VALUES ('{newUser.NewUserName}', " +
|
||||||
|
$"'{newUser.NewPassword}','{newUser.username}', NOW(),'{newUser.NewEmail}');";
|
||||||
|
|
||||||
|
Object insertNewUser = dbSource.WriteData(sqlUser);
|
||||||
|
// Insert into users table
|
||||||
|
string sqlRoles = $"INSERT INTO hobby.roles (Role, CreatedBy, CreatedDate) " +
|
||||||
|
$"VALUES ('{newUser.NewRole}', '{newUser.username}', NOW());";
|
||||||
|
Object insertNewRole = dbSource.WriteData(sqlUser);
|
||||||
|
// Create string for confirming user account
|
||||||
|
string confirmUser = $"Select * from users where username = {newUser.NewUserName} " +
|
||||||
|
$"and password = {newUser.NewPassword};";
|
||||||
|
Object conUser = dbSource.WriteData(confirmUser);
|
||||||
|
|
||||||
|
//Console.WriteLine("type of Reesult:" + confirmAdmin.GetType());
|
||||||
|
OdbcDataReader reader = null;
|
||||||
|
|
||||||
|
if (conUser.GetType() == typeof(OdbcDataReader))
|
||||||
|
{
|
||||||
|
reader = (OdbcDataReader)conUser;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create String to hold sql output
|
||||||
|
string checkSql = "";
|
||||||
|
|
||||||
|
// Read Sql query results
|
||||||
|
while (reader.Read())
|
||||||
|
{
|
||||||
|
Console.WriteLine(reader.GetString(0));
|
||||||
|
}
|
||||||
|
|
||||||
|
SqlDAO sqlDS = (SqlDAO)dbSource;
|
||||||
|
Console.WriteLine("");
|
||||||
|
|
||||||
|
// Closing the connection
|
||||||
|
sqlDS.getConnection().Close();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
public bool EditUserRecord(UserAccount newUser, IDataSource<string> dbSource)
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
public bool EditUserRecord(UserAccount newUser)
|
public bool DeleteUserRecord(UserAccount newUser, IDataSource<string> dbSource)
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
public bool DeleteUserRecord(UserAccount newUser)
|
public bool DisableUser(UserAccount newUser, IDataSource<string> dbSource)
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
public bool DisableUser(UserAccount newUser)
|
public bool EnableUser(UserAccount newUser, IDataSource<string> dbSource)
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
public bool EnableUser(UserAccount newUser)
|
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -146,7 +146,6 @@ namespace TeamHobby.HobbyProjectGenerator.UserManagement
|
|||||||
// Check with database if user is an admin
|
// Check with database if user is an admin
|
||||||
public bool isAdmin(UserAccount user, IDataSource<string> dbSource)
|
public bool isAdmin(UserAccount user, IDataSource<string> dbSource)
|
||||||
{
|
{
|
||||||
// select r.Role from roles r, users u where UserName = '{user.username}' and Password = '{user.password}' and r.RoleID = u.RoleID;
|
|
||||||
// string checkAdmin = $"Select * from users where username = {user.username} and password = {user.password};";
|
// string checkAdmin = $"Select * from users where username = {user.username} and password = {user.password};";
|
||||||
string checkAdmin = $"select r.Role from roles r, users u where " +
|
string checkAdmin = $"select r.Role from roles r, users u where " +
|
||||||
$"UserName = '{user.username}' and Password = '{user.password}' and r.RoleID = u.RoleID;";
|
$"UserName = '{user.username}' and Password = '{user.password}' and r.RoleID = u.RoleID;";
|
||||||
@ -225,31 +224,31 @@ namespace TeamHobby.HobbyProjectGenerator.UserManagement
|
|||||||
UserAccount newUser = new UserAccount(newCredentials.GetUserName(),
|
UserAccount newUser = new UserAccount(newCredentials.GetUserName(),
|
||||||
newCredentials.GetPassword(), newCredentials.GetEmail(),
|
newCredentials.GetPassword(), newCredentials.GetEmail(),
|
||||||
newCredentials.GetRole(), DateTime.UtcNow);
|
newCredentials.GetRole(), DateTime.UtcNow);
|
||||||
accountService.CreateUserRecord(newUser);
|
accountService.CreateUserRecord(newUser, dbSource);
|
||||||
break;
|
break;
|
||||||
// Edit account
|
// Edit account
|
||||||
case 2:
|
case 2:
|
||||||
UserAccount newEditUser = new UserAccount(newCredentials.GetUserName(),
|
UserAccount newEditUser = new UserAccount(newCredentials.GetUserName(),
|
||||||
newCredentials.GetPassword(), DateTime.UtcNow);
|
newCredentials.GetPassword(), DateTime.UtcNow);
|
||||||
accountService.EditUserRecord(newEditUser);
|
accountService.EditUserRecord(newEditUser, dbSource);
|
||||||
break;
|
break;
|
||||||
// Delete account
|
// Delete account
|
||||||
case 3:
|
case 3:
|
||||||
UserAccount newDeleteUser = new UserAccount(newCredentials.GetUserName(),
|
UserAccount newDeleteUser = new UserAccount(newCredentials.GetUserName(),
|
||||||
newCredentials.GetPassword(), DateTime.UtcNow);
|
newCredentials.GetPassword(), DateTime.UtcNow);
|
||||||
accountService.DeleteUserRecord(newDeleteUser);
|
accountService.DeleteUserRecord(newDeleteUser, dbSource);
|
||||||
break;
|
break;
|
||||||
// Disable account
|
// Disable account
|
||||||
case 4:
|
case 4:
|
||||||
UserAccount newDisableUser = new UserAccount(newCredentials.GetUserName(),
|
UserAccount newDisableUser = new UserAccount(newCredentials.GetUserName(),
|
||||||
newCredentials.GetPassword(), DateTime.UtcNow);
|
newCredentials.GetPassword(), DateTime.UtcNow);
|
||||||
accountService.DisableUser(newDisableUser);
|
accountService.DisableUser(newDisableUser, dbSource);
|
||||||
break;
|
break;
|
||||||
// Enable account
|
// Enable account
|
||||||
case 5:
|
case 5:
|
||||||
UserAccount newEnableUser = new UserAccount(newCredentials.GetUserName(),
|
UserAccount newEnableUser = new UserAccount(newCredentials.GetUserName(),
|
||||||
newCredentials.GetPassword(), DateTime.UtcNow);
|
newCredentials.GetPassword(), DateTime.UtcNow);
|
||||||
accountService.EnableUser(newEnableUser);
|
accountService.EnableUser(newEnableUser, dbSource);
|
||||||
break;
|
break;
|
||||||
// View logs
|
// View logs
|
||||||
case 6:
|
case 6:
|
||||||
|
|||||||
@ -51,24 +51,25 @@ namespace TeamHobby.HobbyProjectGenerator.UserManagement
|
|||||||
private string _newUserName;
|
private string _newUserName;
|
||||||
private string _newPassword;
|
private string _newPassword;
|
||||||
private string _newEmail;
|
private string _newEmail;
|
||||||
private string _role;
|
private string _newRole;
|
||||||
private DateTime _newTime;
|
private DateTime _newTime;
|
||||||
public UserAccount(string newUN, string newPWD, string Email, string role, DateTime newTime)
|
public UserAccount(string newUN, string newPWD, string Email, string role, DateTime newTime)
|
||||||
{
|
{
|
||||||
_newUserName = newUN;
|
_newUserName = newUN;
|
||||||
_newPassword = newPWD;
|
_newPassword = newPWD;
|
||||||
_role = role;
|
_newRole = role;
|
||||||
_newEmail = Email;
|
_newEmail = Email;
|
||||||
_newTime = newTime;
|
_newTime = newTime;
|
||||||
}
|
}
|
||||||
public UserAccount()
|
public UserAccount()
|
||||||
{
|
{
|
||||||
_role = "regular";
|
_newRole = "regular";
|
||||||
_newTime= DateTime.Now;
|
_newTime= DateTime.Now;
|
||||||
}
|
}
|
||||||
public string NewUserName { get { return _newUserName; } }
|
public string NewUserName { get { return _newUserName; } }
|
||||||
public string NewPassword { get { return _newPassword; } }
|
public string NewPassword { get { return _newPassword; } }
|
||||||
public string NewEmail { get { return _newEmail; } }
|
public string NewEmail { get { return _newEmail; } }
|
||||||
public DateTime Newtime { get { return _newTime; } }
|
public string NewRole { get { return _newRole; } }
|
||||||
|
public DateTime NewTime { get { return _newTime; } }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -19,6 +19,8 @@ namespace TeamHobby.HobbyProjectGenerator.Main
|
|||||||
// Change terminal height
|
// Change terminal height
|
||||||
Console.WindowHeight = 40;
|
Console.WindowHeight = 40;
|
||||||
|
|
||||||
|
Console.WriteLine(DateTime.UtcNow.ToString("yyyy-MM-dd HH:mm:ss"));
|
||||||
|
|
||||||
// Creating the Factory class
|
// Creating the Factory class
|
||||||
string dbType = "sql";
|
string dbType = "sql";
|
||||||
RDSFactory factory = new RDSFactory();
|
RDSFactory factory = new RDSFactory();
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user