@ -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> |