CREATE FUNCTION dbo.CFU_Cliente_SCA_QR_Generar(@pJson VARCHAR(8000))
RETURNS VARCHAR(2048)
AS
BEGIN
DECLARE @Json_Respuesta		VARCHAR(8000)

/*Variables recibidas por parámetro a traves del JSON*/
DECLARE @pId_Cliente		INT
DECLARE @pId_Producto		VARCHAR(14)
DECLARE @pFecha_Desde		DATETIME
DECLARE @pFecha_Hasta		DATETIME
DECLARE @pId_Lista_Precio	SMALLINT
DECLARE @pToken				VARCHAR(256)
DECLARE @pApp				VARCHAR(256) --App:CleverSCA

SET @pId_Cliente		= ISNULL(CONVERT(INT, dbo.CF_JSON_VALUE(@pJson,'Id_Cliente')), 0)
SET @pId_Producto		= UPPER(LTRIM(RTRIM(ISNULL(CONVERT(VARCHAR(14), dbo.CF_JSON_VALUE(@pJson,'Id_Producto')), ''))))
SET @pFecha_Desde		= ISNULL(CONVERT(DATETIME, dbo.CF_JSON_VALUE(@pJson,'Fecha_Desde')), '19000101')
SET @pFecha_Hasta		= ISNULL(CONVERT(DATETIME, dbo.CF_JSON_VALUE(@pJson,'Fecha_Hasta')), '19000101')
SET @pId_Lista_Precio	= ISNULL(CONVERT(SMALLINT, dbo.CF_JSON_VALUE(@pJson,'Id_Cliente')), 0)
SET @pToken				= LTRIM(RTRIM(ISNULL(CONVERT(VARCHAR(256), dbo.CF_JSON_VALUE(@pJson,'Token')), '')))
/*FIN Variables recibidas por parámetro a traves del JSON*/

/*Variables locales*/
DECLARE @Token				VARCHAR(256)
DECLARE @Flag_Existe_Token	TINYINT
DECLARE @url				VARCHAR(2048)
/*FIN Variables locales*/

SET @url = (dbo.CF_xParam('API_Url'))

SET @url = @url + 'index.php'

SET @url = @url + '?acs_qr=1'

IF(@pToken = '')
BEGIN
	SET @Token = (dbo.CF_Token(32))
	
	SET @Flag_Existe_Token = (SELECT ISNULL((SELECT 1 FROM Clientes_Links WHERE Token = @Token), 0) AS Flag_Existe_Token)
	
	WHILE(@Flag_Existe_Token = 1)
	BEGIN
		SET @Token = (dbo.CF_Token(32))
	
		SET @Flag_Existe_Token = (SELECT ISNULL((SELECT 1 FROM Clientes_Links WHERE Token = @Token), 0) AS Flag_Existe_Token)
	END	
END
ELSE
BEGIN
	SET @Token = @pToken
END

SET @url = @url + '&token=' + @Token


IF(@pId_Cliente > 0)
BEGIN
	SET @url = @url + '&id_cliente=' + CONVERT(VARCHAR(10), @pId_Cliente)
END

IF(@pId_Producto <> '')
BEGIN
	SET @url = @url + '&id_producto=' + @pId_Producto
END

IF(@pFecha_Desde > '19000101' AND @pFecha_Hasta > '19000101')
BEGIN
	SET @url = @url + '&fecha_desde=' + @pFecha_Desde
	SET @url = @url + '&fecha_hasta=' + @pFecha_Hasta
END

IF(@pId_Lista_Precio > 0)
BEGIN
	SET @url = @url + '&id_lista_precio=' + @pId_Lista_Precio
END


SET @Json_Respuesta =	'{' +
						dbo.CF_Json_ParsearVariable('url', @url, 'VARCHAR(2048)') + ',' +
						dbo.CF_Json_ParsearVariable('token', @token, 'VARCHAR(256)') +
						'}'

RETURN ISNULL(@Json_Respuesta, '')
END
