Skip to content
Extraits de code Groupes Projets
Valider d4c2a67e rédigé par Hervé Silvant - CGScop's avatar Hervé Silvant - CGScop
Parcourir les fichiers

Ajout du suivi de facturation projet (idf)

parent 6687af64
Branches
Aucune étiquette associée trouvée
Chargement en cours
Ce commit fait partie de la requête de fusion !2. Les commentaires créés ici seront créés dans le contexte de cette requête de fusion.
...@@ -51,6 +51,16 @@ class ScopPartner(models.Model): ...@@ -51,6 +51,16 @@ class ScopPartner(models.Model):
'res.partner', 'res.partner',
string="Destinataire du dossier FSE") string="Destinataire du dossier FSE")
project_invoicing_status_id = fields.Many2many('res.partner.project.invoicing.status',
column1='partner_id',
column2='invoicing_status_id',
string='Etat de facturation')
project_invoicing_status_nb = fields.Integer(
string="Nb de statuts de facturation",
compute="_compute_project_invoicing_status_nb")
# ------------------------------------------------------ # ------------------------------------------------------
# Onchange function # Onchange function
# ------------------------------------------------------ # ------------------------------------------------------
...@@ -86,8 +96,36 @@ class ScopPartner(models.Model): ...@@ -86,8 +96,36 @@ class ScopPartner(models.Model):
return True return True
@api.multi
def _compute_project_invoicing_status_nb(self):
for partner in self:
# Calcul nombre de statut 1
sta = partner.env['res.partner.project.invoicing.status'].search([
('ur_id', '=', self.env.user.ur_id.id)])
partner.project_invoicing_status_nb = len(sta)
class ResPartnerPrescriberCanal(models.Model): class ResPartnerPrescriberCanal(models.Model):
_name = "res.partner.prescriber.canal" _name = "res.partner.prescriber.canal"
_description = "Canal de Prescription" _description = "Canal de Prescription"
name = fields.Char('Canal de Prescription') name = fields.Char('Canal de Prescription')
class ResPartnerProjectInvoicingStatus(models.Model):
_name = "res.partner.project.invoicing.status"
_description = "Etat de la facturation projet"
_rec_name = 'name'
_order = 'ur_id, name'
def _default_ur(self):
return self.env['res.company']._ur_default_get()
name = fields.Char('Nom', index=True, required=True)
ur_id = fields.Many2one(
'union.regionale',
string='Union Régionale',
index=True,
on_delete='restrict',
default=_default_ur)
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_res_partner_prescriber_canal,access_res_partner_prescriber_canal,model_res_partner_prescriber_canal,base.group_user,1,0,0,0 access_res_partner_prescriber_canal,access_res_partner_prescriber_canal,model_res_partner_prescriber_canal,base.group_user,1,0,0,0
admin_res_partner_prescriber_canal,admin_res_partner_prescriber_canal,model_res_partner_prescriber_canal,cgscop_partner.group_cg_administrator,1,1,1,1 admin_res_partner_prescriber_canal,admin_res_partner_prescriber_canal,model_res_partner_prescriber_canal,cgscop_partner.group_cg_administrator,1,1,1,1
access_res_partner_project_invoicing_status,access_res_partner_project_invoicing_status,model_res_partner_project_invoicing_status,base.group_user,1,0,0,0
admin_res_partner_project_invoicing_status,admin_res_partner_project_invoicing_status,model_res_partner_project_invoicing_status,cgscop_partner.group_cg_administrator,1,1,1,1
...@@ -34,6 +34,7 @@ ...@@ -34,6 +34,7 @@
<field name="arch" type="xml"> <field name="arch" type="xml">
<page name='scop_contacts' position="before"> <page name='scop_contacts' position="before">
<page name="adhesion_processus1" string="Processus d'Adhésion" attrs="{'invisible': [('project_status','=','6_suivi')]}"> <page name="adhesion_processus1" string="Processus d'Adhésion" attrs="{'invisible': [('project_status','=','6_suivi')]}">
<field name="project_invoicing_status_nb" invisible="1"/>
<group col="3"> <group col="3">
<group string="Général"> <group string="Général">
<field name="project_number"/> <field name="project_number"/>
...@@ -51,6 +52,8 @@ ...@@ -51,6 +52,8 @@
<field name="fse_full" widget="boolean_toggle"/> <field name="fse_full" widget="boolean_toggle"/>
<field name="is_id_card" widget="boolean_toggle"/> <field name="is_id_card" widget="boolean_toggle"/>
<field name="recipient_file_fse"/> <field name="recipient_file_fse"/>
<field name="project_invoicing_status_id" widget="many2many_tags" options="{'no_create': True}" domain="[('ur_id', '=', ur_id)]" attrs="{'invisible':[('project_invoicing_status_nb', '=', 0)]}" />
</group> </group>
<group string="Phase d'information"> <group string="Phase d'information">
<field name="date_first_rdv" attrs="{'required':[('project_status','=', '1_information')]}"/> <field name="date_first_rdv" attrs="{'required':[('project_status','=', '1_information')]}"/>
...@@ -76,6 +79,7 @@ ...@@ -76,6 +79,7 @@
<page name='scop_liasse_fiscale' position="after"> <page name='scop_liasse_fiscale' position="after">
<page name="adhesion_processus2" string="Processus d'Adhésion" attrs="{'invisible': [('project_status','!=','6_suivi')]}"> <page name="adhesion_processus2" string="Processus d'Adhésion" attrs="{'invisible': [('project_status','!=','6_suivi')]}">
<group col="3"> <group col="3">
<field name="project_invoicing_status_nb" invisible="1"/>
<group string="Général"> <group string="Général">
<field name="percent_realisation" widget="priority"/> <field name="percent_realisation" widget="priority"/>
<field name="date_realisation"/> <field name="date_realisation"/>
...@@ -90,6 +94,7 @@ ...@@ -90,6 +94,7 @@
<field name="date_return_file"/> <field name="date_return_file"/>
<field name="fse_full" widget="boolean_toggle"/> <field name="fse_full" widget="boolean_toggle"/>
<field name="recipient_file_fse"/> <field name="recipient_file_fse"/>
<field name="project_invoicing_status_id" widget="many2many_tags" options="{'no_create': True}" domain="[('ur_id', '=', ur_id)]" attrs="{'invisible':[('project_invoicing_status_nb', '=', 0)]}" />
</group> </group>
<group string="Phase d'information"> <group string="Phase d'information">
<field name="date_first_rdv"/> <field name="date_first_rdv"/>
...@@ -149,6 +154,32 @@ ...@@ -149,6 +154,32 @@
action="action_view_res_partner_prescriber_canal_tree" action="action_view_res_partner_prescriber_canal_tree"
sequence="15"/> sequence="15"/>
<!-- statut de facturation projet -->
<record id="view_res_partner_project_invoicing_status_tree" model="ir.ui.view">
<field name="name">res.partner.project.invoicing.status.tree</field>
<field name="model">res.partner.project.invoicing.status</field>
<field name="arch" type="xml">
<tree string="Etat de la facturation projet" editable="top">
<field name="name"/>
</tree>
</field>
</record>
<record id="action_view_res_partner_project_invoicing_status_tree" model="ir.actions.act_window">
<field name="name">Etat de la facturation projet</field>
<field name="res_model">res.partner.project.invoicing.status</field>
<field name="domain">[('ur_id', '=', ur_id)]</field>
<field name="view_mode">tree</field>
<field name="help">Affiche et gère les états de facturation projet</field>
</record>
<menuitem id="menu_res_partner_project_invoicing_status"
parent="cgscop_partner.menu_scop"
action="action_view_res_partner_project_invoicing_status_tree"
groups="group_cg_administrator"
sequence="17"/>
<record id="view_partner_add_fse_form" model="ir.ui.view"> <record id="view_partner_add_fse_form" model="ir.ui.view">
<field name="name">partner.fse.form</field> <field name="name">partner.fse.form</field>
<field name="model">res.partner</field> <field name="model">res.partner</field>
......
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