-- Menú PNet Automotriz -- 

/****** pNetRoleUsuario ******/
IF NOT EXISTS(SELECT * FROM sysobjects where name ='pNetRoleUsuario' and type ='U')
CREATE TABLE pNetRoleUsuario(
	IDRole			int,
	Usuario			varchar(20),
	CONSTRAINT PK_pNetRoleUsuario PRIMARY KEY CLUSTERED (IDRole, Usuario))
GO

DELETE pNetPermiso WHERE IDPermiso BETWEEN 700 AND 799
DELETE pNetRolePermiso WHERE IDPermiso BETWEEN 700 AND 799

GO

/************************************************* Opciones Automotriz ***********************************************/

IF NOT EXISTS(SELECT IDUsuarioTipo FROM pNetUsuarioTipo WHERE Descripcion = 'Automotriz')
BEGIN
 INSERT INTO dbo.pNetUsuarioTipo (Descripcion, Tabla, Campo, Estatus)
	SELECT 'Automotriz', 'Usuario', 'Usuario', 1
END
IF NOT EXISTS(SELECT IDUsuarioTipo FROM pNetUsuarioTipo WHERE IDUsuarioTipo = 8 AND Descripcion = 'Automotriz')
BEGIN
	TRUNCATE TABLE pNetUsuarioTipo
	INSERT INTO pNetUsuarioTipo (Descripcion, Tabla, Campo, Estatus) values('Intelisis',		'Usuario',	'Usuario',		1)
	INSERT INTO pNetUsuarioTipo (Descripcion, Tabla, Campo, Estatus) values('Personal',			'Personal',	'Personal',		1)
	INSERT INTO pNetUsuarioTipo (Descripcion, Tabla, Campo, Estatus) values('Cliente',			'Cte',		'Cliente',		1)
	INSERT INTO pNetUsuarioTipo (Descripcion, Tabla, Campo, Estatus) values('Proveedor',		'Prov',		'Proveedor',	1)
	INSERT INTO pNetUsuarioTipo (Descripcion, Tabla, Campo, Estatus) values('Acreedor',			'Prov',		'Proveedor',	1)
	INSERT INTO pNetUsuarioTipo (Descripcion, Tabla, Campo, Estatus) values('Proyecto',			'Usuario',	'Usuario',		1)
	INSERT INTO pNetUsuarioTipo (Descripcion, Tabla, Campo, Estatus) values('Colaboradores',	'Prov',		'Proveedor',	1)
	INSERT INTO pNetUsuarioTipo (Descripcion, Tabla, Campo, Estatus) values('Automotriz',		'Usuario',	'Usuario',		1)
END

DECLARE @SET_IDUsuarioTipo INT
SELECT	@SET_IDUsuarioTipo = IDUsuarioTipo 
  FROM	pNetUsuarioTipo WHERE Descripcion = 'Automotriz'

DECLARE @SET_IDRole INT
 SELECT @SET_IDRole = IDRole FROM dbo.pNetRole 
  WHERE IDUsuarioTipo = @SET_IDUsuarioTipo AND Descripcion = 'Root'
  
IF (@SET_IDRole IS NULL)
BEGIN
 IF EXISTS(SELECT 1 FROM dbo.pNetRole WHERE Descripcion = 'Root' AND IDUsuarioTipo != 8)
    BEGIN
         UPDATE dbo.pNetRole
        SET IDUsuarioTipo = @SET_IDUsuarioTipo
        WHERE Descripcion = 'Root' AND IDUsuarioTipo != 8
    END
    ELSE
    BEGIN
        INSERT INTO dbo.pNetRole (IDUsuarioTipo, Descripcion)
        SELECT @SET_IDUsuarioTipo, 'Root'
        SELECT @SET_IDRole = SCOPE_IDENTITY()
    END
END


-- Emisión y Recepción --
EXEC dbo.spPNet_MenuInsert 
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole, 
 @IconParent    = 'ion-ios-home-outline',		@IDPermisoParent = 700,					@DescripcionParent  = 'Inicio',
 @IDPermiso     = 700,							@Descripcion     = 'Dashboard',			@RutaPNet           = '/dashboard'

UPDATE pNetPermiso SET IDPermisoPadre = null, Ruta = '/dashboard' WHERE IDPermiso = 700

EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole,
 @IconParent    = 'settings',					@IDPermisoParent = 780,					@DescripcionParent  = 'Configuración',
 @IDPermiso     = 701,							@Descripcion     = 'Usuarios',			@RutaPNet           = '/admin/users'

EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole,
 @IconParent    = 'settings',					@IDPermisoParent = 780,					@DescripcionParent  = 'Configuración',
 @IDPermiso     = 702,							@Descripcion     = 'Roles',				@RutaPNet           = '/admin/roles'

EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole,
 @IconParent    = 'ion-ios-home-outline',		@IDPermisoParent = 780,					@DescripcionParent  = 'Inicio',
 @IDPermiso     = 703,							@Descripcion     = 'Dashboard',	@RutaPNet           = '/dashboard'

EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole,
 @IconParent    = 'ion-ios-home-outline',		@IDPermisoParent = 780,					@DescripcionParent  = 'Inicio',
 @IDPermiso     = 704,							@Descripcion     = 'Notificaciones',	@RutaPNet           = '/admin/notifications'

 EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole,
 @IconParent    = 'ion-ios-home-outline',		@IDPermisoParent = 780,					@DescripcionParent  = 'Acciones',
 @IDPermiso     = 724,							@Descripcion     = 'Acciones',	@RutaPNet           = '/admin/actions'

  EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole,
 @IconParent    = 'ion-ios-home-outline',		@IDPermisoParent = 780,					@DescripcionParent  = 'Signatures',
 @IDPermiso     = 732,							@Descripcion     = 'Firmas',	@RutaPNet           = '/admin/signatures'

 EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole,
 @IconParent    = 'ion-ios-home-outline',		@IDPermisoParent = 780,					@DescripcionParent  = 'Logos',
 @IDPermiso     = 733,							@Descripcion     = 'Logos',	@RutaPNet           = '/admin/logos'
 
 
 
-------- MENUS CITAS
EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole,
 @IconParent    = 'calendar_month',				@IDPermisoParent = 705,					@DescripcionParent  = 'Citas',
 @IDPermiso     = 706,							@Descripcion     = 'Tablero Citas',		@RutaPNet           = '/scheduler/dashboard?myAgent=true'

EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole,
 @IconParent    = 'calendar_month',				@IDPermisoParent = 705,					@DescripcionParent  = 'Citas',
 @IDPermiso     = 707,							@Descripcion     = 'Detalle Citas',		@RutaPNet           = '/scheduler/scheduler-detail/%'

UPDATE pNetPermiso SET Mostrar = 0 WHERE idpermiso = 707

EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole,
 @IconParent    = 'calendar_month',				@IDPermisoParent = 705,					@DescripcionParent  = 'Citas',
 @IDPermiso     = 708,							@Descripcion     = 'Nueva Cita',		@RutaPNet           = '/scheduler/new-schedule'

-------- MONITOR
EXEC dbo.spPNet_MenuInsert 
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole, 
 @IconParent    = 'desktop_windows',			@IDPermisoParent = 709,					@DescripcionParent  = 'Monitores',
 @IDPermiso     = 710,							@Descripcion     = 'Monitor',			@RutaPNet           = '/admin/monitor'

EXEC dbo.spPNet_MenuInsert 
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole, 
 @IconParent    = 'desktop_windows',			@IDPermisoParent = 709,					@DescripcionParent  = 'Monitores',
 @IDPermiso     = 711,							@Descripcion     = 'Prospectos',		@RutaPNet           = '/admin/monitor/prospectos'

EXEC dbo.spPNet_MenuInsert 
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole, 
 @IconParent    = 'desktop_windows',			@IDPermisoParent = 709,					@DescripcionParent  = 'Monitores',
 @IDPermiso     = 792,							@Descripcion     = 'Asignación de Sucursales',		@RutaPNet           = '/admin/monitor/sucursal-assignation'

EXEC dbo.spPNet_MenuInsert 
 @IDUsuarioTipo = @SET_IDUsuarioTipo,     @IDRole          = @SET_IDRole, 
 @IconParent    = '',   @IDPermisoParent = 709,         @DescripcionParent  = 'Monitor',
 @IDPermiso     = 712,              @Descripcion     = 'Configuración Resultados',      @RutaPNet           = '/admin/monitor/result-flow'

 EXEC dbo.spPNet_MenuInsert 
 @IDUsuarioTipo = @SET_IDUsuarioTipo,     @IDRole          = @SET_IDRole, 
 @IconParent    = '',   @IDPermisoParent = 709,         @DescripcionParent  = 'Monitor',
 @IDPermiso     = 730,              @Descripcion     = 'Reporte Lista Objetivo',      @RutaPNet           = '/admin/monitor/target-list'

-------- MENUS CUENTAS
EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole,
 @IconParent    = 'checklist_rtl',				@IDPermisoParent = 713,					@DescripcionParent  = 'Cuentas',
 @IDPermiso     = 714,							@Descripcion     = 'Clientes',			@RutaPNet           = '/accounts/customers'


-------- MENUS TABLEROS

EXEC dbo.spPNet_MenuInsert
    @IDUsuarioTipo = @SET_IDUsuarioTipo, 		@IDRole = @SET_IDRole,
    @IconParent = 'table_chart', 				@IDPermisoParent = 715,					@DescripcionParent = 'Tableros',
    @IDPermiso = 716, 							@Descripcion = 'Tablero de Etapas', 	@RutaPNet = '/boards/stage'

EXEC dbo.spPNet_MenuInsert
    @IDUsuarioTipo = @SET_IDUsuarioTipo, 		@IDRole = @SET_IDRole,
    @IconParent = '',            				@IDPermisoParent = 715,					@DescripcionParent = 'Tableros',
    @IDPermiso = 717, 							@Descripcion = 'Tablero de citas y jefe de taller - mecanicos', 			@RutaPNet = 'control-total'

UPDATE pNetPermiso SET Mostrar = 0 WHERE idpermiso = 717


EXEC dbo.spPNet_MenuInsert
    @IDUsuarioTipo = @SET_IDUsuarioTipo, 		@IDRole = @SET_IDRole,
    @IconParent = '',            				@IDPermisoParent = 715,					@DescripcionParent = 'Etapas',
    @IDPermiso = 718, 							@Descripcion = 'Crear Etapas', 			@RutaPNet = '/boards/stage/new'
    
-------- MENUS RECEPCION
EXEC dbo.spPNet_MenuInsert
    @IDUsuarioTipo = @SET_IDUsuarioTipo, 		@IDRole = @SET_IDRole,
    @IconParent = '', 				@IDPermisoParent = 719,					@DescripcionParent = 'Recepción',
    @IDPermiso = 720, 							@Descripcion = 'Recepción Inicio', 	@RutaPNet = '/reception/home'


EXEC dbo.spPNet_MenuInsert
    @IDUsuarioTipo = @SET_IDUsuarioTipo, 		@IDRole = @SET_IDRole,
    @IconParent = '',            				@IDPermisoParent = 719,					@DescripcionParent = 'Permiso recepcion',
    @IDPermiso = 721, 							@Descripcion = 'Permiso recepcion ', 			@RutaPNet = 'permiso/recepcion/'

UPDATE pNetPermiso SET Mostrar = 0 WHERE idpermiso = 721   
    

EXEC dbo.spPNet_MenuInsert
    @IDUsuarioTipo = @SET_IDUsuarioTipo, 		@IDRole = @SET_IDRole,
    @IconParent = '',            				@IDPermisoParent = 719,					@DescripcionParent = 'Permiso recepcion acciones',
    @IDPermiso = 722, 							@Descripcion = 'Permiso recepcion acciones', 			@RutaPNet = 'permiso/acciones'

UPDATE pNetPermiso SET Mostrar = 0 WHERE idpermiso = 722

EXEC dbo.spPNet_MenuInsert
    @IDUsuarioTipo = @SET_IDUsuarioTipo, 		@IDRole = @SET_IDRole,
    @IconParent = '',            				@IDPermisoParent = 719,					@DescripcionParent = 'Permiso recepcion asesor',
    @IDPermiso = 723, 							@Descripcion = 'Permiso recepcion asesor', 			@RutaPNet = 'permiso/asesor'

UPDATE pNetPermiso SET Mostrar = 0 WHERE idpermiso = 723


EXEC dbo.spPNet_MenuInsert
    @IDUsuarioTipo = @SET_IDUsuarioTipo, 		@IDRole = @SET_IDRole,
    @IconParent = '', 				@IDPermisoParent = 719,					@DescripcionParent = 'Recepcion Orden De Servicio',
    @IDPermiso = 725, 				@Descripcion = 'Recepcion Orden De Servicio ', 	    @RutaPNet = '/reception/serviceOrder'
    
UPDATE pNetPermiso SET Mostrar = 0 WHERE idpermiso = 725

EXEC dbo.spPNet_MenuInsert
    @IDUsuarioTipo = @SET_IDUsuarioTipo, 		@IDRole = @SET_IDRole,
    @IconParent = '', 				@IDPermisoParent = 719,					@DescripcionParent = 'Recepcion Orden De Servicio',
    @IDPermiso = 726, 				@Descripcion = 'Recepcion Inspección  ', 	    @RutaPNet = '/reception/inspect'
    
UPDATE pNetPermiso SET Mostrar = 0 WHERE idpermiso = 726

EXEC dbo.spPNet_MenuInsert
    @IDUsuarioTipo = @SET_IDUsuarioTipo, 		@IDRole = @SET_IDRole,
    @IconParent = '', 				@IDPermisoParent = 719,					@DescripcionParent = 'Permiso Recepcion Orden recepcionista',
    @IDPermiso = 731, 				@Descripcion = 'Recepcion inicio - recepcionista', 	    @RutaPNet = '/permiso/recepcionista'
    
UPDATE pNetPermiso SET Mostrar = 0 WHERE idpermiso = 731 

--MENU DE TABLERO - CITAS
EXEC dbo.spPNet_MenuInsert
    @IDUsuarioTipo = @SET_IDUsuarioTipo, 		@IDRole = @SET_IDRole,
    @IconParent = '',            				@IDPermisoParent = 715,					@DescripcionParent = 'Tablero De Citas',
    @IDPermiso = 727, 							@Descripcion = 'Tablero de citas y jefe de taller', 			@RutaPNet = '/boards/date'

EXEC dbo.spPNet_MenuInsert
    @IDUsuarioTipo = @SET_IDUsuarioTipo, 		@IDRole = @SET_IDRole,
    @IconParent = '', 				@IDPermisoParent = 719,					@DescripcionParent = 'Recepcion Detalle',
    @IDPermiso = 728, 				@Descripcion = 'Recepcion Detalle  ', 	    @RutaPNet = '/reception/detail'
    
UPDATE pNetPermiso SET Mostrar = 0 WHERE idpermiso = 728    

EXEC dbo.spPNet_MenuInsert
    @IDUsuarioTipo = @SET_IDUsuarioTipo, 		@IDRole = @SET_IDRole,
    @IconParent = '', 				@IDPermisoParent = 719,		 		    @DescripcionParent = 'Recepcion Historial inspeccion',
    @IDPermiso = 729, 				@Descripcion = 'Histórico Recepción', 	    @RutaPNet = '/reception/historicInspect'
    
-- actuamente el ultimo permiso es el 733, el siguiente seria 734


    

-------- MENUS DE PRUEBA
delete pnetpermiso where idpermiso > 790

EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole,
 @IconParent    = 'science',					@IDPermisoParent = 794,					@DescripcionParent  = 'Demo Padre',
 @IDPermiso     = 795,							@Descripcion     = 'Pantallas Demo',	@RutaPNet           = ''

EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole,
 @IconParent    = 'science',					@IDPermisoParent = 794,					@DescripcionParent  = 'Demo Padre',
 @IDPermiso     = 796,							@Descripcion     = 'Hijo sin Asignar',	@RutaPNet           = '/test/error'

EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole,
 @IconParent    = null,							@IDPermisoParent = 795,					@DescripcionParent  = 'Pantallas Demo',
 @IDPermiso     = 797,							@Descripcion     = 'Demo Planeador',	@RutaPNet           = '/admin/scheduler'

EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,			@IDRole          = @SET_IDRole,
 @IconParent    = null,							@IDPermisoParent = 795,					@DescripcionParent  = 'Pantallas Demo',
 @IDPermiso     = 798,							@Descripcion     = 'Demo Componentes',	@RutaPNet           = '/admin/demo'


EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,           @IDRole          = @SET_IDRole,
 @IconParent    = null,                         @IDPermisoParent = 781,                 @DescripcionParent  = 'Paquetes',
 @IDPermiso     = 782,                          @Descripcion     = 'Paquetes',  @RutaPNet           = '/packages/list'


EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,           @IDRole          = @SET_IDRole,
 @IconParent    = null,                         @IDPermisoParent = 709,                 @DescripcionParent  = 'Monitores',
 @IDPermiso     = 783,                          @Descripcion     = 'Historial de Contactos',  @RutaPNet           = '/admin/monitor/contact-history'


EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,           @IDRole          = @SET_IDRole,
 @IconParent    = null,                         @IDPermisoParent = 784,                 @DescripcionParent  = 'Indicadores',
 @IDPermiso     = 785,                          @Descripcion     = 'Total de Actividades realizadas por Tipificación',  @RutaPNet           = '/indicators/carried-out-typification'

EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,           @IDRole          = @SET_IDRole,
 @IconParent    = null,                         @IDPermisoParent = 784,                 @DescripcionParent  = 'Indicadores',
 @IDPermiso     = 787,                          @Descripcion     = 'Sábana de Indicadores',  @RutaPNet           = '/indicators/indicator-sheet'

EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,           @IDRole          = @SET_IDRole,
 @IconParent    = null,                         @IDPermisoParent = 705,                 @DescripcionParent  = 'Citas',
 @IDPermiso     = 788,                          @Descripcion     = 'No Show',  @RutaPNet           = '/scheduler/no-show'

EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,           @IDRole          = @SET_IDRole,
 @IconParent    = null,                         @IDPermisoParent = 784,                 @DescripcionParent  = 'Indicadores',
 @IDPermiso     = 789,                          @Descripcion     = 'Cartera de Clientes en Estatus Actual',  @RutaPNet           = '/indicators/current-client-portfolio'


EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,           @IDRole          = @SET_IDRole,
 @IconParent    = null,                         @IDPermisoParent = 784,                 @DescripcionParent  = 'Indicadores',
 @IDPermiso     = 790,                          @Descripcion     = 'Cartera de Clientes por Última Actividad',  @RutaPNet           = '/indicators/last-activity-client-portfolio'

EXEC dbo.spPNet_MenuInsert
 @IDUsuarioTipo = @SET_IDUsuarioTipo,           @IDRole          = @SET_IDRole,
 @IconParent    = null,                         @IDPermisoParent = 784,                 @DescripcionParent  = 'Indicadores',
 @IDPermiso     = 791,                          @Descripcion     = 'Cartera de Clientes en Prioridad Actual',  @RutaPNet           = '/indicators/current-priority-client-portfolio'


  -- Verificación e inserción de usuario tipo Root si no hay usuarios en el sistema
IF NOT EXISTS(SELECT * FROM dbo.pNetRoleUsuario)
BEGIN
    -- Inserta un usuario de tipo Root
    DECLARE @RootUser VARCHAR(20) = 'sopdesa'
    DECLARE @RootRole INT

    
    SELECT @RootRole = IDRole 
    FROM dbo.pNetRole 
    WHERE IDUsuarioTipo = @SET_IDUsuarioTipo AND Descripcion = 'Root'

    
    IF @RootRole IS NULL
    BEGIN
        INSERT INTO dbo.pNetRole (IDUsuarioTipo, Descripcion)
        VALUES (@SET_IDUsuarioTipo, 'Root')
        
        SET @RootRole = SCOPE_IDENTITY()
    END

    INSERT INTO dbo.pNetRoleUsuario (IDRole, Usuario)
    VALUES (@RootRole, @RootUser)
END

GO