def registrarIngresoDeVehiculo(self, dominio, kilometrajeActual, combustibleActual, equipamiento, reparacion, comisaria, localidad): ''' @return: @author: ''' vehiculo = self.getVehiculo(dominio) ''' TODO: tener en cuenta el método obtenerOrdenDeReparacionEnCurso de Legajo que nos indica si ese vehículo tiene o no orden Reparación, por lo tanto no debemos crearle otra hasta que esa haya sido finalizada. ''' try: vehiculo.dameOrdenDeReparacionEnCurso() # import datetime # hoy = datetime.datetime.now() # from MiZODB import MiZODB, ZopeDB # zodb = ZopeDB(MiZODB()) # zodb.remove('vehiculos', vehiculo.dominio) # vehiculo.crearOrdenDeReparacion(kilometrajeActual, combustibleActual, equipamiento, reparacion, comisaria, localidad, hoy) # vehiculo.save() except excepciones.Excepcion_No_Posee_Orden_Reparacion_En_Curso.Excepcion_No_Posee_Orden_Reparacion_En_Curso: import datetime hoy = datetime.datetime.now() from MiZODB import MiZODB, ZopeDB zodb = ZopeDB(MiZODB()) zodb.remove('vehiculos', vehiculo.dominio) vehiculo.crearOrdenDeReparacion(kilometrajeActual, combustibleActual, equipamiento, reparacion, comisaria, localidad, hoy) vehiculo.save()
def modificarVehiculo(self, dominio, marca, registroInterno, numeroChasis): zodb = ZopeDB(MiZODB()) vehiculo = deepcopy(zodb.get('vehiculos', dominio)) zodb.remove('vehiculos', dominio) vehiculo.dominio = dominio vehiculo.marca = marca vehiculo.registroInterno = registroInterno vehiculo.numeroChasis = numeroChasis vehiculo.save()
def registrarReparaciones(self, vehiculoSeleccionado): # primero cambiamos el estado de la orden # vehiculoSeleccionado.getOrdenDeReparacionEnCurso().getEstadoOrdenReparacion().cambiarProximoEstado() vehiculoSeleccionado.getOrdenDeReparacionEnCurso().generarPedidoDeActuacion() from copy import deepcopy unVehiculo = deepcopy(vehiculoSeleccionado) zodb = ZopeDB(MiZODB()) zodb.remove('vehiculos', vehiculoSeleccionado.getDominio()) unVehiculo.save()
def agregarSecciones(self, nombreSeccion, empleados, encargado): ''' @return: @author: ''' pass # Acordarse de de que vienen los documentos del empleados y el documento del encargado # y sólo el nombre de la Sección. zodb = ZopeDB(MiZODB()) empleadosSeccion = {} for empleado in empleados: empleadosSeccion[empleado] = deepcopy(zodb.get('empleados', empleado)) encargadoSeccion = deepcopy(zodb.get('empleados', encargado)) seccion = Seccion(nombreSeccion, empleadosSeccion, encargadoSeccion) seccion.save() zodb.remove('empleados', empleado) zodb.remove('empleados', encargado)