diff --git a/TeamDBAwesome/TeamDBAwesome/Controllers/AddPaymentController.cs b/TeamDBAwesome/TeamDBAwesome/Controllers/AddPaymentController.cs index cb5c5db..4073819 100644 --- a/TeamDBAwesome/TeamDBAwesome/Controllers/AddPaymentController.cs +++ b/TeamDBAwesome/TeamDBAwesome/Controllers/AddPaymentController.cs @@ -16,6 +16,11 @@ namespace TeamDBAwesome.Controllers MySqlService dbService = new MySqlService(); payment.Type = payment.Type.ToUpper(); + + if(payment.is_default != 0 || payment.is_default != 1) + { + return new HttpResponseMessage(HttpStatusCode.BadRequest); + } if(payment.Type == "CC") { diff --git a/TeamDBAwesome/TeamDBAwesome/Controllers/TestController.cs b/TeamDBAwesome/TeamDBAwesome/Controllers/TestController.cs index 142e66c..0a2ca67 100644 --- a/TeamDBAwesome/TeamDBAwesome/Controllers/TestController.cs +++ b/TeamDBAwesome/TeamDBAwesome/Controllers/TestController.cs @@ -15,30 +15,18 @@ namespace TeamDBAwesome.Controllers // GET: api/Test public HttpResponseMessage Get() { - //make a test customer - Customer test = new Customer(); - test.Address = "test"; - test.City = "test"; - test.Company = "test"; - test.Country = "test"; - test.CustomerID = 10; - test.Email = "test@test.com"; - test.Fax = "9109153999"; - test.FName = "test"; - test.LName = "test"; - test.PersonID = 10; - test.Phone = "9109153999"; - test.Post = "06066"; - test.State = "CT"; - test.SupportRepId = 0; - - //make an instance of the sql controller + Payment test = new Payment + { + CustomerId = 7, + Type = "GP", + token = "54321", + email = "fuck@fuck.com", + is_default = 1 + }; + MySqlService sqlS = new MySqlService(); - //try and add the new user - //int ID = sqlS.AddNewUser(test); - //int ID = 0; - sqlS.UpdateCustomer(test); + sqlS.AddPayment(test); //Customer customer = sqlS.GetCustomer(3); diff --git a/TeamDBAwesome/TeamDBAwesome/Models/Payment.cs b/TeamDBAwesome/TeamDBAwesome/Models/Payment.cs index 1359f5f..128bd07 100644 --- a/TeamDBAwesome/TeamDBAwesome/Models/Payment.cs +++ b/TeamDBAwesome/TeamDBAwesome/Models/Payment.cs @@ -14,5 +14,6 @@ namespace TeamDBAwesome.Models public string cardnum { get; set; } // needs to be in yyyy-mm-dd format public string expr_date { get; set; } + public int is_default { get; set; } } } \ No newline at end of file diff --git a/TeamDBAwesome/TeamDBAwesome/SqlService/MySqlService.cs b/TeamDBAwesome/TeamDBAwesome/SqlService/MySqlService.cs index 47697e4..0c79337 100644 --- a/TeamDBAwesome/TeamDBAwesome/SqlService/MySqlService.cs +++ b/TeamDBAwesome/TeamDBAwesome/SqlService/MySqlService.cs @@ -143,24 +143,41 @@ namespace TeamDBAwesome.SqlService bool open = this.OpenConnection(); if (open == true) - { + { + + string new_payment = "insert into chinook.payment(CustomerId,IsDefault) VALUES (" + payment.CustomerId + "," + payment.is_default + ")"; + + MySqlCommand command = new MySqlCommand(new_payment, SqlConn); + command.ExecuteNonQuery(); + + //now we need to get the primary key from that recent update + string pk_query = "SELECT LAST_INSERT_ID()"; + command = new MySqlCommand(pk_query, SqlConn); + string newPayId = command.ExecuteScalar() + ""; + + string PayTypeInsert; if (payment.Type == "CC") { - + PayTypeInsert = "insert into creditcard(PayId,CreditCardNumber,ExpirationDate) VALUES (" + newPayId + "," + + payment.cardnum + ",\"" + payment.expr_date + "\")"; } else if (payment.Type == "AP") { - + PayTypeInsert = "insert into applepay(PayId,ApplePayToken) VALUES (" + newPayId + "," + + payment.token + ")"; } else if (payment.Type == "GP") { - + PayTypeInsert = "insert into googlepay(PayId,GoogleEmail,GoogleToken) VALUES (" + newPayId + ",\"" + + payment.email + "\"," + payment.token + ")"; } else { return 1; } + command = new MySqlCommand(PayTypeInsert, SqlConn); + command.ExecuteNonQuery(); } return 0;