Merge branch 'feature/销售单优化' into feature/销售、刀具模块优化
This commit is contained in:
@@ -20,7 +20,8 @@
|
||||
'views/sale_order_view.xml',
|
||||
'views/res_partner_view.xml',
|
||||
'views/purchase_order_view.xml',
|
||||
'views/quick_easy_order_view.xml'
|
||||
'views/quick_easy_order_view.xml',
|
||||
'views/purchase_menu.xml'
|
||||
],
|
||||
'assets': {
|
||||
'web.assets_backend': [
|
||||
|
||||
@@ -13,6 +13,11 @@ READONLY_FIELD_STATES = {
|
||||
class ReSaleOrder(models.Model):
|
||||
_inherit = 'sale.order'
|
||||
|
||||
mrp_production_count = fields.Integer(
|
||||
"Count of MO generated",
|
||||
compute='_compute_mrp_production_ids',
|
||||
groups='mrp.group_mrp_user,sf_base.group_sale_salemanager,sf_base.group_sale_director')
|
||||
|
||||
logistics_way = fields.Selection([('自提', '自提'), ('到付', '到付'), ('在线支付', '在线支付')], string='物流方式')
|
||||
state = fields.Selection(
|
||||
selection=[
|
||||
|
||||
@@ -96,5 +96,28 @@ access_product_supplierinfo_group_plan_director,product.supplierinfo user,produc
|
||||
access_product_category_group_plan_director,product.category user,product.model_product_category,sf_base.group_plan_director,1,1,1,0
|
||||
|
||||
|
||||
access_purchase_report_sf_base_group_purchase,purchase_report_sf_base_group_purchase,purchase.model_purchase_report,sf_base.group_purchase,1,0,0,0
|
||||
access_purchase_report_sf_base_group_purchase_director,purchase_report_sf_base_group_purchase_director,purchase.model_purchase_report,sf_base.group_purchase_director,1,0,0,0
|
||||
access_sale_order_sf_base_group_purchase,sale_order_sf_base_group_purchase,model_sale_order,sf_base.group_purchase,1,0,0,0
|
||||
access_sale_order_sf_base_group_purchase_director,sale_order_sf_base_group_purchase_director,model_sale_order,sf_base.group_purchase_director,1,0,0,0
|
||||
|
||||
|
||||
access_quality_check_group_sale_salemanager,quality_check_group_sale_salemanager,quality.model_quality_check,sf_base.group_sale_salemanager,1,0,0,0
|
||||
access_quality_check_group_sale_director,quality_check_group_sale_director,quality.model_quality_check,sf_base.group_sale_director,1,0,0,0
|
||||
access_stock_picking_group_sale_salemanager,stock_picking_group_sale_salemanager,stock.model_stock_picking,sf_base.group_sale_salemanager,1,0,0,0
|
||||
access_stock_picking_group_sale_director,stock_picking_group_sale_director,stock.model_stock_picking,sf_base.group_sale_director,1,0,0,0
|
||||
access_mrp_workorder_group_sale_salemanager,mrp_workorder_group_sale_salemanager,mrp.model_mrp_workorder,sf_base.group_sale_salemanager,1,0,0,0
|
||||
access_mrp_workorder_group_sale_director,mrp_workorder_group_sale_director,mrp.model_mrp_workorder,sf_base.group_sale_director,1,0,0,0
|
||||
access_mrp_unbuild_group_sale_salemanager,mrp_unbuild_group_sale_salemanager,mrp.model_mrp_unbuild,sf_base.group_sale_salemanager,1,0,0,0
|
||||
access_mrp_unbuild_group_sale_director,mrp_unbuild_group_sale_director,mrp.model_mrp_unbuild,sf_base.group_sale_director,1,0,0,0
|
||||
access_mrp_workcenter_productivity_group_sale_salemanager,mrp_workcenter_productivity_group_sale_salemanager,mrp.model_mrp_workcenter_productivity,sf_base.group_sale_salemanager,1,0,0,0
|
||||
access_mrp_workcenter_productivity_group_sale_director,mrp_workcenter_productivity_group_sale_director,mrp.model_mrp_workcenter_productivity,sf_base.group_sale_director,1,0,0,0
|
||||
access_sf_detection_result_group_sale_salemanager,sf_detection_result_group_sale_salemanager,sf_manufacturing.model_sf_detection_result,sf_base.group_sale_salemanager,1,0,0,0
|
||||
access_sf_detection_result_group_sale_director,sf_detection_result_group_sale_director,sf_manufacturing.model_sf_detection_result,sf_base.group_sale_director,1,0,0,0
|
||||
access_stock_scrap_group_sale_salemanager,stock_scrap_group_sale_salemanager,stock.model_stock_scrap,sf_base.group_sale_salemanager,1,0,0,0
|
||||
access_stock_scrap_group_sale_director,stock_scrap_group_sale_director,stock.model_stock_scrap,sf_base.group_sale_director,1,0,0,0
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
23
sf_sale/views/purchase_menu.xml
Normal file
23
sf_sale/views/purchase_menu.xml
Normal file
@@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<odoo>
|
||||
|
||||
<!-- 采购-产品 -->
|
||||
<menuitem id="purchase.menu_purchase_products" name="Products" parent="purchase.menu_purchase_root"
|
||||
groups="sf_base.group_purchase_director,sf_base.group_purchase"
|
||||
sequence="5"/>
|
||||
<!-- 采购-产品-产品 -->
|
||||
<menuitem id="purchase.menu_procurement_partner_contact_form" name="Products"
|
||||
action="purchase.product_normal_action_puchased" parent="purchase.menu_purchase_products"
|
||||
groups="sf_base.group_purchase_director,sf_base.group_purchase"
|
||||
sequence="20"/>
|
||||
|
||||
<!-- 采购-报表 -->
|
||||
<menuitem id="purchase.purchase_report_main" name="Reporting" parent="purchase.menu_purchase_root" sequence="99"
|
||||
groups="purchase.group_purchase_manager,sf_base.group_purchase_director,sf_base.group_purchase"/>
|
||||
<!-- 采购-报表-采购 -->
|
||||
<menuitem id="purchase.purchase_report" name="Purchase" parent="purchase.purchase_report_main" sequence="99"
|
||||
groups="purchase.group_purchase_manager,sf_base.group_purchase_director,sf_base.group_purchase"
|
||||
action="purchase.action_purchase_order_report_all"/>
|
||||
|
||||
|
||||
</odoo>
|
||||
@@ -86,6 +86,18 @@
|
||||
</attribute>
|
||||
</xpath>
|
||||
|
||||
<xpath expr="//form/sheet/div[@name='button_box']/button[@name='action_view_picking']"
|
||||
position="replace">
|
||||
<button type="object"
|
||||
name="action_view_picking"
|
||||
class="oe_stat_button"
|
||||
icon="fa-truck" attrs="{'invisible':[('incoming_picking_count','=', 0)]}"
|
||||
groups="stock.group_stock_user,sf_base.group_purchase,sf_base.group_purchase_director">
|
||||
<field name="incoming_picking_count" widget="statinfo" string="收货"
|
||||
help="Incoming Shipments"/>
|
||||
</button>
|
||||
</xpath>
|
||||
|
||||
<xpath expr="//field[@name='order_line']" position="attributes">
|
||||
<attribute name="attrs">{'readonly': [('state', 'in', ['purchase'])]}
|
||||
</attribute>
|
||||
|
||||
@@ -6,6 +6,13 @@
|
||||
<field name="model">sale.order</field>
|
||||
<field name="inherit_id" ref="sale.view_order_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//button[@name='action_view_delivery']" position="attributes">
|
||||
<attribute name="groups">sf_base.group_sale_salemanager,sf_base.group_sale_director</attribute>
|
||||
</xpath>
|
||||
<xpath expr="//button[@name='action_view_mrp_production']" position="attributes">
|
||||
<attribute name="groups">mrp.group_mrp_user,sf_base.group_sale_salemanager,sf_base.group_sale_director
|
||||
</attribute>
|
||||
</xpath>
|
||||
<xpath expr="//field[@name='user_id']" position="replace">
|
||||
<field name="user_id" widget="many2one_avatar_user" context="{'is_sale': True }"/>
|
||||
</xpath>
|
||||
@@ -35,12 +42,12 @@
|
||||
<xpath expr="//form/header/button[@name='action_confirm'][2]" position="replace">
|
||||
<button name="action_confirm" data-hotkey="v"
|
||||
string="确认接单" type="object" context="{'validate_analytic': True}"
|
||||
attrs="{'invisible': ['|','&',('check_status', '!=', 'approved'),('state', 'in', ['draft','cancel']),'&','&',('check_status', '=', 'approved'),('state', 'in', ['sale','cancel']),('delivery_status', '!=', False)]}"/>
|
||||
attrs="{'invisible': ['|','&','|',('check_status', '!=', 'approved'),('state', 'in', ['draft','cancel']),'&','&',('check_status', '=', 'approved'),('state', 'in', ['sale','cancel']),('delivery_status', '!=', False),('state', 'in', ['cancel'])]}"/>
|
||||
</xpath>
|
||||
<xpath expr="//form/header/button[@name='action_cancel']" position="attributes">
|
||||
<attribute name="attrs">{'invisible': ['|','&',('check_status', '!=', 'approved'),('state',
|
||||
<attribute name="attrs">{'invisible': ['|','&','|', ('check_status', '!=', 'approved'),('state',
|
||||
'in', ['draft','cancel']),'&','&',('check_status', '=', 'approved'),('state', 'in',
|
||||
['sale','cancel']),('delivery_status', '!=', False)]}
|
||||
['sale','cancel']),('delivery_status', '!=', False), ('state', 'in', ['cancel'])]}
|
||||
</attribute>
|
||||
</xpath>
|
||||
<xpath expr="//form/header/button[@name='action_draft']" position="attributes">
|
||||
|
||||
Reference in New Issue
Block a user