transportista.py
2.96 KB
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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
# -*- coding: utf-8 -*-
from odoo import models, fields, api, exceptions
class trans_transportista(models.Model):
_name = 'trans.transportista'
_description = 'Transportista'
_rec_name = 'trans_nombre'
_order = 'trans_nombre'
_sql_constraints = [
('trans_cuit_unique', 'UNIQUE(trans_cuit)',
'Ya existe otro transportista con el mismo CUIT, por favor revíselo y vuelva a intentarlo'),
]
trans_razon_social = fields.Char(
string=u'Razón Social',
required=True,
)
trans_cuit = fields.Integer(
string=u'CUIT',
required=True,
)
trans_pagina_web = fields.Char(
string=u'Página Web',
help='Ingrese su página web si es que posee',
)
trans_nombre = fields.Char(
string=u'Nombre',
required=True,
)
trans_logo = fields.Binary(
string=u'Logo',
help='Archivo png o jpg de menos de 2 Mb'
)
trans_categoria = fields.Selection(
string=u'Categoría',
selection=[('p', 'Paga'), ('np', 'No Paga')],
compute = '',
store = True,
readonly=True,
)
trans_telefono = fields.Integer(
string=u'Teléfono',
required=True,
)
trans_email = fields.Char(
string = u'Correo Electrónico',
)
trans_tipo_ent = fields.Selection(
string=u'Tipo de entidad',
selection=[('emp', 'Empresa'), ('ca', 'Camionero'), ('co', 'Comisionista')],
required = True,
)
trans_restriccion_elem = fields.Char(
string=u'Elementos que no transporta',
help='Aclarar aquí qué elementos no transporta, si los hubiera',
)
trans_tipo = fields.Many2many(
string=u'Tipo de Transporte',
comodel_name='trans.tipo_transporte',
relation='tipo_transporte_transportista_rel',
column1='trans_tipo_transporte_id',
column2='trans_transportista_id',
)
trans_pto_retiro = fields.Many2many(
string=u'Punto de Retiro',
comodel_name='trans.punto_retiro',
relation='pto_retiro_transportista_rel',
column1='trans_punto_retiro_id',
column2='trans_transportista_id',
)
trans_posee_ayu = fields.Boolean(
string=u'Posee ayudantes de carga?',
)
trans_observ = fields.Text(
string=u'Observaciones',
help = u'Utilice este campo para agregar cualquier observación que desee',
)
ejecutor = fields.Many2one(
string='Ejecuta',
comodel_name='res.users',
index=True,
default= lambda self: self.env.user
)
@api.one
@api.constrains('trans_cuit', 'trans_telefono')
def _requerir_valores(self):
if self.trans_cuit == 0:
raise exceptions.ValidationError('Por favor ingrese el CUIT')
if self.trans_telefono == 0:
raise exceptions.ValidationError('Por favor ingrese el teléfono')