forked from ScoDoc/DocScoDoc
siret unique
This commit is contained in:
parent
9073983162
commit
ea73c050e6
@ -28,6 +28,7 @@ import re
|
||||
import requests
|
||||
from datetime import datetime
|
||||
|
||||
from flask import url_for
|
||||
from flask_wtf import FlaskForm
|
||||
from flask_wtf.file import FileField, FileAllowed, FileRequired
|
||||
from markupsafe import Markup
|
||||
@ -149,7 +150,7 @@ class EntrepriseCreationForm(FlaskForm):
|
||||
entreprise = Entreprise.query.filter_by(siret=siret_data).first()
|
||||
if entreprise is not None:
|
||||
if entreprise.visible is True:
|
||||
lien = f'<a href="/ScoDoc/entreprises/fiche_entreprise/{entreprise.id}">ici</a>'
|
||||
lien = f"<a href='{url_for('entreprises.fiche_entreprise', entreprise_id=entreprise.id)}'>ici</a>"
|
||||
self.siret.errors.append(
|
||||
Markup(
|
||||
f"Entreprise déjà présent, lien vers la fiche : {lien}"
|
||||
|
@ -4,7 +4,7 @@ from app import db
|
||||
class Entreprise(db.Model):
|
||||
__tablename__ = "are_entreprises"
|
||||
id = db.Column(db.Integer, primary_key=True)
|
||||
siret = db.Column(db.Text, index=True)
|
||||
siret = db.Column(db.Text, index=True, unique=True)
|
||||
siret_provisoire = db.Column(db.Boolean, default=False)
|
||||
nom = db.Column(db.Text)
|
||||
adresse = db.Column(db.Text)
|
||||
|
@ -341,9 +341,18 @@ def add_entreprise():
|
||||
ville=form.ville.data.strip(),
|
||||
pays=form.pays.data.strip() if form.pays.data.strip() else "FRANCE",
|
||||
)
|
||||
db.session.add(entreprise)
|
||||
db.session.commit()
|
||||
db.session.refresh(entreprise)
|
||||
try:
|
||||
db.session.add(entreprise)
|
||||
db.session.commit()
|
||||
db.session.refresh(entreprise)
|
||||
except:
|
||||
db.session.rollback()
|
||||
flash("Une erreur est survenue veuillez réessayer.")
|
||||
return render_template(
|
||||
"entreprises/form_ajout_entreprise.html",
|
||||
title="Ajout entreprise avec correspondant",
|
||||
form=form,
|
||||
)
|
||||
site = EntrepriseSite(
|
||||
entreprise_id=entreprise.id,
|
||||
nom=form.nom_entreprise.data.strip(),
|
||||
@ -371,7 +380,7 @@ def add_entreprise():
|
||||
db.session.add(correspondant)
|
||||
if current_user.has_permission(Permission.RelationsEntreprisesValidate, None):
|
||||
entreprise.visible = True
|
||||
lien_entreprise = f"<a href=/ScoDoc/entreprises/fiche_entreprise/{entreprise.id}>{entreprise.nom}</a>"
|
||||
lien_entreprise = f"<a href='{url_for('entreprises.fiche_entreprise', entreprise_id=entreprise.id)}'>{entreprise.nom}</a>"
|
||||
log = EntrepriseHistorique(
|
||||
authenticated_user=current_user.user_name,
|
||||
text=f"{lien_entreprise} - Création de la fiche entreprise ({entreprise.nom})",
|
||||
@ -410,7 +419,7 @@ def edit_entreprise(entreprise_id):
|
||||
).first_or_404(description=f"entreprise {entreprise_id} inconnue")
|
||||
form = EntrepriseModificationForm(siret=entreprise.siret)
|
||||
if form.validate_on_submit():
|
||||
lien_entreprise = f"<a href=/ScoDoc/entreprises/fiche_entreprise/{entreprise.id}>{form.nom.data.strip()}</a>"
|
||||
lien_entreprise = f"<a href='{url_for('entreprises.fiche_entreprise', entreprise_id=entreprise.id)}'>{form.nom.data.strip()}</a>"
|
||||
logs_text = []
|
||||
if form.new_siret.data:
|
||||
logs_text.append(f"{lien_entreprise} - Modification du SIRET")
|
||||
@ -1567,9 +1576,18 @@ def import_donnees():
|
||||
):
|
||||
return redirect(url_for("entreprises.import_donnees"))
|
||||
for entreprise in entreprises_import:
|
||||
db.session.add(entreprise)
|
||||
db.session.commit()
|
||||
db.session.refresh(entreprise)
|
||||
try:
|
||||
db.session.add(entreprise)
|
||||
db.session.commit()
|
||||
db.session.refresh(entreprise)
|
||||
except:
|
||||
db.session.rollback()
|
||||
flash("Une erreur est survenue veuillez réessayer.")
|
||||
return render_template(
|
||||
"entreprises/import_donnees.html",
|
||||
title="Importation données",
|
||||
form=form,
|
||||
)
|
||||
site = EntrepriseSite(
|
||||
entreprise_id=entreprise.id,
|
||||
nom=entreprise.nom,
|
||||
|
@ -1,8 +1,8 @@
|
||||
"""suppression colonne are_correspondants, ajout siret provisoire
|
||||
"""suppression colonne are_correspondants, ajout siret provisoire, siret cle unique
|
||||
|
||||
Revision ID: bd358f412282
|
||||
Revision ID: cb360caa3dac
|
||||
Revises: 0b337376e9f7
|
||||
Create Date: 2022-07-12 09:24:59.328369
|
||||
Create Date: 2022-07-13 15:52:14.113530
|
||||
|
||||
"""
|
||||
from alembic import op
|
||||
@ -10,7 +10,7 @@ import sqlalchemy as sa
|
||||
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = 'bd358f412282'
|
||||
revision = 'cb360caa3dac'
|
||||
down_revision = '0b337376e9f7'
|
||||
branch_labels = None
|
||||
depends_on = None
|
||||
@ -21,7 +21,7 @@ def upgrade():
|
||||
op.drop_constraint('are_correspondants_entreprise_id_fkey', 'are_correspondants', type_='foreignkey')
|
||||
op.drop_column('are_correspondants', 'entreprise_id')
|
||||
op.add_column('are_entreprises', sa.Column('siret_provisoire', sa.Boolean(), nullable=True))
|
||||
op.create_index(op.f('ix_are_entreprises_siret'), 'are_entreprises', ['siret'], unique=False)
|
||||
op.create_index(op.f('ix_are_entreprises_siret'), 'are_entreprises', ['siret'], unique=True)
|
||||
# ### end Alembic commands ###
|
||||
|
||||
|
@ -523,7 +523,7 @@ def recursive_help(cmd, parent=None):
|
||||
def entreprises_reset_db():
|
||||
"""Remet a zéro les tables du module relations entreprises"""
|
||||
click.confirm(
|
||||
"This will erase all the tables from the blueprint 'entreprises'.\nAre you sure you want to continue?",
|
||||
"This will erase all data from the blueprint 'entreprises'.\nAre you sure you want to continue?",
|
||||
abort=True,
|
||||
)
|
||||
db.reflect()
|
||||
|
Loading…
Reference in New Issue
Block a user