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
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -51,6 +51,16 @@ class ScopPartner(models.Model):
'res.partner',
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
# ------------------------------------------------------
......@@ -86,8 +96,36 @@ class ScopPartner(models.Model):
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):
_name = "res.partner.prescriber.canal"
_description = "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
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
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 @@
<field name="arch" type="xml">
<page name='scop_contacts' position="before">
<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 string="Général">
<field name="project_number"/>
......@@ -51,6 +52,8 @@
<field name="fse_full" widget="boolean_toggle"/>
<field name="is_id_card" widget="boolean_toggle"/>
<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 string="Phase d'information">
<field name="date_first_rdv" attrs="{'required':[('project_status','=', '1_information')]}"/>
......@@ -76,6 +79,7 @@
<page name='scop_liasse_fiscale' position="after">
<page name="adhesion_processus2" string="Processus d'Adhésion" attrs="{'invisible': [('project_status','!=','6_suivi')]}">
<group col="3">
<field name="project_invoicing_status_nb" invisible="1"/>
<group string="Général">
<field name="percent_realisation" widget="priority"/>
<field name="date_realisation"/>
......@@ -90,6 +94,7 @@
<field name="date_return_file"/>
<field name="fse_full" widget="boolean_toggle"/>
<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 string="Phase d'information">
<field name="date_first_rdv"/>
......@@ -149,6 +154,32 @@
action="action_view_res_partner_prescriber_canal_tree"
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">
<field name="name">partner.fse.form</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