trex-model 1.5.16__tar.gz → 1.5.18__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of trex-model might be problematic. Click here for more details.
- {trex-model-1.5.16 → trex-model-1.5.18}/PKG-INFO +1 -1
- {trex-model-1.5.16 → trex-model-1.5.18}/setup.py +1 -1
- {trex-model-1.5.16 → trex-model-1.5.18}/trex_model.egg-info/PKG-INFO +1 -1
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/customer_models.py +2 -2
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/lucky_draw_models.py +3 -3
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/merchant_models.py +8 -2
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/prepaid_models.py +30 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/redeem_models.py +45 -15
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/reward_models.py +35 -4
- {trex-model-1.5.16 → trex-model-1.5.18}/LICENSE +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/MANIFEST.in +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/README.md +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/setup.cfg +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trex_model.egg-info/SOURCES.txt +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trex_model.egg-info/dependency_links.txt +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trex_model.egg-info/requires.txt +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trex_model.egg-info/top_level.txt +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/__init__.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/conf.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/__init__.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/__init__.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/admin_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/analytic_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/app_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/coporate_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/customer_model_helpers.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/fb_subsriber_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/helper/__init__.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/helper/reward_model_helpers.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/helper/reward_transaction_helper.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/import_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/inventory_model.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/loyalty_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/marketing_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/membership_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/message_model_helper.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/message_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/model_decorators.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/ndb_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/pos_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/product_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/program_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/rating_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/recruit_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/redemption_catalogue_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/referral_program_model.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/spending_base_program_model.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/system_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/task_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/test_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/transaction_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/user_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/voucher_models.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/merchant_helpers.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/model_decorator.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/prepaid_helpers.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/pos_conf.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/program_conf.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/utils/__init__.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/utils/gcloud/__init__.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/utils/gcloud/datastore_util.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/utils/model/__init__.py +0 -0
- {trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/utils/model/model_util.py +0 -0
|
@@ -768,7 +768,7 @@ class CustomerMembership(BaseNModel, DictModel):
|
|
|
768
768
|
renewed_outlet = ndb.KeyProperty(name="renewed_outlet", kind=Outlet)
|
|
769
769
|
|
|
770
770
|
dict_properties =[
|
|
771
|
-
'customer', 'merchant_membership_entity', 'entitled_date', 'expiry_date'
|
|
771
|
+
'customer', 'merchant_membership_entity', 'entitled_date', 'expiry_date', 'merchant_membership_key'
|
|
772
772
|
]
|
|
773
773
|
|
|
774
774
|
@property
|
|
@@ -1001,7 +1001,7 @@ class CustomerTierMembership(BaseNModel, DictModel):
|
|
|
1001
1001
|
valid = ndb.BooleanProperty(required=True, default=True)
|
|
1002
1002
|
|
|
1003
1003
|
dict_properties =[
|
|
1004
|
-
'customer', 'merchant_tier_membership_entity', 'entitled_date', 'expiry_date', 'valid'
|
|
1004
|
+
'customer', 'merchant_tier_membership_entity', 'entitled_date', 'expiry_date', 'valid', 'merchant_tier_membership_key',
|
|
1005
1005
|
]
|
|
1006
1006
|
|
|
1007
1007
|
|
|
@@ -569,11 +569,11 @@ class LuckyDrawTicket(BaseNModel, DictModel):
|
|
|
569
569
|
return LuckyDrawTicket.query(ndb.AND(LuckyDrawTicket.merchant_acct==merchant_acct.create_ndb_key())).count(limit=model_conf.MAX_FETCH_RECORD)
|
|
570
570
|
|
|
571
571
|
@staticmethod
|
|
572
|
-
def
|
|
572
|
+
def list_by_merchant_acct(merchant_acct, offset=0, limit=50, start_cursor=None, return_with_cursor=True):
|
|
573
573
|
query = LuckyDrawTicket.query(ndb.AND(LuckyDrawTicket.merchant_acct==merchant_acct.create_ndb_key(),))
|
|
574
|
-
|
|
574
|
+
return LuckyDrawTicket.list_all_with_condition_query(query, start_cursor=start_cursor, return_with_cursor=return_with_cursor, offset=offset, limit=limit)
|
|
575
|
+
|
|
575
576
|
|
|
576
|
-
return (result, next_cursor)
|
|
577
577
|
|
|
578
578
|
@staticmethod
|
|
579
579
|
def create_for_customer_from_sales_amount(customer_acct, sales_amount=None, merchant_acct=None, transact_outlet=None):
|
|
@@ -1328,8 +1328,14 @@ class MerchantAcct(MerchantMin):
|
|
|
1328
1328
|
|
|
1329
1329
|
|
|
1330
1330
|
@staticmethod
|
|
1331
|
-
def list(offset=
|
|
1332
|
-
|
|
1331
|
+
def list(offset=None, start_cursor=None, return_with_cursor=False, limit = model_conf.MAX_FETCH_RECORD):
|
|
1332
|
+
if return_with_cursor:
|
|
1333
|
+
query = MerchantAcct.query()
|
|
1334
|
+
(result, next_cursor) = MerchantAcct.list_all_with_condition_query(query, start_cursor=start_cursor, return_with_cursor=True, limit=limit)
|
|
1335
|
+
|
|
1336
|
+
return (result, next_cursor)
|
|
1337
|
+
else:
|
|
1338
|
+
return MerchantAcct.query().order(-MerchantAcct.registered_datetime).fetch(offset=offset, limit=limit)
|
|
1333
1339
|
|
|
1334
1340
|
def delete_and_related(self):
|
|
1335
1341
|
|
|
@@ -640,4 +640,34 @@ class CustomerPrepaidReward(BaseNModel,DictModel):
|
|
|
640
640
|
def delete_all_by_customer(customer):
|
|
641
641
|
query = CustomerPrepaidReward.query(ancestor=customer.create_ndb_key())
|
|
642
642
|
CustomerPrepaidReward.delete_multiples(query)
|
|
643
|
+
|
|
644
|
+
@staticmethod
|
|
645
|
+
def list_by_merchant_acct(merchant_acct, datetime_range_start=None, datetime_range_end=None, offset=0, limit=50, start_cursor=None, return_with_cursor=True):
|
|
646
|
+
if is_not_empty(datetime_range_start) and is_not_empty(datetime_range_end):
|
|
647
|
+
query = CustomerPrepaidReward.query(ndb.AND(
|
|
648
|
+
CustomerPrepaidReward.merchant_acct==merchant_acct.create_ndb_key(),
|
|
649
|
+
CustomerPrepaidReward.topup_datetime>=datetime_range_start,
|
|
650
|
+
CustomerPrepaidReward.topup_datetime<datetime_range_end,
|
|
651
|
+
))
|
|
652
|
+
else:
|
|
653
|
+
query = CustomerPrepaidReward.query(ndb.AND(
|
|
654
|
+
CustomerPrepaidReward.merchant_acct==merchant_acct.create_ndb_key(),
|
|
655
|
+
))
|
|
656
|
+
|
|
657
|
+
return CustomerPrepaidReward.list_all_with_condition_query(query, start_cursor=start_cursor, return_with_cursor=return_with_cursor, offset=offset, limit=limit)
|
|
658
|
+
|
|
659
|
+
@staticmethod
|
|
660
|
+
def count_by_merchant_acct(merchant_acct, datetime_range_start=None, datetime_range_end=None, limit=conf.MAX_FETCH_RECORD,):
|
|
661
|
+
if is_not_empty(datetime_range_start) and is_not_empty(datetime_range_end):
|
|
662
|
+
query = CustomerPrepaidReward.query(ndb.AND(
|
|
663
|
+
CustomerPrepaidReward.merchant_acct==merchant_acct.create_ndb_key(),
|
|
664
|
+
CustomerPrepaidReward.topup_datetime>=datetime_range_start,
|
|
665
|
+
CustomerPrepaidReward.topup_datetime<datetime_range_end,
|
|
666
|
+
))
|
|
667
|
+
else:
|
|
668
|
+
query = CustomerPrepaidReward.query(ndb.AND(
|
|
669
|
+
CustomerPrepaidReward.merchant_acct==merchant_acct.create_ndb_key(),
|
|
670
|
+
))
|
|
671
|
+
|
|
672
|
+
return CustomerPrepaidReward.count_with_condition_query(query, limit)
|
|
643
673
|
|
|
@@ -20,6 +20,7 @@ from trexmodel.models.datastore.transaction_models import CustomerTransaction
|
|
|
20
20
|
from trexmodel.models.datastore.prepaid_models import CustomerPrepaidReward
|
|
21
21
|
from trexmodel.models.datastore.redemption_catalogue_models import RedemptionCatalogue
|
|
22
22
|
from trexmodel.models.datastore import user_models
|
|
23
|
+
from _ast import Is
|
|
23
24
|
|
|
24
25
|
|
|
25
26
|
logger = logging.getLogger('debug')
|
|
@@ -188,18 +189,47 @@ class CustomerRedemption(BaseNModel, DictModel):
|
|
|
188
189
|
|
|
189
190
|
def to_voucher_upstream_info_list(self):
|
|
190
191
|
upstream_info_list = []
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
192
|
+
try:
|
|
193
|
+
if self.redeemed_summary.get(program_conf.REWARD_FORMAT_VOUCHER) is not None:
|
|
194
|
+
|
|
195
|
+
for merchant_voucher_key, voucher_redeemed_details in self.redeemed_summary.get(program_conf.REWARD_FORMAT_VOUCHER).get('vouchers').items():
|
|
196
|
+
amount = 1
|
|
197
|
+
if isinstance(voucher_redeemed_details, int):
|
|
198
|
+
amount = voucher_redeemed_details
|
|
199
|
+
elif isinstance(voucher_redeemed_details, dict):
|
|
200
|
+
amount = voucher_redeemed_details.get('amount')
|
|
201
|
+
|
|
202
|
+
|
|
203
|
+
upstream_info_list.append(CustomerRedeemedItemUpstream(
|
|
204
|
+
customer_key = self.redeemed_customer_key,
|
|
205
|
+
merchant_key = self.redeemed_merchant_acct_key,
|
|
206
|
+
redeemed_outlet_key = self.redeemed_outlet_key,
|
|
207
|
+
transaction_id = self.transaction_id,
|
|
208
|
+
reward_format = self.reward_format,
|
|
209
|
+
redeemed_datetime = self.redeemed_datetime,
|
|
210
|
+
redeemed_amount = amount,
|
|
211
|
+
voucher_key = merchant_voucher_key,
|
|
212
|
+
))
|
|
213
|
+
else:
|
|
214
|
+
for merchant_voucher_key, amount in self.redeemed_summary.get('vouchers').items():
|
|
215
|
+
upstream_info_list.append(CustomerRedeemedItemUpstream(
|
|
216
|
+
customer_key = self.redeemed_customer_key,
|
|
217
|
+
merchant_key = self.redeemed_merchant_acct_key,
|
|
218
|
+
redeemed_outlet_key = self.redeemed_outlet_key,
|
|
219
|
+
transaction_id = self.transaction_id,
|
|
220
|
+
reward_format = self.reward_format,
|
|
221
|
+
redeemed_datetime = self.redeemed_datetime,
|
|
222
|
+
redeemed_amount = amount,
|
|
223
|
+
voucher_key = merchant_voucher_key,
|
|
224
|
+
))
|
|
225
|
+
|
|
226
|
+
return upstream_info_list
|
|
227
|
+
|
|
228
|
+
except:
|
|
229
|
+
logger.error('failed to process redeem summary where self.redeemed_summary=%s', self.redeemed_summary)
|
|
230
|
+
raise
|
|
231
|
+
|
|
232
|
+
|
|
203
233
|
|
|
204
234
|
def revert(self, reverted_by, reverted_datetime=None):
|
|
205
235
|
self.status = program_conf.REWARD_STATUS_REVERTED
|
|
@@ -244,7 +274,7 @@ class CustomerRedemption(BaseNModel, DictModel):
|
|
|
244
274
|
return result
|
|
245
275
|
|
|
246
276
|
@staticmethod
|
|
247
|
-
def
|
|
277
|
+
def list_by_merchant_acct(merchant_acct, datetime_ranage_start=None, datetime_range_end=None, offset=0, limit=50, start_cursor=None, return_with_cursor=True):
|
|
248
278
|
if is_not_empty(datetime_ranage_start) and is_not_empty(datetime_range_end):
|
|
249
279
|
query = CustomerRedemption.query(ndb.AND(
|
|
250
280
|
CustomerRedemption.merchant_acct==merchant_acct.create_ndb_key(),
|
|
@@ -255,9 +285,9 @@ class CustomerRedemption(BaseNModel, DictModel):
|
|
|
255
285
|
query = CustomerRedemption.query(ndb.AND(
|
|
256
286
|
CustomerRedemption.merchant_acct==merchant_acct.create_ndb_key(),
|
|
257
287
|
))
|
|
258
|
-
|
|
288
|
+
return CustomerRedemption.list_all_with_condition_query(query, start_cursor=start_cursor, return_with_cursor=return_with_cursor, offset=offset, limit=limit)
|
|
259
289
|
|
|
260
|
-
return (result, next_cursor)
|
|
290
|
+
#return (result, next_cursor)
|
|
261
291
|
|
|
262
292
|
@staticmethod
|
|
263
293
|
def list_merchant_transaction(merchant_acct, offset=0, limit=conf.PAGINATION_SIZE, start_cursor=None, return_with_cursor=False, reverse_order=True):
|
|
@@ -151,6 +151,37 @@ class CustomerEntitledReward(RewardEntitlement):
|
|
|
151
151
|
def delete_all_by_customer(cls, customer):
|
|
152
152
|
query = cls.query(ancestor=customer.create_ndb_key())
|
|
153
153
|
cls.delete_multiples(query)
|
|
154
|
+
|
|
155
|
+
@staticmethod
|
|
156
|
+
def count_by_merchant_acct(cls, merchant_acct, datetime_ranage_start=None, datetime_range_end=None):
|
|
157
|
+
if datetime_ranage_start and datetime_range_end:
|
|
158
|
+
result = cls.query(ndb.AND(
|
|
159
|
+
cls.merchant_acct==merchant_acct.create_ndb_key(),
|
|
160
|
+
cls.rewarded_datetime>=datetime_ranage_start,
|
|
161
|
+
cls.rewarded_datetime<datetime_range_end,
|
|
162
|
+
)).count(limit=conf.MAX_FETCH_RECORD)
|
|
163
|
+
else:
|
|
164
|
+
result = cls.query(ndb.AND(
|
|
165
|
+
cls.merchant_acct==merchant_acct.create_ndb_key(),
|
|
166
|
+
)).count(limit=conf.MAX_FETCH_RECORD)
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
return result
|
|
170
|
+
|
|
171
|
+
@classmethod
|
|
172
|
+
def list_by_merchant_acct(cls, merchant_acct, datetime_range_start=None, datetime_range_end=None, offset=0, limit=50, start_cursor=None, return_with_cursor=True):
|
|
173
|
+
if is_not_empty(datetime_range_start) and is_not_empty(datetime_range_end):
|
|
174
|
+
query = cls.query(ndb.AND(
|
|
175
|
+
cls.merchant_acct==merchant_acct.create_ndb_key(),
|
|
176
|
+
cls.rewarded_datetime>=datetime_range_start,
|
|
177
|
+
cls.rewarded_datetime<datetime_range_end,
|
|
178
|
+
))
|
|
179
|
+
else:
|
|
180
|
+
query = cls.query(ndb.AND(
|
|
181
|
+
cls.merchant_acct==merchant_acct.create_ndb_key(),
|
|
182
|
+
))
|
|
183
|
+
return cls.list_all_with_condition_query(query, start_cursor=start_cursor, return_with_cursor=return_with_cursor, offset=offset, limit=limit)
|
|
184
|
+
|
|
154
185
|
|
|
155
186
|
class CustomerCountableReward(CustomerEntitledReward):
|
|
156
187
|
reward_amount = ndb.FloatProperty(required=True, default=0)
|
|
@@ -400,7 +431,7 @@ class CustomerEntitledVoucher(CustomerEntitledReward):
|
|
|
400
431
|
|
|
401
432
|
|
|
402
433
|
return result
|
|
403
|
-
|
|
434
|
+
'''
|
|
404
435
|
@staticmethod
|
|
405
436
|
def list_by_merchant_acct(merchant_acct, datetime_range_start=None, datetime_range_end=None, offset=0, limit=50,):
|
|
406
437
|
if is_not_empty(datetime_range_start) and is_not_empty(datetime_range_end):
|
|
@@ -417,7 +448,7 @@ class CustomerEntitledVoucher(CustomerEntitledReward):
|
|
|
417
448
|
|
|
418
449
|
|
|
419
450
|
@staticmethod
|
|
420
|
-
def list_by_merchant_acct_with_cursor(merchant_acct, datetime_range_start=None, datetime_range_end=None, offset=0, limit=50, start_cursor=None):
|
|
451
|
+
def list_by_merchant_acct_with_cursor(merchant_acct, datetime_range_start=None, datetime_range_end=None, offset=0, limit=50, start_cursor=None, return_with_cursor=True):
|
|
421
452
|
if is_not_empty(datetime_range_start) and is_not_empty(datetime_range_end):
|
|
422
453
|
query = CustomerEntitledVoucher.query(ndb.AND(
|
|
423
454
|
CustomerEntitledVoucher.merchant_acct==merchant_acct.create_ndb_key(),
|
|
@@ -428,10 +459,10 @@ class CustomerEntitledVoucher(CustomerEntitledReward):
|
|
|
428
459
|
query = CustomerEntitledVoucher.query(ndb.AND(
|
|
429
460
|
CustomerEntitledVoucher.merchant_acct==merchant_acct.create_ndb_key(),
|
|
430
461
|
))
|
|
431
|
-
(result, next_cursor) = CustomerEntitledVoucher.list_all_with_condition_query(query, start_cursor=start_cursor, return_with_cursor=
|
|
462
|
+
(result, next_cursor) = CustomerEntitledVoucher.list_all_with_condition_query(query, start_cursor=start_cursor, return_with_cursor=return_with_cursor, offset=offset, limit=limit)
|
|
432
463
|
|
|
433
464
|
return (result, next_cursor)
|
|
434
|
-
|
|
465
|
+
'''
|
|
435
466
|
@staticmethod
|
|
436
467
|
def count_redeemed_by_merchant_voucher_and_passed_redeemed_datetime(customer, merchant_voucher, passed_redeemed_datetime):
|
|
437
468
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/customer_model_helpers.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/helper/reward_model_helpers.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/redemption_catalogue_models.py
RENAMED
|
File without changes
|
{trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/referral_program_model.py
RENAMED
|
File without changes
|
{trex-model-1.5.16 → trex-model-1.5.18}/trexmodel/models/datastore/spending_base_program_model.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|