This commit is contained in:
aaron 2025-06-13 11:06:15 +08:00
parent 347e171849
commit f4d9bc7b73
2 changed files with 28 additions and 23 deletions

View File

@ -105,38 +105,43 @@ async def create_order(request: CreateOrderRequest,
class NotifyRequest(BaseModel):
merchantOrderNo: str
status: str
@router.post("/notify")
async def notify(notify: NotifyRequest, session: Session = Depends(get_db)):
try:
# 更新订单状态
subscription_order_manager = SubscriptionOrderManager(session)
subscription_order_manager.update_order_status(notify.merchantOrderNo, 2)
## 订单完成
if notify.status == "1":
# 更新订单状态
subscription_order_manager.update_order_status(notify.merchantOrderNo, 2)
order = subscription_order_manager.get_order_by_id(notify.merchantOrderNo)
order = subscription_order_manager.get_order_by_id(notify.merchantOrderNo)
if order is None:
return {
"code": 500,
"message": "Order not found"
}
if order is None:
return {
"code": 500,
"message": "Order not found"
}
user_id = order['user_id']
member_type = order['member_type']
time_type = order['time_type']
user_id = order['user_id']
member_type = order['member_type']
time_type = order['time_type']
if time_type == 1:
expire_time = datetime.now() + timedelta(days=30)
elif time_type == 2:
expire_time = datetime.now() + timedelta(days=365)
if time_type == 1:
expire_time = datetime.now() + timedelta(days=30)
elif time_type == 2:
expire_time = datetime.now() + timedelta(days=365)
#增加用户订阅记录
user_subscription_manager = UserSubscriptionManager(session)
user_subscription_manager.create_subscription(user_id,
member_type,
time_type,
notify.merchantOrderNo,
expire_time)
#增加用户订阅记录
user_subscription_manager = UserSubscriptionManager(session)
user_subscription_manager.create_subscription(user_id,
member_type,
time_type,
notify.merchantOrderNo,
expire_time)
else:
subscription_order_manager.update_order_status(notify.merchantOrderNo, 4)
return "ok"
except Exception as e:

View File

@ -29,7 +29,7 @@ services:
cryptoai-api:
build: .
container_name: cryptoai-api
image: cryptoai-api:0.2.8
image: cryptoai-api:0.2.9
restart: always
ports:
- "8000:8000"