add gitignore

This commit is contained in:
janghanul090801 2025-07-09 16:38:03 +09:00
commit bbb2cf8d8d
4 changed files with 17 additions and 18 deletions

1
.gitignore vendored Normal file
View file

@ -0,0 +1 @@
__pycache__/

View file

@ -6,15 +6,13 @@ class UserDotori(db.Model):
__tablename__ = 'user_dotori' __tablename__ = 'user_dotori'
id = db.Column(db.Integer, primary_key=True) id = db.Column(db.Integer, primary_key=True)
user_id = db.Column(db.String(100), unique=True, nullable=False)
dotori_count = db.Column(db.Integer, default=0) dotori_count = db.Column(db.Integer, default=0)
created_at = db.Column(db.DateTime, default=datetime.now) created_at = db.Column(db.DateTime, default=datetime.now)
updated_at = db.Column(db.DateTime, default=datetime.now, onupdate=datetime.now) updated_at = db.Column(db.DateTime, default=datetime.now, onupdate=datetime.now)
def to_dict(self): def to_dict(self):
return { return {
'id': self.id, 'user_id': self.id,
'user_id': self.user_id,
'dotori_count': self.dotori_count, 'dotori_count': self.dotori_count,
'created_at': self.created_at.isoformat(), 'created_at': self.created_at.isoformat(),
'updated_at': self.updated_at.isoformat() 'updated_at': self.updated_at.isoformat()
@ -22,7 +20,7 @@ class UserDotori(db.Model):
def to_response(self): def to_response(self):
return { return {
'userId': self.user_id, 'userId': self.id,
'dotory': self.dotori_count 'dotory': self.dotori_count
} }
@ -38,4 +36,4 @@ class UserDotori(db.Model):
return self.dotori_count return self.dotori_count
return False return False
def __repr__(self): def __repr__(self):
return f"<UserDotori id={self.id} user_id={self.user_id} dotori_count={self.dotori_count}>" return f"<UserDotori user_id={self.id} dotori_count={self.dotori_count}>"

View file

@ -19,7 +19,7 @@ class UserDotori(Resource):
@dotori_ns.route('') @dotori_ns.route('')
class InitializeDotori(Resource): class InitializeDotori(Resource):
@dotori_ns.expect(dotori_ns.model('Initialize', {'userId': fields.String(required=True)})) @dotori_ns.expect(dotori_ns.model('Initialize', {'userId': fields.Integer(required=True)}))
def post(self): def post(self):
data = dotori_ns.payload data = dotori_ns.payload
user_id = data.get('userId') user_id = data.get('userId')

View file

@ -3,25 +3,25 @@ from flask import current_app
from db import db from db import db
class DotoriService: class DotoriService:
@staticmethod @staticmethod
def get_user_dotori(user_id: str): def get_user_dotori(user_id: int):
user_dotori = UserDotori.query.filter_by(user_id=user_id).first() user_dotori = UserDotori.query.filter_by(id=user_id).first()
if user_dotori: if user_dotori:
return user_dotori.dotori_count return user_dotori.dotori_count
return None return None
@staticmethod @staticmethod
def initialize_user_dotori(user_id: str): def initialize_user_dotori(user_id: int):
user_dotori = UserDotori.query.filter_by(user_id=user_id).first() user_dotori = UserDotori.query.filter_by(id=user_id).first()
if not user_dotori: if not user_dotori:
user_dotori = UserDotori(user_id=user_id, dotori_count=1000000) user_dotori = UserDotori(id=user_id, dotori_count=1000000)
print(f"초기화 완료, {user_id}님의 도토리: {user_dotori.dotori_count}") print(f"초기화 완료, {user_id}님의 도토리: {user_dotori.dotori_count}")
db.session.add(user_dotori) db.session.add(user_dotori)
db.session.commit() db.session.commit()
return user_dotori.dotori_count return user_dotori.dotori_count
@staticmethod @staticmethod
def buy_product(user_id: str, product_price: int): def buy_product(user_id: int, product_price: int):
user_dotori = UserDotori.query.filter_by(user_id=user_id).first() user_dotori = UserDotori.query.filter_by(id=user_id).first()
if not user_dotori: if not user_dotori:
return False return False
@ -33,10 +33,10 @@ class DotoriService:
return True return True
@staticmethod @staticmethod
def add_dotori(user_id: str, amount: int): def add_dotori(user_id: int, amount: int):
user_dotori = UserDotori.query.filter_by(user_id=user_id).first() user_dotori = UserDotori.query.filter_by(id=user_id).first()
if not user_dotori: if not user_dotori:
user_dotori = UserDotori(user_id=user_id) user_dotori = UserDotori(id=user_id)
db.session.add(user_dotori) 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) user_dotori.increment(amount)
@ -44,6 +44,6 @@ class DotoriService:
return user_dotori.dotori_count return user_dotori.dotori_count
@staticmethod @staticmethod
def get_all_users_dotori(): def get_all_users_dotori() -> list:
users = UserDotori.query.all() users = UserDotori.query.all()
return [user.to_dict() for user in users] return [user.to_response() for user in users]