Skip to content
Extraits de code Groupes Projets
Valider ddbda0fb rédigé par Benjamin - Le Filament's avatar Benjamin - Le Filament
Parcourir les fichiers

[update] view and constraints

parent 3571791f
Aucune branche associée trouvée
Aucune étiquette associée trouvée
1 requête de fusion!39[add] merge 14.0 new process adh
...@@ -9,8 +9,6 @@ _logger = logging.getLogger(__name__) ...@@ -9,8 +9,6 @@ _logger = logging.getLogger(__name__)
def update_status_project_accompagnement(env): def update_status_project_accompagnement(env):
# Todo: Voir si on passe à Suivi ou Accompagnement et si on passe à Phase adhésion
# Confirmation docs à avoir
openupgrade.logged_query( openupgrade.logged_query(
env.cr, env.cr,
""" """
...@@ -51,6 +49,3 @@ def migrate(env, version): ...@@ -51,6 +49,3 @@ def migrate(env, version):
update_status_project_accompagnement(env) update_status_project_accompagnement(env)
update_status_project_soumis_cg(env) update_status_project_soumis_cg(env)
update_with_new_status(env) update_with_new_status(env)
# update_status_project_suivi(env)
# update_status_project_abandonne(env)
# update_status_decede(env)
...@@ -311,6 +311,7 @@ class ScopPartner(models.Model): ...@@ -311,6 +311,7 @@ class ScopPartner(models.Model):
ondelete="restrict", ondelete="restrict",
) )
is_ag_constitution = fields.Boolean("AG constitutive réalisée") is_ag_constitution = fields.Boolean("AG constitutive réalisée")
# is_registration_in_progress = fields.Boolean("AG constitutive réalisée")
is_federation_com = fields.Boolean( is_federation_com = fields.Boolean(
string="Fédération de la Communication", string="Fédération de la Communication",
compute="_compute_federation", compute="_compute_federation",
...@@ -576,6 +577,19 @@ class ScopPartner(models.Model): ...@@ -576,6 +577,19 @@ class ScopPartner(models.Model):
elif self.search_count([("siret", "=", self.siret)]) > 1: elif self.search_count([("siret", "=", self.siret)]) > 1:
raise ValidationError(_("Ce SIRET existe déjà")) raise ValidationError(_("Ce SIRET existe déjà"))
@api.constrains("is_company", "type", "email", "phone", "mobile", "user_ids")
def _check_contact_info(self):
# Contrainte de tel ou mail lors de la modification d'un contact
if (
not self.is_company
and self.type == "contact"
and not self.user_ids
):
if not self.email and not self.phone and not self.mobile:
raise UserError(
_("Vous devez saisir au moins un e-mail ou un téléphone pour %s") % self.name
)
# ------------------------------------------------------ # ------------------------------------------------------
# Actions # Actions
# ------------------------------------------------------ # ------------------------------------------------------
...@@ -787,21 +801,6 @@ class ScopPartner(models.Model): ...@@ -787,21 +801,6 @@ class ScopPartner(models.Model):
) )
for partner in self: for partner in self:
# Contrainte de tel ou mail lors de la modification d'un contact
if (
not partner.is_company
and partner.type == "contact"
and not partner.user_ids
):
if not partner.email and not partner.phone and not partner.mobile:
raise ValidationError(
_(
"Vous devez saisir au moins un e-mail ou un téléphone\
pour "
+ partner.name
)
)
# Création d'une période lors du changement de statut en Suivi # Création d'une période lors du changement de statut en Suivi
# Todo: A voir si le statut reste à celui là # Todo: A voir si le statut reste à celui là
if vals.get("project_status") == "4_suivi" and not self.env.context.get( if vals.get("project_status") == "4_suivi" and not self.env.context.get(
......
...@@ -30,6 +30,11 @@ class ResPartnerCooperativeForm(models.Model): ...@@ -30,6 +30,11 @@ class ResPartnerCooperativeForm(models.Model):
name = fields.Char("Forme Coopérative") name = fields.Char("Forme Coopérative")
id_riga = fields.Integer("ID RIGA") id_riga = fields.Integer("ID RIGA")
def _get_lm_form(self):
type_lm = self.env.ref("cgscop_partner.form_scop")
type_lamaneur = self.env.ref("cgscop_partner.form_lamaneur")
type_unionscop = self.env.ref("cgscop_partner.form_unionscop")
return type_lm + type_lamaneur + type_unionscop
class ResPartnerCreationOrigin(models.Model): class ResPartnerCreationOrigin(models.Model):
_name = "res.partner.creation.origin" _name = "res.partner.creation.origin"
......
...@@ -1094,13 +1094,13 @@ ...@@ -1094,13 +1094,13 @@
<field <field
name="date_1st_sign" name="date_1st_sign"
attrs="{ attrs="{
'invisible': ['|', '&amp;', ('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement')), ('is_ag_constitution', '!=', True), ('cooperative_form_id', '=', %(cgscop_partner.form_noncooperative)d)], 'invisible': ['|', '&amp;', ('project_status', 'in', ('1_information', '2_pre-diagnostic',)), ('is_ag_constitution', '!=', True), ('cooperative_form_id', '=', %(cgscop_partner.form_noncooperative)d)],
'required': [('project_status', 'in', ('4_suivi')), ('is_ag_constitution', '=', True), ('is_cooperative', '=', True), ('cooperative_form_id', '!=', %(cgscop_partner.form_noncooperative)d)], 'required': [('project_status', 'not in', ('4_suivi')), ('is_ag_constitution', '=', True), ('is_cooperative', '=', True), ('cooperative_form_id', '!=', %(cgscop_partner.form_noncooperative)d)],
'readonly': [('id','!=',False), ('project_status', '=', '4_suivi'), ('is_administrative', '!=', True)]}" 'readonly': [('id','!=',False), ('project_status', '=', '4_suivi'), ('is_administrative', '!=', True)]}"
/> />
<field <field
name="registration_date" name="registration_date"
attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}" attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic',))]}"
/> />
<field <field
name="social_object" name="social_object"
...@@ -1108,69 +1108,69 @@ ...@@ -1108,69 +1108,69 @@
/> />
<field <field
name="naf_id" name="naf_id"
attrs="{'readonly': [('write_date', '!=', False), ('project_status', '=', '4_suivi')], 'required':[('write_date', '=', False), ('project_status', '=', '4_suivi')], 'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}" attrs="{'readonly': [('write_date', '!=', False), ('project_status', '=', '4_suivi')], 'required':[('write_date', '=', False), ('project_status', '=', '4_suivi')], 'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic',))]}"
options="{'no_open': True, 'no_create': True}" options="{'no_open': True, 'no_create': True}"
/> />
<field <field
name="certification_ids" name="certification_ids"
widget="many2many_tags" widget="many2many_tags"
options="{'color_field': 'color', 'no_create': True}" options="{'color_field': 'color', 'no_create': True}"
attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}" attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic',))]}"
/> />
<field <field
name="other_certification" name="other_certification"
attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}" attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic',))]}"
/> />
<label <label
for='siret' for='siret'
string="SIRET" string="SIRET"
class="oe_edit_only" class="oe_edit_only"
attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}" attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic',))]}"
/> />
<div> <div>
<field <field
name="siret" name="siret"
class="oe_edit_only" class="oe_edit_only"
attrs="{'readonly': [('write_date', '!=', False), ('project_status', '=', '4_suivi')], 'required':[('write_date', '=', False), ('project_status', '=', '4_suivi')], 'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}" attrs="{'readonly': [('write_date', '!=', False), ('project_status', '=', '4_suivi')], 'required':[('write_date', '=', False), ('project_status', '=', '4_suivi')], 'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic',))]}"
/> />
</div> </div>
<label <label
for='formatted_siret' for='formatted_siret'
string="SIRET" string="SIRET"
class="oe_read_only" class="oe_read_only"
attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}" attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic',))]}"
/> />
<div> <div>
<field <field
name="formatted_siret" name="formatted_siret"
class="oe_read_only" class="oe_read_only"
attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}" attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic',))]}"
/> />
</div> </div>
<field <field
name="siren" name="siren"
readonly="1" readonly="1"
attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}" attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic',))]}"
/> />
<field <field
name="vat" name="vat"
attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}" attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic',))]}"
/> />
<field <field
name="capital" name="capital"
attrs="{'required':[('project_status','in',('4_suivi'))], 'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))],}" attrs="{'required':[('project_status','in',('4_suivi'))], 'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic',))],}"
widget="monetary" widget="monetary"
/> />
<field <field
name="first_closeout" name="first_closeout"
attrs="{ attrs="{
'required':[('is_cooperative', '!=', False), ('project_status', '=', '4_suivi'), ('cooperative_form_id', '!=', %(cgscop_partner.form_noncooperative)d)], 'required':[('is_cooperative', '!=', False), ('project_status', '=', '4_suivi'), ('cooperative_form_id', '!=', %(cgscop_partner.form_noncooperative)d)],
'invisible': ['|', ('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement')), ('cooperative_form_id', '=', %(cgscop_partner.form_noncooperative)d)], 'invisible': ['|', ('project_status', 'in', ('1_information', '2_pre-diagnostic',)), ('cooperative_form_id', '=', %(cgscop_partner.form_noncooperative)d)],
'readonly': [('id','!=',False), ('project_status', '=', '4_suivi'), ('is_administrative', '!=', True)]}" 'readonly': [('id','!=',False), ('project_status', '=', '4_suivi'), ('is_administrative', '!=', True)]}"
/> />
<field <field
name="closeout_month" name="closeout_month"
attrs="{'required':[('project_status','=','4_suivi')], 'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}" attrs="{'required':[('project_status','=','4_suivi')], 'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic',))]}"
/> />
<field <field
name="is_seed_scop" name="is_seed_scop"
...@@ -1191,11 +1191,11 @@ ...@@ -1191,11 +1191,11 @@
/> />
<field <field
name="staff_last" name="staff_last"
attrs="{'invisible': [('project_status', 'not in', ('4_suivi'))]}" attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}"
/> />
<field <field
name="staff_last_date" name="staff_last_date"
attrs="{'invisible': [('project_status', 'not in', ('4_suivi'))]}" attrs="{'invisible': [('project_status', 'in', ('1_information', '2_pre-diagnostic', '3_accompagnement'))]}"
/> />
</group> </group>
</group> </group>
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter