41 lines
1.6 KiB
Python
41 lines
1.6 KiB
Python
# -*- coding: utf-8 -*-
|
|
import base64
|
|
|
|
from odoo import api, fields, models, _
|
|
from odoo.exceptions import UserError
|
|
|
|
|
|
class SfMaintenanceEquipmentCategory(models.Model):
|
|
_inherit = 'maintenance.request'
|
|
_description = '维保计划'
|
|
|
|
sf_maintenance_type = fields.Selection([('保养', '保养'), ('检修', '检修')], string='维保类别', default='保养')
|
|
|
|
equipment_maintenance_id = fields.Many2one('equipment.maintenance.standards', string='设备维保标准',
|
|
domain="[('maintenance_type','=',sf_maintenance_type)]")
|
|
|
|
@api.onchange('sf_maintenance_type')
|
|
def _compute_equipment_maintenance_request_id(self):
|
|
for record in self:
|
|
if record.sf_maintenance_type == '保养':
|
|
record.equipment_maintenance_id = record.equipment_id.eq_maintenance_id
|
|
|
|
if record.sf_maintenance_type == '检修':
|
|
record.equipment_maintenance_id = record.equipment_id.overhaul_id
|
|
if not record.equipment_maintenance_id:
|
|
record.equipment_maintenance_id = False
|
|
|
|
maintenance_standards = fields.Many2many('maintenance.standards', string='维保项目')
|
|
|
|
@api.constrains('equipment_maintenance_id')
|
|
def _check_equipment_maintenance_id(self):
|
|
for record in self:
|
|
if not record.equipment_maintenance_id:
|
|
raise UserError(_("设备维保标准不能为空,请选择后再保存"))
|
|
|
|
def confirm_maintenance(self):
|
|
self.write({'stage_id': 2})
|
|
|
|
def confirm_maintenance_done(self):
|
|
self.write({'stage_id': 3})
|