Skip to content
GitLab
Explore
Sign in
Register
Commits on Source (2)
commit affichage collaborateur + fonctionnalité créer collaborateur ok
· 1d985290
cberge
authored
Jun 13, 2024
1d985290
Merge origin/Collaborateur
· 15f38265
cberge
authored
Jun 13, 2024
15f38265
Show whitespace changes
Inline
Side-by-side
ProDigiUp_GesCollab/pom.xml
View file @
15f38265
...
@@ -13,6 +13,27 @@
...
@@ -13,6 +13,27 @@
</properties>
</properties>
<dependencies>
<dependencies>
<dependency>
<groupId>
org.mariadb.jdbc
</groupId>
<artifactId>
mariadb-java-client
</artifactId>
<version>
3.3.3
</version>
</dependency>
<dependency>
<groupId>
org.glassfish.web
</groupId>
<artifactId>
jakarta.servlet.jsp.jstl
</artifactId>
<version>
2.0.0
</version>
</dependency>
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>
javax.servlet
</groupId>
<artifactId>
javax.servlet-api
</artifactId>
<version>
3.1.0
</version>
<scope>
provided
</scope>
</dependency>
<dependency>
<dependency>
<groupId>
jakarta.platform
</groupId>
<groupId>
jakarta.platform
</groupId>
<artifactId>
jakarta.jakartaee-api
</artifactId>
<artifactId>
jakarta.jakartaee-api
</artifactId>
...
...
ProDigiUp_GesCollab/src/main/java/controllers/CreerCollaborateur.java
0 → 100644
View file @
15f38265
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Other/File.java to edit this template
*/
package
controllers
;
import
dao.CollaborateurDao
;
import
entities.Collaborateur
;
import
forms.CreerCollaborateurFormChecker
;
import
jakarta.servlet.ServletException
;
import
jakarta.servlet.annotation.WebServlet
;
import
jakarta.servlet.http.HttpServlet
;
import
jakarta.servlet.http.HttpServletRequest
;
import
jakarta.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.nio.charset.StandardCharsets
;
import
java.sql.SQLException
;
import
java.util.logging.Level
;
import
java.util.logging.Logger
;
/**
*
* @author cberge
*/
@WebServlet
(
"/creer_collaborateur"
)
@SuppressWarnings
(
"serial"
)
public
class
CreerCollaborateur
extends
HttpServlet
{
@Override
protected
void
doGet
(
HttpServletRequest
req
,
HttpServletResponse
resp
)
throws
ServletException
,
IOException
{
req
.
getRequestDispatcher
(
"/WEB-INF/jsp/creerCollaborateur.jsp"
).
forward
(
req
,
resp
);
}
@Override
protected
void
doPost
(
HttpServletRequest
req
,
HttpServletResponse
resp
)
throws
ServletException
,
IOException
{
req
.
setCharacterEncoding
(
StandardCharsets
.
UTF_8
.
toString
());
CreerCollaborateurFormChecker
nv
=
new
CreerCollaborateurFormChecker
(
req
);
Collaborateur
collaborateur
=
nv
.
checkForm
();
if
(
nv
.
getErrors
().
isEmpty
()){
CollaborateurDao
collaborateurDao
=
new
CollaborateurDao
();
// Appel de la méthode create du DOA
// Si une erreur dans l'insert alors une SQLException est levé
// On l'intercepte dans le catch et on affiche un msg d'erreur à l'utilisateur
try
{
collaborateurDao
.
create
(
collaborateur
);
Collaborateur
collab
=
collaborateurDao
.
read
(
collaborateur
.
getId
());
req
.
setAttribute
(
"collaborateur"
,
collab
);
req
.
setAttribute
(
"message"
,
"Votre collaborateur est bien enregistré"
);
req
.
getRequestDispatcher
(
"/WEB-INF/jsp/collaborateur.jsp"
).
forward
(
req
,
resp
);
}
catch
(
SQLException
ex
)
{
Logger
.
getLogger
(
CreerCollaborateur
.
class
.
getName
()).
log
(
Level
.
SEVERE
,
null
,
ex
);
req
.
setAttribute
(
"errorMsg"
,
"Votre formulaire comporte des erreurs"
);
req
.
getRequestDispatcher
(
"/WEB-INF/jsp/creerCollaborateur.jsp/"
).
forward
(
req
,
resp
);
}
}
else
{
req
.
setAttribute
(
"errorMsg"
,
"Votre formulaire comporte des erreurs"
);
req
.
getRequestDispatcher
(
"/WEB-INF/jsp/creerCollaborateur.jsp"
).
forward
(
req
,
resp
);
}
}
}
\ No newline at end of file
ProDigiUp_GesCollab/src/main/java/controllers/FicheCollaborateur.java
0 → 100644
View file @
15f38265
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Other/File.java to edit this template
*/
package
controllers
;
import
dao.CollaborateurDao
;
import
entities.Collaborateur
;
import
jakarta.servlet.ServletException
;
import
jakarta.servlet.annotation.WebServlet
;
import
jakarta.servlet.http.HttpServlet
;
import
jakarta.servlet.http.HttpServletRequest
;
import
jakarta.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
/**
*
* @author cberge
*/
@WebServlet
(
"/collaborateur"
)
public
class
FicheCollaborateur
extends
HttpServlet
{
@Override
protected
void
doGet
(
HttpServletRequest
req
,
HttpServletResponse
resp
)
throws
ServletException
,
IOException
{
//req.setCharacterEncoding(StandardCharsets.UTF_8.toString());
// Récupérer l'identifiant du collaborateur depuis la requête
int
collaborateurId
=
3
;
CollaborateurDao
collaborateurDao
=
new
CollaborateurDao
();
// Lire les informations du collaborateur depuis la base de données
Collaborateur
collaborateur
=
collaborateurDao
.
read
(
collaborateurId
);
// Transmettre les informations du collaborateur à la page JSP
req
.
setAttribute
(
"collaborateur"
,
collaborateur
);
req
.
getRequestDispatcher
(
"/WEB-INF/jsp/collaborateur.jsp"
).
forward
(
req
,
resp
);
}
}
ProDigiUp_GesCollab/src/main/java/dao/CollaborateurDao.java
0 → 100644
View file @
15f38265
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Other/File.java to edit this template
*/
package
dao
;
import
entities.Collaborateur
;
import
java.sql.PreparedStatement
;
import
java.sql.ResultSet
;
import
java.sql.SQLException
;
import
java.time.LocalDate
;
/**
*
* @author cberge
*/
public
class
CollaborateurDao
extends
Dao
<
Collaborateur
>
{
public
CollaborateurDao
()
{
super
(
"Collaborateur"
);
}
@Override
public
Collaborateur
read
(
Integer
id
)
{
Collaborateur
obj
=
null
;
String
sql
=
"SELECT * FROM collaborateur WHERE id_collaborateur=?"
;
PreparedStatement
pstmt
;
try
{
pstmt
=
connexion
.
prepareStatement
(
sql
);
pstmt
.
setInt
(
1
,
id
);
ResultSet
rs
=
pstmt
.
executeQuery
();
if
(
rs
.
first
())
{
obj
=
new
Collaborateur
();
obj
.
setId
(
rs
.
getInt
(
"id_collaborateur"
));
obj
.
setMatricule
(
rs
.
getInt
(
"matricule"
));
obj
.
setNom
(
rs
.
getString
(
"nom"
));
obj
.
setPrenom
(
rs
.
getString
(
"prenom"
));
obj
.
setDate_de_naissance
(
rs
.
getDate
(
"date_de_naissance"
).
toLocalDate
());
obj
.
setNumero_voie
(
rs
.
getString
(
"numero_voie"
));
obj
.
setAdresse
(
rs
.
getString
(
"adresse"
));
obj
.
setCode_postal
(
rs
.
getInt
(
"code_postal"
));
obj
.
setVille
(
rs
.
getString
(
"ville"
));
obj
.
setTelephone_personnel
(
rs
.
getString
(
"telephone_personnel"
));
obj
.
setStatut
(
rs
.
getString
(
"statut"
));
obj
.
setCategorie
(
rs
.
getString
(
"categorie"
));
obj
.
setGenre
(
rs
.
getString
(
"genre"
));
obj
.
setRqth
(
rs
.
getString
(
"rqth"
));
obj
.
setMetier
(
rs
.
getString
(
"metier"
));
}
}
catch
(
SQLException
ex
)
{
System
.
err
.
println
(
"Erreur lors de la lecture : "
+
ex
.
getMessage
());
}
return
obj
;
}
@Override
protected
Collaborateur
createObject
(
ResultSet
rs
)
throws
SQLException
{
Collaborateur
obj
=
new
Collaborateur
();
obj
.
setId
(
rs
.
getInt
(
"id_"
+
table
));
obj
.
setMatricule
(
rs
.
getInt
(
"matricule"
));
obj
.
setNom
(
rs
.
getString
(
"nom"
));
obj
.
setPrenom
(
rs
.
getString
(
"prenom"
));
obj
.
setDate_de_naissance
(
rs
.
getDate
(
"date_de_naissance"
).
toLocalDate
());
obj
.
setNumero_voie
(
rs
.
getString
(
"numero_voie"
));
obj
.
setAdresse
(
rs
.
getString
(
"adresse"
));
obj
.
setCode_postal
(
rs
.
getInt
(
"code_postal"
));
obj
.
setVille
(
rs
.
getString
(
"ville"
));
obj
.
setTelephone_personnel
(
rs
.
getString
(
"telephone_personnel"
));
obj
.
setStatut
(
rs
.
getString
(
"statut"
));
obj
.
setCategorie
(
rs
.
getString
(
"categorie"
));
obj
.
setGenre
(
rs
.
getString
(
"genre"
));
obj
.
setRqth
(
rs
.
getString
(
"rqth"
));
obj
.
setMetier
(
rs
.
getString
(
"metier"
));
return
obj
;
}
@Override
public
void
create
(
Collaborateur
obj
)
throws
SQLException
{
String
sql
=
"INSERT INTO collaborateur (matricule, nom, prenom, date_de_naissance, numero_voie, adresse, code_postal, ville, telephone_personnel, statut, categorie, genre, rqth, metier)"
+
"VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"
;
try
{
PreparedStatement
pstmt
=
connexion
.
prepareStatement
(
sql
,
PreparedStatement
.
RETURN_GENERATED_KEYS
);
pstmt
.
setInt
(
1
,
obj
.
getMatricule
());
pstmt
.
setString
(
2
,
obj
.
getNom
());
pstmt
.
setString
(
3
,
obj
.
getPrenom
());
LocalDate
localDate
=
obj
.
getDate_de_naissance
();
if
(
localDate
!=
null
)
{
pstmt
.
setDate
(
4
,
java
.
sql
.
Date
.
valueOf
(
localDate
));
}
else
{
pstmt
.
setDate
(
4
,
null
);
}
pstmt
.
setString
(
5
,
obj
.
getNumero_voie
());
pstmt
.
setString
(
6
,
obj
.
getAdresse
());
pstmt
.
setInt
(
7
,
obj
.
getCode_postal
());
pstmt
.
setString
(
8
,
obj
.
getVille
());
pstmt
.
setString
(
9
,
obj
.
getTelephone_personnel
());
pstmt
.
setString
(
10
,
obj
.
getStatut
());
pstmt
.
setString
(
11
,
obj
.
getCategorie
());
pstmt
.
setString
(
12
,
obj
.
getGenre
());
pstmt
.
setString
(
13
,
obj
.
getRqth
());
pstmt
.
setString
(
14
,
obj
.
getMetier
());
int
nbLines
=
pstmt
.
executeUpdate
();
if
(
nbLines
==
1
)
{
ResultSet
autoGeneratedKeys
=
pstmt
.
getGeneratedKeys
();
autoGeneratedKeys
.
first
();
int
id
=
autoGeneratedKeys
.
getInt
(
1
);
obj
.
setId
(
id
);
}
}
catch
(
SQLException
ex
)
{
System
.
err
.
println
(
"Erreur lors de l'insertion : "
+
ex
.
getMessage
());
throw
ex
;
}
}
@Override
public
void
update
(
Collaborateur
obj
){
String
sql
=
"UPDATE collaborateur SET matricule=?, nom=?, prenom=?, date_de_naissance=?, numero_voie=?, adresse=?, code_postal=?, ville=?, telephone_personnel=?, statut=?, categorie=?, genre=?, rqth=?, metier=?"
+
"WHERE id_collaborateur=?"
;
try
{
PreparedStatement
pstmt
=
connexion
.
prepareStatement
(
sql
);
pstmt
.
setInt
(
1
,
obj
.
getMatricule
());
pstmt
.
setString
(
2
,
obj
.
getNom
());
pstmt
.
setString
(
3
,
obj
.
getPrenom
());
LocalDate
localDate
=
obj
.
getDate_de_naissance
();
if
(
localDate
!=
null
)
{
pstmt
.
setDate
(
4
,
java
.
sql
.
Date
.
valueOf
(
localDate
));
}
else
{
pstmt
.
setDate
(
4
,
null
);
}
pstmt
.
setString
(
5
,
obj
.
getNumero_voie
());
pstmt
.
setString
(
6
,
obj
.
getAdresse
());
pstmt
.
setInt
(
7
,
obj
.
getCode_postal
());
pstmt
.
setString
(
8
,
obj
.
getVille
());
pstmt
.
setString
(
9
,
obj
.
getTelephone_personnel
());
pstmt
.
setString
(
10
,
obj
.
getStatut
());
pstmt
.
setString
(
11
,
obj
.
getCategorie
());
pstmt
.
setString
(
12
,
obj
.
getGenre
());
pstmt
.
setString
(
13
,
obj
.
getRqth
());
pstmt
.
setString
(
14
,
obj
.
getMetier
());
pstmt
.
executeUpdate
();
}
catch
(
SQLException
ex
){
System
.
out
.
println
(
"Erreur lors de l'update : "
+
ex
.
getMessage
());
}
}
}
ProDigiUp_GesCollab/src/main/java/dao/Dao.java
View file @
15f38265
...
@@ -30,7 +30,17 @@ public abstract class Dao<T extends Identifiable> {
...
@@ -30,7 +30,17 @@ public abstract class Dao<T extends Identifiable> {
protected
abstract
T
createObject
(
ResultSet
rs
)
throws
SQLException
;
protected
abstract
T
createObject
(
ResultSet
rs
)
throws
SQLException
;
protected
abstract
void
create
(
T
obj
)
throws
SQLException
;
protected
abstract
void
update
(
T
obj
);
public
void
save
(
T
obj
)
throws
SQLException
{
if
(
obj
.
getId
()
==
null
)
{
create
(
obj
);
}
else
{
update
(
obj
);
}
}
public
T
read
(
Integer
id
){
public
T
read
(
Integer
id
){
T
obj
=
null
;
T
obj
=
null
;
String
sql
=
"SELECT * FROM "
+
table
+
"WHERE id_"
+
table
+
"=?"
;
String
sql
=
"SELECT * FROM "
+
table
+
"WHERE id_"
+
table
+
"=?"
;
...
...
ProDigiUp_GesCollab/src/main/java/dao/DaoFactory.java
View file @
15f38265
...
@@ -9,6 +9,16 @@ package dao;
...
@@ -9,6 +9,16 @@ package dao;
* @author cberge
* @author cberge
*/
*/
public
class
DaoFactory
{
public
class
DaoFactory
{
private
static
CollaborateurDao
collaborateurDao
;
private
DaoFactory
(){
}
public
static
CollaborateurDao
getCollaborateurDao
(){
if
(
collaborateurDao
==
null
)
{
collaborateurDao
=
new
CollaborateurDao
();
}
return
collaborateurDao
;
}
}
}
ProDigiUp_GesCollab/src/main/java/dao/TestCollaborateur.java
0 → 100644
View file @
15f38265
/* +
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Other/File.java to edit this template
*/
package
dao
;
import
entities.Collaborateur
;
/**
*
* @author cberge
*/
public
class
TestCollaborateur
{
/**
* @param args the command line arguments
*/
public
static
void
main
(
String
args
[])
{
// TODO code application logic here
CollaborateurDao
collDao
=
new
CollaborateurDao
();
Collaborateur
collab
=
collDao
.
read
(
1
);
System
.
out
.
println
(
"collab : "
+
collab
.
getId
()
+
" "
+
collab
.
getMatricule
()
+
" "
+
collab
.
getNom
()
+
" "
+
collab
.
getPrenom
()
+
" "
+
collab
.
getDate_de_naissance
()
+
" "
+
collab
.
getNumero_voie
()
+
" "
+
collab
.
getAdresse
()
+
" "
+
collab
.
getCode_postal
()
+
" "
+
collab
.
getVille
()
+
" "
+
collab
.
getTelephone_personnel
()
+
" "
+
collab
.
getStatut
()
+
" "
+
collab
.
getCategorie
()
+
" "
+
collab
.
getGenre
()
+
" "
+
collab
.
getRqth
()
+
" "
+
collab
.
getMetier
());
}
}
ProDigiUp_GesCollab/src/main/java/entities/Collaborateur.java
0 → 100644
View file @
15f38265
package
entities
;
import
java.io.Serializable
;
import
java.util.Objects
;
import
java.time.LocalDate
;
/**
*
* @author cberge
*/
@SuppressWarnings
(
"serial"
)
public
class
Collaborateur
implements
Identifiable
,
Serializable
{
private
Integer
id
;
private
Integer
matricule
;
private
String
nom
;
private
String
prenom
;
private
LocalDate
date_de_naissance
;
private
String
numero_voie
;
private
String
adresse
;
private
Integer
code_postal
;
private
String
ville
;
private
String
telephone_personnel
;
private
String
statut
;
private
String
categorie
;
private
String
genre
;
private
String
rqth
;
private
String
metier
;
@Override
public
String
toString
()
{
StringBuilder
sb
=
new
StringBuilder
();
sb
.
append
(
"Collaborateur{"
);
sb
.
append
(
"id="
).
append
(
id
);
sb
.
append
(
", matricule="
).
append
(
matricule
);
sb
.
append
(
", nom="
).
append
(
nom
);
sb
.
append
(
", prenom="
).
append
(
prenom
);
sb
.
append
(
", date_de_naissance="
).
append
(
date_de_naissance
);
sb
.
append
(
", numero_voie="
).
append
(
numero_voie
);
sb
.
append
(
", adresse="
).
append
(
adresse
);
sb
.
append
(
", code_postal="
).
append
(
code_postal
);
sb
.
append
(
", ville="
).
append
(
ville
);
sb
.
append
(
", telephone_personnel="
).
append
(
telephone_personnel
);
sb
.
append
(
", statut="
).
append
(
statut
);
sb
.
append
(
", categorie="
).
append
(
categorie
);
sb
.
append
(
", genre="
).
append
(
genre
);
sb
.
append
(
", rqth="
).
append
(
rqth
);
sb
.
append
(
", metier="
).
append
(
metier
);
sb
.
append
(
'}'
);
return
sb
.
toString
();
}
@Override
public
int
hashCode
()
{
int
hash
=
7
;
hash
=
89
*
hash
+
Objects
.
hashCode
(
this
.
id
);
hash
=
89
*
hash
+
Objects
.
hashCode
(
this
.
matricule
);
hash
=
89
*
hash
+
Objects
.
hashCode
(
this
.
nom
);
hash
=
89
*
hash
+
Objects
.
hashCode
(
this
.
prenom
);
hash
=
89
*
hash
+
Objects
.
hashCode
(
this
.
date_de_naissance
);
hash
=
89
*
hash
+
Objects
.
hashCode
(
this
.
numero_voie
);
hash
=
89
*
hash
+
Objects
.
hashCode
(
this
.
adresse
);
hash
=
89
*
hash
+
Objects
.
hashCode
(
this
.
code_postal
);
hash
=
89
*
hash
+
Objects
.
hashCode
(
this
.
ville
);
hash
=
89
*
hash
+
Objects
.
hashCode
(
this
.
telephone_personnel
);
hash
=
89
*
hash
+
Objects
.
hashCode
(
this
.
statut
);
hash
=
89
*
hash
+
Objects
.
hashCode
(
this
.
categorie
);
hash
=
89
*
hash
+
Objects
.
hashCode
(
this
.
genre
);
hash
=
89
*
hash
+
Objects
.
hashCode
(
this
.
rqth
);
hash
=
89
*
hash
+
Objects
.
hashCode
(
this
.
metier
);
return
hash
;
}
@Override
public
boolean
equals
(
Object
obj
)
{
if
(
this
==
obj
)
{
return
true
;
}
if
(
obj
==
null
)
{
return
false
;
}
if
(
getClass
()
!=
obj
.
getClass
())
{
return
false
;
}
final
Collaborateur
other
=
(
Collaborateur
)
obj
;
if
(!
Objects
.
equals
(
this
.
nom
,
other
.
nom
))
{
return
false
;
}
if
(!
Objects
.
equals
(
this
.
prenom
,
other
.
prenom
))
{
return
false
;
}
if
(!
Objects
.
equals
(
this
.
adresse
,
other
.
adresse
))
{
return
false
;
}
if
(!
Objects
.
equals
(
this
.
ville
,
other
.
ville
))
{
return
false
;
}
if
(!
Objects
.
equals
(
this
.
statut
,
other
.
statut
))
{
return
false
;
}
if
(!
Objects
.
equals
(
this
.
categorie
,
other
.
categorie
))
{
return
false
;
}
if
(!
Objects
.
equals
(
this
.
genre
,
other
.
genre
))
{
return
false
;
}
if
(!
Objects
.
equals
(
this
.
rqth
,
other
.
rqth
))
{
return
false
;
}
if
(!
Objects
.
equals
(
this
.
metier
,
other
.
metier
))
{
return
false
;
}
if
(!
Objects
.
equals
(
this
.
id
,
other
.
id
))
{
return
false
;
}
if
(!
Objects
.
equals
(
this
.
matricule
,
other
.
matricule
))
{
return
false
;
}
if
(!
Objects
.
equals
(
this
.
date_de_naissance
,
other
.
date_de_naissance
))
{
return
false
;
}
if
(!
Objects
.
equals
(
this
.
numero_voie
,
other
.
numero_voie
))
{
return
false
;
}
if
(!
Objects
.
equals
(
this
.
code_postal
,
other
.
code_postal
))
{
return
false
;
}
return
Objects
.
equals
(
this
.
telephone_personnel
,
other
.
telephone_personnel
);
}
@Override
public
Integer
getId
()
{
return
id
;
}
@Override
public
void
setId
(
Integer
id
)
{
this
.
id
=
id
;
}
public
Integer
getMatricule
()
{
return
matricule
;
}
public
void
setMatricule
(
Integer
matricule
)
{
this
.
matricule
=
matricule
;
}
public
String
getNom
()
{
return
nom
;
}
public
void
setNom
(
String
nom
)
{
this
.
nom
=
nom
;
}
public
String
getPrenom
()
{
return
prenom
;
}
public
void
setPrenom
(
String
prenom
)
{
this
.
prenom
=
prenom
;
}
public
LocalDate
getDate_de_naissance
()
{
return
date_de_naissance
;
}
public
void
setDate_de_naissance
(
LocalDate
date_de_naissance
)
{
this
.
date_de_naissance
=
date_de_naissance
;
}
public
String
getNumero_voie
()
{
return
numero_voie
;
}
public
void
setNumero_voie
(
String
numero_voie
)
{
this
.
numero_voie
=
numero_voie
;
}
public
String
getAdresse
()
{
return
adresse
;
}
public
void
setAdresse
(
String
adresse
)
{
this
.
adresse
=
adresse
;
}
public
Integer
getCode_postal
()
{
return
code_postal
;
}
public
void
setCode_postal
(
Integer
code_postal
)
{
this
.
code_postal
=
code_postal
;
}
public
String
getVille
()
{
return
ville
;
}
public
void
setVille
(
String
ville
)
{
this
.
ville
=
ville
;
}
public
String
getTelephone_personnel
()
{
return
telephone_personnel
;
}
public
void
setTelephone_personnel
(
String
telephone_personnel
)
{
this
.
telephone_personnel
=
telephone_personnel
;
}
public
String
getStatut
()
{
return
statut
;
}
public
void
setStatut
(
String
statut
)
{
this
.
statut
=
statut
;
}
public
String
getCategorie
()
{
return
categorie
;
}
public
void
setCategorie
(
String
categorie
)
{
this
.
categorie
=
categorie
;
}
public
String
getGenre
()
{
return
genre
;
}
public
void
setGenre
(
String
genre
)
{
this
.
genre
=
genre
;
}
public
String
getRqth
()
{
return
rqth
;
}
public
void
setRqth
(
String
rqth
)
{
this
.
rqth
=
rqth
;
}
public
String
getMetier
()
{
return
metier
;
}
public
void
setMetier
(
String
metier
)
{
this
.
metier
=
metier
;
}
}
ProDigiUp_GesCollab/src/main/java/forms/CreerCollaborateurFormChecker.java
0 → 100644
View file @
15f38265
package
forms
;
import
dao.DaoFactory
;
import
entities.Collaborateur
;
import
forms.FormChecker
;
import
jakarta.servlet.http.HttpServletRequest
;
import
java.util.Date
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.time.LocalDate
;
import
java.time.format.DateTimeFormatter
;
import
java.time.format.DateTimeParseException
;
public
class
CreerCollaborateurFormChecker
extends
FormChecker
<
Collaborateur
>
{
public
CreerCollaborateurFormChecker
(
HttpServletRequest
request
)
{
super
(
request
);
}
@Override
public
Collaborateur
checkForm
()
{
Collaborateur
obj
=
new
Collaborateur
();
String
matriculeStr
=
request
.
getParameter
(
"matricule"
);
String
nom
=
request
.
getParameter
(
"nom"
);
String
prenom
=
request
.
getParameter
(
"prenom"
);
String
dateDeNaissanceStr
=
request
.
getParameter
(
"date_de_naissance"
);
String
numero_voie
=
request
.
getParameter
(
"numero_voie"
);
String
adresse
=
request
.
getParameter
(
"adresse"
);
String
codePostalStr
=
request
.
getParameter
(
"code_postal"
);
String
ville
=
request
.
getParameter
(
"ville"
);
String
telephone_personnel
=
request
.
getParameter
(
"telephone_personnel"
);
String
statut
=
request
.
getParameter
(
"statut"
);
String
categorie
=
request
.
getParameter
(
"categorie"
);
String
genre
=
request
.
getParameter
(
"genre"
);
String
rqth
=
request
.
getParameter
(
"rqth"
);
String
metier
=
request
.
getParameter
(
"metier"
);
// Convertir les champs Integer
try
{
Integer
matricule
=
Integer
.
parseInt
(
matriculeStr
);
obj
.
setMatricule
(
matricule
);
}
catch
(
NumberFormatException
e
)
{
System
.
err
.
println
(
"Erreur de conversion pour le champ matricule : "
+
e
.
getMessage
());
}
try
{
Integer
code_postal
=
Integer
.
parseInt
(
codePostalStr
);
obj
.
setCode_postal
(
code_postal
);
}
catch
(
NumberFormatException
e
)
{
System
.
err
.
println
(
"Erreur de conversion pour le champ code_postal : "
+
e
.
getMessage
());
}
/* Convertir les champs Date
String dateDeNaissanceStr = getParameter("date_de_naissance");
Date date_de_naissance = null;
if (dateDeNaissanceStr != null && !dateDeNaissanceStr.isEmpty()) {
try {
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
date_de_naissance = formatter.parse(dateDeNaissanceStr);
obj.setDate_de_naissance(date_de_naissance);
} catch (ParseException e) {
System.err.println("Erreur de conversion pour le champ date_de_naissance : " + e.getMessage());
}
} else {
System.err.println("Le champ date_de_naissance est vide ou non valide.");
}*/
// Convertir les champs Date
LocalDate
date_de_naissance
=
null
;
if
(
dateDeNaissanceStr
!=
null
&&
!
dateDeNaissanceStr
.
isEmpty
())
{
try
{
DateTimeFormatter
formatter
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd"
);
date_de_naissance
=
LocalDate
.
parse
(
dateDeNaissanceStr
,
formatter
);
obj
.
setDate_de_naissance
(
date_de_naissance
);
}
catch
(
DateTimeParseException
e
)
{
setError
(
"date_de_naissance"
,
"Erreur de conversion pour le champ date_de_naissance : "
+
e
.
getMessage
());
}
}
else
{
setError
(
"date_de_naissance"
,
"Le champ date_de_naissance est vide ou non valide."
);
}
// Traiter les autres champs String
obj
.
setNom
(
nom
);
obj
.
setPrenom
(
prenom
);
obj
.
setNumero_voie
(
numero_voie
);
obj
.
setAdresse
(
adresse
);
obj
.
setVille
(
ville
);
obj
.
setTelephone_personnel
(
telephone_personnel
);
obj
.
setStatut
(
statut
);
obj
.
setCategorie
(
categorie
);
obj
.
setGenre
(
genre
);
obj
.
setRqth
(
rqth
);
obj
.
setMetier
(
metier
);
if
(
errors
.
isEmpty
()){
//DaoFactory.getCollaborateurDao().save(obj);
}
request
.
setAttribute
(
"bean"
,
obj
);
return
obj
;
}
}
\ No newline at end of file
ProDigiUp_GesCollab/src/main/java/forms/FormChecker.java
0 → 100644
View file @
15f38265
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Other/File.java to edit this template
*/
package
forms
;
import
jakarta.servlet.http.HttpServletRequest
;
import
java.util.HashMap
;
import
java.util.Map
;
/**
*
* @author cberge
*/
public
abstract
class
FormChecker
<
T
>{
protected
Map
<
String
,
String
>
errors
;
protected
HttpServletRequest
request
;
public
FormChecker
(
HttpServletRequest
request
)
{
this
.
errors
=
new
HashMap
<>();
this
.
request
=
request
;
}
public
abstract
T
checkForm
();
public
Map
<
String
,
String
>
getErrors
()
{
return
errors
;
}
public
boolean
hasErrors
()
{
return
!
errors
.
isEmpty
();
}
protected
void
setError
(
String
key
,
String
value
)
{
this
.
errors
.
put
(
key
,
value
);
}
protected
String
getParameter
(
String
key
)
{
return
request
.
getParameter
(
key
)
==
null
?
""
:
request
.
getParameter
(
key
);
}
}
ProDigiUp_GesCollab/src/main/webapp/WEB-INF/web.xml
View file @
15f38265
...
@@ -8,4 +8,11 @@
...
@@ -8,4 +8,11 @@
30
30
</session-timeout>
</session-timeout>
</session-config>
</session-config>
<!--<jsp-config>
<taglib>
<taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri>
<taglib-location>/WEB-INF/tld/c.tld</taglib-location>
</taglib>
</jsp-config>-->
</web-app>
</web-app>
ProDigiUp_GesCollab/src/main/webapp/index.html
deleted
100644 → 0
View file @
083fada1
<!DOCTYPE html>
<html>
<head>
<title>
Start Page
</title>
<meta
http-equiv=
"Content-Type"
content=
"text/html; charset=UTF-8"
>
</head>
<body>
<h1>
Hello World!
</h1>
</body>
</html>