优化采购和销售
This commit is contained in:
@@ -6,45 +6,51 @@
|
||||
<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>-->
|
||||
<field name="currency_id" position="after">
|
||||
<field name="check_status"/>
|
||||
<field name="state"/>
|
||||
<field name="remark"/>
|
||||
</field>
|
||||
<xpath expr="//form/header/button[@name='action_rfq_send'][1]" position="after">
|
||||
<button name="sf_sale.action_purchase_order_check_wizard" string="审核" type="action"
|
||||
context="{'default_order_id':active_id}" groups="sf_base.group_purchase_director"
|
||||
attrs="{'invisible': ['&',('check_status','in', ['approved']),('state', 'in', ['draft','send'])]}"
|
||||
class="oe_highlight"/>
|
||||
</xpath>
|
||||
<xpath expr="//form/header/button[@name='button_confirm'][2]" position="replace">
|
||||
<button name="button_confirm" type="object" context="{'validate_analytic': True}"
|
||||
string="确认订单" id="draft_confirm"
|
||||
attrs="{'invisible': ['&',('check_status','in', ['approved',False,'fail']),('state', 'in', ['draft'])]}"
|
||||
/>
|
||||
</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='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>
|
||||
@@ -64,5 +70,19 @@
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_purchase_order_kpis_tree_inherit_sf" model="ir.ui.view">
|
||||
<field name="name">purchase.order.tree.inherit.sf</field>
|
||||
<field name="model">purchase.order</field>
|
||||
<field name="inherit_id" ref="purchase.purchase_order_kpis_tree"/>
|
||||
<field name="arch" type="xml">
|
||||
<field name="state" position="after">
|
||||
<field name="check_status" widget="badge"
|
||||
decoration-success="check_status == 'approved'"
|
||||
decoration-warning="check_status == 'pending'"
|
||||
decoration-danger="check_status == 'fail'"/>
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
@@ -6,30 +6,82 @@
|
||||
<field name="model">res.partner</field>
|
||||
<field name="inherit_id" ref="base.view_partner_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<field name="vat" position="replace">
|
||||
<field name="vat" attrs="{'required' : [('company_type', '=', 'company')]}"/>
|
||||
<field name="vat" position="after">
|
||||
<field name="customer_rank" invisible="1"/>
|
||||
<field name="supplier_rank" invisible="1"/>
|
||||
</field>
|
||||
<field name="vat" position="attributes">
|
||||
<attribute name="required">1</attribute>
|
||||
</field>
|
||||
<field name="email" position="replace">
|
||||
<field name="email" required="1"/>
|
||||
<field name="email" attrs="{'required' : [('customer_rank','>', 0)]}"/>
|
||||
</field>
|
||||
<field name="mobile" position="attributes">
|
||||
<attribute name="attrs">{'required': [('phone', '=', False),('company_type','=', 'company')]}
|
||||
<attribute name="attrs">{'required': [('phone', '=', False)]}
|
||||
</attribute>
|
||||
</field>
|
||||
<field name="phone" position="attributes">
|
||||
<attribute name="attrs">{'required': [('mobile', '=', False),('company_type','=', 'company')]}
|
||||
<attribute name="attrs">{'required': [('mobile', '=', False)]}
|
||||
</attribute>
|
||||
</field>
|
||||
<field name="street" position="attributes">
|
||||
<attribute name="attrs">{'required': [('supplier_rank','>', 0)]}
|
||||
</attribute>
|
||||
</field>
|
||||
<field name="street2" position="attributes">
|
||||
<attribute name="attrs">{'required': [('supplier_rank','>', 0)]}
|
||||
</attribute>
|
||||
</field>
|
||||
<field name="city" position="attributes">
|
||||
<attribute name="attrs">{'required': [('supplier_rank','>', 0)]}
|
||||
</attribute>
|
||||
</field>
|
||||
<field name="country_id" position="attributes">
|
||||
<attribute name="attrs">{'required': [('supplier_rank','>', 0)]}
|
||||
</attribute>
|
||||
</field>
|
||||
<xpath expr="//group[@name='sale']/field[@name='user_id']" position="replace">
|
||||
<field name="user_id" widget="many2one_avatar_user" context="{'is_sale': True }"
|
||||
attrs="{'required' : [('company_type', '=', 'company')]}"/>
|
||||
attrs="{'required' : [('customer_rank','>', 0)],'readonly': [('supplier_rank','>', 0)]}"/>
|
||||
</xpath>
|
||||
<field name="category_id" position="attributes">
|
||||
<attribute name="attrs">{'required': [('company_type', '=', 'company')]}</attribute>
|
||||
<attribute name="required">1</attribute>
|
||||
<!-- <attribute name="attrs">{'required': ['|',('customer_rank','>', 0),('supplier_rank','>', 0)]}</attribute>-->
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="view_partner_property_form_inherit_sf">
|
||||
<field name="name">res.partner.property.form.inherit.sf</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="inherit_id" ref="account.view_partner_property_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<field name="property_supplier_payment_term_id" position="before">
|
||||
<field name="purchase_user_id" context="{'supplier_rank': supplier_rank }"
|
||||
widget="many2one_avatar_user"
|
||||
attrs="{'required' : [('supplier_rank','>', 0)],'readonly': [('customer_rank','>', 0)]}"/>
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="view_partner_property_form_inherit_sf">
|
||||
<field name="name">res.partner.property.form.inherit.sf</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="inherit_id" ref="base.view_partner_tree"/>
|
||||
<field name="arch" type="xml">
|
||||
<field name="function" position="before">
|
||||
<field name="customer_rank" invisible="1"/>
|
||||
<field name="supplier_rank" invisible="1"/>
|
||||
</field>
|
||||
<field name="user_id" position="attributes">
|
||||
<attribute name="attrs">{'invisible': [('customer_rank','=', 0)]}
|
||||
</attribute>
|
||||
</field>
|
||||
<field name="user_id" position="before">
|
||||
<field name="purchase_user_id" widget="many2one_avatar_user"
|
||||
attrs="{'invisible' : [('supplier_rank','=', 0)]}"/>
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
Reference in New Issue
Block a user