-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathis_historique_controle.py
81 lines (60 loc) · 3.57 KB
/
is_historique_controle.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
# -*- coding: utf-8 -*-
from openerp import models,fields,api
from openerp.tools.translate import _
from openerp.exceptions import Warning
from datetime import datetime
class is_historique_controle(models.Model):
_name='is.historique.controle'
_order='date_controle desc'
_rec_name='date_controle'
plaquette_id = fields.Many2one('is.plaquette.etalon' , string='Plaquette étalon')
instrument_id = fields.Many2one('is.instrument.mesure', string='Instruments de mesure')
gabarit_id = fields.Many2one('is.gabarit.controle' , string='Gabarit de contrôle')
piece_id = fields.Many2one('is.piece.montabilite', string='Piece Montabilite')
@api.depends('instrument_id.famille_id')
def _compute(self):
for obj in self:
#print self, self.instrument_id.famille_id.afficher_classe
obj.classe_boolean = obj.instrument_id.famille_id.afficher_classe
@api.depends('operation_controle_id')
def _compute_operation_controle_code(self):
for obj in self:
obj.operation_controle_code = obj.operation_controle_id.code
# operation_controle = fields.Selection([
# ('creation', 'Création'),
# ('verification', 'Vérification'),
# ('maintenance', 'Maintenance'),
# ('arret', 'Arrêt'),
# ('visuel', 'Visuel'),
# ('etalonnage', 'étalonnage')
# ], string="Opération de contrôle", required=True)
operation_controle_id = fields.Many2one('is.operation.controle', 'Opération de contrôle', required=True)
#operation_controle_code = fields.Char("Code de l'Opération de contrôle", related='operation_controle_id.code')
operation_controle_code = fields.Char("Code de l'Opération de contrôle", compute=_compute_operation_controle_code, store=False)
cause_arret = fields.Char("Cause arrêt")
cause_visuel = fields.Char("Cause visuel")
date_controle = fields.Date(string='Date du contrôle', default=fields.Date.context_today, copy=False, required=True)
organisme_controleur = fields.Selection([('interne', 'Interne'), ('externe', 'Externe')], "Organisme contrôleur", required=True)
fournisseur_id = fields.Many2one('res.partner', 'Fournisseur')
classe = fields.Selection([('0', '0'), ('1', '1'), ('2', '2'), ('3', '3'), ('na', '/NA')], "Classe")
classe_boolean = fields.Boolean('Is Classe?', compute=_compute, store=False)
resultat = fields.Char(string='Résultat/Erreur maxi')
etat_conformite = fields.Selection([('conforme', 'Conforme'), ('non_conforme', 'Non Conforme')], string="Etat de la conformité", required=True)
#rapport_de_controle = fields.Binary("Rapport de contrôle")
rapport_controle_ids = fields.Many2many('ir.attachment', 'rapport_controle_attachment_rel', 'rapport_controle_id', 'attachment_id', u'Pièces jointes')
class is_operation_controle(models.Model):
_name='is.operation.controle'
_order='name'
name = fields.Char(string='Opération de contrôle' , required=True)
code = fields.Char(string="Code de l'Opération de contrôle", required=True)
plaquette = fields.Boolean('Plaquette étalon')
instrument = fields.Boolean('Instruments de mesure')
gabarit = fields.Boolean('Gabarit de contrôle')
piece = fields.Boolean('Piece Montabilite')
active = fields.Boolean('Active', default=True)
# @api.multi
# def write(self, vals):
# print vals
# res=super(is_operation_controle, self).write(vals)
# return res
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4