Fall 771: allinonept Umgebung aufsetzen
parent
408c64df44
commit
0d68232293
|
|
@ -49,11 +49,9 @@
|
|||
'wizards/wizard_confirm_print_invoice.xml',
|
||||
'security/security.xml',
|
||||
'data/dp_custom_data.xml',
|
||||
'data/glaser_company_data.xml',
|
||||
'data/tz_austria_company_data.xml',
|
||||
'data/product_data.xml',
|
||||
'data/tz_tax_data.xml',
|
||||
'data/glaser_tax_data.xml',
|
||||
'data/cron_job.xml',
|
||||
'views/dp_custom_views.xml',
|
||||
'views/res_line_views.xml',
|
||||
|
|
|
|||
|
|
@ -14,17 +14,4 @@
|
|||
</field>
|
||||
</record>
|
||||
|
||||
<record id="cron_export_portal_prices_glaser" forcecreate='True' model="ir.cron">
|
||||
<field name="name">Export Portal Prices Glaser</field>
|
||||
<field eval="False" name="active"/>
|
||||
<field name="nextcall" eval="DateTime(2017,1,1,1,0,0)" />
|
||||
<field name="user_id" ref="dp_custom.glaser_admin_user"/>
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="model_id" ref="base.model_res_partner"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.cron_export_portal_prices()
|
||||
</field>
|
||||
</record>
|
||||
</odoo>
|
||||
|
|
|
|||
|
|
@ -18,12 +18,6 @@
|
|||
(4,ref('dp_custom.group_allow_delete_so_attachments'))]"/>
|
||||
</record>
|
||||
|
||||
<record id="base.main_company" model="res.company">
|
||||
<field name="admin_user_id" eval="ref('tz_admin_user')"/>
|
||||
<field name="inter_company_supplier_id" eval="ref('dp_custom.glaser_and_co_company')"/>
|
||||
<field name="percentage_billing">70.00</field>
|
||||
</record>
|
||||
|
||||
<function id="set_company_customer" model="res.company" name="set_company_customer">
|
||||
<value eval="[ref('base.main_company')]"/>
|
||||
</function>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,20 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
##############################################################################
|
||||
#
|
||||
# datenpol gmbh
|
||||
# Copyright (C) 2013-TODAY datenpol gmbh (<http://www.datenpol.at/>)
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 of the
|
||||
# License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
##############################################################################
|
||||
#
|
||||
# datenpol gmbh
|
||||
# Copyright (C) 2013-TODAY datenpol gmbh (<http://www.datenpol.at/>)
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 of the
|
||||
# License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
|
||||
# noinspection PyStatementEffect
|
||||
{
|
||||
'name': 'Unternehmen Glaser Daten',
|
||||
'category': 'Custom',
|
||||
'version': '11.0.1.0.0',
|
||||
'description': """Fügt alle Daten für das Unternehmen Glaser & Co hinzu""",
|
||||
'author': 'datenpol gmbh',
|
||||
'website': 'http://www.datenpol.at/',
|
||||
'depends': [
|
||||
'base',
|
||||
'account',
|
||||
'sale_stock',
|
||||
'queue_job',
|
||||
'website',
|
||||
'dp_custom'
|
||||
],
|
||||
'data': [
|
||||
'data/glaser_company_data.xml',
|
||||
'data/glaser_tax_data.xml',
|
||||
'data/cron_job.xml',
|
||||
],
|
||||
'installable': True,
|
||||
'auto_install': False,
|
||||
}
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<odoo noupdate="1">
|
||||
|
||||
<record id="dp_custom.cron_export_portal_prices_glaser" forcecreate='True' model="ir.cron">
|
||||
<field name="name">Export Portal Prices Glaser</field>
|
||||
<field eval="False" name="active"/>
|
||||
<field name="nextcall" eval="DateTime(2017,1,1,1,0,0)" />
|
||||
<field name="user_id" ref="dp_custom.glaser_admin_user"/>
|
||||
<field name="interval_number">1</field>
|
||||
<field name="interval_type">days</field>
|
||||
<field name="numbercall">-1</field>
|
||||
<field name="model_id" ref="base.model_res_partner"/>
|
||||
<field name="state">code</field>
|
||||
<field name="code">model.cron_export_portal_prices()
|
||||
</field>
|
||||
</record>
|
||||
</odoo>
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo noupdate="1">
|
||||
<record id="glaser_and_co_company" model="res.company">
|
||||
<record id="dp_custom.glaser_and_co_company" model="res.company">
|
||||
<field name="name">Glaser & Co.</field>
|
||||
<field name="street">Neugasse 36</field>
|
||||
<field name="city">Spannberg</field>
|
||||
|
|
@ -15,21 +15,21 @@
|
|||
<field name="vat_check_vies" eval="False"/>
|
||||
</record>
|
||||
|
||||
<function id="set_company_supplier" model="res.company" name="set_company_supplier">
|
||||
<value eval="[ref('glaser_and_co_company')]"/>
|
||||
<function id="dp_custom.set_company_supplier" model="res.company" name="set_company_supplier">
|
||||
<value eval="[ref('dp_custom.glaser_and_co_company')]"/>
|
||||
</function>
|
||||
|
||||
<function id="set_company_logo" model="res.company" name="set_company_logo">
|
||||
<value eval="[ref('glaser_and_co_company')]"/>
|
||||
<function id="dp_custom.set_company_logo" model="res.company" name="set_company_logo">
|
||||
<value eval="[ref('dp_custom.glaser_and_co_company')]"/>
|
||||
<value>../static/src/img/logo_glaser.png</value>
|
||||
</function>
|
||||
|
||||
<record id="glaser_admin_user" model="res.users">
|
||||
<record id="dp_custom.glaser_admin_user" model="res.users">
|
||||
<field name="lastname">Glaser & Co. ADMIN</field>
|
||||
<field name="login">glaser-admin</field>
|
||||
<field name="email">admin@glaser.at</field>
|
||||
<field name="company_id" eval="ref('glaser_and_co_company')"/>
|
||||
<field name="company_ids" eval="[(6, 0, [ref('glaser_and_co_company')])]"/>
|
||||
<field name="company_id" eval="ref('dp_custom.glaser_and_co_company')"/>
|
||||
<field name="company_ids" eval="[(6, 0, [ref('dp_custom.glaser_and_co_company')])]"/>
|
||||
<field name="groups_id"
|
||||
eval="[(4,ref('account.group_account_manager')),
|
||||
(4,ref('sales_team.group_sale_manager')),
|
||||
|
|
@ -42,15 +42,21 @@
|
|||
(4,ref('dp_custom.group_allow_delete_so_attachments'))]"/>
|
||||
</record>
|
||||
|
||||
<record id="glaser_and_co_company" model="res.company">
|
||||
<field name="admin_user_id" eval="ref('glaser_admin_user')"/>
|
||||
<record id="dp_custom.glaser_and_co_company" model="res.company">
|
||||
<field name="admin_user_id" eval="ref('dp_custom.glaser_admin_user')"/>
|
||||
</record>
|
||||
|
||||
<record id="base.main_company" model="res.company">
|
||||
<field name="admin_user_id" eval="ref('dp_custom.tz_admin_user')"/>
|
||||
<field name="inter_company_supplier_id" eval="ref('dp_custom.glaser_and_co_company')"/>
|
||||
<field name="percentage_billing">70.00</field>
|
||||
</record>
|
||||
|
||||
<!--<function-->
|
||||
<!--id="set_company_favicon"-->
|
||||
<!--id="dp_custom.set_company_favicon"-->
|
||||
<!--model="res.company"-->
|
||||
<!--name="set_company_favicon"-->
|
||||
<!--eval="[ref('glaser_and_co_company')]">-->
|
||||
<!--eval="[ref('dp_custom.glaser_and_co_company')]">-->
|
||||
<!--<value>../static/src/img/favicon_glaser.png</value>-->
|
||||
<!--</function>-->
|
||||
|
||||
|
|
@ -1,80 +1,80 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo noupdate="1">
|
||||
|
||||
<record id="glaser_account_tax_20_mwst" model="account.tax">
|
||||
<record id="dp_custom.glaser_account_tax_20_mwst" model="account.tax">
|
||||
<field name="name">20% MwSt.</field>
|
||||
<field name="description">20% MwSt.</field>
|
||||
<field name="type_tax_use">sale</field>
|
||||
<field name="amount_type">percent</field>
|
||||
<field name="amount">20</field>
|
||||
<field name="bmd_tax_code">1</field>
|
||||
<field name="company_id" eval="ref('glaser_and_co_company')"/>
|
||||
<field name="company_id" eval="ref('dp_custom.glaser_and_co_company')"/>
|
||||
</record>
|
||||
|
||||
<record id="glaser_account_tax_10_mwst" model="account.tax">
|
||||
<record id="dp_custom.glaser_account_tax_10_mwst" model="account.tax">
|
||||
<field name="name">10% MwSt.</field>
|
||||
<field name="description">10% MwSt.</field>
|
||||
<field name="type_tax_use">sale</field>
|
||||
<field name="amount_type">percent</field>
|
||||
<field name="amount">10</field>
|
||||
<field name="bmd_tax_code">1</field>
|
||||
<field name="company_id" eval="ref('glaser_and_co_company')"/>
|
||||
<field name="company_id" eval="ref('dp_custom.glaser_and_co_company')"/>
|
||||
</record>
|
||||
|
||||
<record id="glaser_account_tax_0_mwst" model="account.tax">
|
||||
<record id="dp_custom.glaser_account_tax_0_mwst" model="account.tax">
|
||||
<field name="name">0% MwSt.</field>
|
||||
<field name="description">0% MwSt.</field>
|
||||
<field name="type_tax_use">sale</field>
|
||||
<field name="amount_type">percent</field>
|
||||
<field name="amount">0</field>
|
||||
<field name="bmd_tax_code">1</field>
|
||||
<field name="company_id" eval="ref('glaser_and_co_company')"/>
|
||||
<field name="company_id" eval="ref('dp_custom.glaser_and_co_company')"/>
|
||||
</record>
|
||||
|
||||
<record id="glaser_account_tax_0_reverse_charge" model="account.tax">
|
||||
<record id="dp_custom.glaser_account_tax_0_reverse_charge" model="account.tax">
|
||||
<field name="name">0% Reverse Charge</field>
|
||||
<field name="description">0% Rev. Chg.</field>
|
||||
<field name="type_tax_use">sale</field>
|
||||
<field name="amount_type">percent</field>
|
||||
<field name="amount">0</field>
|
||||
<field name="bmd_tax_code">7</field>
|
||||
<field name="company_id" eval="ref('glaser_and_co_company')"/>
|
||||
<field name="company_id" eval="ref('dp_custom.glaser_and_co_company')"/>
|
||||
</record>
|
||||
|
||||
<record id="glaser_account_tax_0_drittland" model="account.tax">
|
||||
<record id="dp_custom.glaser_account_tax_0_drittland" model="account.tax">
|
||||
<field name="name">0% Drittland</field>
|
||||
<field name="description">0% Drittland</field>
|
||||
<field name="type_tax_use">sale</field>
|
||||
<field name="amount_type">percent</field>
|
||||
<field name="amount">0</field>
|
||||
<field name="bmd_tax_code">5</field>
|
||||
<field name="company_id" eval="ref('glaser_and_co_company')"/>
|
||||
<field name="company_id" eval="ref('dp_custom.glaser_and_co_company')"/>
|
||||
</record>
|
||||
|
||||
<record id="glaser_account_fiscal_position_ig_ausland" model="account.fiscal.position">
|
||||
<record id="dp_custom.glaser_account_fiscal_position_ig_ausland" model="account.fiscal.position">
|
||||
<field name="name">IG-Ausland</field>
|
||||
<field name="note">Übergang der Steuerschuld auf den Leistungsempfänger gem § 19 Abs 1
|
||||
UStG
|
||||
</field>
|
||||
<field name="company_id" eval="ref('glaser_and_co_company')"/>
|
||||
<field name="company_id" eval="ref('dp_custom.glaser_and_co_company')"/>
|
||||
</record>
|
||||
|
||||
<record id="glaser_account_fiscal_position_tax_ig_ausland" model="account.fiscal.position.tax">
|
||||
<record id="dp_custom.glaser_account_fiscal_position_tax_ig_ausland" model="account.fiscal.position.tax">
|
||||
<field name="tax_src_id" search="[('name','=','20% MwSt.')]"/>
|
||||
<field name="tax_dest_id" search="[('name','=','0% Reverse Charge')]"/>
|
||||
<field name="position_id" ref="glaser_account_fiscal_position_ig_ausland"/>
|
||||
<field name="position_id" ref="dp_custom.glaser_account_fiscal_position_ig_ausland"/>
|
||||
</record>
|
||||
|
||||
<record id="glaser_account_fiscal_position_drittland" model="account.fiscal.position">
|
||||
<record id="dp_custom.glaser_account_fiscal_position_drittland" model="account.fiscal.position">
|
||||
<field name="name">Drittland</field>
|
||||
<field name="note"/>
|
||||
<field name="company_id" eval="ref('glaser_and_co_company')"/>
|
||||
<field name="company_id" eval="ref('dp_custom.glaser_and_co_company')"/>
|
||||
</record>
|
||||
|
||||
<record id="glaser_account_fiscal_position_tax_drittland" model="account.fiscal.position.tax">
|
||||
<record id="dp_custom.glaser_account_fiscal_position_tax_drittland" model="account.fiscal.position.tax">
|
||||
<field name="tax_src_id" search="[('name','=','20% MwSt.')]"/>
|
||||
<field name="tax_dest_id" search="[('name','=','0% Drittland')]"/>
|
||||
<field name="position_id" ref="glaser_account_fiscal_position_drittland"/>
|
||||
<field name="position_id" ref="dp_custom.glaser_account_fiscal_position_drittland"/>
|
||||
</record>
|
||||
|
||||
</odoo>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 2.2 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 329 B |
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
|
|
@ -126,6 +126,7 @@ def main():
|
|||
'set_company',
|
||||
'enable_res_config_for_company', # muss bei multicompany ausgefuehrt werden
|
||||
'set_multicompany_data', # set_multicompany_data
|
||||
'set_multicompany_admin_user',
|
||||
'set_uom',
|
||||
'set_taxes',
|
||||
'set_fiscal_position',
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ class Config(object):
|
|||
|
||||
self.settings = {
|
||||
# Einstellungen Allgemein
|
||||
'auth_signup_reset_passwort': True,
|
||||
# 'auth_signup_reset_passwort': True,
|
||||
'group_multi_company': True,
|
||||
|
||||
# Einstellungen Verkauf
|
||||
|
|
@ -92,6 +92,8 @@ class Config(object):
|
|||
'module_mrp_byproduct': False,
|
||||
'use_manufacturing_lead': False,
|
||||
'manufacturing_lead': 0,
|
||||
|
||||
'external_report_layout': 'custom'
|
||||
}
|
||||
|
||||
self.removal_strategy = 'fifo' # [fifo], [lifo], [fefo]
|
||||
|
|
@ -127,7 +129,6 @@ class Config(object):
|
|||
'dp_reports_account',
|
||||
'dp_reports_purchase',
|
||||
'dp_reports_stock',
|
||||
# 'dp_reports_stock',
|
||||
'account_cancel',
|
||||
'stock',
|
||||
'dp_changelogs',
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ class ConfigAllInOnePT(Config):
|
|||
def __init__(self):
|
||||
super(ConfigAllInOnePT, self).__init__()
|
||||
|
||||
self.company_xmlid = 'dp_custom.glaser_and_co_company'
|
||||
self.company_xmlid = 'base.main_company'
|
||||
|
||||
self.company_data = {
|
||||
'name': 'TZ Technik Solution GesmbH',
|
||||
|
|
@ -18,7 +18,7 @@ class ConfigAllInOnePT(Config):
|
|||
'phone': False,
|
||||
'email': False,
|
||||
'website': False,
|
||||
'company_registry': False,
|
||||
'company_registry': '405457k',
|
||||
'country_id': 'at', # 'de' für Deutschland
|
||||
'vat': False,
|
||||
'vat_check_vies': True,
|
||||
|
|
@ -27,6 +27,15 @@ class ConfigAllInOnePT(Config):
|
|||
# 'favicon_backend_mimetype': 'image/x-icon'
|
||||
}
|
||||
|
||||
self.multi_company_admin = {
|
||||
'id': "ref('dp_custom.tz_admin_user')",
|
||||
'lastname': 'TZ Technik ADMIN',
|
||||
'login': 'tz-admin',
|
||||
'company_id': "ref('base.main_company')",
|
||||
'company_ids': ["ref('base.main_company')"],
|
||||
'email': 'admin@tz-austria.at'
|
||||
}
|
||||
|
||||
# Nur für Lager
|
||||
# Wenn nicht gesetzt, dann wird der Firmenname genommen
|
||||
self.warehouse_name = 'TZ Technik'
|
||||
|
|
@ -83,9 +92,40 @@ class ConfigAllInOnePT(Config):
|
|||
# },
|
||||
}
|
||||
|
||||
self.multi_company_settings = {
|
||||
'chart_template_id': ('xmlid', 'l10n_at.austria_chart_template')
|
||||
}
|
||||
self.modules.extend([
|
||||
'mrp',
|
||||
'hr',
|
||||
'board',
|
||||
'mass_mailing'
|
||||
'crm',
|
||||
'crm_project',
|
||||
'crm_livechat',
|
||||
'sale_crm',
|
||||
'wk_debrand_odoo',
|
||||
'mobikul'
|
||||
])
|
||||
|
||||
self.modules.extend([
|
||||
'mrp',
|
||||
'hr',
|
||||
'board',
|
||||
'mass_mailing'
|
||||
'crm',
|
||||
'crm_project',
|
||||
'crm_livechat',
|
||||
'sale_crm',
|
||||
'wk_debrand_odoo',
|
||||
'mobikul'
|
||||
])
|
||||
|
||||
self.multi_website_modules.extend([
|
||||
'website_customer_group',
|
||||
'website_blog',
|
||||
'website_crm',
|
||||
'website_mass_mailing',
|
||||
'website_hr',
|
||||
])
|
||||
|
||||
|
||||
self.websites = [
|
||||
{
|
||||
|
|
|
|||
|
|
@ -42,6 +42,7 @@ ENVIRONMENTS = {
|
|||
'br-glaser' : Environment('http://localhost', '8080', 'tz-austria_1', 'glaser-admin', 'x', 'admin', config = ConfigGlaser()),
|
||||
|
||||
'aa' : Environment('http://localhost', '8080', 'tz-austria_1', 'admin', 'x', 'admin', config = ConfigTZA()),
|
||||
'aa-allinonept': Environment('http://localhost', '8080', 'tz-austria_allinonept', 'admin', 'x', 'admin', config = ConfigAllInOnePT()),
|
||||
'aa-tz' : Environment('http://localhost', '8080', 'tz-austria_1', 'tz-admin', 'x', 'admin', config = ConfigTZA()),
|
||||
'aa-glaser' : Environment('http://localhost', '8080', 'tz-austria_1', 'glaser-admin', 'x', 'admin', config = ConfigGlaser()),
|
||||
|
||||
|
|
|
|||
|
|
@ -155,7 +155,6 @@ class DatenpolFunctions(object):
|
|||
def enable_res_config_for_company(self):
|
||||
"""Setze beim portal_template_user die Company als zulässiges Unternehmen"""
|
||||
portal_template_user = self.odoo.env.ref('auth_signup.default_template_user')
|
||||
vals = {}
|
||||
companies = self.odoo.env['res.company'].search([])
|
||||
vals_company = []
|
||||
for company in companies:
|
||||
|
|
@ -183,6 +182,36 @@ class DatenpolFunctions(object):
|
|||
return res_settings.browse(wizard_id).execute()
|
||||
return True
|
||||
|
||||
def set_multicompany_admin_user(self):
|
||||
"""Multicompany User erstellen oder """
|
||||
admin_user_data = self.config.multi_company_admin
|
||||
if not admin_user_data:
|
||||
return True
|
||||
user_obj = self.odoo.env['res.users']
|
||||
for key, value in admin_user_data.items():
|
||||
if type(value) is str:
|
||||
if value.startswith("ref('") and value.endswith("')"):
|
||||
xml_id = value.replace("ref('", "").replace("')", "")
|
||||
admin_user_data[key] = self.odoo.env.ref(xml_id).id
|
||||
if type(value) is list:
|
||||
for idx, rec in enumerate(value):
|
||||
if rec.startswith("ref('") and rec.endswith("')"):
|
||||
xml_id = rec.replace("ref('", "").replace("')", "")
|
||||
admin_user_data[key][idx] = self.odoo.env.ref(xml_id).id
|
||||
|
||||
if admin_user_data.get('id'):
|
||||
user_id = admin_user_data['id']
|
||||
del admin_user_data['id']
|
||||
user_obj.browse(user_id).write(admin_user_data)
|
||||
else:
|
||||
if 'id' in admin_user_data.keys():
|
||||
del admin_user_data['id']
|
||||
vals = user_obj.default_get([])
|
||||
vals.update(admin_user_data)
|
||||
user_obj.create(vals)
|
||||
|
||||
return True
|
||||
|
||||
def load_languages(self):
|
||||
"""Lade zusätzliche Sprachen"""
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue