import os
restaurantes = [{'nome':'Praca','categoria':'Japonesa','ativo':False},
{'nome':'Pizza Suprema','categoria':'Pizza','ativo':True},
{'nome':'Cantina','categoria':'Italiano','ativo':False}]
# 0 1
# ativado desativado
def exibir_nome_do_programa():
'''Essa funcao e responsavel por exibir o nome do programa'''
print("""
░██████╗░█████╗░██████╗░░█████╗░██████╗░ ███████╗██╗░░██╗██████╗░██████╗░███████╗░██████╗░██████╗
██╔════╝██╔══██╗██╔══██╗██╔══██╗██╔══██╗ ██╔════╝╚██╗██╔╝██╔══██╗██╔══██╗██╔════╝██╔════╝██╔════╝
╚█████╗░███████║██████╦╝██║░░██║██████╔╝ █████╗░░░╚███╔╝░██████╔╝██████╔╝█████╗░░╚█████╗░╚█████╗░
░╚═══██╗██╔══██║██╔══██╗██║░░██║██╔══██╗ ██╔══╝░░░██╔██╗░██╔═══╝░██╔══██╗██╔══╝░░░╚═══██╗░╚═══██╗
██████╔╝██║░░██║██████╦╝╚█████╔╝██║░░██║ ███████╗██╔╝╚██╗██║░░░░░██║░░██║███████╗██████╔╝██████╔╝
╚═════╝░╚═╝░░╚═╝╚═════╝░░╚════╝░╚═╝░░╚═╝ ╚══════╝╚═╝░░╚═╝╚═╝░░░░░╚═╝░░╚═╝╚══════╝╚═════╝░╚═════╝░
""")
def exibir_opcoes():
'''Essa funcao e responsavel por mostra as opcoes do menu '''
print('1. Cadastrar restaurante')
print('2. Listar restaurantes')
print('3. Alternar estado do restaurantes')
print('4. Sair\n')
def finalizar_app():
'''Esssa funcao e responsavel por finalizar o app'''
exibir_subtitulo('Finalizando o app')
def voltar_ao_menu_principal():
'''Essa funcao e responsavel por voltar o menu principal
input:O usuario digita qualquer tecla para volta o menu principal
output:exibi as opcoes para esolha do menu
'''
input('\nDigite uma tecla para voltar ou menu ')
main()
def opcao_invalida():
'''Essa funcao e responsavel por mostra uma uma mensagem caso a opcao digita seja invalida
output:retorna ao menu principal
'''
print('Opcao invalida!\n')
voltar_ao_menu_principal()
def exibir_subtitulo(texto):
'''Essa funcao e responsavel por mostra os subtitulos da funcoes e cria uma linha a cima e a baixo de *'''
os.system('cls')
linha = '*' * (len(texto))
print(linha)
print(texto)
print(linha)
print()
def cadastrar_novo_restaurante():
'''Essa funcao e responsavel por cadastrar um restaurante
inputs:
- Nome do restaurante
- Categoria
outputs:
- Adiciona um novo restaurante a lista de restaurante
'''
exibir_subtitulo('Cadastro de novos restaurantes')
nome_do_restaurante = input('Digite o nome do restaurante q deseja cadastrar: ')
categoria = input(f'Digite o nome da categoria do restaurante {nome_do_restaurante}: ')
dados_do_restaurante = {'nome':nome_do_restaurante, 'categoria':categoria, 'ativo':False }
restaurantes.append(dados_do_restaurante)
print(f'O restaurante {nome_do_restaurante} foi cadastrado com sucesso!')
voltar_ao_menu_principal()
def listar_restaurantes():
'''Esssa e responsavel por listar os restaurantes
inputs:
- nome
- categoria
condicao: ativado/desativado
output: exibi a lista com o nome a categoria e se esta ativado ou desativado
'''
exibir_subtitulo('Listando os restaurantes')
print(f'{'nome do restaurante'.ljust(22)} | {'Categoria'.ljust(20)} | Status')
for restaurante in restaurantes:
nome_restaurante = restaurante['nome']
categoria = restaurante['categoria']
ativo = 'ativado' if restaurante['ativo'] else 'desativado'
print(f'- {nome_restaurante.ljust(20)} | {categoria.ljust(20)} | {ativo}')
voltar_ao_menu_principal()
def alternar_estado_restaurante():
'''Essa funcao e reponsavel por alterar o estado de um restaurante(desativado/ativado)'''
exibir_subtitulo('Alternado estado do restaurante')
nome_restaurante = input('Digite o nome do restaurante que deseja alternar o estado: ')
restaurante_encontrado = False
for restaurante in restaurantes:
if nome_restaurante == restaurante['nome']:
restaurante_encontrado = True
restaurante['ativo'] = not restaurante['ativo']
mensagem = f'O restaurante {nome_restaurante} foi ativado com sucesso' if restaurante['ativo'] else f'o restaurante {nome_restaurante} foi desativado com sucesso'
print(mensagem)
if not restaurante_encontrado:
print('o restaurante nao foi encontrado')
voltar_ao_menu_principal()