Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Walter Felipe
submeta
Commits
79094c42
Unverified
Commit
79094c42
authored
May 31, 2021
by
Gabriel Antônio da Silva
Committed by
GitHub
May 31, 2021
Browse files
Merge pull request #96 from Gabriel-31415/master
numero de participantes
parents
0d2f7c81
8a8c2861
Changes
10
Hide whitespace changes
Inline
Side-by-side
app/Evento.php
View file @
79094c42
...
...
@@ -15,7 +15,7 @@ class Evento extends Model
'nome'
,
'descricao'
,
'tipo'
,
'inicioSubmissao'
,
'fimSubmissao'
,
'inicioRevisao'
,
'fimRevisao'
,
'resultado_final'
,
'resultado_preliminar'
,
'coordenadorId'
,
'numMaxTrabalhos'
,
'numMaxCoautores'
,
'hasResumo'
,
'criador_id'
'numMaxTrabalhos'
,
'numMaxCoautores'
,
'hasResumo'
,
'criador_id'
,
'numParticipantes'
];
public
function
endereco
(){
...
...
app/Http/Controllers/EventoController.php
View file @
79094c42
...
...
@@ -113,6 +113,7 @@ class EventoController extends Controller
'tipo'
=>
[
'required'
,
'string'
],
'natureza'
=>
[
'required'
],
'coordenador_id'
=>
[
'required'
],
'numParticipantes'
=>
[
'required'
],
'inicioSubmissao'
=>
[
'required'
,
'date'
],
'fimSubmissao'
=>
[
'required'
,
'date'
],
'inicioRevisao'
=>
[
'required'
,
'date'
],
...
...
@@ -135,6 +136,7 @@ class EventoController extends Controller
'tipo'
=>
[
'required'
,
'string'
],
'natureza'
=>
[
'required'
],
'coordenador_id'
=>
[
'required'
],
'numParticipantes'
=>
[
'required'
],
#----------------------------------------------
'inicioSubmissao'
=>
[
'required'
,
'date'
,
'after:yesterday'
],
'fimSubmissao'
=>
[
'required'
,
'date'
,
'after_or_equal:inicioSubmissao'
],
...
...
@@ -163,6 +165,7 @@ class EventoController extends Controller
$evento
[
'resultado_final'
]
=
$request
->
resultado_final
;
$evento
[
'coordenadorId'
]
=
$request
->
coordenador_id
;
$evento
[
'criador_id'
]
=
$user_id
;
$evento
[
'numParticipantes'
]
=
$request
->
numParticipantes
;
$evento
[
'anexosStatus'
]
=
'final'
;
//dd($evento);
...
...
@@ -347,6 +350,7 @@ class EventoController extends Controller
'descricao'
=>
[
'required'
,
'string'
],
'tipo'
=>
[
'required'
,
'string'
],
'natureza'
=>
[
'required'
],
'numParticipantes'
=>
[
'required'
],
'inicioSubmissao'
=>
[
'required'
,
'date'
],
'fimSubmissao'
=>
[
'required'
,
'date'
],
'inicioRevisao'
=>
[
'required'
,
'date'
,
'after:fimSubmissao'
],
...
...
@@ -365,6 +369,7 @@ class EventoController extends Controller
'descricao'
=>
[
'required'
,
'string'
,
'max:1500'
],
'tipo'
=>
[
'required'
,
'string'
],
'natureza'
=>
[
'required'
],
'numParticipantes'
=>
[
'required'
],
'inicioSubmissao'
=>
[
'required'
,
'date'
,
'after_or_equal:inicioSubmissao'
],
'fimSubmissao'
=>
[
'required'
,
'date'
,
'after_or_equal:inicioSubmissao'
],
'inicioRevisao'
=>
[
'required'
,
'date'
,
'after:fimSubmissao'
],
...
...
@@ -380,6 +385,7 @@ class EventoController extends Controller
$evento
->
descricao
=
$request
->
descricao
;
$evento
->
tipo
=
$request
->
tipo
;
$evento
->
natureza_id
=
$request
->
natureza
;
$evento
->
numParticipantes
=
$request
->
numParticipantes
;
$evento
->
inicioSubmissao
=
$request
->
inicioSubmissao
;
$evento
->
fimSubmissao
=
$request
->
fimSubmissao
;
$evento
->
inicioRevisao
=
$request
->
inicioRevisao
;
...
...
app/Http/Controllers/TrabalhoController.php
View file @
79094c42
...
...
@@ -94,207 +94,207 @@ class TrabalhoController extends Controller
]);
}
public
function
store
(
Request
$request
){
//
public function store(Request $request){
$mytime
=
Carbon
::
now
(
'America/Recife'
);
$mytime
=
$mytime
->
toDateString
();
$evento
=
Evento
::
find
(
$request
->
editalId
);
$coordenador
=
CoordenadorComissao
::
find
(
$evento
->
coordenadorId
);
//Relaciona o projeto criado com o proponente que criou o projeto
$proponente
=
Proponente
::
where
(
'user_id'
,
Auth
::
user
()
->
id
)
->
first
();
// if($proponente == null){
// return view('proponente.cadastro');
// }
//$trabalho->proponentes()->save($proponente);
//dd($proponente);
$trabalho
=
"trabalho"
;
if
(
$evento
->
inicioSubmissao
>
$mytime
){
if
(
$mytime
>=
$evento
->
fimSubmissao
){
return
redirect
()
->
route
(
'home'
);
}
}
//--Salvando os dados da submissão temporariamente
// $trabalho = $this->armazenarInfoTemp($request, $proponente);
//O anexo de Decisão do CONSU dependo do tipo de edital
if
(
$evento
->
tipo
==
'PIBIC'
||
$evento
->
tipo
==
'PIBIC-EM'
){
$validatedData
=
$request
->
validate
([
'editalId'
=>
[
'required'
,
'string'
],
'nomeProjeto'
=>
[
'required'
,
'string'
],
'grandeArea'
=>
[
'required'
,
'string'
],
'area'
=>
[
'required'
,
'string'
],
'subArea'
=>
[
'required'
,
'string'
],
'pontuacaoPlanilha'
=>
[
'required'
,
'string'
],
'linkGrupo'
=>
[
'required'
,
'string'
,
'link_grupo'
],
'linkLattesEstudante'
=>
[
'required'
,
'string'
,
'link_lattes'
],
'nomeParticipante.*'
=>
[
'required'
,
'string'
],
'emailParticipante.*'
=>
[
'required'
,
'string'
],
'funcaoParticipante'
=>
[
'required'
,
'array'
,
'size:'
.
$request
->
countParticipante
],
'funcaoParticipante.*'
=>
[
'required'
,
'string'
],
'nomePlanoTrabalho.*'
=>
[
'nullable'
,
'string'
],
//--Verificando se anexos já foram submetidos
'anexoProjeto'
=>
[(
$request
->
anexoProjetoPreenchido
!==
'sim'
?
'required'
:
''
),
'file'
,
'mimes:pdf'
,
'max:2048'
],
'anexoCONSU'
=>
[(
$request
->
anexoConsuPreenchido
!==
'sim'
?
'required'
:
''
),
'file'
,
'mimes:pdf'
,
'max:2048'
],
'botao'
=>
[
'required'
],
'anexoComiteEtica'
=>
[(
$request
->
anexoComitePreenchido
!==
'sim'
&&
$request
->
anexoJustificativaPreenchido
!==
'sim'
?
'required_without:justificativaAutorizacaoEtica'
:
''
),
'file'
,
'mimes:pdf'
,
'max:2048'
],
'justificativaAutorizacaoEtica'
=>
[(
$request
->
anexoJustificativaPreenchido
!==
'sim'
&&
$request
->
anexoComitePreenchido
!==
'sim'
?
'required_without:anexoComiteEtica'
:
''
),
'file'
,
'mimes:pdf'
,
'max:2048'
],
'anexoLattesCoordenador'
=>
[(
$request
->
anexoLattesPreenchido
!==
'sim'
?
'required'
:
''
),
'file'
,
'mimes:pdf'
,
'max:2048'
],
'anexoPlanilha'
=>
[(
$request
->
anexoPlanilhaPreenchido
!==
'sim'
?
'required'
:
''
),
'file'
,
'mimes:xls,xlsx,ods'
,
'max:2048'
],
'anexoPlanoTrabalho.*'
=>
[
'nullable'
,
'file'
,
'mimes:pdf'
,
'max:2048'
],
]);
//
$mytime = Carbon::now('America/Recife');
//
$mytime = $mytime->toDateString();
//
$evento = Evento::find($request->editalId);
//
$coordenador = CoordenadorComissao::find($evento->coordenadorId);
//
//Relaciona o projeto criado com o proponente que criou o projeto
//
$proponente = Proponente::where('user_id', Auth::user()->id)->first();
//
// if($proponente == null){
//
// return view('proponente.cadastro');
//
// }
//
//$trabalho->proponentes()->save($proponente);
//
//dd($proponente);
//
$trabalho = "trabalho";
//
if($evento->inicioSubmissao > $mytime){
//
if($mytime >= $evento->fimSubmissao){
//
return redirect()->route('home');
//
}
//
}
//
//--Salvando os dados da submissão temporariamente
//
// $trabalho = $this->armazenarInfoTemp($request, $proponente);
//
//O anexo de Decisão do CONSU dependo do tipo de edital
//
if( $evento->tipo == 'PIBIC' || $evento->tipo == 'PIBIC-EM'){
//
$validatedData = $request->validate([
//
'editalId' => ['required', 'string'],
//
'nomeProjeto' => ['required', 'string'],
//
'grandeArea' => ['required', 'string'],
//
'area' => ['required', 'string'],
//
'subArea' => ['required', 'string'],
//
'pontuacaoPlanilha' => ['required', 'string'],
//
'linkGrupo' => ['required', 'string', 'link_grupo'],
//
'linkLattesEstudante' => ['required', 'string', 'link_lattes'],
//
'nomeParticipante.*' => ['required', 'string'],
//
'emailParticipante.*' => ['required', 'string'],
//
'funcaoParticipante' => ['required', 'array', 'size:'.$request->countParticipante],
//
'funcaoParticipante.*' => ['required', 'string'],
//
'nomePlanoTrabalho.*' => ['nullable', 'string'],
//
//--Verificando se anexos já foram submetidos
//
'anexoProjeto' => [($request->anexoProjetoPreenchido!=='sim'?'required':''), 'file', 'mimes:pdf', 'max:2048'],
//
'anexoCONSU' => [($request->anexoConsuPreenchido!=='sim'?'required':''), 'file', 'mimes:pdf', 'max:2048'],
//
'botao' => ['required'],
//
'anexoComiteEtica' => [($request->anexoComitePreenchido!=='sim'&&$request->anexoJustificativaPreenchido!=='sim'?'required_without:justificativaAutorizacaoEtica':''), 'file', 'mimes:pdf', 'max:2048'],
//
'justificativaAutorizacaoEtica' => [($request->anexoJustificativaPreenchido!=='sim'&&$request->anexoComitePreenchido!=='sim'?'required_without:anexoComiteEtica':''), 'file', 'mimes:pdf', 'max:2048'],
//
'anexoLattesCoordenador' => [($request->anexoLattesPreenchido!=='sim'?'required': ''), 'file', 'mimes:pdf', 'max:2048'],
//
'anexoPlanilha' => [($request->anexoPlanilhaPreenchido!=='sim'?'required':''), 'file', 'mimes:xls,xlsx,ods', 'max:2048'],
//
'anexoPlanoTrabalho.*' => ['nullable', 'file', 'mimes:pdf', 'max:2048'],
//
]);
// if(gettype($this->validarAnexosRascunho($request, $trabalho)) != 'integer'){
// return $this->validarAnexosRascunho($request, $trabalho);
// }
//$trabalho = Trabalho::create([
$trabalho
[
'titulo'
]
=
$request
->
nomeProjeto
;
$trabalho
[
'coordenador_id'
]
=
$coordenador
->
id
;
$trabalho
[
'grande_area_id'
]
=
$request
->
grandeArea
;
$trabalho
[
'area_id'
]
=
$request
->
area
;
$trabalho
[
'sub_area_id'
]
=
$request
->
subArea
;
$trabalho
[
'pontuacaoPlanilha'
]
=
$request
->
pontuacaoPlanilha
;
$trabalho
[
'linkGrupoPesquisa'
]
=
$request
->
linkGrupo
;
$trabalho
[
'linkLattesEstudante'
]
=
$request
->
linkLattesEstudante
;
$trabalho
[
'data'
]
=
$mytime
;
$trabalho
[
'evento_id'
]
=
$request
->
editalId
;
$trabalho
[
'status'
]
=
'Submetido'
;
$trabalho
[
'proponente_id'
]
=
$proponente
->
id
;
//Anexos
$trabalho
[
'anexoDecisaoCONSU'
]
=
$request
->
anexoCONSU
!=
null
?
$request
->
anexoCONSU
:
$trabalho
->
anexoDecisaoCONSU
;
$trabalho
[
'anexoProjeto'
]
=
$request
->
anexoProjeto
!=
null
?
$request
->
anexoProjeto
:
$trabalho
->
anexoProjeto
;
$trabalho
[
'anexoAutorizacaoComiteEtica'
]
=
$request
->
anexoComiteEtica
!=
null
?
$request
->
anexoComiteEtica
:
$trabalho
->
anexoAutorizacaoComiteEtica
;
$trabalho
[
'justificativaAutorizacaoEtica'
]
=
$request
->
justificativaAutorizacaoEtica
!=
null
?
$request
->
justificativaAutorizacaoEtica
:
$trabalho
->
justificativaAutorizacaoEtica
;
$trabalho
[
'anexoLattesCoordenador'
]
=
$request
->
anexoLattesCoordenador
!=
null
?
$request
->
anexoLattesCoordenador
:
$trabalho
->
anexoLattesCoordenador
;
$trabalho
[
'anexoPlanilhaPontuacao'
]
=
$request
->
anexoPlanilha
!=
null
?
$request
->
anexoPlanilha
:
$trabalho
->
anexoPlanilhaPontuacao
;
//dd($trabalho);
}
else
{
//Caso em que o anexo da Decisão do CONSU não necessário
$validatedData
=
$request
->
validate
([
'editalId'
=>
[
'required'
,
'string'
],
'nomeProjeto'
=>
[
'required'
,
'string'
,],
'grandeArea'
=>
[
'required'
,
'string'
],
'area'
=>
[
'required'
,
'string'
],
'subArea'
=>
[
'required'
,
'string'
],
'pontuacaoPlanilha'
=>
[
'required'
,
'string'
],
'linkGrupo'
=>
[
'required'
,
'string'
,
'link_grupo'
],
'linkLattesEstudante'
=>
[
'required'
,
'string'
,
'link_lattes'
],
'nomeParticipante.*'
=>
[
'required'
,
'string'
],
'emailParticipante.*'
=>
[
'required'
,
'string'
],
'funcaoParticipante.*'
=>
[
'required'
,
'string'
],
'nomePlanoTrabalho.*'
=>
[
'nullable'
,
'string'
],
'anexoProjeto'
=>
[(
$request
->
anexoProjetoPreenchido
!==
'sim'
?
'required'
:
''
),
'file'
,
'mimes:pdf'
,
'max:2048'
],
'anexoLattesCoordenador'
=>
[(
$request
->
anexoLattesPreenchido
!==
'sim'
?
'required'
:
''
),
'file'
,
'mimes:pdf'
,
'max:2048'
],
'anexoPlanilha'
=>
[(
$request
->
anexoPlanilhaPreenchido
!==
'sim'
?
'required'
:
''
),
'file'
,
'mimes:xls,xlsx,ods'
,
'max:2048'
],
'anexoPlanoTrabalho.*'
=>
[
'nullable'
,
'file'
,
'mimes:pdf'
,
'max:2048'
],
]);
// if(gettype($this->validarAnexosRascunho($request, $trabalho)) != 'integer'){
// return $this->validarAnexosRascunho($request, $trabalho);
// }
//$trabalho = Trabalho::create([
$trabalho
[
'titulo'
]
=
$request
->
nomeProjeto
;
$trabalho
[
'coordenador_id'
]
=
$coordenador
->
id
;
$trabalho
[
'grande_area_id'
]
=
$request
->
grandeArea
;
$trabalho
[
'area_id'
]
=
$request
->
area
;
$trabalho
[
'sub_area_id'
]
=
$request
->
subArea
;
$trabalho
[
'pontuacaoPlanilha'
]
=
$request
->
pontuacaoPlanilha
;
$trabalho
[
'linkGrupoPesquisa'
]
=
$request
->
linkGrupo
;
$trabalho
[
'linkLattesEstudante'
]
=
$request
->
linkLattesEstudante
;
$trabalho
[
'data'
]
=
$mytime
;
$trabalho
[
'evento_id'
]
=
$request
->
editalId
;
$trabalho
[
'status'
]
=
'Submetido'
;
$trabalho
[
'proponente_id'
]
=
$proponente
->
id
;
//Anexos
$trabalho
[
'anexoProjeto'
]
=
$request
->
anexoProjeto
;
$trabalho
[
'anexoAutorizacaoComiteEtica'
]
=
$request
->
anexoComiteEtica
;
$trabalho
[
'justificativaAutorizacaoEtica'
]
=
$request
->
justificativaAutorizacaoEtica
;
$trabalho
[
'anexoLattesCoordenador'
]
=
$request
->
anexoLattesCoordenador
;
$trabalho
[
'anexoPlanilhaPontuacao'
]
=
$request
->
anexoPlanilha
;
}
//Envia email com senha temp para cada participante do projeto
if
(
$request
->
emailParticipante
!=
null
){
foreach
(
$request
->
emailParticipante
as
$key
=>
$value
)
{
$userParticipante
=
User
::
where
(
'email'
,
$value
)
->
first
();
$participante
=
new
Participante
();
if
(
$userParticipante
==
null
){
$passwordTemporario
=
Str
::
random
(
8
);
$subject
=
"Participante de Projeto"
;
Mail
::
to
(
$value
)
->
send
(
new
EmailParaUsuarioNaoCadastrado
(
Auth
()
->
user
()
->
name
,
$request
->
nomeProjeto
,
'Participante'
,
$evento
->
nome
,
$passwordTemporario
,
$subject
));
$usuario
=
User
::
create
([
'email'
=>
$value
,
'password'
=>
bcrypt
(
$passwordTemporario
),
'usuarioTemp'
=>
true
,
'name'
=>
$request
->
nomeParticipante
[
$key
],
'tipo'
=>
'participante'
,
]);
$participante
->
user_id
=
$usuario
->
id
;
$participante
->
trabalho_id
=
$trabalho
->
id
;
$participante
->
funcao_participante_id
=
$request
->
funcaoParticipante
[
$key
];
$participante
->
save
();
$usuario
->
participantes
()
->
save
(
$participante
);
$usuario
->
save
();
$participante
->
trabalhos
()
->
save
(
$trabalho
);
}
else
{
$participante
->
user_id
=
$userParticipante
->
id
;
$participante
->
trabalho_id
=
$trabalho
->
id
;
$participante
->
funcao_participante_id
=
$request
->
funcaoParticipante
[
$key
];
$participante
->
save
();
$userParticipante
->
participantes
()
->
save
(
$participante
);
$userParticipante
->
save
();
$participante
->
trabalhos
()
->
save
(
$trabalho
);
$subject
=
"Participante de Projeto"
;
$email
=
$value
;
Mail
::
to
(
$email
)
->
send
(
new
SubmissaoTrabalho
(
$userParticipante
,
$subject
,
$evento
,
$trabalho
));
}
if
(
$request
->
nomePlanoTrabalho
[
$key
]
!=
null
){
$usuario
=
User
::
where
(
'email'
,
$value
)
->
first
();
$participante
=
Participante
::
where
([[
'user_id'
,
'='
,
$usuario
->
id
],
[
'trabalho_id'
,
'='
,
$trabalho
->
id
]])
->
first
();
$path
=
'trabalhos/'
.
$request
->
editalId
.
'/'
.
$trabalho
->
id
.
'/'
;
$nome
=
$request
->
nomePlanoTrabalho
[
$key
]
.
".pdf"
;
$file
=
$request
->
anexoPlanoTrabalho
[
$key
];
Storage
::
putFileAs
(
$path
,
$file
,
$nome
);
$mytime
=
Carbon
::
now
(
'America/Recife'
);
$mytime
=
$mytime
->
toDateString
();
$arquivo
=
new
Arquivo
();
$arquivo
->
titulo
=
$request
->
nomePlanoTrabalho
[
$key
];
$arquivo
->
nome
=
$path
.
$nome
;
$arquivo
->
trabalhoId
=
$trabalho
->
id
;
$arquivo
->
data
=
$mytime
;
$arquivo
->
participanteId
=
$participante
->
id
;
$arquivo
->
versaoFinal
=
true
;
$arquivo
->
save
();
}
}
}
//-- Salvando anexos no storage ---//
$pasta
=
'trabalhos/'
.
$request
->
editalId
.
'/'
.
$trabalho
->
id
;
$trabalho
=
$this
->
armazenarAnexosFinais
(
$request
,
$pasta
,
$trabalho
,
$evento
);
$subject
=
"Submissão de Trabalho"
;
$autor
=
Auth
()
->
user
();
$evento
=
$evento
;
$trabalho
=
$trabalho
;
Mail
::
to
(
$autor
->
email
)
->
send
(
new
SubmissaoTrabalho
(
$autor
,
$subject
,
$evento
,
$trabalho
));
return
redirect
()
->
route
(
'evento.visualizar'
,[
'id'
=>
$request
->
editalId
]);
}
//
// if(gettype($this->validarAnexosRascunho($request, $trabalho)) != 'integer'){
//
// return $this->validarAnexosRascunho($request, $trabalho);
//
// }
//
//$trabalho = Trabalho::create([
//
$trabalho['titulo'] = $request->nomeProjeto;
//
$trabalho['coordenador_id'] = $coordenador->id;
//
$trabalho['grande_area_id'] = $request->grandeArea;
//
$trabalho['area_id'] = $request->area;
//
$trabalho['sub_area_id'] = $request->subArea;
//
$trabalho['pontuacaoPlanilha'] = $request->pontuacaoPlanilha;
//
$trabalho['linkGrupoPesquisa'] = $request->linkGrupo;
//
$trabalho['linkLattesEstudante'] = $request->linkLattesEstudante;
//
$trabalho['data'] = $mytime;
//
$trabalho['evento_id'] = $request->editalId;
//
$trabalho['status'] = 'Submetido';
//
$trabalho['proponente_id'] = $proponente->id;
//
//Anexos
//
$trabalho['anexoDecisaoCONSU'] = $request->anexoCONSU != null ? $request->anexoCONSU : $trabalho->anexoDecisaoCONSU;
//
$trabalho['anexoProjeto'] = $request->anexoProjeto != null ? $request->anexoProjeto : $trabalho->anexoProjeto;
//
$trabalho['anexoAutorizacaoComiteEtica'] = $request->anexoComiteEtica != null ? $request->anexoComiteEtica : $trabalho->anexoAutorizacaoComiteEtica;
//
$trabalho['justificativaAutorizacaoEtica'] = $request->justificativaAutorizacaoEtica != null ? $request->justificativaAutorizacaoEtica : $trabalho->justificativaAutorizacaoEtica;
//
$trabalho['anexoLattesCoordenador'] = $request->anexoLattesCoordenador != null ? $request->anexoLattesCoordenador : $trabalho->anexoLattesCoordenador;
//
$trabalho['anexoPlanilhaPontuacao'] = $request->anexoPlanilha != null ? $request->anexoPlanilha : $trabalho->anexoPlanilhaPontuacao;
//
//dd($trabalho);
//
} else {
//
//Caso em que o anexo da Decisão do CONSU não necessário
//
$validatedData = $request->validate([
//
'editalId' => ['required', 'string'],
//
'nomeProjeto' => ['required', 'string',],
//
'grandeArea' => ['required', 'string'],
//
'area' => ['required', 'string'],
//
'subArea' => ['required', 'string'],
//
'pontuacaoPlanilha' => ['required', 'string'],
//
'linkGrupo' => ['required', 'string', 'link_grupo'],
//
'linkLattesEstudante' => ['required', 'string', 'link_lattes'],
//
'nomeParticipante.*' => ['required', 'string'],
//
'emailParticipante.*' => ['required', 'string'],
//
'funcaoParticipante.*' => ['required', 'string'],
//
'nomePlanoTrabalho.*' => ['nullable', 'string'],
//
'anexoProjeto' => [($request->anexoProjetoPreenchido!=='sim'?'required':''), 'file', 'mimes:pdf', 'max:2048'],
//
'anexoLattesCoordenador' => [($request->anexoLattesPreenchido!=='sim'?'required':''), 'file', 'mimes:pdf', 'max:2048'],
//
'anexoPlanilha' => [($request->anexoPlanilhaPreenchido!=='sim'?'required':''), 'file', 'mimes:xls,xlsx,ods', 'max:2048'],
//
'anexoPlanoTrabalho.*' => ['nullable', 'file', 'mimes:pdf', 'max:2048'],
//
]);
//
// if(gettype($this->validarAnexosRascunho($request, $trabalho)) != 'integer'){
//
// return $this->validarAnexosRascunho($request, $trabalho);
//
// }
//
//$trabalho = Trabalho::create([
//
$trabalho['titulo'] = $request->nomeProjeto;
//
$trabalho['coordenador_id'] = $coordenador->id;
//
$trabalho['grande_area_id'] = $request->grandeArea;
//
$trabalho['area_id'] = $request->area;
//
$trabalho['sub_area_id'] = $request->subArea;
//
$trabalho['pontuacaoPlanilha'] = $request->pontuacaoPlanilha;
//
$trabalho['linkGrupoPesquisa'] = $request->linkGrupo;
//
$trabalho['linkLattesEstudante'] = $request->linkLattesEstudante;
//
$trabalho['data'] = $mytime;
//
$trabalho['evento_id'] = $request->editalId;
//
$trabalho['status'] = 'Submetido';
//
$trabalho['proponente_id'] = $proponente->id;
//
//Anexos
//
$trabalho['anexoProjeto'] = $request->anexoProjeto;
//
$trabalho['anexoAutorizacaoComiteEtica'] = $request->anexoComiteEtica;
//
$trabalho['justificativaAutorizacaoEtica'] = $request->justificativaAutorizacaoEtica;
//
$trabalho['anexoLattesCoordenador'] = $request->anexoLattesCoordenador;
//
$trabalho['anexoPlanilhaPontuacao'] = $request->anexoPlanilha;
//
}
//
//Envia email com senha temp para cada participante do projeto
//
if($request->emailParticipante != null){
//
foreach ($request->emailParticipante as $key => $value) {
//
$userParticipante = User::where('email', $value)->first();
//
$participante = new Participante();
//
if($userParticipante == null){
//
$passwordTemporario = Str::random(8);
//
$subject = "Participante de Projeto";
//
Mail::to($value)->send(new EmailParaUsuarioNaoCadastrado(Auth()->user()->name, $request->nomeProjeto, 'Participante', $evento->nome, $passwordTemporario, $subject));
//
$usuario = User::create([
//
'email' => $value,
//
'password' => bcrypt($passwordTemporario),
//
'usuarioTemp' => true,
//
'name' => $request->nomeParticipante[$key],
//
'tipo' => 'participante',
//
]);
//
$participante->user_id = $usuario->id;
//
$participante->trabalho_id = $trabalho->id;
//
$participante->funcao_participante_id = $request->funcaoParticipante[$key];
//
$participante->save();
//
$usuario->participantes()->save($participante);
//
$usuario->save();
//
$participante->trabalhos()->save($trabalho);
//
}else{
//
$participante->user_id = $userParticipante->id;
//
$participante->trabalho_id = $trabalho->id;
//
$participante->funcao_participante_id = $request->funcaoParticipante[$key];
//
$participante->save();
//
$userParticipante->participantes()->save($participante);
//
$userParticipante->save();
//
$participante->trabalhos()->save($trabalho);
//
$subject = "Participante de Projeto";
//
$email = $value;
//
Mail::to($email)
//
->send(new SubmissaoTrabalho($userParticipante, $subject, $evento, $trabalho));
//
}
//
if($request->nomePlanoTrabalho[$key] != null){
//
$usuario = User::where('email', $value)->first();
//
$participante = Participante::where([['user_id', '=', $usuario->id], ['trabalho_id', '=', $trabalho->id]])->first();
//
$path = 'trabalhos/' . $request->editalId . '/' . $trabalho->id .'/';
//
$nome = $request->nomePlanoTrabalho[$key] .".pdf";
//
$file = $request->anexoPlanoTrabalho[$key];
//
Storage::putFileAs($path, $file, $nome);
//
$mytime = Carbon::now('America/Recife');
//
$mytime = $mytime->toDateString();
//
$arquivo = new Arquivo();
//
$arquivo->titulo = $request->nomePlanoTrabalho[$key];
//
$arquivo->nome = $path . $nome;
//
$arquivo->trabalhoId = $trabalho->id;
//
$arquivo->data = $mytime;
//
$arquivo->participanteId = $participante->id;
//
$arquivo->versaoFinal = true;
//
$arquivo->save();
//
}
//
}
//
}
//
//-- Salvando anexos no storage ---//
//
$pasta = 'trabalhos/' . $request->editalId . '/' . $trabalho->id;
//
$trabalho = $this->armazenarAnexosFinais($request, $pasta, $trabalho, $evento);
//
$subject = "Submissão de Trabalho";
//
$autor = Auth()->user();
//
$evento = $evento;
//
$trabalho = $trabalho;
//
Mail::to($autor->email)
//
->send(new SubmissaoTrabalho($autor, $subject, $evento, $trabalho));
//
return redirect()->route('evento.visualizar',['id'=>$request->editalId]);
//
}
public
function
storeParcial
(
Request
$request
){
$mytime
=
Carbon
::
now
(
'America/Recife'
);
...
...
@@ -1043,11 +1043,11 @@ class TrabalhoController extends Controller
$projeto
=
$this
->
atribuirDados
(
$request
,
$edital
);
$projeto
->
save
();
// dd($request->all());
// Email de submissão
$subject
=
"Submissão de Trabalho"
;
$proponente
=
Auth
()
->
user
();
Mail
::
to
(
$proponente
->
email
)
->
send
(
new
SubmissaoTrabalho
(
$proponente
,
$subject
,
$edital
,
$projeto
));
//
$subject = "Submissão de Trabalho";
//
$proponente = Auth()->user();
//
Mail::to($proponente->email)->send(new SubmissaoTrabalho($proponente, $subject, $edital, $projeto));
// Salvando participantes
$this
->
salvarParticipantes
(
$request
,
$edital
,
$projeto
);
...
...
@@ -1089,7 +1089,7 @@ class TrabalhoController extends Controller
public
function
salvarParticipantes
(
Request
$request
,
$edital
,
$projeto
,
$edicao
=
false
)
{
if
(
$edicao
)
{
$participantes
=
$projeto
->
participantes
;
$participantesPermanecem
=
collect
();
...
...
@@ -1136,7 +1136,7 @@ class TrabalhoController extends Controller
$participante
->
curso
=
$request
->
curso
[
$key
];
$participante
->
turno
=
$request
->
turno
[
$key
];
$participante
->
ordem_prioridade
=
$request
->
ordem_prioridade
[
$key
];
$participante
->
periodo_atual
=
$request
->
periodo_
cursado
[
$key
];
$participante
->
periodo_atual
=
$request
->
periodo_
atual
[
$key
];
$participante
->
total_periodos
=
$request
->
total_periodos
[
$key
];
$participante
->
media_do_curso
=
$request
->
media_geral_curso
[
$key
];
$participante
->
save
();
...
...
@@ -1155,7 +1155,7 @@ class TrabalhoController extends Controller
$participante
->
curso
=
$request
->
curso
[
$key
];
$participante
->
turno
=
$request
->
turno
[
$key
];
$participante
->
ordem_prioridade
=
$request
->
ordem_prioridade
[
$key
];
$participante
->
periodo_atual
=
$request
->
periodo_
cursado
[
$key
];
$participante
->
periodo_atual
=
$request
->
periodo_
atual
[
$key
];
$participante
->
total_periodos
=
$request
->
total_periodos
[
$key
];
$participante
->
media_do_curso
=
$request
->
media_geral_curso
[
$key
];
$participante
->
save
();
...
...
@@ -1217,7 +1217,7 @@ class TrabalhoController extends Controller
$participante
->
curso
=
$request
->
curso
[
$key
];
$participante
->
turno
=
$request
->
turno
[
$key
];
$participante
->
ordem_prioridade
=
$request
->
ordem_prioridade
[
$key
];
$participante
->
periodo_atual
=
$request
->
periodo_
cursado
[
$key
];
$participante
->
periodo_atual
=
$request
->
periodo_
atual
[
$key
];
$participante
->
total_periodos
=
$request
->
total_periodos
[
$key
];
$participante
->
media_do_curso
=
$request
->
media_geral_curso
[
$key
];
$participante
->
update
();
...
...
@@ -1299,7 +1299,7 @@ class TrabalhoController extends Controller
$participante
->
curso
=
$request
->
curso
[
$key
];
$participante
->
turno
=
$request
->
turno
[
$key
];
$participante
->
ordem_prioridade
=
$request
->
ordem_prioridade
[
$key
];
$participante
->
periodo_atual
=
$request
->
periodo_
cursado
[
$key
];
$participante
->
periodo_atual
=
$request
->
periodo_
atual
[
$key
];
$participante
->
total_periodos
=
$request
->
total_periodos
[
$key
];
$participante
->
media_do_curso
=
$request
->
media_geral_curso
[
$key
];
$participante
->
save
();
...
...
@@ -1318,7 +1318,7 @@ class TrabalhoController extends Controller
$participante
->
curso
=
$request
->
curso
[
$key
];
$participante
->
turno
=
$request
->
turno
[
$key
];
$participante
->
ordem_prioridade
=
$request
->
ordem_prioridade
[
$key
];
$participante
->
periodo_atual
=
$request
->
periodo_
cursado
[
$key
];
$participante
->
periodo_atual
=
$request
->
periodo_
atual
[
$key
];
$participante
->
total_periodos
=
$request
->
total_periodos
[
$key
];
$participante
->
media_do_curso
=
$request
->
media_geral_curso
[
$key
];
$participante
->
save
();
...
...
database/migrations/2020_02_05_123153_create_eventos_table.php
View file @
79094c42
...
...
@@ -30,6 +30,7 @@ class CreateEventosTable extends Migration
$table
->
date
(
'fim_recurso'
)
->
nullable
();
$table
->
integer
(
'numMaxTrabalhos'
)
->
nullable
();
$table
->
integer
(
'numMaxCoautores'
)
->
nullable
();
$table
->
integer
(
'numParticipantes'
)
->
nullable
();
$table
->
boolean
(
'hasResumo'
)
->
nullable
();
$table
->
integer
(
'criador_id'
)
->
nullable
();
$table
->
integer
(
'coordenadorId'
)
->
nullable
();
...
...
resources/views/componentes/input.blade.php
View file @
79094c42
@
php
$class
=
$class
??
" "
;
@
endphp
<
div
class
=
"form-group"
>
<label
class=
" control-label"
for=
"firstname"
>
{{ $label }}
<span
style=
"color: red; font-weight:bold"
>
*
</span></label>
<
label
class
=
" control-label
{{
$class
}}
"
for
=
"firstname"
>
{{
$label
}}
<
span
style
=
"color: red; font-weight:bold"
>*</
span
></
label
>
<
div
class
=
""
>
{{
$slot
}}
</
div
>
...
...
resources/views/evento/criarEvento.blade.php
View file @
79094c42
...
...
@@ -26,7 +26,7 @@
@
enderror
</
div
>
<
div
class
=
"col-sm-
3
"
>
<
div
class
=
"col-sm-
2
"
>
<
label
for
=
"tipo"
class
=
"col-form-label"
>
{{
__
(
'Tipo*:'
)
}}
</
label
>
<
select
id
=
"tipo"
type
=
"text"
class
=
"form-control @error('tipo') is-invalid @enderror"
name
=
"tipo"
value
=
"{{ old('tipo') }}"
required
>
<
option
@
if
(
old
(
'tipo'
)
==
'PIBIC'
)
selected
@
endif
value
=
"PIBIC"
>
PIBIC
</
option
>
...
...
@@ -41,7 +41,7 @@
@
enderror
</
div
>
<
div
class
=
"col-sm-
3
"
>
<
div
class
=
"col-sm-
2
"
>
<
label
for
=
"natureza"
class
=
"col-form-label"
>
{{
__
(
'Natureza*:'
)
}}
</
label
>
<
select
id
=
"natureza"
type
=
"text"
class
=
"form-control @error('natureza') is-invalid @enderror"
name
=
"natureza"
value
=
"{{ old('natureza') }}"
required
>
@
foreach
(
$naturezas
as
$natureza
)
...
...
@@ -55,6 +55,16 @@
</
span
>
@
enderror
</
div
>
<
div
class
=
"col-sm-2"
>
<
label
for
=
"numParticipantes"
class
=
"col-form-label"
>
{{
__
(
'numParticipantes*:'
)
}}
</
label
>
<
input
id
=
"numParticipantes"
type
=
"number"
min
=
"1"
max
=
"20"
class
=
"form-control @error('numParticipantes') is-invalid @enderror"
name
=
"numParticipantes"
value
=
"{{ old('numParticipantes') }}"
required
autocomplete
=
"numParticipantes"
autofocus
>
@
error
(
'numParticipantes'
)
<
span
class
=
"invalid-feedback"
role
=
"alert"
>
<
strong
>
{{
$message
}}
</
strong
>
</
span
>
@
enderror
</
div
>
</
div
>
{{
--
end
nome
|
Participantes
|
Tipo
--
}}
{{
--
Descricao
Edital
--
}}
...
...
resources/views/evento/editarEvento.blade.php
View file @
79094c42
...
...
@@ -27,7 +27,7 @@
</
div
>
{{
--
End
Nome
do
evento
--
}}
{{
--
Tipo
do
evento
--
}}
<
div
class
=
"col-sm-
3
"
>
<
div
class
=
"col-sm-
2
"
>
<
label
for
=
"tipo"
class
=
"col-form-label"
>
{{
__
(
'Tipo*:'
)
}}
</
label
>
<!--
<
input
value
=
"
{
{$evento->tipo}
}
"
id
=
"tipo"
type
=
"text"
class
=
"form-control @error('tipo') is-invalid @enderror"
name
=
"tipo"
value
=
"{{ old('tipo') }}"
required
autocomplete
=
"tipo"
autofocus
>
-->
<
select
id
=
"tipo"
type
=
"text"
class
=
"form-control @error('tipo') is-invalid @enderror"
name
=
"tipo"
required
>
...
...
@@ -42,7 +42,7 @@
@
enderror
</
div
>
{{
--
Tipo
do
evento
--
}}
<
div
class
=
"col-sm-
3
"
>
<
div
class
=
"col-sm-
2
"
>
<
label
for
=
"natureza"
class
=
"col-form-label"
>
{{
__
(
'Natureza*:'
)
}}
</
label
>
<
select
id
=
"natureza"
type
=
"text"
class
=
"form-control @error('natureza') is-invalid @enderror"
name
=
"natureza"
value
=
"{{ old('natureza') }}"
required
>
@
foreach
(
$naturezas
as
$natureza
)
...
...
@@ -60,6 +60,16 @@
</
span
>
@
enderror
</
div
>
<
div
class
=
"col-sm-2"
>
<
label
for
=
"numParticipantes"
class
=
"col-form-label"
>
{{
__
(
'numParticipantes*:'
)
}}
</
label
>
<
input
id
=
"numParticipantes"
type
=
"number"
min
=
"1"
max
=
"20"
class
=
"form-control @error('numParticipantes') is-invalid @enderror"
name
=
"numParticipantes"
value
=
"{{
$evento->numParticipantes
}}"
required
autocomplete
=
"numParticipantes"
autofocus
>
@
error
(
'numParticipantes'
)
<
span
class
=
"invalid-feedback"
role
=
"alert"
>
<
strong
>
{{
$message
}}
</
strong
>
</
span
>
@
enderror
</
div
>
</
div
>
{{
--
end
nome
|
Participantes
|
Tipo
--
}}
{{
--
Descricao
Evento
--
}}
...
...
resources/views/evento/formulario/anexos.blade.php
View file @
79094c42
...
...
@@ -23,7 +23,7 @@
</div>
<div
class=
"form-group col-md-6"
>
@component('componentes.input', ['label' => 'Anexo da Planilha de Pontuação'])
<input
type=
"file"
class=
"input-group-text"
name=
"anexo
Planilha
"
placeholder=
"anexoPlanoTrabalho"
required
/>
<input
type=
"file"
class=
"input-group-text"
name=
"anexo
LattesCoordenador
"
placeholder=
"anexoPlanoTrabalho"
required
/>
@endcomponent
</div>
<div
class=
"form-group col-md-6"
>
...
...
resources/views/evento/formulario/participantes.blade.php
View file @
79094c42
...
...
@@ -33,10 +33,11 @@
<div
class=
"collapse"
id=
"collapseParticipante"
>
<div
class=
"container"
>
<div
class=
"row"
>
<input
type=
"hidden"
name=
"funcaoParticipante[]"
value=
"4"
>
<div
class=
"col-md-12"
><h5>
Dados do participante
</h5></div>
<div
class=
"col-6"
>
@component('componentes.input', ['label' => 'Nome completo'])
<input
type=
"text"
class=
"form-control"
name=
"nomeParticipante[]"
placeholder=
"Nome Completo"
required
/>
<input
type=
"text"
class=
"form-control
"
name=
"nomeParticipante[]"
placeholder=
"Nome Completo"
required
/>
@endcomponent
</div>
<div
class=
"col-6"
>
...
...
@@ -46,28 +47,28 @@
</div>
<div
class=
"col-6"
>
@component('componentes.input', ['label' => 'Data de nascimento'])
<input
type=
"date"
class=
"form-control"
name=
"data_de_nascimento"
placeholder=
"Data de nascimento"
required
/>
<input
type=
"date"
class=
"form-control"
name=
"data_de_nascimento
[]
"
placeholder=
"Data de nascimento"
required
/>
@endcomponent
</div>
<div
class=
"col-6"
>
@component('componentes.input', ['label' => 'CPF'])
<input
type=
"text"
class=
"form-control"
name=
"cpf"
placeholder=
"CPF"
required
/>
@component('componentes.input', ['label' => 'CPF'
, 'class' => 'cpf'
])
<input
type=
"text"
class=
"form-control
cpf
"
name=
"cpf
[]
"
placeholder=
"CPF"
required
/>
@endcomponent
</div>
<div
class=
"col-6"
>
@component('componentes.input', ['label' => 'RG'])
<input
type=
"text"
class=
"form-control"
name=
"rg"
placeholder=
"RG"
required
/>
<input
type=
"text"
class=
"form-control"
name=
"rg
[]
"
placeholder=
"RG"
required
/>
@endcomponent
</div>
<div
class=
"col-6"
>
@component('componentes.input', ['label' => 'Celular'])
<input
type=
"text"
class=
"form-control"
name=
"celular"
placeholder=
"Celular"
required
/>
<input
type=
"text"
class=
"form-control"
name=
"celular
[]
"
placeholder=
"Celular"
required
/>
@endcomponent
</div>
<div
class=
"col-md-12"
><h5>
Endereço
</h5></div>
<div
class=
"col-6"
>
@component('componentes.input', ['label' => 'CEP'])
<input
type=
"text"
class=
"form-control"
name=
"cep"
placeholder=
"CEP"
required
/>
<input
type=
"text"
class=
"form-control"
name=
"cep
[]
"
placeholder=
"CEP"
required
/>
@endcomponent
</div>
...
...
@@ -83,7 +84,7 @@
</div>
<div
class=
"col-6"
>
@component('componentes.input', ['label' => 'Cidade'])
<input
type=
"text"
class=
"form-control"
name=
"cidade"
placeholder=
"Cidade"
required
/>
<input
type=
"text"
class=
"form-control"
name=
"cidade
[]
"
placeholder=
"Cidade"
required
/>
@endcomponent
</div>
<div
class=
"col-6"
>
...
...
@@ -122,7 +123,7 @@
<select
name=
"turno[]"
class=
"form-control"
required
>
<option
value=
""
disabled
selected
>
-- Selecione uma opção --
</option>
@foreach ($enum_turno as $key => $value)
<option
@
if
(
old
('
turno
'
) =
=
$
value
)
selected
@
endif
value=
"{{ $
key
}}"
>
{{ $value }}
</option>
<option
@
if
(
old
('
turno
'
) =
=
$
value
)
selected
@
endif
value=
"{{ $
value
}}"
>
{{ $value }}
</option>
@endforeach
</select>
@endcomponent
...
...
resources/views/evento/submeterTrabalho.blade.php
View file @
79094c42
...
...
@@ -4,7 +4,7 @@
<
div
>
{{
--
action
=
"
{
{route('trabalho.store')}
}
"
--
}}
<
form
method
=
"POST"
id
=
"criarProjetoForm"
action
=
"
#
"
enctype
=
"multipart/form-data"
>
<
form
method
=
"POST"
id
=
"criarProjetoForm"
action
=
"
{
{route('trabalho.store')}
}
"
enctype
=
"multipart/form-data"
>
@
csrf
<
input
type
=
"hidden"
name
=
"editalId"
value
=
"
{
{$edital->id}
}
"
>
...
...
@@ -110,8 +110,8 @@
buttonMais
.
addEventListener
(
"click"
,
(
e
)
=>
{
if
(
parts
.
children
.
length
>=
3
){
// console.log("{{ $edital->numParticipantes }}")
if
(
parts
.
children
.
length
>=
"{{
$edital->numParticipantes
}}"
){
alert
(
'Limite de participante.'
)
}
else
{
var
cln
=
participante
.
cloneNode
(
true
);
...
...
@@ -124,7 +124,7 @@
let
select
=
cln
.
children
[
i
]
.
querySelectorAll
(
'select'
)[
index
];
if
(
select
){
let
selectName
=
select
.
getAttributeNode
(
"name"
)
.
value
;
console
.
log
(
select
.
getAttributeNode
(
"name"
)
.
value
)
//
console.log(select.getAttributeNode("name").value)
select
.
getAttributeNode
(
"name"
)
.
value
=
selectName
+
'['
+
contador
+
']'
;
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment