Commit a90fa009 authored by luisfrl's avatar luisfrl
Browse files

Merge branch 'master' into feature/case-sensitive-email

No related merge requests found
Showing with 163 additions and 152 deletions
+163 -152
......@@ -114,7 +114,7 @@ class AdministradorController extends Controller
// $participantes = User::whereIn('id', $participantesUsersIds)->get();
return view('administrador.analisar')->with([
'trabalhos' => $trabalhos->paginate(20),
'trabalhos' => $trabalhos->paginate(9999),
'evento' => $evento,
'funcaoParticipantes' => $funcaoParticipantes,
'column' => $request->column,
......
......@@ -188,4 +188,13 @@ class AvaliacaoRelatorioController extends Controller
return redirect()->back();
}
public function atualizarNota($id, Request $request){
$aval = AvaliacaoRelatorio::find($id);
$aval->nota = $request->nota;
$aval->nota_apresentacao = $request->nota_apresentacao;
$aval->save();
return redirect()->back()->with(['sucesso' => "Notas avaliadas por ".$aval->user->name." atualizadas!"]);
}
}
......@@ -22,7 +22,7 @@ class StoreTrabalho extends FormRequest
protected function prepareForValidation()
{
$func = function($value) {
$func = function ($value) {
return ['cpf' => $value];
};
$this->merge([
......@@ -38,101 +38,99 @@ class StoreTrabalho extends FormRequest
*/
public function rules()
{
// dd($this->all());
//dd($this->all());
$evento = Evento::find($this->editalId);
$rules = [];
if($this->has('marcado')){
if ($this->has('marcado')) {
$rules['cpfs.*.cpf'] = ['distinct', 'nullable'];
foreach ($this->get('marcado') as $key => $value) {
if( intval($value) == $key){
if (intval($value) == $key) {
//user
$rules['name.'.$value] = ['required', 'string'];
$rules['email.'.$value] = ['required', 'string'];
$rules['instituicao.'.$value] = ['required', 'string'];
$rules['cpf.'.$value] = ['required', 'string'];
$rules['celular.'.$value] = ['required', 'string'];
if($this->estudante[$value] === true){
$rules['name.' . $value] = ['required', 'string'];
$rules['email.' . $value] = ['required', 'string'];
$rules['instituicao.' . $value] = ['required', 'string'];
$rules['cpf.' . $value] = ['required', 'string'];
$rules['celular.' . $value] = ['required', 'string'];
if ($this->estudante[$value] == true) {
//endereco
$rules['rua.'.$value] = ['required', 'string'];
$rules['numero.'.$value] = ['required', 'string'];
$rules['bairro.'.$value] = ['required', 'string'];
$rules['cidade.'.$value] = ['required', 'string'];
$rules['uf.'.$value] = ['required', 'string'];
$rules['cep.'.$value] = ['required', 'string'];
$rules['rua.' . $value] = ['required', 'string'];
$rules['numero.' . $value] = ['required', 'string'];
$rules['bairro.' . $value] = ['required', 'string'];
$rules['cidade.' . $value] = ['required', 'string'];
$rules['uf.' . $value] = ['required', 'string'];
$rules['cep.' . $value] = ['required', 'string'];
//participante
$rules['rg.'.$value] = ['required', 'string'];
$rules['data_de_nascimento.'.$value] = ['required', 'string'];
$rules['curso.'.$value] = ['required', 'string'];
$rules['rg.' . $value] = ['required', 'string'];
$rules['data_de_nascimento.' . $value] = ['required', 'string'];
$rules['curso.' . $value] = ['required', 'string'];
//participantes da pesquisa
if($evento->natureza_id != 3){
$rules['turno.'.$value] = ['required', 'string'];
$rules['ordem_prioridade.'.$value] = ['required', 'string'];
$rules['periodo_atual.'.$value] = ['required', 'string'];
$rules['total_periodos.'.$value] = ['required', 'string'];
if ($evento->natureza_id != 3) {
$rules['turno.' . $value] = ['required', 'string'];
$rules['ordem_prioridade.' . $value] = ['required', 'string'];
$rules['periodo_atual.' . $value] = ['required', 'string'];
$rules['total_periodos.' . $value] = ['required', 'string'];
$rules['media_do_curso.' . $value] = ['required', 'string'];
}
if($evento->tipo != "CONTINUO" && ($this->funcaoParticipante[$value] == "Voluntário" || $this->funcaoParticipante[$value] == "Bolsista")){
$rules['anexoPlanoTrabalho.'.$value] = ['required'];
$rules['nomePlanoTrabalho.'.$value] = ['required', 'string'];
}
$rules['anexoPlanoTrabalho.' . $value] = ['required'];
$rules['nomePlanoTrabalho.' . $value] = ['required', 'string'];
}
}
// if($evento->tipo != "PIBEX") {
// $rules['media_do_curso.' . $value] = ['required', 'string'];
// }
}
}
} else if($evento->tipo != "CONTINUO" ){
} else if ($evento->tipo != "CONTINUO") {
$rules['anexoPlanoTrabalho'] = ['required'];
$rules['nomePlanoTrabalho'] = ['required', 'string'];
}
if($this->has('rascunho')) {
if ($this->has('rascunho')) {
$rules = [];
return $rules;
} else {
//anexos
if($evento->nome_docExtra != null ){
$rules['anexo_docExtra'] = [Rule::requiredIf($evento->obrigatoriedade_docExtra == true),'file', 'mimes:zip,doc,docx,pdf', 'max:2048'];
if ($evento->nome_docExtra != null) {
$rules['anexo_docExtra'] = [Rule::requiredIf($evento->obrigatoriedade_docExtra == true), 'file', 'mimes:zip,doc,docx,pdf', 'max:2048'];
}
if($evento->tipo!="PIBEX" && $evento->tipo!="CONTINUO"){
if ($evento->tipo != "PIBEX" && $evento->tipo != "CONTINUO") {
//dd($this->preenchimentoFormFlag);
$rules['anexoPlanilhaPontuacao'] = ['required'];
$rules['anexoLattesCoordenador'] = ['required', 'mimes:pdf'];
$rules['anexoGrupoPesquisa'] = ['required', 'mimes:pdf'];
$rules['anexoAutorizacaoComiteEtica'] = [Rule::requiredIf($this->autorizacaoFlag == 'sim')];
$rules['justificativaAutorizacaoEtica']= [Rule::requiredIf($this->autorizacaoFlag == 'nao')];
$rules['pontuacaoPlanilha'] = ['required', 'string'];
$rules['linkGrupoPesquisa'] = ['required', 'string'];
$rules['preenchimentoFormFlag'] = [Rule::in(['sim']), 'required'];
$rules['anexo_acao_afirmativa'] = [Rule::requiredIf($this->radioAcoesAfirmativas == 'sim')];
$rules['anexoPlanilhaPontuacao'] = ['required'];
$rules['anexoLattesCoordenador'] = ['required', 'mimes:pdf'];
$rules['anexoGrupoPesquisa'] = ['required', 'mimes:pdf'];
$rules['anexoAutorizacaoComiteEtica'] = [Rule::requiredIf($this->autorizacaoFlag == 'sim')];
$rules['justificativaAutorizacaoEtica'] = [Rule::requiredIf($this->autorizacaoFlag == 'nao')];
$rules['pontuacaoPlanilha'] = ['required', 'string'];
$rules['linkGrupoPesquisa'] = ['required', 'string'];
$rules['preenchimentoFormFlag'] = [Rule::in(['sim']), 'required'];
$rules['anexo_acao_afirmativa'] = [Rule::requiredIf($this->radioAcoesAfirmativas == 'sim')];
}
$rules['editalId'] = ['required', 'string'];
$rules['marcado.*'] = ['required'];
$rules['titulo'] = ['required', 'string'];
$rules['grande_area_id'] = [Rule::requiredIf($evento->natureza_id != 3), 'string'];
$rules['area_id'] = [Rule::requiredIf($evento->natureza_id != 3), 'string'];
if($evento->natureza_id == 3){
$rules['editalId'] = ['required', 'string'];
$rules['marcado.*'] = ['required'];
$rules['titulo'] = ['required', 'string'];
$rules['grande_area_id'] = [Rule::requiredIf($evento->natureza_id != 3), 'string'];
$rules['area_id'] = [Rule::requiredIf($evento->natureza_id != 3), 'string'];
if ($evento->natureza_id == 3) {
$rules['area_tematica_id'] = ['required', 'string'];
$rules['ods'] = ['required'];
}
$rules['linkLattesEstudante'] = ['required', 'string'];
if($evento->tipo!="CONTINUO"){
if ($evento->tipo != "CONTINUO") {
$rules['anexoDecisaoCONSU'] = [Rule::requiredIf($evento->consu), 'mimes:pdf'];
$rules['anexoProjeto'] = ['required', 'mimes:pdf'];
} else {
......@@ -142,42 +140,42 @@ class StoreTrabalho extends FormRequest
return $rules;
}
}
public function messages()
{
return [
'titulo.required' => 'O :attribute é obrigatório',
'marcado.*.required' => 'Por favor selcione algum participante, é obrigatório',
'grande_area_id.required' => 'O campo grande área é obrigatório',
'anexoPlanoTrabalho.*.required' => 'O :attribute é obrigatório',
'anexoProjeto.required' => 'O :attribute é obrigatório',
'cpf.*.required' => 'O cpf é obrigatório',
'cpfs.*.cpf.distinct' => 'O integrante com CPF :input não pode ser adicionado mais de uma vez',
'name.*.required' => 'O :attribute é obrigatório',
'email.*.required' => 'O :attribute é obrigatório',
'instituicao.*.required' => 'O :attribute é obrigatório',
'emailParticipante.*.required' => 'O :attribute é obrigatório',
'celular.*.required' => 'O :attribute é obrigatório',
'rua.*.required' => 'O :attribute é obrigatório',
'numero.*.required' => 'O :attribute é obrigatório',
'bairro.*.required' => 'O :attribute é obrigatório',
'cidade.*.required' => 'O :attribute é obrigatório',
'uf.*.required' => 'O :attribute é obrigatório',
'cep.*.required' => 'O :attribute é obrigatório',
'complemento.*.required' => 'O :attribute é obrigatório',
'rg.*.required' => 'O :attribute é obrigatório',
'data_de_nascimento.*.required' => 'O :attribute é obrigatório',
'curso.*.required' => 'O :attribute é obrigatório',
'turno.*.required' => 'O :attribute é obrigatório',
'ordem_prioridade.*.required' => 'O :attribute é obrigatório',
'periodo_atual.*.required' => 'O :attribute é obrigatório',
'total_periodos.*.required' => 'O :attribute é obrigatório',
'media_do_curso.*.required' => 'O :attribute é obrigatório',
'anexoPlanoTrabalho.*.required' => 'O :attribute é obrigatório',
'nomePlanoTrabalho.*.required' => 'O :attribute é obrigatório',
'cpf.*.required' => 'O cpf é obrigatório',
'cpfs.*.cpf.distinct' => 'O integrante com CPF :input não pode ser adicionado mais de uma vez',
'name.*.required' => 'O :attribute é obrigatório',
'email.*.required' => 'O :attribute é obrigatório',
'instituicao.*.required' => 'O :attribute é obrigatório',
'emailParticipante.*.required' => 'O :attribute é obrigatório',
'celular.*.required' => 'O :attribute é obrigatório',
'rua.*.required' => 'O :attribute é obrigatório',
'numero.*.required' => 'O :attribute é obrigatório',
'bairro.*.required' => 'O :attribute é obrigatório',
'cidade.*.required' => 'O :attribute é obrigatório',
'uf.*.required' => 'O :attribute é obrigatório',
'cep.*.required' => 'O :attribute é obrigatório',
'complemento.*.required' => 'O :attribute é obrigatório',
'rg.*.required' => 'O :attribute é obrigatório',
'data_de_nascimento.*.required' => 'O :attribute é obrigatório',
'curso.*.required' => 'O :attribute é obrigatório',
'turno.*.required' => 'O :attribute é obrigatório',
'ordem_prioridade.*.required' => 'O :attribute é obrigatório',
'periodo_atual.*.required' => 'O :attribute é obrigatório',
'total_periodos.*.required' => 'O :attribute é obrigatório',
'media_do_curso.*.required' => 'O :attribute é obrigatório',
'anexoPlanoTrabalho.*.required' => 'O :attribute é obrigatório',
'nomePlanoTrabalho.*.required' => 'O :attribute é obrigatório',
'area_id' => "area id",
'area_tematica_id' => 'area tematica id',
'ods.*' => 'Deve ser selecionada pelo menos uma ODS',
......@@ -186,4 +184,4 @@ class StoreTrabalho extends FormRequest
'anexo_SIPAC.*' => 'anexo_SIPAC'
];
}
}
\ No newline at end of file
}
......@@ -14,53 +14,66 @@
<h5><b>Plano:</b> {{$arquivo->titulo}}</h5>
</div>
<div class="row">
<form action="{{route('coordenador.atualizar.avaliacao', ['id' => $aval->id])}}" method="POST">
<div class="row">
@csrf
<div class="col-sm-1 padEsquerda">
<label for="lattes" class="col-form-label font-tam"
style="font-weight: bold">{{ __('Nota: ') }}</label>
</div>
<div class="col-sm-5 text-center padEsquerda">
<input class="form-control" name="nota" type="number"
style="width: 60px" @if(isset($aval)) value="{{$aval->nota}}" @endif>
</div>
<div class="col-sm-1 padEsquerda">
<label for="lattes" class="col-form-label font-tam"
style="font-weight: bold">{{ __('Nota: ') }}</label>
</div>
<div class="col-sm-5 text-center padEsquerda">
<input class="form-control" name="nota" type="number"
style="width: 60px" @if(isset($aval)) value="{{$aval->nota}}" @endif disabled>
<div class="col-sm-2 padEsquerda">
<label for="lattes" class="col-form-label font-tam"
style="font-weight: bold">{{ __('Apresentação: ') }}</label>
</div>
<div class="col-sm-4 text-center padEsquerda">
<input class="form-control" name="nota_apresentacao" type="number"
style="width: 60px" @if(isset($aval)) value="{{$aval->nota_apresentacao}}" @endif>
</div>
</div>
<div class="row">
<div class="col-sm-12 padEsquerda">
<label for="lattes" class="col-form-label font-tam"
style="font-weight: bold">{{ __('Comentário: ') }}</label>
</div>
<div class="col-sm-2 padEsquerda">
<label for="lattes" class="col-form-label font-tam"
style="font-weight: bold">{{ __('Apresentação: ') }}</label>
</div>
<div class="col-sm-4 text-center padEsquerda">
<input class="form-control" name="nota" type="number"
style="width: 60px" @if(isset($aval)) value="{{$aval->nota_apresentacao}}" @endif disabled>
</div>
</div>
<div class="row">
<div class="col-sm-12 padEsquerda">
<label for="lattes" class="col-form-label font-tam"
style="font-weight: bold">{{ __('Comentário: ') }}</label>
<div class="row">
<div class="col-sm-12 padEsquerda">
<textarea class="col-md-12" minlength="20" id="comentario"
name="comentario"
style="border-radius:5px 5px 0 0;height: 71px;"
disabled>@if(isset($aval)){{$aval->comentario}}</textarea>@else
</textarea>@endif
</div>
</div>
<div class="row">
<div class="col-10">
</div>
<div class="row">
<div class="col-sm-12 padEsquerda">
<textarea class="col-md-12" minlength="20" id="comentario"
name="comentario"
style="border-radius:5px 5px 0 0;height: 71px;"
disabled>@if(isset($aval)){{$aval->comentario}}</textarea>@else
</textarea>@endif
</div>
</div>
<div class="row">
<label for="lattes" class="col-form-label font-tam"
style="font-weight: bold;margin-right: 5px;">{{ __('Arquivo: ') }}</label>
@if(isset($aval))
@if($aval->arquivoAvaliacao != null)
<label for="lattes" class="col-form-label font-tam"
style="font-weight: bold;margin-right: 5px;">{{ __('Arquivo: ') }}</label>
@if(isset($aval))
@if($aval->arquivoAvaliacao != null)
<a href="{{route('download', ['file' => $aval->arquivoAvaliacao])}}" target="_new" >
<img class="" src="{{asset('img/icons/pdf.ico')}}" style="width:40px">
</a>
@endif
@endif
@endif
@endif
</div>
<div class='col-2' style='margin-top:1%; padding-left:8%;'>
<button type='submit' class='btn btn-info btn-sm'>Editar</button>
</div>
</form>
</div>
</div>
<style>
.padEsquerda {
......
......@@ -221,29 +221,14 @@
let email = document.getElementById("email"+id);
let funcaoParticipantes = <?php echo json_encode($funcaoParticipantes); ?>;
let nome_funcao = get_funcao(funcao.value);
//pega o nome da função do participante
for (var i = 0; i < funcaoParticipantes.length; i++) {
if(funcaoParticipantes[i].id == funcao.value){
nome_funcao = funcaoParticipantes[i].nome;
break;
}
}
let curso = document.getElementById('curso['+id+']').value;
if(nome.value != ""){
estudante.value = true;
if(planoTrabalho != null && planoTrabalho.value != ""){
nomePlano.innerHTML = ` <strong>Nome: </strong>${nome.value}<br>
<strong>E-mail: </strong>${email.value} <br>
<strong>Plano: </strong>${planoTrabalho.value}<br>
<strong>CPF: </strong>${cpf.value} <br>
<strong>Função: </strong>${nome_funcao}`;
}else {
nomePlano.innerHTML = ` <strong>Nome: </strong>${nome.value}<br>
<strong>E-mail: </strong>${email.value} <br>
<strong>CPF: </strong>${cpf.value} <br>
<strong>Função: </strong>${nome_funcao}`;
}
estudante.value = true;
nomePlano.innerHTML = exibirInformacoesGeraisDoIntegrante(nome.value, email.value, celular.value, curso, nome_funcao);
if (nome_funcao == "Bolsista") {
nomePlano.innerHTML += `<br><strong>Plano: </strong>${planoTrabalho.value !== null ? planoTrabalho.value : ''}`;
}
}else if(data != null) {
estudante.value = false;
......@@ -252,11 +237,9 @@
instituicao.value = data[0].instituicao;
cpf.value = data[0].cpf;
celular.value = data[0].celular;
nomePlano.innerHTML = ` <strong>Nome: </strong>${nome.value}<br>
<strong>E-mail: </strong>${email.value} <br>
<strong>CPF: </strong>${cpf.value} <br>
<strong>Função: </strong>${data[1].nome}`;
nome_funcao = data[1].nome;
curso = data[2].curso;
nomePlano.innerHTML = exibirInformacoesGeraisDoIntegrante(nome.value, email.value, celular.value, curso, nome_funcao);
}
if(id >=1){
document.getElementById("cancelar"+(id-1)).setAttribute("disabled", true);
......@@ -268,10 +251,16 @@
document.getElementById("quantidadeModais").value = modal_id;
document.getElementById("part"+id).removeAttribute("hidden");
//document.getElementById("exampleModal"+id).modal('hide');
}
function exibirInformacoesGeraisDoIntegrante(nome, email, celular, curso, nomeFuncao) {
return `<strong>Nome: </strong>${nome}<br>
<strong>E-mail: </strong>${email}<br>
<strong>Telefone: </strong>${celular !== null ? celular : ''}<br>
<strong>Curso: </strong>${curso !== null ? curso : ''}<br>
<strong>Função: </strong>${nomeFuncao}`;
}
function desmarcar(id){
if(id >= 1){;
document.getElementById("cancelar"+(id-1)).removeAttribute("disabled");
......
......@@ -72,7 +72,7 @@
</td>
<td>Parcial</td>
<td>@if($aval->nota == null) Pendente @else {{$aval->nota}} @endif</td>
<td>@if($aval->nota_apresentacao == null) Pendente @else {{$aval->nota}} @endif</td>
<td>@if($aval->nota_apresentacao == null) Pendente @else {{$aval->nota_apresentacao}} @endif</td>
<td><a href="" data-toggle="modal" data-target="#modalVizuRelatParcial{{$aval->id}}" class="button">Visualizar</a></td>
</tr>
......@@ -105,7 +105,7 @@
</td>
<td>Final</td>
<td>@if($aval->nota == null) Pendente @else {{$aval->nota}} @endif</td>
<td>@if($aval->nota_apresentacao == null) Pendente @else {{$aval->nota}} @endif</td>
<td>@if($aval->nota_apresentacao == null) Pendente @else {{$aval->nota_apresentacao}} @endif</td>
<td><a href="" data-toggle="modal" data-target="#modalVizuRelatFinal{{$aval->id}}" class="button">Visualizar</a></td>
</tr>
<!-- Modal visualizar informações participante -->
......
......@@ -361,4 +361,6 @@ Route::prefix('coordenador')->name('coordenador.')->group(function () {
Route::post('/atribuir', 'TrabalhoController@atribuir')->name('atribuir');
Route::post('/atribuir', 'TrabalhoController@atribuir')->name('atribuir');
Route::post('/resposta-solicitacao-desligamento/{desligamento_id}', 'CoordenadorComissaoController@respostaDesligamento')->name('resposta.desligamento');
Route::post('/analisarProposta/{id}/atualizar', 'AvaliacaoRelatorioController@atualizarNota')->name('atualizar.avaliacao');
});
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment