Skip to content

Commit fff41da

Browse files
authored
Implementação de calendário
Adicionado rotas para calendário
1 parent ecaa200 commit fff41da

File tree

1 file changed

+36
-1
lines changed

1 file changed

+36
-1
lines changed

app/routes.py

+36-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
from flask import Blueprint, request, render_template, redirect, url_for, flash, session, jsonify
1+
from flask import (Blueprint, request, render_template, redirect,
2+
url_for,flash, session, jsonify)
23
from . import db
34
from werkzeug.security import generate_password_hash, check_password_hash
45
import json
@@ -426,3 +427,37 @@ def add_saving_goal():
426427
db.session.commit()
427428
return redirect(url_for('main.dashboard'))
428429

430+
@main.route('/calendar')
431+
def calendar():
432+
if 'user_id' not in session:
433+
flash('Por favor, faça login para acessar essa página.', 'warning')
434+
return redirect(url_for('main.login'))
435+
return render_template('calendar.html')
436+
437+
@main.route('/api/events')
438+
def api_events():
439+
from .models import Expense, Revenue, Account
440+
user_id = session.get('user_id')
441+
if not user_id:
442+
return jsonify([])
443+
444+
expenses = Expense.query.join(Account).filter(Account.user_id == user_id).all()
445+
revenues = Revenue.query.join(Account).filter(Account.user_id == user_id).all()
446+
447+
events = []
448+
449+
for expense in expenses:
450+
events.append({
451+
'title': f"Despesa: {expense.amount}",
452+
'start': expense.expense_date.strftime('%Y-%m-%d'),
453+
'color': 'red'
454+
})
455+
456+
for revenue in revenues:
457+
events.append({
458+
'title': f"Receita: {revenue.amount}",
459+
'start': revenue.revenue_date.strftime('%Y-%m-%d'),
460+
'color': 'green'
461+
})
462+
463+
return jsonify(events)

0 commit comments

Comments
 (0)