Accept Merge Request #728: (feature/制造代码优化 -> develop)

Merge Request: 权限优化、代码优化、工单处增加一些字段

Created By: @马广威
Accepted By: @马广威
URL: https://jikimo-hn.coding.net/p/jikimo_sfs/d/jikimo_sf/git/merge/728
This commit is contained in:
马广威
2023-12-22 15:07:17 +08:00
committed by Coding
9 changed files with 99 additions and 77 deletions

View File

@@ -39,6 +39,7 @@ access_spindle_taper_type,spindle_taper_type,model_spindle_taper_type,base.group
access_purchase_order,purchase.order,purchase.model_purchase_order,sf_base.group_plan_dispatch,1,0,0,0
access_res_partner,res.partner,base.model_res_partner,sf_base.group_plan_dispatch,1,0,0,0
access_purchase_order_line,purchase.order.line,purchase.model_purchase_order_line,sf_base.group_plan_dispatch,1,0,0,0
access_account_move_line,account.move.line,account.model_account_move_line,sf_base.group_plan_dispatch,1,0,0,0
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
39 access_purchase_order_line access_res_partner purchase.order.line res.partner purchase.model_purchase_order_line base.model_res_partner sf_base.group_plan_dispatch 1 0 0 0
40 access_account_move_line access_purchase_order_line account.move.line purchase.order.line account.model_account_move_line purchase.model_purchase_order_line sf_base.group_plan_dispatch 1 0 0 0
41 access_account_move_line account.move.line account.model_account_move_line sf_base.group_plan_dispatch 1 0 0 0
42
43
44
45

View File

@@ -7,6 +7,8 @@ access_maintenance_standard_image,maintenance_standard_image,model_maintenance_s
access_sf_robot_axis_num,sf_robot_axis_num,model_sf_robot_axis_num,sf_group_equipment_user,1,1,1,1
access_maintenance_request,maintenance_request,model_maintenance_request,sf_base.group_plan_dispatch,1,0,0,0
access_maintenance_request,maintenance.request,maintenance.model_maintenance_request,sf_base.group_plan_dispatch,1,0,0,0
access_maintenance_equipment,maintenance_equipment,model_maintenance_equipment,sf_base.group_plan_dispatch,1,0,0,0
access_sf_maintenance_logs,sf_maintenance_logs,model_sf_maintenance_logs,sf_base.group_plan_dispatch,1,0,0,0
access_maintenance_standard_image,maintenance_standard_image,model_maintenance_standard_image,sf_base.group_plan_dispatch,1,0,0,0
access_equipment_maintenance_standards,equipment_maintenance_standards,model_equipment_maintenance_standards,sf_base.group_plan_dispatch,1,0,0,0
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
7 access_sf_robot_axis_num sf_robot_axis_num model_sf_robot_axis_num sf_group_equipment_user 1 1 1 1
8 access_maintenance_request maintenance_request maintenance.request model_maintenance_request maintenance.model_maintenance_request sf_base.group_plan_dispatch 1 0 0 0
9 access_sf_maintenance_logs access_maintenance_equipment sf_maintenance_logs maintenance_equipment model_sf_maintenance_logs model_maintenance_equipment sf_base.group_plan_dispatch 1 0 0 0
10 access_equipment_maintenance_standards access_sf_maintenance_logs equipment_maintenance_standards sf_maintenance_logs model_equipment_maintenance_standards model_sf_maintenance_logs sf_base.group_plan_dispatch 1 0 0 0
11 access_maintenance_standard_image maintenance_standard_image model_maintenance_standard_image sf_base.group_plan_dispatch 1 0 0 0
12 access_equipment_maintenance_standards equipment_maintenance_standards model_equipment_maintenance_standards sf_base.group_plan_dispatch 1 0 0 0
13
14

View File

@@ -105,6 +105,11 @@ class ResMrpWorkOrder(models.Model):
picking_out_id = fields.Many2one('stock.picking', string='外协出库单')
supplier_id = fields.Many2one('res.partner', string='外协供应商')
equipment_id = fields.Many2one('maintenance.equipment', string='加工设备')
is_ok = fields.Boolean(string='是否合格')
# 加工人
processing_user_id = fields.Many2one('res.users', string='加工人')
# 检测人
inspection_user_id = fields.Many2one('res.users', string='检测人')
schedule_state = fields.Selection(related='production_id.schedule_state', store=True)
# 工件装夹信息
functional_fixture_code = fields.Char(string="功能夹具编码", readonly=True)

View File

@@ -102,6 +102,7 @@ access_sf_product_model_type_routing_sort,sf.product.model.type.routing.sort,mod
access_sf_embryo_model_type_routing_sort,sf.embryo.model.type.routing.sort,model_sf_embryo_model_type_routing_sort,sf_base.group_plan_dispatch,1,0,0,0
access_sf_surface_technics_model_type_routing_sort,sf.surface_technics.model.type.routing.sort,model_sf_surface_technics_model_type_routing_sort,sf_base.group_plan_dispatch,1,0,0,0
access_mrp_workcenter_capacity,mrp.workcenter.capacity,mrp.model_mrp_workcenter_capacity,sf_base.group_plan_dispatch,1,0,0,0
access_sf_cnc_processing,sf.cnc.processing,model_sf_cnc_processing,sf_base.group_plan_dispatch,1,0,0,0
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
102 access_mrp_workcenter_capacity mrp.workcenter.capacity mrp.model_mrp_workcenter_capacity sf_base.group_plan_dispatch 1 0 0 0
103 access_mrp_workcenter_productivity access_sf_cnc_processing mrp.workcenter.productivity sf.cnc.processing mrp.model_mrp_workcenter_productivity model_sf_cnc_processing sf_base.group_plan_dispatch 1 0 0 0
104 access_mrp_workcenter_productivity mrp.workcenter.productivity mrp.model_mrp_workcenter_productivity sf_base.group_plan_dispatch 1 0 0 0
105
106
107
108

View File

@@ -61,10 +61,10 @@
<xpath expr="//form//header//button[@name='action_confirm']" position="after">
<field name="active" invisible="1"/>
<field name="check_status" invisible="1"/>
<button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/>
<button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/>
<button name="action_check" string="启用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/> -->
<!-- <button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/> -->
<button name="action_check" string="审核" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/> -->
</xpath>
</field>

View File

@@ -453,6 +453,19 @@
</page>
</xpath>
<xpath expr="//form//sheet//group//group//div[1]" position="after">
<label for="date_start" string="实际开始时间"/>
<div class="oe_inline">
<field name="date_start" class="mr8 oe_inline"/>
<strong class="mr8 oe_inline"></strong>
<field name="date_finished" class="oe_inline"/>
</div>
</xpath>
<xpath expr="//form//sheet//group//group//div[3]" position="after">
<field name="is_ok"/>
<field name="processing_user_id"/>
<field name="inspection_user_id"/>
</xpath>
</field>
</record>

View File

@@ -10,10 +10,10 @@
<xpath expr="//form//header//button[@name='action_validate']" position="after">
<field name="active" invisible="1"/>
<field name="check_status" invisible="1"/>
<button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/>
<button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/>
<button name="action_check" string="启用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/> -->
<!-- <button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/> -->
<button name="action_check" string="审核" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/> -->
</xpath>
</field>
</record>
@@ -27,10 +27,10 @@
<xpath expr="//form//header//button[@name='action_validate']" position="after">
<field name="active" invisible="1"/>
<field name="check_status" invisible="1"/>
<button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/>
<button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/>
<button name="action_check" string="启用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/> -->
<!-- <button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/> -->
<button name="action_check" string="审核" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/> -->
</xpath>
</field>
</record>
@@ -44,10 +44,10 @@
<xpath expr="//form//header" position="inside">
<field name="active" invisible="1"/>
<field name="check_status" invisible="1"/>
<button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/>
<button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/>
<button name="action_check" string="启用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/> -->
<!-- <button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/> -->
<button name="action_check" string="审核" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/> -->
</xpath>
</field>
</record>
@@ -62,10 +62,10 @@
<header>
<field name="active" invisible="1"/>
<field name="check_status" invisible="1"/>
<button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/>
<button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/>
<button name="action_check" string="启用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/> -->
<!-- <button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/> -->
<button name="action_check" string="审核" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/> -->
</header>
</xpath>
</field>
@@ -81,10 +81,10 @@
<header>
<field name="active" invisible="1"/>
<field name="check_status" invisible="1"/>
<button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/>
<button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/>
<button name="action_check" string="启用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/> -->
<!-- <button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/> -->
<button name="action_check" string="审核" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/> -->
</header>
</xpath>
</field>
@@ -100,10 +100,10 @@
<header>
<field name="active" invisible="1"/>
<field name="check_status" invisible="1"/>
<button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/>
<button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/>
<button name="action_check" string="启用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/> -->
<!-- <button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/> -->
<button name="action_check" string="审核" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/> -->
</header>
</xpath>
</field>
@@ -119,10 +119,10 @@
<header>
<field name="active" invisible="1"/>
<field name="check_status" invisible="1"/>
<button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/>
<button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/>
<button name="action_check" string="启用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/> -->
<!-- <button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/> -->
<button name="action_check" string="审核" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/> -->
</header>
</xpath>
</field>
@@ -138,10 +138,10 @@
<header>
<field name="active" invisible="1"/>
<field name="check_status" invisible="1"/>
<button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/>
<button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/>
<button name="action_check" string="启用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/> -->
<!-- <button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/> -->
<button name="action_check" string="审核" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/> -->
</header>
</xpath>
</field>
@@ -157,10 +157,10 @@
<header>
<field name="active" invisible="1"/>
<field name="check_status" invisible="1"/>
<button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/>
<button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/>
<button name="action_check" string="启用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="archive" type="object" string="归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', False)]}"/> -->
<!-- <button name="unarchive" type="object" string="取消归档" icon="fa-archive" class="oe_highlight" attrs="{'invisible': [('active', '=', True)]}"/> -->
<button name="action_check" string="审核" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', True)]}" groups="sf_base.group_plan_director"/>
<!-- <button name="action_uncheck" string="禁用" type="object" class="oe_highlight" attrs="{'invisible': [('check_status', '=', False)]}" groups="sf_base.group_plan_director"/> -->
</header>
</xpath>
</field>

View File

@@ -322,13 +322,13 @@
action="mrp_custom_action"
parent="sf_production_plan_menu"
/>
<menuitem
id="sale_custom_menu"
name="报价单"
sequence="50"
action="sale_custom_action"
parent="sf_production_plan_menu"
/>
<!-- <menuitem -->
<!-- id="sale_custom_menu" -->
<!-- name="报价单" -->
<!-- sequence="50" -->
<!-- action="sale_custom_action" -->
<!-- parent="sf_production_plan_menu" -->
<!-- /> -->
<menuitem
id="schedule_custom_menu"
name="排程单"

View File

@@ -1,39 +1,39 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<menuitem id="menu_sf_basic_setting"
name="基础设置"
parent="sf_plan.sf_production_plan_menu"
sequence="599"
/>
<!-- <menuitem id="menu_sf_basic_setting" -->
<!-- name="基础设置" -->
<!-- parent="sf_plan.sf_production_plan_menu" -->
<!-- sequence="599" -->
<!-- /> -->
<menuitem id="menu_sf_procedure_equipment_resource_setting"
name="产线设备资源设置"
parent="menu_sf_basic_setting"
action="sf_procedure_equipment_resource_setting_act"
sequence="0"
/>
<menuitem id="menu_sf_work_log_setting"
name="工作日历设置"
parent="menu_sf_basic_setting"
action="sf_work_log_setting_act"
sequence="10"
/>
<!-- <menuitem id="menu_sf_procedure_equipment_resource_setting" -->
<!-- name="产线设备资源设置" -->
<!-- parent="menu_sf_basic_setting" -->
<!-- action="sf_procedure_equipment_resource_setting_act" -->
<!-- sequence="0" -->
<!-- /> -->
<!-- <menuitem id="menu_sf_work_log_setting" -->
<!-- name="工作日历设置" -->
<!-- parent="menu_sf_basic_setting" -->
<!-- action="sf_work_log_setting_act" -->
<!-- sequence="10" -->
<!-- /> -->
<menuitem id="menu_sf_working_shift"
name="班次"
parent="menu_sf_basic_setting"
action="sf_working_shift_act"
sequence="12"
/>
<!-- <menuitem id="menu_sf_working_shift" -->
<!-- name="班次" -->
<!-- parent="menu_sf_basic_setting" -->
<!-- action="sf_working_shift_act" -->
<!-- sequence="12" -->
<!-- /> -->
<menuitem id="menu_sf_day_off"
name="休息日"
parent="menu_sf_basic_setting"
action="sf_day_off_act"
sequence="15"
/>
<!-- <menuitem id="menu_sf_day_off" -->
<!-- name="休息日" -->
<!-- parent="menu_sf_basic_setting" -->
<!-- action="sf_day_off_act" -->
<!-- sequence="15" -->
<!-- /> -->
<!-- <menuitem id="menu_sf_work_schedule_calendar"-->
<!-- name="工作日历"-->