diff --git a/ieducar/modules/Avaliacao/Assets/Javascripts/Diario.js b/ieducar/modules/Avaliacao/Assets/Javascripts/Diario.js
index 91055e0..f049ffa 100644
--- a/ieducar/modules/Avaliacao/Assets/Javascripts/Diario.js
+++ b/ieducar/modules/Avaliacao/Assets/Javascripts/Diario.js
@@ -624,6 +624,15 @@ function notaExameField(matriculaId, componenteCurricularId, value) {
value);
}
+function notaNecessariaField(matriculaId, componenteCurricularId, value){
+ if (value=='' || value==undefined) value = '-';
+ var $notaNecessariaField = $j('').addClass('nn-matricula-cc')
+ .addClass('nn-matricula-' + matriculaId + '-cc')
+ .attr('id', 'nn-matricula-' + matriculaId + '-cc-' + componenteCurricularId)
+ .text(value);
+ setNextTabIndex($notaNecessariaField);
+ return $j('
| ').html($notaNecessariaField).addClass('center');
+}
function faltaField(matriculaId, componenteCurricularId, value) {
var $faltaField = $j('').addClass('falta-matricula-cc')
@@ -676,10 +685,17 @@ function updateComponenteCurricular($targetElement, matriculaId, cc) {
if ($tableSearchDetails.data('details').quantidade_etapas == $j('#etapa').val()) {
var $fieldNotaExame = notaExameField(matriculaId, cc.id, cc.nota_exame);
- if (cc.nota_exame == '' && safeToLowerCase(cc.situacao) != 'em exame')
+ var $fieldNN = notaNecessariaField(matriculaId, cc.id, cc.nota_necessaria_exame);
+
+ if (cc.nota_exame == '' && safeToLowerCase(cc.situacao) != 'em exame'){
$fieldNotaExame.children().hide();
+ $fieldNN.children().text('-');
+ }
$fieldNotaExame.appendTo($targetElement);
+
+ // Adiciona campo com nota necessária
+ $fieldNN.appendTo($targetElement);
}
}
@@ -699,8 +715,10 @@ function updateComponenteCurricularHeaders($targetElement, $tagElement) {
if (useNota) {
$tagElement.clone().addClass('center').html('Nota').appendTo($targetElement);
- if ($tableSearchDetails.data('details').quantidade_etapas == $j('#etapa').val())
+ if ($tableSearchDetails.data('details').quantidade_etapas == $j('#etapa').val()){
$tagElement.clone().addClass('center').html('Nota exame').appendTo($targetElement);
+ $tagElement.clone().addClass('center').html(safeUtf8Decode('Nota necessária no exame')).appendTo($targetElement);
+ }
}
$tagElement.clone().addClass('center').html('Falta').appendTo($targetElement);
@@ -779,6 +797,7 @@ function updateResourceRow(dataResponse) {
var $situacaoField = $j('#situacao-matricula-' + matriculaId + '-cc-' + ccId);
var $fieldNotaExame = $j('#nota-exame-matricula-' + matriculaId + '-cc-' + ccId);
+ var $fieldNN = $j('#nn-matricula-' + matriculaId + '-cc-' + ccId);
$situacaoField.html(dataResponse.situacao);
colorizeSituacaoTd($situacaoField.closest('td'), dataResponse.situacao);
@@ -788,9 +807,14 @@ function updateResourceRow(dataResponse) {
$fieldNotaExame.show();
$fieldNotaExame.focus();
+ $fieldNN.text(dataResponse.nota_necessaria_exame);
}
- else if($fieldNotaExame.val() == '' && safeToLowerCase(dataResponse.situacao) != 'em exame')
+ else if($fieldNotaExame.val() == '' && safeToLowerCase(dataResponse.situacao) != 'em exame'){
$fieldNotaExame.hide();
+ $fieldNN.text('-');
+ }else{
+ $fieldNN.text(dataResponse.nota_necessaria_exame);
+ }
}
function colorizeSituacaoTd(tdElement, situacao) {
diff --git a/ieducar/modules/Avaliacao/Service/Boletim.php b/ieducar/modules/Avaliacao/Service/Boletim.php
index 9a95c1a..0445c1b 100644
--- a/ieducar/modules/Avaliacao/Service/Boletim.php
+++ b/ieducar/modules/Avaliacao/Service/Boletim.php
@@ -2269,6 +2269,7 @@ class Avaliacao_Service_Boletim implements CoreExt_Configurable
*/
public function preverNotaRecuperacao($id)
{
+ /*
if (is_null($this->getRegra()->formulaRecuperacao) || !isset($this->_notasComponentes[$id])) {
return NULL;
}
@@ -2293,7 +2294,36 @@ class Avaliacao_Service_Boletim implements CoreExt_Configurable
$data['formulaValues']['E' . $nota->etapa] = $nota->nota;
}
- return $this->getRegra()->tabelaArredondamento->predictValue($formula, $data);
+ return $this->getRegra()->tabelaArredondamento->predictValue($formula, $data); */
+
+ if (is_null($this->getRegra()->formulaRecuperacao) || !isset($this->_notasComponentes[$id])) {
+ return NULL;
+ }
+
+ $notas = $this->_notasComponentes[$id];
+
+ unset($notas[$this->getOption('etapas')]);
+
+ $somaEtapas = array_sum(CoreExt_Entity::entityFilterAttr($notas, 'etapa', 'nota'));
+
+ $formula = $this->getRegra()->formulaRecuperacao;
+
+ $data = array(
+ 'Se' => $somaEtapas,
+ 'Et' => $this->getOption('etapas'),
+ 'Rc' => NULL );
+
+ foreach ($notas as $nota) {
+ $data['E' . $nota->etapa] = $nota->nota;
+ }
+
+ for($i = 0.1 ; $i<=10; $i+=0.1){
+ $data['Rc']=$i;
+ if ($this->getRegra()->formulaRecuperacao->execFormulaMedia($data) >= $this->getRegra()->mediaRecuperacao)
+ return $i;
+ }
+
+ return null;
}
/**
diff --git a/ieducar/modules/Avaliacao/Views/DiarioApiController.php b/ieducar/modules/Avaliacao/Views/DiarioApiController.php
index faa0403..d523f08 100644
--- a/ieducar/modules/Avaliacao/Views/DiarioApiController.php
+++ b/ieducar/modules/Avaliacao/Views/DiarioApiController.php
@@ -404,6 +404,7 @@ class DiarioApiController extends ApiCoreController
$this->appendResponse('componente_curricular_id', $this->getRequest()->componente_curricular_id);
$this->appendResponse('matricula_id', $this->getRequest()->matricula_id);
$this->appendResponse('situacao', $this->getSituacaoMatricula());
+ $this->appendResponse('nota_necessaria_exame', $this->getNotaNecessariaExame($this->getRequest()->componente_curricular_id));
}
@@ -752,7 +753,7 @@ class DiarioApiController extends ApiCoreController
$componente['nome'] = $this->safeString(strtoupper($_componente->get('nome')), false);
$componente['nota_atual'] = $this->getNotaAtual($etapa = null, $componente['id']);
$componente['nota_exame'] = $this->getNotaExame($componente['id']);
- //$componente['nota_necessaria_exame'] = $this->getNotaNecessariaExame($componente['id']);
+ $componente['nota_necessaria_exame'] = ($componente['situacao'] != 'Em andamento' ? $this->getNotaNecessariaExame($componente['id']) : null );
$componente['falta_atual'] = $this->getFaltaAtual($etapa = null, $componente['id']);
$componente['parecer_atual'] = $this->getParecerAtual($componente['id']);
$componente['situacao'] = $this->getSituacaoMatricula($componente['id']);
diff --git a/ieducar/modules/Portabilis/Assets/Version.php b/ieducar/modules/Portabilis/Assets/Version.php
index 449d9ef..ea0eeff 100644
--- a/ieducar/modules/Portabilis/Assets/Version.php
+++ b/ieducar/modules/Portabilis/Assets/Version.php
@@ -4,7 +4,7 @@
usado pelo metodos loadJavascript e loadStylesheet do helper Portabilis_View_Helper_Application */
class Portabilis_Assets_Version {
- const VERSION = '5';
+ const VERSION = '6';
}
?>
--
libgit2 0.21.2