merge with open_workshop 17.0

This commit is contained in:
Matthias Lotz 2025-06-26 17:34:13 +02:00
parent 2d806ae333
commit 6f8f788d9d
2 changed files with 20 additions and 12 deletions

View File

@ -511,13 +511,12 @@ class OwsMachine(models.Model):
- 'rfid_card': RFID-Kartennummer des Nutzers (str oder ''). - 'rfid_card': RFID-Kartennummer des Nutzers (str oder '').
- 'birthday': Geburtstag des Nutzers (str oder ''). - 'birthday': Geburtstag des Nutzers (str oder '').
""" """
partner = self.env['res.partner'].browse(partner_id)
areas = self.env['ows.machine.area'].search([], order="name") areas = self.env['ows.machine.area'].search([], order="name")
_logger.info("🔍 Maschinenbereiche: %s", areas.mapped('name'))
_logger.info("🔍 Partner_id: %s", partner_id) access_by_area = []
res = []
for area in areas: for area in areas:
machines = self.search([('area_id', '=', area.id)], order="name") machines = self.search([('area_id', '=', area.id), ('category', '=', 'red')], order="name")
machine_list = [] machine_list = []
for machine in machines: for machine in machines:
has_access = bool(self.env['ows.machine.access'].search([ has_access = bool(self.env['ows.machine.access'].search([
@ -528,12 +527,21 @@ class OwsMachine(models.Model):
'name': machine.name, 'name': machine.name,
'has_access': has_access, 'has_access': has_access,
}) })
res.append({ if machine_list:
'area': area.name, access_by_area.append({
'color_hex': area.color_hex or '#000000', 'area': area.name,
'machines': machine_list 'color_hex': area.color_hex or '#000000',
}) 'machines': machine_list
return res })
user = partner.ows_user_id[:1]
return {
'access_by_area': access_by_area,
'security_briefing': user.security_briefing if user else False,
'security_id': user.security_id if user else '',
'rfid_card': user.rfid_card if user else '',
'birthday': user.birthday if user else '',
}
class OwsMachineAccess(models.Model): class OwsMachineAccess(models.Model):

View File

@ -53,7 +53,7 @@ odoo.define('open_workshop.machine_access_sidebar', function (require) {
}).then(function (result) { }).then(function (result) {
partner.create_date = partner.create_date && partner.create_date.substring(0, 10); partner.create_date = partner.create_date && partner.create_date.substring(0, 10);
var html = QWeb.render('PartnerMachineAccessList', { var html = QWeb.render('PartnerMachineAccessList', {
areas: result || [], areas: result.access_by_area || [],
partner: partner, partner: partner,
}); });
self.$('.access-content').html(html); self.$('.access-content').html(html);