fixup!
This commit is contained in:
@@ -113,8 +113,6 @@ class Account(BaseModel):
|
|||||||
username: Optional[str] = None
|
username: Optional[str] = None
|
||||||
password_hash: Optional[str] = None
|
password_hash: Optional[str] = None
|
||||||
email: Optional[str] = None
|
email: Optional[str] = None
|
||||||
balance_msat: Optional[int] = 0
|
|
||||||
last_payment: Optional[datetime] = None
|
|
||||||
extra: Optional[UserExtra] = None
|
extra: Optional[UserExtra] = None
|
||||||
created_at: datetime = datetime.now()
|
created_at: datetime = datetime.now()
|
||||||
updated_at: datetime = datetime.now()
|
updated_at: datetime = datetime.now()
|
||||||
@@ -144,6 +142,8 @@ class Account(BaseModel):
|
|||||||
class AccountOverview(Account):
|
class AccountOverview(Account):
|
||||||
transaction_count: Optional[int] = 0
|
transaction_count: Optional[int] = 0
|
||||||
wallet_count: Optional[int] = 0
|
wallet_count: Optional[int] = 0
|
||||||
|
balance_msat: Optional[int] = 0
|
||||||
|
last_payment: Optional[datetime] = None
|
||||||
|
|
||||||
|
|
||||||
class AccountFilters(FilterModel):
|
class AccountFilters(FilterModel):
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
<script src="{{ static_url_for('static', 'js/wallet.js') }}"></script>
|
<script src="{{ static_url_for('static', 'js/wallet.js') }}"></script>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
<!---->
|
<!---->
|
||||||
{% block title %} {{ wallet.name }} - {{ SITE_TITLE }} {% endblock %}
|
{% block title %}{{ wallet_name }} - {{ SITE_TITLE }} {% endblock %}
|
||||||
<!---->
|
<!---->
|
||||||
{% block page %}
|
{% block page %}
|
||||||
<div class="row q-col-gutter-md">
|
<div class="row q-col-gutter-md">
|
||||||
|
|||||||
@@ -202,6 +202,7 @@ async def wallet(
|
|||||||
{
|
{
|
||||||
"user": user.json(),
|
"user": user.json(),
|
||||||
"wallet": wallet.json(),
|
"wallet": wallet.json(),
|
||||||
|
"wallet_name": wallet.name,
|
||||||
"currencies": allowed_currencies(),
|
"currencies": allowed_currencies(),
|
||||||
"service_fee": settings.lnbits_service_fee,
|
"service_fee": settings.lnbits_service_fee,
|
||||||
"service_fee_max": settings.lnbits_service_fee_max,
|
"service_fee_max": settings.lnbits_service_fee_max,
|
||||||
|
|||||||
+4
-1
@@ -619,7 +619,7 @@ def dict_to_model(_row: dict, model: type[TModel]) -> TModel:
|
|||||||
"""
|
"""
|
||||||
# TODO: no recursion, maybe make them recursive?
|
# TODO: no recursion, maybe make them recursive?
|
||||||
# TODO: check why keys are sometimes not in the dict
|
# TODO: check why keys are sometimes not in the dict
|
||||||
_dict = {}
|
_dict: dict = {}
|
||||||
for key, value in _row.items():
|
for key, value in _row.items():
|
||||||
if key not in model.__fields__:
|
if key not in model.__fields__:
|
||||||
logger.warning(f"Converting {key} to model `{model}`.")
|
logger.warning(f"Converting {key} to model `{model}`.")
|
||||||
@@ -628,6 +628,9 @@ def dict_to_model(_row: dict, model: type[TModel]) -> TModel:
|
|||||||
continue
|
continue
|
||||||
type_ = model.__fields__[key].type_
|
type_ = model.__fields__[key].type_
|
||||||
if issubclass(type_, BaseModel) and value is not None:
|
if issubclass(type_, BaseModel) and value is not None:
|
||||||
|
if isinstance(value, str) and value == "null":
|
||||||
|
_dict[key] = None
|
||||||
|
continue
|
||||||
_dict[key] = type_.construct(**json.loads(value))
|
_dict[key] = type_.construct(**json.loads(value))
|
||||||
continue
|
continue
|
||||||
_dict[key] = value
|
_dict[key] = value
|
||||||
|
|||||||
@@ -585,12 +585,12 @@
|
|||||||
:rows="paymentsOmitter"
|
:rows="paymentsOmitter"
|
||||||
:row-key="paymentTableRowKey"
|
:row-key="paymentTableRowKey"
|
||||||
:columns="paymentsTable.columns"
|
:columns="paymentsTable.columns"
|
||||||
:pagination.sync="paymentsTable.pagination"
|
|
||||||
:no-data-label="$t('no_transactions')"
|
:no-data-label="$t('no_transactions')"
|
||||||
:filter="paymentsTable.search"
|
:filter="paymentsTable.search"
|
||||||
:loading="paymentsTable.loading"
|
:loading="paymentsTable.loading"
|
||||||
:hide-header="mobileSimple"
|
:hide-header="mobileSimple"
|
||||||
:hide-bottom="mobileSimple"
|
:hide-bottom="mobileSimple"
|
||||||
|
v-model:pagination="paymentsTable.pagination"
|
||||||
@request="fetchPayments"
|
@request="fetchPayments"
|
||||||
>
|
>
|
||||||
<template v-slot:header="props">
|
<template v-slot:header="props">
|
||||||
|
|||||||
Reference in New Issue
Block a user