修复部分bug

This commit is contained in:
jinling.yang
2024-03-14 15:45:40 +08:00
parent 35e2e4354a
commit 02f1805505
6 changed files with 54 additions and 17 deletions

View File

@@ -22,7 +22,6 @@
<field name="materials_id" string="材料" placeholder="请选择" options="{'no_create': True}"
attrs="{'invisible': [('categ_type', 'not in', ['成品','坯料', '原材料'])],'readonly': [('id', '!=', False)]}"/>
<field name="materials_type_id" string="型号" placeholder="请选择" options="{'no_create': True}"
domain="[('materials_id', '=', materials_id)]"
attrs="{'invisible': [('categ_type', 'not in', ['成品','坯料', '原材料'])],'readonly': [('id', '!=', False)]}"/>
<field name="server_product_process_parameters_id" string="表面工艺参数"
options="{'no_create': True}"

View File

@@ -41,7 +41,8 @@ class ResProductMo(models.Model):
product_model_type_id = fields.Many2one('sf.model.type', string='产品模型类型')
embryo_model_type_id = fields.Many2one('sf.model.type', string='坯料模型类型')
materials_id = fields.Many2one('sf.production.materials', string='材料')
materials_type_id = fields.Many2one('sf.materials.model', string='材料型号')
materials_type_id = fields.Many2one('sf.materials.model', string='材料型号',
domain="[('materials_id', '=', materials_id)]")
server_product_process_parameters_id = fields.Many2one('sf.production.process.parameter',
string='表面工艺参数(服务产品)')
model_process_parameters_ids = fields.Many2many('sf.production.process.parameter', 'process_parameter_rel',

View File

@@ -3,6 +3,11 @@ import base64
from odoo import models, fields, api, _
from odoo.exceptions import UserError, ValidationError
READONLY_FIELD_STATES = {
state: [('readonly', True)]
for state in {'sale', 'done', 'cancel'}
}
class ReSaleOrder(models.Model):
_inherit = 'sale.order'
@@ -39,6 +44,12 @@ class ReSaleOrder(models.Model):
domain="['|', ('company_id', '=', False), ('company_id', '=', company_id)]")
remark = fields.Text('备注')
validity_date = fields.Date(
string="Expiration",
compute='_compute_validity_date',
store=True, readonly=False, copy=False, precompute=True,
states=READONLY_FIELD_STATES, default=fields.Datetime.now)
# 业务平台分配工厂后在智能工厂先创建销售订单
def sale_order_create(self, company_id, delivery_name, delivery_telephone, delivery_address,
deadline_of_delivery, payments_way, pay_way):

View File

@@ -24,6 +24,9 @@ access_stock_picking_group_sale_salemanager,stock_picking_group_sale_salemanager
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_stock_picking_group_purchase,stock_picking_group_purchase,stock.model_stock_picking,sf_base.group_purchase,1,1,1,0
access_stock_picking_group_purchase_director,stock_picking_group_purchase_director,stock.model_stock_picking,sf_base.group_purchase_director,1,1,1,0
access_stock_picking_group_quality,stock_picking_group_quality,stock.model_stock_picking,sf_base.group_quality,1,0,0,0
access_stock_picking_group_quality_director,stock_picking_group_quality_director,stock.model_stock_picking,sf_base.group_quality_director,1,0,0,0
access_account_move_group_sale_salemanager,account_move_group_sale_salemanager,account.model_account_move,sf_base.group_sale_salemanager,1,0,0,0
access_account_move_group_sale_director,account_move_group_sale_director,account.model_account_move,sf_base.group_sale_director,1,0,0,0
access_resource_resource_group_sale_director,resource_resource_group_sale_director,resource.model_resource_resource,sf_base.group_sale_director,1,1,1,0
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
24 access_stock_picking_group_sale_director stock_picking_group_sale_director stock.model_stock_picking sf_base.group_sale_director 1 0 0 0
25 access_stock_picking_group_purchase stock_picking_group_purchase stock.model_stock_picking sf_base.group_purchase 1 1 1 0
26 access_stock_picking_group_purchase_director stock_picking_group_purchase_director stock.model_stock_picking sf_base.group_purchase_director 1 1 1 0
27 access_stock_picking_group_quality stock_picking_group_quality stock.model_stock_picking sf_base.group_quality 1 0 0 0
28 access_stock_picking_group_quality_director stock_picking_group_quality_director stock.model_stock_picking sf_base.group_quality_director 1 0 0 0
29 access_account_move_group_sale_salemanager account_move_group_sale_salemanager account.model_account_move sf_base.group_sale_salemanager 1 0 0 0
30 access_account_move_group_sale_salemanager access_account_move_group_sale_director account_move_group_sale_salemanager account_move_group_sale_director account.model_account_move sf_base.group_sale_salemanager sf_base.group_sale_director 1 0 0 0
31 access_account_move_group_sale_director access_resource_resource_group_sale_director account_move_group_sale_director resource_resource_group_sale_director account.model_account_move resource.model_resource_resource sf_base.group_sale_director 1 0 1 0 1 0
32 access_resource_resource_group_sale_director access_mrp_bom_group_sale_salemanager resource_resource_group_sale_director mrp_bom_group_sale_salemanager resource.model_resource_resource mrp.model_mrp_bom sf_base.group_sale_director sf_base.group_sale_salemanager 1 1 0 1 0 0

View File

@@ -23,7 +23,8 @@
</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" groups="sf_base.group_purchase,sf_base.group_purchase_director"
string="确认订单" id="draft_confirm"
groups="sf_base.group_purchase,sf_base.group_purchase_director"
attrs="{'invisible': ['|','&amp;','&amp;', ('state', 'in', ['purchase','draft']), ('check_status', 'in', ['approved']), ('date_approve', '!=', False),'&amp;', '&amp;',('state', 'in', ['purchase', 'draft']),('check_status', 'in', [False, 'pending', 'fail']),('date_approve', '=', False)]}"
/>
<button name="button_confirming" type="object"
@@ -32,13 +33,19 @@
/>
</xpath>
<xpath expr="//form/header/button[@name='action_rfq_send'][1]" position="replace">
<button name="action_rfq_send" states="draft" string="通过Email发送采购单" type="object" context="{'send_rfq':True}" class="oe_highlight" data-hotkey="g" groups="sf_base.group_purchase,sf_base.group_purchase_director"/>
<button name="action_rfq_send" states="draft" string="通过Email发送采购单" type="object"
context="{'send_rfq':True}" class="oe_highlight" data-hotkey="g"
groups="sf_base.group_purchase,sf_base.group_purchase_director"/>
</xpath>
<xpath expr="//form/header/button[@name='action_rfq_send'][2]" position="replace">
<button name="action_rfq_send" states="sent" string="通过Email重新发送采购单" type="object" context="{'send_rfq':True}" data-hotkey="g" groups="sf_base.group_purchase,sf_base.group_purchase_director"/>
<button name="action_rfq_send" states="sent" string="通过Email重新发送采购单" type="object"
context="{'send_rfq':True}" data-hotkey="g"
groups="sf_base.group_purchase,sf_base.group_purchase_director"/>
</xpath>
<xpath expr="//form/header/button[@name='action_rfq_send'][3]" position="replace">
<button name="action_rfq_send" states="purchase" string="通过Email发送订单" type="object" context="{'send_rfq':False}" data-hotkey="g" groups="sf_base.group_purchase,sf_base.group_purchase_director"/>
<button name="action_rfq_send" states="purchase" string="通过Email发送订单" type="object"
context="{'send_rfq':False}" data-hotkey="g"
groups="sf_base.group_purchase,sf_base.group_purchase_director"/>
</xpath>
<!-- <xpath expr="//form/header/button[@name='print_quotation[1]']" position="attributes">-->
@@ -51,17 +58,20 @@
<attribute name="groups">sf_base.group_purchase,sf_base.group_purchase_director</attribute>
</xpath>
<xpath expr="//form/header/button[@name='action_create_invoice']" position="replace">
<!-- <attribute name="groups">sf_base.group_purchase,sf_base.group_purchase_director</attribute> -->
<button name="action_create_invoice" string="创建账单" type="object" class="oe_highlight" context="{'create_bill':True}" attrs="{'invisible': ['|', ('state', 'not in', ('purchase', 'done')), ('invoice_status', 'in', ('no', 'invoiced'))]}" data-hotkey="w" groups="sf_base.group_purchase,sf_base.group_purchase_director"/>
</xpath>
<xpath expr="//form/header/button[@name='action_create_invoice'][2]" position="attributes">
<attribute name="groups">sf_base.group_purchase,sf_base.group_purchase_director</attribute>
</xpath>
<xpath expr="//form/header/button[@name='button_confirm']" position="attributes">
<attribute name="groups">sf_base.group_purchase,sf_base.group_purchase_director</attribute>
<!-- <button name="action_create_invoice" string="创建账单" type="object" class="oe_highlight" context="{'create_bill':True}" attrs="{'invisible': ['|', ('state', 'not in', ('purchase', 'done')), ('invoice_status', 'in', ('no', 'invoiced'))]}" data-hotkey="w" groups="sf_base.group_purchase,sf_base.group_purchase_director"/> -->
</xpath>
<xpath expr="//form/header/button[@name='action_create_invoice']" position="replace">
<!-- <attribute name="groups">sf_base.group_purchase,sf_base.group_purchase_director</attribute> -->
<button name="action_create_invoice" string="创建账单" type="object" class="oe_highlight"
context="{'create_bill':True}"
attrs="{'invisible': ['|', ('state', 'not in', ('purchase', 'done')), ('invoice_status', 'in', ('no', 'invoiced'))]}"
data-hotkey="w" groups="sf_base.group_purchase,sf_base.group_purchase_director"/>
</xpath>
<xpath expr="//form/header/button[@name='action_create_invoice'][2]" position="attributes">
<attribute name="groups">sf_base.group_purchase,sf_base.group_purchase_director</attribute>
</xpath>
<xpath expr="//form/header/button[@name='button_confirm']" position="attributes">
<attribute name="groups">sf_base.group_purchase,sf_base.group_purchase_director</attribute>
<!-- <button name="action_create_invoice" string="创建账单" type="object" class="oe_highlight" context="{'create_bill':True}" attrs="{'invisible': ['|', ('state', 'not in', ('purchase', 'done')), ('invoice_status', 'in', ('no', 'invoiced'))]}" data-hotkey="w" groups="sf_base.group_purchase,sf_base.group_purchase_director"/> -->
</xpath>
<!-- <xpath expr="//form/header/button[@name='action_create_invoice[2]']" position="attributes">-->
<!-- <attribute name="groups">sf_base.group_purchase,sf_base.group_purchase_director</attribute>-->
<!-- </xpath>-->
@@ -171,5 +181,16 @@
</field>
</field>
</record>
<record id="purchase_order_search_inherit_sf" model="ir.ui.view">
<field name="name">purchase.order.list.select.inherit.sf</field>
<field name="model">purchase.order</field>
<field name="inherit_id" ref="purchase.view_purchase_order_filter"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='name']" position="replace">
<field name="name" string="单据编码" filter_domain="[('name', 'ilike', self)]"/>
</xpath>
</field>
</record>
</data>
</odoo>

View File

@@ -127,6 +127,8 @@ access_stock_scrap_group_purchase,stock_scrap_group_purchase,stock.model_stock_s
access_stock_scrap_group_purchase_director,stock_scrap_group_purchase_director,stock.model_stock_scrap,sf_base.group_purchase_director,1,0,0,0
access_stock_lot_group_purchase,stock_lot_group_purchase,stock.model_stock_lot,sf_base.group_purchase,1,0,0,0
access_stock_lot_group_purchase_director,stock_lot_group_purchase_director,stock.model_stock_lot,sf_base.group_purchase_director,1,0,0,0
access_stock_lot_group_quality,stock_lot_group_quality,stock.model_stock_lot,sf_base.group_quality,1,0,0,0
access_stock_lot_group_quality_director,stock_lot_group_quality_director,stock.model_stock_lot,sf_base.group_quality_director,1,0,0,0
access_mrp_workcenter_productivity_group_purchase,mrp_workcenter_productivity_group_purchase,mrp.model_mrp_workcenter_productivity,sf_base.group_purchase,1,0,0,0
access_mrp_workcenter_productivity_group_purchase_director,mrp_workcenter_productivity_group_purchase_director,mrp.model_mrp_workcenter_productivity,sf_base.group_purchase_director,1,0,0,0
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
127 access_sf_cutting_tool_standard_library_group_sf_stock_manager access_sf_feed_per_tooth_group_sf_stock_manager sf_cutting_tool_standard_library_group_sf_stock_manager sf_feed_per_tooth_group_sf_stock_manager sf_base.model_sf_cutting_tool_standard_library sf_base.model_sf_feed_per_tooth sf_warehouse.group_sf_stock_manager 1 0 1 0
128 access_sf_tool_materials_basic_parameters_group_sf_stock_manager access_sf_cutting_tool_material_group_sf_stock_manager sf_tool_materials_basic_parameters_group_sf_stock_manager sf_cutting_tool_material_group_sf_stock_manager sf_base.model_sf_tool_materials_basic_parameters sf_base.model_sf_cutting_tool_material sf_warehouse.group_sf_stock_manager 1 0 1 0
129 access_sf_cutting_tool_standard_library_group_sf_stock_manager sf_cutting_tool_standard_library_group_sf_stock_manager sf_base.model_sf_cutting_tool_standard_library sf_warehouse.group_sf_stock_manager 1 0 1 0
130 access_sf_tool_materials_basic_parameters_group_sf_stock_manager sf_tool_materials_basic_parameters_group_sf_stock_manager sf_base.model_sf_tool_materials_basic_parameters sf_warehouse.group_sf_stock_manager 1 0 1 0
131
132
133
134