public InvoiceItemResponse Create(InvoiceItemViewModel InvoiceItem) { InvoiceItemResponse response = new InvoiceItemResponse(); using (SqliteConnection db = new SqliteConnection("Filename=SirmiumERPGFC.db")) { db.Open(); SqliteCommand insertCommand = db.CreateCommand(); insertCommand.CommandText = SqlCommandInsertPart; try { insertCommand = AddCreateParameters(insertCommand, InvoiceItem); insertCommand.ExecuteNonQuery(); } catch (SqliteException error) { MainWindow.ErrorMessage = error.Message; response.Success = false; response.Message = error.Message; return(response); } db.Close(); response.Success = true; return(response); } }
public InvoiceItemResponse SetStatusDeleted(Guid identifier) { InvoiceItemResponse response = new InvoiceItemResponse(); using (SqliteConnection db = new SqliteConnection("Filename=SirmiumERPGFC.db")) { db.Open(); SqliteCommand insertCommand = new SqliteCommand(); insertCommand.Connection = db; //Use parameterized query to prevent SQL injection attacks insertCommand.CommandText = "UPDATE InvoiceItems SET ItemStatus = @ItemStatus WHERE Identifier = @Identifier"; insertCommand.Parameters.AddWithValue("@ItemStatus", ItemStatus.Deleted); insertCommand.Parameters.AddWithValue("@Identifier", identifier); try { insertCommand.ExecuteNonQuery(); } catch (SqliteException error) { MainWindow.ErrorMessage = error.Message; response.Success = false; response.Message = error.Message; return(response); } db.Close(); response.Success = true; return(response); } }
public InvoiceItemResponse GetInvoiceItem(Guid identifier) { InvoiceItemResponse response = new InvoiceItemResponse(); InvoiceItemViewModel InvoiceItem = new InvoiceItemViewModel(); using (SqliteConnection db = new SqliteConnection("Filename=SirmiumERPGFC.db")) { db.Open(); try { SqliteCommand selectCommand = new SqliteCommand( SqlCommandSelectPart + "FROM InvoiceItems " + "WHERE Identifier = @Identifier;", db); selectCommand.Parameters.AddWithValue("@Identifier", identifier); SqliteDataReader query = selectCommand.ExecuteReader(); if (query.Read()) { InvoiceItemViewModel dbEntry = Read(query); InvoiceItem = dbEntry; } } catch (SqliteException error) { MainWindow.ErrorMessage = error.Message; response.Success = false; response.Message = error.Message; response.InvoiceItem = new InvoiceItemViewModel(); return(response); } db.Close(); } response.Success = true; response.InvoiceItem = InvoiceItem; return(response); }