import logging
from q2_sdk.models.cores.queries.base_query import BaseQuery
from .mock_responses import mock_initial_search_response
[docs]
class InitialSearchQuery(BaseQuery):
"""
Builds Initial Search request
RM01~~~~~~~123456789~~~~~~~~~
"""
def __init__(
self, logger: logging.Logger, ssn: str = "", last_name: str = "", dob: str = ""
):
self.ssn: str = ssn
self.last_name: str = last_name
self.date_of_birth: str = dob
super().__init__(logger)
[docs]
def build(self) -> str:
"""
Creates the query string
:return: RM01 Customer Search query string
"""
fields = [
"RM01",
"", # account number
self.last_name, # last name
"", # first name
"", # middle name
"", # NP name
"", # NP name
self.ssn, # SSN
"", # street name
"", # city
self.date_of_birth, # dob
"", # user number
"", # zip code
"",
"",
"",
"",
]
return "~".join(fields)
[docs]
def mock_response(self):
return mock_initial_search_response()