// Remove Some DAO Administrator. public void RemoveAdministrator(LoginToken <Administrator> token, Administrator admin) { if (token.User.User_Name.ToUpper() == FlyingCenterConfig.ADMIN_NAME && token.User.Password == FlyingCenterConfig.ADMIN_PASSWORD && admin != null) { User adminUser = _userDAO.GetUserById(admin.Id); if (adminUser != null) { _adminDAO.Remove(admin); _userDAO.RemoveUserName(adminUser); _backgroundDAO.AddNewAction(Categories.Administrators | Categories.Deletions, $"Admin {token.User.User_Name} Tried To Delete Some Admin. Id: {admin.Id} ({admin.User_Name}).", true); } else { _backgroundDAO.AddNewAction(Categories.Administrators | Categories.Deletions, $"Admin {token.User.User_Name} Tried To Delete Some Admin. Id: {admin.Id} ({admin.User_Name}).", false); throw new UserNotExistException($"Sorry, But '{admin.User_Name}' Does Not Exist."); } } else { _backgroundDAO.AddNewAction(Categories.Administrators | Categories.Deletions, $"Not Qualified User Tried To Delete Some Admin. Id: {admin.Id} ({admin.User_Name}).", false); } }
// Force Change Password For Some Customer. public void ForceChangePasswordForCustomer(LoginToken <Administrator> token, Customer customer, string newPassword) { if (UserIsValid(token) && customer != null) { User customerUser = _userDAO.GetUserById(customer.Id); if (customerUser != null) { _userDAO.ForceChangePasswordForUser(customerUser, newPassword); customer.ChangePassword(newPassword); _backgroundDAO.AddNewAction(Categories.Customers | Categories.Updates, $"Admin: {token.User.User_Name} Tried To Change Password In Force For Some Customer. Id: {customer.Id} ({customer.User_Name}).", true); } else { _backgroundDAO.AddNewAction(Categories.Customers | Categories.Updates, $"Admin: {token.User.User_Name} Tried To Change Password In Force For Some Customer. Id: {customer.Id} ({customer.User_Name}).", false); throw new UserNotExistException($"Sorry, But '{customer.User_Name}' Is Not Exist."); } } else { _backgroundDAO.AddNewAction(Categories.Customers | Categories.Updates, $"Anonymous User Tried To Change Password In Force For Some Customer. Id: {customer.Id} ({customer.User_Name}).", false); } }
// Force Change Password For Some Airline. public void ForceChangePasswordForAirline(LoginToken <Administrator> token, AirlineCompany airline, string newPassword) { if (UserIsValid(token) && airline != null) { User airlineUser = _userDAO.GetUserById(airline.Id); if (airlineUser != null) { _userDAO.ForceChangePasswordForUser(airlineUser, newPassword); airline.ChangePassword(newPassword); _backgroundDAO.AddNewAction(Categories.AirlineCompanies | Categories.Updates, $"Admin: {token.User.User_Name} Tried To Change Password In Force For Some Airline Company. Id: {airline.Id} ({airline.User_Name}).", true); } else { _backgroundDAO.AddNewAction(Categories.AirlineCompanies | Categories.Updates, $"Admin: {token.User.User_Name} Tried To Change Password In Force For Some Airline Company. Id: {airline.Id} ({airline.User_Name}).", false); throw new UserNotExistException($"Sorry, But '{airline.User_Name}' Is Not Exist."); } } else { _backgroundDAO.AddNewAction(Categories.AirlineCompanies | Categories.Updates, $"Anonymous User Tried To Change Password In Force For Some Airline Company. Id: {airline.Id} ({airline.User_Name}).", false); } }
// Update Details For Some Customer. public void UpdateCustomerDetails(LoginToken <Administrator> token, Customer customer) { if (UserIsValid(token) && customer != null) { User customerUser = _userDAO.GetUserById(customer.Id); if (customerUser != null) { _userDAO.UpdateUserName(customerUser.User_Name, customer.User_Name); _customerDAO.Update(customer); _backgroundDAO.AddNewAction(Categories.Customers | Categories.Updates, $"Admin: {token.User.User_Name} Tried To Update Some Customer. Id: {customer.Id} ({customer.User_Name}).", true); } else { _backgroundDAO.AddNewAction(Categories.Customers | Categories.Updates, $"Admin: {token.User.User_Name} Tried To Update Some Customer. Id: {customer.Id} ({customer.User_Name}).", false); throw new UserNotExistException($"Sorry, But '{customer.User_Name}' Does Not Exist."); } } else { _backgroundDAO.AddNewAction(Categories.Customers | Categories.Updates, $"Anonymous User Tried To Update Some Customer. Id: {customer.Id} ({customer.User_Name}).", false); } }
// Update Details For Some Airline Company. public void UpdateAirlineDetails(LoginToken <Administrator> token, AirlineCompany airline) { if (UserIsValid(token) && airline != null) { User airlineUser = _userDAO.GetUserById(airline.Id); if (airlineUser != null) { _userDAO.UpdateUserName(airlineUser.User_Name, airline.User_Name); _airlineDAO.Update(airline); _backgroundDAO.AddNewAction(Categories.AirlineCompanies | Categories.Updates, $"Admin: {token.User.User_Name} Tried To Update Details For Some Airline Company. Id: {airline.Id} ({airline.User_Name}).", true); } else { _backgroundDAO.AddNewAction(Categories.AirlineCompanies | Categories.Updates, $"Admin: {token.User.User_Name} Tried To Update Details For Some Airline Company. Id: {airline.Id} ({airline.User_Name}).", false); throw new UserNotExistException($"Sorry, But '{airline.User_Name}' Does Not Exist."); } } else { _backgroundDAO.AddNewAction(Categories.AirlineCompanies | Categories.Updates, $"Anonymous User Tried To Update Details For Some Airline Company. Id: {airline.Id} ({airline.User_Name}).", false); } }
// Remove Some Airline Company. public void RemoveAirline(LoginToken <Administrator> token, AirlineCompany airline) { if (UserIsValid(token) && airline != null) { User airlineUser = _userDAO.GetUserById(airline.Id); if (airlineUser != null) { _airlineDAO.Remove(airline); _userDAO.RemoveUserName(airlineUser); _backgroundDAO.AddNewAction(Categories.AirlineCompanies | Categories.Deletions, $"Admin {token.User.User_Name} Tried Delete Some Admin. Id: {airline.Id} ({airline.User_Name}).", true); } else { _backgroundDAO.AddNewAction(Categories.AirlineCompanies | Categories.Deletions, $"Admin {token.User.User_Name} Tried Delete Some Admin. Id: {airline.Id} ({airline.User_Name}).", false); throw new UserNotExistException($"Sorry, But '{airline.User_Name}' Does Not Exist."); } } else { _backgroundDAO.AddNewAction(Categories.AirlineCompanies | Categories.Deletions, $"Anonymous User Tried Delete Some Airline Comapny. Id: {airline.Id} ({airline.User_Name}).", false); } }
//Remove Some Customer. public void RemoveCustomer(LoginToken <Administrator> token, Customer customer) { if (UserIsValid(token) && customer != null) { User customerUser = _userDAO.GetUserById(customer.Id); if (customerUser != null) { _customerDAO.Remove(customer); _userDAO.RemoveUserName(customerUser); _backgroundDAO.AddNewAction(Categories.Customers | Categories.Deletions, $"Admin {token.User.User_Name} Tried Delete Some Admin. Id: {customer.Id} ({customer.User_Name}).", true); } else { _backgroundDAO.AddNewAction(Categories.Customers | Categories.Deletions, $"Admin {token.User.User_Name} Tried Delete Some Admin. Id: {customer.Id} ({customer.User_Name}).", false); throw new UserNotExistException($"Sorry, But '{customer.User_Name}' Does Not Exist."); } _backgroundDAO.AddNewAction(Categories.Customers | Categories.Deletions, $"Admin {token.User.User_Name} Tried Delete Some Admin. Id: {customer.Id} ({customer.User_Name}).", customerUser != null); } else { _backgroundDAO.AddNewAction(Categories.Customers | Categories.Deletions, $"Anonymous User Tried Delete Some Airline Comapny. Id: {customer.Id} ({customer.User_Name}).", false); } }
// Update Details For Some Administrator. public void UpdateAdminDetails(LoginToken <Administrator> token, Administrator admin) { if (UserIsValid(token)) { if (admin != null && ReferenceEquals(token.User.User_Name, admin.User_Name) || token.User.User_Name.ToUpper() == FlyingCenterConfig.ADMIN_NAME) { User adminUser = _userDAO.GetUserById(admin.Id); if (adminUser != null) { if (admin.User_Name != FlyingCenterConfig.ADMIN_NAME) { _userDAO.UpdateUserName(adminUser.User_Name, admin.User_Name); } else { throw new CentralAdministratorException("The UserName Cannot Be Changed To The Same Name As The Central Administrator UserName."); } _adminDAO.Update(admin); _backgroundDAO.AddNewAction(Categories.Administrators | Categories.Updates, $"Admin: {token.User.User_Name} Tried Update Some Admin. Id: {admin.Id} ({admin.User_Name}).", true); } else { _backgroundDAO.AddNewAction(Categories.Administrators | Categories.Updates, $"Admin: {token.User.User_Name} Tried Update Some Admin. Id: {admin.Id} ({admin.User_Name}).", false); throw new UserNotExistException($"Sorry, But '{admin.User_Name}' Does Not Exist."); } } else { _backgroundDAO.AddNewAction(Categories.Administrators | Categories.Updates, $"Not Qualified User Tried Update Some Admin. Id: {admin.Id} ({admin.User_Name}).", false); throw new CentralAdministratorException("Only Central Administrator Or Who Updateds Himself Can Update Details."); } } else { _backgroundDAO.AddNewAction(Categories.Administrators | Categories.Updates, $"Anonymous User Tried Update Some Admin. Id: {admin.Id} ({admin.User_Name}).", false); } }
// Change Password For Current Customer. public void ChangeMyPassword(LoginToken <Customer> token, string oldPassword, string newPassword) { if (UserIsValid(token)) { User customerUser = _userDAO.GetUserById(token.User.Id); if (customerUser != null) { if (_userDAO.TryChangePasswordForUser(customerUser, oldPassword, newPassword)) { token.User.ChangePassword(newPassword); _backgroundDAO.AddNewAction(Categories.Customers | Categories.Updates, $"Customer: {token.User.User_Name} Tried To Change His Password.", true); } else { _backgroundDAO.AddNewAction(Categories.Customers | Categories.Updates, $"Customer: {token.User.User_Name} Tried To Change His Password.", false); throw new WrongPasswordException("Your Old Password Is Incorrect!"); } } } else { _backgroundDAO.AddNewAction(Categories.Customers | Categories.Updates, $"Anonymous User Tried To Change Password For Some Custmer. Id: {token.User.Id} ({token.User.User_Name}).", false); } }
// Change Password For Current Company. public void ChangeMyPassword(LoginToken <AirlineCompany> token, string oldPassword, string newPassword) { if (UserIsValid(token)) { User airlineUser = _userDAO.GetUserById(token.User.Id); if (airlineUser != null) { if (_userDAO.TryChangePasswordForUser(airlineUser, oldPassword, newPassword)) { token.User.ChangePassword(newPassword); _backgroundDAO.AddNewAction(Categories.AirlineCompanies | Categories.Updates, $"{token.User.User_Name} Company Tried To Change Her Password.", true); } else { _backgroundDAO.AddNewAction(Categories.AirlineCompanies | Categories.Updates, $"{token.User.User_Name} Company Tried To Change Her Password.", false); throw new WrongPasswordException("Your Old Password Is Incorrect!"); } } } else { _backgroundDAO.AddNewAction(Categories.AirlineCompanies | Categories.Updates, $"Anonymous User Tried To Change Password For Some Airline Company. Id: {token.User.Id} ({token.User.User_Name}).", false); } }
public UserType TryLogin(string userName, string password, out ILogin token, out FacadeBase facade) { token = null; facade = new AnonymousUserFacade(); // Default Admin. if (userName.ToUpper() == FlyingCenterConfig.ADMIN_NAME.ToUpper()) { if (password.ToUpper() == FlyingCenterConfig.ADMIN_PASSWORD.ToUpper()) { token = new LoginToken <Administrator> { User = new Administrator ( 0, //Admin Number 0, //Id FlyingCenterConfig.ADMIN_NAME, FlyingCenterConfig.ADMIN_PASSWORD ) }; facade = new LoggedInAdministratorFacade(); return(UserType.Administrator); } else { throw new WrongPasswordException("Sorry, But Your Password Isn't Match To Your User Name."); } } // DAO Users. User user = _userDAO.GetUserByUserName(userName); if (user != null) { if (user.User_Name == userName) { if (password.ToUpper() == user.Password.ToUpper()) { switch (user.MyType) { case UserType.Administrator: { Administrator admin = _administratorDAO.GetById(user.Id); token = new LoginToken <Administrator> { User = new Administrator ( admin.Admin_Number, user.Id, user.User_Name, user.Password ) }; facade = new LoggedInAdministratorFacade(); return(UserType.Administrator); } case UserType.Airline: { AirlineCompany airline = _airlineDAO.GetById(user.Id); token = new LoginToken <AirlineCompany> { User = new AirlineCompany ( airline.Airline_Number, user.Id, user.User_Name, user.Password, airline.Airline_Name, airline.Country_Code ) }; facade = new LoggedInAirlineFacade(); return(UserType.Airline); } case UserType.Customer: { Customer customer = _customerDAO.GetById(user.Id); token = new LoginToken <Customer> { User = new Customer ( customer.Customer_Number, user.Id, user.User_Name, user.Password, customer.First_Name, customer.Last_Name, customer.Address, customer.Phone_No, customer.Credit_Card_Number ) }; facade = new LoggedInCustomerFacade(); return(UserType.Customer); } default: { return(UserType.Anonymous); } } } else { throw new WrongPasswordException("Sorry, But Your Password Is Not Match To Your User Name."); } } else { throw new UserNotExistException($"Sorry, But {userName} Does Not Exist."); } } return(UserType.Anonymous); }