|
1 |
| -from flask import Flask, render_template, request, send_file |
| 1 | +from flask import Flask, render_template, request, send_file, jsonify |
2 | 2 | from docx import Document
|
3 | 3 | from datetime import datetime
|
4 | 4 | import os
|
5 | 5 |
|
6 | 6 | app = Flask(__name__)
|
7 | 7 |
|
| 8 | +# Configura o caminho para os templates |
| 9 | +#template_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'app', 'templates') |
| 10 | +#app.template_folder = template_path |
| 11 | + |
8 | 12 | @app.route('/')
|
9 | 13 | def index():
|
10 | 14 | return render_template('index.html')
|
11 | 15 |
|
12 | 16 | @app.route('/processar_formulario', methods=['POST'])
|
13 | 17 | def processar_formulario():
|
14 |
| - nome = request.form['nome'] |
15 |
| - equipamento = request.form['equipamento'] |
16 |
| - inicio = request.form['inicio'] |
17 |
| - final = request.form['final'] |
18 |
| - estoque_utilizado = request.form['estoqueUtilizado'] |
19 |
| - removido_voltou = request.form['removidoVoltou'] |
20 |
| - motivo_remocao = request.form.get('motivoRemocao', '') |
21 | 18 |
|
22 |
| - # Create a Word document and write the data |
23 |
| - document = Document('./template.docx') |
| 19 | + try: |
| 20 | + |
| 21 | + nome = request.form['nome'] |
| 22 | + equipamento = request.form['equipamento'] |
| 23 | + inicio = request.form['inicio'] |
| 24 | + final = request.form['final'] |
| 25 | + estoque_utilizado = request.form['estoqueUtilizado'] |
| 26 | + removido_voltou = request.form['removidoVoltou'] |
| 27 | + motivo_remocao = request.form.get('motivoRemocao', '') |
| 28 | + |
| 29 | + # Create a Word document and write the data |
| 30 | + document = Document('./template.docx') |
24 | 31 |
|
25 |
| - document.add_paragraph(f'Nome: {nome}') |
26 |
| - document.add_paragraph(f'Equipamento: {equipamento}') |
27 |
| - document.add_paragraph(f'Período: {inicio} - {final}') |
28 |
| - document.add_paragraph(f'Estoque Utilizado: {estoque_utilizado}') |
| 32 | + document.add_paragraph(f'Nome: {nome}') |
| 33 | + document.add_paragraph(f'Equipamento: {equipamento}') |
| 34 | + document.add_paragraph(f'Período: {inicio} - {final}') |
| 35 | + document.add_paragraph(f'Estoque Utilizado: {estoque_utilizado}') |
29 | 36 |
|
30 |
| - document.add_paragraph('Algo foi removido e voltou ao estoque? ' + ('Sim' if removido_voltou == 'sim' else 'Não')) |
| 37 | + document.add_paragraph('Algo foi removido e voltou ao estoque? ' + ('Sim' if removido_voltou == 'sim' else 'Não')) |
31 | 38 |
|
32 |
| - if removido_voltou == 'sim': |
33 |
| - document.add_paragraph(f'Motivo da Remoção: {motivo_remocao}') |
| 39 | + if removido_voltou == 'sim': |
| 40 | + document.add_paragraph(f'Motivo da Remoção: {motivo_remocao}') |
34 | 41 |
|
35 |
| - # Get current date |
36 |
| - data_atual = datetime.now() |
| 42 | + # Get current date |
| 43 | + data_atual = datetime.now() |
37 | 44 |
|
38 |
| - # Format the date as a string |
39 |
| - formato_data = "%d-%m-%Y" |
40 |
| - data_formatada = data_atual.strftime(formato_data) |
| 45 | + # Format the date as a string |
| 46 | + formato_data = "%d-%m-%Y" |
| 47 | + data_formatada = data_atual.strftime(formato_data) |
41 | 48 |
|
42 |
| - caminho = './relatorios/' |
| 49 | + caminho = './relatorios/' |
43 | 50 |
|
44 |
| - # Check that the directory does not exist before creating |
45 |
| - if not os.path.exists(caminho): |
46 |
| - os.makedirs(caminho) |
47 |
| - print(f'The folder at {caminho} was created successfully.') |
| 51 | + # Check that the directory does not exist before creating |
| 52 | + if not os.path.exists(caminho): |
| 53 | + os.makedirs(caminho) |
| 54 | + print(f'The folder at {caminho} was created successfully.') |
48 | 55 |
|
49 |
| - documento = "{}{}.docx".format(caminho, data_formatada) |
| 56 | + documento = "{}{}.docx".format(caminho, data_formatada) |
50 | 57 |
|
51 |
| - document.save(documento) |
| 58 | + document.save(documento) |
52 | 59 |
|
53 |
| - return send_file(documento, as_attachment=True) |
| 60 | + #send_file(documento, as_attachment=True) |
| 61 | + return jsonify(success=True) |
| 62 | + |
| 63 | + except Exception as e: |
| 64 | + print(f'Erro: {str(e)}') |
| 65 | + return jsonify(success=False) |
54 | 66 |
|
55 | 67 | if __name__ == '__main__':
|
56 | 68 | app.run(debug=True)
|
0 commit comments