## Module "relations entreprises"

Ce module de ScoDoc a pour but de permettre aux utilisateurs de retrouver et
mémoriser toutes les relations entreprises dans un même endroit.
La base de données est commune aux départements de l'établissement, mais
l'application offre des droits de consultation et de modification différenciés.

Ce projet a été développé en 2021-2022, par Arthur Zhu, apprenti de l'IUT de
Villetaneuse financé par l'Association ScoDoc.

Voir [présentation vidéo détaillée sur YouTube](https://www.youtube.com/watch?v=IBuW2EO3GUA).

## Fonctionnalités

Le module, intégrée à ScoDoc, fournit pour l'instant:

 * Saisie et gestion des entreprises, sites et correspondants
 * Saisie et gestion des offres de stage et d'apprentissage
 * Saisie et gestion de la taxe d'apprentissage
 * Envoi des offres aux responsables de formations
 * Historique à propos des entreprises
 * Historique des modifications des fiches entreprises
 * Systèmes de rôles et de permissions pour les accès.

### Activation du module
Pour disposer du module "relations entreprises" dans votre établissement, il
faut m'activer dans le panneau de configuration global (en tant
qu'administrateur, lien "Configuration" sur la page d'accueil principale). 
Cocher *activer le module entreprises*

![entreprises_activation.png](screens/entreprises_activation.png)

Il sera alors disponible pour tous les départements via le menu principal
![entreprises_menu.png](screens/entreprises_menu.png)



## Les utilisateurs

- le pôle des relations extérieures (le responsable, l'assistant, les chargés de relations entreprises)
- les secrétariats pédagogiques
- les responsables de stage
- les responsables de formations

Des actions et visibilités différentes selon le rôle de l'utilisateur (voir section "Rôles" plus loin).


## Rôles et permissions

Ses rôles ne sont pas reliés à des département. Les rôles permettent aux utilisateurs d'avoir différentes permissions selon le rôle qu'il possède.

Rôles:

 * AdminEntreprise
 * UtilisateurEntreprise
 * ObservateurEntreprise

Permissions:

* RelationsEntreprisesView -> Voir l'application relations entreprises
* RelationsEntreprisesChange -> Modifier les entreprises
* RelationsEntreprisesExport -> Exporter les données de l'application relations entreprises
* RelationsEntreprisesSend -> Envoyer des offres
* RelationsEntreprisesValidate -> Valide les entreprises
* RelationsEntreprisesCorrespondants -> Voir les correspondants



## Saisie et gestion des entreprises, sites et correspondants

### Page "Entreprises"

Les entreprises dans la base de données apparaissent alors dans une liste
d'entreprise où leur SIRET est un lien vers leur fiche entreprise. Il y a 2
checkbox pour pouvoir afficher toutes les entreprises de la base (les
entreprises désactivées en rouge) ou/et que les associations partenaires.

### Fiche entreprise

Chaque entreprises de la base possède une fiche entreprise avec dessus les
informations de l'entreprise (SIRET, nom, adresse, code postal, pays), les
sites, les correspondants, les offres, les dernières opérations, l'historique
concernant l'entreprise.

### Ajouter une entreprise

Pour ajouter une entreprise dans la base, il y a un bouton `Ajouter une
entreprise` sur la page "Entreprises" qui vous emmène vers un formulaire
comportant 2 partie, une partie entreprise avec tous les champs sur l'entreprise
(SIRET, nom, adresse, code postal, pays) puis une partie contact optionnelle
avec les champs concernant le contact de cette entreprise (nom, prenom,
téléphone mail, poste, service) avec au moins un moyen de contact (téléphone ou
mail). Un site par défaut est automatiquement créé avec les informations de
l'entreprise.  

En saisissant un SIRET dans le formulaire d'ajout d'entreprise, le formulaire
peut auto remplir le formulaire si le SIRET saisi correspond à celle d'une
entreprise. 
Il auto-remplit les champs: nom, adresse, code postal. 

### Modifier une entreprise

Pour modifier une entreprise, on peut le faire à partir de la liste des
entreprises ou alors sur la fiche entreprise de l'entreprise avec le bouton
`Modifier` sous les informations de l'entreprise. Toutes les informations de
l'entreprise peuvent être modifiés sauf le SIRET. 

Les champs sont préremplis avec les informations actuelles de l'entreprise

### Activer/Désactiver une entreprise

On peut activer et désactiver une entreprise, on peut le faire à partir de la
liste des entreprises ou alors sur la fiche entreprise de l'entreprise avec le
bouton `Désactiver` ou `Activer`. On peut écrire une note sur la désactivation
de la fiche entreprise. 

### Validation d'une entreprise

Les administrateurs du module gestion des relations entreprises doivent valider
les entreprises saisies par les utilisateurs pour qu'il soit affichés dans la
liste des entreprises. 

### Ajouter et modifier un site

Pour ajouter/modifier un site sur une fiche entreprise, il y a un bouton
`Ajouter site` et un autre bouton `Modifier` sous les informations d'un site sur
la fiche entreprise qui vous emmène vers un formulaire pour ajouter un site ou
modifier un site. (nom unique) 

### Ajouter un correspondant

On peut ajouter un correspondant à une entreprise avec le bouton `Ajouter
correspondant` présent sous les informations des sites qui vous emmène vers un
formulaire avec plusieurs champs (nom, prénom, téléphone, mail, poste, service).
Les champs nom, prénom sont obligatoires. Il faut que le contact possède au
moins un moyen de contact c'est-à-dire soit un téléphone, soit un mail. Le poste
et le service dans lequel il travaille est optionel. 

Les contacts ne peuvent pas avoir le même nom et prénom au sein d'une même entreprise.

On peut saisir plusieurs correspondants en une seule fois sur le même formulaire
avec le bouton `Ajouter un correspondant`. 

### Modifier un correspondant

Pour modifier un correspondant, on peut le faire avec le bouton `Modifier
correspondant` sous les informations du correspondant présent sur la fiche
entreprise de celle-ci. Toutes les informations du correspondant peuvent être
modifiés. 

Les champs sont préremplis avec les informations actuelles du contact.

### Supprimer un correspondant

Pour supprimer un correspondant, on peut le faire avec le bouton `Supprimer correspondant`.

### Page offres expirés

C'est une page qui regroupe toutes les offres dont la date d'expiration est
passées. Elle est accessible sur chaque fiche entreprise avec le bouton `Voir
les offres expirées`. 

### Pages "Correspondants"

C'est une page qui affiche la liste des contacts avec le nom de leur entreprise
cliquable qui envoie sur la fiche entreprise de l'entreprise. 

### Exportation/Importation des données

Les données de la base sont exportables en .xlxs avec le bouton présent sur la
page "Entreprises" `Exporter les données`. La feuille Excel est composée de 3
feuilles:  

* Feuille "Entreprises"
* Feuille "Sites"
* Feuille "Correspondants"

On peut importer des données par fichier Excel (.xlxs) avec le bouton `Importer
des données` présent sur la page "Entreprises". Il faut récupérer la feuille
Excel exemple pour avoir les titres correctement présents avec le lien `Obtenir
la feuille excel à remplir` et le remplir. L'importation réussie s'il passe les
vérifications et sont directement ajoutés à la base. 

Feuille importation:
* Feuille "Entreprises": création et modification d'entreprises
* Feuille "Sites": création et modification de sites / partie avec les titres en
  rouges -> ajout de correspondant lié au site de la même ligne (1 seul ajout) 
* Feuille "Correspondants": modification de correspondants uniquement 

## Saisie et gestion des offres de stage et d'apprentissage

### Visibilité d'une offre

Une offre est lié à un ou plusieurs départements se qui change sa visibilité.

### Ajouter une offre

On peut ajouter une offre à une entreprise avec le bouton `Ajouter offre`
présent sur la fiche entreprise qui vous emmène vers un formulaire avec
plusieurs champs (intitulé, description, type de l'offre, missions, durée,
départements et date d'expiration). 

### Modifier une offre

Pour modifier une offre, on peut le faire avec le bouton `Modifier l'offre` sous
les informations de l'offre présent sur la fiche entreprise de celle-ci. Toutes
les informations du peuvent être modifiés. 

Les champs sont préremplis avec les informations actuelles de l'offre. 

### Supprimer une offre

Pour supprimer une offre, on peut le faire avec le bouton `Supprimer l'offre`.
On peut supprimer toutes les offres. 

### Attacher un fichier à une offre existante

On peut attacher un ou plusieurs fichiers à une offre avec le lien `Ajoutez un
fichier` sous les informations de l'offre qui vous emmène vers un formulaire ou
il faut choisir le fichier à attaché. Les extensions de fichier acceptés sont
.docx et .pdf 

Le fichier est stocké sur le disque.

### Télécharger un fichier attaché

On peut télécharger un fichier attaché à une offre en cliquant sur le nom du
fichier. 

### Supprimer un fichier attaché a une offre existante

Chaque fichier attaché à une offre peut être supprimé.



## Saisie et gestion de la taxe d'apprentissage

### Ajout taxe d'apprentissage

Sur la fiche entreprise, il est possible de saisir la taxe d'apprentissage
versée par l'entreprise avec l'année, le montant et une note avec le bouton
`Ajouter taxe d'apprentissage`.

### Modifier/Supprimer taxe d'apprentissage

Il est possible de modifier et de supprimer les informations sur la taxe d'apprentissage.

## Historique des modifications des fiches entreprises

Toutes les opérations de création, modification, suppression est ajouté dans la
liste des dernières opérations de toutes les entreprises et sur leur propre
fiche entreprise qui sert d'historique des modifications. 

## Ajouter un étudiant qui a déjà réalisé un stage ou une alternance au sein de l'entreprise

On peut ajouter un étudiant qui a déjà réalisé un stage ou une alternance au
sein de l'entreprise avec le bouton `Ajouter historique` qui vous emmène vers un
formulaire avec les champs étudiant (auto suggestion de nom d'étudiant selon la
saisie), type de l'offre, date début et date fin. 

## Envoi des offres aux responsables de formations

### Envoi des offres aux responsables

Sous chaque offre, il y a un bouton `Envoyer offre` qui permet d'envoyer une
offre à un utilisateur de ScoDoc avec un champ (auto suggestion). Les offres
envoyées arrivent sur la page "Offres reçues"
(`.../ScoDoc/entreprise/offres_recues`) 

Envoie a plusieurs utilisateurs possible avec le bouton `Ajouter un responsable` qui rajoute un champ.

### Page "Offres reçues"

La page "Offres reçues" affichent les offres qui ont été envoyés par d'autres utilisateurs ScoDoc.





