Commit 7593dd0f authored by alinetenorio's avatar alinetenorio
Browse files

salvando anexos do evento temporariamente

parent 4fda321d
...@@ -80,8 +80,11 @@ class EventoController extends Controller ...@@ -80,8 +80,11 @@ class EventoController extends Controller
$user_id = Auth()->user()->id; $user_id = Auth()->user()->id;
//dd($user_id); //dd($user_id);
// validar datas nulas antes, pois pode gerar um bug
//--Salvando os anexos da submissão temporariamente
$evento = $this->armazenarAnexosTemp($request);
// validar datas nulas antes, pois pode gerar um bug
if( if(
$request->inicioSubmissao == null || $request->inicioSubmissao == null ||
$request->fimSubmissao == null || $request->fimSubmissao == null ||
...@@ -94,13 +97,15 @@ class EventoController extends Controller ...@@ -94,13 +97,15 @@ class EventoController extends Controller
'nome' => ['required', 'string'], 'nome' => ['required', 'string'],
'descricao' => ['required', 'string'], 'descricao' => ['required', 'string'],
'tipo' => ['required', 'string'], 'tipo' => ['required', 'string'],
'natureza' => ['required'], 'natureza' => ['required'],
'descricao' => ['required'],
'coordenador_id' => ['required'],
'inicioSubmissao' => ['required', 'date'], 'inicioSubmissao' => ['required', 'date'],
'fimSubmissao' => ['required', 'date'], 'fimSubmissao' => ['required', 'date'],
'inicioRevisao' => ['required', 'date'], 'inicioRevisao' => ['required', 'date'],
'fimRevisao' => ['required', 'date'], 'fimRevisao' => ['required', 'date'],
'resultado' => ['required', 'date'], 'resultado' => ['required', 'date'],
'pdfEdital' => ['required', 'file', 'mimes:pdf', 'max:2000000'], 'pdfEdital' => [($request->pdfEditalPreenchido!=='sim'?'required':''), 'file', 'mimes:pdf', 'max:2000000'],
'modeloDocumento' => ['file', 'mimes:zip,doc,docx,odt,pdf', 'max:2000000'], 'modeloDocumento' => ['file', 'mimes:zip,doc,docx,odt,pdf', 'max:2000000'],
]); ]);
} }
...@@ -112,28 +117,31 @@ class EventoController extends Controller ...@@ -112,28 +117,31 @@ class EventoController extends Controller
'descricao' => ['required', 'string'], 'descricao' => ['required', 'string'],
'tipo' => ['required', 'string'], 'tipo' => ['required', 'string'],
'natureza' => ['required'], 'natureza' => ['required'],
'descricao' => ['required'],
'coordenador_id' => ['required'],
'inicioSubmissao' => ['required', 'date', 'after:' . $yesterday], 'inicioSubmissao' => ['required', 'date', 'after:' . $yesterday],
'fimSubmissao' => ['required', 'date', 'after:' . $request->inicioSubmissao], 'fimSubmissao' => ['required', 'date', 'after:' . $request->inicioSubmissao],
'inicioRevisao' => ['required', 'date', 'after:' . $yesterday], 'inicioRevisao' => ['required', 'date', 'after:' . $yesterday],
'fimRevisao' => ['required', 'date', 'after:' . $request->inicioRevisao], 'fimRevisao' => ['required', 'date', 'after:' . $request->inicioRevisao],
'resultado' => ['required', 'date', 'after:' . $yesterday], 'resultado' => ['required', 'date', 'after:' . $yesterday],
'pdfEdital' => ['required', 'file', 'mimes:pdf', 'max:2000000'], 'pdfEdital' => [($request->pdfEditalPreenchido!=='sim'?'required':''), 'file', 'mimes:pdf', 'max:2000000'],
'modeloDocumento' => ['file', 'mimes:zip,doc,docx,odt,pdf', 'max:2000000'], 'modeloDocumento' => ['file', 'mimes:zip,doc,docx,odt,pdf', 'max:2000000'],
]); ]);
$evento = Evento::create([ //$evento = Evento::create([
'nome' => $request->nome, $evento['nome'] = $request->nome;
'descricao' => $request->descricao, $evento['descricao'] = $request->descricao;
'tipo' => $request->tipo, $evento['tipo'] = $request->tipo;
'natureza_id' => $request->natureza, $evento['natureza_id'] = $request->natureza;
'inicioSubmissao' => $request->inicioSubmissao, $evento['inicioSubmissao'] = $request->inicioSubmissao;
'fimSubmissao' => $request->fimSubmissao, $evento['fimSubmissao'] = $request->fimSubmissao;
'inicioRevisao' => $request->inicioRevisao, $evento['inicioRevisao'] = $request->inicioRevisao;
'fimRevisao' => $request->fimRevisao, $evento['fimRevisao'] = $request->fimRevisao;
'resultado' => $request->resultado, $evento['resultado'] = $request->resultado;
'coordenadorId' => $request->coordenador_id, $evento['coordenadorId'] = $request->coordenador_id;
'criador_id' => $user_id, $evento['criador_id'] = $user_id;
]); $evento['anexosStatus'] = 'final';
//dd($evento); //dd($evento);
// $user = User::find($request->coordenador_id); // $user = User::find($request->coordenador_id);
// $user->coordenadorComissao()->editais()->save($evento); // $user->coordenadorComissao()->editais()->save($evento);
...@@ -147,12 +155,16 @@ class EventoController extends Controller ...@@ -147,12 +155,16 @@ class EventoController extends Controller
//$evento->coordenadorId = Auth::user()->id; //$evento->coordenadorId = Auth::user()->id;
$pdfEdital = $request->pdfEdital; //-- Salvando anexos finais
$path = 'pdfEdital/' . $evento->id . '/';
$nome = "edital.pdf";
Storage::putFileAs($path, $pdfEdital, $nome);
$evento->pdfEdital = $path . $nome;
if(isset($request->pdfEdital)){
$pdfEdital = $request->pdfEdital;
$path = 'pdfEdital/' . $evento->id . '/';
$nome = "edital.pdf";
Storage::putFileAs($path, $pdfEdital, $nome);
$evento->pdfEdital = $path . $nome;
}
if(isset($request->modeloDocumento)){ if(isset($request->modeloDocumento)){
$modeloDocumento = $request->modeloDocumento; $modeloDocumento = $request->modeloDocumento;
$extension = $modeloDocumento->extension(); $extension = $modeloDocumento->extension();
...@@ -162,9 +174,7 @@ class EventoController extends Controller ...@@ -162,9 +174,7 @@ class EventoController extends Controller
$evento->modeloDocumento = $path . $nome; $evento->modeloDocumento = $path . $nome;
} }
$evento->save(); $evento->save();
// $user = Auth::user(); // $user = Auth::user();
...@@ -175,6 +185,35 @@ class EventoController extends Controller ...@@ -175,6 +185,35 @@ class EventoController extends Controller
return redirect()->route('coord.home'); return redirect()->route('coord.home');
} }
public function armazenarAnexosTemp(Request $request){
//---Anexos do Projeto
$eventoTemp = Evento::where('criador_id', Auth::user()->id)->where('anexosStatus', 'temporario')
->orderByDesc('updated_at')->first();
if($eventoTemp == null){
$eventoTemp = new Evento();
$eventoTemp->criador_id = Auth::user()->id;
$eventoTemp->anexosStatus = 'temporario';
$eventoTemp->save();
}
if(!(is_null($request->pdfEdital)) ) {
$pasta = 'pdfEdital/' . $eventoTemp->id;
$eventoTemp->pdfEdital = Storage::putFileAs($pasta, $request->pdfEdital, 'edital.pdf');
}
if (!(is_null($request->modeloDocumento))) {
$extension = $request->modeloDocumento->extension();
$path = 'modeloDocumento/' . $eventoTemp->id;
$nome = "modelo" . "." . $extension;
$eventoTemp->modeloDocumento = Storage::putFileAs($path, $request->modeloDocumento, $nome);
}
$eventoTemp->update();
return $eventoTemp;
}
/** /**
* Display the specified resource. * Display the specified resource.
* *
......
...@@ -859,11 +859,17 @@ class TrabalhoController extends Controller ...@@ -859,11 +859,17 @@ class TrabalhoController extends Controller
} }
public function baixarAnexoTemp($eventoId, $nomeAnexo) { public function baixarAnexoTemp($eventoId, $nomeAnexo) {
$proponenteId = Auth::user()->id;
$anexosTemp = AnexosTemp::where('eventoId', $eventoId)->where('proponenteId', Auth::user()->id)
$anexosTemp = AnexosTemp::where('eventoId', $eventoId)->where('proponenteId', $proponenteId)
->orderByDesc('updated_at')->first(); ->orderByDesc('updated_at')->first();
return Storage::download($anexosTemp->$nomeAnexo); return Storage::download($anexosTemp->$nomeAnexo);
} }
public function baixarEventoTemp($nomeAnexo){
$eventoTemp = Evento::where('criador_id', Auth::user()->id)->where('anexosStatus', 'temporario')
->orderByDesc('updated_at')->first();
return Storage::download($eventoTemp->$nomeAnexo);
}
} }
...@@ -32,6 +32,7 @@ class CreateEventosTable extends Migration ...@@ -32,6 +32,7 @@ class CreateEventosTable extends Migration
$table->integer('coordenadorId')->nullable(); $table->integer('coordenadorId')->nullable();
$table->string('pdfEdital')->nullable(); $table->string('pdfEdital')->nullable();
$table->string('modeloDocumento')->nullable(); $table->string('modeloDocumento')->nullable();
$table->string('anexosStatus')->nullable();
}); });
} }
......
...@@ -74,12 +74,17 @@ ...@@ -74,12 +74,17 @@
<div class="row justify-content-center"> <div class="row justify-content-center">
<div class="col-sm-12"> <div class="col-sm-12">
<label for="coordenador_id" class="col-form-label">{{ __('Coordenador*:') }}</label> <label for="coordenador_id" class="col-form-label">{{ __('Coordenador*:') }}</label>
<select class="form-control @error('funcaoParticipante') is-invalid @enderror" id="coordenador_id" name="coordenador_id"> <select class="form-control @error('coordenador_id') is-invalid @enderror" id="coordenador_id" name="coordenador_id">
<option value="" disabled selected hidden>-- Coordenador da Comissão Avaliadora --</option> <option value="" disabled selected hidden>-- Coordenador da Comissão Avaliadora --</option>
@foreach($coordenadors as $coordenador) @foreach($coordenadors as $coordenador)
<option @if(old('coordenador_id')==$coordenador->id ) selected @endif value="{{$coordenador->id}}">{{$coordenador->user->name}}</option> <option @if(old('coordenador_id')==$coordenador->id ) selected @endif value="{{$coordenador->id}}">{{$coordenador->user->name}}</option>
@endforeach @endforeach
</select> </select>
@error('coordenador_id')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div> </div>
</div> </div>
<hr> <hr>
...@@ -159,8 +164,12 @@ ...@@ -159,8 +164,12 @@
<div class="row justify-content-center" style="margin-top:10px"> <div class="row justify-content-center" style="margin-top:10px">
<div class="col-sm-6"> <div class="col-sm-6">
<div class="form-group"> <div class="form-group">
<label for="pdfEdital">Anexar edital*:</label> <label for="pdfEdital">Anexar edital*:</label>
<input type="file" class="form-control-file @error('pdfEdital') is-invalid @enderror" name="pdfEdital" value="{{ old('pdfEdital') }}" id="pdfEdital"> @if(old('pdfEditalPreenchido') != null)
<a id="pdfEditalTemp" href="{{ route('baixar.evento.temp', ['nomeAnexo' => 'pdfEdital' ])}}">Arquivo atual</a>
@endif
<input type="hidden" id="pdfEditalPreenchido" name="pdfEditalPreenchido" value="{{ old('pdfEditalPreenchido') }}" >
<input type="file" class="form-control-file @error('pdfEdital') is-invalid @enderror" name="pdfEdital" value="{{ old('pdfEdital') }}" id="pdfEdital" onchange="exibirAnexoTemp(this)">
<small>O arquivo selecionado deve ser no formato PDF de até 2mb.</small> <small>O arquivo selecionado deve ser no formato PDF de até 2mb.</small>
@error('pdfEdital') @error('pdfEdital')
<span class="invalid-feedback" role="alert"> <span class="invalid-feedback" role="alert">
...@@ -173,7 +182,11 @@ ...@@ -173,7 +182,11 @@
<div class="col-sm-6"> <div class="col-sm-6">
<div class="form-group"> <div class="form-group">
<label for="modeloDocumento">Anexar arquivo com os modelos de documentos do edital:</label> <label for="modeloDocumento">Anexar arquivo com os modelos de documentos do edital:</label>
<input type="file" class="form-control-file @error('modeloDocumento') is-invalid @enderror" name="modeloDocumento" value="{{ old('modeloDocumento') }}" id="modeloDocumento"> @if(old('modeloDocumentoPreenchido') != null)
<a id="modeloDocumentoTemp" href="{{ route('baixar.evento.temp', ['nomeAnexo' => 'modeloDocumento' ])}}">Arquivo atual</a>
@endif
<input type="hidden" id="modeloDocumentoPreenchido" name="modeloDocumentoPreenchido" value="{{ old('modeloDocumentoPreenchido') }}" >
<input type="file" class="form-control-file @error('modeloDocumento') is-invalid @enderror" name="modeloDocumento" value="{{ old('modeloDocumento') }}" id="modeloDocumento" onchange="exibirAnexoTemp(this)">
<small>O arquivo selecionado deve ter até 2mb.</small> <small>O arquivo selecionado deve ter até 2mb.</small>
@error('modeloDocumento') @error('modeloDocumento')
<span class="invalid-feedback" role="alert"> <span class="invalid-feedback" role="alert">
...@@ -199,3 +212,19 @@ ...@@ -199,3 +212,19 @@
</div> </div>
@endsection @endsection
@section('javascript')
<script type="text/javascript">
function exibirAnexoTemp(file){
console.log(file.id);
if(file.id === "pdfEdital"){
var pdfEditalPreenchido = document.getElementById('pdfEditalPreenchido');
pdfEditalPreenchido.value = "sim";
}
if(file.id === "modeloDocumento"){
var modeloDocumentoPreenchido = document.getElementById('modeloDocumentoPreenchido');
modeloDocumentoPreenchido.value = "sim";
}
}
</script>
@endsection
\ No newline at end of file
...@@ -123,6 +123,7 @@ Route::group(['middleware' => ['isTemp', 'auth', 'verified']], function(){ ...@@ -123,6 +123,7 @@ Route::group(['middleware' => ['isTemp', 'auth', 'verified']], function(){
Route::get('/baixar/anexo-planilha/{id}','TrabalhoController@baixarAnexoPlanilha' )->name('baixar.anexo.planilha'); Route::get('/baixar/anexo-planilha/{id}','TrabalhoController@baixarAnexoPlanilha' )->name('baixar.anexo.planilha');
Route::get('/baixar/plano-de-trabalho/{id}', 'ArquivoController@baixarPlano' )->name('baixar.plano'); Route::get('/baixar/plano-de-trabalho/{id}', 'ArquivoController@baixarPlano' )->name('baixar.plano');
Route::get('/baixar/anexo-temp/{eventoId}/{nomeAnexo}', 'TrabalhoController@baixarAnexoTemp' )->name('baixar.anexo.temp'); Route::get('/baixar/anexo-temp/{eventoId}/{nomeAnexo}', 'TrabalhoController@baixarAnexoTemp' )->name('baixar.anexo.temp');
Route::get('/baixar/evento-temp/{nomeAnexo}', 'TrabalhoController@baixarEventoTemp' )->name('baixar.evento.temp');
}); });
Route::prefix('usuarios')->name('admin.')->group(function(){ Route::prefix('usuarios')->name('admin.')->group(function(){
......
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