diff --git a/ext/custom-addons/dp_custom/__manifest__.py b/ext/custom-addons/dp_custom/__manifest__.py
index 00ce1b1c..dfe1a2f9 100644
--- a/ext/custom-addons/dp_custom/__manifest__.py
+++ b/ext/custom-addons/dp_custom/__manifest__.py
@@ -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',
diff --git a/ext/custom-addons/dp_custom/data/cron_job.xml b/ext/custom-addons/dp_custom/data/cron_job.xml
index 9b39351e..aa324976 100644
--- a/ext/custom-addons/dp_custom/data/cron_job.xml
+++ b/ext/custom-addons/dp_custom/data/cron_job.xml
@@ -14,17 +14,4 @@
-
- Export Portal Prices Glaser
-
-
-
- 1
- days
- -1
-
- code
- model.cron_export_portal_prices()
-
-
diff --git a/ext/custom-addons/dp_custom/data/tz_austria_company_data.xml b/ext/custom-addons/dp_custom/data/tz_austria_company_data.xml
index 4da4b591..b1f1adcb 100644
--- a/ext/custom-addons/dp_custom/data/tz_austria_company_data.xml
+++ b/ext/custom-addons/dp_custom/data/tz_austria_company_data.xml
@@ -18,12 +18,6 @@
(4,ref('dp_custom.group_allow_delete_so_attachments'))]"/>
-
-
-
- 70.00
-
-
diff --git a/ext/custom-addons/dp_glaser_company/__init__.py b/ext/custom-addons/dp_glaser_company/__init__.py
new file mode 100644
index 00000000..aa7ed683
--- /dev/null
+++ b/ext/custom-addons/dp_glaser_company/__init__.py
@@ -0,0 +1,20 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+# datenpol gmbh
+# Copyright (C) 2013-TODAY datenpol gmbh ()
+#
+# 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 .
+#
+##############################################################################
diff --git a/ext/custom-addons/dp_glaser_company/__manifest__.py b/ext/custom-addons/dp_glaser_company/__manifest__.py
new file mode 100644
index 00000000..43cbc71e
--- /dev/null
+++ b/ext/custom-addons/dp_glaser_company/__manifest__.py
@@ -0,0 +1,46 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+# datenpol gmbh
+# Copyright (C) 2013-TODAY datenpol gmbh ()
+#
+# 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 .
+#
+##############################################################################
+
+
+# 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,
+}
diff --git a/ext/custom-addons/dp_glaser_company/data/cron_job.xml b/ext/custom-addons/dp_glaser_company/data/cron_job.xml
new file mode 100644
index 00000000..c1cadd2b
--- /dev/null
+++ b/ext/custom-addons/dp_glaser_company/data/cron_job.xml
@@ -0,0 +1,17 @@
+
+
+
+
+ Export Portal Prices Glaser
+
+
+
+ 1
+ days
+ -1
+
+ code
+ model.cron_export_portal_prices()
+
+
+
diff --git a/ext/custom-addons/dp_custom/data/glaser_company_data.xml b/ext/custom-addons/dp_glaser_company/data/glaser_company_data.xml
similarity index 59%
rename from ext/custom-addons/dp_custom/data/glaser_company_data.xml
rename to ext/custom-addons/dp_glaser_company/data/glaser_company_data.xml
index b5d12075..48d8bb3c 100644
--- a/ext/custom-addons/dp_custom/data/glaser_company_data.xml
+++ b/ext/custom-addons/dp_glaser_company/data/glaser_company_data.xml
@@ -1,6 +1,6 @@
-
+
Glaser & Co.
Neugasse 36
Spannberg
@@ -15,21 +15,21 @@
-
-
+
+
-
-
+
+
../static/src/img/logo_glaser.png
-
+
Glaser & Co. ADMIN
glaser-admin
admin@glaser.at
-
-
+
+
-
-
+
+
+
+
+
+
+
+ 70.00
-
+
-
+
diff --git a/ext/custom-addons/dp_custom/data/glaser_tax_data.xml b/ext/custom-addons/dp_glaser_company/data/glaser_tax_data.xml
similarity index 58%
rename from ext/custom-addons/dp_custom/data/glaser_tax_data.xml
rename to ext/custom-addons/dp_glaser_company/data/glaser_tax_data.xml
index 033a73be..dc99fc94 100644
--- a/ext/custom-addons/dp_custom/data/glaser_tax_data.xml
+++ b/ext/custom-addons/dp_glaser_company/data/glaser_tax_data.xml
@@ -1,80 +1,80 @@
-
+
20% MwSt.
20% MwSt.
sale
percent
20
1
-
+
-
+
10% MwSt.
10% MwSt.
sale
percent
10
1
-
+
-
+
0% MwSt.
0% MwSt.
sale
percent
0
1
-
+
-
+
0% Reverse Charge
0% Rev. Chg.
sale
percent
0
7
-
+
-
+
0% Drittland
0% Drittland
sale
percent
0
5
-
+
-
+
IG-Ausland
Übergang der Steuerschuld auf den Leistungsempfänger gem § 19 Abs 1
UStG
-
+
-
+
-
+
-
+
Drittland
-
+
-
+
-
+
diff --git a/ext/custom-addons/dp_glaser_company/static/description/icon.png b/ext/custom-addons/dp_glaser_company/static/description/icon.png
new file mode 100644
index 00000000..8387d765
Binary files /dev/null and b/ext/custom-addons/dp_glaser_company/static/description/icon.png differ
diff --git a/ext/custom-addons/dp_glaser_company/static/src/img/glaser_favicon.png b/ext/custom-addons/dp_glaser_company/static/src/img/glaser_favicon.png
new file mode 100644
index 00000000..75584135
Binary files /dev/null and b/ext/custom-addons/dp_glaser_company/static/src/img/glaser_favicon.png differ
diff --git a/ext/custom-addons/dp_glaser_company/static/src/img/logo_glaser.png b/ext/custom-addons/dp_glaser_company/static/src/img/logo_glaser.png
new file mode 100644
index 00000000..3534e24d
Binary files /dev/null and b/ext/custom-addons/dp_glaser_company/static/src/img/logo_glaser.png differ
diff --git a/setup/lib/cli.py b/setup/lib/cli.py
index d374592b..7682aad6 100755
--- a/setup/lib/cli.py
+++ b/setup/lib/cli.py
@@ -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',
diff --git a/setup/lib/config.py b/setup/lib/config.py
index 41ed72cc..fedb249a 100644
--- a/setup/lib/config.py
+++ b/setup/lib/config.py
@@ -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',
diff --git a/setup/lib/config_allinonept.py b/setup/lib/config_allinonept.py
index e76a3f62..21548e55 100644
--- a/setup/lib/config_allinonept.py
+++ b/setup/lib/config_allinonept.py
@@ -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 = [
{
diff --git a/setup/lib/environments.py b/setup/lib/environments.py
index 86f641a0..4dbae16a 100644
--- a/setup/lib/environments.py
+++ b/setup/lib/environments.py
@@ -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()),
diff --git a/setup/lib/functions.py b/setup/lib/functions.py
index 964b6fb0..dff2d9bc 100644
--- a/setup/lib/functions.py
+++ b/setup/lib/functions.py
@@ -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"""