_
This commit is contained in:
parent
51e83026d4
commit
997fd95f73
@ -159,6 +159,7 @@ async function ConsultaClaves(cedula, chang = null) {
|
|||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
var array = { 'ok': false, 'data': [], 'msg': null };
|
var array = { 'ok': false, 'data': [], 'msg': null };
|
||||||
var _ur = 'consulta_predios_detalle/2/' + cedula + '?boot=true';
|
var _ur = 'consulta_predios_detalle/2/' + cedula + '?boot=true';
|
||||||
|
console.log(_ur);
|
||||||
if (chang != null) {
|
if (chang != null) {
|
||||||
var _ur = 'consulta_predios_detalle/1/' + cedula + '?boot=true';
|
var _ur = 'consulta_predios_detalle/1/' + cedula + '?boot=true';
|
||||||
}
|
}
|
||||||
|
|||||||
@ -8,7 +8,7 @@ function mensaje(name, username = null, massager = null) {
|
|||||||
"\n5️⃣ Información sobre trámites"+
|
"\n5️⃣ Información sobre trámites"+
|
||||||
"\n6️⃣ Validar documentos digitales"+
|
"\n6️⃣ Validar documentos digitales"+
|
||||||
"\n0️⃣ Cerrar sesión"+
|
"\n0️⃣ Cerrar sesión"+
|
||||||
"\n\n -Ingrese el número de la opción que desee.";
|
"\n\n -Por favor ingresa el número de la opción que deseas.";
|
||||||
switch (name) {
|
switch (name) {
|
||||||
case 'sol_cedula':
|
case 'sol_cedula':
|
||||||
jsom_interaciones = [
|
jsom_interaciones = [
|
||||||
@ -24,6 +24,15 @@ function mensaje(name, username = null, massager = null) {
|
|||||||
'Ayúdeme con el número de cédula del propietario(a)'
|
'Ayúdeme con el número de cédula del propietario(a)'
|
||||||
];
|
];
|
||||||
break;
|
break;
|
||||||
|
case 'sol_data_cedula_trb':
|
||||||
|
jsom_interaciones = [
|
||||||
|
'Inmediatamente te ayudaré con el valor mensual con el que contribuyes a la recolección. Por favor, indícame tu número de cédula o RUC.'
|
||||||
|
];
|
||||||
|
// jsom_interaciones = [
|
||||||
|
// 'Por favor ingrese el número de cédula del propietario(a)',
|
||||||
|
// 'Ayúdeme con el número de cédula del propietario(a)'
|
||||||
|
// ];
|
||||||
|
break;
|
||||||
case 'sol_data_clave_catastral':
|
case 'sol_data_clave_catastral':
|
||||||
jsom_interaciones = [
|
jsom_interaciones = [
|
||||||
'Por favor ingrese con el número de la clave catastral',
|
'Por favor ingrese con el número de la clave catastral',
|
||||||
@ -58,24 +67,27 @@ function mensaje(name, username = null, massager = null) {
|
|||||||
];
|
];
|
||||||
break;
|
break;
|
||||||
case 'bienvenida':
|
case 'bienvenida':
|
||||||
if(username){
|
|
||||||
jsom_interaciones = [
|
jsom_interaciones = [
|
||||||
'Hola '+username,
|
'Hola, soy Manty, tu asistente virtual de la Alcaldía de Manta , conmigo tus trámites y contribuciones serán más fáciles.'
|
||||||
'Hola '+username+', soy MANTY su asistente virtual 👋🥰',
|
|
||||||
'Qué tal '+username+' 🙂',
|
|
||||||
mostrarSaludo()+' '+username+' 🙂',
|
|
||||||
'Hola '+username+', soy MANTY 😎',
|
|
||||||
mostrarSaludo()+ ' soy MANTY 😎',
|
|
||||||
'¿Qué tal? '+username+' 😎'
|
|
||||||
];
|
];
|
||||||
}else{
|
// if(username){
|
||||||
jsom_interaciones = [
|
// jsom_interaciones = [
|
||||||
'Soy MANTY su asistente virtual 🤖',
|
// 'Hola '+username,
|
||||||
mostrarSaludo()+', soy MANTY su asistente virtual 🤖',
|
// 'Hola '+username+', soy MANTY su asistente virtual 👋🥰',
|
||||||
'Hola soy MANTI, su asistente virtual 🤖',
|
// 'Qué tal '+username+' 🙂',
|
||||||
'¿Qué tal? soy MANTY su asistente virtual 🤖'
|
// mostrarSaludo()+' '+username+' 🙂',
|
||||||
];
|
// 'Hola '+username+', soy MANTY 😎',
|
||||||
}
|
// mostrarSaludo()+ ' soy MANTY 😎',
|
||||||
|
// '¿Qué tal? '+username+' 😎'
|
||||||
|
// ];
|
||||||
|
// }else{
|
||||||
|
// jsom_interaciones = [
|
||||||
|
// 'Soy MANTY su asistente virtual 🤖',
|
||||||
|
// mostrarSaludo()+', soy MANTY su asistente virtual 🤖',
|
||||||
|
// 'Hola soy MANTI, su asistente virtual 🤖',
|
||||||
|
// '¿Qué tal? soy MANTY su asistente virtual 🤖'
|
||||||
|
// ];
|
||||||
|
// }
|
||||||
break;
|
break;
|
||||||
case 'menu_1':
|
case 'menu_1':
|
||||||
jsom_interaciones = [
|
jsom_interaciones = [
|
||||||
@ -84,8 +96,11 @@ function mensaje(name, username = null, massager = null) {
|
|||||||
break;
|
break;
|
||||||
case 'menu_dirigido':
|
case 'menu_dirigido':
|
||||||
jsom_interaciones = [
|
jsom_interaciones = [
|
||||||
'Hola '+username+', qué tal si revisamos el *menú de opciones:*' + menu_context
|
'Hola '+username+' Bienvenido(a), este es el menú de opciones de los servicios de asistencia: \n' + menu_context
|
||||||
];
|
];
|
||||||
|
// jsom_interaciones = [
|
||||||
|
// 'Hola '+username+', qué tal si revisamos el *menú de opciones:*' + menu_context
|
||||||
|
// ];
|
||||||
break;
|
break;
|
||||||
case 'menu_hueso':
|
case 'menu_hueso':
|
||||||
jsom_interaciones = [menu_context];
|
jsom_interaciones = [menu_context];
|
||||||
@ -99,7 +114,7 @@ function mensaje(name, username = null, massager = null) {
|
|||||||
case 'trb_menu':
|
case 'trb_menu':
|
||||||
var menu = "\n1️⃣ Mí número de cédula \n2️⃣ Otro número de cédula \n3️⃣ Consultar por número de contrato \n0️⃣ Atrás";
|
var menu = "\n1️⃣ Mí número de cédula \n2️⃣ Otro número de cédula \n3️⃣ Consultar por número de contrato \n0️⃣ Atrás";
|
||||||
jsom_interaciones = [
|
jsom_interaciones = [
|
||||||
'TRB: ¿Como desea consultar?\n' + menu + "\n\n -Ingrese el número de la opción que desee.",
|
'¡Excelente!\n Mantener a Manta limpia es un acto de amor por nuestra ciudad 💙.\n\nTu aporte a la tasa de recolección de basura nos permite cuidar nuestros barrios y proteger la salud de las familias mantenses.\n\n ¿Como desea consultar?\n' + menu + "\n\n -Ingrese el número de la opción que desee.",
|
||||||
];
|
];
|
||||||
break;
|
break;
|
||||||
case 'info_tramites':
|
case 'info_tramites':
|
||||||
@ -127,26 +142,35 @@ function mensaje(name, username = null, massager = null) {
|
|||||||
break;
|
break;
|
||||||
case 'bienvenida_su':
|
case 'bienvenida_su':
|
||||||
jsom_interaciones = [
|
jsom_interaciones = [
|
||||||
mostrarSaludo()+' '+username+
|
'Hola, soy Manty, tu asistente virtual de la Alcaldía de Manta , conmigo tus trámites y contribuciones serán más fáciles.\n\nBienvenido(a), este es el menú de opciones de los servicios de asistencia.\n'+menu_context
|
||||||
', bienvenido(a) a los servicios de asistencia virtual del GAD MANTA 🏣\n'+
|
|
||||||
'Soy *MANTI*🤖 y seré su asistente virtual.\n\n'+
|
|
||||||
'Antes de empezar le invito a descargar nuestra aplicación movil oficial *MANTAPP* dando clic en:\nhttps://portalciudadano.manta.gob.ec/c?mantapp'+
|
|
||||||
'\n\nA continuación, le presento nuestro *menú de opciones:*'+menu_context
|
|
||||||
];
|
];
|
||||||
|
// jsom_interaciones = [
|
||||||
|
// mostrarSaludo()+' '+username+
|
||||||
|
// ', bienvenido(a) a los servicios de asistencia virtual del GAD MANTA 🏣\n'+
|
||||||
|
// 'Soy *MANTI*🤖 y seré su asistente virtual.\n\n'+
|
||||||
|
// 'Antes de empezar le invito a descargar nuestra aplicación movil oficial *MANTAPP* dando clic en:\nhttps://portalciudadano.manta.gob.ec/c?mantapp'+
|
||||||
|
// '\n\nA continuación, le presento nuestro *menú de opciones:*'+menu_context
|
||||||
|
// ];
|
||||||
break;
|
break;
|
||||||
case 'despedida':
|
case 'despedida':
|
||||||
jsom_interaciones = [
|
jsom_interaciones = [
|
||||||
'Esta bíen que tenga '+mostrarSaludo(1)+', espero vuelva pronto...👋\n'+
|
'Fue un gusto atenderte, te invitamos a descargar nuestra aplicación movil oficial MANTAPP dando clic en:\nhttps://portalciudadano.manta.gob.ec/c?mantapp\n\n Para consultas, reportes de incidencias, requerimiento de servicios y trámites.',
|
||||||
'Si desea volver a iniciar sesión por favor ingrese su número'+
|
|
||||||
' de cédula o RUC 🤓'
|
|
||||||
];
|
];
|
||||||
|
// jsom_interaciones = [
|
||||||
|
// 'Esta bíen que tenga '+mostrarSaludo(1)+', espero vuelva pronto...👋\n'+
|
||||||
|
// 'Si desea volver a iniciar sesión por favor ingrese su número'+
|
||||||
|
// ' de cédula o RUC 🤓'
|
||||||
|
// ];
|
||||||
break;
|
break;
|
||||||
case 'despedida_alt':
|
case 'despedida_alt':
|
||||||
jsom_interaciones = [
|
jsom_interaciones = [
|
||||||
'Esta bíen '+username+', fue un placer ayudarle. 😬👏\nQue tenga '+mostrarSaludo(1)+'. 😇',
|
'Fue un gusto atenderte, te invitamos a descargar nuestra aplicación movil oficial MANTAPP dando clic en:\n\n https://portalciudadano.manta.gob.ec/c?mantapp\n Para consultas, reportes de incidencias, requerimiento de servicios y trámites.',
|
||||||
'Esta bíen '+username+', es un gusto poder ayudarle, 😬👏 por favor vuelva pronto 👋😇',
|
|
||||||
'Okey '+username+', estoy para ayudarle. 😬👏\nQue tenga '+mostrarSaludo(1)+'. 😇',
|
|
||||||
];
|
];
|
||||||
|
// jsom_interaciones = [
|
||||||
|
// 'Esta bíen '+username+', fue un placer ayudarle. 😬👏\nQue tenga '+mostrarSaludo(1)+'. 😇',
|
||||||
|
// 'Esta bíen '+username+', es un gusto poder ayudarle, 😬👏 por favor vuelva pronto 👋😇',
|
||||||
|
// 'Okey '+username+', estoy para ayudarle. 😬👏\nQue tenga '+mostrarSaludo(1)+'. 😇',
|
||||||
|
// ];
|
||||||
break;
|
break;
|
||||||
case 'haceres_1':
|
case 'haceres_1':
|
||||||
jsom_interaciones = [
|
jsom_interaciones = [
|
||||||
|
|||||||
86
metodos.js
86
metodos.js
@ -537,25 +537,19 @@ async function Fun_ConsultarOtrasClavesCatastrales(agent, req, res, tipo) {
|
|||||||
async function Fun_ConsultarTRB(agent, req, res, tipo) {
|
async function Fun_ConsultarTRB(agent, req, res, tipo) {
|
||||||
try {
|
try {
|
||||||
let data_context = await ValidateDataUserContext(agent);
|
let data_context = await ValidateDataUserContext(agent);
|
||||||
console.log("agemte")
|
|
||||||
console.log(data_context)
|
|
||||||
console.log(tipo)
|
|
||||||
if (data_context) {
|
if (data_context) {
|
||||||
if (tipo == 1) {
|
if (tipo == 1) {
|
||||||
agent.context.set({
|
agent.context.set({
|
||||||
name: 'data_predios',
|
name: 'data_predios',
|
||||||
lifespan: 1
|
lifespan: 1
|
||||||
});
|
});
|
||||||
return agent.add(dialog.mensaje('sol_data_cedula'));
|
return agent.add(dialog.mensaje('sol_data_cedula_trb'));
|
||||||
} else if (tipo == 2) {
|
} else if (tipo == 2) {
|
||||||
console.log("entre al segundo contesto")
|
|
||||||
var Contx = agent.context.get('data_predios');
|
var Contx = agent.context.get('data_predios');
|
||||||
if (Contx == null || Contx == NaN || Contx == undefined) {
|
if (Contx == null || Contx == NaN || Contx == undefined) {
|
||||||
console.log("no existe contexto")
|
|
||||||
Contx = ExistParamtContext(agent, 'data_predios');
|
Contx = ExistParamtContext(agent, 'data_predios');
|
||||||
}
|
}
|
||||||
if (Contx != null && Contx != NaN && Contx != undefined) {
|
if (Contx != null && Contx != NaN && Contx != undefined) {
|
||||||
console.log("exostedd 2222 "+Contx.parameters.cedula_otro)
|
|
||||||
if (Contx.parameters.cedula_otro != null && Contx.parameters.cedula_otro != "") {
|
if (Contx.parameters.cedula_otro != null && Contx.parameters.cedula_otro != "") {
|
||||||
return Func_MiTasaRecoleccionBasura(agent, req, res, 2, Contx.parameters.cedula_otro);
|
return Func_MiTasaRecoleccionBasura(agent, req, res, 2, Contx.parameters.cedula_otro);
|
||||||
} else {
|
} else {
|
||||||
@ -577,7 +571,6 @@ async function Fun_ConsultarTRB(agent, req, res, tipo) {
|
|||||||
}
|
}
|
||||||
if (Contx != null && Contx != NaN && Contx != undefined) {
|
if (Contx != null && Contx != NaN && Contx != undefined) {
|
||||||
if (Contx.parameters.codigo != null && Contx.parameters.codigo != "") {
|
if (Contx.parameters.codigo != null && Contx.parameters.codigo != "") {
|
||||||
console.log("no hay ca " + Contx.parameters.codigo)
|
|
||||||
return Func_MiTasaRecoleccionBasura(agent, req, res, 3, Contx.parameters.codigo);
|
return Func_MiTasaRecoleccionBasura(agent, req, res, 3, Contx.parameters.codigo);
|
||||||
} else {
|
} else {
|
||||||
return TasaRecoleccionBasura(agent, req, res);
|
return TasaRecoleccionBasura(agent, req, res);
|
||||||
@ -687,12 +680,11 @@ async function Func_MiTasaRecoleccionBasura(agent, req, res, lery = 1, data = nu
|
|||||||
}
|
}
|
||||||
if (legion['ok'] == true) {
|
if (legion['ok'] == true) {
|
||||||
let count = legion['data'].length;
|
let count = legion['data'].length;
|
||||||
var msger = '*TASA DE RECOLECCIÓN DE BASURA*\n';
|
var msger = '';
|
||||||
if (count > 0) {
|
if (count > 0) {
|
||||||
legion['data'].forEach(elem_legio => {
|
legion['data'].forEach(elem_legio => {
|
||||||
let suma = 0;
|
let suma = 0;
|
||||||
|
msger = msger + '\n🏠 Contrato *' + elem_legio.numero_contrato + '* (' + funcion.conver_capitalice(elem_legio.direccion) + ') \n\n';
|
||||||
msger = msger + '\n🏠 Contrato *' + elem_legio.numero_contrato + '* (' + funcion.conver_capitalice(elem_legio.direccion) + ') \n';
|
|
||||||
msger = msger + 'Valores emitidos - 2025 \n';
|
msger = msger + 'Valores emitidos - 2025 \n';
|
||||||
elem_legio.facturas_usadas_para_promedio.forEach(elem_omega => {
|
elem_legio.facturas_usadas_para_promedio.forEach(elem_omega => {
|
||||||
if (elem_omega.estado_proceso == 'GENERADA POR CNEL') {
|
if (elem_omega.estado_proceso == 'GENERADA POR CNEL') {
|
||||||
@ -700,6 +692,7 @@ async function Func_MiTasaRecoleccionBasura(agent, req, res, lery = 1, data = nu
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
msger = msger + '\nPromedio a cancelar - 2026 \n';
|
msger = msger + '\nPromedio a cancelar - 2026 \n';
|
||||||
|
|
||||||
elem_legio.facturas_usadas_para_promedio.forEach(elem_omega => {
|
elem_legio.facturas_usadas_para_promedio.forEach(elem_omega => {
|
||||||
if (elem_omega.estado_proceso != 'GENERADA POR CNEL') {
|
if (elem_omega.estado_proceso != 'GENERADA POR CNEL') {
|
||||||
suma += Number(elem_omega.monto_total);
|
suma += Number(elem_omega.monto_total);
|
||||||
@ -708,8 +701,8 @@ async function Func_MiTasaRecoleccionBasura(agent, req, res, lery = 1, data = nu
|
|||||||
});
|
});
|
||||||
msger = msger + '💵 Total a pagar: *$' + suma.toFixed(2) + '*\n';
|
msger = msger + '💵 Total a pagar: *$' + suma.toFixed(2) + '*\n';
|
||||||
});
|
});
|
||||||
msger = msger + '\nPara ver mas detalles revise: https://portalciudadano.manta.gob.ec/consulta_trb';
|
// msger = msger + '\nPara ver mas detalles revise: https://portalciudadano.manta.gob.ec/consulta_trb';
|
||||||
|
msger = msger + '\nPuedes hacer tu pago en:\n - Ventanillas municipales\n - Portal Ciudadano https://portalciudadano.manta.gob.ec/c?mantapp\n - Mantapp\n - Punto de pago aliados';
|
||||||
} else {
|
} else {
|
||||||
msger = msger + "No se encontrarón valores pendientes de pago";
|
msger = msger + "No se encontrarón valores pendientes de pago";
|
||||||
}
|
}
|
||||||
@ -729,6 +722,71 @@ async function Func_MiTasaRecoleccionBasura(agent, req, res, lery = 1, data = nu
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// async function Func_MiTasaRecoleccionBasura(agent, req, res, lery = 1, data = null) {
|
||||||
|
// try {
|
||||||
|
// let data_context = await ValidateDataUserContext(agent);
|
||||||
|
// if (data_context) {
|
||||||
|
// if (lery == 4) {
|
||||||
|
// return Fun_ConsultarCCAtras(agent, req, res);
|
||||||
|
// }
|
||||||
|
// if (data_context != null && data_context != "") {
|
||||||
|
// let legion = [];
|
||||||
|
// if (lery == 1) {
|
||||||
|
// legion = await funcion.ConsultaTasaRecoleccion(data_context.cedula);
|
||||||
|
// } else if (lery == 2) {
|
||||||
|
// legion = await funcion.ConsultaTasaRecoleccion(data);
|
||||||
|
// } else if (lery == 3) {
|
||||||
|
// legion = await funcion.ConsultaTasaRecoleccion(data, 1);
|
||||||
|
// }
|
||||||
|
// if (legion['ok'] == true) {
|
||||||
|
// let count = legion['data'].length;
|
||||||
|
// var msger = '';
|
||||||
|
// if (count > 0) {
|
||||||
|
// legion['data'].forEach(elem_legio => {
|
||||||
|
// let suma = 0;
|
||||||
|
// msger = msger + '\n' + elem_legio.nombre;
|
||||||
|
// msger = msger + '\nC.I. ' + elem_legio.cedula;
|
||||||
|
// let len = elem_legio.facturas_usadas_para_promedio.length;
|
||||||
|
// let item_select = elem_legio.facturas_usadas_para_promedio[len - 1];
|
||||||
|
// console.log(item_select.monto_total);
|
||||||
|
// msger = msger + '\n💵 Valor mensual a pagar: *$' + item_select.monto_total + '*\n';
|
||||||
|
|
||||||
|
// // elem_legio.facturas_usadas_para_promedio.forEach(elem_omega => {
|
||||||
|
// // if (elem_omega.estado_proceso == 'GENERADA POR CNEL') {
|
||||||
|
// // msger = msger + '🚛 ' + elem_omega.mes + ' : *$' + elem_omega.monto_total + '*\n';
|
||||||
|
// // }
|
||||||
|
// // });
|
||||||
|
// // msger = msger + '\nPromedio a cancelar - 2026 \n';
|
||||||
|
|
||||||
|
// // elem_legio.facturas_usadas_para_promedio.forEach(elem_omega => {
|
||||||
|
// // if (elem_omega.estado_proceso != 'GENERADA POR CNEL') {
|
||||||
|
// // suma += Number(elem_omega.monto_total);
|
||||||
|
// // msger = msger + '🚛 ' + elem_omega.mes + ' : *$' + elem_omega.monto_total + '*\n';
|
||||||
|
// // }
|
||||||
|
// // });
|
||||||
|
// // msger = msger + '💵 Total a pagar: *$' + suma.toFixed(2) + '*\n';
|
||||||
|
// });
|
||||||
|
// msger = msger + '\nPuedes hacer tu pago en:\n -Ventanillas municipales\n -Portal Ciudadano https://portalciudadano.manta.gob.ec/c?mantapp\n -Mantapp\n -Punto de pago aliados';
|
||||||
|
|
||||||
|
// } else {
|
||||||
|
// msger = msger + "No se encontrarón valores pendientes de pago";
|
||||||
|
// }
|
||||||
|
// agent.add(msger);
|
||||||
|
// return Fun_RetornarAlinicio(agent, req, res, funcion.conver_name(data_context.name));
|
||||||
|
// } else {
|
||||||
|
// agent.add(funcion.conver_name(data_context.name) + ', ' + legion['msg']);
|
||||||
|
// return Fun_RetornarAlinicio(agent, req, res, funcion.conver_name(data_context.name));
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// } else {
|
||||||
|
// return Fun_WelcomeAgent(agent, req, res);
|
||||||
|
// }
|
||||||
|
// } catch (error) {
|
||||||
|
// return ResolveDefauld(agent);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// async function Func_MiTasaRecoleccionBasura(agent, req, res, lery) {
|
// async function Func_MiTasaRecoleccionBasura(agent, req, res, lery) {
|
||||||
// try {
|
// try {
|
||||||
@ -851,6 +909,7 @@ async function Fun_ConsultarClavesCatastrales(agent, req, res, _cedula = null, n
|
|||||||
// }
|
// }
|
||||||
|
|
||||||
let legion = await funcion.ConsultaClaves(_cedula, nuevo);
|
let legion = await funcion.ConsultaClaves(_cedula, nuevo);
|
||||||
|
console.log(legion)
|
||||||
if (legion['ok'] == true) {
|
if (legion['ok'] == true) {
|
||||||
legion['data']['data'].forEach((elem_ares, index) => {
|
legion['data']['data'].forEach((elem_ares, index) => {
|
||||||
printzeus += '\n' + elem_ares.name + (elem_ares.value != null ? ': $' + elem_ares.value : '');
|
printzeus += '\n' + elem_ares.name + (elem_ares.value != null ? ': $' + elem_ares.value : '');
|
||||||
@ -877,6 +936,7 @@ async function Fun_ConsultarClavesCatastrales(agent, req, res, _cedula = null, n
|
|||||||
return Fun_WelcomeAgent(agent, req, res);
|
return Fun_WelcomeAgent(agent, req, res);
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
console.log(error)
|
||||||
return ResolveDefauld(agent);
|
return ResolveDefauld(agent);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user