Work on order and Strip related. Also general code clean up

This commit is contained in:
Scott Idem
2022-01-25 20:01:46 -05:00
parent 86b06226cb
commit 59b263e5b8
5 changed files with 19 additions and 8 deletions

View File

@@ -345,7 +345,7 @@ def get_order_id_cart_for_person_id_v3(
FROM `order` AS `order` FROM `order` AS `order`
WHERE WHERE
`order`.person_id = :person_id `order`.person_id = :person_id
AND `order`.status = 'open' AND `order`.status IN ('open', 'locked')
{sql_enabled} {sql_enabled}
ORDER BY `order`.created_on DESC, `order`.updated_on DESC ORDER BY `order`.created_on DESC, `order`.updated_on DESC
{sql_limit}; {sql_limit};
@@ -534,7 +534,7 @@ def get_order_rec_list(
from_datetime: datetime.datetime = None, from_datetime: datetime.datetime = None,
to_datetime: datetime.datetime = None, to_datetime: datetime.datetime = None,
# balance_gt: int = 0, # $0 to $99999 # balance_gt: int = 0, # $0 to $99999
status: str = 'closed', # started, in progress, complete, all status: list|str = 'closed', # started, in progress, complete, all
# checkout_status: str = 'none', # none, canceled, waiting, success, failed, unknown # checkout_status: str = 'none', # none, canceled, waiting, success, failed, unknown
enabled: str = 'enabled', # enabled, disabled, all enabled: str = 'enabled', # enabled, disabled, all
limit: int = 500, limit: int = 500,
@@ -560,7 +560,10 @@ def get_order_rec_list(
# allowed_status_li = ['open', 'locked', 'reopened', 'closed', 'canceled', 'other'] # NEW list # allowed_status_li = ['open', 'locked', 'reopened', 'closed', 'canceled', 'other'] # NEW list
allowed_status_li = ['open', 'locked', 'in progress', 'reopened', 'closed', 'complete', 'canceled', 'other'] # TEMPORARY list... allowed_status_li = ['open', 'locked', 'in progress', 'reopened', 'closed', 'complete', 'canceled', 'other'] # TEMPORARY list...
sql_status = '' sql_status = ''
if status in allowed_status_li: if isinstance(status, list):
data['status'] = status
sql_status = f'AND `order`.status IN :status'
elif status in allowed_status_li:
if status == 'closed' or status == 'complete': if status == 'closed' or status == 'complete':
data['status'] = ['closed', 'complete'] data['status'] = ['closed', 'complete']
sql_status = f'AND `order`.status IN :status' sql_status = f'AND `order`.status IN :status'

View File

@@ -85,9 +85,9 @@ class Account_Cfg_Base(BaseModel):
hide_posts_after: Optional[int] # Should posts be singular? hide_posts_after: Optional[int] # Should posts be singular?
delete_posts_after: Optional[int] # Should posts be singular? delete_posts_after: Optional[int] # Should posts be singular?
stripe_api_key: Optional[str] stripe_api_key: Optional[str] # Secret/Private
stripe_publishable_key: Optional[str] stripe_publishable_key: Optional[str] # Publish/Sharable
stripe_account_id: Optional[str] stripe_account_id: Optional[str] # Connected Stripe Account ID
created_on: Optional[datetime.datetime] = None created_on: Optional[datetime.datetime] = None
updated_on: Optional[datetime.datetime] = None updated_on: Optional[datetime.datetime] = None

View File

@@ -31,6 +31,9 @@ class Order_Cfg_Base(BaseModel):
order_fundraising_thanks: Optional[str] order_fundraising_thanks: Optional[str]
order_fundraising_message: Optional[str] order_fundraising_message: Optional[str]
stripe_api_key: Optional[str] # Secret/Private
stripe_publishable_key: Optional[str] # Publish/Sharable
stripe_account_id: Optional[str] # Connected Stripe Account ID
_processed_at: datetime.datetime = PrivateAttr(default_factory=datetime.datetime.now) _processed_at: datetime.datetime = PrivateAttr(default_factory=datetime.datetime.now)

View File

@@ -36,7 +36,7 @@ class Order_Base(BaseModel):
total_bill: Optional[int] = Field(0, ge=0, lt=1500000) # Set with triggers; matches total_amount in order_cart total_bill: Optional[int] = Field(0, ge=0, lt=1500000) # Set with triggers; matches total_amount in order_cart
total_paid: Optional[int] = Field(0, ge=0, lt=1500000) total_paid: Optional[int] = Field(0, ge=0, lt=1500000)
balance: Optional[int] = Field(0, ge=-1500000, lt=1500000) # Calculated with trigger balance: Optional[int] = Field(0, ge=-1500000, lt=1500000) # Calculated with trigger
status: Optional[str] # open, locked, reopened, closed, canceled, other status: Optional[Union[list,str]] # open, locked, reopened, closed, canceled, other
# open = building or creating cart, payment failed and no partial payment already processed # open = building or creating cart, payment failed and no partial payment already processed
# locked = processing payment, partial payment processed, admin lock? (no changes allowed) # locked = processing payment, partial payment processed, admin lock? (no changes allowed)
# closed = successful payment(s) with no balance, complete (no changes allowed) # closed = successful payment(s) with no balance, complete (no changes allowed)
@@ -44,12 +44,16 @@ class Order_Base(BaseModel):
# other = other reasons (no changes allowed) # other = other reasons (no changes allowed)
checkout_status: Optional[str] # canceled, waiting, success, failed, unknown checkout_status: Optional[str] # canceled, waiting, success, failed, unknown
# none = no checkout attempted # none = no checkout attempted
# started = checkout session has started
# created = checkout session created
# canceled = checkout attempted but canceled for some reason # canceled = checkout attempted but canceled for some reason
# waiting = the payment is processing or awaiting some type of authorization # waiting = the payment is processing or awaiting some type of authorization
# success = payment successful (their may still be a balance) # success = payment successful (their may still be a balance)
# failed = the payment failed for some reason # failed = the payment failed for some reason
# unknown = unknown response... # unknown = unknown response...
stripe_checkout_session_id: Optional[str] # 67 characters long
notes: Optional[str] notes: Optional[str]
created_on: Optional[datetime.datetime] = None created_on: Optional[datetime.datetime] = None
@@ -60,6 +64,7 @@ class Order_Base(BaseModel):
dollar_total_bill: Optional[str] # From SQL view dollar_total_bill: Optional[str] # From SQL view
dollar_total_paid: Optional[str] # From SQL view dollar_total_paid: Optional[str] # From SQL view
dollar_balance: Optional[str] # From SQL view dollar_balance: Optional[str] # From SQL view
person_stripe_customer_id: Optional[str] # From SQL view
# Including other related objects # Including other related objects
cfg: Optional[Order_Cfg_Base] cfg: Optional[Order_Cfg_Base]

View File

@@ -95,7 +95,7 @@ async def patch_order_obj(
commons: Common_Route_Params = Depends(common_route_params), commons: Common_Route_Params = Depends(common_route_params),
): ):
log.setLevel(logging.INFO) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL log.setLevel(logging.DEBUG) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
log.debug(locals()) log.debug(locals())
# ### SECTION ### Secondary data validation # ### SECTION ### Secondary data validation