Source code for q2_cores.Symitar.queries.skip_loan

import logging
from datetime import datetime

from q2_cores.Symitar.queries.base_query import SymitarBaseQuery
from q2_cores.Symitar.queries import mock_responses


[docs] class SkipLoanQuery(SymitarBaseQuery): """Initiates skip a pay using the Q2.SKIP.PAY repgen""" def __init__( self, logger: logging.Logger, customer_id, unit_number, device_type, card_prefix, repgen, procedure, loan_id, share_charged, fee, loan_note=None, guid=None, use_symxchange=False, ): self.loan_id = loan_id self.share_charged = share_charged self.fee = fee self.loan_note = loan_note if not self.loan_note: self.loan_note = self.get_loan_note() clean_rg_params = { "JRGUSERCHR1": str(loan_id), "JRGUSERCHR2": str(share_charged), "JRGUSERCHR3": str(fee), "JRGUSERCHR4": str(self.loan_note), } super().__init__( logger, customer_id, unit_number, device_type, card_prefix, repgen, procedure, rg_params=clean_rg_params, guid=guid, use_symxchange=use_symxchange, )
[docs] def mock_response(self): return mock_responses.mock_skip_loan_response()
[docs] def get_loan_note(self): now_time = datetime.now() time_format = "%Y-%m-%dT%H:%M:%S" timestamp = now_time.strftime(time_format) note = "Symitar SkipAPay processed on {0}".format(timestamp) return note