import logging
from q2_sdk.models.cores.queries.base_query import BaseQuery
from q2_cores import data_helpers
from q2_cores.Users.queries import mock_responses
[docs]
class GetSubAccountListQuery(BaseQuery):
"""Returns rates and other details from core based on the selected funding amount"""
def __init__(self, logger: logging.Logger, member_number: int):
self.member_number = member_number
super().__init__(logger)
[docs]
def build(self):
xml_str = """
<SIGNUPMSGSRQV1>
<USERS.OPENACNTBLTRNRQ>
<TRNUID>27</TRNUID>
<OPENACNTBLRQ>
<ACN>{!s}</ACN>
</OPENACNTBLRQ>
</USERS.OPENACNTBLTRNRQ>
</SIGNUPMSGSRQV1>
""".format(self.member_number)
return data_helpers.normalize_xml_str(xml_str)
[docs]
def mock_response(self):
return mock_responses.mock_get_sub_accounts_details_response()
[docs]
class GetSubAccountDetailsQuery(BaseQuery):
"""Returns rates and other details from core"""
def __init__(
self,
logger: logging.Logger,
member_number: int,
account_id: str,
account_type: str,
funding_amount: float,
):
self.account_id = account_id
self.account_type = account_type
self.funding_amount = funding_amount
self.member_number = member_number
super().__init__(logger)
[docs]
def build(self):
xml_str = """
<SIGNUPMSGSRQV1>
<USERS.OPENACNTBLTRNRQ>
<TRNUID>27</TRNUID>
<OPENACNTBLRQ>
<ACN>{!s}</ACN>
</OPENACNTBLRQ>
</USERS.OPENACNTBLTRNRQ>
</SIGNUPMSGSRQV1>
""".format(self.member_number)
return data_helpers.normalize_xml_str(xml_str)
[docs]
def mock_response(self):
return mock_responses.mock_get_sub_accounts_details_response()