-
Notifications
You must be signed in to change notification settings - Fork 16
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #16 from LAB-MI/develop
Develop
- Loading branch information
Showing
76 changed files
with
4,184 additions
and
255 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -184,4 +184,4 @@ $RECYCLE.BIN/ | |
|
||
server/dist/ | ||
server/mongo-dev/ | ||
|
||
mongo-dev |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
dist: trusty | ||
sudo: required | ||
|
||
language: minimal | ||
|
||
services: | ||
- docker | ||
|
||
env: | ||
- DOCKER_COMPOSE_VERSION=1.19.0 | ||
|
||
addons: | ||
apt: | ||
packages: | ||
- docker-ce | ||
|
||
before_install: | ||
- sudo rm -rf /usr/local/bin/docker-compose | ||
- curl -L https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-`uname -s`-`uname -m` > docker-compose | ||
- chmod +x docker-compose | ||
- sudo mv docker-compose /usr/local/bin/ | ||
- sudo apt-get -q update | ||
- sudo apt-get install -qy make apt-transport-https ca-certificates curl software-properties-common gawk jq parallel curl | ||
|
||
before_script: | ||
- uname -a | ||
- type -a docker-compose && docker-compose version | ||
- docker version | ||
|
||
script: | ||
- ( git fetch --unshallow || true ) && git tag -l | ||
- echo "# build & run api in dev mode" | ||
- ( cd server && docker-compose -f docker-compose.prod.api.yml build ) | ||
- docker images | ||
- ( cd server && docker-compose -f docker-compose.prod.api.yml up -d --no-build ) | ||
- docker ps | ||
- echo "# test-up" | ||
- echo "# TODO test curl" | ||
- ( cd server && docker-compose -f docker-compose.prod.api.yml down ) | ||
after_script: | ||
- echo "END" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
|
||
import Vue from 'vue' | ||
import Vuex from 'vuex' | ||
|
||
import auth from './auth' | ||
|
||
export * from './auth' | ||
|
||
Vue.use(Vuex) | ||
|
||
const store = new Vuex.Store({ | ||
state: { | ||
auth: {}, | ||
}, | ||
|
||
modules: { | ||
auth, | ||
}, | ||
}) | ||
|
||
export default store |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
# Architecture globale | ||
|
||
## Principes | ||
|
||
L'application Candilib s'articule autour de 3 parties : | ||
|
||
* ``frontal`` qui fournit les applications en fonctions des profils des utilisateurs | ||
* ``back`` qui dispose d'un ensemble d'api utilisée par les applications web et par les composants de gestion | ||
* ``persistance des données`` qui persiste les informations nécessaires au fonctionnement de Candilib | ||
|
||
L'application s'adresse aux candidats et aux agents qui impliqués dans la gestion des examens pratiques sur l'ensemble du territoir. La partie ``frontal`` est séparée en deux parties distinctes pour chacune de ces populations. De plus, chaque composant dispose de ces propres routes vers la partie ``back`` qui assure le filtrage en fonction de l'origine des requêtes. | ||
|
||
La partie ``back`` assure le traitement applicatif de Candilib. Elle est constituée d'un composant qui met à disposition via des API les différents services applicatifs. Ces derniers sont dédiés à un ``frontal`` et aux composants internes de gestion. | ||
|
||
La partie ``persistance des données`` garantie : | ||
|
||
* la disponibilité | ||
* la fiabilité | ||
* l'intégrité | ||
|
||
Le schéma ci-dessous synthétise ces principes d'architecture. | ||
|
||
![Architecture générale](https://raw.github.com/LAB-MI/candilibV2/docs/principes/docs/archi_gene_candilib-Page-2.svg?sanitize=true) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,178 @@ | ||
{ | ||
"info": { | ||
"_postman_id": "bf2aa007-e5d2-4697-a1ff-8572a0500bd5", | ||
"name": "CandilibV2", | ||
"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json" | ||
}, | ||
"item": [ | ||
{ | ||
"name": "admin", | ||
"item": [ | ||
{ | ||
"name": "Connexion admin", | ||
"request": { | ||
"auth": { | ||
"type": "noauth" | ||
}, | ||
"method": "POST", | ||
"header": [ | ||
{ | ||
"key": "Content-Type", | ||
"value": "application/json" | ||
} | ||
], | ||
"body": { | ||
"mode": "raw", | ||
"raw": "{\n\t\"email\": \"admin@example.com\",\n\t\"password\": \"Admin*78\"\n}" | ||
}, | ||
"url": { | ||
"raw": "http://{{HOST}}:{{PORT}}/api/v2/auth/admin/token", | ||
"protocol": "http", | ||
"host": [ | ||
"{{HOST}}" | ||
], | ||
"port": "{{PORT}}", | ||
"path": [ | ||
"api", | ||
"v2", | ||
"auth", | ||
"admin", | ||
"token" | ||
] | ||
} | ||
}, | ||
"response": [] | ||
}, | ||
{ | ||
"name": "Synchro candidats", | ||
"request": { | ||
"method": "POST", | ||
"header": [ | ||
{ | ||
"key": "Authorization", | ||
"value": "Bearer {{TOKEN}}" | ||
}, | ||
{ | ||
"key": "Content-Type", | ||
"name": "Content-Type", | ||
"value": "application/x-www-form-urlencoded", | ||
"type": "text" | ||
} | ||
], | ||
"body": { | ||
"mode": "formdata", | ||
"formdata": [ | ||
{ | ||
"key": "file", | ||
"type": "file", | ||
"src": "" | ||
} | ||
] | ||
}, | ||
"url": { | ||
"raw": "http://{{HOST}}:{{PORT}}/api/v2/admin/candidats", | ||
"protocol": "http", | ||
"host": [ | ||
"{{HOST}}" | ||
], | ||
"port": "{{PORT}}", | ||
"path": [ | ||
"api", | ||
"v2", | ||
"admin", | ||
"candidats" | ||
] | ||
} | ||
}, | ||
"response": [] | ||
}, | ||
{ | ||
"name": "Exports candidats", | ||
"request": { | ||
"method": "GET", | ||
"header": [ | ||
{ | ||
"key": "Authorization", | ||
"value": "Bearer {{TOKEN}}" | ||
}, | ||
{ | ||
"key": "Content-Type", | ||
"name": "Content-Type", | ||
"type": "text", | ||
"value": "application/x-www-form-urlencoded" | ||
} | ||
], | ||
"body": { | ||
"mode": "formdata", | ||
"formdata": [ | ||
{ | ||
"key": "file", | ||
"type": "file", | ||
"src": "" | ||
} | ||
] | ||
}, | ||
"url": { | ||
"raw": "http://{{HOST}}:{{PORT}}/api/v2/admin/candidats", | ||
"protocol": "http", | ||
"host": [ | ||
"{{HOST}}" | ||
], | ||
"port": "{{PORT}}", | ||
"path": [ | ||
"api", | ||
"v2", | ||
"admin", | ||
"candidats" | ||
] | ||
} | ||
}, | ||
"response": [] | ||
}, | ||
{ | ||
"name": "Liste places d'examen", | ||
"request": { | ||
"method": "GET", | ||
"header": [ | ||
{ | ||
"key": "Authorization", | ||
"value": "Bearer {{TOKEN}}" | ||
}, | ||
{ | ||
"key": "Content-Type", | ||
"name": "Content-Type", | ||
"type": "text", | ||
"value": "application/x-www-form-urlencoded" | ||
} | ||
], | ||
"body": { | ||
"mode": "formdata", | ||
"formdata": [ | ||
{ | ||
"key": "file", | ||
"type": "file", | ||
"src": "" | ||
} | ||
] | ||
}, | ||
"url": { | ||
"raw": "http://{{HOST}}:{{PORT}}/api/v2/admin/candidats", | ||
"protocol": "http", | ||
"host": [ | ||
"{{HOST}}" | ||
], | ||
"port": "{{PORT}}", | ||
"path": [ | ||
"api", | ||
"v2", | ||
"admin", | ||
"candidats" | ||
] | ||
} | ||
}, | ||
"response": [] | ||
} | ||
] | ||
} | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
# Principes généraux | ||
|
||
## Inscription | ||
Le service Candilib est ouvert aux personnes souhaitant passer l'épreuve pratique du permis de conduire. Pour cela, elles doivent d'inscrire sur le site en fournissant les informations suivantes : | ||
* NEPH : numéro fourni par l'ANTS lors de l'inscription en tant que candidat au permis de conduire (Code & Conduite) | ||
* Nom de famille | ||
* Prénom | ||
* Adresse email | ||
* Numéro de téléphone portable | ||
* Adresse postale | ||
|
||
Lorsque l'inscription est validée, le candidat peut sélectionner un lieu et une date de passage de l'épreuve pratique. Ce choix peut être modifié par le candidat dans la limite des disponibilités. | ||
|
||
## Vérifications et contrôles | ||
|
||
Le passage de l'épreuve pratique du permis de conduire nécessite que les candidats satisfassent un ensemble de critères : | ||
* un NEPH valide et correspondant au Nom fournit | ||
* avoir réussi l'épreuve théorique du code de la route depuis moins de 5 ans | ||
* ne pas avoir échoué plus de 3 fois à l'épreuve pratique | ||
* et bien sur ne pas être déjà en pocession d'un permis valide | ||
|
||
Le respect de l'ensemble de ces critères permet de valider l'inscription au service Candilib. | ||
|
||
## Critères post inscription | ||
Des contrôles réguliers sont effectués pour réévaluer les critères des candidats inscrits. Ce travail de vérification porte sur les points suivants : | ||
* réussite de l'épreuve pratique | ||
* date d'obtention du code suppérieure à 5 ans | ||
* plus de 3 échecs à l'épreuve pratique | ||
|
||
Si un candidat entre dans un de ces trois critères, il n'est plus en mesure de se présenter à l'épreuve pratique et est donc supprimé de la liste des utilisateurs de Candilib. | ||
|
||
En cas d'échec à l'épreuve pratique, le candidat ne peut pas se représenter avant un délai de 2 mois. Il ne pourra donc pas réserver une nouvelle date avant ce délai. |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.