first commit
This commit is contained in:
113
Classes/ConfiguracionExpediente.cs
Normal file
113
Classes/ConfiguracionExpediente.cs
Normal file
@@ -0,0 +1,113 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data.SQLite;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace EFCDesk.Classes
|
||||
{
|
||||
public class ConfiguracionExpediente
|
||||
{
|
||||
public bool IniciarExpedienteWindows { get; set; }
|
||||
public string? FolderParaGenerarExpediente { get; set; }
|
||||
public bool DepurarExpediente { get; set; }
|
||||
public string? FolderParaDepurarExpediente { get; set; }
|
||||
public bool UsarEstructuraPedimentosWinsaai { get; set; }
|
||||
public bool UsarExpedienteLogistico { get; set; }
|
||||
public string ServidorFTP { get; set; }
|
||||
public string UsuarioFTP { get; set; }
|
||||
public string PasswordFTP { get; set; }
|
||||
public bool ModoPasivoFTP { get; set; }
|
||||
public int PuertoFTP { get; set; }
|
||||
|
||||
|
||||
|
||||
public ConfiguracionExpediente() {
|
||||
ServidorFTP = "efc.aduanasoft.com";
|
||||
UsuarioFTP = "expElec";
|
||||
PasswordFTP = "8lackSta8";
|
||||
ModoPasivoFTP = true;
|
||||
PuertoFTP = 20;
|
||||
}
|
||||
|
||||
// Método para guardar la configuración en la base de datos
|
||||
public void GuardarEnBaseDeDatos(SQLiteHelper sqliteHelper)
|
||||
{
|
||||
try
|
||||
{
|
||||
using (var connection = sqliteHelper.GetConnection())
|
||||
{
|
||||
connection.Open();
|
||||
|
||||
string insertOrUpdateQuery = @"
|
||||
INSERT OR REPLACE INTO Configuracion (
|
||||
Id, IniciarExpedienteWindows, FolderParaGenerarExpediente, DepurarExpediente,
|
||||
FolderParaDepurarExpediente, UsarEstructuraPedimentosWinsaai, UsarExpedienteLogistico, ServidorFTP, UsuarioFTP, PasswordFTP, PuertoFTP , ModoPasivoFTP
|
||||
) VALUES (
|
||||
1, @IniciarExpedienteWindows, @FolderParaGenerarExpediente, @DepurarExpediente,
|
||||
@FolderParaDepurarExpediente, @UsarEstructuraPedimentosWinsaai, @UsarExpedienteLogistico, @ServidorFTP, @UsuarioFTP, @PasswordFTP, @PuertoFTP, @ModoPasivoFTP
|
||||
);";
|
||||
|
||||
using (var command = new SQLiteCommand(insertOrUpdateQuery, connection))
|
||||
{
|
||||
command.Parameters.AddWithValue("@IniciarExpedienteWindows", IniciarExpedienteWindows ? 1 : 0);
|
||||
command.Parameters.AddWithValue("@FolderParaGenerarExpediente", FolderParaGenerarExpediente ?? (object)DBNull.Value);
|
||||
command.Parameters.AddWithValue("@DepurarExpediente", DepurarExpediente ? 1 : 0);
|
||||
command.Parameters.AddWithValue("@FolderParaDepurarExpediente", FolderParaDepurarExpediente ?? (object)DBNull.Value);
|
||||
command.Parameters.AddWithValue("@UsarEstructuraPedimentosWinsaai", UsarEstructuraPedimentosWinsaai ? 1 : 0);
|
||||
command.Parameters.AddWithValue("@UsarExpedienteLogistico", UsarExpedienteLogistico ? 1 : 0);
|
||||
command.Parameters.AddWithValue("@ServidorFTP", ServidorFTP ?? (object)DBNull.Value);
|
||||
command.Parameters.AddWithValue("@UsuarioFTP", UsuarioFTP ?? (object)DBNull.Value);
|
||||
command.Parameters.AddWithValue("@PasswordFTP", PasswordFTP ?? (object)DBNull.Value);
|
||||
command.Parameters.AddWithValue("@PuertoFTP", PuertoFTP == 0 ? (object)DBNull.Value : PuertoFTP);
|
||||
command.Parameters.AddWithValue("@ModoPasivoFTP", ModoPasivoFTP ? 1 : 0);
|
||||
|
||||
command.ExecuteNonQuery();
|
||||
}
|
||||
}
|
||||
} catch(Exception ex) {
|
||||
MessageBox.Show(ex.Message);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// Método para obtener la configuración desde la base de datos
|
||||
public static ConfiguracionExpediente ObtenerDesdeBaseDeDatos(SQLiteHelper sqliteHelper)
|
||||
{
|
||||
using (var connection = sqliteHelper.GetConnection())
|
||||
{
|
||||
connection.Open();
|
||||
|
||||
string selectQuery = "SELECT * FROM Configuracion WHERE Id = 1;";
|
||||
using (var command = new SQLiteCommand(selectQuery, connection))
|
||||
{
|
||||
using (var reader = command.ExecuteReader())
|
||||
{
|
||||
if (reader.Read())
|
||||
{
|
||||
return new ConfiguracionExpediente
|
||||
{
|
||||
IniciarExpedienteWindows = reader.GetInt32(reader.GetOrdinal("IniciarExpedienteWindows")) == 1,
|
||||
FolderParaGenerarExpediente = reader["FolderParaGenerarExpediente"] as string,
|
||||
DepurarExpediente = reader.IsDBNull(reader.GetOrdinal("DepurarExpediente")) ? false : (reader.GetInt32(reader.GetOrdinal("DepurarExpediente")) == 1),
|
||||
FolderParaDepurarExpediente = reader["FolderParaDepurarExpediente"] as string,
|
||||
UsarEstructuraPedimentosWinsaai = reader.IsDBNull(reader.GetOrdinal("UsarEstructuraPedimentosWinsaai")) ? false : (reader.GetInt32(reader.GetOrdinal("UsarEstructuraPedimentosWinsaai")) == 1),
|
||||
UsarExpedienteLogistico = reader.IsDBNull(reader.GetOrdinal("UsarExpedienteLogistico")) ? false : (reader.GetInt32(reader.GetOrdinal("UsarExpedienteLogistico")) == 1),
|
||||
ServidorFTP = reader["ServidorFTP"] as string,
|
||||
UsuarioFTP = reader["UsuarioFTP"] as string,
|
||||
PasswordFTP = reader["PasswordFTP"] as string,
|
||||
ModoPasivoFTP = reader.IsDBNull(reader.GetOrdinal("ModoPasivoFTP")) ? false : (reader.GetInt32(reader.GetOrdinal("ModoPasivoFTP")) == 1),
|
||||
PuertoFTP = reader.IsDBNull(reader.GetOrdinal("PuertoFTP")) ? 21 : reader.GetInt32(reader.GetOrdinal("PuertoFTP"))
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Si no hay registro, devolver una nueva instancia con valores predeterminados
|
||||
return new ConfiguracionExpediente();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user