Skip to content

Commit b0a1cd6

Browse files
v6.1
- bug fixes - more optimisations
1 parent 7ece43b commit b0a1cd6

24 files changed

+209
-108
lines changed

pom.xml

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
<groupId>ma.rougga</groupId>
77
<artifactId>QData</artifactId>
8-
<version>6.0</version>
8+
<version>6.1</version>
99
<packaging>war</packaging>
1010

1111
<name>QData</name>

src/main/java/ma/rougga/qdata/CfgHandler.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public class CfgHandler {
2828

2929
// MetaData
3030
public static final String APP = "QData";
31-
public static final String VERSION = "6.0";
31+
public static final String VERSION = "6.1";
3232
public static final String COMPANY = "ROUGGA";
3333
public static final String CLIENT = "NST-Maroc";
3434
public static final int APP_PORT = 8888;

src/main/java/ma/rougga/qdata/Stats.java

+13-12
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
import ma.rougga.qdata.controller.AgenceController;
1818
import ma.rougga.qdata.controller.UpdateController;
1919
import ma.rougga.qdata.modal.Agence;
20-
import org.json.simple.JSONObject;
2120
import org.slf4j.Logger;
2221
import org.slf4j.LoggerFactory;
2322

@@ -95,20 +94,22 @@ public long getAbsentTicket() {
9594
}
9695

9796
public long getWaitingTicket() {
98-
9997
long waitingtickets = 0;
100-
101-
for (Agence a : new AgenceController().getAllAgence()) {
102-
String url = CfgHandler.prepareJsonUrl(a.getHost(), a.getPort(), CfgHandler.API_WAITING_TICKETS_JSON);
103-
104-
JSONObject json = UpdateController.getJsonFromUrl(url);
105-
if (json != null) {
106-
long result = (long) json.get("waitingTickets");
107-
waitingtickets += result;
98+
try {
99+
Connection con = new CPConnection().getConnection();
100+
String SQL = "SELECT SUM(nb_sa) "
101+
+ "FROM rougga_gbl_table "
102+
+ "WHERE TO_DATE(TO_CHAR(date, 'YYYY-MM-DD'), 'YYYY-MM-DD') = CURRENT_DATE;";
103+
ResultSet r = con.createStatement().executeQuery(SQL);
104+
if (r.next()) {
105+
waitingtickets = r.getLong(1);
108106
}
107+
con.close();
108+
return waitingtickets;
109+
} catch (SQLException e) {
110+
logger.error(e.getMessage());
111+
return waitingtickets;
109112
}
110-
111-
return waitingtickets;
112113
}
113114

114115
public Double getMaxWaitTime() {
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,36 @@
11
package ma.rougga.qdata.api.update;
22

3+
import ma.rougga.qdata.controller.AgenceController;
34
import ma.rougga.qdata.controller.report.EmpTableController;
45
import ma.rougga.qdata.controller.report.GblTableController;
56
import ma.rougga.qdata.controller.report.GlaTableController;
67
import ma.rougga.qdata.controller.report.GltTableController;
8+
import ma.rougga.qdata.modal.Agence;
79
import org.slf4j.Logger;
810
import org.slf4j.LoggerFactory;
911

1012
public class UpdateThread1 extends Thread {
1113

14+
private AgenceController ac = new AgenceController();
1215
private static final Logger logger = LoggerFactory.getLogger(UpdateThread1.class);
16+
1317
public UpdateThread1() {
1418
}
15-
19+
1620
@Override
1721
public void run() {
1822
logger.info("Thread 01 STARTED.");
19-
new GblTableController().updateFromJson(null, null);
20-
new EmpTableController().updateFromJson(null, null);
21-
new GlaTableController().updateFromJson(null, null);
22-
new GltTableController().updateFromJson(null, null);
23+
for (Agence a : ac.getAllAgence()) {
24+
if (!ac.isOnline(a.getId())) {
25+
logger.info("Agence: {} is OFFLINE",a.getName());
26+
continue;
27+
}
28+
new GblTableController().updateAgenceFromJson(null, null, a.getId().toString());
29+
new EmpTableController().updateAgenceFromJson(null, null, a.getId().toString());
30+
new GlaTableController().updateAgenceFromJson(null, null, a.getId().toString());
31+
new GltTableController().updateAgenceFromJson(null, null, a.getId().toString());
32+
}
2333
logger.info("Thread 01 DONE.");
2434
}
25-
35+
2636
}

src/main/java/ma/rougga/qdata/api/update/UpdateThread2.java

+13-4
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,17 @@
11
package ma.rougga.qdata.api.update;
22

3+
import ma.rougga.qdata.controller.AgenceController;
34
import ma.rougga.qdata.controller.CibleController;
45
import ma.rougga.qdata.controller.report.GchTableController;
56
import ma.rougga.qdata.controller.report.ThATableController;
67
import ma.rougga.qdata.controller.report.ThTTTableController;
8+
import ma.rougga.qdata.modal.Agence;
79
import org.slf4j.Logger;
810
import org.slf4j.LoggerFactory;
911

1012
public class UpdateThread2 extends Thread {
1113

14+
private AgenceController ac = new AgenceController();
1215
private static final Logger logger = LoggerFactory.getLogger(UpdateThread2.class);
1316

1417
public UpdateThread2() {
@@ -17,10 +20,16 @@ public UpdateThread2() {
1720
@Override
1821
public void run() {
1922
logger.info("Thread 02 STARTED.");
20-
new GchTableController().updateFromJson(null, null);
21-
new ThTTTableController().updateFromJson(null, null);
22-
new ThATableController().updateFromJson(null, null);
23-
new CibleController().updateFromJson();
23+
for (Agence a : ac.getAllAgence()) {
24+
if (!ac.isOnline(a.getId())) {
25+
logger.info("Agence: {} is OFFLINE", a.getName());
26+
continue;
27+
}
28+
new GchTableController().updateAgenceFromJson(null, null, a.getId().toString());
29+
new ThTTTableController().updateAgenceFromJson(null, null, a.getId().toString());
30+
new ThATableController().updateAgenceFromJson(null, null, a.getId().toString());
31+
new CibleController().updateAgenceFromJson(a.getId().toString());
32+
}
2433
logger.info("Thread 02 DONE.");
2534
}
2635

src/main/java/ma/rougga/qdata/api/update/UpdateThread3.java

+13-4
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,17 @@
11
package ma.rougga.qdata.api.update;
22

3+
import ma.rougga.qdata.controller.AgenceController;
34
import ma.rougga.qdata.controller.report.EmpSerTableController;
45
import ma.rougga.qdata.controller.report.GchSerTableController;
56
import ma.rougga.qdata.controller.report.ThSATableController;
67
import ma.rougga.qdata.controller.report.ThTTableController;
8+
import ma.rougga.qdata.modal.Agence;
79
import org.slf4j.Logger;
810
import org.slf4j.LoggerFactory;
911

1012
public class UpdateThread3 extends Thread {
1113

14+
private AgenceController ac = new AgenceController();
1215
private static final Logger logger = LoggerFactory.getLogger(UpdateThread3.class);
1316

1417
public UpdateThread3() {
@@ -17,10 +20,16 @@ public UpdateThread3() {
1720
@Override
1821
public void run() {
1922
logger.info("Thread 03 STARTED.");
20-
new GchSerTableController().updateFromJson(null, null);
21-
new EmpSerTableController().updateFromJson(null, null);
22-
new ThSATableController().updateFromJson(null, null);
23-
new ThTTableController().updateFromJson(null, null);
23+
for (Agence a : ac.getAllAgence()) {
24+
if (!ac.isOnline(a.getId())) {
25+
logger.info("Agence: {} is OFFLINE", a.getName());
26+
continue;
27+
}
28+
new GchSerTableController().updateAgenceFromJson(null, null, a.getId().toString());
29+
new EmpSerTableController().updateAgenceFromJson(null, null, a.getId().toString());
30+
new ThSATableController().updateAgenceFromJson(null, null, a.getId().toString());
31+
new ThTTableController().updateAgenceFromJson(null, null, a.getId().toString());
32+
}
2433
logger.info("Thread 03 DONE.");
2534
}
2635

src/main/java/ma/rougga/qdata/controller/AgenceController.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ public List<Agence> getAllAgence() {
3535
try {
3636
List<Agence> agences = new ArrayList();
3737
Connection con = new CPConnection().getConnection();
38-
ResultSet r = con.createStatement().executeQuery("select * from rougga_agences order by name;");
38+
ResultSet r = con.createStatement().executeQuery("select * from rougga_agences where status=1 order by name;");
3939
while (r.next()) {
4040
Agence a = new Agence();
4141
a.setId(UUID.fromString(r.getString("id")));
@@ -221,7 +221,7 @@ public JSONObject getAgenceInfoJson(UUID id) {
221221
connection.setRequestProperty("Accept-Charset", "UTF-8");
222222
connection.setRequestMethod("GET");
223223
connection.setRequestProperty("Accept", "application/json");
224-
connection.setConnectTimeout(10000);
224+
connection.setConnectTimeout(5000);
225225
// Check response code
226226
int responseCode = connection.getResponseCode();
227227
if (responseCode == HttpURLConnection.HTTP_OK) {

src/main/java/ma/rougga/qdata/controller/CibleController.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ public boolean updateCible(Cible cible) {
156156
public void updateFromJson() {
157157
List<Agence> agences = ac.getAllAgence();
158158
for (Agence a : agences) {
159-
if (ac.isOnlineJson(a.getId())) {
159+
if (ac.isOnline(a.getId())) {
160160
this.updateAgenceFromJson(a.getId().toString());
161161
}
162162
}

src/main/java/ma/rougga/qdata/controller/UpdateController.java

+84-42
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,15 @@
88
import java.util.UUID;
99

1010
import ma.rougga.qdata.controller.report.*;
11+
import ma.rougga.qdata.modal.Agence;
1112
import org.json.simple.JSONObject;
1213
import org.json.simple.parser.JSONParser;
1314
import org.json.simple.parser.ParseException;
1415
import org.slf4j.LoggerFactory;
1516

1617
public class UpdateController {
1718

19+
private AgenceController ac = new AgenceController();
1820
private static final org.slf4j.Logger logger = LoggerFactory.getLogger(UpdateController.class);
1921

2022
public UpdateController() {
@@ -30,6 +32,7 @@ public static JSONObject getJsonFromUrl(String urlString) {
3032
connection.setRequestProperty("Accept-Charset", "UTF-8");
3133
connection.setRequestMethod("GET");
3234
connection.setRequestProperty("Accept", "application/json");
35+
connection.setConnectTimeout(10000);
3336
// Check response code
3437
int responseCode = connection.getResponseCode();
3538
if (responseCode == HttpURLConnection.HTTP_OK) {
@@ -55,7 +58,7 @@ public static JSONObject getJsonFromUrl(String urlString) {
5558
} catch (IOException e) {
5659
logger.error("Agence OFFLINE {}", e.getMessage());
5760
return null;
58-
}catch (ParseException e) {
61+
} catch (ParseException e) {
5962
logger.error("UpdateController.getJsonFromUrl: {}", e.getMessage());
6063
return null;
6164
}
@@ -82,58 +85,97 @@ public boolean restoreAllAgenceDataById(UUID id_agence) {
8285
}
8386

8487
public boolean updateAgencesTodayData(UUID id_agence) {
85-
boolean isDone = false;
86-
isDone = new GblTableController().updateAgenceFromJson(null, null, id_agence.toString());
87-
isDone = new EmpTableController().updateAgenceFromJson(null, null, id_agence.toString());
88-
isDone = new EmpSerTableController().updateAgenceFromJson(null, null, id_agence.toString());
89-
isDone = new GchTableController().updateAgenceFromJson(null, null, id_agence.toString());
90-
isDone = new GchSerTableController().updateAgenceFromJson(null, null, id_agence.toString());
91-
isDone = new GlaTableController().updateAgenceFromJson(null, null, id_agence.toString());
92-
isDone = new GltTableController().updateAgenceFromJson(null, null, id_agence.toString());
93-
isDone = new ThTTableController().updateAgenceFromJson(null, null, id_agence.toString());
94-
isDone = new ThTTTableController().updateAgenceFromJson(null, null, id_agence.toString());
95-
isDone = new ThATableController().updateAgenceFromJson(null, null, id_agence.toString());
96-
isDone = new ThSATableController().updateAgenceFromJson(null, null, id_agence.toString());
97-
isDone = new CibleController().updateAgenceFromJson(id_agence.toString());
88+
boolean isSuccessful = false;
89+
isSuccessful = new GblTableController().updateAgenceFromJson(null, null, id_agence.toString());
90+
isSuccessful = new EmpTableController().updateAgenceFromJson(null, null, id_agence.toString());
91+
isSuccessful = new EmpSerTableController().updateAgenceFromJson(null, null, id_agence.toString());
92+
isSuccessful = new GchTableController().updateAgenceFromJson(null, null, id_agence.toString());
93+
isSuccessful = new GchSerTableController().updateAgenceFromJson(null, null, id_agence.toString());
94+
isSuccessful = new GlaTableController().updateAgenceFromJson(null, null, id_agence.toString());
95+
isSuccessful = new GltTableController().updateAgenceFromJson(null, null, id_agence.toString());
96+
isSuccessful = new ThTTableController().updateAgenceFromJson(null, null, id_agence.toString());
97+
isSuccessful = new ThTTTableController().updateAgenceFromJson(null, null, id_agence.toString());
98+
isSuccessful = new ThATableController().updateAgenceFromJson(null, null, id_agence.toString());
99+
isSuccessful = new ThSATableController().updateAgenceFromJson(null, null, id_agence.toString());
100+
isSuccessful = new CibleController().updateAgenceFromJson(id_agence.toString());
98101
// update other tables
99102

100-
return isDone;
103+
return isSuccessful;
101104
}
102105

103106
public void update() {
104-
new GblTableController().updateFromJson(null, null);
105-
new EmpTableController().updateFromJson(null, null);
106-
new EmpSerTableController().updateFromJson(null, null);
107-
new GlaTableController().updateFromJson(null, null);
108-
new GltTableController().updateFromJson(null, null);
109-
new ThTTableController().updateFromJson(null, null);
110-
//
111-
new GchTableController().updateFromJson(null, null);
112-
new GchSerTableController().updateFromJson(null, null);
113-
new ThTTTableController().updateFromJson(null, null);
114-
new ThATableController().updateFromJson(null, null);
115-
new ThSATableController().updateFromJson(null, null);
116-
new CibleController().updateFromJson();
107+
boolean isSuccessful = false;
108+
for (Agence a : ac.getAllAgence()) {
109+
if (!ac.isOnline(a.getId())) {
110+
logger.info("Agence: {} is OFFLINE",a.getName());
111+
continue;
112+
}
113+
isSuccessful = new GblTableController().updateAgenceFromJson(null, null, a.getId().toString());
114+
isSuccessful = new EmpTableController().updateAgenceFromJson(null, null, a.getId().toString());
115+
isSuccessful = new EmpSerTableController().updateAgenceFromJson(null, null, a.getId().toString());
116+
isSuccessful = new GchTableController().updateAgenceFromJson(null, null, a.getId().toString());
117+
isSuccessful = new GchSerTableController().updateAgenceFromJson(null, null, a.getId().toString());
118+
isSuccessful = new GlaTableController().updateAgenceFromJson(null, null, a.getId().toString());
119+
isSuccessful = new GltTableController().updateAgenceFromJson(null, null, a.getId().toString());
120+
isSuccessful = new ThTTableController().updateAgenceFromJson(null, null, a.getId().toString());
121+
isSuccessful = new ThTTTableController().updateAgenceFromJson(null, null, a.getId().toString());
122+
isSuccessful = new ThATableController().updateAgenceFromJson(null, null, a.getId().toString());
123+
isSuccessful = new ThSATableController().updateAgenceFromJson(null, null, a.getId().toString());
124+
isSuccessful = new CibleController().updateAgenceFromJson(a.getId().toString());
125+
}
117126

127+
// new GblTableController().updateFromJson(null, null);
128+
// new EmpTableController().updateFromJson(null, null);
129+
// new EmpSerTableController().updateFromJson(null, null);
130+
// new GlaTableController().updateFromJson(null, null);
131+
// new GltTableController().updateFromJson(null, null);
132+
// new ThTTableController().updateFromJson(null, null);
133+
// //
134+
// new GchTableController().updateFromJson(null, null);
135+
// new GchSerTableController().updateFromJson(null, null);
136+
// new ThTTTableController().updateFromJson(null, null);
137+
// new ThATableController().updateFromJson(null, null);
138+
// new ThSATableController().updateFromJson(null, null);
139+
// new CibleController().updateFromJson();
118140
// update other tables
119-
logger.info("Globale update is Finished! .");
141+
logger.info("Globale update is Finished! isSuccessful= {}", isSuccessful);
120142
}
121143

122144
public void restore() {
123145

124-
new GblTableController().restoreOldRowsForAllAgences();
125-
new EmpTableController().restoreOldRowsForAllAgences();
126-
new EmpSerTableController().restoreOldRowsForAllAgences();
127-
new GchTableController().restoreOldRowsForAllAgences();
128-
new GchSerTableController().restoreOldRowsForAllAgences();
129-
new GlaTableController().restoreOldRowsForAllAgences();
130-
new GltTableController().restoreOldRowsForAllAgences();
131-
new ThTTableController().restoreOldRowsForAllAgences();
132-
new ThTTTableController().restoreOldRowsForAllAgences();
133-
new ThATableController().restoreOldRowsForAllAgences();
134-
new ThSATableController().restoreOldRowsForAllAgences();
135-
new CibleController().updateFromJson();
146+
boolean isSuccessful = false;
147+
for (Agence a : ac.getAllAgence()) {
148+
if (!ac.isOnline(a.getId())) {
149+
logger.info("Agence: {} is OFFLINE",a.getName());
150+
continue;
151+
}
152+
isSuccessful = new GblTableController().restoreOldRowsByAgenceId(a.getId());
153+
isSuccessful = new EmpTableController().restoreOldRowsByAgenceId(a.getId());
154+
isSuccessful = new EmpSerTableController().restoreOldRowsByAgenceId(a.getId());
155+
isSuccessful = new GchTableController().restoreOldRowsByAgenceId(a.getId());
156+
isSuccessful = new GchSerTableController().restoreOldRowsByAgenceId(a.getId());
157+
isSuccessful = new GlaTableController().restoreOldRowsByAgenceId(a.getId());
158+
isSuccessful = new GltTableController().restoreOldRowsByAgenceId(a.getId());
159+
isSuccessful = new ThTTableController().restoreOldRowsByAgenceId(a.getId());
160+
isSuccessful = new ThTTTableController().restoreOldRowsByAgenceId(a.getId());
161+
isSuccessful = new ThATableController().restoreOldRowsByAgenceId(a.getId());
162+
isSuccessful = new ThSATableController().restoreOldRowsByAgenceId(a.getId());
163+
isSuccessful = new CibleController().updateAgenceFromJson(a.getId().toString());
164+
}
165+
166+
// new GblTableController().restoreOldRowsForAllAgences();
167+
// new EmpTableController().restoreOldRowsForAllAgences();
168+
// new EmpSerTableController().restoreOldRowsForAllAgences();
169+
// new GchTableController().restoreOldRowsForAllAgences();
170+
// new GchSerTableController().restoreOldRowsForAllAgences();
171+
// new GlaTableController().restoreOldRowsForAllAgences();
172+
// new GltTableController().restoreOldRowsForAllAgences();
173+
// new ThTTableController().restoreOldRowsForAllAgences();
174+
// new ThTTTableController().restoreOldRowsForAllAgences();
175+
// new ThATableController().restoreOldRowsForAllAgences();
176+
// new ThSATableController().restoreOldRowsForAllAgences();
177+
// new CibleController().updateFromJson();
136178
// restore other tables
137-
logger.info("Globale restore is Finished! .");
179+
logger.info("Globale restore is Finished! isSuccessful= {}", isSuccessful);
138180
}
139181
}

src/main/java/ma/rougga/qdata/controller/report/EmpSerTableController.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -557,7 +557,7 @@ public EmpSerRow getRowByDate(String date, String id_agence, String userId, Stri
557557
public void updateFromJson(String date1, String date2) {
558558
List<Agence> agences = ac.getAllAgence();
559559
for (Agence a : agences) {
560-
if (ac.isOnlineJson(a.getId())) {
560+
if (ac.isOnline(a.getId())) {
561561
this.updateAgenceFromJson(date1, date2, a.getId().toString());
562562
}
563563
}

src/main/java/ma/rougga/qdata/controller/report/EmpTableController.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -546,7 +546,7 @@ public EmpRow getRowByDate(String date, String id_agence, String userId) {
546546
public void updateFromJson(String date1, String date2) {
547547
List<Agence> agences = ac.getAllAgence();
548548
for (Agence a : agences) {
549-
if (ac.isOnlineJson(a.getId())) {
549+
if (ac.isOnline(a.getId())) {
550550
this.updateAgenceFromJson(date1, date2, a.getId().toString());
551551
}
552552
}

0 commit comments

Comments
 (0)