Merge branch 'feature/新增采购权限组' into develop
This commit is contained in:
@@ -7,10 +7,15 @@
|
||||
<field name="model">quality.point</field>
|
||||
<field name="arch" type="xml">
|
||||
<form>
|
||||
<header>
|
||||
</header>
|
||||
<sheet>
|
||||
<div class="oe_button_box" name="button_box"/>
|
||||
<widget name="web_ribbon" title="Archived" bg_color="bg-danger" attrs="{'invisible': [('active', '=', True)]}"/>
|
||||
<h2><field name="name" readonly="1"/></h2>
|
||||
<widget name="web_ribbon" title="Archived" bg_color="bg-danger"
|
||||
attrs="{'invisible': [('active', '=', True)]}"/>
|
||||
<h2>
|
||||
<field name="name" readonly="1"/>
|
||||
</h2>
|
||||
<group>
|
||||
<group>
|
||||
<field name="active" invisible="1"/>
|
||||
@@ -33,13 +38,14 @@
|
||||
<field name="note" placeholder="Describe the quality check to do..."/>
|
||||
</page>
|
||||
<page string="Notes" name="Notes">
|
||||
<field name="reason" string="Note" placeholder="Describe why you need to perform this quality check..."/>
|
||||
<field name="reason" string="Note"
|
||||
placeholder="Describe why you need to perform this quality check..."/>
|
||||
</page>
|
||||
</notebook>
|
||||
</sheet>
|
||||
<div class="oe_chatter">
|
||||
<field name="message_follower_ids"/>
|
||||
<field name="message_ids"/>
|
||||
<field name="message_follower_ids"/>
|
||||
<field name="message_ids"/>
|
||||
</div>
|
||||
</form>
|
||||
</field>
|
||||
@@ -85,17 +91,18 @@
|
||||
<filter name="filter_date_close" date="date_close"/>
|
||||
<separator/>
|
||||
<filter string="Late Activities" name="activities_overdue"
|
||||
domain="[('my_activity_date_deadline', '<', context_today().strftime('%Y-%m-%d'))]"
|
||||
help="Show all records which has next action date is before today"/>
|
||||
domain="[('my_activity_date_deadline', '<', context_today().strftime('%Y-%m-%d'))]"
|
||||
help="Show all records which has next action date is before today"/>
|
||||
<filter string="Today Activities" name="activities_today"
|
||||
domain="[('my_activity_date_deadline', '=', context_today().strftime('%Y-%m-%d'))]"/>
|
||||
domain="[('my_activity_date_deadline', '=', context_today().strftime('%Y-%m-%d'))]"/>
|
||||
<filter string="Future Activities" name="activities_upcoming_all"
|
||||
domain="[('my_activity_date_deadline', '>', context_today().strftime('%Y-%m-%d'))]"/>
|
||||
domain="[('my_activity_date_deadline', '>', context_today().strftime('%Y-%m-%d'))]"/>
|
||||
<group expand="0" string="Group By">
|
||||
<filter string="Stage" name="groupby_stage" domain="[]" context="{'group_by': 'stage_id'}"/>
|
||||
<filter string="Responsible" name="groupby_user" domain="[]" context="{'group_by': 'user_id'}"/>
|
||||
<filter string="Root Cause" name="groupby_reason" domain="[]" context="{'group_by': 'reason_id'}"/>
|
||||
<filter string="Creation Date" name="groupby_createmonth" domain="[]" context="{'group_by': 'create_date'}"/>
|
||||
<filter string="Creation Date" name="groupby_createmonth" domain="[]"
|
||||
context="{'group_by': 'create_date'}"/>
|
||||
<filter string="Quality Team" name="groupby_team_id" domain="[]" context="{'group_by': 'team_id'}"/>
|
||||
</group>
|
||||
</search>
|
||||
@@ -122,4 +129,4 @@
|
||||
</record>
|
||||
|
||||
<!-- js stuff -->
|
||||
</odoo>
|
||||
</odoo>
|
||||
|
||||
@@ -602,6 +602,7 @@
|
||||
<field name="model">quality.alert.team</field>
|
||||
<field name="arch" type="xml">
|
||||
<form>
|
||||
<header></header>
|
||||
<sheet>
|
||||
<div class="oe_title">
|
||||
<label for="name" string="Team Name"/>
|
||||
|
||||
@@ -1,19 +1,29 @@
|
||||
<odoo>
|
||||
<data>
|
||||
<record id="group_quality" model="res.groups">
|
||||
<field name="name">质检岗</field>
|
||||
<field name="category_id" ref="base.module_category_manufacturing_quality"/>
|
||||
</record>
|
||||
|
||||
<record id="group_quality_director" model="res.groups">
|
||||
<field name="name">质量总监</field>
|
||||
<field name="category_id" ref="base.module_category_manufacturing_quality"/>
|
||||
</record>
|
||||
<record id="group_sf_mrp_user" model="res.groups">
|
||||
<field name="name">制造普通用户</field>
|
||||
<field name="category_id" ref="base.module_category_manufacturing_manufacturing"/>
|
||||
<field name="implied_ids" eval="[(4, ref('mrp.group_mrp_user'))]"/>
|
||||
</record>
|
||||
<!-- <record id="group_sf_mrp_manager" model="res.groups">-->
|
||||
<!-- <field name="name">制造管理用户</field>-->
|
||||
<!-- <field name="implied_ids" eval="[(4, ref('group_sf_mrp_user'))]"/>-->
|
||||
<!-- <record id="group_sf_mrp_manager" model="res.groups">-->
|
||||
<!-- <field name="name">制造管理用户</field>-->
|
||||
<!-- <field name="implied_ids" eval="[(4, ref('group_sf_mrp_user'))]"/>-->
|
||||
|
||||
<!-- </record>-->
|
||||
<!-- <record id="group_sf_mrp_manager" model="res.groups">-->
|
||||
<!-- <field name="name">制造管理用户</field>-->
|
||||
<!-- <field name="implied_ids" eval="[(4, ref('group_sf_mrp_user'))]"/>-->
|
||||
<!-- <field name="category_id" ref="base.module_category_manufacturing_manufacturing"/>-->
|
||||
<!-- </record>-->
|
||||
<!-- </record>-->
|
||||
<!-- <record id="group_sf_mrp_manager" model="res.groups">-->
|
||||
<!-- <field name="name">制造管理用户</field>-->
|
||||
<!-- <field name="implied_ids" eval="[(4, ref('group_sf_mrp_user'))]"/>-->
|
||||
<!-- <field name="category_id" ref="base.module_category_manufacturing_manufacturing"/>-->
|
||||
<!-- </record>-->
|
||||
<record id="group_sf_equipment_user" model="res.groups">
|
||||
<field name="name">机床操作岗</field>
|
||||
<field name="implied_ids" eval="[(4, ref('group_sf_mrp_user'))]"/>
|
||||
@@ -64,5 +74,17 @@
|
||||
<field name="category_id" ref="module_category_plan"/>
|
||||
<field name="implied_ids" eval="[(4, ref('sf_base.group_plan_dispatch'))]"/>
|
||||
</record>
|
||||
|
||||
<record id="group_purchase" model="res.groups">
|
||||
<field name="name">采购岗</field>
|
||||
<field name="category_id" ref="base.module_category_inventory_purchase"/>
|
||||
</record>
|
||||
|
||||
<record id="group_purchase_director" model="res.groups">
|
||||
<field name="name">采购总监</field>
|
||||
<field name="category_id" ref="base.module_category_inventory_purchase"/>
|
||||
</record>
|
||||
|
||||
|
||||
</data>
|
||||
</odoo>
|
||||
@@ -30,6 +30,11 @@ access_sf_tool_materials_basic_parameters,sf_tool_materials_basic_parameters,mod
|
||||
access_sf_cutting_speed,sf_cutting_speed,model_sf_cutting_speed,base.group_user,1,1,1,1
|
||||
access_sf_feed_per_tooth,sf_feed_per_tooth,model_sf_feed_per_tooth,base.group_user,1,1,1,1
|
||||
access_maintenance_equipment_image,maintenance_equipment_image,model_maintenance_equipment_image,base.group_user,1,1,1,1
|
||||
access_purchase_order_group_purchase,access_purchase_order_group_purchase,purchase.model_purchase_order,sf_base.group_purchase,1,1,1,0
|
||||
access_purchase_order_group_purchase_director,access_purchase_order_group_purchase_director,purchase.model_purchase_order,sf_base.group_purchase_director,1,1,1,0
|
||||
access_purchase_order_line_group_purchase,access_purchase_order_line_group_purchase,purchase.model_purchase_order_line,sf_base.group_purchase,1,1,1,0
|
||||
access_purchase_order_line_group_purchase_director,access_purchase_order_line_group_purchase_director,purchase.model_purchase_order_line,sf_base.group_purchase_director,1,1,1,0
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@@ -13,44 +13,5 @@
|
||||
<field name="category_id" ref="base.module_category_manufacturing_maintenance"/>
|
||||
</record>
|
||||
|
||||
<!-- <record model="ir.rule" id="crm_team_rule_salemanager">-->
|
||||
<!-- <field name="name">销售经理只可以查看本人所在的团队</field>-->
|
||||
<!-- <field name="model_id" ref="model_crm_team"/>-->
|
||||
<!-- <field name="domain_force">[('crm_team_member_ids.user_id','=',user.id)]</field>-->
|
||||
<!-- <field name="groups" eval="[(4, ref('sf_base.group_sale_salemanager'))]"/>-->
|
||||
<!-- <field name="perm_read" eval="1"/>-->
|
||||
<!-- <field name="perm_write" eval="0"/>-->
|
||||
<!-- <field name="perm_create" eval="0"/>-->
|
||||
<!-- </record>-->
|
||||
|
||||
<!-- <record model="ir.rule" id="crm_team_rule_director">-->
|
||||
<!-- <field name="name">销售总监</field>-->
|
||||
<!-- <field name="model_id" ref="model_crm_team"/>-->
|
||||
<!-- <field name="domain_force">[(1,'=',1)]</field>-->
|
||||
<!-- <field name="groups" eval="[(4, ref('sf_base.group_sale_director'))]"/>-->
|
||||
<!-- <field name="perm_read" eval="1"/>-->
|
||||
<!-- <field name="perm_write" eval="1"/>-->
|
||||
<!-- <field name="perm_create" eval="1"/>-->
|
||||
<!-- </record>-->
|
||||
|
||||
<!-- <record model="ir.rule" id="sale_order_rule_director">-->
|
||||
<!-- <field name="name">销售总监查看所有的订单</field>-->
|
||||
<!-- <field name="model_id" ref="model_sale_order"/>-->
|
||||
<!-- <field name="domain_force">[(1,'=',1)]</field>-->
|
||||
<!-- <field name="groups" eval="[(4, ref('sf_base.group_sale_director'))]"/>-->
|
||||
<!-- <field name="perm_read" eval="1"/>-->
|
||||
<!-- <field name="perm_write" eval="1"/>-->
|
||||
<!-- </record>-->
|
||||
|
||||
<!-- <record model="ir.rule" id="sale_order_rule_salemanager">-->
|
||||
<!-- <field name="name">销售经理查看自己的订单</field>-->
|
||||
<!-- <field name="model_id" ref="model_sale_order"/>-->
|
||||
<!-- <field name="domain_force">['|',('partner_id','=',user.partner_id.id),('create_uid', '=',user.id)]</field>-->
|
||||
<!-- <field name="groups" eval="[(4, ref('sf_base.group_sale_salemanager'))]"/>-->
|
||||
<!-- <field name="perm_read" eval="1"/>-->
|
||||
<!-- <field name="perm_write" eval="1"/>-->
|
||||
<!-- <field name="perm_create" eval="1"/>-->
|
||||
<!-- </record>-->
|
||||
|
||||
</data>
|
||||
</odoo>
|
||||
@@ -13,8 +13,9 @@
|
||||
'author': 'jikimo',
|
||||
'website': 'https://sf.cs.jikimo.com',
|
||||
# 此处依赖sf_manufacturing是因为我要重写其中的一个字段operation_id的string,故需要sf_manufacturing先安装
|
||||
'depends': ['quality_control', 'sf_manufacturing'],
|
||||
'depends': ['quality_control'],
|
||||
'data': [
|
||||
'security/ir.model.access.csv',
|
||||
'views/view.xml'
|
||||
],
|
||||
|
||||
|
||||
@@ -10,5 +10,27 @@ class SfQualityPoint(models.Model):
|
||||
domain="[('type', 'in', "
|
||||
"('product', 'consu')), '|', ('company_id', '=', False), ('company_id', '=', company_id)]", help=
|
||||
"Quality Point will apply to every selected Products.")
|
||||
|
||||
check_state = fields.Selection([
|
||||
('enable', '启用'),
|
||||
('close', '关闭')
|
||||
], string='审核状态', default='close')
|
||||
|
||||
# 审核
|
||||
def action_check(self):
|
||||
self.check_state = 'enable'
|
||||
# picking_type_ids = fields.Many2many(
|
||||
# 'stock.picking.type', string='执行节点', required=True, check_company=True)
|
||||
|
||||
|
||||
class ResQualityAlertTeam(models.Model):
|
||||
_inherit = 'quality.alert.team'
|
||||
|
||||
check_state = fields.Selection([
|
||||
('enable', '启用'),
|
||||
('close', '关闭')
|
||||
], string='审核状态', default='close')
|
||||
|
||||
# 审核
|
||||
def action_check(self):
|
||||
self.check_state = 'enable'
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
|
||||
access_quality_point_group_quality,quality_point_group_quality,quality.model_quality_point,sf_base.group_quality,1,1,1,0
|
||||
access_quality_point_group_quality_director,quality_point_group_quality_director,quality.model_quality_point,sf_base.group_quality_director,1,1,0,0
|
||||
access_quality_point_group_plan_dispatch,quality_point_group_plan_dispatch,quality.model_quality_point,sf_base.group_plan_dispatch,1,0,0,0
|
||||
access_quality_point_group_plan_director,quality_point_group_plan_director,quality.model_quality_point,sf_base.group_plan_director,1,0,0,0
|
||||
access_quality_point_group_sf_equipment_user,quality_point_group_sf_equipment_user,quality.model_quality_point,sf_base.group_sf_equipment_user,1,0,0,0
|
||||
access_quality_point_group_sf_tool_user,quality_point_group_sf_tool_user,quality.model_quality_point,sf_base.group_sf_tool_user,1,0,0,0
|
||||
access_quality_point_group_sf_order_user,quality_point_group_sf_order_user,quality.model_quality_point,sf_base.group_sf_order_user,1,0,0,0
|
||||
access_quality_point_group_sf_mrp_manager,quality_point_group_sf_mrp_manager,quality.model_quality_point,sf_base.group_sf_mrp_manager,1,0,0,0
|
||||
|
||||
access_quality_check_group_quality,quality_check_group_quality,quality.model_quality_check,sf_base.group_quality,1,1,1,0
|
||||
access_quality_check_group_quality_director,quality_check_group_quality_director,quality.model_quality_check,sf_base.group_quality_director,1,1,1,0
|
||||
access_quality_check_group_plan_dispatch,quality_check_group_plan_dispatch,quality.model_quality_check,sf_base.group_plan_dispatch,1,0,0,0
|
||||
access_quality_check_group_plan_director,quality_check_group_plan_director,quality.model_quality_check,sf_base.group_plan_director,1,0,0,0
|
||||
access_quality_check_group_sf_equipment_user,quality_check_group_sf_equipment_user,quality.model_quality_check,sf_base.group_sf_equipment_user,1,0,0,0
|
||||
access_quality_check_group_sf_tool_user,quality_check_group_sf_tool_user,quality.model_quality_check,sf_base.group_sf_tool_user,1,0,0,0
|
||||
access_quality_check_group_sf_order_user,quality_check_group_sf_order_user,quality.model_quality_check,sf_base.group_sf_order_user,1,0,0,0
|
||||
access_quality_check_group_sf_mrp_manager,quality_check_group_sf_mrp_manager,quality.model_quality_check,sf_base.group_sf_mrp_manager,1,0,0,0
|
||||
access_quality_check_group_equipment_user,quality_check_group_equipment_user,quality.model_quality_check,sf_maintenance.sf_group_equipment_user,1,0,0,0
|
||||
access_quality_check_group_equipment_manager,quality_check_group_equipment_manager,quality.model_quality_check,sf_maintenance.sf_group_equipment_manager,1,0,0,0
|
||||
|
||||
access_quality_alert_group_quality,quality_alert_group_quality,quality.model_quality_alert,sf_base.group_quality,1,1,1,0
|
||||
access_quality_alert_group_quality_director,quality_alert_group_quality_director,quality.model_quality_alert,sf_base.group_quality_director,1,1,1,0
|
||||
access_quality_alert_group_plan_dispatch,quality_alert_group_plan_dispatch,quality.model_quality_alert,sf_base.group_plan_dispatch,1,0,0,0
|
||||
access_quality_alert_group_plan_director,quality_alert_group_plan_director,quality.model_quality_alert,sf_base.group_plan_director,1,0,0,0
|
||||
access_quality_alert_group_sf_equipment_user,quality_alert_group_sf_equipment_user,quality.model_quality_alert,sf_base.group_sf_equipment_user,1,0,0,0
|
||||
access_quality_alert_group_sf_tool_user,quality_alert_group_sf_tool_user,quality.model_quality_alert,sf_base.group_sf_tool_user,1,0,0,0
|
||||
access_quality_alert_group_sf_order_user,quality_alert_group_sf_order_user,quality.model_quality_alert,sf_base.group_sf_order_user,1,0,0,0
|
||||
access_quality_alert_group_sf_mrp_manager,quality_alert_group_sf_mrp_manager,quality.model_quality_alert,sf_base.group_sf_mrp_manager,1,0,0,0
|
||||
access_quality_alert_group_equipment_user,quality_alert_group_equipment_user,quality.model_quality_alert,sf_maintenance.sf_group_equipment_user,1,0,0,0
|
||||
access_quality_alert_group_equipment_manager,quality_alert_group_equipment_manager,quality.model_quality_alert,sf_maintenance.sf_group_equipment_manager,1,0,0,0
|
||||
|
||||
access_quality_alert_team_group_quality,quality_alert_team_group_quality,quality.model_quality_alert_team,sf_base.group_quality,1,1,1,0
|
||||
access_quality_alert_team_group_quality_director,quality_alert_team_group_quality_director,quality.model_quality_alert_team,sf_base.group_quality_director,1,1,0,0
|
||||
access_quality_alert_team_group_plan_dispatch,quality_alert_team_group_plan_dispatch,quality.model_quality_alert_team,sf_base.group_plan_dispatch,1,0,0,0
|
||||
access_quality_alert_team_group_plan_director,quality_alert_team_group_plan_director,quality.model_quality_alert_team,sf_base.group_plan_director,1,0,0,0
|
||||
access_quality_alert_team_group_sf_equipment_user,quality_alert_team_group_sf_equipment_user,quality.model_quality_alert_team,sf_base.group_sf_equipment_user,1,0,0,0
|
||||
access_quality_alert_team_group_sf_tool_user,quality_alert_team_group_sf_tool_user,quality.model_quality_alert_team,sf_base.group_sf_tool_user,1,0,0,0
|
||||
access_quality_alert_team_group_sf_order_user,quality_alert_team_group_sf_order_user,quality.model_quality_alert_team,sf_base.group_sf_order_user,1,0,0,0
|
||||
access_quality_alert_team_group_sf_mrp_manager,quality_alert_team_group_sf_mrp_manager,quality.model_quality_alert_team,sf_base.group_sf_mrp_manager,1,0,0,0
|
||||
|
||||
|
||||
|
||||
|
||||
|
@@ -31,4 +31,34 @@
|
||||
</p>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="quality_point_view_form_inherit_sf">
|
||||
<field name="name">quality.point.form.inherit.sf</field>
|
||||
<field name="model">quality.point</field>
|
||||
<field name="inherit_id" ref="quality.quality_point_view_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//header" position="inside">
|
||||
<field name="check_state" invisible="1"/>
|
||||
<button name="action_check" string="审核" type="object"
|
||||
attrs="{'invisible': [('check_state','=', 'enable')]}"
|
||||
groups="sf_base.group_quality_director"
|
||||
class="oe_highlight"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="quality_alert_team_view_form_inherit_sf">
|
||||
<field name="name">quality.alert.team.form.inherit.sf</field>
|
||||
<field name="model">quality.alert.team</field>
|
||||
<field name="inherit_id" ref="quality_control.quality_alert_team_view_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//header" position="inside">
|
||||
<field name="check_state" invisible="1"/>
|
||||
<button name="action_check" string="审核" type="object"
|
||||
attrs="{'invisible': [('check_state','=', 'enable')]}"
|
||||
groups="sf_base.group_quality_director"
|
||||
class="oe_highlight"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
</odoo>
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
'security/ir.model.access.csv',
|
||||
'views/sale_team.xml',
|
||||
'views/sale_order_view.xml',
|
||||
'views/purchase_order_view.xml',
|
||||
'views/quick_easy_order_view.xml'
|
||||
],
|
||||
'demo': [
|
||||
|
||||
@@ -74,3 +74,14 @@ class ResaleOrderLine(models.Model):
|
||||
_inherit = 'sale.order.line'
|
||||
|
||||
model_glb_file = fields.Binary('模型的glb文件')
|
||||
|
||||
|
||||
class RePurchaseOrder(models.Model):
|
||||
_inherit = 'purchase.order'
|
||||
|
||||
check_status = fields.Selection([('unchecked', '未审核'), ('checked', '已审核')], '审核状态', default='unchecked')
|
||||
|
||||
# 审核
|
||||
def action_check(self):
|
||||
self.check_status = 'checked'
|
||||
|
||||
|
||||
@@ -29,14 +29,54 @@
|
||||
<!-- <field name="perm_write" eval="1"/>-->
|
||||
<!-- </record>-->
|
||||
|
||||
<!-- <record model="ir.rule" id="sale_order_rule_salemanager">-->
|
||||
<!-- <field name="name">销售经理查看自己的订单</field>-->
|
||||
<!-- <field name="model_id" ref="model_sale_order"/>-->
|
||||
<!-- <field name="domain_force">['|',('partner_id','=',user.partner_id.id),('create_uid', '=',user.id)]</field>-->
|
||||
<!-- <field name="groups" eval="[(4, ref('sf_base.group_sale_salemanager'))]"/>-->
|
||||
<!-- <field name="perm_read" eval="1"/>-->
|
||||
<!-- <field name="perm_write" eval="1"/>-->
|
||||
<!-- <field name="perm_create" eval="1"/>-->
|
||||
<!-- </record>-->
|
||||
|
||||
<record model="ir.rule" id="sale_order_rule_salemanager">
|
||||
<field name="name">销售经理查看自己的订单</field>
|
||||
<field name="model_id" ref="model_sale_order"/>
|
||||
<field name="domain_force">['|',('partner_id','=',user.partner_id.id),('create_uid', '=',user.id)]</field>
|
||||
<field name="groups" eval="[(4, ref('sf_base.group_sale_salemanager'))]"/>
|
||||
<field name="perm_read" eval="1"/>
|
||||
<field name="perm_write" eval="1"/>
|
||||
<field name="perm_create" eval="1"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.rule" id="inventory_purchase_order_rule_director">
|
||||
<field name="name">采购总监查看所有的订单</field>
|
||||
<field name="model_id" ref="purchase.model_purchase_order"/>
|
||||
<field name="domain_force">[(1,'=',1)]</field>
|
||||
<field name="groups" eval="[(4, ref('sf_base.group_purchase_director'))]"/>
|
||||
<field name="perm_read" eval="1"/>
|
||||
<field name="perm_write" eval="1"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.rule" id="inventory_purchase_order_rule_my">
|
||||
<field name="name">采购岗查看自己的订单</field>
|
||||
<field name="model_id" ref="purchase.model_purchase_order"/>
|
||||
<field name="domain_force">['|',('user_id','=',user.id),('create_uid', '=',user.id)]</field>
|
||||
<field name="groups" eval="[(4, ref('sf_base.group_purchase'))]"/>
|
||||
<field name="perm_read" eval="1"/>
|
||||
<field name="perm_write" eval="1"/>
|
||||
<field name="perm_create" eval="1"/>
|
||||
</record>
|
||||
|
||||
|
||||
<record model="ir.rule" id="purchase_supplier_rule_director">
|
||||
<field name="name">采购总监查看所有供应商</field>
|
||||
<field name="model_id" ref="base.model_res_partner"/>
|
||||
<field name="domain_force">[(1,'=',1)]</field>
|
||||
<field name="groups" eval="[(4, ref('sf_base.group_purchase_director'))]"/>
|
||||
<field name="perm_read" eval="1"/>
|
||||
<field name="perm_write" eval="1"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.rule" id="purchase_supplier_rule_my">
|
||||
<field name="name">采购岗查看自己的供应商</field>
|
||||
<field name="model_id" ref="base.model_res_partner"/>
|
||||
<field name="domain_force">['|',('user_id','=',user.id),('create_uid', '=',user.id)]</field>
|
||||
<field name="groups" eval="[(4, ref('sf_base.group_purchase'))]"/>
|
||||
<field name="perm_read" eval="1"/>
|
||||
<field name="perm_write" eval="1"/>
|
||||
<field name="perm_create" eval="1"/>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
68
sf_sale/views/purchase_order_view.xml
Normal file
68
sf_sale/views/purchase_order_view.xml
Normal file
@@ -0,0 +1,68 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<odoo>
|
||||
<data>
|
||||
<record model="ir.ui.view" id="view_purchase_order_form_inherit_sf">
|
||||
<field name="name">purchase.order.form.inherit.sf</field>
|
||||
<field name="model">purchase.order</field>
|
||||
<field name="inherit_id" ref="purchase.purchase_order_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<!-- <xpath expr="//form/header/button[@name='button_confirm[1]']" position="after">-->
|
||||
<!-- <field name="check_status" invisible="1"/>-->
|
||||
<!-- <button name="action_check" string="审核" type="object"-->
|
||||
<!-- attrs="{'invisible': [('check_status','=', 'checked')]}"-->
|
||||
<!-- class="oe_highlight"/>-->
|
||||
<!-- </xpath>-->
|
||||
<!-- <xpath expr="//form/header/button[@name='button_confirm'][2]" position="attributes">-->
|
||||
<!-- <attribute name="attrs">{'invisible': [('check_status', '=', 'unchecked'),('state', 'in',-->
|
||||
<!-- ['draft'])]}-->
|
||||
<!-- </attribute>-->
|
||||
<!-- </xpath>-->
|
||||
<!-- <xpath expr="//form/header/button[@name='button_confirm[2]']" position="after">-->
|
||||
<!-- <field name="check_status" invisible="1"/>-->
|
||||
<!-- <button name="action_check" string="审核" type="object"-->
|
||||
<!-- attrs="{'invisible': [('check_status','=', 'checked')]}"-->
|
||||
<!-- class="oe_highlight"/>-->
|
||||
<!-- </xpath>-->
|
||||
<!-- <xpath expr="//form/header/button[@name='action_rfq_send[1]']" position="attributes">-->
|
||||
<!-- <attribute name="groups">sf_base.group_purchase</attribute>-->
|
||||
<!-- </xpath>-->
|
||||
<!-- <xpath expr="//form/header/button[@name='action_rfq_send[2]']" position="attributes">-->
|
||||
<!-- <attribute name="groups">sf_base.group_purchase</attribute>-->
|
||||
<!-- </xpath>-->
|
||||
<!-- <xpath expr="//form/header/button[@name='print_quotation[1]']" position="attributes">-->
|
||||
<!-- <attribute name="groups">sf_base.group_purchase</attribute>-->
|
||||
<!-- </xpath>-->
|
||||
<!-- <xpath expr="//form/header/button[@name='print_quotation[2]']" position="attributes">-->
|
||||
<!-- <attribute name="groups">sf_base.group_purchase</attribute>-->
|
||||
<!-- </xpath>-->
|
||||
<xpath expr="//form/header/button[@name='button_approve']" position="attributes">
|
||||
<attribute name="groups">sf_base.group_purchase</attribute>
|
||||
</xpath>
|
||||
|
||||
<!-- <xpath expr="//form/header/button[@name='action_create_invoice[1]']" position="attributes">-->
|
||||
<!-- <attribute name="groups">sf_base.group_purchase</attribute>-->
|
||||
<!-- </xpath>-->
|
||||
<!-- <xpath expr="//form/header/button[@name='action_create_invoice[2]']" position="attributes">-->
|
||||
<!-- <attribute name="groups">sf_base.group_purchase</attribute>-->
|
||||
<!-- </xpath>-->
|
||||
<xpath expr="//form/header/button[@name='confirm_reminder_mail']" position="attributes">
|
||||
<attribute name="groups">sf_base.group_purchase</attribute>
|
||||
</xpath>
|
||||
|
||||
<xpath expr="//form/header/button[@name='button_draft']" position="attributes">
|
||||
<attribute name="groups">sf_base.group_purchase</attribute>
|
||||
</xpath>
|
||||
<xpath expr="//form/header/button[@name='button_cancel']" position="attributes">
|
||||
<attribute name="groups">sf_base.group_purchase</attribute>
|
||||
</xpath>
|
||||
|
||||
<xpath expr="//form/header/button[@name='button_unlock']" position="attributes">
|
||||
<attribute name="groups">sf_base.group_purchase</attribute>
|
||||
</xpath>
|
||||
<xpath expr="//form/header/button[@name='button_done']" position="attributes">
|
||||
<attribute name="groups">sf_base.group_purchase</attribute>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
@@ -71,6 +71,9 @@
|
||||
<field name="model">sale.order</field>
|
||||
<field name="inherit_id" ref="sale.view_quotation_tree_with_onboarding"/>
|
||||
<field name="arch" type="xml">
|
||||
<tree position="attributes">
|
||||
<attribute name="delete">False</attribute>
|
||||
</tree>
|
||||
<field name="name" position="attributes">
|
||||
<attribute name="string">订单号</attribute>
|
||||
</field>
|
||||
|
||||
Reference in New Issue
Block a user