Subversion Repositories SmartDukaan

Rev

Rev 11819 | Blame | Compare with Previous | Last modification | View Log | RSS feed

#!/usr/bin/env python
#
# Autogenerated by Thrift Compiler (0.7.0)
#
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
#

import sys
import pprint
from urlparse import urlparse
from thrift.transport import TTransport
from thrift.transport import TSocket
from thrift.transport import THttpClient
from thrift.protocol import TBinaryProtocol

import PromotionService
from ttypes import *

if len(sys.argv) <= 1 or sys.argv[1] == '--help':
  print ''
  print 'Usage: ' + sys.argv[0] + ' [-h host:port] [-u url] [-f[ramed]] function [arg1 [arg2...]]'
  print ''
  print 'Functions:'
  print '  void createPromotion(string name, string ruleExecutionSrc, i64 startOn, i64 endOn)'
  print '  i64 removeAllCouponsByPromotionId(i64 promotionId)'
  print '  Coupon getCoupon(string couponCode)'
  print '  bool isGiftVoucher(string couponCode)'
  print '  bool isCodApplicable(Cart cart)'
  print '   getAllPromotions()'
  print '  Promotion getPromotionById(i64 promotionId)'
  print '  void generateCouponsForPromotion(i64 promotionId, string couponCode)'
  print '  Cart applyCoupon(string couponCode, i64 cartId)'
  print '   getEmiDiscount(i64 cartId)'
  print '   applyRechargeCoupon(string couponCode, i64 totalAmount, i64 userId)'
  print '  void trackCouponUsage(string couponCode, i64 transactionId, i64 userId, i64 amount, bool isDigital)'
  print '  i64 getCouponUsageCountByUser(string couponCode, i64 userId)'
  print '   getActiveCodes(i64 promotionId)'
  print '  void deleteCoupon(string couponCode)'
  print '   getAllCouponsByPromotionId(i64 promotionId)'
  print '   getActiveCoupons()'
  print '  string createCoupon(i64 promotionId, i64 couponCategory, string couponCode, string arguments, bool isCod, string prefix)'
  print '  i64 getSuccessfulPaymentCountForCoupon(string couponCode)'
  print '  string getRuleDocString(string ruleName)'
  print '   getItemDiscountMap( itemIds)'
  print '   getDiscountsForEntity(i64 entityId)'
  print '  void addVoucher(Voucher voucher)'
  print '  Voucher assignVoucher(i64 userId, string userEmail, VoucherType voucherType, i64 amount)'
  print '  bool markVoucherAsRedeemed(string voucherCode, i64 redeemedOn)'
  print ''
  sys.exit(0)

pp = pprint.PrettyPrinter(indent = 2)
host = 'localhost'
port = 9090
uri = ''
framed = False
http = False
argi = 1

if sys.argv[argi] == '-h':
  parts = sys.argv[argi+1].split(':')
  host = parts[0]
  port = int(parts[1])
  argi += 2

if sys.argv[argi] == '-u':
  url = urlparse(sys.argv[argi+1])
  parts = url[1].split(':')
  host = parts[0]
  if len(parts) > 1:
    port = int(parts[1])
  else:
    port = 80
  uri = url[2]
  if url[4]:
    uri += '?%s' % url[4]
  http = True
  argi += 2

if sys.argv[argi] == '-f' or sys.argv[argi] == '-framed':
  framed = True
  argi += 1

cmd = sys.argv[argi]
args = sys.argv[argi+1:]

if http:
  transport = THttpClient.THttpClient(host, port, uri)
else:
  socket = TSocket.TSocket(host, port)
  if framed:
    transport = TTransport.TFramedTransport(socket)
  else:
    transport = TTransport.TBufferedTransport(socket)
protocol = TBinaryProtocol.TBinaryProtocol(transport)
client = PromotionService.Client(protocol)
transport.open()

if cmd == 'createPromotion':
  if len(args) != 4:
    print 'createPromotion requires 4 args'
    sys.exit(1)
  pp.pprint(client.createPromotion(args[0],args[1],eval(args[2]),eval(args[3]),))

elif cmd == 'removeAllCouponsByPromotionId':
  if len(args) != 1:
    print 'removeAllCouponsByPromotionId requires 1 args'
    sys.exit(1)
  pp.pprint(client.removeAllCouponsByPromotionId(eval(args[0]),))

elif cmd == 'getCoupon':
  if len(args) != 1:
    print 'getCoupon requires 1 args'
    sys.exit(1)
  pp.pprint(client.getCoupon(args[0],))

elif cmd == 'isGiftVoucher':
  if len(args) != 1:
    print 'isGiftVoucher requires 1 args'
    sys.exit(1)
  pp.pprint(client.isGiftVoucher(args[0],))

elif cmd == 'isCodApplicable':
  if len(args) != 1:
    print 'isCodApplicable requires 1 args'
    sys.exit(1)
  pp.pprint(client.isCodApplicable(eval(args[0]),))

elif cmd == 'getAllPromotions':
  if len(args) != 0:
    print 'getAllPromotions requires 0 args'
    sys.exit(1)
  pp.pprint(client.getAllPromotions())

elif cmd == 'getPromotionById':
  if len(args) != 1:
    print 'getPromotionById requires 1 args'
    sys.exit(1)
  pp.pprint(client.getPromotionById(eval(args[0]),))

elif cmd == 'generateCouponsForPromotion':
  if len(args) != 2:
    print 'generateCouponsForPromotion requires 2 args'
    sys.exit(1)
  pp.pprint(client.generateCouponsForPromotion(eval(args[0]),args[1],))

elif cmd == 'applyCoupon':
  if len(args) != 2:
    print 'applyCoupon requires 2 args'
    sys.exit(1)
  pp.pprint(client.applyCoupon(args[0],eval(args[1]),))

elif cmd == 'getEmiDiscount':
  if len(args) != 1:
    print 'getEmiDiscount requires 1 args'
    sys.exit(1)
  pp.pprint(client.getEmiDiscount(eval(args[0]),))

elif cmd == 'applyRechargeCoupon':
  if len(args) != 3:
    print 'applyRechargeCoupon requires 3 args'
    sys.exit(1)
  pp.pprint(client.applyRechargeCoupon(args[0],eval(args[1]),eval(args[2]),))

elif cmd == 'trackCouponUsage':
  if len(args) != 5:
    print 'trackCouponUsage requires 5 args'
    sys.exit(1)
  pp.pprint(client.trackCouponUsage(args[0],eval(args[1]),eval(args[2]),eval(args[3]),eval(args[4]),))

elif cmd == 'getCouponUsageCountByUser':
  if len(args) != 2:
    print 'getCouponUsageCountByUser requires 2 args'
    sys.exit(1)
  pp.pprint(client.getCouponUsageCountByUser(args[0],eval(args[1]),))

elif cmd == 'getActiveCodes':
  if len(args) != 1:
    print 'getActiveCodes requires 1 args'
    sys.exit(1)
  pp.pprint(client.getActiveCodes(eval(args[0]),))

elif cmd == 'deleteCoupon':
  if len(args) != 1:
    print 'deleteCoupon requires 1 args'
    sys.exit(1)
  pp.pprint(client.deleteCoupon(args[0],))

elif cmd == 'getAllCouponsByPromotionId':
  if len(args) != 1:
    print 'getAllCouponsByPromotionId requires 1 args'
    sys.exit(1)
  pp.pprint(client.getAllCouponsByPromotionId(eval(args[0]),))

elif cmd == 'getActiveCoupons':
  if len(args) != 0:
    print 'getActiveCoupons requires 0 args'
    sys.exit(1)
  pp.pprint(client.getActiveCoupons())

elif cmd == 'createCoupon':
  if len(args) != 6:
    print 'createCoupon requires 6 args'
    sys.exit(1)
  pp.pprint(client.createCoupon(eval(args[0]),eval(args[1]),args[2],args[3],eval(args[4]),args[5],))

elif cmd == 'getSuccessfulPaymentCountForCoupon':
  if len(args) != 1:
    print 'getSuccessfulPaymentCountForCoupon requires 1 args'
    sys.exit(1)
  pp.pprint(client.getSuccessfulPaymentCountForCoupon(args[0],))

elif cmd == 'getRuleDocString':
  if len(args) != 1:
    print 'getRuleDocString requires 1 args'
    sys.exit(1)
  pp.pprint(client.getRuleDocString(args[0],))

elif cmd == 'getItemDiscountMap':
  if len(args) != 1:
    print 'getItemDiscountMap requires 1 args'
    sys.exit(1)
  pp.pprint(client.getItemDiscountMap(eval(args[0]),))

elif cmd == 'getDiscountsForEntity':
  if len(args) != 1:
    print 'getDiscountsForEntity requires 1 args'
    sys.exit(1)
  pp.pprint(client.getDiscountsForEntity(eval(args[0]),))

elif cmd == 'addVoucher':
  if len(args) != 1:
    print 'addVoucher requires 1 args'
    sys.exit(1)
  pp.pprint(client.addVoucher(eval(args[0]),))

elif cmd == 'assignVoucher':
  if len(args) != 4:
    print 'assignVoucher requires 4 args'
    sys.exit(1)
  pp.pprint(client.assignVoucher(eval(args[0]),args[1],eval(args[2]),eval(args[3]),))

elif cmd == 'markVoucherAsRedeemed':
  if len(args) != 2:
    print 'markVoucherAsRedeemed requires 2 args'
    sys.exit(1)
  pp.pprint(client.markVoucherAsRedeemed(args[0],eval(args[1]),))

else:
  print 'Unrecognized method %s' % cmd
  sys.exit(1)

transport.close()