mirror of
https://github.com/sunrin-ana/2025-SSF-dotory-manage.git
synced 2026-03-09 18:10:02 +00:00
fix: buy product
This commit is contained in:
parent
20c99c6e1c
commit
b21fc45c7d
11 changed files with 91 additions and 56 deletions
Binary file not shown.
|
|
@ -5,6 +5,8 @@ import sqlalchemy
|
|||
from models.dotori import UserDotori
|
||||
from flask import current_app
|
||||
from db import db
|
||||
|
||||
|
||||
class DotoriService:
|
||||
@staticmethod
|
||||
def get_user_dotori(user_id: int):
|
||||
|
|
@ -20,7 +22,17 @@ class DotoriService:
|
|||
if not user_dotori:
|
||||
user_dotori = UserDotori(id=user_id, user_id=user_id, dotori_count=1000000)
|
||||
print(f"초기화 완료, {user_id}님의 도토리: {user_dotori.dotori_count}")
|
||||
db.session.execute(sqlalchemy.text("INSERT INTO user_dotori (user_id, dotori_count, created_at, updated_at) VALUES (:user_id, :dotori_count, :created_at, :updated_at)"), {"user_id":user_id, "dotori_count":1000000, "created_at":datetime.now(), "updated_at":datetime.now()})
|
||||
db.session.execute(
|
||||
sqlalchemy.text(
|
||||
"INSERT INTO user_dotori (user_id, dotori_count, created_at, updated_at) VALUES (:user_id, :dotori_count, :created_at, :updated_at)"
|
||||
),
|
||||
{
|
||||
"user_id": user_id,
|
||||
"dotori_count": 1000000,
|
||||
"created_at": datetime.now(),
|
||||
"updated_at": datetime.now(),
|
||||
},
|
||||
)
|
||||
db.session.commit()
|
||||
return user_dotori.dotori_count
|
||||
|
||||
|
|
@ -29,10 +41,12 @@ class DotoriService:
|
|||
user_dotori = UserDotori.query.filter_by(user_id=user_id).first()
|
||||
if not user_dotori:
|
||||
return False
|
||||
|
||||
|
||||
if user_dotori.dotori_count < product_price:
|
||||
return False
|
||||
print(f"구매 완료, {user_id}님의 도토리: {user_dotori.dotori_count} -> {user_dotori.dotori_count - product_price}")
|
||||
print(
|
||||
f"구매 완료, {user_id}님의 도토리: {user_dotori.dotori_count} -> {user_dotori.dotori_count - product_price}"
|
||||
)
|
||||
user_dotori.decrement(product_price)
|
||||
db.session.commit()
|
||||
return True
|
||||
|
|
@ -43,7 +57,9 @@ class DotoriService:
|
|||
if not user_dotori:
|
||||
user_dotori = UserDotori(user_id=user_id)
|
||||
db.session.add(user_dotori)
|
||||
print(f"도토리 추가, {user_id}님의 도토리: {user_dotori.dotori_count} -> {user_dotori.dotori_count + amount}")
|
||||
print(
|
||||
f"도토리 추가, {user_id}님의 도토리: {user_dotori.dotori_count} -> {user_dotori.dotori_count + amount}"
|
||||
)
|
||||
user_dotori.increment(amount)
|
||||
db.session.commit()
|
||||
return user_dotori
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue