Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 11 additions & 1 deletion accounting_firm/__manifest__.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,21 @@
'sale_planning',
'sale_timesheet_enterprise',
'sign',
'web_studio',
],
'data': [
'data/res_config_settings.xml',
'data/ir_model.xml',
'data/ir_model_access.xml',
'data/ir_model_fields.xml',
'data/ir_default.xml',
'data/ir_actions_server.xml',
'data/base_automation.xml',
'data/ir_cron.xml',
'data/ir_ui_view.xml',
'data/ir_actions_act_window.xml',
'data/ir_ui_menu.xml',
'data/x_aml_risk_type.xml',
'data/mail_activity_type.xml',
'data/crm_stage.xml',
'data/knowledge_article.xml',
Expand All @@ -38,6 +48,7 @@
'data/sale_order_template_line.xml',
],
'demo': [
'demo/x_mandate.xml',
'demo/res_partner.xml',
'demo/crm_lead.xml',
'demo/equity_ubo.xml',
Expand All @@ -55,7 +66,6 @@
'demo/project_task.xml',
],
'cloc_exclude': [
'data/ir_actions_server.xml',
'data/knowledge_article.xml',
],
'images': [
Expand Down
10 changes: 10 additions & 0 deletions accounting_firm/data/base_automation.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<?xml version='1.0' encoding='UTF-8'?>
<odoo>
<record id="base_automation_on_id_scan_changed" model="base.automation">
<field name="name">Accounting Firm: On ID Scan Changed</field>
<field name="action_server_ids" eval="[(6, 0, [ref('server_action_keep_scan_in_chatter')])]"/>
<field name="model_id" ref="base.model_res_partner"/>
<field name="on_change_field_ids" eval="[(6, 0, [ref('x_id_scan_field_res_partner')])]"/>
<field name="trigger">on_change</field>
</record>
</odoo>
8 changes: 8 additions & 0 deletions accounting_firm/data/ir_actions_act_window.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<?xml version='1.0' encoding='UTF-8'?>
<odoo>
<record id="action_mandate_list_view" model="ir.actions.act_window">
<field name="name">Mandate list view</field>
<field name="res_model">x_mandate</field>
<field name="view_mode">list,form</field>
</record>
</odoo>
93 changes: 93 additions & 0 deletions accounting_firm/data/ir_actions_server.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,97 @@ action = {
}
]]></field>
</record>
<record id="action_server_request_identity_document" model="ir.actions.server">
<field name="model_id" ref="base.model_res_partner"/>
<field name="state">code</field>
<field name="name">Request Identity Document</field>
<field name="binding_model_id" ref="base.model_res_partner"/>
<field name="binding_view_types">form</field>
<field name="code"><![CDATA[
action ={
"type": "ir.actions.act_window",
"res_model": "documents.request_wizard",
"views": [[False, "form"]],
"target": "new",
"context": {
"default_folder_id": env.ref('documents.document_inbox_folder').id,
"default_res_id": record.id,
"default_res_model": env.context.get("default_res_model", False),
"default_name": "Identity Document - " + record.name,
"default_requestee_id": record.id,
"default_partner_id": record.id,
"default_activity_date_deadline_range": 7,
"default_activity_note": "Please provide your identity document for update.",
"default_x_has_chatter_message": True,
},
"name": "New Document Request",
}
]]></field>
</record>
<record id="server_action_update_owner_id" model="ir.actions.server">
<field name="model_id" ref="equity.model_equity_ubo"/>
<field name="state">code</field>
<field name="name">Update Owner ID</field>
<field name="code"><![CDATA[
for ubo in records:
ubo.holder_id['x_id_scan'] = ubo.attachment_ids[-1].datas
ubo.holder_id['x_id_expiration_date'] = ubo.attachment_expiration_date
ubo.holder_id.message_post(
body="The Identity Document Scan changed for this one: ",
attachment_ids=[ubo.attachment_ids[-1].id]
)
action = {
'type': 'ir.actions.client',
'tag': 'display_notification',
'params': {
'message': "Identity Document updated",
'type': 'success',
},
}
]]></field>
</record>
<record id="server_action_request_document_with_chatter_message" model="ir.actions.server">
<field name="model_id" ref="documents.model_documents_request_wizard"/>
<field name="state">code</field>
<field name="name">Request Document with Chatter Message</field>
<field name="code"><![CDATA[
doc = record.request_document()
doc['x_is_identity_document_request'] = True
record.partner_id.message_post(body="Document request has been sent")
]]></field>
</record>
<record id="server_action_keep_scan_in_chatter" model="ir.actions.server">
<field name="model_id" ref="base.model_res_partner"/>
<field name="state">code</field>
<field name="name">Keep Scan in Chatter</field>
<field name="code"><![CDATA[
for partner in records:
partner.message_post(
Comment on lines +79 to +80
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't there another type of server action for generic actions like sending an email?

body="The Identity Document Scan changed for this one: ",
attachment_ids=[env['ir.attachment'].create({
'name': 'Identity Document - ' + record.name + ' - History',
'datas': record.x_id_scan,
}).id]
)
]]></field>
</record>
<record id="server_action_update_document_partner_identity" model="ir.actions.server">
<field name="model_id" ref="documents.model_documents_document"/>
<field name="state">code</field>
<field name="name">Update Document Partner ID</field>
<field name="code"><![CDATA[
for document in records:
document.partner_id['x_id_scan'] = document.attachment_id.datas
document.partner_id.message_post(
body="The Identity Document Scan changed for this one: ",
attachment_ids=[document.attachment_id.id]
)
action = {
'view_mode': 'form',
'res_model': 'res.partner',
'res_id': document.partner_id.id,
'type': 'ir.actions.act_window',
}
]]></field>
</record>
</odoo>
26 changes: 26 additions & 0 deletions accounting_firm/data/ir_cron.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
<?xml version='1.0' encoding='UTF-8'?>
<odoo>
<record id="ir_cron_request_contact_id_document" model="ir.cron">
<field name="name">Accounting Firm: Request Contact Identity Document</field>
<field name="interval_number">1</field>
<field name="interval_type">days</field>
<field name="model_id" ref="base.model_res_partner"/>
<field name="state">code</field>
<field name="code"><![CDATA[
for contact in model.search([('x_id_expiration_date', '!=', False), ('x_id_expiration_date', '<=', datetime.datetime.today().date() + dateutil.relativedelta.relativedelta(days=7))]):
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe a detailed but you changed this in your last push. Was it intended?

Suggested change
for contact in model.search([('x_id_expiration_date', '!=', False), ('x_id_expiration_date', '<=', datetime.datetime.today().date() + dateutil.relativedelta.relativedelta(days=7))]):
for contact in model.search([('x_id_expiration_date', '!=', False), ('x_id_expiration_date', '<', datetime.datetime.today().date() + dateutil.relativedelta.relativedelta(days=7))]):

if not env['documents.document'].search_count([('partner_id', '=', contact.id), ('x_is_identity_document_request', '!=', False), ('attachment_id', '=', False)], limit=1):
doc = env['documents.request_wizard'].create({
"folder_id": env.ref('documents.document_inbox_folder').id,
"res_id": contact.id,
"res_model": env.context.get("default_res_model", False),
"name": "Identity Document - " + contact.name,
"requestee_id": contact.id,
"partner_id": contact.id,
"activity_date_deadline_range": 7,
"activity_note": "Please provide your identity document for update.",
}).request_document()
doc['x_is_identity_document_request'] = True
contact.message_post(body="Document request has been sent")
]]></field>
</record>
</odoo>
7 changes: 7 additions & 0 deletions accounting_firm/data/ir_default.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<?xml version='1.0' encoding='UTF-8'?>
<odoo noupdate="1">
<record id="default_x_mandate_x_active" model="ir.default">
<field name="field_id" ref="x_active_field_x_mandate"/>
<field name="json_value">true</field>
</record>
</odoo>
15 changes: 15 additions & 0 deletions accounting_firm/data/ir_model.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<?xml version='1.0' encoding='UTF-8'?>
<odoo>
<record id="x_mandate_model" model="ir.model">
<field name="name">Mandate</field>
<field name="model">x_mandate</field>
</record>
<record id="x_aml_risk_model" model="ir.model">
<field name="name">AML Risk</field>
<field name="model">x_aml_risk</field>
</record>
<record id="x_aml_risk_type_model" model="ir.model">
<field name="name">Risk Type</field>
<field name="model">x_aml_risk_type</field>
</record>
</odoo>
30 changes: 30 additions & 0 deletions accounting_firm/data/ir_model_access.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
<?xml version='1.0' encoding='UTF-8'?>
<odoo>
<record id="mandate_user_access" model="ir.model.access">
<field name="group_id" ref="base.group_user"/>
<field name="model_id" ref="x_mandate_model"/>
<field name="name">x_mandate_user_access</field>
<field name="perm_create" eval="True"/>
<field name="perm_read" eval="True"/>
<field name="perm_unlink" eval="True"/>
<field name="perm_write" eval="True"/>
</record>
<record id="aml_risk_user_access" model="ir.model.access">
<field name="group_id" ref="base.group_user"/>
<field name="model_id" ref="x_aml_risk_model"/>
<field name="name">x_aml_risk_user_access</field>
<field name="perm_create" eval="True"/>
<field name="perm_read" eval="True"/>
<field name="perm_unlink" eval="True"/>
<field name="perm_write" eval="True"/>
</record>
<record id="aml_risk_type_user_access" model="ir.model.access">
<field name="group_id" ref="base.group_user"/>
<field name="model_id" ref="x_aml_risk_type_model"/>
<field name="name">x_aml_risk_type_user_access</field>
<field name="perm_create" eval="True"/>
<field name="perm_read" eval="True"/>
<field name="perm_unlink" eval="True"/>
<field name="perm_write" eval="True"/>
</record>
</odoo>
Loading