set next billing
This commit is contained in:
+2
-1
@@ -46,7 +46,8 @@ ALTER TABLE members ALTER COLUMN password TYPE VARCHAR(250);
|
||||
ALTER TABLE members ADD country VARCHAR(3);
|
||||
ALTER TABLE members ADD stripe_customer_id VARCHAR(100)
|
||||
ALTER TABLE members ADD profile_completed timestamp without time zone DEFAULT NULL;
|
||||
ALTER TABLE members ADD option_name VARCHAR(100) REFERENCES subscription_options(option_name)
|
||||
ALTER TABLE members ADD option_name VARCHAR(100) REFERENCES subscription_options(option_name);
|
||||
ALTER TABLE members ADD next_billing timestamp without time zone;
|
||||
|
||||
CREATE TABLE members_profile(
|
||||
id SERIAL,
|
||||
|
||||
@@ -268,9 +268,12 @@ class SubscriptionsService(BaseService):
|
||||
logger.info(f"HOOK payment_data ==>>>> {payment_data}")
|
||||
paymentAddResult = Payments.add_payment(payment_data["member_id"], payment_data["payment_uid"], payment_data["option_name"],
|
||||
payment_data["amount"], payment_data["option_type"], payment_data["next_billing_days"])
|
||||
logger.info(f"HOOK paymentAddResult ==>>>> {paymentAddResult}")
|
||||
logger.info(f"HOOK paymentAddResult next_billing ==>>>> {paymentAddResult.next_billing}")
|
||||
logger.info(f"HOOK paymentAddResult uid ==>>>> {paymentAddResult.uid}")
|
||||
logger.info(f"HOOK paymentAddResult payment_uid ==>>>> {paymentAddResult.payment_uid}")
|
||||
if paymentAddResult:
|
||||
Members.set_user_option_name(payment_data["member_id"], payment_data["option_name"])
|
||||
Members.set_user_next_billing(payment_data["member_id"], paymentAddResult.next_billing)
|
||||
|
||||
# Simulate processing
|
||||
response_data = {
|
||||
|
||||
@@ -129,6 +129,17 @@ class Members(db.Model):
|
||||
|
||||
return option_name
|
||||
|
||||
@classmethod
|
||||
def set_user_next_billing(cls, member_id, next_billing):
|
||||
member = cls.query.filter_by(id=member_id).first()
|
||||
if not member:
|
||||
raise ValueError(f"Member with ID {member_id} does not exist.")
|
||||
# Update stripe_customer_id
|
||||
member.next_billing = next_billing
|
||||
|
||||
return next_billing
|
||||
|
||||
|
||||
|
||||
@classmethod
|
||||
def get_all_member(cls, email=None, username=None, page=1, limit=20):
|
||||
|
||||
Reference in New Issue
Block a user