Add the date and identitycard feature to inscriptionRequest

This commit is contained in:
LeoMoulin 2024-03-27 16:04:55 +01:00
parent 839ca414ce
commit 94f12f0a86
5 changed files with 51 additions and 20 deletions

View File

@ -101,10 +101,9 @@ public class MockController {
CurriculumCourseService.save(new CurriculumCourse(chemistryBab1,chemistry1)); CurriculumCourseService.save(new CurriculumCourse(chemistryBab1,chemistry1));
InscriptionRequest inscriptionRequest = new InscriptionRequest("helen","prenom","non","helen@gmail.com","america",new Date(),(long) 1,RequestState.Pending,"yes.png","password"); InscriptionRequest inscriptionRequest = new InscriptionRequest("helen","prenom","non","helen@gmail.com","america",new Date(),(long) 1,RequestState.Pending,"yes.png","password", null, new Date());
inscriptionService.save(inscriptionRequest); inscriptionService.save(inscriptionRequest);
} }
} }

View File

@ -87,7 +87,8 @@ public class ProtectionService {
toReturn.put("curriculum", inscriptionRequest.getCurriculumId()); toReturn.put("curriculum", inscriptionRequest.getCurriculumId());
toReturn.put("state", inscriptionRequest.getState()); toReturn.put("state", inscriptionRequest.getState());
toReturn.put("profilePictureUrl", inscriptionRequest.getProfilePicture()); toReturn.put("profilePictureUrl", inscriptionRequest.getProfilePicture());
toReturn.put("identityCard", inscriptionRequest.getIdentityCard());
toReturn.put("submissionDate", inscriptionRequest.getSubmissionDate());
return toReturn; return toReturn;
} }

View File

@ -19,10 +19,12 @@ public class InscriptionRequest {
private Long curriculumId; private Long curriculumId;
private RequestState state; private RequestState state;
private String profilePicture; private String profilePicture;
private String password; private String password;
private String identityCard;
private Date submissionDate;
public InscriptionRequest(){} public InscriptionRequest(){}
public InscriptionRequest(String lastName, String firstName, String address, String email, String country, Date birthDate,Long curriculumId, RequestState state, String profilePicture, String password){
public InscriptionRequest(String lastName, String firstName, String address, String email, String country, Date birthDate,Long curriculumId, RequestState state, String profilePicture, String password, String identityCard, Date submissionDate){
this.lastName = lastName; this.lastName = lastName;
this.firstName = firstName; this.firstName = firstName;
this.address = address; this.address = address;
@ -33,6 +35,8 @@ public class InscriptionRequest {
this.state = state; this.state = state;
this.profilePicture = profilePicture; this.profilePicture = profilePicture;
this.password = password; this.password = password;
this.identityCard = identityCard;
this.submissionDate = submissionDate;
} }
public int getId() { public int getId() {
@ -118,4 +122,20 @@ public class InscriptionRequest {
public void setPassword(String password) { public void setPassword(String password) {
this.password = password; this.password = password;
} }
public String getIdentityCard() {
return identityCard;
}
public void setIdentityCard(String identityCard) {
this.identityCard = identityCard;
}
public Date getSubmissionDate() {
return submissionDate;
}
public void setSubmissionDate(Date submissionDate) {
this.submissionDate = submissionDate;
}
} }

View File

@ -26,14 +26,15 @@
</div> </div>
<div v-if="windowsState === 0"> <div v-if="windowsState === 0">
<div v-for="item of requests"> <div v-for="item of requests">
<div class="bodu" v-if="item.state === 'Pending'"> <div class="bodu">
<div class="container"> <div class="container">
<div class="id"><a>{{item.id}}</a></div> <div class="date">{{item.submissionDate.slice(0, 10)}}</div>
<div class="surname"><a>{{item.lastName}}</a></div> <div class="state">{{item.state}}</div>
<div class="firstname"><a>{{item.firstName}}</a></div> <div class="surname">{{item.lastName}}</div>
<div class="firstname">{{item.firstName}}</div>
<div class="accept" v-if="item.state === 'Pending'"><button @click="windowsState=2;targetId=item.id;" style="background-color:rgb(0,105,50);">{{i18n("request.accept")}}</button></div>
<div class="refuse" v-if="item.state === 'Pending'"><button @click="upPage(item.id,'Refused')" style="background-color:rgb(105,0,0);">{{i18n("request.refuse")}}</button></div>
<div class="infos"><button style="background-color:rgb(105,05,105);" @click="targetId=item.id;windowsState=1;">{{i18n("request.moreInfos")}}</button></div> <div class="infos"><button style="background-color:rgb(105,05,105);" @click="targetId=item.id;windowsState=1;">{{i18n("request.moreInfos")}}</button></div>
<div class="accept"><button @click="windowsState=2;targetId=item.id;" style="background-color:rgb(0,105,50);">{{i18n("request.accept")}}</button></div>
<div class="refuse"><button @click="upPage(item.id,'Refused')" style="background-color:rgb(105,0,0);">{{i18n("request.refuse")}}</button></div>
</div> </div>
</div> </div>
</div> </div>
@ -51,11 +52,10 @@
height:100px; height:100px;
font-size:20px; font-size:20px;
display:grid; display:grid;
grid-template-columns:[firstCol-start]100px[firstCol-end secondCol-start]150px[secondCol-end thirdCol-start]200px[thirdCol-end fourthCol-start]150px[fourthCol-end]150px[fifthCol-end]150px[sixthCol-end]150px[endCol]; grid-template-columns:[firstCol-start]150px[firstCol-end secondCol-start]200px[secondCol-end thirdCol-start]200px[thirdCol-end fourthCol-start]150px[fourthCol-end]150px[fifthCol-end]150px[sixthCol-end]150px[endCol];
grid-template-areas: grid-template-areas:
"id type surname firstname infos accept refuse"; "date state surname firstname accept refuse infos";
column-gap:10px; column-gap:10px;
} }
.infos { .infos {
@ -77,8 +77,14 @@
grid-area:titles; grid-area:titles;
background-color:rgb(215,215,215); background-color:rgb(215,215,215);
} }
.id{ .date{
grid-area:id; grid-area:date;
margin-left:40px;
align-self:center;
}
.state{
grid-area:state;
margin-left:40px; margin-left:40px;
align-self:center; align-self:center;
} }

View File

@ -115,7 +115,7 @@
<a>{{i18n("login.guest.alregister")}}</a> <a>{{i18n("login.guest.alregister")}}</a>
</div> </div>
</div> </div>
<div v-else> <div v-if="page === 1">
<div class="inputBox"> <div class="inputBox">
<p>{{i18n("login.guest.email")}}</p> <p>{{i18n("login.guest.email")}}</p>
<input type="mail" v-model="outputs.email"> <input type="mail" v-model="outputs.email">
@ -136,12 +136,11 @@
<p>{{i18n("Curriculum").toUpperCase()}}</p> <p>{{i18n("Curriculum").toUpperCase()}}</p>
<select v-model="outputs.curriculum"> <select v-model="outputs.curriculum">
<option v-for="item in curricula">{{item.curriculumId}}</option> <option v-for="item in curricula">{{item.curriculumId}}</option>
</select> </select>
</div> </div>
<div style="align-self:center;" class="inputBox"> <div style="align-self:center;" class="inputBox">
<button style="margin-top:25px;" @click="register(outputs.firstname, outputs.surname, outputs.birthday, outputs.password, outputs.email, outputs.address, outputs.country, outputs.curriculum, ppData);"> <button style="margin-top:25px;" @click="page++">
{{i18n("login.guest.submit")}} {{i18n("login.guest.nextpage")}}
</button> </button>
</div> </div>
<div class="switchpage"> <div class="switchpage">
@ -151,6 +150,12 @@
<a>{{i18n("login.guest.alregister")}}</a> <a>{{i18n("login.guest.alregister")}}</a>
</div> </div>
</div> </div>
<div v-if="page === 2">
<form novalidate enctype="multipart/form-data" class="inputBox">
Carte d'identité :
</form>
</div>
</form> </form>
</div> </div>
</div> </div>