File size: 1,350 Bytes
69381eb
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
from flask import Flask, request, jsonify
from flask_sqlalchemy import SQLAlchemy
from flask_cors import CORS

app = Flask(__name__)
app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:///admin.db"
db = SQLAlchemy(app)
CORS(app)

class Admin(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(100), nullable=False)
    password = db.Column(db.String(100), nullable=False)

@app.route("/login", methods=["POST"])
def login():
    data = request.get_json()
    admin = Admin.query.filter_by(username=data["username"], password=data["password"]).first()
    if admin:
        return jsonify({"token": "login successful"})
    return jsonify({"message": "Invalid credentials"})

@app.route("/users", methods=["GET"])
def users():
    users = User.query.all()
    return jsonify([{"id": user.id, "name": user.name, "email": user.email, "account_number": user.account_number, "balance": user.balance} for user in users])

@app.route("/transactions", methods=["GET"])
def transactions():
    transactions = Transaction.query.all()
    return jsonify([{"id": transaction.id, "sender_account_number": transaction.sender_account_number, "recipient_account_number": transaction.recipient_account_number, "amount": transaction.amount} for transaction in transactions])

if __name__ == "__main__":
    app.run(debug=True)