Simpler clean up subscriptions (#590)

* Simpler clean up subscriptions

* Include aliases for fields

* Keep pylint happy
This commit is contained in:
Ross Scroggs
2017-09-19 08:58:09 -07:00
committed by Jay Lee
parent e3dbf56ef5
commit 325a06162e
2 changed files with 13 additions and 34 deletions

View File

@@ -8331,16 +8331,12 @@ def doWhatIs():
doGetAliasInfo(alias_email=email)
def convertSKU2ProductId(res, sku, customerId):
subscriptionId = None
results = callGAPI(res.subscriptions(), u'list', customerId=customerId)
for subscription in results[u'subscriptions']:
if sku == subscription[u'skuId']:
subscriptionId = subscription[u'subscriptionId']
break
if not subscriptionId:
print u'ERROR: could not find subscription for customer %s and SKU %s' % (customerId, sku)
sys.exit(3)
return subscriptionId
return subscription[u'subscriptionId']
print u'ERROR: could not find subscription for customer %s and SKU %s' % (customerId, sku)
sys.exit(3)
def doDeleteResoldSubscription():
res = buildGAPIObject(u'reseller')
@@ -8472,41 +8468,24 @@ def doGetResoldCustomer():
print_json(None, result)
def _getResoldCustomerAttr(arg):
body = {u'postalAddress': {}}
body = {}
customerAuthToken = None
i = 0
while i < len(arg):
myarg = arg[i].lower().replace(u'_', u'')
if myarg in [u'email', u'alternateemail']:
if myarg in ADDRESS_FIELDS_ARGUMENT_MAP:
body.setdefault(u'postalAddress', {})
body[u'postalAddress'][ADDRESS_FIELDS_ARGUMENT_MAP[myarg]] = arg[i+1]
elif myarg in [u'email', u'alternateemail']:
body[u'alternateEmail'] = arg[i+1]
elif myarg in [u'phone', u'phonenumber']:
body[u'phoneNumber'] = arg[i+1]
elif myarg in [u'address', u'address1']:
body[u'postalAddress'][u'addressLine1'] = arg[i+1]
elif myarg in [u'address2']:
body[u'postalAddress'][u'addressLine2'] = arg[i+1]
elif myarg in [u'address3']:
body[u'postalAddress'][u'addressLine3'] = arg[i+1]
elif myarg in [u'contact', u'contactname']:
body[u'postalAddress'][u'contactName'] = arg[i+1]
elif myarg in [u'country', u'countrycode']:
body[u'postalAddress'][u'countryCode'] = arg[i+1]
elif myarg in [u'locality', u'city']:
body[u'postalAddress'][u'locality'] = arg[i+1]
elif myarg in [u'name', u'organizationname']:
body[u'postalAddress'][u'organizationName'] = arg[i+1]
elif myarg in [u'postalcode', u'postal']:
body[u'postalAddress'][u'postalCode'] = arg[i+1]
elif myarg in [u'region', u'state']:
body[u'postalAddress'][u'region'] = arg[i+1]
elif myarg in [u'customerauthtoken', u'transfertoken']:
customerAuthToken = arg[i+1]
else:
print u'ERROR: %s is not a valid argument for "gam %s resoldcustomer"' % (myarg, sys.argv[1])
sys.exit(3)
i += 2
if not body[u'postalAddress']:
del body[u'postalAddress']
return customerAuthToken, body
def doUpdateResoldCustomer():
@@ -11711,7 +11690,7 @@ def ProcessGAMCommand(args):
doGetDomainAliasInfo()
elif argument in [u'resoldcustomer', u'resellercustomer']:
doGetResoldCustomer()
elif argument in [u'resoldsubscriptions', u'resellersubscriptions']:
elif argument in [u'resoldsubscription', u'resoldsubscriptions', u'resellersubscription', u'resellersubscriptions']:
doGetResoldSubscriptions()
elif argument in [u'matter', u'vaultmatter']:
doGetVaultMatterInfo()

View File

@@ -129,12 +129,12 @@ ADDRESS_FIELDS_PRINT_ORDER = [
ADDRESS_FIELDS_ARGUMENT_MAP = {
u'contact': u'contactName', u'contactname': u'contactName',
u'name': u'organizationName', u'organizationname': u'organizationName',
u'address1': u'addressLine1', u'addressline1': u'addressLine1',
u'address': u'addressLine1', u'address1': u'addressLine1', u'addressline1': u'addressLine1',
u'address2': u'addressLine2', u'addressline2': u'addressLine2',
u'address3': u'addressLine3', u'addressline3': u'addressLine3',
u'locality': u'locality',
u'region': u'region',
u'postalcode': u'postalCode',
u'city': u'locality', u'locality': u'locality',
u'state': u'region', u'region': u'region',
u'zipcode': u'postalCode', u'postal': u'postalCode', u'postalcode': u'postalCode',
u'country': u'countryCode', u'countrycode': u'countryCode',
}