mirror of
https://github.com/guohuadeng/app-odoo.git
synced 2025-02-23 04:11:36 +02:00
chinese opt
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from .hooks import pre_init_hook
|
||||
from .hooks import post_init_hook
|
||||
from . import controllers
|
||||
from . import models
|
||||
from . import ir
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
{
|
||||
'name': "App base chinese,中国化基本模块增强",
|
||||
'version': '11.0.10.31',
|
||||
'version': '11.19.03.04',
|
||||
'author': 'Sunpop.cn',
|
||||
'category': 'Base',
|
||||
'website': 'http://www.sunpop.cn',
|
||||
@@ -34,11 +34,16 @@
|
||||
odoo Chinese Enhance. 中国化增强-基础
|
||||
1. 中文默认值,如国家、时区、货币等。处理模块 base, product.
|
||||
2. 客户加简称,地址显示中文化,客户编码显示优先
|
||||
3. todo:中文演示数据(只有demo模式才加载)
|
||||
3. 客户地址显示增加手机号与电话号码
|
||||
4. 货币处理,增加排序显示
|
||||
5. 修正产品类别的列表及m2o字段中不显示中文目录名的Bug
|
||||
11. todo:中文演示数据(只有demo模式才加载)
|
||||
|
||||
""",
|
||||
'pre_init_hook': 'pre_init_hook',
|
||||
'post_init_hook': 'post_init_hook',
|
||||
'depends': [
|
||||
'base',
|
||||
'product',
|
||||
'l10n_cn'
|
||||
],
|
||||
@@ -46,11 +51,15 @@
|
||||
'data': [
|
||||
'views/res_partner_category_views.xml',
|
||||
'views/res_partner_views.xml',
|
||||
'views/res_currency_views.xml',
|
||||
'views/ir_default_views.xml',
|
||||
'data/ir_default_data.xml',
|
||||
'data/ir_sequence_data.xml',
|
||||
'data/base_data.xml',
|
||||
'data/res_country_data.xml',
|
||||
'data/res_currency_data.xml',
|
||||
'data/product_data.xml',
|
||||
'data/product_pricelist_data.xml',
|
||||
],
|
||||
'demo': [
|
||||
],
|
||||
@@ -64,5 +73,5 @@
|
||||
],
|
||||
'installable': True,
|
||||
'application': True,
|
||||
'auto_install': True,
|
||||
'auto_install': False,
|
||||
}
|
||||
|
||||
@@ -4,27 +4,27 @@
|
||||
<!-- 各种默认值 -->
|
||||
<!--设置客户默认国家为中国-->
|
||||
<record id="res_partner_country_id_default" model="ir.default">
|
||||
<field name="field_id" eval="ref('base.field_res_partner_country_id')"/>
|
||||
<field name="field_id" eval="ref('base.field_res_partner__country_id')"/>
|
||||
<field name="json_value" eval="ref('base.cn')"/>
|
||||
</record>
|
||||
<!--设置客户默认省为广东-->
|
||||
<record id="res_partner_state_id_default" model="ir.default">
|
||||
<field name="field_id" eval="ref('base.field_res_partner_state_id')"/>
|
||||
<field name="field_id" eval="ref('base.field_res_partner__state_id')"/>
|
||||
<field name="json_value" eval="ref('l10n_cn.state_GD')"/>
|
||||
</record>
|
||||
<!--设置默认时区为中国,注意select 类型要加 ""-->
|
||||
<record id="res_partner_tz_default" model="ir.default">
|
||||
<field name="field_id" eval="ref('base.field_res_partner_tz')"/>
|
||||
<field name="field_id" eval="ref('base.field_res_partner__tz')"/>
|
||||
<field name="json_value">"Asia/Shanghai"</field>
|
||||
</record>
|
||||
<!--设置用户email在odoo内提醒-->
|
||||
<record id="res_user_notify_email_default" model="ir.default">
|
||||
<field name="field_id" eval="ref('mail.field_res_users_notification_type')"/>
|
||||
<field name="field_id" eval="ref('mail.field_res_users__notification_type')"/>
|
||||
<field name="json_value">"inbox"</field>
|
||||
</record>
|
||||
<!--设置产品默认是可库存产品-->
|
||||
<record id="product_template_type_default" model="ir.default">
|
||||
<field name="field_id" eval="ref('product.field_product_template_type')"/>
|
||||
<field name="field_id" eval="ref('product.field_product_template__type')"/>
|
||||
<field name="json_value">"product"</field>
|
||||
</record>
|
||||
</data>
|
||||
|
||||
@@ -4,22 +4,11 @@
|
||||
<!--
|
||||
Resource: product.uom.categ
|
||||
-->
|
||||
<record id="product.product_category_all" model="product.category">
|
||||
<field name="name">全部</field>
|
||||
</record>
|
||||
<record id="product.product_category_1" model="product.category">
|
||||
<field name="name">可销售</field>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Resource: product.uom
|
||||
-->
|
||||
<record id="product.product_uom_kgm" model="product.uom">
|
||||
<field name="name">公斤</field>
|
||||
</record>
|
||||
<record id="product.product_uom_ton" model="product.uom">
|
||||
<field name="name">吨</field>
|
||||
</record>
|
||||
|
||||
<!--<record id="product.product_category_all" model="product.category">-->
|
||||
<!--<field name="name">全部</field>-->
|
||||
<!--</record>-->
|
||||
<!--<record id="product.product_category_1" model="product.category">-->
|
||||
<!--<field name="name">可销售</field>-->
|
||||
<!--</record>-->
|
||||
</data>
|
||||
</odoo>
|
||||
|
||||
9
app_base_chinese/data/product_pricelist_data.xml
Normal file
9
app_base_chinese/data/product_pricelist_data.xml
Normal file
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<data noupdate="1">
|
||||
<!-- Price list -->
|
||||
<record id="product.list0" model="product.pricelist">
|
||||
<field name="currency_id" ref="base.CNY"/>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
9
app_base_chinese/data/res_country_data.xml
Normal file
9
app_base_chinese/data/res_country_data.xml
Normal file
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<data noupdate="1">
|
||||
<!-- Country -->
|
||||
<record id="base.cn" model="res.country">
|
||||
<field name="address_format" eval="'%(country_name)s,%(state_name)s%(city)s,%(zip)s\n%(street)s\n%(street2)s'"/>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
@@ -15,13 +15,29 @@
|
||||
# http://www.sunpop.cn/odoo10_developer_document_offline/
|
||||
# description:
|
||||
|
||||
from odoo import api, SUPERUSER_ID
|
||||
from odoo import api, SUPERUSER_ID, _
|
||||
|
||||
def pre_init_hook(cr):
|
||||
"""
|
||||
数据初始化,只在安装时执行,更新时不执行
|
||||
"""
|
||||
pass
|
||||
|
||||
def post_init_hook(cr, registry):
|
||||
"""
|
||||
数据初始化,只在安装后执行,更新时不执行
|
||||
"""
|
||||
try:
|
||||
env = api.Environment(cr, SUPERUSER_ID, {})
|
||||
# oname = env['product.category'].with_context(lang='zh_CN').browse(1).name
|
||||
# if oname:
|
||||
# env['product.category'].with_context(lang='zh_CN').browse(1).write({
|
||||
# 'name': oname + 'sunpop.cn',
|
||||
# })
|
||||
# env['product.category'].with_context(lang='zh_CN').browse(1).write({
|
||||
# 'name': oname,
|
||||
# })
|
||||
env['product.category'].with_context(lang='zh_CN').browse(1)._compute_complete_name()
|
||||
pass
|
||||
except Exception as e:
|
||||
raise Warning(e)
|
||||
|
||||
@@ -4,10 +4,10 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Odoo Server 11.0+e-20180915\n"
|
||||
"Project-Id-Version: Odoo Server 12.0+e-20181122\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2018-11-04 16:22+0000\n"
|
||||
"PO-Revision-Date: 2018-11-04 16:22+0000\n"
|
||||
"POT-Creation-Date: 2018-11-27 17:02+0000\n"
|
||||
"PO-Revision-Date: 2018-11-27 17:02+0000\n"
|
||||
"Last-Translator: <>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
@@ -16,145 +16,82 @@ msgstr ""
|
||||
"Plural-Forms: \n"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
#: model_terms:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
msgid "(edit)"
|
||||
msgstr "(编辑)"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
#: model_terms:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
msgid "Address"
|
||||
msgstr "地址"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_res_partner_view_filter_customer
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
#: model_terms:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
msgid "City"
|
||||
msgstr "城市"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.actions.act_window,help:app_base_chinese.app_action_partner_customer_form
|
||||
#: model:ir.actions.act_window,help:app_base_chinese.app_action_partner_form
|
||||
#: model:ir.actions.act_window,help:app_base_chinese.app_action_partner_supplier_form
|
||||
msgid "Click to add a contact in your address book."
|
||||
msgstr "点击在你的地址簿添加联系人。"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_res_partner_view_filter_customer
|
||||
msgid "Companies"
|
||||
msgstr "公司"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.model,name:app_base_chinese.model_res_partner
|
||||
msgid "Contact"
|
||||
msgstr "联系人"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
#: model_terms:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
msgid "Country"
|
||||
msgstr "国家/地区"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_res_partner_kanban_view
|
||||
#: model_terms:ir.ui.view,arch_db:app_base_chinese.app_res_partner_kanban_view
|
||||
msgid "Credit:"
|
||||
msgstr "授信额度:"
|
||||
msgstr "信用额度"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.actions.act_window,name:app_base_chinese.app_action_partner_customer_form
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_view_partner_customer_tree
|
||||
msgid "Customers"
|
||||
msgstr "客户"
|
||||
#: model:ir.model,name:app_base_chinese.model_res_partner_category
|
||||
msgid "Partner Tags"
|
||||
msgstr "业务伙伴标签"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.actions.act_window,name:app_base_chinese.app_action_partner_employee_form
|
||||
msgid "Employees"
|
||||
msgstr "员工"
|
||||
#: model:ir.model.fields,field_description:app_base_chinese.field_res_partner_category__sequence
|
||||
msgid "Sequence"
|
||||
msgstr "序号"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_res_partner_view_filter_customer
|
||||
msgid "Group By"
|
||||
msgstr "分组"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_res_partner_view_filter_customer
|
||||
msgid "My Partners"
|
||||
msgstr "我的业务伙伴"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.actions.act_window,name:app_base_chinese.app_action_partner_other_form
|
||||
msgid "Other Partners"
|
||||
msgstr "其它业务伙伴"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.actions.act_window,name:app_base_chinese.app_action_partner_form
|
||||
msgid "Partner"
|
||||
msgstr "合作伙伴"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_res_partner_view_filter_customer
|
||||
msgid "Persons"
|
||||
msgstr "个人"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_res_partner_view_filter_customer
|
||||
msgid "Salesperson"
|
||||
msgstr "销售员"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_res_partner_view_filter_customer
|
||||
msgid "Search Partner"
|
||||
msgstr "搜索业务伙伴"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.model.fields,field_description:app_base_chinese.field_res_partner_short_name
|
||||
#: model:ir.model.fields,field_description:app_base_chinese.field_res_users_short_name
|
||||
#: model:ir.model.fields,field_description:app_base_chinese.field_res_partner__short_name
|
||||
msgid "Short Name"
|
||||
msgstr "简称"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
#: model_terms:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
msgid "State"
|
||||
msgstr "州/省"
|
||||
msgstr "省份"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
#: model_terms:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
msgid "Street..."
|
||||
msgstr "街道..."
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_res_partner_view_filter_customer
|
||||
msgid "Tag"
|
||||
msgstr "标签"
|
||||
#: model:ir.model.fields,help:app_base_chinese.field_res_partner_category__sequence
|
||||
msgid "Used to order partner category"
|
||||
msgstr "显示排序"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: code:addons/app_base_chinese/models/res_partner.py:14
|
||||
#: sql_constraint:res.partner:0
|
||||
#, python-format
|
||||
msgid "The reference must be unique"
|
||||
msgstr "编码必须唯一"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: code:addons/app_base_chinese/models/res_partner.py:21
|
||||
#, python-format
|
||||
msgid "The reference must be unique!"
|
||||
msgstr "编码必须唯一"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.actions.act_window,name:app_base_chinese.app_action_partner_supplier_form
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_view_partner_supplier_tree
|
||||
msgid "Vendors"
|
||||
msgstr "供应商"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
#: model_terms:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
msgid "ZIP"
|
||||
msgstr "邮箱"
|
||||
msgstr "邮编"
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
#: model_terms:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
msgid "e.g. VIP001"
|
||||
msgstr "例如 VIP001"
|
||||
msgstr ""
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
#: model_terms:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
msgid "手机:"
|
||||
msgstr "手机:"
|
||||
msgstr ""
|
||||
|
||||
#. module: app_base_chinese
|
||||
#: model_terms:ir.ui.view,arch_db:app_base_chinese.app_view_partner_form
|
||||
msgid "电话:"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from . import res_partner
|
||||
from . import res_partner_category
|
||||
from . import res_currency
|
||||
|
||||
|
||||
|
||||
|
||||
53
app_base_chinese/models/res_currency.py
Normal file
53
app_base_chinese/models/res_currency.py
Normal file
@@ -0,0 +1,53 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from odoo import api, fields, models
|
||||
|
||||
|
||||
class ResCurrency(models.Model):
|
||||
_inherit = 'res.currency'
|
||||
_order = 'active desc, sequence, name'
|
||||
|
||||
sequence = fields.Integer('Sequence', default=10, help="Determine the display order. Sort ascending.")
|
||||
|
||||
def rmb_upper(self, value):
|
||||
"""
|
||||
人民币大写
|
||||
传入浮点类型的值返回 unicode 字符串
|
||||
:param 传入阿拉伯数字
|
||||
:return 返回值是对应阿拉伯数字的绝对值的中文数字
|
||||
"""
|
||||
if self.name != 'CNY':
|
||||
return;
|
||||
rmbmap = [u"零", u"壹", u"贰", u"叁", u"肆", u"伍", u"陆", u"柒", u"捌", u"玖"]
|
||||
unit = [u"分", u"角", u"元", u"拾", u"佰", u"仟", u"万", u"拾", u"佰", u"仟", u"亿",
|
||||
u"拾", u"佰", u"仟", u"万", u"拾", u"佰", u"仟", u"兆"]
|
||||
# 冲红负数处理
|
||||
xflag = 0
|
||||
if value < 0:
|
||||
xflag = value
|
||||
value = abs(value)
|
||||
# 先把value 数字进行格式化保留两位小数,转成字符串然后去除小数点
|
||||
nums = map(int, list(str('%0.2f' % value).replace('.', '')))
|
||||
words = []
|
||||
zflag = 0 # 标记连续0次数,以删除万字,或适时插入零字
|
||||
start = len(nums) - 3
|
||||
for i in range(start, -3, -1): # 使i对应实际位数,负数为角分
|
||||
# 大部分情况对应数字不等于零 或者是刚开始循环
|
||||
if 0 != nums[start - i] or len(words) == 0:
|
||||
if zflag:
|
||||
words.append(rmbmap[0])
|
||||
zflag = 0
|
||||
words.append(rmbmap[nums[start - i]]) # 数字对应的中文字符
|
||||
words.append(unit[i + 2]) # 列表此位置的单位
|
||||
# 控制‘万/元’ 万和元比较特殊,如2拾万和2拾1万 无论有没有这个1 万字是必须的
|
||||
elif 0 == i or (0 == i % 4 and zflag < 3):
|
||||
# 上面那种情况定义了 2拾1万 的显示 这个是特殊对待的 2拾万(一类)的显示
|
||||
words.append(unit[i + 2])
|
||||
# 元(控制条件为 0 == i )和万(控制条为(0 == i % 4 and zflag < 3))的情况的处理是一样的
|
||||
zflag = 0
|
||||
else:
|
||||
zflag += 1
|
||||
if words[-1] != unit[0]: # 结尾非‘分’补整字 最小单位 如果最后一个字符不是最小单位(分)则要加一个整字
|
||||
words.append(u"整")
|
||||
if xflag < 0: # 如果为负数则要在数字前面加上‘负’字
|
||||
words.insert(0, u"负")
|
||||
return ''.join(words)
|
||||
@@ -9,26 +9,16 @@ class ResPartner(models.Model):
|
||||
|
||||
short_name = fields.Char('Short Name') # 简称
|
||||
|
||||
# ref,编码限制在 app_partner_auto_reference
|
||||
# 显示[编码]简称
|
||||
@api.multi
|
||||
def name_get(self):
|
||||
result = []
|
||||
for partner in self:
|
||||
if partner.short_name:
|
||||
name = partner.short_name
|
||||
else:
|
||||
name = partner.name
|
||||
if partner.ref:
|
||||
name = '[' + partner.ref + ']' + name
|
||||
result.append((partner.id, name))
|
||||
return result
|
||||
|
||||
|
||||
class PartnerCategory(models.Model):
|
||||
_inherit = 'res.partner.category'
|
||||
_order = 'sequence, name'
|
||||
|
||||
sequence = fields.Integer('Sequence', help="Used to order partner category")
|
||||
|
||||
|
||||
# 增加地址显示中的手机号与电话号码
|
||||
# 选项 show_address 开启则增加显示手机与电话号
|
||||
def _get_name(self):
|
||||
name = super(ResPartner, self)._get_name() or ''
|
||||
partner = self
|
||||
if self._context.get('show_address'):
|
||||
if partner.mobile and partner.phone:
|
||||
name = name + "\n" + partner.mobile + "," + partner.phone
|
||||
elif partner.mobile:
|
||||
name = name + "\n" + partner.mobile
|
||||
elif partner.phone:
|
||||
name = name + "\n" + partner.phone
|
||||
return name
|
||||
|
||||
9
app_base_chinese/models/res_partner_category.py
Normal file
9
app_base_chinese/models/res_partner_category.py
Normal file
@@ -0,0 +1,9 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from odoo import api, models, fields, _
|
||||
|
||||
class PartnerCategory(models.Model):
|
||||
_inherit = 'res.partner.category'
|
||||
_order = 'sequence, name'
|
||||
|
||||
sequence = fields.Integer('Sequence', help="Used to order partner category")
|
||||
BIN
app_base_chinese/static/description/cnreadme.jpg
Normal file
BIN
app_base_chinese/static/description/cnreadme.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 14 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 8.4 KiB After Width: | Height: | Size: 48 KiB |
BIN
app_base_chinese/static/description/demo2.jpg
Normal file
BIN
app_base_chinese/static/description/demo2.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 33 KiB |
BIN
app_base_chinese/static/description/demo3.jpg
Normal file
BIN
app_base_chinese/static/description/demo3.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 54 KiB |
@@ -4,7 +4,7 @@
|
||||
<h2 class="oe_slogan">App base chinese. Local customize for china user </h2>
|
||||
<h3 class="oe_slogan">Set all chinese default value. Like Default country, timezone, currency, partner... </h3>
|
||||
<div class="oe_row">
|
||||
<h3>Lastest update: v11.0.11.07, 2018-11-07</h3>
|
||||
<h3>Lastest update: v12.19.3.04</h3>
|
||||
<div class="oe_span12">
|
||||
<img class="oe_demo oe_picture oe_screenshot" src="banner.jpg">
|
||||
</div>
|
||||
@@ -24,17 +24,42 @@
|
||||
<i class="fa fa-check-square-o text-primary"></i>
|
||||
Set partner to chinese format.
|
||||
</li>
|
||||
<li>
|
||||
<i class="fa fa-check-square-o text-primary"></i>
|
||||
Fix Category Display not in english bug.
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="oe_span12">
|
||||
<img class="oe_demo oe_picture oe_screenshot" src="demo1.jpg">
|
||||
<img class="oe_demo oe_picture oe_screenshot" src="cnreadme.jpg">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="oe_container">
|
||||
<div class="oe_row oe_spaced">
|
||||
<h4 class="oe_slogan">Set Default country, state, timezone, currency.</h4>
|
||||
<div class="oe_demo oe_screenshot">
|
||||
<img src="demo1.jpg">
|
||||
</div>
|
||||
<div class="oe_demo oe_screenshot">
|
||||
<img src="demo2.jpg">
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="oe_container">
|
||||
<div class="oe_row oe_spaced">
|
||||
<h4 class="oe_slogan">Fix Category Display not in english bug.</h4>
|
||||
<div class="oe_demo oe_screenshot">
|
||||
<img src="demo3.jpg">
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="oe_container oe_dark">
|
||||
<div class="oe_row oe_spaced text-center">
|
||||
<div class="oe_span12">
|
||||
|
||||
27
app_base_chinese/views/ir_default_views.xml
Normal file
27
app_base_chinese/views/ir_default_views.xml
Normal file
@@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<data noupdate="0">
|
||||
<!-- currency视图, tree -->
|
||||
<record id="app_view_currency_tree" model="ir.ui.view">
|
||||
<field name="name">app.res.currency.tree</field>
|
||||
<field name="model">res.currency</field>
|
||||
<field name="inherit_id" ref="base.view_currency_tree"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//field[@name='name']" position="before">
|
||||
<field name="sequence" widget="handle"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
<!-- currency视图, form -->
|
||||
<record id="app_view_currency_form" model="ir.ui.view">
|
||||
<field name="name">app.res.currency.form</field>
|
||||
<field name="model">res.currency</field>
|
||||
<field name="inherit_id" ref="base.view_currency_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//field[@name='position']" position="after">
|
||||
<field name="sequence"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
27
app_base_chinese/views/res_currency_views.xml
Normal file
27
app_base_chinese/views/res_currency_views.xml
Normal file
@@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<data noupdate="0">
|
||||
<!-- currency视图, tree -->
|
||||
<record id="app_ir_default_tree_view" model="ir.ui.view">
|
||||
<field name="name">app.ir.default tree view</field>
|
||||
<field name="model">ir.default</field>
|
||||
<field name="inherit_id" ref="base.ir_default_tree_view"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//field[@name='json_value']" position="after">
|
||||
<field name="condition"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
<!-- currency视图, form -->
|
||||
<record id="app_ir_default_form_view" model="ir.ui.view">
|
||||
<field name="name">app.ir.default form view</field>
|
||||
<field name="model">ir.default</field>
|
||||
<field name="inherit_id" ref="base.ir_default_form_view"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//field[@name='json_value']" position="after">
|
||||
<field name="condition"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<data noupdate="0">
|
||||
<!-- Partner Form视图,用继承方式改写2018-11-21,ivan -->
|
||||
<!-- Partner tree视图,用继承方式改写2018-11-21,ivan -->
|
||||
<record id="app_view_partner_category_list" model="ir.ui.view">
|
||||
<field name="name">app Contact Tags</field>
|
||||
<field name="model">res.partner.category</field>
|
||||
|
||||
@@ -7,39 +7,29 @@
|
||||
<field name="model">res.partner</field>
|
||||
<field name="inherit_id" ref="base.view_partner_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//page[@name='sales_purchases']//field[@name='ref']" position="replace">
|
||||
</xpath>
|
||||
<!-- 客户编号设计在重要位置,在ui层必填,其它联系人type时不需要填 2017-10-22 -->
|
||||
<!-- 客户编号设计在重要位置,放到 app_partner_auto_reference -->
|
||||
<!--<xpath expr="//field[@name='type']" position="after">-->
|
||||
<!--<xpath expr="//field[@name='ref']" position="move"/>-->
|
||||
<!--</xpath>-->
|
||||
<xpath expr="//field[@name='type']" position="after">
|
||||
<field name="ref" placeholder="e.g. VIP001" />
|
||||
<field name="short_name"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='website']" position="attributes">
|
||||
<attribute name="invisible">1</attribute>
|
||||
<field name="short_name" invisible="1"/>
|
||||
</xpath>
|
||||
<!-- 信用额度 -->
|
||||
<xpath expr="//field[@name='category_id']" position="after">
|
||||
<field name="credit_limit"/>
|
||||
</xpath>
|
||||
<!--res.partner客户 地址中国化 -->
|
||||
<xpath expr="//div[@class='o_address_format']" position="replace">
|
||||
<div class="o_address_format">
|
||||
<div class="oe_edit_only">
|
||||
<button name="open_parent" type="object" string="(edit)" class="oe_link"
|
||||
attrs="{'invisible': ['|', ('parent_id', '=', False), ('type', '!=', 'contact')]}"/>
|
||||
</div>
|
||||
<field name="country_id" placeholder="Country" class="o_address_country" options='{"no_open": True, "no_create": True}'
|
||||
attrs="{'readonly': [('type', '=', 'contact'),('parent_id', '!=', False)]}"/>
|
||||
<field name="state_id" class="o_address_state" placeholder="State" options='{"no_open": True}'
|
||||
attrs="{'readonly': [('type', '=', 'contact'),('parent_id', '!=', False)]}" context="{'country_id': country_id, 'zip': zip}"/>
|
||||
<field name="city" placeholder="City" class="o_address_city"
|
||||
attrs="{'readonly': [('type', '=', 'contact'),('parent_id', '!=', False)]}"/>
|
||||
<field name="zip" placeholder="ZIP" class="o_address_zip"
|
||||
attrs="{'readonly': [('type', '=', 'contact'),('parent_id', '!=', False)]}"/>
|
||||
<field name="street" placeholder="Street..." class="o_address_street"
|
||||
attrs="{'readonly': [('type', '=', 'contact'),('parent_id', '!=', False)]}"/>
|
||||
<field name="street2" invisible="1"/>
|
||||
</div>
|
||||
<xpath expr="//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='country_id']" position="move"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='state_id']" position="move"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='city']" position="move"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='zip']" position="move"/>
|
||||
</xpath>
|
||||
<!-- res.partner联系人 form -->
|
||||
<!-- 所有类型联系人默认都不是客户,不是供应商-->
|
||||
@@ -54,118 +44,107 @@
|
||||
<xpath expr="//notebook/page[1]" position="attributes">
|
||||
<attribute name="attrs">{'invisible': [('is_company','!=', True)]}</attribute>
|
||||
</xpath>
|
||||
<!-- 所有类型联系人都要填姓名 -->
|
||||
<xpath expr="//page//field[@name='child_ids']//form[1]//field[@name='name']" position="attributes">
|
||||
<attribute name="required">1</attribute>
|
||||
</xpath>
|
||||
<!-- 联系人也显示地址,中国格式 -->
|
||||
<xpath expr="//page//form[1]//group//group" position="replace">
|
||||
<group attrs="">
|
||||
<label for="street" string="Address"/>
|
||||
<div>
|
||||
<div class="o_address_format" name="div_address">
|
||||
<field name="country_id" placeholder="Country" class="o_address_country"
|
||||
options='{"no_open": True, "no_create": True}'/>
|
||||
<field name="state_id" class="o_address_state" placeholder="State"
|
||||
options='{"no_open": True}' context="{'country_id': country_id, 'zip': zip}"/>
|
||||
<field name="city" placeholder="City" class="o_address_city"/>
|
||||
<field name="zip" placeholder="ZIP" class="o_address_zip"/>
|
||||
<field name="street" placeholder="Street..." class="o_address_street"/>
|
||||
<field name="street2" invisible="1"/>
|
||||
</div>
|
||||
</div>
|
||||
</group>
|
||||
<!--res.partner客户 地址中国化 -->
|
||||
<xpath expr="//field[@name='child_ids']//form[1]//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='child_ids']//form[1]//field[@name='country_id']" position="move"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='child_ids']//form[1]//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='child_ids']//form[1]//field[@name='state_id']" position="move"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='child_ids']//form[1]//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='child_ids']//form[1]//field[@name='city']" position="move"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='child_ids']//form[1]//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='child_ids']//form[1]//field[@name='zip']" position="move"/>
|
||||
</xpath>
|
||||
<!-- res.partner联系人 kanban -->
|
||||
<!-- 显示类型和地址等 -->
|
||||
<xpath expr="//page//kanban[1]//templates//div[@class='oe_kanban_details']" position="replace">
|
||||
<div class="oe_kanban_details">
|
||||
<div>
|
||||
[<field name="ref"/>]
|
||||
<strong>
|
||||
<field name="name"/>
|
||||
</strong>
|
||||
</div>
|
||||
<div>
|
||||
<field name="type"/>
|
||||
</div>
|
||||
<div t-if="record.function.raw_value">
|
||||
<field name="function"/>
|
||||
</div>
|
||||
<div t-if="record.email.raw_value">
|
||||
<field name="email"/>
|
||||
</div>
|
||||
<div>
|
||||
<field t-if="record.state_id.raw_value" name="state_id"/>
|
||||
<div>
|
||||
<field name="city"/>
|
||||
<field name="street"/>
|
||||
<field name="zip" invisible="1"/>
|
||||
</div>
|
||||
</div>
|
||||
<div t-if="record.phone.raw_value">电话:
|
||||
<field name="phone"/>
|
||||
</div>
|
||||
<div t-if="record.mobile.raw_value">手机:
|
||||
<field name="mobile"/>
|
||||
</div>
|
||||
</div>
|
||||
<xpath expr="//field[@name='child_ids']//kanban[1]//templates//field[@name='name']" position="before">
|
||||
<t t-if="record.ref.raw_value">[<field name="ref"/>]</t>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='child_ids']//kanban[1]//templates//field[@name='name']" position="after">
|
||||
<div t-if="record.type.raw_value"><field name="type"/></div>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!--res.partner open地址中国化 -->
|
||||
<record id="app_view_partner_address_form" model="ir.ui.view">
|
||||
<field name="name">app.res.partner.form.address</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="inherit_id" ref="base.view_partner_address_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='country_id']" position="move"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='state_id']" position="move"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='city']" position="move"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='zip']" position="move"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
<!--res.partner open地址中国化 -->
|
||||
<record id="app_view_partner_short_form" model="ir.ui.view">
|
||||
<field name="name">app.res.partner.form</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="inherit_id" ref="base.view_partner_short_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='country_id']" position="move"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='state_id']" position="move"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='city']" position="move"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='zip']" position="move"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
<!--res.partner 私人地址中国化 -->
|
||||
<record id="app_res_partner_view_form_private" model="ir.ui.view">
|
||||
<field name="name">app.res.partner.view.form.private</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="inherit_id" ref="base.res_partner_view_form_private"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='country_id']" position="move"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='state_id']" position="move"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='city']" position="move"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='street']" position="before">
|
||||
<xpath expr="//field[@name='zip']" position="move"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- Partner tree 视图,公用的,暂时没用 -->
|
||||
<record id="app_view_partner_tree" model="ir.ui.view">
|
||||
<field name="name">app.res.partner.tree</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="inherit_id" ref="base.view_partner_tree"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//field[@name='phone']" position="before">
|
||||
<field name="short_name"/>
|
||||
<field name="ref"/>
|
||||
<field name="mobile"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='email']" position="after">
|
||||
<field name="state_id"/>
|
||||
<field name="city"/>
|
||||
<field name="street"/>
|
||||
<field name="category_id"/>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='user_id']" position="attributes">
|
||||
<attribute name="invisible">0</attribute>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- Partner customer tree 视图-->
|
||||
<record id="app_view_partner_customer_tree" model="ir.ui.view">
|
||||
<field name="name">app.res.partner.tree</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Customers">
|
||||
<!--<field name="sale_type"/>-->
|
||||
<field name="display_name"/>
|
||||
<field name="ref"/>
|
||||
<field name="short_name"/>
|
||||
<field name="mobile"/>
|
||||
<field name="state_id"/>
|
||||
<field name="city"/>
|
||||
<field name="street"/>
|
||||
<field name="credit_limit"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- Partner supplier tree 视图-->
|
||||
<record id="app_view_partner_supplier_tree" model="ir.ui.view">
|
||||
<field name="name">app.res.partner.tree</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Vendors">
|
||||
<field name="display_name"/>
|
||||
<field name="short_name"/>
|
||||
<field name="ref"/>
|
||||
<field name="mobile"/>
|
||||
<field name="phone"/>
|
||||
<field name="email"/>
|
||||
<field name="state_id"/>
|
||||
<field name="city"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
@@ -190,147 +169,9 @@
|
||||
</record>
|
||||
<!--end客户-->
|
||||
|
||||
<!-- 为客户菜单单独增加筛选器 2017-11-13 -->
|
||||
<record id="app_res_partner_view_filter_customer" model="ir.ui.view">
|
||||
<field name="name">app.res.partner.select.customer</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="Search Partner">
|
||||
<field name="name"
|
||||
filter_domain="['|','|',('display_name','ilike',self),('ref','=',self),('email','ilike',self)]"/>
|
||||
<!-- 添加手机号查询客户功能 2017-11-13 -->
|
||||
<field name="mobile"/>
|
||||
<filter help="My Partners" domain="[('user_id','=',uid)]"/>
|
||||
<separator/>
|
||||
<filter string="Persons" name="type_person" domain="[('is_company','=',0)]"/>
|
||||
<filter string="Companies" name="type_company" domain="[('is_company','=',1)]"/>
|
||||
<separator/>
|
||||
<field name="category_id" string="Tag" filter_domain="[('category_id','ilike', self)]"/>
|
||||
<field name="user_id"/>
|
||||
<field name="parent_id" domain="[('is_company','=',1)]" operator="child_of"/>
|
||||
<group expand="0" name="group_by" string="Group By">
|
||||
<filter name="salesperson" string="Salesperson" domain="[]" context="{'group_by' : 'user_id'}"/>
|
||||
<filter string="City" context="{'group_by': 'city'}"/>
|
||||
<!-- 不需要按国家分组 -->
|
||||
<!-- <filter string="Country" context="{'group_by': 'country_id'}"/> -->
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="app_action_partner_customer_form" model="ir.actions.act_window">
|
||||
<field name="name">Customers</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">res.partner</field>
|
||||
<field name="view_mode">kanban,tree,form</field>
|
||||
<!-- domain客户 2017-11-19 -->
|
||||
<field name="domain">[('customer', '=', 1),('is_company', '=', 1)]</field>
|
||||
<field name="context">{'default_customer':1,'default_is_company':1}</field>
|
||||
<!-- 指定独立筛选器 2017-11-14 -->
|
||||
<field name="search_view_id" ref="app_res_partner_view_filter_customer"/>
|
||||
<field name="help" type="html">
|
||||
<p class="oe_view_nocontent_create">
|
||||
Click to add a contact in your address book.
|
||||
</p>
|
||||
<p>
|
||||
Odoo helps you easily track all activities related to
|
||||
a customer: discussions, history of business opportunities,
|
||||
documents, etc.
|
||||
</p>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="app_action_customer_form_view1" model="ir.actions.act_window.view">
|
||||
<field name="sequence" eval="1"/>
|
||||
<field name="view_mode">kanban</field>
|
||||
<field name="view_id" ref="base.res_partner_kanban_view"/>
|
||||
<field name="act_window_id" ref="app_action_partner_customer_form"/>
|
||||
</record>
|
||||
<record id="app_action_customer_form_view2" model="ir.actions.act_window.view">
|
||||
<field name="sequence" eval="2"/>
|
||||
<field name="view_mode">tree</field>
|
||||
<field name="view_id" ref="app_view_partner_customer_tree"/>
|
||||
<field name="act_window_id" ref="app_action_partner_customer_form"/>
|
||||
</record>
|
||||
<!--end客户-->
|
||||
|
||||
<!-- 为供应商菜单单独增加筛选器 2017-11-13 -->
|
||||
<record id="app_action_partner_supplier_form" model="ir.actions.act_window">
|
||||
<field name="name">Vendors</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">res.partner</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">kanban,tree,form</field>
|
||||
<field name="domain">[('supplier', '=', 1),('is_company', '=', 1)]</field>
|
||||
<field name="context">{'default_supplier': 1,'default_is_company':1}</field>
|
||||
<field name="filter" eval="True"/>
|
||||
<field name="help" type="html">
|
||||
<p class="oe_view_nocontent_create">
|
||||
Click to add a contact in your address book.
|
||||
</p>
|
||||
<p>
|
||||
Odoo helps you easily track all activities related to
|
||||
a supplier: discussions, history of purchases,
|
||||
documents, etc.
|
||||
</p>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="app_action_supplier_form_view1" model="ir.actions.act_window.view">
|
||||
<field name="sequence" eval="1"/>
|
||||
<field name="view_mode">kanban</field>
|
||||
<field name="view_id" ref="base.res_partner_kanban_view"/>
|
||||
<field name="act_window_id" ref="app_action_partner_supplier_form"/>
|
||||
</record>
|
||||
<record id="app_action_supplier_form_view2" model="ir.actions.act_window.view">
|
||||
<field name="sequence" eval="2"/>
|
||||
<field name="view_mode">tree</field>
|
||||
<field name="view_id" ref="app_view_partner_supplier_tree"/>
|
||||
<field name="act_window_id" ref="app_action_partner_supplier_form"/>
|
||||
</record>
|
||||
<!--end供应商-->
|
||||
|
||||
<!-- 所有合作伙伴 2017-11-13 -->
|
||||
<record id="app_action_partner_form" model="ir.actions.act_window">
|
||||
<field name="name">Partner</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">res.partner</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">kanban,tree,form</field>
|
||||
<field name="domain"></field>
|
||||
<field name="context">{'default_customer': 0,'default_supplier': 0,'default_is_company':1}</field>
|
||||
<field name="filter" eval="True"/>
|
||||
<field name="view_id" ref="base.res_partner_kanban_view"/>
|
||||
<field name="help" type="html">
|
||||
<p class="oe_view_nocontent_create">
|
||||
Click to add a contact in your address book.
|
||||
</p>
|
||||
<p>
|
||||
Odoo helps you easily track all activities related to
|
||||
a supplier: discussions, history of purchases,
|
||||
documents, etc.
|
||||
</p>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="app_action_partner_employee_form" model="ir.actions.act_window">
|
||||
<field name="name">Employees</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">res.partner</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="domain">[('employee','=',1)]</field>
|
||||
<field name="context">{'default_customer':0, 'default_supplier':0 , 'default_employee':1}</field>
|
||||
<field name="filter" eval="True"/>
|
||||
</record>
|
||||
|
||||
<record id="app_action_partner_other_form" model="ir.actions.act_window">
|
||||
<field name="name">Other Partners</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">res.partner</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="domain">[('supplier','<>',1),('customer','<>',1)]</field>
|
||||
<field name="filter" eval="True"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</odoo>
|
||||
|
||||
Reference in New Issue
Block a user