/// <summary> /// Get Payments /// </summary> /// <returns></returns> public Response GetPayments(Objects.SaleSearchQuery searchQuery, Objects.Pagination pagination) { int statusCode = 200; Response response = new Response(); List <object> payments = new List <object>(); try { Database.Connection.Open(); var query = GetPaymentsSearchQuery(searchQuery) + Func.GetPaginationLimit(pagination); //Execute Query MySqlCommand Command = new MySqlCommand(query, Database.Connection); Command.Parameters.AddWithValue("DateFrom", searchQuery.DateFrom); Command.Parameters.AddWithValue("DateTo", searchQuery.DateTo); MySqlDataReader DataReader = Command.ExecuteReader(); //Read Data while (DataReader.Read()) { Objects.Payment payment = new Objects.Payment { PaidAmount = decimal.Parse(DataReader["PaidAmount"].ToString()), Method = DataReader["PaymentMethod"].ToString(), PaidAt = Convert.ToDateTime(DataReader["SoldAt"].ToString()), }; payments.Add(payment); } if (!DataReader.HasRows) { statusCode = 204; } else { // OK statusCode = 200; } Database.Connection.Close(); //Response response.StatusCode = statusCode; response.DataArray = payments; response.Pagination = pagination; } catch (MySqlException e) { Logger.QueryError(e, "Sale", "Getting Payments"); // Internal Error : response.StatusCode = 500; } //Close Connection if Open if (Database.Connection.State == ConnectionState.Open) { Database.Connection.Close(); } return(response); }
/// <summary> /// Checks if Id is valid /// </summary> /// <returns></returns> public bool IsValid(Objects.Payment payment) { bool isValid; try { //Open Connection Database.Connection.Open(); string query = "SELECT PaymentId FROM Payments WHERE PaymentId=@PaymentId"; MySqlCommand Command = new MySqlCommand(query, Database.Connection); Command.Parameters.AddWithValue("PaymentId", payment.Id); MySqlDataReader DataReader = Command.ExecuteReader(); if (!DataReader.HasRows) { isValid = false; } else { isValid = true; } //Close Connection Database.Connection.Close(); } catch (MySqlException e) { Logger.QueryError(e, "Payment", "Verifying Id"); isValid = false; } //Close Connection if Open if (Database.Connection.State == ConnectionState.Open) { Database.Connection.Close(); } return(isValid); }