agent.py 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. # -*- coding: utf-8 -*-
  2. #!/usr/bin/env python
  3. import os
  4. import sys
  5. import random
  6. #: current_dir - 2
  7. from apps.web.agent.define import AGENT_INCOME_SOURCE
  8. PROJECT_ROOT = os.path.join(os.path.abspath(os.path.split(os.path.realpath(__file__))[0] + "/.."), '..')
  9. sys.path.insert(0, PROJECT_ROOT)
  10. import faker
  11. from script.base import init_env, get_logger
  12. logger = get_logger(__name__)
  13. init_env(interactive=True)
  14. from apps.web.constant import Const
  15. fake = faker.Faker()
  16. def simulate():
  17. for _ in xrange(300):
  18. random_date_time = fake.date_time_between(start_date='-100d')
  19. random_date_time_str = random_date_time.strftime(Const.DATE_FMT)
  20. detail_map = {
  21. 'ad': {'adId': random.choice(['10001', '10002']), 'logicalCode': '10000', 'dealer': 'robert'},
  22. 'dealer_withdraw_fee': {'name': random.choice(['whoami', 'quick']), 'withdraw': 100},
  23. 'dealer_card_fee': {'name': 'whothedealer'}
  24. }
  25. random_source = random.choice([_.lower() for _ in dir(AGENT_INCOME_SOURCE) if not _.startswith('_')])
  26. test_payload = {
  27. 'agentId': '6417d4456f29257125ebf705',
  28. 'date': random_date_time_str,
  29. 'detail': detail_map[random_source],
  30. 'amount' : random.choice([10.6, 5.5, 3]),
  31. 'source' : random_source,
  32. 'dateTimeAdded': random_date_time
  33. }
  34. print 'inserting...', test_payload
  35. # record_agent_income(,
  36. print 'finished'
  37. if __name__ == '__main__':
  38. simulate()