diff --git a/sf_manufacturing/models/stock.py b/sf_manufacturing/models/stock.py
index 82c3db26..6363cbd3 100644
--- a/sf_manufacturing/models/stock.py
+++ b/sf_manufacturing/models/stock.py
@@ -694,8 +694,8 @@ class StockPicking(models.Model):
picking_in = self.create(
moves_in._get_new_picking_values_Res(item, workorder, 'WH/OCIN/'))
# pick_ids.append(picking_in.id)
- moves_in.write(
- {'picking_id': picking_in.id, 'state': 'waiting'})
+ moves_in.write({'picking_id': picking_in.id})
+ moves_in._action_confirm()
moves_in._assign_picking_post_process(new=new_picking)
# self.env.context.get('default_production_id')
moves_out = self.env['stock.move'].sudo().with_context(context).create(
@@ -705,8 +705,8 @@ class StockPicking(models.Model):
picking_out = self.create(
moves_out._get_new_picking_values_Res(item, workorder, 'WH/OCOUT/'))
# pick_ids.append(picking_out.id)
- moves_out.write(
- {'picking_id': picking_out.id, 'state': 'waiting'})
+ moves_out.write({'picking_id': picking_out.id})
+ moves_out._action_confirm()
moves_out._assign_picking_post_process(new=new_picking)
@api.depends('move_type', 'immediate_transfer', 'move_ids.state', 'move_ids.picking_id')
diff --git a/sf_message/models/sf_message_stock_picking.py b/sf_message/models/sf_message_stock_picking.py
index c60a43e1..c6f91b93 100644
--- a/sf_message/models/sf_message_stock_picking.py
+++ b/sf_message/models/sf_message_stock_picking.py
@@ -30,7 +30,9 @@ class SFMessageStockPicking(models.Model):
for record in self:
if (record.state == 'assigned' and record.picking_type_id.sequence_code == 'PC'
and record.product_id.categ_id.type == '坯料'):
- record.add_queue('坯料发料提醒')
+ jikimo_message_queue = record.get_message_queue(record.id)
+ if not jikimo_message_queue:
+ record.add_queue('坯料发料提醒')
if record.picking_type_id.sequence_code == 'SFP' and record.state == 'done':
stock_picking_sfp = record.env['stock.picking'].search(
@@ -129,3 +131,14 @@ class SFMessageStockPicking(models.Model):
# 拼接URL
full_url = url + "/web#" + query_string
return full_url
+
+ def get_message_queue(self, res_id):
+ business_node_id = self.env.ref('sf_message.bussiness_material_picking_remind').id
+ message_template = self.env["jikimo.message.template"].sudo().search([
+ ("model", "=", self._name),
+ ("bussiness_node_id", "=", business_node_id)
+ ], limit=1)
+ jikimo_message_queue = self.env['jikimo.message.queue'].sudo().search(
+ [('res_id', '=', res_id), ("message_status", "in", ("pending", "sent")),
+ ('message_template_id', '=', message_template.id)])
+ return jikimo_message_queue
diff --git a/sf_warehouse/views/change_stock_move_views.xml b/sf_warehouse/views/change_stock_move_views.xml
index 8feacf75..641a4ec2 100644
--- a/sf_warehouse/views/change_stock_move_views.xml
+++ b/sf_warehouse/views/change_stock_move_views.xml
@@ -157,7 +157,9 @@
groups="sf_base.group_sf_stock_user"/>
-
+
@@ -165,6 +167,18 @@
+
+ stock.picking.type.kanban.view.inherit
+ stock.picking.type
+
+
+
+
+ {'stock_type': name}
+
+
+
+
sf.stock.move.operations.form
stock.move