using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Exferia_EntityFramework.Script_Actualizacion
{
    class Scripts_Version_1332
    {
        public static Version G_VRS_VERSION = new Version("1.3.3.2");
        public static long G_LNG_VERSION = 1332;
        public static int G_INT_TIPO = 0;
        public static string G_STR_SCRIPT =
                                    //BORRAR TABLA GTD_ClaveLibreriaExterna
                                    " IF exists " +
                                    " ( " +
                                        " SELECT * " +
                                        " FROM INFORMATION_SCHEMA.TABLES " +
                                        " WHERE TABLE_NAME = 'GTD_ClaveLibreriaExterna' " +
                                    " ) " +
                                    "BEGIN " +
                                        " DROP TABLE GTD_ClaveLibreriaExterna " +
                                    "END " +
                                    //BORRAR OPCION GTD_CLAVELIBRERIAEXTERNA
                                    "IF exists " +
                                    "( " +
                                        "SELECT * " +
                                        "FROM PRV_Opciones " +
                                        "WHERE opcion = 'GTD_CLAVELIBRERIAEXTERNA' " +
                                    ") " +
                                    "BEGIN " +
                                        " DELETE FROM " + nameof(PRV_ArbolPrincipal_USR_Usuarios) + " WHERE " + nameof(PRV_ArbolPrincipal_USR_Usuarios.opcion) + "='GTD_CLAVELIBRERIAEXTERNA' " +
                                        " DELETE FROM " + nameof(PRV_ArbolPrincipal) + " WHERE " + nameof(PRV_ArbolPrincipal.opcion) + "='GTD_CLAVELIBRERIAEXTERNA' " +
                                        " DELETE FROM " + nameof(PRV_Productos_OpcionesDisponiblesParaCliente) + " WHERE " + nameof(PRV_Productos_OpcionesDisponiblesParaCliente.opcion) + "='GTD_CLAVELIBRERIAEXTERNA' " +
                                        " DELETE FROM " + nameof(PRV_OpcionesDisponiblesParaCliente) + " WHERE " + nameof(PRV_OpcionesDisponiblesParaCliente.opcion) + "='GTD_CLAVELIBRERIAEXTERNA' " +
                                        " DELETE FROM " + nameof(PRV_Opcion_Objeto_Permiso) + " WHERE " + nameof(PRV_Opcion_Objeto_Permiso.opcion) + "='GTD_CLAVELIBRERIAEXTERNA' " +
                                        " DELETE FROM " + nameof(PRV_Opciones_USR_Usuarios) + " WHERE " + nameof(PRV_Opciones_USR_Usuarios.opcion) + "='GTD_CLAVELIBRERIAEXTERNA' " +
                                        " DELETE FROM " + nameof(PRV_OpcionesDetalle_USR_Usuarios) + " WHERE " + nameof(PRV_OpcionesDetalle_USR_Usuarios.opcion) + "='GTD_CLAVELIBRERIAEXTERNA' " +
                                        " DELETE FROM " + nameof(PRV_Opciones) + " WHERE " + nameof(PRV_Opciones.opcion) + "='GTD_CLAVELIBRERIAEXTERNA' " +
                                        " DELETE FROM " + nameof(PRV_OpcionesDetalle) + " WHERE " + nameof(PRV_OpcionesDetalle.opcion) + "='GTD_CLAVELIBRERIAEXTERNA' " +
                                    " END  " +
                                    //CREAR TABLA GTD_ValoresPorDefecto
                                    " IF not exists " +
                                    " ( " +
                                        " SELECT * " +
                                        " FROM INFORMATION_SCHEMA.TABLES " +
                                        " WHERE TABLE_NAME = 'GTD_ValoresPorDefecto' " +
                                    " ) " +
                                    " BEGIN " +
                                        " CREATE TABLE GTD_ValoresPorDefecto " +
                                        " ( " +
                                            " [id] [bigint] IDENTITY (1,1) NOT NULL, " +
                                            " [pdf4me_Clave] [varchar](200) NULL, " +
                                            " [pdf24_Perfil] [varchar](50) NULL, " +
                                            " [pdf24_Resolucion] [int] NULL, " +
                                            " [pdf24_TiempoMaximoPorMega] [int] NULL, " +
                                        " CONSTRAINT[PK_GTD_Configuracion] PRIMARY KEY CLUSTERED " +
                                        " ( " +
                                        " [id] ASC " +
                                        " )WITH(PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON[PRIMARY] " +
                                        " ) ON[PRIMARY] " +
                                    " END " +
                                    //CREAR OPCION GTD_VALORESPORDEFECTO
                                    "IF not exists " +
                                    "( " +
                                        "SELECT * " +
                                        "FROM PRV_Opciones " +
                                        "WHERE opcion = 'GTD_VALORESPORDEFECTO' " +
                                    ") " +
                                    "BEGIN " +
                                        "INSERT INTO " + nameof(PRV_OpcionesDetalle) + " (" + nameof(PRV_OpcionesDetalle.opcion) + "," + nameof(PRV_OpcionesDetalle.descripcion_TituloListado) + "," + nameof(PRV_OpcionesDetalle.descripcion_TituloMantenimiento) + "," + nameof(PRV_OpcionesDetalle.descripcion_Plural) + "," + nameof(PRV_OpcionesDetalle.descripcion_Singular) + "," + nameof(PRV_OpcionesDetalle.camposMostrar_TituloMantenimiento) + ") VALUES('GTD_VALORESPORDEFECTO','Valores por defecto','Valores por defecto','Valores por defecto','Valores por defecto', null) " +
                                        "INSERT INTO " + nameof(PRV_Opciones) + " (" + nameof(PRV_Opciones.opcion) + "," + nameof(PRV_Opciones.libreria) + "," + nameof(PRV_Opciones.descripcionAMostrar) + "," + nameof(PRV_Opciones.mostrable_Arbol) + "," + nameof(PRV_Opciones.fechaCreacion) + ") VALUES('GTD_VALORESPORDEFECTO','Exferia_GestionDocumental','Valores por defecto',0,GETDATE()) " +
                                        "INSERT INTO " + nameof(PRV_Opcion_Objeto_Permiso) + " (" + nameof(PRV_Opcion_Objeto_Permiso.opcion) + "," + nameof(PRV_Opcion_Objeto_Permiso.idPermiso) + "," + nameof(PRV_Opcion_Objeto_Permiso.idObjeto) + "," + nameof(PRV_Opcion_Objeto_Permiso.opcionPadre) + "," + nameof(PRV_Opcion_Objeto_Permiso.mostrar) + ") VALUES('GTD_VALORESPORDEFECTO',3, NULL,NULL,1) " +
                                        "INSERT INTO " + nameof(PRV_Opcion_Objeto_Permiso) + " (" + nameof(PRV_Opcion_Objeto_Permiso.opcion) + "," + nameof(PRV_Opcion_Objeto_Permiso.idPermiso) + "," + nameof(PRV_Opcion_Objeto_Permiso.idObjeto) + "," + nameof(PRV_Opcion_Objeto_Permiso.opcionPadre) + "," + nameof(PRV_Opcion_Objeto_Permiso.mostrar) + ") VALUES('GTD_VALORESPORDEFECTO',5, NULL,NULL,1) " +
                                    " END  ";

    }
}
