$copia = $this->dados['coleta'];
$indicadorPerguntas = [];
//diretos
$indicadorPerguntas[31006] = 1766; //201-1 | Valor econômico direto gerado e distribuído
$indicadorPerguntas[31007] = 1771; //201-2 | Implicações financeiras e outros riscos e oportunidades decorrentes de mudanças climáticas
$indicadorPerguntas[31008] = 1847; //201-3 | Obrigações de plano de benefício definido e outros planos de aposentadoria
$indicadorPerguntas[31009] = 1776; //201-4 | Apoio financeiro recebido do governo
$indicadorPerguntas[31004] = 1781; //202-1 | Proporção entre salário mais baixo e o salário mínimo local, com discriminação por gênero
$indicadorPerguntas[31005] = 1786; //202-2 | Proporção de membros da diretoria contratados na comunidade local
$indicadorPerguntas[31010] = 1791; //203-1 | Investimentos em infraestrutura e apoio a serviços
$indicadorPerguntas[31011] = 1796; //203-2 | Impactos econômicos indiretos significativos
$indicadorPerguntas[31029] = 1801; //204-1 | Proporção de gastos com fornecedores locais
$indicadorPerguntas[31032] = 1806; //205-1 | Operações avaliadas quanto a riscos relacionados à corrupção
$indicadorPerguntas[31031] = 1812; //205-2 | Comunicação e capacitação em políticas e procedimentos de combate à corrupção
$indicadorPerguntas[31030] = 1817; //205-3 | Casos confirmados de corrupção e medidas tomadas
$indicadorPerguntas[31033] = 1822; //206-1 | Ações judiciais por concorrência desleal, práticas de truste e monopólio
$indicadorPerguntas[31034] = 1827; //207-1 | Abordagem tributária
$indicadorPerguntas[31035] = 1832; //207-2 | Governança, controle e gestão de risco fiscal
$indicadorPerguntas[31036] = 1837; //207-3 | Engajamento de stakeholders e gestão de suas preocupações quanto a tributos
$indicadorPerguntas[31037] = 1842; //207-4 | Relato país-a-país
$indicadorPerguntas[31001] = 1848; //301-1 | Materiais utilizados, discriminados po peso ou volume
$indicadorPerguntas[31002] = 1857; //301-2 | Matérias-prima ou materiais reciclados utilizados
$indicadorPerguntas[31003] = 1863; //301-3 | Produtos e suas embalagens reaproveitados
$indicadorPerguntas[31038] = 1862; //302-1 | Consumo de energia dentro da organização
$indicadorPerguntas[31039] = 1872; //302-2 | Consumo de energia fora da organização
$indicadorPerguntas[31040] = 1877; //302-3 | Intensidade energética
$indicadorPerguntas[31041] = 1878; //302-4 | Redução do consumo de energia
$indicadorPerguntas[31042] = 1887; //302-5 | Reduções nos requisitos energéticos de produtos e serviços
$indicadorPerguntas[31071] = 1897; //303-1 | Interações com água como recurso compartilhado
$indicadorPerguntas[31072] = 1892; //303-2 | Gestão de impactos relacionados ao descarte de água
$indicadorPerguntas[31073] = 1898; //303-3 | Captação de água
$indicadorPerguntas[31074] = 1909; //303-4 | Descarte de água
$indicadorPerguntas[31075] = 1907; //303-5 | Consumo de água
$indicadorPerguntas[31076] = 1917; //304-1 | Unidades operacionais próprias, arrendadas ou geridas dentro ou nas adjacências de áreas de proteção ambiental
$indicadorPerguntas[31077] = 1924; //304-2 | Impactos significativos de atividades, produtos e serviços na biodiversidade
$indicadorPerguntas[31078] = 1922; //304-3 | Habitats protegidos ou restaurados
$indicadorPerguntas[31079] = 1932; //304-4 | Espécies incluídas na lista vermelha da IUCN e em listas nacionais de conservação
$indicadorPerguntas[31080] = 1937; //305-1 | Emissões diretas (Escopo 1) de gases de efeito estufa (GEE)
$indicadorPerguntas[31081] = 1938; //305-2 | Emissões indiretas (Escopo 2) de gases de efeito estufa (GEE) provenientes da aquisição de energia
$indicadorPerguntas[31082] = 1947; //305-3 | Outras emissões indiretas (Escopo 3) de gases de efeito estufa (GEE)
$indicadorPerguntas[31083] = 1952; //305-4 | Intensidade de emissões de gases de efeito estufa (GEE)
$indicadorPerguntas[31084] = 1955; //305-5 | Redução de emissões de gases de efeito estufa (GEE)
$indicadorPerguntas[31085] = 1962; //305-6 | Emissões de substâncias que destroem a camada de ozônio (SDO)
$indicadorPerguntas[31086] = 1967; //305-7 | Emissões de NOX, SOX e outras emissões atmosféricas significativas
$indicadorPerguntas[31087] = 1972; //306-1 | Geração de resíduos e impactos significativos relacionados a resíduos
$indicadorPerguntas[31088] = 1982; //306-2 | Gestão de impactos significativos relacionados a resíduos
$indicadorPerguntas[31089] = 1977; //306-3 | Resíduos gerados ***** tem 2 306-3 ***
$indicadorPerguntas[31090] = 1986; //306-4 | Resíduos não destinados para disposição final
$indicadorPerguntas[31091] = 1993; //306-5 | Resíduos destinados para disposição final
$indicadorPerguntas[31092] = 1992; //308-1 | Novos fornecedores selecionados com base em critérios ambientais
$indicadorPerguntas[31093] = 2002; //308-2 | Impactos ambientais negativos da cadeia de fornecedores e medidas tomadas
$indicadorPerguntas[31094] = 2007; //401-1 | Novas contratações e rotatividade de empregados
$indicadorPerguntas[31095] = 2012; //401-2 | Benefícios oferecidos a empregados em tempo integral que não são oferecidos a empregados temporários ou de período parcial
$indicadorPerguntas[31096] = 2017; //401-3 | Licença maternidade/paternidade
$indicadorPerguntas[31097] = 2022; //402-1 | Prazo mínimo de aviso sobre mudanças operacionais
$indicadorPerguntas[31098] = 2027; //403-1 | Sistema de gestão da saúde e segurança do trabalho
$indicadorPerguntas[31099] = 2032; //403-2 | Identificação de periculosidade, avaliação de riscos e investigação de incidentes
$indicadorPerguntas[31100] = 2037; //403-3 | Serviços de saúde do trabalho
$indicadorPerguntas[31101] = 2042; //403-4 | Participação dos trabalhadores, consulta e comunicação aos trabalhadores referentes a saúde e segurança no trabalho
$indicadorPerguntas[31102] = 2047; //403-5 | Capacitação de trabalhadores em saúde e segurança do trabalho
$indicadorPerguntas[31103] = 2052; //403-6 | Promoção da saúde do trabalhador
$indicadorPerguntas[31104] = 2057; //403-7 | Prevenção e mitigação de impactos de saúde e segurança do trabalho diretamente vinculados com relações de negócios
$indicadorPerguntas[31105] = 2339; //403-8 | Trabalhadores cobertos por um sistema de gestão de saúde e segurança do trabalho
$indicadorPerguntas[31106] = 2062; //403-9 | Acidentes de trabalho
$indicadorPerguntas[31107] = 2071; //403-10 | Doenças profissionais
$indicadorPerguntas[31108] = 2077; //404-1 | Média de horas de capacitação por ano, por empregado
$indicadorPerguntas[31109] = 2081; //404-2 | Programas para o aperfeiçoamento de competências dos empregados e de assistência para transição de carreira
$indicadorPerguntas[31110] = 2087; //404-3 | Percentual de empregados que recebem avaliações regulares de desempenho e de desenvolvimento de carreira
$indicadorPerguntas[31111] = 2092; //405-1 | Diversidade em órgãos de governança e empregados
$indicadorPerguntas[31112] = 2097; //405-2 | Proporção entre o salário-base e a remuneração recebidos pelas mulheres e aqueles recebidos pelos homens
$indicadorPerguntas[31012] = 2099; //406-1 | Casos de discriminação e medidas corretivas tomadas
$indicadorPerguntas[31013] = 2107; //407-1 | Operações e fornecedores em que o direito à liberdade sindical e à negociação coletiva pode estar em risco
$indicadorPerguntas[31014] = 2112; //408-1 | Operações e fornecedores com risco significativo de casos de trabalho infantil
$indicadorPerguntas[31015] = 2117; //409-1 | Operações e fornecedores com risco significativo de casos de trabalho forçado ou análogo ao escravo
$indicadorPerguntas[31016] = 2120; //410-1 | Pessoal de segurança capacitado em políticas ou procedimentos de direitos humanos
$indicadorPerguntas[31017] = 2127; //411-1 | Casos de violação de direitos de povos indígenas
$indicadorPerguntas[31018] = 2128; //413-1 | Operações com engajamento, avaliações de impacto e programas de desenvolvimento voltados à comunidade local
$indicadorPerguntas[31019] = 2137; //413-2 | Operações com impactos negativos significativos reais ou potenciais nas comunidades locais
$indicadorPerguntas[31020] = 2142; //414-1 | Novos fornecedores selecionados com base em critérios sociais
$indicadorPerguntas[31021] = 2146; //414-2 | Impactos sociais negativos da cadeia de fornecedores e medidas tomadas
$indicadorPerguntas[31022] = 2152; //415-1 | Contribuições políticas
$indicadorPerguntas[31023] = 2153; //416-1 | Avaliação dos impactos na saúde e segurança causados por categorias de produtos e serviços
$indicadorPerguntas[31024] = 2164; //416-2 | Casos de não conformidade em relação aos impactos na saúde e segurança causados por produtos e serviços
$indicadorPerguntas[31025] = 2162; //417-1 | Requisitos para informações e REQUISITOS rotulagem de produtos e serviços
$indicadorPerguntas[31026] = 2172; //417-2 | Casos de não conformidade em relação a informações e rotulagem de produtos e serviços
$indicadorPerguntas[31027] = 2176; //417-3 | Casos de não conformidade em relação a comunicação de marketing
$indicadorPerguntas[31028] = 2182; //418-1 | Queixas comprovadas relativas a violação da privacidade e perda de dados de clientes
//$indicadorPerguntas['2-1 | Detalhes da organização'] = ; //2-1 | Detalhes da organização ******** FALTA PERGUNTA E ALTERNATIVAS **********
$indicadorPerguntas[31043] = 2187; //2-2 | Entidades incluídas no relato
$indicadorPerguntas[31044] = 2199; //2-3 | Período de relato, frequência e ponto de contato
$indicadorPerguntas[31045] = 2204; //2-4 | Reformulações de informações
$indicadorPerguntas[31046] = 2208; //2-5 | Verificação externa
// $indicadorPerguntas['2-6 | Atividades, cadeia de valor e outras relações de negócios'] = ; //2-6 | Atividades, cadeia de valor e outras relações de negócios ******** FALTA PERGUNTA E ALTERNATIVAS **********
$indicadorPerguntas[31047] = 2219; //2-7 | Empregados
$indicadorPerguntas[31048] = 2224; //2-8 | Trabalhadores que não são empregados
$indicadorPerguntas[31049] = 2229; //2-9 | Estrutura de governança e sua composição
$indicadorPerguntas[31050] = 2234; //2-10 | Nomeação e seleção para o mais alto órgão de governaça
$indicadorPerguntas[31051] = 2239; //2-11 | Presidente do mais alto órgão de governança
$indicadorPerguntas[31052] = 2249; //2-12 | Papel desempenhado pelo mais alto órgão de governança na supervisão da gestão dos impactos
$indicadorPerguntas[31053] = 2244; //2-13 | Delegação de responsabilidade pela gestão de impactos
$indicadorPerguntas[31054] = 2254; //2-14 | Papel desempenhado pelo mais alto órgão de governança no relato de sustentabilidade
$indicadorPerguntas[31055] = 2259; //2-15 | Conflito de interesse
$indicadorPerguntas[31056] = 2263; //2-16 | Comunicação de preocupações cruciais
$indicadorPerguntas[31057] = 2272; //2-17 | Conhecimento coletivo do mais alto órgão de governança
$indicadorPerguntas[31059] = 2269; //2-18 | Avaliação do desempenho do mais alto órgão de governança
$indicadorPerguntas[31058] = 2279; //2-19 | Políticas de remuneração
$indicadorPerguntas[31061] = 2297; //2-20 | Processo para determinação da remuneração
$indicadorPerguntas[31060] = 2284; //2-21 | Proporção da remuneração total anual
$indicadorPerguntas[31062] = 2289; //2-22 | Declaração sobre estratégia de desenvolvimento sustentável
$indicadorPerguntas[31063] = 2294; //2-23 | Compromissos de política
$indicadorPerguntas[31064] = 2304; //2-24 | Incorporação de compromissos de política
$indicadorPerguntas[31066] = 2307; //2-25 | Processos para reparar impactos negativos
$indicadorPerguntas[31065] = 2314; //2-26 | Mecanismos para aconselhamentos e apresentação de preocupações
$indicadorPerguntas[31067] = 2319; //2-27 | Conformidade com leis e regulamentos
$indicadorPerguntas[31068] = 2324; //2-28 | Participação em associações
$indicadorPerguntas[31069] = 2329; //2-29 | Abordagem para engajamento de stakeholders
$indicadorPerguntas[31070] = 2332; //2-30 | Acordos de negociação coletiva
$indicadorPerguntas[31113] = 2354; //3-1 | Processo de definição de temas materiais
//$indicadorPerguntas['3-2 | Lista de temas materiais'] = ; //3-2 | Lista de temas materiais ******** FALTA PERGUNTA E ALTERNATIVAS **********
//$indicadorPerguntas['3-3 | Gestão de temas materiais'] = ; //3-3 | Gestão de temas materiais ******** FALTA PERGUNTA E ALTERNATIVAS **********
$coletaIndicadoresTodos = \app\modules\performance\models\ColetaIndicador::find()
->joinWith('estrutura')
->where([
'coleta_estrutura.coleta_id' => $copia->id,
'coleta_indicador.status' => \app\modules\performance\models\ColetaIndicador::ATIVO,
])
->andWhere(['not in', 'coleta_indicador.vertical_indicador_id', array_keys($indicadorPerguntas)])
->all();
if ($coletaIndicadoresTodos) {
$copia->status = \app\modules\performance\models\Coleta::INATIVO;
if(!$copia->save()){
throw new \yii\web\HttpException(500, "Erro ao excluir a coleta, motivo: " . json_encode($copia->getErrors()));
}
$retorno = '
Atenção! A análise não foi gerada. Os indicadores abaixo não tem perguntas cadastradas
';
$retorno .= '
';
$retorno .= '';
$retorno .= '
| Indicador |
';
foreach ($coletaIndicadoresTodos as $r) {
$retorno .= '';
$retorno .= '| ' . $r->nome . ' | ';
$retorno .= '
';
}
$retorno .= '
';
echo Yii::$app->controller->render('//site/simples', ['mensagem' => $retorno]);
exit();
}
$inventarioPerguntasInativas = \app\models\InventarioPergunta::find()
->where([
'status' => \app\models\InventarioPergunta::INATIVO,
])
->andWhere(['in', 'id', $indicadorPerguntas])
->all();
if ($inventarioPerguntasInativas) {
$copia->status = \app\modules\performance\models\Coleta::INATIVO;
if(!$copia->save()){
throw new \yii\web\HttpException(500, "Erro ao excluir a coleta, motivo: " . json_encode($copia->getErrors()));
}
$retorno = '
Atenção! A análise não foi gerada. As perguntas abaixo são usadas e foram excluídas
';
$retorno .= '
';
$retorno .= '';
$retorno .= '
| Pergunta |
';
foreach ($inventarioPerguntasInativas as $r) {
$retorno .= '';
$retorno .= '| ' . $r->inventarioCategoria->inventarioDados->nome . ': ' . $r->pergunta . ' | ';
$retorno .= '
';
}
$retorno .= '
';
echo Yii::$app->controller->render('//site/simples', ['mensagem' => $retorno]);
exit();
}
$indicador = null;
$resultado = [];
foreach ($indicadorPerguntas as $k => $pergunta) {
$indicador = $k;
$verticalIndicador = false;
$coletaIndicador = false;
$coletaIndicador = \app\modules\performance\models\ColetaIndicador::find()
->joinWith('estrutura')
->where([
'coleta_estrutura.coleta_id' => $copia->id,
'coleta_indicador.vertical_indicador_id' => $k,
])
->one();
if ($coletaIndicador) {
$inventarioPerguntaAlternativasRadiobox = \app\models\InventarioPergunta::find()
->select('alternativas_radiobox')
->where([
'id' => $indicadorPerguntas[$k],
'status' => \app\models\InventarioPergunta::ATIVO,
])
->column();
$inventarioPerguntaAlternativasRadiobox = json_decode($inventarioPerguntaAlternativasRadiobox[0]);
$alternativas = [];
foreach ($inventarioPerguntaAlternativasRadiobox as $a) {
$alternativas[] = $a->alternativas_radiobox;
}
$coletaAlternativas = \app\modules\performance\models\ColetaAlternativa::find()
->select('nome')
->where([
'indicador_id' => $coletaIndicador->id ?? null,
'status' => \app\modules\performance\models\ColetaAlternativa::ATIVO,
])
->column();
$tem = true;
foreach ($coletaAlternativas as $coletaAlternativa) {
if (!in_array($coletaAlternativa, $alternativas)) {
$tem = false;
$resultado[] = [
'indicador' => $coletaIndicador->nome,
'alternativas_indicador' => $coletaAlternativa,
'alternativas_inventario' => $alternativas,
];
break;
}
}
if (!$tem) {
}
}
}
if (!empty($resultado)) {
$copia->status = \app\modules\performance\models\Coleta::INATIVO;
if(!$copia->save()){
throw new \yii\web\HttpException(500, "Erro ao excluir a coleta, motivo: " . json_encode($copia->getErrors()));
}
$retorno = '
Atenção! A análise não foi gerada. Os indicadores abaixo estão com divergências entre as alternativas do indicador e as alternativas da pergunta
';
$retorno .= '
';
$retorno .= '';
$retorno .= '
| Indicador |
Alternativas do indicador |
Alternativas da peegunta |
';
foreach ($resultado as $r) {
$retorno .= '';
$retorno .= '| ' . $r["indicador"] . ' | ';
$retorno .= '' . $r["alternativas_indicador"] . ' | ';
$retorno .= '' . implode(" ", $r["alternativas_inventario"]) . ' | ';
$retorno .= '
';
}
$retorno .= '
';
echo Yii::$app->controller->render('//site/simples', ['mensagem' => $retorno]);
exit();
}
return true;