From fd0ff186ecf2313ef04ae03fea947cfbf9636d76 Mon Sep 17 00:00:00 2001 From: ivan deng Date: Wed, 31 Mar 2021 23:22:03 +0800 Subject: [PATCH] opt m2o --- app_odoo_customize/__manifest__.py | 2 +- .../models/res_config_settings.py | 23 ++++++++++++++++++- .../views/app_theme_config_settings_views.xml | 6 +++-- 3 files changed, 27 insertions(+), 4 deletions(-) diff --git a/app_odoo_customize/__manifest__.py b/app_odoo_customize/__manifest__.py index 614eaf5d..7f226502 100644 --- a/app_odoo_customize/__manifest__.py +++ b/app_odoo_customize/__manifest__.py @@ -23,7 +23,7 @@ { 'name': 'odoo 14,13 Customize OEM(Boost, Data reset)', - 'version': '13.20.11.10', + 'version': '13.21.03.31', 'author': 'Sunpop.cn', 'category': 'Productivity', 'website': 'https://www.sunpop.cn', diff --git a/app_odoo_customize/models/res_config_settings.py b/app_odoo_customize/models/res_config_settings.py index 30183061..49b14c09 100644 --- a/app_odoo_customize/models/res_config_settings.py +++ b/app_odoo_customize/models/res_config_settings.py @@ -364,9 +364,18 @@ class ResConfigSettings(models.TransientModel): sql2 = "update account_journal set bank_account_id=NULL where company_id=%d;" % company_id self._cr.execute(sql) self._cr.execute(sql2) + self._cr.commit() except Exception as e: _logger.error('remove data error: %s,%s', 'account_chart: set tax and account_journal', e) + + # 增加对 pos的处理 + if self.env['ir.model']._get('pos.config'): + self.env['pos.config'].write({ + 'journal_id': False, + }) + # todo: 以下处理参考 res.partner的合并,将所有m2o的都一次处理,不需要次次找模型 + # partner 处理 try: rec = self.env['res.partner'].search([]) for r in rec: @@ -376,6 +385,7 @@ class ResConfigSettings(models.TransientModel): }) except Exception as e: _logger.error('remove data error: %s,%s', 'account_chart', e) + # 品类处理 try: rec = self.env['product.category'].search([]) for r in rec: @@ -388,7 +398,18 @@ class ResConfigSettings(models.TransientModel): 'property_stock_valuation_account_id': None, }) except Exception as e: - pass # raise Warning(e) + pass + # 产品处理 + try: + rec = self.env['product.template'].search([]) + for r in rec: + r.write({ + 'property_account_income_id': None, + 'property_account_expense_id': None, + }) + except Exception as e: + pass + # 库存计价处理 try: rec = self.env['stock.location'].search([]) for r in rec: diff --git a/app_odoo_customize/views/app_theme_config_settings_views.xml b/app_odoo_customize/views/app_theme_config_settings_views.xml index 89a5cb7d..7b3a7c1b 100644 --- a/app_odoo_customize/views/app_theme_config_settings_views.xml +++ b/app_odoo_customize/views/app_theme_config_settings_views.xml @@ -143,8 +143,10 @@ confirm="Please confirm to delete the select data?" class="oe_highlight"/>
- Accounting - + + Accounting + +