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 package fr.paris.lutece.plugins.ctv.service;
35
36 import java.util.List;
37
38 import fr.paris.lutece.plugins.ctv.bo.EmpriseId;
39 import fr.paris.lutece.plugins.ctv.business.IDemandeFinTravauxService;
40 import fr.paris.lutece.plugins.ctv.business.IDemandeService;
41 import fr.paris.lutece.plugins.ctv.business.IEmpriseService;
42 import fr.paris.lutece.plugins.ctv.constant.StatutEmprise;
43 import fr.paris.lutece.portal.service.daemon.Daemon;
44 import fr.paris.lutece.portal.service.datastore.DatastoreService;
45 import fr.paris.lutece.portal.service.spring.SpringContextService;
46
47 public class StatutsEmprisesDaemon extends Daemon
48 {
49
50 private static final IEmpriseService empriseService = SpringContextService.getBean( "empriseService" );
51 private static final IDemandeFinTravauxService demandeFinTravauxService = SpringContextService.getBean( "demandeFinTravauxService" );
52 private static final IDemandeService demandeService = SpringContextService.getBean( "demandeService" );
53
54 @Override
55 public void run( )
56 {
57 setLastRunLogs( traitementStatutsEmprises( ) );
58 }
59
60 private String traitementStatutsEmprises( )
61 {
62 StringBuilder rapport = new StringBuilder( );
63 traitementStatutsTravauxEnCours( rapport );
64 rapport.append( "<br>" );
65 traitementStatutsCloturee( rapport );
66 rapport.append( "<br>" );
67 traitementStatutsGarantie( rapport );
68
69 return rapport.toString( );
70 }
71
72 private void traitementStatutsCloturee( StringBuilder rapport )
73 {
74 List<EmpriseId> empriseIdsForCloture = empriseService.findEmpriseGarantieRemiseEnCirculation( );
75 empriseService.updateStatut( empriseIdsForCloture, StatutEmprise.CLOTUREE );
76 int intentionsTerminees = demandeService.traitementIntentionTerminee( );
77 int result = empriseIdsForCloture.size( );
78 rapport.append( "Traitements des emprises au nouveau statut 'Clôturée', " + result + " lignes." );
79 rapport.append( "\nTraitements des intentions au nouveau statut 'Clôturée', " + intentionsTerminees + " lignes." );
80 }
81
82 private void traitementStatutsGarantie( StringBuilder rapport )
83 {
84 String delaiAccepationFinTravauxFouille = DatastoreService.getDataValue( "parametre.numeric.fouille.delai.accepation.fin.travaux", "15" );
85 List<EmpriseId> empriseIdsForGarantie = empriseService.findEmpriseFouilleForGarantie( delaiAccepationFinTravauxFouille );
86 empriseService.updateStatut( empriseIdsForGarantie, StatutEmprise.GARANTIE );
87 demandeFinTravauxService.updateHorodatageValidatonRemiseEnCirculation( empriseIdsForGarantie );
88 rapport.append( "Traitements des emprises au nouveau statut 'Garantie', " + empriseIdsForGarantie.size( ) + " lignes." );
89 }
90
91 private void traitementStatutsTravauxEnCours( StringBuilder rapport )
92 {
93 int resultTravauxEnCours = empriseService.traitementStatutsTravauxEnCours( );
94 rapport.append( "Traitements des emprises au nouveau statut 'Travaux en cours', " + resultTravauxEnCours + " lignes." );
95 }
96
97 }