mirror of https://github.com/lukechilds/lnbits.git
17 changed files with 191 additions and 118 deletions
@ -0,0 +1,65 @@ |
|||
from lnbits.db import open_db |
|||
|
|||
|
|||
def m001_initial(db): |
|||
""" |
|||
Initial LNbits tables. |
|||
""" |
|||
db.execute(""" |
|||
CREATE TABLE IF NOT EXISTS accounts ( |
|||
id TEXT PRIMARY KEY, |
|||
email TEXT, |
|||
pass TEXT |
|||
); |
|||
""") |
|||
db.execute(""" |
|||
CREATE TABLE IF NOT EXISTS extensions ( |
|||
user TEXT NOT NULL, |
|||
extension TEXT NOT NULL, |
|||
active BOOLEAN DEFAULT 0, |
|||
|
|||
UNIQUE (user, extension) |
|||
); |
|||
""") |
|||
db.execute(""" |
|||
CREATE TABLE IF NOT EXISTS wallets ( |
|||
id TEXT PRIMARY KEY, |
|||
name TEXT NOT NULL, |
|||
user TEXT NOT NULL, |
|||
adminkey TEXT NOT NULL, |
|||
inkey TEXT |
|||
); |
|||
""") |
|||
db.execute(""" |
|||
CREATE TABLE IF NOT EXISTS apipayments ( |
|||
payhash TEXT NOT NULL, |
|||
amount INTEGER NOT NULL, |
|||
fee INTEGER NOT NULL DEFAULT 0, |
|||
wallet TEXT NOT NULL, |
|||
pending BOOLEAN NOT NULL, |
|||
memo TEXT, |
|||
time TIMESTAMP NOT NULL DEFAULT (strftime('%s', 'now')), |
|||
|
|||
UNIQUE (wallet, payhash) |
|||
); |
|||
""") |
|||
db.execute(""" |
|||
CREATE VIEW IF NOT EXISTS balances AS |
|||
SELECT wallet, COALESCE(SUM(s), 0) AS balance FROM ( |
|||
SELECT wallet, SUM(amount) AS s -- incoming |
|||
FROM apipayments |
|||
WHERE amount > 0 AND pending = 0 -- don't sum pending |
|||
GROUP BY wallet |
|||
UNION ALL |
|||
SELECT wallet, SUM(amount + fee) AS s -- outgoing, sum fees |
|||
FROM apipayments |
|||
WHERE amount < 0 -- do sum pending |
|||
GROUP BY wallet |
|||
) |
|||
GROUP BY wallet; |
|||
""") |
|||
|
|||
|
|||
def migrate(): |
|||
with open_db() as db: |
|||
m001_initial(db) |
@ -1,47 +0,0 @@ |
|||
CREATE TABLE IF NOT EXISTS accounts ( |
|||
id TEXT PRIMARY KEY, |
|||
email TEXT, |
|||
pass TEXT |
|||
); |
|||
|
|||
CREATE TABLE IF NOT EXISTS extensions ( |
|||
user TEXT NOT NULL, |
|||
extension TEXT NOT NULL, |
|||
active BOOLEAN DEFAULT 0, |
|||
|
|||
UNIQUE (user, extension) |
|||
); |
|||
|
|||
CREATE TABLE IF NOT EXISTS wallets ( |
|||
id TEXT PRIMARY KEY, |
|||
name TEXT NOT NULL, |
|||
user TEXT NOT NULL, |
|||
adminkey TEXT NOT NULL, |
|||
inkey TEXT |
|||
); |
|||
|
|||
CREATE TABLE IF NOT EXISTS apipayments ( |
|||
payhash TEXT NOT NULL, |
|||
amount INTEGER NOT NULL, |
|||
fee INTEGER NOT NULL DEFAULT 0, |
|||
wallet TEXT NOT NULL, |
|||
pending BOOLEAN NOT NULL, |
|||
memo TEXT, |
|||
time TIMESTAMP NOT NULL DEFAULT (strftime('%s', 'now')), |
|||
|
|||
UNIQUE (wallet, payhash) |
|||
); |
|||
|
|||
CREATE VIEW IF NOT EXISTS balances AS |
|||
SELECT wallet, COALESCE(SUM(s), 0) AS balance FROM ( |
|||
SELECT wallet, SUM(amount) AS s -- incoming |
|||
FROM apipayments |
|||
WHERE amount > 0 AND pending = 0 -- don't sum pending |
|||
GROUP BY wallet |
|||
UNION ALL |
|||
SELECT wallet, SUM(amount + fee) AS s -- outgoing, sum fees |
|||
FROM apipayments |
|||
WHERE amount < 0 -- do sum pending |
|||
GROUP BY wallet |
|||
) |
|||
GROUP BY wallet; |
@ -0,0 +1,21 @@ |
|||
from lnbits.db import open_ext_db |
|||
|
|||
|
|||
def m001_initial(db): |
|||
""" |
|||
Initial amilks table. |
|||
""" |
|||
db.execute(""" |
|||
CREATE TABLE IF NOT EXISTS amilks ( |
|||
id TEXT PRIMARY KEY, |
|||
wallet TEXT NOT NULL, |
|||
lnurl TEXT NOT NULL, |
|||
atime TEXT NOT NULL, |
|||
amount INTEGER NOT NULL |
|||
); |
|||
""") |
|||
|
|||
|
|||
def migrate(): |
|||
with open_ext_db("amilk") as db: |
|||
m001_initial(db) |
@ -1,7 +0,0 @@ |
|||
CREATE TABLE IF NOT EXISTS amilks ( |
|||
id TEXT PRIMARY KEY, |
|||
wallet TEXT NOT NULL, |
|||
lnurl TEXT NOT NULL, |
|||
atime TEXT NOT NULL, |
|||
amount INTEGER NOT NULL |
|||
); |
@ -0,0 +1,5 @@ |
|||
from lnbits.db import open_ext_db |
|||
|
|||
|
|||
def migrate(): |
|||
print("pending") |
@ -1 +0,0 @@ |
|||
/* create your extensions table and the variables needed here */ |
@ -0,0 +1,22 @@ |
|||
from lnbits.db import open_ext_db |
|||
|
|||
|
|||
def m001_initial(db): |
|||
""" |
|||
Initial paywalls table. |
|||
""" |
|||
db.execute(""" |
|||
CREATE TABLE IF NOT EXISTS paywalls ( |
|||
id TEXT PRIMARY KEY, |
|||
wallet TEXT NOT NULL, |
|||
url TEXT NOT NULL, |
|||
memo TEXT NOT NULL, |
|||
amount INTEGER NOT NULL, |
|||
time TIMESTAMP NOT NULL DEFAULT (strftime('%s', 'now')) |
|||
); |
|||
""") |
|||
|
|||
|
|||
def migrate(): |
|||
with open_ext_db("tpos") as db: |
|||
m001_initial(db) |
@ -1,8 +0,0 @@ |
|||
CREATE TABLE IF NOT EXISTS paywalls ( |
|||
id TEXT PRIMARY KEY, |
|||
wallet TEXT NOT NULL, |
|||
url TEXT NOT NULL, |
|||
memo TEXT NOT NULL, |
|||
amount INTEGER NOT NULL, |
|||
time TIMESTAMP NOT NULL DEFAULT (strftime('%s', 'now')) |
|||
); |
@ -0,0 +1,20 @@ |
|||
from lnbits.db import open_ext_db |
|||
|
|||
|
|||
def m001_initial(db): |
|||
""" |
|||
Initial tposs table. |
|||
""" |
|||
db.execute(""" |
|||
CREATE TABLE IF NOT EXISTS tposs ( |
|||
id TEXT PRIMARY KEY, |
|||
wallet TEXT NOT NULL, |
|||
name TEXT NOT NULL, |
|||
currency TEXT NOT NULL |
|||
); |
|||
""") |
|||
|
|||
|
|||
def migrate(): |
|||
with open_ext_db("tpos") as db: |
|||
m001_initial(db) |
@ -1,6 +0,0 @@ |
|||
CREATE TABLE IF NOT EXISTS tposs ( |
|||
id TEXT PRIMARY KEY, |
|||
wallet TEXT NOT NULL, |
|||
name TEXT NOT NULL, |
|||
currency TEXT NOT NULL |
|||
); |
@ -0,0 +1,37 @@ |
|||
from datetime import datetime |
|||
from uuid import uuid4 |
|||
|
|||
from lnbits.db import open_ext_db |
|||
|
|||
|
|||
def m001_initial(db): |
|||
""" |
|||
Initial withdraw table. |
|||
""" |
|||
db.execute( |
|||
""" |
|||
CREATE TABLE IF NOT EXISTS withdraws ( |
|||
key INTEGER PRIMARY KEY AUTOINCREMENT, |
|||
usr TEXT, |
|||
wal TEXT, |
|||
walnme TEXT, |
|||
adm INTEGER, |
|||
uni TEXT, |
|||
tit TEXT, |
|||
maxamt INTEGER, |
|||
minamt INTEGER, |
|||
spent INTEGER, |
|||
inc INTEGER, |
|||
tme INTEGER, |
|||
uniq INTEGER DEFAULT 0, |
|||
withdrawals TEXT, |
|||
tmestmp INTEGER, |
|||
rand TEXT |
|||
); |
|||
""" |
|||
) |
|||
|
|||
|
|||
def migrate(): |
|||
with open_ext_db("withdraw") as db: |
|||
m001_initial(db) |
@ -1,18 +0,0 @@ |
|||
CREATE TABLE IF NOT EXISTS withdraws ( |
|||
key INTEGER PRIMARY KEY AUTOINCREMENT, |
|||
usr TEXT, |
|||
wal TEXT, |
|||
walnme TEXT, |
|||
adm INTEGER, |
|||
uni TEXT, |
|||
tit TEXT, |
|||
maxamt INTEGER, |
|||
minamt INTEGER, |
|||
spent INTEGER, |
|||
inc INTEGER, |
|||
tme INTEGER, |
|||
uniq INTEGER DEFAULT 0, |
|||
withdrawals TEXT, |
|||
tmestmp INTEGER, |
|||
rand TEXT |
|||
); |
Loading…
Reference in new issue