def post(self, request, *args, **kwargs): dto = CrearClienteProyectoUsuarioDto( NombreCliente=request.data.get('NombreCliente'), NombreProyecto=request.data.get('NombreProyecto'), NombreUsuario=request.data.get('NombreUsuario'), Presupuesto=request.data.get('Presupuesto')) nombre_cliente_o_error = NombreCliente.create(dto.NombreCliente) nombre_proyecto_o_error = NombreProyecto.create(dto.NombreProyecto) nombre_usuario_o_error = NombreUsuario.create(dto.NombreUsuario) es_invalido, errores = Result.combine([ nombre_cliente_o_error, nombre_proyecto_o_error, nombre_usuario_o_error ]) if es_invalido: raise ValidationError(errores) cliente = Cliente(nombre=nombre_cliente_o_error.value) cliente = self._repositorio_cliente.create(cliente) proyecto = Proyecto(nombre=nombre_proyecto_o_error.value, cliente=cliente, presupuesto=dto.Presupuesto) self._repositorio_proyecto.create(proyecto) usuario = Usuario(username=nombre_usuario_o_error.value, cliente=cliente, rol=RolUsuario.Owner) self._repositorio_usario.create(usuario) return Response('OK', status=status.HTTP_201_CREATED)
def post(self, request, *args, **kwargs): dto = CrearClienteDto( nombre_cliente=request.data.get('nombre_cliente'), telefono_tipo=request.data.get('telefono_tipo'), telefono_numero=request.data.get('telefono_numero')) nombre_cliente_o_error = NombreCliente.create(dto.nombre_cliente) numero_telefono_o_error = NumeroTelefono.create(dto.telefono_numero) tipo_telefono_o_error = TipoTelefono.create(dto.telefono_tipo) es_invalido, errores = Result.combine([ nombre_cliente_o_error, numero_telefono_o_error, tipo_telefono_o_error ]) if es_invalido: raise ValidationError(errores) cliente = Cliente(nombre=nombre_cliente_o_error.value) cliente = self._repositorio_cliente.create(cliente) telefono = ClienteTelefono(tipo=tipo_telefono_o_error.value, numero=numero_telefono_o_error.value, cliente=cliente) self._repositorio_telefono.create(telefono) send_rabit('Cliente creado') return Response('OK', status=status.HTTP_201_CREATED)
def create(cls, customer_name): try: return Result.ok(cls(customer_name)) except Exception as ex: return Result.fail({'name': [str(ex)]})
def create(cls, tipo): try: return Result.ok(cls(tipo)) except Exception as ex: return Result.fail({'telefono_tipo': [str(ex)]})
def create(cls, amount): try: return Result.ok(cls(amount)) except Exception as ex: return Result.fail({'money_spent': [str(ex)]})
def create(cls, nombre): try: return Result.ok(cls(nombre)) except Exception as ex: return Result.fail({'nombre_cliente': [str(ex)]})
def create(cls, nombre): try: return Result.ok(cls(nombre)) except Exception as ex: return Result.fail({'NombreUsuario': [str(ex)]})
def create(cls, numero): try: return Result.ok(cls(numero)) except Exception as ex: return Result.fail({'telefono_numero': [str(ex)]})
def create(cls, date): try: return Result.ok(cls(date)) except Exception as ex: return Result.fail({'status_expiration_date': [str(ex)]})