Fall 4448: Multi Company
parent
f96665f3c6
commit
1752eebd03
|
|
@ -34,6 +34,8 @@
|
|||
],
|
||||
'data': [
|
||||
'data/dp_custom_data.xml',
|
||||
'data/glaser_company_data.xml',
|
||||
'data/tz_austria_company_data.xml',
|
||||
'views/dp_custom_views.xml',
|
||||
'security/ir.model.access.csv',
|
||||
],
|
||||
|
|
|
|||
|
|
@ -0,0 +1,45 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo noupdate="0">
|
||||
<record id="glaser_and_co_company" model="res.company">
|
||||
<field name="name">Glaser & Co.</field>
|
||||
<field name="street">Neugasse 36</field>
|
||||
<field name="city">Spannberg</field>
|
||||
<field name="zip">2244</field>
|
||||
<field name="phone">+43 (0)2538/8628-0</field>
|
||||
<field name="fax">+43 (0)2538/8628-400</field>
|
||||
<field name="email">office@glaser-co.at</field>
|
||||
<field name="website">https://www.glaser-co.at</field>
|
||||
<field name="company_registry">FN 61793 y</field>
|
||||
<field name="country_id" search="[('code','=','AT')]"/>
|
||||
<field name="vat">ATU17860303</field>
|
||||
<field name="vat_check_vies" eval="False"/>
|
||||
</record>
|
||||
|
||||
<function id="set_company_logo" model="res.company" name="set_company_logo">
|
||||
<value eval="[ref('glaser_and_co_company')]"/>
|
||||
<value>../static/src/img/logo_glaser.png</value>
|
||||
</function>
|
||||
|
||||
<record id="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="groups_id"
|
||||
eval="[(4,ref('account.group_account_manager')),
|
||||
(4,ref('sales_team.group_sale_manager')),
|
||||
(4,ref('stock.group_stock_manager')),
|
||||
(4,ref('base.group_system')),
|
||||
(4,ref('base.group_partner_manager'))]"/>
|
||||
</record>
|
||||
|
||||
<!--<function-->
|
||||
<!--id="set_company_favicon"-->
|
||||
<!--model="res.company"-->
|
||||
<!--name="set_company_favicon"-->
|
||||
<!--eval="[ref('glaser_and_co_company')]">-->
|
||||
<!--<value>../static/src/img/favicon_glaser.png</value>-->
|
||||
<!--</function>-->
|
||||
|
||||
</odoo>
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo noupdate="0">
|
||||
<record id="tz_admin_user" model="res.users">
|
||||
<field name="lastname">TZ Tischlerzentrum ADMIN</field>
|
||||
<field name="login">tz-admin</field>
|
||||
<field name="company_id" eval="ref('base.main_company')"/>
|
||||
<field name="company_ids" eval="[(6, 0, [ref('base.main_company')])]"/>
|
||||
<field name="email">admin@tz-austria.at</field>
|
||||
<field name="groups_id"
|
||||
eval="[(4,ref('account.group_account_manager')),
|
||||
(4,ref('sales_team.group_sale_manager')),
|
||||
(4,ref('stock.group_stock_manager')),
|
||||
(4,ref('base.group_system')),
|
||||
(4,ref('base.group_partner_manager'))]"/>
|
||||
</record>
|
||||
|
||||
</odoo>
|
||||
|
|
@ -21,3 +21,4 @@
|
|||
|
||||
from . import ir_ui_menu
|
||||
from . import res_partner
|
||||
from . import res_company
|
||||
|
|
|
|||
|
|
@ -19,9 +19,7 @@
|
|||
#
|
||||
##############################################################################
|
||||
|
||||
from odoo import models
|
||||
from odoo import api
|
||||
from odoo import tools
|
||||
from odoo import models, api, tools
|
||||
|
||||
DISABLED_MENUS = [
|
||||
]
|
||||
|
|
|
|||
|
|
@ -0,0 +1,47 @@
|
|||
# -*- 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/>.
|
||||
#
|
||||
##############################################################################
|
||||
import os
|
||||
import base64
|
||||
|
||||
from odoo import fields, models, api
|
||||
|
||||
|
||||
class Company(models.Model):
|
||||
_inherit = 'res.company'
|
||||
|
||||
@api.model
|
||||
def set_company_logo(self, company, logo):
|
||||
filename = os.path.join(os.path.dirname(os.path.realpath(__file__)), logo)
|
||||
fi = open(filename, 'rb')
|
||||
content = base64.b64encode(fi.read())
|
||||
content = content.decode()
|
||||
fi.close()
|
||||
self.browse(company).write({'logo': content})
|
||||
|
||||
@api.model
|
||||
def set_company_favicon(self, company, logo):
|
||||
filename = os.path.join(os.path.dirname(os.path.realpath(__file__)), logo)
|
||||
fi = open(filename, 'rb')
|
||||
content = base64.b64encode(fi.read())
|
||||
content = content.decode()
|
||||
fi.close()
|
||||
self.browse(company).write(
|
||||
{'favicon_backend': content, 'favicon_backend_mimetype': 'image/x-icon'})
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 329 B |
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
|
|
@ -119,6 +119,7 @@ def main():
|
|||
#'default_set_order_policy',
|
||||
'update_values',
|
||||
#'update_special_values',
|
||||
'set_password_for_admin_users',
|
||||
'set_sys_params',
|
||||
#'setup_reports',
|
||||
'consume_tours',
|
||||
|
|
|
|||
|
|
@ -198,7 +198,6 @@ class Config():
|
|||
# 'dp_reports_stock',
|
||||
'account_cancel',
|
||||
'stock',
|
||||
'partner_firstname',
|
||||
'dp_changelogs'
|
||||
]
|
||||
|
||||
|
|
|
|||
|
|
@ -90,8 +90,7 @@ class DatenpolFunctions:
|
|||
vals['favicon_backend'] = self._readAndReturnFile(vals['favicon_backend'], encode='base64')
|
||||
|
||||
vals['country_id'] = country_id
|
||||
c_ids = self.odoo.env['res.company'].search([])
|
||||
return self.odoo.env['res.company'].write(c_ids, vals)
|
||||
return self.odoo.env.ref('base.main_company').write(vals)
|
||||
|
||||
def set_taxes(self):
|
||||
"""Setze nicht benötigte Steuern auf inaktiv"""
|
||||
|
|
@ -562,6 +561,18 @@ class DatenpolFunctions:
|
|||
"""Spezialwerte setzen"""
|
||||
return True
|
||||
|
||||
def set_password_for_admin_users(self):
|
||||
"""Passwort für admin Users setzen"""
|
||||
user_ids = self.odoo.env['res.users'].search([('login', 'ilike', 'admin'), ('id', '!=', 1)])
|
||||
wizard_id = self.odoo.env['change.password.wizard'].create({})
|
||||
change_ids = []
|
||||
for user_id in user_ids:
|
||||
change_id = self.odoo.env['change.password.user'].create(
|
||||
{'wizard_id': wizard_id, 'user_id': user_id, 'new_passwd': self.env.pwd})
|
||||
change_ids.append(change_id)
|
||||
self.odoo.env['change.password.user'].browse(change_ids).change_password_button()
|
||||
return True
|
||||
|
||||
def update_values(self):
|
||||
"""Existierende Daten aktualisieren"""
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue