diff --git a/sf_manufacturing/models/mrp_workcenter.py b/sf_manufacturing/models/mrp_workcenter.py index 7483d188..525c2f54 100644 --- a/sf_manufacturing/models/mrp_workcenter.py +++ b/sf_manufacturing/models/mrp_workcenter.py @@ -6,6 +6,9 @@ from odoo.addons.resource.models.resource import Intervals class ResWorkcenter(models.Model): _inherit = "mrp.workcenter" + + # 生产线显示 + production_line_show = fields.Char(string='生产线') equipment_id = fields.Many2one('maintenance.equipment', string='设备') machine_tool_id = fields.Many2one('sf.machine_tool', string='机床') production_line_id = fields.Many2one('sf.production.line', string='生产线') diff --git a/sf_manufacturing/static/src/js/kanban_change.js b/sf_manufacturing/static/src/js/kanban_change.js index b60a84a4..5e2bd5e9 100644 --- a/sf_manufacturing/static/src/js/kanban_change.js +++ b/sf_manufacturing/static/src/js/kanban_change.js @@ -15,8 +15,33 @@ class CustomKanbanController extends KanbanController { this.workOrders = await this.getAllWorkOrders(); console.log('lines', this.workOrders); } + buttonClick(ev) { + const button = ev.currentTarget; + const id = button.getAttribute('data-id'); + + console.log('true_id', id); + const context = {production_line_show: 'shengchanxian1'} + this.env.services.rpc('/web/dataset/call_kw', { + model: 'mrp.workcenter', + method: 'search_read', + args: [[], ['id']], + kwargs: {} + }).then((records) => { + const ids = records.map(record => record.id); + const context = {production_line_show: id}; + this.env.services.rpc('/web/dataset/call_kw', { + model: 'mrp.workcenter', + method: 'write', + args: [ids, context], + kwargs: {} + }).then((response) => { + console.log('response', response); + location.reload(); + }); + }); + } async getAllWorkOrders() { const response = await this.env.services.rpc('/web/dataset/call_kw',{ model: 'sf.production.line', @@ -24,7 +49,14 @@ class CustomKanbanController extends KanbanController { args: [], kwargs: {}, }); + // const response1 = await this.env.services.rpc('/web/dataset/call_kw',{ + // model: 'mrp.workcenter', + // method: 'search_read', + // args: [], + // kwargs: {}, + // }); console.log('response', response); + // console.log('response1', response1); // 你可以在这里处理响应,例如将其存储在控制器的状态中 return response; } diff --git a/sf_manufacturing/static/src/scss/kanban_change.scss b/sf_manufacturing/static/src/scss/kanban_change.scss index 82e31b87..24ae15ad 100644 --- a/sf_manufacturing/static/src/scss/kanban_change.scss +++ b/sf_manufacturing/static/src/scss/kanban_change.scss @@ -1,18 +1,13 @@ -.alerts { +.choosekanban { display: flex; justify-content: flex-start; align-items: center; + margin-top: 1vw !important; } -.alerts>div { - width: 3vw; - height: 1.5vw; - border: 1px solid grey; - border-radius: 5px; - margin: 0 0.5vw; - justify-content: center; +.choosekanban > button { + width: 4vw !important; + height: 2vw !important; + border: none !important; + margin-left: 16px !important; } - -.alerts>div:nth-child(1) { - margin-left: 0 !important; -} \ No newline at end of file diff --git a/sf_manufacturing/static/src/xml/kanban_change.xml b/sf_manufacturing/static/src/xml/kanban_change.xml index c18fc103..ccd8fb21 100644 --- a/sf_manufacturing/static/src/xml/kanban_change.xml +++ b/sf_manufacturing/static/src/xml/kanban_change.xml @@ -1,18 +1,13 @@ - - - - - -
- +
+ -
+
+
diff --git a/sf_manufacturing/views/mrp_workcenter_views.xml b/sf_manufacturing/views/mrp_workcenter_views.xml index 8e360993..03a9b8cf 100644 --- a/sf_manufacturing/views/mrp_workcenter_views.xml +++ b/sf_manufacturing/views/mrp_workcenter_views.xml @@ -94,6 +94,7 @@ + @@ -101,18 +102,173 @@ - - mrp.workcenter.view.kanban.inherit.maintenance - mrp.workcenter - - - - - - - + + + + + + + + + + + + + + + mrp.workcenter.kanban.inherit + mrp.workcenter + + + + + + + + + + + + + +
+
+
+ + + + +
+
+ +
+
+
+
+
+
+ + + + + + +
+
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+ +
+ + + % + + +
+
+
+
+ +
+
+
+
+
+
+
+
@@ -140,6 +296,4 @@ - -