From: erickson Date: Wed, 1 Jul 2009 03:10:26 +0000 (+0000) Subject: added user transaction data retrieval, by various types of transaction X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=5f8805ce3fb575f376af792b9de24d1aadf50933;p=working%2Frandom.git added user transaction data retrieval, by various types of transaction git-svn-id: svn://svn.open-ils.org/ILS-Contrib/constrictor/trunk@554 6d9bc8c9-1ec2-4278-b937-99fde70a366f --- diff --git a/contrib/evergreen/eg_tasks.py b/contrib/evergreen/eg_tasks.py index 7579df158..f27fa4292 100644 --- a/contrib/evergreen/eg_tasks.py +++ b/contrib/evergreen/eg_tasks.py @@ -164,3 +164,15 @@ class BibSearchTask(AbstractMethodTask): registerTask(BibSearchTask()) +class UserTransactionsByType(AbstractMethodTask): + + def __init__(self): + AbstractMethodTask.__init__(self) + self.service = 'open-ils.actor' + + def run(self, **kw): + self.method = kw['method'] + return self.runMethod(eg_utils.authtoken(), kw['user_id']) + +registerTask(UserTransactionsByType()) + diff --git a/contrib/evergreen/eg_user_transactions.py b/contrib/evergreen/eg_user_transactions.py new file mode 100644 index 000000000..315c93865 --- /dev/null +++ b/contrib/evergreen/eg_user_transactions.py @@ -0,0 +1,42 @@ +from constrictor.task import Task +from constrictor.script import Script, ScriptManager, ScriptThread +from constrictor.log import * +import eg_utils, eg_data, eg_tasks +import random + +eg_utils.init() + +types = [ + 'open-ils.actor.user.transactions.history', + 'open-ils.actor.user.transactions.history.have_charge', + 'open-ils.actor.user.transactions.history.have_balance', + 'open-ils.actor.user.transactions.history.have_balance.authoritative', + 'open-ils.actor.user.transactions.history.still_open', + 'open-ils.actor.user.transactions.history.have_bill', + 'open-ils.actor.user.transactions.history.have_bill.authoritative', + 'open-ils.actor.user.transactions.have_balance', + 'open-ils.actor.user.transactions.have_balance.total', + 'open-ils.actor.user.transactions.have_balance.count', + 'open-ils.actor.user.transactions' +] + +class BibSearchScript(Script): + + def run(self): + + dm = eg_data.DataManager() + user_id = dm.getThreadData(eg_data.PROP_PATRON_IDS) + + for type in types: + logInfo('Loading patron(%s) transactions with %s' % (int(user_id), type)) + res = eg_tasks.TASKS['UserTransactionsByType'].run( + method = type, + user_id = user_id + ) + + return True + +ScriptManager.go(BibSearchScript()) + + +