public IHttpActionResult UpdateCustomer(int customerID, [FromBody] HTTPCustomer customer) { if (customer.FirstName == null & customer.LastName == null & customer.Username == null & customer.Password == null & customer.Address == null & customer.PhoneNo == null & customer.CreditCardNumber == null) { return(BadRequest()); } LoginToken <Administrator> token = (LoginToken <Administrator>)Request.Properties["User"]; LoggedInAdministratorFacade facade = (LoggedInAdministratorFacade)(FlyingCenterSystem.GetFlyingCenterSystem().GetFacade(token)); Customer original = facade._customerDAO.Get(customerID); HTTPCustomer tempCustomer = new HTTPCustomer(original); if (customer.FirstName != null) { tempCustomer.FirstName = customer.FirstName; } if (customer.LastName != null) { tempCustomer.LastName = customer.LastName; } if (customer.Username != null) { tempCustomer.Username = customer.Username; } if (customer.Password != null) { tempCustomer.Password = customer.Password; } if (customer.Address != null) { tempCustomer.Address = customer.Address; } if (customer.PhoneNo != null) { tempCustomer.PhoneNo = customer.PhoneNo; } if (customer.CreditCardNumber != null) { tempCustomer.CreditCardNumber = customer.CreditCardNumber; } try { facade.UpdateCustomerDetails(token, new Customer(customerID, tempCustomer.FirstName, tempCustomer.LastName, tempCustomer.Username, tempCustomer.Password, tempCustomer.Address, tempCustomer.PhoneNo, tempCustomer.CreditCardNumber)); } catch (UsernameAlreadyExistsException) { return(StatusCode(HttpStatusCode.Conflict)); } return(Ok()); }
public IHttpActionResult CreateNewCustomer([FromBody] HTTPCustomer customer) { if (customer.FirstName == null | customer.LastName == null | customer.Username == null | customer.Password == null | customer.Address == null | customer.PhoneNo == null | customer.CreditCardNumber == null) { return(BadRequest()); } LoginToken <Administrator> token = (LoginToken <Administrator>)Request.Properties["User"]; LoggedInAdministratorFacade facade = (LoggedInAdministratorFacade)(FlyingCenterSystem.GetFlyingCenterSystem().GetFacade(token)); try { facade.CreateNewCustomer(token, new Customer( -1, customer.FirstName, customer.LastName, customer.Username, customer.Password, customer.Address, customer.PhoneNo, customer.CreditCardNumber)); } catch (UsernameAlreadyExistsException) { return(StatusCode(HttpStatusCode.Conflict)); } return(Ok()); }