async def get_cliente(documento:str): cliente_in_db=cliente_db.get_cliente(documento) if cliente_in_db==None: raise HTTPException(status_code=404, detail="El cliente no existe") else: cliente=Cliente(**cliente_in_db.dict()) return cliente
async def delete_cliente(cliente_in: ClienteIn): cliente_in_db = get_cliente(cliente_in.telefono) if cliente_in_db == None: raise HTTPException(status_code=404, detail="El cliente no existe") cliente_out = eliminate_cliente(cliente_in_db) return cliente_out
async def buscar_cliente(telefono: int): cliente_in_db = get_cliente(telefono) if cliente_in_db == None: raise HTTPException(status_code=404, detail="El cliente no existe") cliente_out = ClienteOut(**cliente_in_db.dict()) return cliente_out
async def crear_cliente(cliente_ingresado: ClienteCreado): cliente_en_bd = get_cliente(cliente_ingresado.username) if (cliente_en_bd != None): return {"Cliente-creado": True} return {"Cliente-creado": False}
async def get_info_cliente(cliente_ingresado: str): cliente_en_bd = get_cliente(cliente_ingresado) if cliente_en_bd == None: raise HTTPException(status_code=404, detail="El usuario no existe") cliente_out = ClienteOut(**cliente_en_bd.dict()) return cliente_out
async def upd_cliente(cliente_in: ClienteInCreate): cliente_in_db = get_cliente(cliente_in.telefono) if cliente_in_db == None: raise HTTPException(status_code=404, detail="El cliente no existe") cliente_in_db = ClienteInCreate(**cliente_in.dict()) update_cliente(cliente_in_db) update_out = ClienteOut(**cliente_in_db.dict()) return update_out
async def update_info_cliente(cliente_ingresado: UpdateIn): cliente_en_bd = get_cliente(cliente_ingresado.username) if cliente_en_bd == None: raise HTTPException(status_code=404, detail="El usuario no existe") cliente_en_bd.username = cliente_ingresado.username cliente_en_bd.telefono = cliente_ingresado.telefono cliente_en_bd.email = cliente_ingresado.email return {"Actualizado": True}
async def auth_user(cliente_ingresado: ClienteIn): cliente_en_bd = get_cliente(cliente_ingresado.username) if cliente_en_bd == None: # si la variable está vacía (quiere decir que user_in_db tambien lo está, porque el usuario al que se intenta acceder no está en la base de datos) raise HTTPException(status_code=404, detail="El usuario no existe") if cliente_ingresado.contrasena != cliente_en_bd.contrasena: return {"Cliente autenticado": False} return { "Autenticado": True } # si quiero mostrar solo el email y el celular