From 9d157d608379f48b737c872adc5c39c2e677de81 Mon Sep 17 00:00:00 2001
From: mgw <1392924357@qq.com>
Date: Mon, 6 May 2024 11:29:17 +0800
Subject: [PATCH 1/8] =?UTF-8?q?=E5=A4=84=E7=90=86=E5=B7=A5=E5=8D=95?=
=?UTF-8?q?=E5=8F=AF=E8=83=BD=E4=B8=BA=E8=AE=B0=E5=BD=95=E9=9B=86=E7=9A=84?=
=?UTF-8?q?=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
sf_manufacturing/models/mrp_workorder.py | 95 ++++++++++++------------
1 file changed, 48 insertions(+), 47 deletions(-)
diff --git a/sf_manufacturing/models/mrp_workorder.py b/sf_manufacturing/models/mrp_workorder.py
index 12d7505b..b32ffdce 100644
--- a/sf_manufacturing/models/mrp_workorder.py
+++ b/sf_manufacturing/models/mrp_workorder.py
@@ -772,55 +772,56 @@ class ResMrpWorkOrder(models.Model):
raise UserError(_('请先完成上一步工单'))
def button_finish(self):
- if self.routing_type == '装夹预调':
- if not self.material_center_point and self.X_deviation_angle > 0:
- raise UserError("请对前置三元检测定位参数进行计算定位")
- if not self.rfid_code:
- raise UserError("请扫RFID码进行绑定")
- self.workpiece_delivery_ids[0].write({'status': '待下发'})
+ for record in self:
+ if record.routing_type == '装夹预调':
+ if not record.material_center_point and record.X_deviation_angle > 0:
+ raise UserError("请对前置三元检测定位参数进行计算定位")
+ if not record.rfid_code:
+ raise UserError("请扫RFID码进行绑定")
+ record.workpiece_delivery_ids[0].write({'status': '待下发'})
- if self.routing_type == '解除装夹':
- '''
- 记录结束时间
- '''
- self.date_finished = datetime.now()
+ if record.routing_type == '解除装夹':
+ '''
+ 记录结束时间
+ '''
+ record.date_finished = datetime.now()
- if self.picking_out_id:
- picking_out = self.env['stock.picking'].search([('id', '=', self.picking_out_id.id)])
- if picking_out.workorder_out_id:
- order_line_ids = []
- for item in picking_out.workorder_out_id:
- server_product = self.env['product.template'].search(
- [('server_product_process_parameters_id', '=', item.surface_technics_parameters_id.id),
- ('detailed_type', '=', 'service')])
- if server_product:
- order_line_ids.append((0, 0, {
- 'product_id': server_product.product_variant_id.id,
- 'product_qty': 1,
- 'product_uom': server_product.uom_id.id
- }))
- else:
- raise UserError(
- '请先在产品中配置表面工艺为%s相关的外协服务产品' % item.surface_technics_parameters_id.name)
- self.env['purchase.order'].create({
- 'partner_id': server_product.seller_ids.partner_id.id,
- 'state': 'draft',
- 'order_line': order_line_ids,
- })
- super().button_finish()
- is_production_id = True
- for workorder in self.production_id.workorder_ids:
- if workorder.state != 'done':
- is_production_id = False
- if is_production_id == True and self.name == '解除装夹':
- for workorder in self.production_id.workorder_ids:
- workorder.rfid_code_old = workorder.rfid_code
- workorder.rfid_code = None
- for move_raw_id in self.production_id.move_raw_ids:
- move_raw_id.quantity_done = move_raw_id.product_uom_qty
- self.process_state = '已完工'
- self.production_id.button_mark_done1()
- # self.production_id.state = 'done'
+ if record.picking_out_id:
+ picking_out = record.env['stock.picking'].search([('id', '=', record.picking_out_id.id)])
+ if picking_out.workorder_out_id:
+ order_line_ids = []
+ for item in picking_out.workorder_out_id:
+ server_product = record.env['product.template'].search(
+ [('server_product_process_parameters_id', '=', item.surface_technics_parameters_id.id),
+ ('detailed_type', '=', 'service')])
+ if server_product:
+ order_line_ids.append((0, 0, {
+ 'product_id': server_product.product_variant_id.id,
+ 'product_qty': 1,
+ 'product_uom': server_product.uom_id.id
+ }))
+ else:
+ raise UserError(
+ '请先在产品中配置表面工艺为%s相关的外协服务产品' % item.surface_technics_parameters_id.name)
+ record.env['purchase.order'].create({
+ 'partner_id': server_product.seller_ids.partner_id.id,
+ 'state': 'draft',
+ 'order_line': order_line_ids,
+ })
+ super().button_finish()
+ is_production_id = True
+ for workorder in record.production_id.workorder_ids:
+ if workorder.state != 'done':
+ is_production_id = False
+ if is_production_id == True and record.name == '解除装夹':
+ for workorder in record.production_id.workorder_ids:
+ workorder.rfid_code_old = workorder.rfid_code
+ workorder.rfid_code = None
+ for move_raw_id in record.production_id.move_raw_ids:
+ move_raw_id.quantity_done = move_raw_id.product_uom_qty
+ record.process_state = '已完工'
+ record.production_id.button_mark_done1()
+ # self.production_id.state = 'done'
# 将FTP的检测报告文件下载到临时目录
def download_reportfile_tmp(self, workorder, reportpath):
From 5eacc017555a5329a7635156c9e01ec7d816c744 Mon Sep 17 00:00:00 2001
From: yuxianghui <3437689193@qq.com>
Date: Wed, 8 May 2024 16:50:13 +0800
Subject: [PATCH 2/8] =?UTF-8?q?1=E3=80=81=E8=A7=A3=E5=86=B3=20=E8=A3=85?=
=?UTF-8?q?=E5=A4=B9=E9=A2=84=E8=B0=83=E5=B7=A5=E5=8D=95=E6=89=AB=E6=8F=8F?=
=?UTF-8?q?Rfid=E7=A0=81=E6=97=B6=E6=8F=90=E7=A4=BA=E8=AF=AD=E7=9A=84?=
=?UTF-8?q?=E5=88=B6=E9=80=A0=E8=AE=A2=E5=8D=95=E5=8F=B7=E6=98=BE=E7=A4=BA?=
=?UTF-8?q?=E9=87=8D=E5=A4=8D=E4=BA=86=20=E7=9A=84=E7=BC=BA=E9=99=B7?=
=?UTF-8?q?=EF=BC=8C=20=E6=B7=BB=E5=8A=A0=E5=B7=A5=E5=8D=95=E6=89=AB?=
=?UTF-8?q?=E6=8F=8F=E7=9A=84Rfid=E4=B8=8D=E6=98=AF=E6=89=98=E7=9B=98?=
=?UTF-8?q?=E6=98=AF=E5=85=B6=E4=BB=96=E7=89=A9=E6=96=99=E7=9A=84=E6=8F=90?=
=?UTF-8?q?=E7=A4=BA=EF=BC=9B2=E3=80=81=E8=A7=A3=E5=86=B3=E5=88=80?=
=?UTF-8?q?=E5=85=B7=E7=AE=A1=E7=90=86=E6=A8=A1=E5=9D=97=E7=9A=84=E8=8F=9C?=
=?UTF-8?q?=E5=8D=95=E4=BE=9D=E8=B5=96=E9=97=AE=E9=A2=98=EF=BC=9B3?=
=?UTF-8?q?=E3=80=81=E7=AE=A1=E7=90=86=E5=91=98=E6=B7=BB=E5=8A=A0=E8=B4=A7?=
=?UTF-8?q?=E4=BD=8D=E7=9A=84=E6=93=8D=E4=BD=9C=E6=9D=83=E9=99=90?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
sf_manufacturing/models/mrp_workorder.py | 9 ++++++---
sf_tool_management/__manifest__.py | 2 +-
.../views/fixture_material_search_views.xml | 8 --------
sf_tool_management/views/menu_view.xml | 8 ++++++++
sf_warehouse/security/ir.model.access.csv | 1 +
5 files changed, 16 insertions(+), 12 deletions(-)
diff --git a/sf_manufacturing/models/mrp_workorder.py b/sf_manufacturing/models/mrp_workorder.py
index 25436081..8d42f33f 100644
--- a/sf_manufacturing/models/mrp_workorder.py
+++ b/sf_manufacturing/models/mrp_workorder.py
@@ -1040,10 +1040,11 @@ class SfWorkOrderBarcodes(models.Model):
workorder = self.env['mrp.workorder'].browse(self.ids)
# workorder_preset = self.env['mrp.workorder'].search(
# [('routing_type', '=', '装夹预调'), ('rfid_code', '=', barcode)])
- workorder_old = self.env['mrp.workorder'].search([('rfid_code', '=', barcode)])
- if workorder_old:
+ workorder_olds = self.env['mrp.workorder'].search(
+ [('routing_type', '=', '装夹预调'), ('rfid_code', '=', barcode)])
+ if workorder_olds:
name = ''
- for workorder in workorder_old:
+ for workorder in workorder_olds:
name = '%s %s' % (name, workorder.production_id.name)
raise UserError('该托盘已绑定【%s】制造订单,请先解除绑定!!!' % name)
if workorder:
@@ -1073,6 +1074,8 @@ class SfWorkOrderBarcodes(models.Model):
for item in workorder_rfid:
item.write({'rfid_code': barcode})
logging.info("Rfid绑定成功!!!")
+ else:
+ raise UserError('该Rfid【%s】绑定的是【%s】, 不是托盘!!!' % (barcode, lot.product_id.name))
self.process_state = '待检测'
self.date_start = datetime.now()
else:
diff --git a/sf_tool_management/__manifest__.py b/sf_tool_management/__manifest__.py
index fc556283..64d08d05 100644
--- a/sf_tool_management/__manifest__.py
+++ b/sf_tool_management/__manifest__.py
@@ -19,9 +19,9 @@
'views/functional_tool_views.xml',
'views/mrp_workcenter_views.xml',
'views/sf_maintenance_equipment.xml',
- 'views/menu_view.xml',
'views/tool_material_search.xml',
'views/fixture_material_search_views.xml',
+ 'views/menu_view.xml',
'data/tool_data.xml',
],
'demo': [
diff --git a/sf_tool_management/views/fixture_material_search_views.xml b/sf_tool_management/views/fixture_material_search_views.xml
index 546d968e..429be323 100644
--- a/sf_tool_management/views/fixture_material_search_views.xml
+++ b/sf_tool_management/views/fixture_material_search_views.xml
@@ -95,12 +95,4 @@
这里是异常提醒通知:
+ """ + + temp_mail_html += """ %s """ % error_message + mail_values['body_html'] = temp_mail_html + self.env['mail.mail'].sudo().create(mail_values).send(auto_commit=True) From 5c68dd45eef0d680d48bcd36a0eba61d9671dee7 Mon Sep 17 00:00:00 2001 From: mgw <1392924357@qq.com> Date: Thu, 9 May 2024 09:21:13 +0800 Subject: [PATCH 4/8] =?UTF-8?q?=E8=A1=A5=E5=85=85=E6=8F=90=E4=BA=A4?= =?UTF-8?q?=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sf_base/commons/__init__.py | 1 + 1 file changed, 1 insertion(+) diff --git a/sf_base/commons/__init__.py b/sf_base/commons/__init__.py index 63b820e7..da64fd48 100644 --- a/sf_base/commons/__init__.py +++ b/sf_base/commons/__init__.py @@ -1,2 +1,3 @@ from . import common from . import Printer +from . import Email From 4e84562ba7c1444610628a6e6485d4ffb0fb820e Mon Sep 17 00:00:00 2001 From: mgw <1392924357@qq.com> Date: Thu, 9 May 2024 09:43:54 +0800 Subject: [PATCH 5/8] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=8E=92=E7=A8=8B?= =?UTF-8?q?=E9=80=89=E6=8B=A9=E7=94=9F=E4=BA=A7=E7=BA=BFbug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sf_plan/models/custom_plan.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sf_plan/models/custom_plan.py b/sf_plan/models/custom_plan.py index bcb15d69..60618f1d 100644 --- a/sf_plan/models/custom_plan.py +++ b/sf_plan/models/custom_plan.py @@ -85,7 +85,7 @@ class sf_production_plan(models.Model): item.sudo().production_id.workorder_ids.filtered( lambda b: b.routing_type == "装夹预调").workpiece_delivery_ids.write( {'production_line_id': item.production_line_id.id, - 'plan_start_processing_time': item.plan_start_processing_time}) + 'plan_start_processing_time': item.date_planned_start}) # item.sudo().production_id.plan_start_processing_time = item.date_planned_start # @api.onchange('state') From 07cf13dce761039088f2b928058ff6b42852fba3 Mon Sep 17 00:00:00 2001 From: mgw <1392924357@qq.com> Date: Thu, 9 May 2024 10:09:26 +0800 Subject: [PATCH 6/8] =?UTF-8?q?sf=5Ft=E5=88=87=E6=8D=A2=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- odoo.conf | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/odoo.conf b/odoo.conf index 8db2413f..d07acc43 100644 --- a/odoo.conf +++ b/odoo.conf @@ -4,7 +4,8 @@ csv_internal_sep = , data_dir = /var/lib/odoo db_host = 172.17.0.2 db_maxconn = 64 -db_name = sf_t_0430 +# db_name = sf_t_0430 +db_name = t_240509 db_password = sf db_port = 5432 db_sslmode = prefer From 54a08802d9f4d649c87c441a9251633dc67f9857 Mon Sep 17 00:00:00 2001 From: "jinling.yang"