var importador = mapperFactory.createMapperMult(["Importador","EstNfEntDanfeProvisorioCheckinEntrada","EstNfSaiCheckinEntrada"]);
var obj = message.get("obj");
var log = {};
try {
    var par = importador.selectOne("Importador.buscaParametrosCheckIn", obj);
    if (!par) {
        throw {
            code: 500,
            message: "Nota de numero " + obj.get("nrAut") + ' Nao econtrada para realizacao de checkin '
        };
    } else {
      if (parseInt(obj.get("tipoConfirmacao")) === 0) { //Confirmacao de entrada de Fornecedor
          isJaImportado = importador.selectOne("EstNfEntDanfeProvisorioCheckinEntrada.listarEstNfEntDanfeProvisorioCheckinEntrada", par);
          if(isJaImportado) {
            throw {
                code: 900,
                message: "Nota de numero " + obj.get("nrAut") + ' com checkin ja realizado anteriormente '
            };
          }else{
            obj.put("cdCtr", par.get("cdCtr"));
            importador.insert("Importador.incluirEstNfEntConfirmacao", obj);
            importador.commit();
          };
      } else { //Confirmacao de entrada de Transferencia
          isJaImportado = importador.selectOne("EstNfSaiCheckinEntrada.listarEstNfSaiCheckinEntrada", par);
          if(isJaImportado) {
            throw {
                code: 900,
                message: "Nota de numero " + obj.get("nrAut") + ' com checkin ja realizado anteriormente '
            };
          }else{
            obj.put("cdNf", par.get("cdNf"));
            obj.put("cdFilial", par.get("cdFilial"));
            importador.insert("Importador.incluirEstNfTransfConfirmacao", obj);
            importador.commit();
          };
      }
    }
} catch (err) {
    java.lang.System.out.println(err);
    importador.rollback();
    if (err.code) {
        throw JSON.stringify(err);
    }
    throw "{erro:true,  message:'" + escape(err) + "', log: " + JSON.stringify(log) + "}";
}
