namespace Sernatur { namespace DB { using Postgres; using Wrapper; public class ContactoEmergencia : GLib.Object { public uint id_contacto { get; set; default = 0; } public uint telefono_emergencia { get; set; default = 0; } public string nombre_emergencia { get; set; default = ""; } public ContactoEmergencia (uint id_contacto = 0, uint telefono_emergencia = 0, string nombre_emergencia = "") { this.id_contacto = id_contacto; this.telefono_emergencia = telefono_emergencia; this.nombre_emergencia = nombre_emergencia; } public static ContactoEmergencia[]? get_all_contactos(Database conn) { var res = conn.exec ("SELECT id_contacto, telefono_emergencia, nombre_emergencia FROM contacto_emergencia"); if (res.get_status () != ExecStatus.TUPLES_OK) { #if DEBUG error (conn.get_error_message ()); #else warning (conn.get_error_message ()); return null; #endif } var wra = new ResultWrapper (res); ContactoEmergencia[] contactos = {}; int n = res.get_n_tuples (); for (int i = 0; i < n; i++) { try { var contacto = new ContactoEmergencia (wra.get_int_n (i, "id_contacto"), wra.get_int_n (i, "telefono_emergencia"), wra.get_string_n (i, "nombre_emergencia") ); contactos += contacto; } catch (Error e) { #if DEBUG error (e.message); #else warning (e.message); #endif } } return contactos; } } } }