-- phpMyAdmin SQL Dump
-- version 5.0.2
-- https://www.phpmyadmin.net/
--
-- Hôte : localhost
-- Généré le : Dim 30 oct. 2022 à 10:44
-- Version du serveur :  5.7.29-log
-- Version de PHP : 7.3.11

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";

--
-- Base de données : `mponina_ahmy_db`
--

-- --------------------------------------------------------

--
-- Structure de la table `carreaux`
--

CREATE TABLE `carreaux` (
  `id_carreau` varchar(12) CHARACTER SET utf8 NOT NULL,
  `quartier_id` varchar(10) CHARACTER SET utf8 NOT NULL,
  `par_celle` varchar(10) CHARACTER SET utf8 NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- --------------------------------------------------------

--
-- Structure de la table `communes`
--

CREATE TABLE `communes` (
  `id_commune` varchar(7) CHARACTER SET utf8 NOT NULL,
  `nom_commune` varchar(60) CHARACTER SET utf8 NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- --------------------------------------------------------

--
-- Structure de la table `cotisations`
--

CREATE TABLE `cotisations` (
  `id_oper` int(11) NOT NULL,
  `date_oper` date DEFAULT NULL,
  `menage_id` varchar(10) CHARACTER SET utf8 NOT NULL,
  `montant` double(15,2) NOT NULL DEFAULT '0.00',
  `exo` char(4) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- --------------------------------------------------------

--
-- Structure de la table `deces`
--

CREATE TABLE `deces` (
  `personne_id` bigint(20) NOT NULL,
  `date_dece` date DEFAULT NULL,
  `motif` varchar(120) NOT NULL,
  `created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- --------------------------------------------------------

--
-- Structure de la table `doc_compteurs`
--

CREATE TABLE `doc_compteurs` (
  `id_doc` varchar(30) NOT NULL,
  `id_quartier` varchar(10) CHARACTER SET utf8 NOT NULL,
  `annee` char(4) NOT NULL,
  `compteur` int(11) NOT NULL,
  `created_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- --------------------------------------------------------

--
-- Structure de la table `domiciles`
--

CREATE TABLE `domiciles` (
  `id_domicile` int(11) NOT NULL,
  `local_id` varchar(12) CHARACTER SET utf8 NOT NULL,
  `menage_id` varchar(10) CHARACTER SET utf8 NOT NULL,
  `date_entree` date DEFAULT NULL,
  `lotissement` varchar(60) CHARACTER SET utf8 NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- --------------------------------------------------------

--
-- Structure de la table `locaux`
--

CREATE TABLE `locaux` (
  `id_local` varchar(12) CHARACTER SET utf8 NOT NULL,
  `carreau_id` varchar(12) CHARACTER SET utf8 NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- --------------------------------------------------------

--
-- Structure de la table `membre_menages`
--

CREATE TABLE `membre_menages` (
  `id_membre` bigint(20) NOT NULL,
  `menage_id` varchar(25) CHARACTER SET utf8mb4 NOT NULL,
  `personne_id` bigint(20) NOT NULL,
  `date_entree` date NOT NULL,
  `date_depart` date DEFAULT NULL,
  `statut` char(2) NOT NULL DEFAULT 'MF',
  `updated_at` datetime DEFAULT CURRENT_TIMESTAMP,
  `created_at` datetime DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- --------------------------------------------------------

--
-- Structure de la table `menages`
--

CREATE TABLE `menages` (
  `id_menage` varchar(25) CHARACTER SET utf8mb4 NOT NULL,
  `carreau_id` varchar(12) CHARACTER SET utf8 NOT NULL,
  `date_creation` date NOT NULL,
  `code_barre` varchar(18) CHARACTER SET utf8 DEFAULT NULL,
  `adresse` varchar(60) NOT NULL,
  `phone` varchar(12) DEFAULT NULL,
  `proprietaire` char(1) NOT NULL DEFAULT '1',
  `maps` varchar(60) DEFAULT NULL,
  `created_at` datetime DEFAULT CURRENT_TIMESTAMP,
  `updated_at` datetime DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- --------------------------------------------------------

--
-- Structure de la table `personnels`
--

CREATE TABLE `personnels` (
  `id_personnel` varchar(20) CHARACTER SET utf8mb4 NOT NULL,
  `personne_id` bigint(20) NOT NULL,
  `quartier_id` varchar(10) CHARACTER SET utf8 NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- --------------------------------------------------------

--
-- Structure de la table `personnes`
--

CREATE TABLE `personnes` (
  `id_personne` bigint(20) NOT NULL,
  `ref_personne` varchar(25) CHARACTER SET utf8mb4 NOT NULL,
  `nom` varchar(120) CHARACTER SET utf8mb4 NOT NULL,
  `prenom` varchar(120) CHARACTER SET utf8mb4 DEFAULT NULL,
  `sexe` char(1) NOT NULL,
  `date_naiss` date NOT NULL,
  `date_naiss_vers` tinyint(1) NOT NULL DEFAULT '0',
  `lieu_naiss` varchar(120) NOT NULL,
  `cin` varchar(20) DEFAULT NULL,
  `date_cin` date DEFAULT NULL,
  `duplicata` char(1) NOT NULL DEFAULT '0',
  `date_cin2` date DEFAULT NULL,
  `lieu_cin` varchar(60) DEFAULT NULL,
  `lieu_cin2` varchar(60) DEFAULT NULL,
  `nom_pere` varchar(120) CHARACTER SET utf8mb4 NOT NULL,
  `nom_mere` varchar(120) CHARACTER SET utf8mb4 NOT NULL,
  `phone` varchar(30) DEFAULT NULL,
  `code_profession` varchar(5) CHARACTER SET utf8 DEFAULT NULL,
  `profession` varchar(120) CHARACTER SET utf8 DEFAULT NULL,
  `nationalite` varchar(5) NOT NULL,
  `majeur` char(1) NOT NULL,
  `updated_at` datetime DEFAULT CURRENT_TIMESTAMP,
  `created_at` datetime DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- --------------------------------------------------------

--
-- Structure de la table `quartiers`
--

CREATE TABLE `quartiers` (
  `id_quartier` varchar(10) CHARACTER SET utf8 NOT NULL,
  `commune_id` varchar(7) CHARACTER SET utf8 NOT NULL,
  `nom_quartier` varchar(60) CHARACTER SET utf8 NOT NULL,
  `compteur` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- --------------------------------------------------------

--
-- Structure de la table `redevances`
--

CREATE TABLE `redevances` (
  `id_oper` int(11) NOT NULL,
  `date_oper` date DEFAULT NULL,
  `menage_id` varchar(10) CHARACTER SET utf8 NOT NULL,
  `service_id` varchar(5) NOT NULL,
  `montant` double(15,2) NOT NULL DEFAULT '0.00'
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- --------------------------------------------------------

--
-- Structure de la table `referentiel_professions`
--

CREATE TABLE `referentiel_professions` (
  `id_profession` varchar(10) CHARACTER SET utf8 NOT NULL,
  `code_cdr` varchar(5) NOT NULL,
  `libelle` varchar(120) NOT NULL,
  `description` varchar(120) NOT NULL,
  `code_secteur` varchar(10) NOT NULL,
  `categorie` varchar(5) NOT NULL,
  `nature` char(1) NOT NULL DEFAULT '1',
  `active` char(1) CHARACTER SET utf8 NOT NULL DEFAULT 'N'
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

-- --------------------------------------------------------

--
-- Structure de la table `users`
--

CREATE TABLE `users` (
  `id` bigint(20) NOT NULL,
  `name` varchar(20) CHARACTER SET utf8mb4 NOT NULL,
  `role` varchar(5) COLLATE utf8_unicode_ci NOT NULL,
  `avatar` varchar(60) COLLATE utf8_unicode_ci DEFAULT NULL,
  `password` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `remember_token` varchar(100) COLLATE utf8_unicode_ci DEFAULT NULL,
  `module` json DEFAULT NULL,
  `created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

--
-- Index pour les tables déchargées
--

--
-- Index pour la table `carreaux`
--
ALTER TABLE `carreaux`
  ADD PRIMARY KEY (`id_carreau`),
  ADD KEY `quartier_id` (`quartier_id`);

--
-- Index pour la table `communes`
--
ALTER TABLE `communes`
  ADD PRIMARY KEY (`id_commune`);

--
-- Index pour la table `cotisations`
--
ALTER TABLE `cotisations`
  ADD PRIMARY KEY (`id_oper`);

--
-- Index pour la table `deces`
--
ALTER TABLE `deces`
  ADD PRIMARY KEY (`personne_id`);

--
-- Index pour la table `domiciles`
--
ALTER TABLE `domiciles`
  ADD PRIMARY KEY (`id_domicile`);

--
-- Index pour la table `locaux`
--
ALTER TABLE `locaux`
  ADD PRIMARY KEY (`id_local`),
  ADD KEY `carreau_id` (`carreau_id`);

--
-- Index pour la table `membre_menages`
--
ALTER TABLE `membre_menages`
  ADD PRIMARY KEY (`id_membre`),
  ADD UNIQUE KEY `id_personne_menage` (`menage_id`,`personne_id`) USING BTREE,
  ADD KEY `personne_id` (`personne_id`) USING BTREE;

--
-- Index pour la table `menages`
--
ALTER TABLE `menages`
  ADD PRIMARY KEY (`id_menage`),
  ADD UNIQUE KEY `code_barre` (`code_barre`),
  ADD KEY `quartier_id` (`carreau_id`);

--
-- Index pour la table `personnels`
--
ALTER TABLE `personnels`
  ADD PRIMARY KEY (`id_personnel`),
  ADD UNIQUE KEY `personne_id` (`personne_id`),
  ADD KEY `quartier_id` (`quartier_id`);

--
-- Index pour la table `personnes`
--
ALTER TABLE `personnes`
  ADD PRIMARY KEY (`id_personne`),
  ADD UNIQUE KEY `ref_personne` (`ref_personne`);

--
-- Index pour la table `quartiers`
--
ALTER TABLE `quartiers`
  ADD PRIMARY KEY (`id_quartier`),
  ADD KEY `commune_id` (`commune_id`);

--
-- Index pour la table `redevances`
--
ALTER TABLE `redevances`
  ADD PRIMARY KEY (`id_oper`);

--
-- Index pour la table `referentiel_professions`
--
ALTER TABLE `referentiel_professions`
  ADD PRIMARY KEY (`id_profession`);

--
-- Index pour la table `users`
--
ALTER TABLE `users`
  ADD PRIMARY KEY (`id`),
  ADD KEY `name` (`name`);

--
-- AUTO_INCREMENT pour les tables déchargées
--

--
-- AUTO_INCREMENT pour la table `cotisations`
--
ALTER TABLE `cotisations`
  MODIFY `id_oper` int(11) NOT NULL AUTO_INCREMENT;

--
-- AUTO_INCREMENT pour la table `domiciles`
--
ALTER TABLE `domiciles`
  MODIFY `id_domicile` int(11) NOT NULL AUTO_INCREMENT;

--
-- AUTO_INCREMENT pour la table `membre_menages`
--
ALTER TABLE `membre_menages`
  MODIFY `id_membre` bigint(20) NOT NULL AUTO_INCREMENT;

--
-- AUTO_INCREMENT pour la table `personnes`
--
ALTER TABLE `personnes`
  MODIFY `id_personne` bigint(20) NOT NULL AUTO_INCREMENT;

--
-- AUTO_INCREMENT pour la table `redevances`
--
ALTER TABLE `redevances`
  MODIFY `id_oper` int(11) NOT NULL AUTO_INCREMENT;

--
-- AUTO_INCREMENT pour la table `users`
--
ALTER TABLE `users`
  MODIFY `id` bigint(20) NOT NULL AUTO_INCREMENT;

--
-- Contraintes pour les tables déchargées
--

--
-- Contraintes pour la table `membre_menages`
--
ALTER TABLE `membre_menages`
  ADD CONSTRAINT `membre_menages_ibfk_1` FOREIGN KEY (`menage_id`) REFERENCES `menages` (`id_menage`) ON UPDATE CASCADE,
  ADD CONSTRAINT `membre_menages_ibfk_2` FOREIGN KEY (`personne_id`) REFERENCES `personnes` (`id_personne`) ON UPDATE CASCADE;

--
-- Contraintes pour la table `users`
--
ALTER TABLE `users`
  ADD CONSTRAINT `users_ibfk_1` FOREIGN KEY (`name`) REFERENCES `personnels` (`id_personnel`) ON UPDATE CASCADE;
COMMIT;
