IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement Web en Java Discussion :

Mettre en évidence les modifications apportées dans une BDD


Sujet :

Développement Web en Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Femme Profil pro
    Inscrit en
    Mai 2012
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 360
    Par défaut Mettre en évidence les modifications apportées dans une BDD
    Bonjour,
    J'ignore si c'est au bon endroit pour poster mon sujet de discussion, mais si cela n'est pas le cas, je m'en excuse d'avance.
    Je suis en train de développer une application qui permettra de gérer les horaire du personnel.
    Dès lors, les horaires des personnes pourront être amenés à être modifié.
    Comment puis je faire que si les horaires sont modifiés par quelqu'un, que les modifications apporté soit, par exemple en rouge, si une autre personne est amené à consulter les horaires ?

    si dessous ma classe Jour.java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
     
    package com.maison.enfant.gestion.horaire.entitybeans;
     
    @Entity
    @Table(name = "jour", catalog = "gestionhoraire")
    public class Jour implements java.io.Serializable {
     
    	private Integer idJour;
    	private Absence absence;
    	private Semaine semaine;
    	private String jour;
    	private Time debutHoraire;
    	private Time finHoraire;
    	private String typeHoraire;
    	private String libelleJour;
    	private int indexJour;
    	private String dureeTravail;
    	private String dateJour;
    	private Integer mois;
    	private Integer annee;
    	private Set<Perssemainecomptjour> perssemainecomptjours = new HashSet<Perssemainecomptjour>(
    			0);
    	private Set<Perssemainecompt> perssemainecompts = new HashSet<Perssemainecompt>(
    			0);
     
    	public Jour() {
    	}
     
    	public Jour(Absence absence, Semaine semaine, String typeHoraire,
    			String libelleJour, int indexJour) {
    		this.absence = absence;
    		this.semaine = semaine;
    		this.typeHoraire = typeHoraire;
    		this.libelleJour = libelleJour;
    		this.indexJour = indexJour;
    	}
     
    	public Jour(Absence absence, Semaine semaine, String jour,
    			Time debutHoraire, Time finHoraire, String typeHoraire,
    			String libelleJour, int indexJour, String dureeTravail,
    			String dateJour, Integer mois, Integer annee,
    			Set<Perssemainecomptjour> perssemainecomptjours,
    			Set<Perssemainecompt> perssemainecompts) {
    		this.absence = absence;
    		this.semaine = semaine;
    		this.jour = jour;
    		this.debutHoraire = debutHoraire;
    		this.finHoraire = finHoraire;
    		this.typeHoraire = typeHoraire;
    		this.libelleJour = libelleJour;
    		this.indexJour = indexJour;
    		this.dureeTravail = dureeTravail;
    		this.dateJour = dateJour;
    		this.mois = mois;
    		this.annee = annee;
    		this.perssemainecomptjours = perssemainecomptjours;
    		this.perssemainecompts = perssemainecompts;
    	}
     
    	@Id
    	@GeneratedValue(strategy = IDENTITY)
    	@Column(name = "idJour", unique = true, nullable = false)
    	public Integer getIdJour() {
    		return this.idJour;
    	}
     
    	public void setIdJour(Integer idJour) {
    		this.idJour = idJour;
    	}
     
    	@ManyToOne(fetch = FetchType.LAZY)
    	@JoinColumn(name = "idAbsence", nullable = false)
    	public Absence getAbsence() {
    		return this.absence;
    	}
     
    	public void setAbsence(Absence absence) {
    		this.absence = absence;
    	}
     
    	@ManyToOne(fetch = FetchType.LAZY)
    	@JoinColumn(name = "idSemaine", nullable = false)
    	public Semaine getSemaine() {
    		return this.semaine;
    	}
     
    	public void setSemaine(Semaine semaine) {
    		this.semaine = semaine;
    	}
     
    	@Column(name = "jour", length = 50)
    	public String getJour() {
    		return this.jour;
    	}
     
    	public void setJour(String jour) {
    		this.jour = jour;
    	}
     
    	@Column(name = "debutHoraire", length = 8)
    	public Time getDebutHoraire() {
    		return this.debutHoraire;
    	}
     
    	public void setDebutHoraire(Time debutHoraire) {
    		this.debutHoraire = debutHoraire;
    	}
     
     
    	@Column(name = "finHoraire", length = 8)
    	public Time getFinHoraire() {
    		return this.finHoraire;
    	}
     
    	public void setFinHoraire(Time finHoraire) {
    		this.finHoraire = finHoraire;
    	}
     
    	@Column(name = "typeHoraire", nullable = false, length = 45)
    	public String getTypeHoraire() {
    		return this.typeHoraire;
    	}
     
    	public void setTypeHoraire(String typeHoraire) {
    		this.typeHoraire = typeHoraire;
    	}
     
    	@Column(name = "libelleJour", nullable = false, length = 45)
    	public String getLibelleJour() {
    		return this.libelleJour;
    	}
     
    	public void setLibelleJour(String libelleJour) {
    		this.libelleJour = libelleJour;
    	}
     
    	@Column(name = "indexJour", nullable = false)
    	public int getIndexJour() {
    		return this.indexJour;
    	}
     
    	public void setIndexJour(int indexJour) {
    		this.indexJour = indexJour;
    	}
     
    	@Column(name = "dureeTravail", length = 6)
    	public String getDureeTravail() {
    		return this.dureeTravail;
    	}
     
    	public void setDureeTravail(String dureeTravail) {
    		this.dureeTravail = dureeTravail;
    	}
     
    	@Column(name = "dateJour", length = 45)
    	public String getDateJour() {
    		return this.dateJour;
    	}
     
    	public void setDateJour(String dateJour) {
    		this.dateJour = dateJour;
    	}
     
    	@Column(name = "mois")
    	public Integer getMois() {
    		return this.mois;
    	}
     
    	public void setMois(Integer mois) {
    		this.mois = mois;
    	}
     
    	@Column(name = "annee")
    	public Integer getAnnee() {
    		return this.annee;
    	}
     
    	public void setAnnee(Integer annee) {
    		this.annee = annee;
    	}
     
    	@OneToMany(fetch = FetchType.LAZY, mappedBy = "jour")
    	public Set<Perssemainecomptjour> getPerssemainecomptjours() {
    		return this.perssemainecomptjours;
    	}
     
    	public void setPerssemainecomptjours(
    			Set<Perssemainecomptjour> perssemainecomptjours) {
    		this.perssemainecomptjours = perssemainecomptjours;
    	}
     
    	@OneToMany(fetch = FetchType.LAZY, mappedBy = "jour")
    	public Set<Perssemainecompt> getPerssemainecompts() {
    		return this.perssemainecompts;
    	}
     
    	public void setPerssemainecompts(Set<Perssemainecompt> perssemainecompts) {
    		this.perssemainecompts = perssemainecompts;
    	}
     
    }
    Une petite partie de la méthode du chargement des horaires
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    281
    282
    283
    284
    285
    286
    287
    288
    289
    290
    291
    292
    293
    294
    295
    296
    297
    298
    299
    300
    301
    302
    303
    304
    305
    306
    307
    308
    309
    310
    311
    312
    313
    314
    315
    316
    317
    318
    319
    320
    321
    322
    323
    324
    325
    326
    327
    328
    329
    330
    331
    332
    333
    334
    335
    336
    337
    338
     
    public String loadUniteWeek() throws Exception {
    if (personneInSession == null){
    	return "login";
    }	
     
    HttpServletRequest request = ServletActionContext.getRequest();
    List<PlanningPersonneDisp> planningPersonneList = new ArrayList<PlanningPersonneDisp>();
     
    UniteDTO uniteDTOFromDataBAse = null;
     
     
    if (idSemaineToLoad != null){
     
    	setIdSemaineSelected(this.idSemaineToLoad);
    	System.out.println("idSemaineToLoad "+idSemaineToLoad);
    	SemaineDTO semaineDTOFromDataBase = this.semaineService.getSemainebyId(Integer.parseInt(idSemaineToLoad));
    	PersSemaineComptDTO persSemaineComptDTOFromDataBAse = this.persSemaineComptService.getPersSemaineComptDTOByIdSemaine(semaineDTOFromDataBase);
     
    	this.semaineDto = semaineDTOFromDataBase;
    	SemaineDTO semDto = new SemaineDTO();
    	semaineDTOFromDataBase.getRoulementSem();
    	System.out.println("semaineDTOFromDataBase.getRoulementSem(); :"+semaineDTOFromDataBase.getRoulementSem());
    	SemaineDisplay semDisplay = new SemaineDisplay();
    	String roulementEnBdd = semaineDTOFromDataBase.getRoulementSem();
    	int idRoulementEnBdd = semaineDTOFromDataBase.getIdRoulementSem();
     
    	int numeroSemaineEnBdd = semaineDTOFromDataBase.getNumeroSemaine();
    	String typeSemaineEnBdd = semaineDTOFromDataBase.getType();
    	System.out.println("typeSemaineEnBdd : "+typeSemaineEnBdd);
    	Date dateDebutSemaineEnBdd = semaineDTOFromDataBase.getDateDebutSem();
    	Date dateFinSemaineEnBdd = semaineDTOFromDataBase.getDateFinSem();
    	Date dateModifSemaineEnBdd = semaineDTOFromDataBase.getDateModif();
    	semDisplay.setRoulSemaine(roulementEnBdd);	
    	semDisplay.setIdRoulement(idRoulementEnBdd);
    	semDisplay.setTypeSemaine(typeSemaineEnBdd);
    	semDisplay.setNumeroSemaine(numeroSemaineEnBdd);
     
    	semDisplay.setDateDebutSem(dateDebutSemaineEnBdd);
    	semDisplay.setDateFinSem(dateFinSemaineEnBdd);
    	semDisplay.setDateModif(dateModifSemaineEnBdd);
     
    	this.semDisp = semDisplay;
     
     
    	uniteDTOFromDataBAse = this.uniteService.getUniteByIdSemaine(Integer.parseInt(idSemaineToLoad));
     
     
    	this.uniteSelected = uniteDTOFromDataBAse.getIdUnite().toString();
    	System.out.println("this.uniteSelected **"+this.uniteSelected);
    	this.uniteDto = this.uniteService.getUnitebyId(Integer.parseInt(this.uniteSelected));
    	System.out.println("this.uniteDto ^^"+this.uniteDto.getIdUnite());
     
    	if(uniteSelected != null){
     
    		//LoginAction
    		List<ServiceDTO> ServiceDTOs = this.serviceService.getServiceDTOByUniteId(Integer.parseInt(uniteSelected));
    		if (ServiceDTOs.size() > 0){
    			ServiceDTO serviceDto = ServiceDTOs.get(0);
     
    			System.out.println("^^ ù!ù!ù!ù!ù! ^^ "+serviceDto.getIdService());
    			//Pour afficher la liste des roulement
    			this.listRoulementDto = this.serviceService.getRoulementByIdService(serviceDto.getIdService());
    			for(RoulementDTO roulDto : listRoulementDto){
     
    				//System.out.println("*** listRoulementDto   *****  : "+roulDto.getIdRoulement()+"-"+roulDto.getNomRoulement());
    			}
     
    		}
    	}
     
    	//2- retrouver la liste des services appartenant à l'unité
    	this.listServiceDto = this.serviceService.getServiceDTOByUniteId(Integer.parseInt(this.uniteSelected));
    	//System.out.println("this.listServiceDto "+this.listServiceDto);
    	for(ServiceDTO serviceDto : this.listServiceDto){
    		Integer idService = serviceDto.getIdService();
    						//System.out.println("idService "+idService);
     
    		//3- retrouver la liste des personnes appartenant aux services
    		this.listPersonneDto = this.personneService.getListPersonnebyServiceId(serviceDto);
     
     
    		for(PersonneDTO personneDto : this.listPersonneDto ){
     
    		//Pour que les cadre n'apparaissent pas mais que j'apparaisse
    		if((personneDto.getIdPersonne() ==1)||(personneDto.getDroitDTO().getIdDroit()==2)){ 
     
     
    		CompteurDTO comptDtoPersonne = 	this.persSemaineComptService.getCompteurByPersemaineComptDTOandSemaine(Integer.parseInt(idSemaineToLoad),personneDto.getIdPersonne() );
     
    			JourDisplay jourDisp = new JourDisplay();
    			JourDisplay jourDispAM = new JourDisplay();
    			JourDisplay jourDispPM = new JourDisplay();
    			JourDisplay jourDispDM = new JourDisplay();
     
     
     
    			//récupérer les info du compteur
     
     
    			List<JourDTO> listJourByIdPersone = new ArrayList<JourDTO>();
     
    			//4- utiliser le constructeur PlanningPersonneDisp pour creer la liste à afficher dans la jsp
    			//Récupération des données par rapport à l'idPersonne et à l'idSemaine 
    			List<PersSemaineComptDTO> getElementByPersAndSem = this.persSemaineComptService.getListPersSemaineComptByIdPersonneAndIdSemaine(personneDto, semaineDTOFromDataBase);
    			List<CompteurDTO> listCompteurDtos = new ArrayList<CompteurDTO>(); 
    			for(PersSemaineComptDTO persSemComptDto : getElementByPersAndSem ){						
     
    				jourDisp.setIdPersonne(personneDto.getIdPersonne());
    				jourDispAM.setIdPersonne(personneDto.getIdPersonne());
    				jourDispPM.setIdPersonne(personneDto.getIdPersonne());
    				jourDispDM.setIdPersonne(personneDto.getIdPersonne());
     
    				//System.out.println("persSemComptDto "+persSemComptDto.getIdPersSemaineCompt());
    				JourDTO jourDto = persSemComptDto.getJourDto();
     
     
     
    				//listCompteurDtos.add(comptDto);
    				//this.compteurDto.setHoraireFaite(horaireFait);
    				//this.compteurDto.setObservation(observationCompteur);
     
    				for (int i=1 ; i < 8; i++){
    					if (jourDto.getIndexJour() == i){
     
    						String field_absenceSelected = null;
    						int field_IdAbsenceSelected = 0;
    						String field_demiabsenceSelected = null;
    						int field_IdDemiAbsenceSelected = 0;
    						int field_presSelected = 0;
     
    						Time field_horairedebDemiAbs = null;
    						Time field_horairefinDemiAbs = null;
    						Time field_horairedm = null;
    						Time field_horairefm = null;
    						Time field_horaireda = null;
    						Time field_horairefa = null;
     
    						//variable pour demi-absence								
    						String field_horairedebDemiAbs_str = "00:00";
    						String field_horairefinDemiAbs_str = "00:00";
    						//variable pour le matins
    						String field_horairedm_str = "00:00";
    						String field_horairefm_str = "00:00";
    						//variable pour après midi
    						String field_horaireda_str = "00:00";
    						String field_horairefa_str = "00:00";
     
    						//Récupération des absence
    						if("Abs".equalsIgnoreCase(jourDto.getTypeHoraire())){
    							if(jourDto.getAbsenceDTO() != null)	field_absenceSelected= jourDto.getAbsenceDTO().getAbrAbsence(); field_IdAbsenceSelected = jourDto.getAbsenceDTO().getIdAbsence();
    						}
    						//Récupétration des demi absence et des horaire
    					/*	if ("DM".equalsIgnoreCase(jourDto.getTypeHoraire())){
    							field_horairedebDemiAbs = jourDto.getDebutHoraire();
    							field_horairefinDemiAbs = jourDto.getFinHoraire();
    							//gestion absence 
    							if(jourDto.getAbsenceDTO() != null)	field_demiabsenceSelected = jourDto.getAbsenceDTO().getAbrAbsence(); field_IdDemiAbsenceSelected = jourDto.getAbsenceDTO().getIdAbsence();
    							//gestion horaire
    							if (field_horairedebDemiAbs != null) field_horairedebDemiAbs_str = field_horairedebDemiAbs.toString().substring(0, 5);
    							if (field_horairefinDemiAbs != null) field_horairefinDemiAbs_str = field_horairefinDemiAbs.toString().substring(0, 5);
     
    						}*/
     
    						//Gestion des demi absence
    						if ("DMM".equalsIgnoreCase(jourDto.getTypeHoraire())){
    							field_horairedebDemiAbs = jourDto.getDebutHoraire();
    							field_horairefinDemiAbs = jourDto.getFinHoraire();
    							//gestion absence 
    							if(jourDto.getAbsenceDTO() != null)	field_demiabsenceSelected = jourDto.getAbsenceDTO().getAbrAbsence(); field_IdDemiAbsenceSelected = jourDto.getAbsenceDTO().getIdAbsence();
    							//gestion horaire
    							if (field_horairedebDemiAbs != null) field_horairedebDemiAbs_str = field_horairedebDemiAbs.toString().substring(0, 5);
    							if (field_horairefinDemiAbs != null) field_horairefinDemiAbs_str = field_horairefinDemiAbs.toString().substring(0, 5);
    						}
    						if ("DMA".equalsIgnoreCase(jourDto.getTypeHoraire())){
    							field_horairedebDemiAbs = jourDto.getDebutHoraire();
    							field_horairefinDemiAbs = jourDto.getFinHoraire();
    							//gestion absence 
    							if(jourDto.getAbsenceDTO() != null)	field_demiabsenceSelected = jourDto.getAbsenceDTO().getAbrAbsence(); field_IdDemiAbsenceSelected = jourDto.getAbsenceDTO().getIdAbsence();
    							//gestion horaire
    							if (field_horairedebDemiAbs != null) field_horairedebDemiAbs_str = field_horairedebDemiAbs.toString().substring(0, 5);
    							if (field_horairefinDemiAbs != null) field_horairefinDemiAbs_str = field_horairefinDemiAbs.toString().substring(0, 5);
     
    						}
     
     
     
     
    						System.out.println("*** jourDto.getTypeHoraire() : "+jourDto.getTypeHoraire());
    						//récupération des horaire matins
    						if("AM".equalsIgnoreCase(jourDto.getTypeHoraire())){
    							field_horairedm = jourDto.getDebutHoraire();
    							field_horairefm = jourDto.getFinHoraire();
    							System.out.println("*** jourDto.getDebutHoraire() : "+jourDto.getDebutHoraire());
    							System.out.println("*** jourDto.getFinHoraire() : "+jourDto.getFinHoraire());
    							//gestion horaire								
    							if (field_horairedm != null) field_horairedm_str = field_horairedm.toString().substring(0, 5);
    							if (field_horairefm != null) field_horairefm_str = field_horairefm.toString().substring(0, 5);
    						}
    						//récupération des horaires après midi
    						if("PM".equalsIgnoreCase(jourDto.getTypeHoraire())){
    							// 	String libJour = numemoJourValue.substring(0, 3); //
    							field_horaireda = jourDto.getDebutHoraire();
    							field_horairefa = jourDto.getFinHoraire();
    							//gestion horaire
    							if (field_horaireda != null) field_horaireda_str = field_horaireda.toString().substring(0, 5);
    							if (field_horairefa != null) field_horairefa_str = field_horairefa.toString().substring(0, 5);
    						}
     
    						if(field_demiabsenceSelected == null && field_absenceSelected == null) field_presSelected = 1;
     
    						//Lundi
    						if (i == 1){
    							if("AM".equalsIgnoreCase(jourDto.getTypeHoraire())){
    								jourDispAM.setHoraire1dm(field_horairedm_str);
    								System.out.println("jourDispAM.setHoraire1dm(field_horairedm_str) :"+field_horairedm_str);
    								jourDispAM.setHoraire1fm(field_horairefm_str);
    								System.out.println("jourDispAM.setHoraire1fm(field_horairefm_str) : "+field_horairefm_str);
     
    							}
    							if("PM".equalsIgnoreCase(jourDto.getTypeHoraire())){
    								jourDispPM.setHoraire1da(field_horaireda_str);
    								System.out.println("jourDisp.setHoraire1da(field_horaireda_str) : "+field_horaireda_str);
    								jourDispPM.setHoraire1fa(field_horairefa_str);
    								System.out.println("jourDisp.setHoraire1fa(field_horairefa_str) : +"+field_horairefa_str);
     
    							}
    							/*
    							if ("DM".equalsIgnoreCase(jourDto.getTypeHoraire())){
    								jourDispDM.setHoraire1debDemiAbs(field_horairedebDemiAbs_str);
    								System.out.println("ourDisp.setHoraire1debDemiAbs(field_horairedebDemiAbs_str) :"+field_horairedebDemiAbs_str);
    								jourDispDM.setHoraire1finDemiAbs(field_horairefinDemiAbs_str);
    								System.out.println("jourDisp.setHoraire1finDemiAbs(field_horairefinDemiAbs_str) :"+field_horairefinDemiAbs_str);
    								if(jourDto.getAbsenceDTO() != null)	field_demiabsenceSelected = jourDto.getAbsenceDTO().getAbrAbsence(); 
    								System.out.println("** field_demiabsenceSelected1 ** : "+field_demiabsenceSelected);
    							}*/
    							if ("DMA".equalsIgnoreCase(jourDto.getTypeHoraire())){
    								jourDispDM.setHoraire1debApresDemiAb(field_horairedebDemiAbs_str);
    								System.out.println("ourDisp.setHoraire1debDemiAbs(field_horairedebDemiAbs_str) :"+field_horairedebDemiAbs_str);
    								jourDispDM.setHoraire1finApresDemiAbs(field_horairefinDemiAbs_str);
    								System.out.println("jourDisp.setHoraire1finDemiAbs(field_horairefinDemiAbs_str) :"+field_horairefinDemiAbs_str);
    								if(jourDto.getAbsenceDTO() != null)	field_demiabsenceSelected = jourDto.getAbsenceDTO().getAbrAbsence(); 
    								System.out.println("** field_demiabsenceSelected1 ** : "+field_demiabsenceSelected);
    								jourDispDM.setTypeDemiAbsence1(jourDto.getTypeHoraire());
    								System.out.println("type demi absence dma? "+jourDto.getTypeHoraire());
    							}
    							else if ("DMM".equalsIgnoreCase(jourDto.getTypeHoraire())){
    								jourDispDM.setHoraire1debMatinDemiAbs(field_horairedebDemiAbs_str);
    								System.out.println("ourDisp.setHoraire1debDemiAbs(field_horairedebDemiAbs_str) :"+field_horairedebDemiAbs_str);
    								jourDispDM.setHoraire1finMatinDemiAbs(field_horairefinDemiAbs_str);
    								System.out.println("jourDisp.setHoraire1finDemiAbs(field_horairefinDemiAbs_str) :"+field_horairefinDemiAbs_str);
    								if(jourDto.getAbsenceDTO() != null)	field_demiabsenceSelected = jourDto.getAbsenceDTO().getAbrAbsence(); 
    								System.out.println("** field_demiabsenceSelected1 ** : "+field_demiabsenceSelected);
    								jourDispDM.setTypeDemiAbsence1(jourDto.getTypeHoraire());
    								System.out.println("type demi absence dmm? "+jourDto.getTypeHoraire());
    							}
    							String fieldAbsSelected = "";
    							if (field_absenceSelected != null) {
    								fieldAbsSelected = "absenceSelected"+i+"_"+personneDto.getIdPersonne();
    								//request.setAttribute("clef", valeur); sur la jsp on fait request.getAttribute("clef");
    								request.setAttribute(fieldAbsSelected, field_absenceSelected);
    							}
    							if (field_demiabsenceSelected != null) {
    								String fieldDemiAbsSelected = "demiabsenceSelected"+i+"_"+personneDto.getIdPersonne();
    								request.setAttribute(fieldDemiAbsSelected, field_demiabsenceSelected);										
    							}
     
    							jourDisp.setNameAbsenceSelected1(fieldAbsSelected);
    							jourDisp.setAbsenceSelected1(field_absenceSelected);
    							System.out.println("jourDisp.setAbsenceSelected1(field_absenceSelected) : "+field_absenceSelected);
    							jourDisp.setDemiabsenceSelected1(field_demiabsenceSelected);
    							jourDisp.setIdDemiAbsenceSelected1(field_IdDemiAbsenceSelected);
    							jourDisp.setIdAbsenceSelected1(field_IdAbsenceSelected);
     
    							//modification 
    							jourDisp.setDateComplet1(jourDto.getJour());	
    							System.out.println("jourDisp.setDateComplet(jourDto.getJour()) : "+jourDto.getJour());
    							jourDisp.setIndexJour1(jourDto.getIndexJour());
    							System.out.println("jourDisp.setIndexJour1(jourDto.getIndexJour())  :"+jourDto.getIndexJour());
     
    							System.out.println("jourDisp.setDemiabsenceSelected1(field_demiabsenceSelected) :"+field_demiabsenceSelected);
    							System.out.println("jourDisp.setIdDemiAbsenceSelected1(field_IdDemiAbsenceSelected); :"+field_IdDemiAbsenceSelected);
     
    							jourDisp.setDureeJour1(jourDto.getDureeTravail());
    							System.out.println("jourDisp.setDureeJour1(jourDto.getDureeTravail());  :"+jourDto.getDureeTravail());
    	}
    						System.out.println("i "+i);
     
     
    					}//fin du if (jourDto.getIndexJour() == i
    				}//fin du for (int i=1 ; i < 8; i++)
     
    				//listJourByIdPersone.add(jourDto);
    			}
    			System.out.println("jourDispAM  horaire 1 DM : "+jourDispAM.getHoraire1dm());
    			System.out.println("jourDispAM horaire 1 FM : "+jourDispAM.getHoraire1fm());
     
    			//this.semaineService.getListJourBySemaineIdAndPersonneId(Integer.parseInt(idSemaineToLoad), personneDto.getIdPersonne());
    			System.out.println(" ======== >> jour disp : "+jourDisp.getHoraire2da());
    			PlanningPersonneDisp personneDisp = new PlanningPersonneDisp();
     
     
     
    			personneDisp.setServiceDto(serviceDto);
    			personneDisp.setCompteurDto(comptDtoPersonne);
     
    			personneDisp.setPersonneDto(personneDto);
    			personneDisp.setJourDisp(jourDisp);
    			personneDisp.setJourDispAM(jourDispAM);
    			personneDisp.setJourDispPM(jourDispPM);
    			personneDisp.setJourDispDM(jourDispDM);					
    			planningPersonneList.add(personneDisp);
    		}
     
    		}
     
    	}
     
    	this.planningPersonneList = planningPersonneList;
     
    }
     
    //tester le droit de la personne en session
    // si le droit est 2 = visulat
    if(droitPersonneInSession.getIdDroit() == 2){
    	return "visu";
    }
    //tester si le chef de service peut modifier
     
    if(droitPersonneInSession.getIdDroit() == 1){
    	return "modif";
    }
    boolean chefService = personneService.isChiefUser(personneInSession, uniteDTOFromDataBAse.getIdUnite());
    if(!chefService){
    	return "visu";
    }
    return "modif";
    }
    Une toute petite partie du fichier jsp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
     
    <!-- Lundi -->		
     <td style="text-align: center;">
     <div id="horaire1_<s:property value="%{personneDto.idPersonne}"/>" style="display: block; text-align: center;">
    	<table border="1">
    		<tr>
    		<td style="display: block; text-align: left;">
    			<!-- Gestion des horaires travailles -->
    			 <s:set var="val1dm" value="%{defaultValue}"/> 
    			 <s:set var="val1fm" value="%{defaultValue}"/>
    					<s:if test="personneDto.idPersonne == jourDispAM.idPersonne">
    						<!-- avant : ${val1dm} -->
    						<s:if test="jourDispAM.horaire1dm != null ">
    							<s:if test="jourDispAM.horaire1dm != defaultValue">
    								<s:set var="val1dm" value="%{jourDispAM.horaire1dm}"/> 
    							</s:if>
    						</s:if>
    						<!-- avant : ${val1fm} -->
     
    						<s:if test="jourDispAM.horaire1fm != null ">
    							<s:if test="jourDispAM.horaire1fm != defaultValue">
     
    								<s:set var="val1fm" value="%{jourDispAM.horaire1fm}"/>
     
     
    							</s:if>
    						</s:if>
    					</s:if>
     
    			 <!-- jourDispAM.horaire1dm : ${jourDispAM.horaire1dm}<br>
    			 jourDispPM.horaire1da : ${jourDispAM.horaire1da} <br>
    			 defaultValue : ${defaultValue}-->
    			<div id="divHoraireModif1_<s:property value="%{personneDto.idPersonne}"/>"> 
    			<s:if test="jourDisp.idAbsenceSelected1 != defaultValueAb">
    				<s:hidden id="horaire1dm_%{personneDto.idPersonne}" name="horaire1dm_%{personneDto.idPersonne}" value="" /> 
    				<s:hidden id="horaire1fm_%{personneDto.idPersonne}" name="horaire1fm_%{personneDto.idPersonne}" value="" />
    				<s:hidden id="horaire1da_%{personneDto.idPersonne}" name="horaire1da_%{personneDto.idPersonne}" value="" /> 
    				<s:hidden id="horaire1fa_%{personneDto.idPersonne}" name="horaire1fa_%{personneDto.idPersonne}" value="" />
    			</s:if>
    			<s:if test="jourDisp.idDemiAbsenceSelected1 != defaultValueAb">
    				<s:hidden id="horaire1dm_%{personneDto.idPersonne}" name="horaire1dm_%{personneDto.idPersonne}" value="" /> 
    				<s:hidden id="horaire1fm_%{personneDto.idPersonne}" name="horaire1fm_%{personneDto.idPersonne}" value="" />
    				<s:hidden id="horaire1da_%{personneDto.idPersonne}" name="horaire1da_%{personneDto.idPersonne}" value="" /> 
    				<s:hidden id="horaire1fa_%{personneDto.idPersonne}" name="horaire1fa_%{personneDto.idPersonne}" value="" />
    			</s:if>
    			<s:if test="jourDisp.idAbsenceSelected1 == defaultValueAb">
    			<s:if test="jourDisp.idDemiAbsenceSelected1 == defaultValueAb">
     
     
     
    				 De <s:hidden id="horaire1dm_%{personneDto.idPersonne}" name="horaire1dm_%{personneDto.idPersonne}" value="%{val1dm}" />  ${val1dm} 
    				 à <s:hidden id="horaire1fm_%{personneDto.idPersonne}" name="horaire1fm_%{personneDto.idPersonne}" value="%{val1fm}" />  ${val1fm}<br>
     
    			<s:if test="jourDispAM.horaire1dm == defaultValue"> 
    				<s:hidden id="horaire1dm_%{personneDto.idPersonne}" name="horaire1dm_%{personneDto.idPersonne}" value="" /> 
    				<s:hidden id="horaire1fm_%{personneDto.idPersonne}" name="horaire1fm_%{personneDto.idPersonne}" value="" /> 
    			</s:if>	
     
    				<s:set var="val1da" value="%{defaultValue}"/>
    				<s:set var="val1fa" value="%{defaultValue}"/>
    				<s:if test="personneDto.idPersonne == jourDispPM.idPersonne">
    					<!-- avant : ${val1dm} -->
    					<s:if test="jourDispPM.horaire1da != null">
    						<s:if test="jourDispPM.horaire1da != defaultValue">
    							<s:set var="val1da" value="%{jourDispPM.horaire1da}"/>
    						</s:if>
    					</s:if>
    					<!-- avant : ${val1fm} -->
    					<s:if test="jourDispPM.horaire1fa != null">
    						<s:if test="jourDispPM.horaire1fa != defaultValue">
    							<s:set var="val1fa" value="%{jourDispPM.horaire1fa}"/>
    						</s:if>
    					</s:if>
    				</s:if>
     
     
    			<s:if test="jourDispPM.horaire1da != defaultValue">
    				 De <s:hidden id="horaire1da_%{personneDto.idPersonne}" name="horaire1da_%{personneDto.idPersonne}" value="%{val1da}" />  ${val1da}
    				 à <s:hidden id="horaire1fa_%{personneDto.idPersonne}" name="horaire1fa_%{personneDto.idPersonne}" value="%{val1fa}" />  ${val1fa}
    			</s:if>	
    			<s:if test="jourDispPM.horaire1da == defaultValue">
    				<s:hidden id="horaire1da_%{personneDto.idPersonne}" name="horaire1da_%{personneDto.idPersonne}" value="" /> 
    				<s:hidden id="horaire1fa_%{personneDto.idPersonne}" name="horaire1fa_%{personneDto.idPersonne}" value="" /> 
    			</s:if>	
     
    			</s:if>
    			</s:if>	
     
    			</div>
     
    			<!-- Gestion des horaires demi absences -->
    			<s:set var="val1demidm" value="%{defaultValue}"/>
    			<s:set var="val1demifm" value="%{defaultValue}"/>
    				<s:if test="personneDto.idPersonne == jourDispDM.idPersonne">
    					<!-- avant : ${val1dm} -->
    					<s:if test="jourDispDM.typeDemiAbsence1 == 'DMA' "> 
    						<s:set var="val1demidm" value="%{jourDispDM.horaire1debApresDemiAb}"/>
     
    					</s:if>
    					<s:if test="jourDispDM.typeDemiAbsence1 == 'DMM' "> 
    						<s:set var="val1demidm" value="%{jourDispDM.horaire1debMatinDemiAbs}"/>
     
    					</s:if>
    					<!-- avant : ${val1fm} -->
    					<s:if test="val1demifm != defaultValue">
    						<s:if test="jourDispDM.typeDemiAbsence1 == 'DMA' "> 
    							<s:set var="val1demifm" value="%{jourDispDM.horaire1finApresDemiAbs}"/>
    						</s:if>
    						<s:if test="jourDispDM.typeDemiAbsence1 == 'DMM' "> 
    							<s:set var="val1demifm" value="%{jourDispDM.horaire1finMatinDemiAbs}"/>
    						</s:if>
    					</s:if>
    				</s:if>
     
    			<div id="divDemiAbsenceModif1_<s:property value="%{personneDto.idPersonne}"/>"> 
    				<s:if test="jourDispDM.typeDemiAbsence1 == 'DMA' "> 
    					est là
    					 de <s:hidden name="horaire1debApresDemiAb_%{personneDto.idPersonne}" id="horaire1debApresDemiAb_%{personneDto.idPersonne}" value="%{val1demidm}"/>  ${val1demidm}
    					 à  <s:hidden name="horaire1finApresDemiAbs_%{personneDto.idPersonne}" id="horaire1finApresDemiAbs_%{personneDto.idPersonne}" value="%{val1demifm}"/> ${val1demifm} </br>
    					<s:hidden id="demiabsenceSelected1_%{personneDto.idPersonne}" name="demiabsenceSelected1_%{personneDto.idPersonne}" value="%{jourDisp.idDemiAbsenceSelected1}"/> est en  : ${jourDisp.demiabsenceSelected1} <br>
    				</s:if>
     
    				<s:if test="jourDispDM.typeDemiAbsence1 == 'DMM' "> 
    					<s:hidden id="demiabsenceSelected1_%{personneDto.idPersonne}" name="demiabsenceSelected1_%{personneDto.idPersonne}" value="%{jourDisp.idDemiAbsenceSelected1}"/> est en  : ${jourDisp.demiabsenceSelected1} <br>
    					est là
    					de <s:hidden name="horaire1debMatinDemiAbs_%{personneDto.idPersonne}" id="horaire1debMatinDemiAbs_%{personneDto.idPersonne}" value="%{val1demidm}"/>  ${val1demidm}
    					 à  <s:hidden name="horaire1finMatinDemiAbs_%{personneDto.idPersonne}" id="horaire1finMatinDemiAbs_%{personneDto.idPersonne}" value="%{val1demifm}"/> ${val1demifm} </br>
    				</s:if>
     
    				<s:if test="jourDisp.idDemiAbsenceSelected1 == defaultValueDemiAb">
     
    				</s:if>
    					<s:hidden id="demiabsenceSelected1_%{personneDto.idPersonne}" name="demiabsenceSelected1_%{personneDto.idPersonne}" value=""/> 
    					<s:hidden name="horaire1debDemiAbs_%{personneDto.idPersonne}" id="horaire1debDemiAbs_%{personneDto.idPersonne}" value=""/> 
    					<s:hidden name="horaire1finDemiAbs_%{personneDto.idPersonne}" id="horaire1finDemiAbs_%{personneDto.idPersonne}" value=""/>
     
    			</div>
     
    			 <div id="divAbsenceModif1_<s:property value="%{personneDto.idPersonne}"/>"> 
    				 <s:if test="jourDisp.idAbsenceSelected1 != defaultValueAb">
    					<s:hidden id="absenceSelected1_%{personneDto.idPersonne}" name="absenceSelected1_%{personneDto.idPersonne}" value="%{jourDisp.idAbsenceSelected1}"/> Absence ${jourDisp.absenceSelected1} 
    				</s:if>	
    				<s:if test="jourDisp.idAbsenceSelected1 == defaultValueAb">
    					<s:hidden id="absenceSelected1_%{personneDto.idPersonne}" name="absenceSelected1_%{personneDto.idPersonne}" value="" />  
    				</s:if>	
    			</div>
    			<div id="dureeJour1_<s:property value="%{personneDto.idPersonne}"/>">
    				 <input type='hidden' id="dureeJour1_<s:property value='%{personneDto.idPersonne}'/>" name="dureeJour1_<s:property value='%{personneDto.idPersonne}'/>" value="${jourDisp.dureeJour1}"  />  
    			</div>
    		</td>
    		</tr>
    	</table>
    	<a href="#" style="color: #1891C0;font-weight: bold" 
    	onclick="openPreview('<s:property value="%{personneDto.idPersonne}"/>','<s:property value="personneDto.nom"/>','<s:property value="personneDto.prenom"/>','<s:property value="%{jourDisp.dateComplet1}"/>','${val1dm}','${val1fm}','${val1da}','${val1fa}','${jourDisp.demiabsenceSelected1}','${val1demidm}','${val1demifm}','${jourDisp.absenceSelected1}','1')">
    	<img alt="Modifier les valeurs de ce jour" src="./resources/img/modif.gif"> </a>
    </div>
    Merci de m'aider en me disant comment puis je faire pour mettre en évidence les modifications apportées

  2. #2
    Membre chevronné
    Homme Profil pro
    Ed Nat
    Inscrit en
    Janvier 2013
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ed Nat
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 325
    Par défaut
    Bonjour,
    Si tu veux faire en sorte qu'une information (horaire) apparaisse différemment à un utilisateur si elle a été modifiée, tu peux mettre en place un système de ce genre :

    Tu ajoutes un champ nommé flags par exemple dans ta table Horaire, permettant de mémoriser quels sont les utilisateurs ayant déjà consulté un horaire.

    flags contiendra les ids des utilisateurs ayant consulté l'information :
    Exemple : pour l'horaire n°1 : flags : 5,13,28 signifie que les utilisateurs d'id 5, 13 et 28 ont consulté cet horaire.

    Fonctionnement :
    Quand un horaire est modifié : le flags de l'horaire est remis à zéro (chaîne vide)
    Quand un utilisateur consulte un horaire :
    • Si le flags de l'horaire ne contient pas l'id de l'utilisateur, l'horaire apparaît en rouge.
    • Après consultation, l'id de l'utilisateur est ajouté à la fin du champ flags de l'horaire (s'il ne l'avait pas déjà consulté).
    • A la prochaîne consultation, l'horaire apparaîtra en noir, à moins qu'il ait été à nouveau modifié.


    La solution n'est pas très normalisée (au sens merisien)...
    Et je ne sais pas si ça répond vraiment à ta question

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Mettre en gras les valeurs identiques dans une colonne et d'une cellule
    Par bienreveille dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 27/08/2014, 22h38
  2. SVN : Tester les modification realiser dans une branche
    Par m4riachi dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 5
    Dernier message: 21/03/2011, 11h45
  3. Réponses: 4
    Dernier message: 18/05/2010, 09h43
  4. Détecter les modifications faites dans une zone de texte avec la souris
    Par nosferapti dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 24/09/2009, 09h48
  5. Réponses: 1
    Dernier message: 21/05/2008, 08h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo