Compare commits
27 Commits
main
...
script-mig
| Author | SHA1 | Date |
|---|---|---|
|
|
b947473ebb | |
|
|
a67638b223 | |
|
|
23ce270077 | |
|
|
3ad5d2f3d3 | |
|
|
7b484f34c9 | |
|
|
349c379dc7 | |
|
|
5338f682af | |
|
|
4927d22387 | |
|
|
0b7d8b6eb3 | |
|
|
47c70697d3 | |
|
|
a8d0e69585 | |
|
|
f57855d143 | |
|
|
b35d64a241 | |
|
|
bb695a820e | |
|
|
cc7d3d9e08 | |
|
|
e4cb9906b4 | |
|
|
4919940a26 | |
|
|
0125e2ae69 | |
|
|
d6f06dfd7b | |
|
|
77bf98e6cd | |
|
|
0a536140ab | |
|
|
5de492b308 | |
|
|
4f82b29f18 | |
|
|
a929c0770c | |
|
|
4cc8167ad8 | |
|
|
5a0ff43300 | |
|
|
013cd0eb8d |
|
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
"keep": {
|
||||
"days": true,
|
||||
"amount": 14
|
||||
},
|
||||
"auditLog": "C:\\Users\\B722DA\\Documents\\etv2\\logs\\.08fe637d6ef44c0231313d33bee64c93b9084214-audit.json",
|
||||
"files": [
|
||||
{
|
||||
"date": 1758200946499,
|
||||
"name": "C:\\Users\\B722DA\\Documents\\etv2\\logs\\easytransport-18092025.log",
|
||||
"hash": "1706becaf705914860a3975811363123969a9384d470caf37ee1ba3b6762cbcc"
|
||||
}
|
||||
],
|
||||
"hashType": "sha256"
|
||||
}
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
"keep": {
|
||||
"days": true,
|
||||
"amount": 14
|
||||
},
|
||||
"auditLog": "C:\\workspace\\etv2\\logs\\.3d67f34307b811ec6c096daeac0152b0eaa334a7-audit.json",
|
||||
"files": [
|
||||
{
|
||||
"date": 1781187673716,
|
||||
"name": "C:\\workspace\\etv2\\logs\\easytransport-11062026.log",
|
||||
"hash": "c19430c072d594d17c7e822d673b22a8a9eb97f9955f27a7543fec107e9788c3"
|
||||
}
|
||||
],
|
||||
"hashType": "sha256"
|
||||
}
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
#DB_URL=http://ppsi_nanterre.axa-fr.intraxa:3005/
|
||||
DB_URL=http://127.0.0.1:8091/
|
||||
DB_ADMIN=admin@axa.fr
|
||||
DB_PASSWORD=DTadmin123TT
|
||||
NODE_ENV=developpement
|
||||
PORT=8082
|
||||
|
|
@ -6,7 +6,8 @@
|
|||
"scripts": {
|
||||
"start": "nodemon ./src/server.js",
|
||||
"build": "pkg ./src/server.js -o EasyTransport",
|
||||
"test": "jest"
|
||||
"test": "jest",
|
||||
"db" : "cd ./src/db && start cmd /c Lancement_Pocketbase.cmd"
|
||||
},
|
||||
"pkg": {
|
||||
"assets": [
|
||||
|
|
@ -102,13 +102,6 @@ hr.form {
|
|||
font-size: smaller;
|
||||
}
|
||||
|
||||
.helper-text.error {
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
margin-top: 20px;
|
||||
white-space: pre-line;
|
||||
}
|
||||
|
||||
.mrg {
|
||||
padding: 0 5% !important;
|
||||
}
|
||||
|
|
@ -452,63 +445,3 @@ a.grille-garanties:hover{
|
|||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
/* Overlay loader */
|
||||
#loader-overlay {
|
||||
position: fixed;
|
||||
top: 0; left: 0;
|
||||
width: 100%; height: 100%;
|
||||
background: linear-gradient(
|
||||
rgba(10, 20, 60, 0.2),
|
||||
rgba(0, 0, 0, 0.4)
|
||||
);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
z-index: 9999;
|
||||
font-family: 'Roboto', sans-serif;
|
||||
opacity: 0;
|
||||
backdrop-filter: blur(0px);
|
||||
pointer-events: none;
|
||||
transition: opacity 0.5s ease, backdrop-filter 0.5s ease;
|
||||
}
|
||||
|
||||
#loader-overlay.active {
|
||||
opacity: 1;
|
||||
backdrop-filter: blur(3px);
|
||||
pointer-events: all;
|
||||
}
|
||||
|
||||
#loader-overlay.hidden {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.loader-spin-wrap {
|
||||
opacity: 0;
|
||||
transform: translateY(10px);
|
||||
transition: opacity 0.5s ease, transform 0.5s ease;
|
||||
transition-delay: 0.5s;
|
||||
}
|
||||
|
||||
#loader-overlay.active .loader-spin-wrap {
|
||||
opacity: 1;
|
||||
transform: translateY(0);
|
||||
}
|
||||
|
||||
/* Spinner circulaire */
|
||||
.loader-spin {
|
||||
width: 50px;
|
||||
aspect-ratio: 1;
|
||||
border-radius: 50%;
|
||||
mask:1;
|
||||
background:
|
||||
radial-gradient(farthest-side,darkblue 94%,transparent) top/8px 8px no-repeat,
|
||||
conic-gradient(transparent 30%,darkblue);
|
||||
-webkit-mask: radial-gradient(farthest-side,transparent calc(100% - 8px),#000 0);
|
||||
animation: l13 1s infinite linear;
|
||||
}
|
||||
|
||||
@keyframes l13 {
|
||||
100% { transform: rotate(1turn); }
|
||||
}
|
||||
|
|
@ -0,0 +1,368 @@
|
|||
/* Historique Parcours */
|
||||
body>main>div>div.section.center-align {
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
body>main>div>div.section.center-align>div.container {
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
#historiqueParcours_wrapper {
|
||||
width: 100% !important;
|
||||
overflow-x: auto !important;
|
||||
margin-top: 30px;
|
||||
}
|
||||
|
||||
table#historiqueParcours {
|
||||
width: 150%;
|
||||
border-collapse: collapse !important;
|
||||
border: 2px solid darkblue !important;
|
||||
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
#historiqueParcours th,
|
||||
#historiqueParcours td {
|
||||
color: black;
|
||||
text-align: left;
|
||||
font-size: 11px;
|
||||
max-width: 100px;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
table.dataTable thead th {
|
||||
padding-right: 18px !important;
|
||||
position: relative !important;
|
||||
}
|
||||
|
||||
/* Div pour encapsuler le texte dans les cellules d'en-tête */
|
||||
table.dataTable thead th>div {
|
||||
position: absolute !important;
|
||||
top: 0 !important;
|
||||
left: 0 !important;
|
||||
}
|
||||
|
||||
#historiqueParcours_filter {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.dataTables_wrapper .dataTables_filter {
|
||||
position: relative;
|
||||
text-align: left;
|
||||
float: left;
|
||||
padding: 2px;
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
/* Cacher complètement le label "Rechercher" de DataTables */
|
||||
.dataTables_wrapper .dataTables_filter label {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
margin: 0;
|
||||
font-size: 0 !important;
|
||||
line-height: 0 !important;
|
||||
overflow: visible;
|
||||
}
|
||||
|
||||
.dataTables_wrapper .dataTables_filter label > span:first-child {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
/* fond blanc, bordure grise fine, capsule arrondie */
|
||||
.dataTables_wrapper .dataTables_filter input[type="search"] {
|
||||
background-color: #fff;
|
||||
border: 1px solid #e0e0e0;
|
||||
border-radius: 42px;
|
||||
outline: none;
|
||||
height: 42px;
|
||||
width: 220px;
|
||||
font-size: 15px;
|
||||
margin: 0;
|
||||
padding: 0 20px 0 52px;
|
||||
box-sizing: border-box;
|
||||
transition: all 0.2s ease;
|
||||
color: #333;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.dataTables_wrapper .dataTables_filter input[type="search"]:focus {
|
||||
background-color: #fff;
|
||||
border-color: #1d9bf0;
|
||||
box-shadow: 0 0 0 2px #1d9bf0;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.dataTables_wrapper .dataTables_filter input[type="search"]::placeholder {
|
||||
color: #71767a;
|
||||
}
|
||||
|
||||
/* Icône de loupe SVG */
|
||||
.dataTables_wrapper .dataTables_filter label::before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
left: 20px;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2371767a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E");
|
||||
background-size: contain;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center;
|
||||
pointer-events: none;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
/* Texte "Rechercher" à côté de l'icône */
|
||||
.dataTables_wrapper .dataTables_filter label::after {
|
||||
content: "Rechercher";
|
||||
position: absolute;
|
||||
left: 52px;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
font-size: 15px;
|
||||
color: #71767a;
|
||||
pointer-events: none;
|
||||
z-index: 1;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
/* Cacher le texte "Rechercher" quand on tape, focus, ou si l'input a une valeur */
|
||||
.dataTables_wrapper .dataTables_filter:focus-within label::after,
|
||||
.dataTables_wrapper .dataTables_filter label.has-value::after {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
.dataTables_wrapper .dataTables_filter input[type="search"]:focus::placeholder {
|
||||
color: transparent;
|
||||
}
|
||||
|
||||
#historiqueParcours_length>label {
|
||||
font-size: 14px;
|
||||
display: flex !important;
|
||||
align-items: center !important;
|
||||
}
|
||||
|
||||
.dataTables_length select[name="historiqueParcours_length"] {
|
||||
display: block !important;
|
||||
font-size: 14px;
|
||||
color: #555;
|
||||
padding: 8px;
|
||||
margin: 0 0.5em;
|
||||
border: none;
|
||||
background: none;
|
||||
padding: 5px;
|
||||
font-size: 16px;
|
||||
outline: none;
|
||||
width: 60px;
|
||||
}
|
||||
|
||||
/* Style Input recherche par ligne */
|
||||
#historiqueParcours>thead>tr:nth-child(2)>th>input {
|
||||
font-size: 13px !important;
|
||||
padding: 6px !important;
|
||||
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
/* icone de tri sur les colonnes */
|
||||
table.dataTable thead .sorting,
|
||||
table.dataTable thead .sorting_asc,
|
||||
table.dataTable thead .sorting_desc {
|
||||
background-position: right center;
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
|
||||
/* Ajouter un espacement entre le texte et l'icône */
|
||||
table.dataTable thead .sorting:before,
|
||||
table.dataTable thead .sorting_asc:before,
|
||||
table.dataTable thead .sorting_desc:before {
|
||||
content: "";
|
||||
}
|
||||
|
||||
/* boutons de navigation */
|
||||
.dataTables_wrapper .dataTables_paginate .paginate_button {
|
||||
background-color: white !important;
|
||||
border: darkblue solid 1.5px !important;
|
||||
color: black !important;
|
||||
padding: 6px 12px !important;
|
||||
margin: 0 2px !important;
|
||||
cursor: pointer !important;
|
||||
border-radius: 4px !important;
|
||||
transition: background-color 0.3s, color 0.3s, border-color 0.3s !important;
|
||||
}
|
||||
|
||||
#historiqueParcours_paginate>span>a.paginate_button.current,
|
||||
.dataTables_wrapper .dataTables_paginate:hover .paginate_button:hover {
|
||||
background: none !important;
|
||||
background-color: darkblue !important;
|
||||
border-color: white !important;
|
||||
color: white !important;
|
||||
}
|
||||
|
||||
/* NC value */
|
||||
td.nc-value {
|
||||
color: lightgray !important;
|
||||
}
|
||||
|
||||
/* Les bouton pour le filtres et les extraction */
|
||||
#divBtnFilter {
|
||||
display: inline-grid;
|
||||
width: 100%;
|
||||
grid-template-columns: auto;
|
||||
column-gap: 3%;
|
||||
row-gap: 10%;
|
||||
}
|
||||
|
||||
#checkRegionAdmin {
|
||||
grid-column: 1 / span 3;
|
||||
justify-self: center;
|
||||
}
|
||||
|
||||
#divToggleSearch {
|
||||
grid-column: 2;
|
||||
grid-row: 3;
|
||||
justify-self: center;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
#toggleSearch {
|
||||
white-space: nowrap;
|
||||
width: auto;
|
||||
min-width: fit-content;
|
||||
padding: 0 24px;
|
||||
color: white !important;
|
||||
background-color: darkblue !important;
|
||||
border: none !important;
|
||||
border-radius: 8px;
|
||||
box-shadow: 0 2px 4px rgba(16, 0, 75, 0.2), 0 4px 8px rgba(16, 0, 75, 0.1);
|
||||
transition: background-color 0.3s;
|
||||
}
|
||||
|
||||
#toggleSearch:hover {
|
||||
background-color: #26a69a !important;
|
||||
}
|
||||
|
||||
#toggleSearch:active {
|
||||
background-color: gray !important;
|
||||
}
|
||||
|
||||
#divExtractAll {
|
||||
grid-column: 1;
|
||||
grid-row: 1;
|
||||
justify-self: start;
|
||||
}
|
||||
|
||||
#divExtractFilter {
|
||||
grid-column: 3;
|
||||
grid-row: 1;
|
||||
justify-self: end;
|
||||
}
|
||||
|
||||
#divBtnFilter button {
|
||||
border-radius: 8px;
|
||||
box-shadow: 0 2px 4px rgba(16, 0, 75, 0.2),
|
||||
0 4px 8px rgba(16, 0, 75, 0.1);
|
||||
}
|
||||
|
||||
/* Bouton Reprendre */
|
||||
#btnReprendre,
|
||||
#btnGenerate {
|
||||
border: none;
|
||||
color: white;
|
||||
padding: 0px 15px;
|
||||
font-size: 10px;
|
||||
cursor: pointer;
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
#btnReprendre i {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* checkbox Filter Region Admin a supprimer probablement*/
|
||||
#checkRegionAdmin {
|
||||
border: 1px solid #ccc;
|
||||
padding: 10px;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
margin-bottom: 10px;
|
||||
display: none;
|
||||
}
|
||||
|
||||
[class^="checkbox-wrapper-"] {
|
||||
margin-right: 20px;
|
||||
}
|
||||
|
||||
#checkRegionAdmin input[type="checkbox"] {
|
||||
display: none;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
#checkRegionAdmin label {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
#historiqueParcours tr.shown > td { background: #fffdf5; }
|
||||
.parcours-details { font-size: 0.95rem; }
|
||||
|
||||
|
||||
/* Style pour les boutons d'export désactivés */
|
||||
#divBtnFilter button:disabled {
|
||||
opacity: 0.5 !important;
|
||||
cursor: not-allowed !important;
|
||||
pointer-events: none !important;
|
||||
}
|
||||
|
||||
#historiqueParcours td .col-with-text {
|
||||
white-space: normal !important;
|
||||
}
|
||||
|
||||
|
||||
#historiqueParcours_wrapper {
|
||||
overflow-x: visible !important;
|
||||
}
|
||||
|
||||
table.dataTable {
|
||||
width: 100% !important;
|
||||
table-layout: auto !important;
|
||||
}
|
||||
|
||||
.col-with-text {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.col-with-text .np {
|
||||
white-space: normal !important;
|
||||
}
|
||||
|
||||
|
||||
.btn-row-details {
|
||||
cursor: pointer;
|
||||
width: 35px;
|
||||
height: 28px;
|
||||
background-color: #F44336 !important;
|
||||
border-radius: 6px;
|
||||
border: 3px solid darkblue;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
color: white;
|
||||
font-weight: bold;
|
||||
font-size: 16px;
|
||||
padding: 0;
|
||||
line-height: 1;
|
||||
transition: 0.15s ease-in-out;
|
||||
}
|
||||
|
||||
/* petit effet hover propre pour le bouton détails*/
|
||||
.btn-row-details:hover {
|
||||
background-color: #d7372f;
|
||||
transform: scale(1.05);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue