# -*- coding: utf-8 -*- from odoo import models, fields, api, _, SUPERUSER_ID from odoo.exceptions import ValidationError, UserError from pypinyin import pinyin, Style import xlrd import base64 import datetime from datetime import datetime class UtilityMeterWizard(models.TransientModel): _name = 'utility.meter.wizard' _description = '物业关联水电表弹窗' property_id = fields.Many2one('yuthon.property', string="物业信息") meter_type = fields.Selection([('archives', '电表'), ('water', '水表')], string="表类型") epitope_values_archives_id = fields.Many2one("yuthon.epitope.values", string="电表位置") epitope_values_water_id = fields.Many2one("yuthon.epitope.values", string="水表位置") archives_ids = fields.Many2many('property.meter.archives', string="电表编号") water_ids = fields.Many2many('property.meter.water', string="水表编号") def confirm(self): if self.meter_type == 'archives': for archives in self.archives_ids: archives.yuthon_property_ids |= self.property_id # self.archives_ids.write({'yuthon_property_ids': [(4, self.property_id.id)]}) if self.meter_type == 'water': for water in self.water_ids: # 使用 |= 操作符来追加到 Many2many 字段 water.yuthon_property_ids |= self.property_id # self.water_ids.write({'yuthon_property_ids': [(4, self.property_id.id)]})