Still working on order and orders that are carts
This commit is contained in:
@@ -10,12 +10,13 @@ from app.lib_general import log, logging, logger_reset, send_email
|
||||
# from app.methods.address_methods import load_address_obj
|
||||
from app.methods.contact_methods import create_contact_obj, create_update_contact_obj, create_update_contact_obj_v4, load_contact_obj, update_contact_obj
|
||||
from app.methods.order_cart_methods import get_order_cart_id_for_person_id, load_order_cart_obj
|
||||
from app.methods.order_methods import get_order_rec_list, load_order_obj
|
||||
from app.methods.order_methods import create_order_obj, get_order_id_cart_for_person_id_v3, get_order_rec_list, load_order_obj
|
||||
from app.methods.organization_methods import create_update_organization_obj, load_organization_obj, update_organization_obj
|
||||
# from app.methods.user_methods import create_user_obj, load_user_obj, update_user_obj
|
||||
|
||||
from app.models.common_field_schema import default_num_bytes
|
||||
from app.models.contact_models import Contact_Base
|
||||
from app.models.order_models import Order_Base
|
||||
from app.models.person_models import Person_Base
|
||||
|
||||
|
||||
@@ -273,6 +274,7 @@ def load_person_obj(
|
||||
inc_order_line_list: bool = False,
|
||||
inc_order_list: bool = False,
|
||||
inc_order_cart: bool = False,
|
||||
inc_order_cart_v3: bool = False,
|
||||
inc_organization: bool = False,
|
||||
inc_post_list: bool = False,
|
||||
inc_post_comment_list: bool = False,
|
||||
@@ -360,6 +362,8 @@ def load_person_obj(
|
||||
return False
|
||||
log.debug(person_obj)
|
||||
|
||||
account_id = person_obj.account_id
|
||||
|
||||
# Updated 2021-12-14
|
||||
if inc_contact:
|
||||
log.info('Need to include contact data...')
|
||||
@@ -478,6 +482,40 @@ def load_person_obj(
|
||||
person_obj.order_cart = order_cart_result
|
||||
else: person_obj.order_cart = {} # None
|
||||
|
||||
# Updated 2022-01-21
|
||||
if inc_order_cart_v3:
|
||||
log.info('Need to include order cart (v3)...')
|
||||
if get_order_id_cart_for_person_id_v3_result := get_order_id_cart_for_person_id_v3(
|
||||
person_id = person_id,
|
||||
):
|
||||
order_id_cart = get_order_id_cart_for_person_id_v3_result
|
||||
log.info(f'Got an order to use as a cart. Person ID: {person_id}; Order ID {order_id_cart}')
|
||||
elif get_order_id_cart_for_person_id_v3_result is None:
|
||||
log.info(f'An order for use as a cart was not found. Person ID: {person_id}')
|
||||
order_dict = {}
|
||||
order_dict['status'] = 'open' # open status should be used as an order cart
|
||||
order_dict['checkout_status'] = None
|
||||
try:
|
||||
order_obj = Order_Base(**order_dict)
|
||||
except ValidationError as e:
|
||||
log.error(e.json())
|
||||
# return False
|
||||
person_obj.order_cart_v3 = {}
|
||||
if create_order_obj_result := create_order_obj(
|
||||
account_id = account_id,
|
||||
order_dict_obj = order_obj,
|
||||
person_id = person_id,
|
||||
):
|
||||
order_id_cart = create_order_obj_result
|
||||
else: order_id_cart = None # person_obj.order_cart_v3 = {} # None
|
||||
|
||||
if order_result := load_order_obj(
|
||||
order_id = order_id_cart,
|
||||
inc_order_line_list = True,
|
||||
):
|
||||
person_obj.order_cart_v3 = order_result
|
||||
else: person_obj.order_cart_v3 = {} # None
|
||||
|
||||
# Updated 2021-11-16
|
||||
if inc_order_closed_count:
|
||||
log.setLevel(logging.WARNING) # DEBUG, INFO, WARNING, ERROR, EXCEPTION, CRITICAL
|
||||
|
||||
Reference in New Issue
Block a user