如何为Odoo POS添加新的安全角色?

时间:2019-04-03 00:42:19

标签: python python-3.x security odoo

我是odoo的新朋友,我正在寻求帮助

如何为出纳员扮演新的安全角色,我需要他做的就是打开POS会话并关闭它,没什么。

那怎么办?

我已经有一个moedel,并且我具有角色,我需要向新用户添加角色以成为收银员,只需打开pos会话并将其关闭

    <record id="auto_cashir" model="res.groups">
        <field name="name">cashier</field>
        <field name="category_id" ref="base.module_category_point_of_sale"/>
        <field name="implied_ids" eval="[(4, ref('group_pos_user')), (4, ref('stock.group_stock_user'))]"/>
        <field name="users" eval="[(4, ref('base.user_root'))]"/>
    </record>

我需要以用户身份在我的模型安全角色下担任角色,才能选择Cashir角色

1 个答案:

答案 0 :(得分:1)

通过属于open_session_cb模型(pos.config)的名为<path_to_v12>/addons/point_of_sale/models/pos_config.py的方法打开PoS会话,因此您的问题转化为如何只允许该特定用户权限那个特定的方法?

恕我直言,由于Odoo安全性的设计方式而无法完成(请参见https://www.odoo.com/documentation/12.0/reference/security.html)。也就是说,Odoo可以限制对模型,记录和字段的访问,但不能限制对方法的访问。

您可以获得的最接近的结果是创建一个内部用户,该用户没有应用程序权限,除了销售点的用户级别。为此,只需确保用户属于point_of_sale.group_pos_user组即可。