Erro ao enviar e-mail

FINALIZADO! Agora sempre que o mecanismo de atribuição for para uma ou mais pessoas, ele vai sempre enviar para quem for, segue…

/**
 *
 *
 * @param {string} colleagueId Matrícula do usuário corrente
 * @param {number} nextSequenceId
 * @param {java.util.List<string>} userList Lista de matrículas de usuários destino
 */

var tsk_validarNomeProduto = 64
var tsk_cadastrarProduto = 65

function beforeTaskSave(colleagueId, nextSequenceId, userList) {    

    //ENVIAR EMAIL DE CRIAÇÃO DE SOLICITAÇÃO ASSIM QUE O FORMULÁRIO É SALVO.
    if(nextSequenceId == tsk_validarNomeProduto || nextSequenceId == tsk_cadastrarProduto){

        //MONTA UM ARRAY COM OS EMAILS DOS DESTINATARIAS DAS MATRICURAS RESPECTIVAMENTE, QUE FORAM PASSADAS EM codDestinatarios
        var mailsDestinatarios = []

        //VERIFICA SE EXISTE UM POOL (GRUPO OU PAPEIS), PRECISA BUSCAR AS MATRICULAS ANTES NO DATASET DE UM OU DE OUTRO
        var UsersPool = new java.util.ArrayList();
        
        var pool = userList.get(0).toString().split(":")[0]
        var attr =  userList.get(0).toString().split(":")[1]
        var nameAttr =  userList.get(0).toString().split(":")[2]

        if(pool.trim() == 'Pool'){

            if(attr == "Role"){
                var constraintRole = [DatasetFactory.createConstraint(
                                            "workflowColleagueRolePK.roleId",
                                            nameAttr.trim(),
                                            nameAttr.trim(),
                                            ConstraintType.SHOULD
                                        )]
                
                var coluna = ["workflowColleagueRolePK.colleagueId"]
                var Users = DatasetFactory.getDataset(
                                    "workflowColleagueRole",
                                    coluna,
                                    constraintRole,
                                    null
                                )
            }
            if(attr == "Group"){
                var constraintGroup = [DatasetFactory.createConstraint(
                                            "colleagueGroupPK.groupId",
                                            nameAttr.trim(),
                                            nameAttr.trim(),
                                            ConstraintType.SHOULD
                                        )]
                var coluna = ["colleagueGroupPK.colleagueId"];
                var Users = DatasetFactory.getDataset(
                                    "colleagueGroup",
                                    coluna,
                                    constraintGroup,
                                    null
                                )
            }

            for (var i = 0; i < Users.rowsCount; i++) {
                UsersPool.add(Users.getValue(i,coluna))             
            }

        }else{
            UsersPool = userList
        }


        //ADICIONA O EMAIL DO SOLICITANTE
        mailsDestinatarios.push(DatasetFactory.createConstraint("colleaguePK.colleagueId",colleagueId,colleagueId,ConstraintType.SHOULD))

        for(var i = 0; i < UsersPool.size(); i++){
            mailsDestinatarios.push(DatasetFactory.createConstraint("colleaguePK.colleagueId",UsersPool.get(i).toString(),UsersPool.get(i).toString(),ConstraintType.SHOULD))
        }

        
        FxEnviarEmail(mailsDestinatarios);

    }


}

function FxEnviarEmail(constraintsTo){

    var parametros = new java.util.HashMap();

    try {
        //CONSULTAR O EMAIL DO SOLICITANTE E DOS DESTINATÁRIOS
        var colunas = ["mail"]
        var getMailDestinatarios = DatasetFactory.getDataset("colleague",colunas,constraintsTo,null);
        var strMails = new java.util.ArrayList();

        for(var i = 0; i < getMailDestinatarios.rowsCount; i++){
            strMails.add(getMailDestinatarios.getValue(i,'mail'))
        }
        
        log.info("==============================\n\n" + 
                    "E-MAIL DESTINATÁRIOS: " + strMails + 
                "\n\n==============================")

        //MONTA MAPA COM PARAMETROS DO TEMPLATE
        var processo = getValue("WKNumProces").toString();
       
        parametros.put("NUMERO_SOLICITACAO", processo);
        parametros.put("NOME_SOLICITANTE", getValue("WKUser").toString());
        parametros.put("NOME_PRODUTO", hAPI.getCardValue('NOME_PROD'));
    
        notifier.notify("ia.processos","tpEmailSolicitacaoNovoProduto_Inicio",parametros,strMails,"text/html");


    } catch (error) {
        log.info("==============================\n\n" + 
                    "HOUVE UM ERRO AO ENVIAR O EMAIL" + 
                "\n\n==============================")
                log.info("==============================\n\n" + 
                    "DESCRIÇÃO DO ERRO" + error + 
                "\n\n==============================")
    }
	
    
}
1 curtida