Refactor MyExtension to DCA Admin: Update extension name and description in config.json, remove legacy MyExtension CRUD operations and related API endpoints, and adjust router tags. Clean up unused files and methods to streamline the codebase for DCA administration functionality.

Refactor DCA Admin page endpoints: Update description, remove unused CRUD operations and API endpoints related to MyExtension, and streamline the code for improved clarity and functionality.

Remove QR Code dialog from MyExtension index.html: streamline the UI by eliminating unused dialog components, enhancing code clarity and maintainability.
This commit is contained in:
padreug 2025-06-20 21:51:38 +02:00
parent edca91579c
commit 75dd03b15a
13 changed files with 32 additions and 971 deletions

36
crud.py
View file

@ -7,7 +7,6 @@ from lnbits.db import Database
from lnbits.helpers import urlsafe_short_hash
from .models import (
CreateMyExtensionData, MyExtension,
CreateDcaClientData, DcaClient, UpdateDcaClientData,
CreateDepositData, DcaDeposit, UpdateDepositStatusData,
CreateDcaPaymentData, DcaPayment,
@ -19,41 +18,6 @@ from .models import (
db = Database("ext_myextension")
async def create_myextension(data: CreateMyExtensionData) -> MyExtension:
data.id = urlsafe_short_hash()
await db.insert("myextension.maintable", data)
return MyExtension(**data.dict())
async def get_myextension(myextension_id: str) -> Optional[MyExtension]:
return await db.fetchone(
"SELECT * FROM myextension.maintable WHERE id = :id",
{"id": myextension_id},
MyExtension,
)
async def get_myextensions(wallet_ids: Union[str, List[str]]) -> List[MyExtension]:
if isinstance(wallet_ids, str):
wallet_ids = [wallet_ids]
q = ",".join([f"'{w}'" for w in wallet_ids])
return await db.fetchall(
f"SELECT * FROM myextension.maintable WHERE wallet IN ({q}) ORDER BY id",
model=MyExtension,
)
async def update_myextension(data: CreateMyExtensionData) -> MyExtension:
await db.update("myextension.maintable", data)
return MyExtension(**data.dict())
async def delete_myextension(myextension_id: str) -> None:
await db.execute(
"DELETE FROM myextension.maintable WHERE id = :id", {"id": myextension_id}
)
# DCA Client CRUD Operations
async def create_dca_client(data: CreateDcaClientData) -> DcaClient:
client_id = urlsafe_short_hash()