Exferia/Exferia_Servicios/Exferia_Servicios/Opciones.cs

533 lines
26 KiB
C#

using Exferia_Aplicacion.General;
using Exferia_Aplicacion.Sincronizacion;
using Exferia_Controles;
using Exferia_EntityFramework;
using Exferia_Formularios;
using Exferia_Servicios._1_Datos;
using Exferia_Servicios._3_Vistas;
using Exferia_Servicios._3_Vistas.F3;
using Exferia_Servicios._3_Vistas.Listados;
using Exferia_Servicios.General;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Exferia_Servicios
{
public class Opciones
{
public event EventHandler<INTERNO_EventArgs_Listado> ABS_Opciones_Evento_RegistroSeleccionado;
protected void Evento_RegistroSeleccionado(object sender, INTERNO_EventArgs_Listado e)
{
INTERNO_EventArgs_Listado obj_Exferia_EventArgs = new INTERNO_EventArgs_Listado(null, null, e.REGISTRO_SELECCIONADO, null, e.Objeto_Auxiliar,e.Listado_INTERNO_Filtro_OpcionPadre_Modelo,e.CamposValores_ParaMantenimiento);
EventHandler<INTERNO_EventArgs_Listado> obj_EventHandler = ABS_Opciones_Evento_RegistroSeleccionado;
if (obj_EventHandler != null)
obj_EventHandler(this, obj_Exferia_EventArgs);
}
#region Listado
private void CARGAR_LISTADO(string _str_Opcion,
bool _bol_ListadoSeleccionable,
int _int_AccionesPermitidas,
P_Base _frm_P_Base_Origen,
INTERNO_ValoresGenerales_Modelo _mdl_INTERNO_ValoresGenerales_Modelo,
DateTime _dtt_FechaPorDefecto,
string _str_SeleccionFiltro_NombreCampo,
string _str_SeleccionFiltro_Valor,
bool _bol_SeleccionFiltro_SencibleMayusculasMinusculas,
bool _bol_SeleccionFiltro_PalabraCompleta,
List<INTERNO_Filtro_OpcionPadre_Modelo> _lst_INTERNO_Filtro_OpcionPadre_Modelo,
List<INTERNO_Filtro_Modelo> _lst_INTERNO_Filtro_Modelo,
Dictionary<string, object> _dct_ListadoFiltros,
object _obj_Auxiliar,
object _obj_Filtros_Auxiliar,
ABS_Listado _obj_ABS_Listado)
{
//Nombre de la DLL Actual
string str_Nombre_DLL = System.Reflection.Assembly.GetExecutingAssembly().GetName().Name;
Funciones_Listado obj_Funciones_Listado = new Funciones_Listado();
//EVENTOS PUBLICOS
obj_Funciones_Listado.Funciones_Listado_Evento_RegistroSeleccionado += new System.EventHandler<INTERNO_EventArgs_Listado>(Evento_RegistroSeleccionado);
//Datos Variables segun Opcione ###########################################################
ABS_Listado obj_ABS_Listado_Auxiliar = null;
//RELACION_CLIENTEPROVEEDOR
if (_str_Opcion.Equals(Variables.G_STR_OPCION_SRV_RELACION_CLIENTEPROVEEDOR))
{
obj_ABS_Listado_Auxiliar = new ABS_Listado_SRV_Relacion_ClienteProveedor();
}
//#########################################################################################
//Llamar a la Funcion general que cargara los datos y generar la pantalla del listado
obj_Funciones_Listado.Mostrar_Listado(_bol_ListadoSeleccionable,
_int_AccionesPermitidas,
_frm_P_Base_Origen,
_mdl_INTERNO_ValoresGenerales_Modelo,
_dtt_FechaPorDefecto,
_str_SeleccionFiltro_NombreCampo,
_str_SeleccionFiltro_Valor,
_bol_SeleccionFiltro_SencibleMayusculasMinusculas,
_bol_SeleccionFiltro_PalabraCompleta,
str_Nombre_DLL,
_str_Opcion,
obj_ABS_Listado_Auxiliar,
_lst_INTERNO_Filtro_OpcionPadre_Modelo,
_lst_INTERNO_Filtro_Modelo,
_dct_ListadoFiltros,
_obj_Auxiliar);
}
private List<dynamic> OBTENER_LISTADO(string _str_Opcion,
long _lng_idEmpresaSeleccionada,
long _lng_idEjercicioActual,
List<string> _lst_CamposConRelacionABuscar,
List<INTERNO_Filtro_OpcionPadre_Modelo> _lst_INTERNO_Filtro_OpcionPadre_Modelo,
List<INTERNO_Filtro_Modelo> _lst_INTERNO_Filtro_Modelo)
{
List<dynamic> lst_Valores = null;
try
{
//RELACION_CLIENTEPROVEEDOR
if (_str_Opcion.Equals(Variables.G_STR_OPCION_SRV_RELACION_CLIENTEPROVEEDOR))
{
SRV_Relacion_ClienteProveedor_Datos obj_SRV_Relacion_ClienteProveedor_Datos = new SRV_Relacion_ClienteProveedor_Datos();
lst_Valores = obj_SRV_Relacion_ClienteProveedor_Datos.Obtener_Listado(_lng_idEmpresaSeleccionada, _lng_idEjercicioActual, _lst_CamposConRelacionABuscar, _lst_INTERNO_Filtro_OpcionPadre_Modelo, _lst_INTERNO_Filtro_Modelo);
}
}
catch (Control_Errores)
{ }
catch (Exception)
{ }
return lst_Valores;
}
private dynamic OBTENER_REGISTROSLISTADO(string _str_Opcion,
long _lng_idEmpresaSeleccionada,
long _lng_idEjercicioActual,
List<string> _lst_CamposConRelacionABuscar,
List<INTERNO_Filtro_OpcionPadre_Modelo> _lst_INTERNO_Filtro_OpcionPadre_Modelo,
List<INTERNO_Filtro_Modelo> _lst_INTERNO_Filtro_Modelo,
long _lng_id,
List<long> _lst_ids)
{
dynamic dnm_Valor = null;
try
{
//RELACION_CLIENTEPROVEEDOR
if (_str_Opcion.Equals(Variables.G_STR_OPCION_SRV_RELACION_CLIENTEPROVEEDOR))
{
SRV_Relacion_ClienteProveedor_Datos obj_SRV_Relacion_ClienteProveedor_Datos = new SRV_Relacion_ClienteProveedor_Datos();
dnm_Valor = obj_SRV_Relacion_ClienteProveedor_Datos.Obtener_RegistroListado(_lng_idEmpresaSeleccionada, _lng_idEjercicioActual, _lst_CamposConRelacionABuscar, _lst_INTERNO_Filtro_OpcionPadre_Modelo, _lst_INTERNO_Filtro_Modelo, _lng_id, _lst_ids);
}
}
catch (Control_Errores)
{ }
catch (Exception)
{ }
return dnm_Valor;
}
#endregion
#region Listado Secundario
private void MOSTRAR_LISTADO_SECUNDARIO(string _str_Opcion,
string _str_idNodoArbolSecundarioSeleccion,
P_Base _frm_P_Base_Origen,
INTERNO_ValoresGenerales_Modelo _mdl_INTERNO_ValoresGenerales_Modelo,
DateTime _dtt_FechaPorDefecto,
List<INTERNO_Filtro_OpcionPadre_Modelo> _lst_INTERNO_Filtro_OpcionPadre_Modelo,
List<INTERNO_Filtro_Modelo> _lst_INTERNO_Filtro_Modelo,
Dictionary<string, object> _dct_ListadoFiltros,
object _obj_Auxiliar)
{
//Nombre de la DLL Actual
string str_Nombre_DLL = System.Reflection.Assembly.GetExecutingAssembly().GetName().Name;
Funciones_Listado_Secundario obj_Funciones_Listado_Secundario = new Funciones_Listado_Secundario();
//Datos Variables segun Opcione ###########################################################
ABS_Listado obj_ABS_Listado_Auxiliar = null;
//Llamar a la Funcion general que cargara los datos y generar la pantalla del listado
obj_Funciones_Listado_Secundario.Mostrar_Listado(_frm_P_Base_Origen,
_str_idNodoArbolSecundarioSeleccion,
_mdl_INTERNO_ValoresGenerales_Modelo,
_dtt_FechaPorDefecto,
str_Nombre_DLL,
_str_Opcion,
obj_ABS_Listado_Auxiliar,
_lst_INTERNO_Filtro_OpcionPadre_Modelo,
_lst_INTERNO_Filtro_Modelo,
_dct_ListadoFiltros,
_obj_Auxiliar);
}
private List<dynamic> OBTENER_LISTADO_SECUNDARIO(string _str_Opcion,
long _lng_idEmpresaSeleccionada,
long _lng_idEjercicioActual,
List<string> _lst_CamposConRelacionABuscar,
List<INTERNO_Filtro_OpcionPadre_Modelo> _lst_INTERNO_Filtro_OpcionPadre_Modelo,
List<INTERNO_Filtro_Modelo> _lst_INTERNO_Filtro_Modelo)
{
List<dynamic> lst_Valores = null;
try
{
}
catch (Control_Errores)
{ }
catch (Exception)
{ }
return lst_Valores;
}
private dynamic OBTENER_REGISTROSLISTADO_SECUNDARIO(string _str_Opcion,
long _lng_idEmpresaSeleccionada,
long _lng_idEjercicioActual,
List<string> _lst_CamposConRelacionABuscar,
List<INTERNO_Filtro_OpcionPadre_Modelo> _lst_INTERNO_Filtro_OpcionPadre_Modelo,
List<INTERNO_Filtro_Modelo> _lst_INTERNO_Filtro_Modelo,
long _lng_id,
List<long> _lst_ids)
{
dynamic dnm_Valor = null;
try
{
}
catch (Control_Errores)
{ }
catch (Exception)
{ }
return dnm_Valor;
}
#endregion
private dynamic OBTENER_REGISTRO_F3(string _str_Opcion,
string _str_filtro,
string _str_CampoBusqueda,
long _lng_idEmpresaSeleccionada,
long _lng_idEjercicioActual,
List<INTERNO_Filtro_OpcionPadre_Modelo> _lst_INTERNO_Filtro_OpcionPadre_Modelo,
List<INTERNO_Filtro_Modelo> _lst_INTERNO_Filtro_Modelo,
object _obj_Filtros_Auxiliar)
{
dynamic dnm_Valores = null;
try
{
//RELACION_CLIENTEPROVEEDOR
if (_str_Opcion.Equals(Variables.G_STR_OPCION_SRV_RELACION_CLIENTEPROVEEDOR))
{
SRV_Relacion_ClienteProveedor_Datos obj_SRV_Relacion_ClienteProveedor_Datos = new SRV_Relacion_ClienteProveedor_Datos();
dnm_Valores = obj_SRV_Relacion_ClienteProveedor_Datos.Obtener_F3(_str_filtro, _str_CampoBusqueda, _lng_idEmpresaSeleccionada, _lng_idEjercicioActual, _lst_INTERNO_Filtro_OpcionPadre_Modelo, _lst_INTERNO_Filtro_Modelo);
}
}
catch (Control_Errores)
{ }
catch (Exception)
{ }
return dnm_Valores;
}
private dynamic OBTENER_REGISTRO_F3_PORID(string _str_Opcion,
long _lng_id,
long _lng_idEmpresaSeleccionada,
long _lng_idEjercicioActual,
List<INTERNO_Filtro_OpcionPadre_Modelo> _lst_INTERNO_Filtro_OpcionPadre_Modelo,
List<INTERNO_Filtro_Modelo> _lst_INTERNO_Filtro_Modelo)
{
dynamic dnm_Valores = null;
try
{
//RELACION_CLIENTEPROVEEDOR
if (_str_Opcion.Equals(Variables.G_STR_OPCION_SRV_RELACION_CLIENTEPROVEEDOR))
{
SRV_Relacion_ClienteProveedor_Datos obj_SRV_Relacion_ClienteProveedor_Datos = new SRV_Relacion_ClienteProveedor_Datos();
dnm_Valores = obj_SRV_Relacion_ClienteProveedor_Datos.Obtener_F3_PorId(_lng_id, _lng_idEmpresaSeleccionada, _lng_idEjercicioActual, _lst_INTERNO_Filtro_OpcionPadre_Modelo, _lst_INTERNO_Filtro_Modelo);
}
}
catch (Control_Errores)
{ }
catch (Exception)
{ }
return dnm_Valores;
}
private ABS_F3 OBTENCION_ABS_F3(string _str_Opcion)
{
ABS_F3 obj_ABS_F3 = null;
//RELACION_CLIENTEPROVEEDOR
if (_str_Opcion.Equals(Variables.G_STR_OPCION_SRV_RELACION_CLIENTEPROVEEDOR))
{
obj_ABS_F3 = new ABS_F3_SRV_Relacion_ClienteProveedor();
}
return obj_ABS_F3;
}
private void MOSTRAR_EN_MANTENIMIENTO(string _str_Opcion,
P_Base _frm_P_Base_Origen,
Exferia_F3 _usc_Exferia_F3_Origen,
INTERNO_ValoresGenerales_Modelo _mdl_INTERNO_ValoresGenerales_Modelo,
DateTime _dtt_FechaPorDefecto,
INTERNO_OpcionesDetalle_Modelo _mdl_INTERNO_OpcionesDetalle_Modelo,
long _lng_RegistroSeleccionado,
string _str_Campo1_Valor,
string _str_Campo2_Valor,
object _obj_Auxiliar,
List<INTERNO_CampoValor_Modelo> _lst_ListadoArgumentos_ParaMantemiento)
{
//RELACION_CLIENTEPROVEEDOR
if (_str_Opcion.Equals(Variables.G_STR_OPCION_SRV_RELACION_CLIENTEPROVEEDOR))
{
P_Relacion_ClienteProveedor frm_P_Relacion_ClienteProveedor = new P_Relacion_ClienteProveedor(_mdl_INTERNO_ValoresGenerales_Modelo, _dtt_FechaPorDefecto, _mdl_INTERNO_OpcionesDetalle_Modelo, _obj_Auxiliar);
frm_P_Relacion_ClienteProveedor.P_Base_Campo_1 = _str_Campo1_Valor;
frm_P_Relacion_ClienteProveedor.P_Base_Campo_2 = _str_Campo2_Valor;
//Se llamo desde una pantalla
if (_frm_P_Base_Origen != null)
{
frm_P_Relacion_ClienteProveedor.P_Base_PantallaPadre_IdentificadorTAG = _frm_P_Base_Origen.Tag.ToString();
frm_P_Relacion_ClienteProveedor.P_Base_PantallaOrigen = _frm_P_Base_Origen;
}
//Se llamo desde un control F3
else
{
frm_P_Relacion_ClienteProveedor.P_Base_PantallaPadre_IdentificadorTAG = "";
frm_P_Relacion_ClienteProveedor.P_Base_F3Origen = _usc_Exferia_F3_Origen;
}
//Modificar
if (_lng_RegistroSeleccionado > 0)
{
frm_P_Relacion_ClienteProveedor.P_Base_TituloPantalla_CaminoHormigas = _mdl_INTERNO_OpcionesDetalle_Modelo.descripcion_TituloMantenimiento.ToUpper();
frm_P_Relacion_ClienteProveedor.P_Base_id = _lng_RegistroSeleccionado;
frm_P_Relacion_ClienteProveedor.P_Base_TipoAperturaPantalla = 1;
}
//Alta
else
{
frm_P_Relacion_ClienteProveedor.P_Base_TipoAperturaPantalla = 0;
frm_P_Relacion_ClienteProveedor.P_Base_TituloPantalla_CaminoHormigas = _mdl_INTERNO_OpcionesDetalle_Modelo.descripcion_TituloMantenimiento.ToUpper() + " -> Alta";
}
Funciones_PanelPrincipal.Cargar_PantallaEmpotrada(frm_P_Relacion_ClienteProveedor, _str_Opcion);
}
//#########################################################################################
}
private void Cargar_MantenimientoSimple(P_Base _frm_P_Base_Origen,
Exferia_F3 _usc_Exferia_F3_Origen,
INTERNO_OpcionesDetalle_Modelo _mdl_INTERNO_OpcionesDetalle_Modelo,
long _lng_RegistroSeleccionado,
P_MantenimientoSimple _frm_P_MantenimientoSimple,
string _str_Opcion)
{
if (_frm_P_Base_Origen != null)
{
_frm_P_MantenimientoSimple.P_Base_PantallaPadre_IdentificadorTAG = _frm_P_Base_Origen.Tag.ToString();
_frm_P_MantenimientoSimple.P_Base_PantallaOrigen = _frm_P_Base_Origen;
}
//Se llamo desde un control F3
else
{
_frm_P_MantenimientoSimple.P_Base_PantallaPadre_IdentificadorTAG = "";
_frm_P_MantenimientoSimple.P_Base_F3Origen = _usc_Exferia_F3_Origen;
}
//Modificar
if (_lng_RegistroSeleccionado > 0)
{
_frm_P_MantenimientoSimple.P_Base_TituloPantalla_CaminoHormigas = _mdl_INTERNO_OpcionesDetalle_Modelo.descripcion_TituloMantenimiento.ToUpper();
_frm_P_MantenimientoSimple.P_Base_id = _lng_RegistroSeleccionado;
_frm_P_MantenimientoSimple.P_Base_TipoAperturaPantalla = 1;
}
//Alta
else
{
_frm_P_MantenimientoSimple.P_Base_TipoAperturaPantalla = 0;
_frm_P_MantenimientoSimple.P_Base_TituloPantalla_CaminoHormigas = _mdl_INTERNO_OpcionesDetalle_Modelo.descripcion_TituloMantenimiento.ToUpper() + " -> Alta";
}
Funciones_PanelPrincipal.Cargar_PantallaEmpotrada(_frm_P_MantenimientoSimple, _str_Opcion);
}
private void Cargar_MantenimientoAgrupacionesCabecera(P_Base _frm_P_Base_Origen,
Exferia_F3 _usc_Exferia_F3_Origen,
INTERNO_OpcionesDetalle_Modelo _mdl_INTERNO_OpcionesDetalle_Modelo,
long _lng_RegistroSeleccionado,
P_MantenimientoAgrupacionesCabecera _frm_P_MantenimientoAgrupacionesCabecera,
string _str_Opcion)
{
if (_frm_P_Base_Origen != null)
{
_frm_P_MantenimientoAgrupacionesCabecera.P_Base_PantallaPadre_IdentificadorTAG = _frm_P_Base_Origen.Tag.ToString();
_frm_P_MantenimientoAgrupacionesCabecera.P_Base_PantallaOrigen = _frm_P_Base_Origen;
}
//Se llamo desde un control F3
else
{
_frm_P_MantenimientoAgrupacionesCabecera.P_Base_PantallaPadre_IdentificadorTAG = "";
_frm_P_MantenimientoAgrupacionesCabecera.P_Base_F3Origen = _usc_Exferia_F3_Origen;
}
//Modificar
if (_lng_RegistroSeleccionado > 0)
{
_frm_P_MantenimientoAgrupacionesCabecera.P_Base_TituloPantalla_CaminoHormigas = _mdl_INTERNO_OpcionesDetalle_Modelo.descripcion_TituloMantenimiento.ToUpper();
_frm_P_MantenimientoAgrupacionesCabecera.P_Base_id = _lng_RegistroSeleccionado;
_frm_P_MantenimientoAgrupacionesCabecera.P_Base_TipoAperturaPantalla = 1;
}
//Alta
else
{
_frm_P_MantenimientoAgrupacionesCabecera.P_Base_TipoAperturaPantalla = 0;
_frm_P_MantenimientoAgrupacionesCabecera.P_Base_TituloPantalla_CaminoHormigas = _mdl_INTERNO_OpcionesDetalle_Modelo.descripcion_TituloMantenimiento.ToUpper() + " -> Alta";
}
Funciones_PanelPrincipal.Cargar_PantallaEmpotrada(_frm_P_MantenimientoAgrupacionesCabecera, _str_Opcion);
}
private dynamic OBTENER_REGISTRO(string _str_Opcion, long _lng_id, long _lng_idEmpresaSeleccionada, long _lng_idEjercicioActual)
{
dynamic dnm_Valores = null;
try
{
//RELACION_CLIENTEPROVEEDOR
if (_str_Opcion.Equals(Variables.G_STR_OPCION_SRV_RELACION_CLIENTEPROVEEDOR))
{
SRV_Relacion_ClienteProveedor_Datos obj_SRV_Relacion_ClienteProveedor_Datos = new SRV_Relacion_ClienteProveedor_Datos();
dnm_Valores = obj_SRV_Relacion_ClienteProveedor_Datos.Obtener(_lng_id);
}
}
catch (Control_Errores)
{ }
catch (Exception)
{ }
return dnm_Valores;
}
private dynamic GRABAR_REGISTRO(string _str_Opcion, dynamic _dnm_Modelo)
{
dynamic dnm_Valores = null;
try
{
//RELACION_CLIENTEPROVEEDOR
if (_str_Opcion.Equals(Variables.G_STR_OPCION_SRV_RELACION_CLIENTEPROVEEDOR))
{
SRV_Relacion_ClienteProveedor_Datos obj_SRV_Relacion_ClienteProveedor_Datos = new SRV_Relacion_ClienteProveedor_Datos();
dnm_Valores = obj_SRV_Relacion_ClienteProveedor_Datos.Grabar(_dnm_Modelo);
}
}
catch (Control_Errores)
{ }
catch (Exception)
{ }
return dnm_Valores;
}
private dynamic BORRAR_REGISTRO(string _str_Opcion, long _lng_id)
{
dynamic dnm_Valores = null;
try
{
//RELACION_CLIENTEPROVEEDOR
if (_str_Opcion.Equals(Variables.G_STR_OPCION_SRV_RELACION_CLIENTEPROVEEDOR))
{
SRV_Relacion_ClienteProveedor_Datos obj_SRV_Relacion_ClienteProveedor_Datos = new SRV_Relacion_ClienteProveedor_Datos();
INTERNO_ValorDevuelto_Modelo mdl_INTERNO_ValorDevuelto_Modelo = obj_SRV_Relacion_ClienteProveedor_Datos.Borrar(_lng_id);
#region SINCRONIZACION
if (mdl_INTERNO_ValorDevuelto_Modelo.TodoCorrecto)
{
INTERNO_Sincronizacion_ActualizarRegistro_Modelo mdl_INTERNO_Sincronizacion_ActualizarRegistro_Modelo = new INTERNO_Sincronizacion_ActualizarRegistro_Modelo();
mdl_INTERNO_Sincronizacion_ActualizarRegistro_Modelo.tabla = nameof(SRV_Relacion_ClienteProveedor);
mdl_INTERNO_Sincronizacion_ActualizarRegistro_Modelo.idClavePrimaria = _lng_id;
Sincronizacion_ActualizarRegistro.Sincronizacion_ActualizarRegistro_RESTOTABLAS(mdl_INTERNO_Sincronizacion_ActualizarRegistro_Modelo);
}
#endregion
dnm_Valores = mdl_INTERNO_ValorDevuelto_Modelo;
}
}
catch (Control_Errores)
{ }
catch (Exception)
{ }
return dnm_Valores;
}
private dynamic BORRAR_REGISTRO_POROBJETO(string _str_Opcion, object _mdl_obj)
{
dynamic dnm_Valores = null;
try
{
//RELACION_CLIENTEPROVEEDOR
if(_str_Opcion.Equals(Variables.G_STR_OPCION_SRV_RELACION_CLIENTEPROVEEDOR))
{
SRV_Relacion_ClienteProveedor_Datos obj_SRV_Relacion_ClienteProveedor_Datos = new SRV_Relacion_ClienteProveedor_Datos();
dnm_Valores = obj_SRV_Relacion_ClienteProveedor_Datos.Borrar(_mdl_obj);
}
}
catch (Control_Errores)
{ }
catch (Exception)
{ }
return dnm_Valores;
}
private dynamic OBTENER_REGISTRO_TEXTBOXBUSQUEDA(string _str_Opcion, string _str_Filtro, string _str_CampoBusqueda, long _lng_idEmpresaSeleccionada, long _lng_idEjercicioActual)
{
dynamic dnm_Valor = null;
try
{
}
catch (Control_Errores)
{ }
catch (Exception)
{ }
return dnm_Valor;
}
private ABS_TextBox_Busqueda OBTENCION_ABS_TEXTBOXBUSQUEDA(string _str_Opcion)
{
ABS_TextBox_Busqueda obj_ABS_TextBox_Busqueda = null;
return obj_ABS_TextBox_Busqueda;
}
}
}