| @ -1,56 +0,0 @@ | |||
| # -*- coding: utf-8 -*- | |||
| from odoo import models, fields, api | |||
| from odoo.exceptions import UserError, ValidationError | |||
| from psycopg2 import sql, DatabaseError | |||
| from odoo.tools.safe_eval import safe_eval, datetime | |||
| from werkzeug import utils | |||
| class opendons_partneremail(models.Model): | |||
| _name = 'opendons.partneremail' | |||
| _description = 'emails du contact' | |||
| _inherit = ['mail.thread'] | |||
| email = fields.Char() | |||
| active=fields.Boolean(string='active',default=True,track_visibility='always') | |||
| date_active=fields.Date(readonly=True,string='Date active',track_visibility='always') | |||
| date_inactive=fields.Date(readonly=True,string='Date inactive',track_visibility='always') | |||
| partner_id = fields.Many2one( | |||
| 'res.partner', | |||
| string='partner', | |||
| required=True, | |||
| index=True, | |||
| readonly=True, | |||
| track_visibility='onchange', | |||
| ondelete='restrict' | |||
| ) | |||
| def write(self,vals): | |||
| date_active=False | |||
| date_inactive=False | |||
| for val in vals: | |||
| if val=='active' and not vals['active']: | |||
| date_inactive=fields.Date.context_today(self) | |||
| if val=='active' and vals['active']: | |||
| date_inactive=False | |||
| date_active=fields.Date.context_today(self) | |||
| vals['date_inactive']=date_inactive | |||
| vals['date_active']=date_active | |||
| res = super(opendons_partneremail, self).write(vals) | |||
| #Your code goes here | |||
| return res | |||
| @ -0,0 +1,40 @@ | |||
| from odoo import models, fields, api,_ | |||
| from odoo.exceptions import UserError, ValidationError,Warning | |||
| from psycopg2 import sql, DatabaseError | |||
| from werkzeug import utils | |||
| import json | |||
| import logging | |||
| import xlwt | |||
| from io import BytesIO | |||
| import base64 | |||
| import csv | |||
| import os,secrets | |||
| class opendons_operation_batch_export(models.Model): | |||
| _name = 'opendons.operation.batch_export' | |||
| _description = 'lot export' | |||
| name=fields.Char(string='Name',required=True,track_visibility='always') | |||
| operation_id = fields.Many2one( | |||
| 'opendons.operation', | |||
| String='Operation', | |||
| index=True, | |||
| readonly=True, | |||
| track_visibility='onchange', | |||
| ondelete='cascade' | |||
| ) | |||
| partner_ids = fields.Many2many('res.partner', 'partner_batch_export_rel', 'partner_id', 'batch_export__id', string='partners') | |||
| csv_export = fields.Binary('csv export', filters='.csv', readonly=True) | |||
| document_fname=fields.Char() | |||
| exported_date=fields.Date(string='Exported Date',track_visibility='always', readonly=True) | |||
| def csv_export_batch(self): | |||
| segments=self.env['opendons.segment'].search([('operation_id','=',int(self.operation_id)),('batch_export_id','=',int(self.id))]) | |||
| #récupération des contacts sélectionnées et lié au segments du batch | |||
| return True | |||
| @ -1,56 +0,0 @@ | |||
| # -*- coding: utf-8 -*- | |||
| from odoo import models, fields, api | |||
| from odoo.exceptions import UserError, ValidationError | |||
| from psycopg2 import sql, DatabaseError | |||
| from odoo.tools.safe_eval import safe_eval, datetime | |||
| from werkzeug import utils | |||
| class opendons_partnerphone(models.Model): | |||
| _name = 'opendons.partnerphone' | |||
| _description = 'telephones du contact' | |||
| _inherit = ['mail.thread'] | |||
| phone = fields.Char() | |||
| active=fields.Boolean(string='active',default=True,track_visibility='always') | |||
| date_active=fields.Date(readonly=True,string='Date active',track_visibility='always') | |||
| date_inactive=fields.Date(readonly=True,string='Date inactive',track_visibility='always') | |||
| partner_id = fields.Many2one( | |||
| 'res.partner', | |||
| string='partner', | |||
| required=True, | |||
| index=True, | |||
| readonly=True, | |||
| track_visibility='onchange', | |||
| ondelete='restrict' | |||
| ) | |||
| def write(self,vals): | |||
| date_active=False | |||
| date_inactive=False | |||
| for val in vals: | |||
| if val=='active' and not vals['active']: | |||
| date_inactive=fields.Date.context_today(self) | |||
| if val=='active' and vals['active']: | |||
| date_inactive=False | |||
| date_active=fields.Date.context_today(self) | |||
| vals['date_inactive']=date_inactive | |||
| vals['date_active']=date_active | |||
| res = super(opendons_partnerphone, self).write(vals) | |||
| #Your code goes here | |||
| return res | |||
| @ -1,88 +0,0 @@ | |||
| <odoo> | |||
| <data> | |||
| <!-- explicit list view definition --> | |||
| <record model="ir.ui.view" id="opendons.partneraddress_list"> | |||
| <field name="name">opendons_partneraddress list</field> | |||
| <field name="model">opendons.partneraddress</field> | |||
| <field name="arch" type="xml"> | |||
| <tree> | |||
| <field name="active"/> | |||
| <field name="partner_id"/> | |||
| <field name="complement_ident"/> | |||
| <field name="complement_geo"/> | |||
| <field name="street1"/> | |||
| <field name="street2"/> | |||
| <field name="postalcode"/> | |||
| <field name="city"/> | |||
| <field name="country"/> | |||
| </tree> | |||
| </field> | |||
| </record> | |||
| <record id="opendons.partneraddress_search" model="ir.ui.view"> | |||
| <field name="name">opendons_partneraddress.search</field> | |||
| <field name="model">opendons.partneraddress</field> | |||
| <field name="arch" type="xml"> | |||
| <search string="Search Adresses"> | |||
| <field name="partner_id"/> | |||
| </search> | |||
| </field> | |||
| </record> | |||
| <record model="ir.ui.view" id="opendons.partneraddress_form" > | |||
| <field name="name">opendons_partneraddress Form</field> | |||
| <field name="model">opendons.partneraddress</field> | |||
| <field name="arch" type="xml"> | |||
| <form string="partneraddress_form"> | |||
| <sheet> | |||
| <group name="main"> | |||
| <field name="partner_id"/> | |||
| <field name="complement_ident"/> | |||
| <field name="complement_geo"/> | |||
| <field name="street1"/> | |||
| <field name="street2"/> | |||
| <field name="postalcode"/> | |||
| <field name="city"/> | |||
| <field name="country"/> | |||
| </group> | |||
| <group name="dataquality"> | |||
| <field name="active"/> | |||
| <field name="date_inactive"/> | |||
| <field name="npai"/> | |||
| </group> | |||
| </sheet> | |||
| <div class="oe_chatter"> | |||
| <field name="message_follower_ids" widget="mail_followers"/> | |||
| <field name="message_ids" widget="mail_thread"/> | |||
| </div> | |||
| </form> | |||
| </field> | |||
| </record> | |||
| <!-- actions opening views on models --> | |||
| <record model="ir.actions.act_window" id="partneraddress_action"> | |||
| <field name="name">partneraddresses</field> | |||
| <field name="res_model">opendons.partneraddress</field> | |||
| <field name="view_mode">tree,form</field> | |||
| </record> | |||
| </data> | |||
| </odoo> | |||
| @ -0,0 +1,25 @@ | |||
| <odoo> | |||
| <record model="ir.ui.view" id="opendons.operation_batch_export_form"> | |||
| <field name="name">opendons_batch_export Form</field> | |||
| <field name="model">opendons.operation.batch_export</field> | |||
| <field name="arch" type="xml"> | |||
| <form string="operation_batch_export_form"> | |||
| <header> | |||
| <button type="object" name="csv_export_batch" string="csv export" class="oe_highlight"/> | |||
| </header> | |||
| <group> | |||
| <field name="create_date"/> | |||
| <field name="name"/> | |||
| <field name="csv_export" filename="document_fname" widget="binary"/> | |||
| <field name="document_fname" invisible="1"/> | |||
| <field name="exported_date">%b-%d-%Y</field> | |||
| </group> | |||
| </form> | |||
| </field> | |||
| </record> | |||
| </odoo> | |||
| @ -1,64 +0,0 @@ | |||
| <odoo> | |||
| <data> | |||
| <!-- explicit list view definition --> | |||
| <record model="ir.ui.view" id="opendons.partnerphone_list"> | |||
| <field name="name">opendons_partnerphone list</field> | |||
| <field name="model">opendons.partnerphone</field> | |||
| <field name="arch" type="xml"> | |||
| <tree> | |||
| <field name="active"/> | |||
| <field name="partner_id"/> | |||
| <field name="phone"/> | |||
| </tree> | |||
| </field> | |||
| </record> | |||
| <record id="opendons.partnerphone_search" model="ir.ui.view"> | |||
| <field name="name">opendons_partnerphone.search</field> | |||
| <field name="model">opendons.partnerphone</field> | |||
| <field name="arch" type="xml"> | |||
| <search string="Search phone"> | |||
| <field name="partner_id"/> | |||
| </search> | |||
| </field> | |||
| </record> | |||
| <record model="ir.ui.view" id="opendons.partnerphone_form" > | |||
| <field name="name">opendons_partnerphone Form</field> | |||
| <field name="model">opendons.partnerphone</field> | |||
| <field name="arch" type="xml"> | |||
| <form string="partnerphone_form"> | |||
| <sheet> | |||
| <group name="main"> | |||
| <field name="partner_id"/> | |||
| <field name="phone"/> | |||
| </group> | |||
| <group name="dataquality"> | |||
| <field name="active"/> | |||
| <field name="date_active"/> | |||
| <field name="date_inactive"/> | |||
| </group> | |||
| </sheet> | |||
| <div class="oe_chatter"> | |||
| <field name="message_follower_ids" widget="mail_followers"/> | |||
| <field name="message_ids" widget="mail_thread"/> | |||
| </div> | |||
| </form> | |||
| </field> | |||
| </record> | |||
| <!-- actions opening views on models --> | |||
| <record model="ir.actions.act_window" id="partnerphone_action"> | |||
| <field name="name">partnerphones</field> | |||
| <field name="res_model">opendons.partnerphone</field> | |||
| <field name="view_mode">tree,form</field> | |||
| </record> | |||
| </data> | |||
| </odoo> | |||