Add skeleton for route interactions

remotes/1693045480750635534/spooky-22
Outrun Colors, LLC 2022-05-28 19:02:35 -05:00
parent 4eb9095ae5
commit cf7ee615e6
3 changed files with 60 additions and 3 deletions

View File

@ -4,6 +4,25 @@ from files.helpers.alerts import *
from files.helpers.get import *
from files.helpers.const import *
@app.post("/lottery/start")
@auth_required
def lottery_start(v):
# Save changes
g.db.commit()
return {"message": "Lottershe started."}
@app.post("/lottery/end")
@auth_required
def lottery_end(v):
# Save changes
g.db.commit()
return {"message": "Lottershe ended."}
@app.post("/lottery/buy")
@limiter.limit("1/second;30/minute;200/hour;1000/day")
@auth_required
@ -14,7 +33,17 @@ def lottery_buy(v):
# Charge user for ticket
v.coins -= 12
# Check for active lottery
pass
# Save changes
g.db.commit()
return {"message": "Lottershe ticket purchased!"}
return {"message": "Lottershe ticket purchased!", "stats": {"sessionEnds": 0, "prize": 0, "ticketsSoldSession": 0, "ticketsSoldTotal": 0, "ticketsHeldSession": 0, "ticketsHeldTotal": 0, "totalWinnings": 0}}
@app.get("/lottery/stats")
@limiter.limit("1/second;30/minute;200/hour;1000/day")
@auth_required
def lottery_stats(v):
return {"message": {"sessionEnds": 0, "prize": 0, "ticketsSoldSession": 0, "ticketsSoldTotal": 0}}

View File

@ -29,7 +29,6 @@
<div class="lottery-modal--stat-keys">
<div>Grand Prize</div>
<div>Session Ends</div>
<div>Unique Participants</div>
<div>Tickets Sold (Session)</div>
<div>Tickets Sold (Total)</div>
</div>
@ -38,7 +37,6 @@
<div>0:00:00</div>
<div>0</div>
<div>0</div>
<div>0</div>
</div>
</div>
<div class="lottery-modal--stat">

30
lottery.sql 100644
View File

@ -0,0 +1,30 @@
CREATE TABLE public.lotteries (
id integer NOT NULL,
is_active boolean DEFAULT false NOT NULL,
ends_at timestamptz NOT NULL,
prize integer DEFAULT 0 NOT NULL,
tickets_sold integer DEFAULT 0 NOT NULL
);
--
-- Name: lotteries_id_seq; Type: SEQUENCE; Schema: public; Owner: -
--
CREATE SEQUENCE public.lotteries_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
--
-- Name: lotteries_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: -
--
ALTER SEQUENCE public.lotteries_id_seq OWNED BY public.lotteries.id;
ALTER TABLE public.users
ADD currently_held_lottery_tickets integer DEFAULT 0 NOT NULL,
ADD total_held_lottery_tickets integer DEFAULT 0 NOT NULL,
ADD total_lottery_winnings integer DEFAULT 0 NOT NULL;