コード例 #1
0
ファイル: generator.py プロジェクト: saketkanth/commcare-hq
def arbitrary_sms_billables_for_domain(domain, message_month_date, num_sms, direction=None, multipart_count=1):
    from corehq.apps.smsbillables.models import SmsBillable, SmsGatewayFee, SmsUsageFee

    direction = direction or random.choice(DIRECTIONS)

    gateway_fee = SmsGatewayFee.create_new('MACH', direction, Decimal(0.5))
    usage_fee = SmsUsageFee.create_new(direction, Decimal(0.25))

    _, last_day_message = calendar.monthrange(message_month_date.year, message_month_date.month)

    billables = []
    for _ in range(0, num_sms):
        sms_billable = SmsBillable(
            gateway_fee=gateway_fee,
            usage_fee=usage_fee,
            log_id=data_gen.arbitrary_unique_name()[:50],
            phone_number=data_gen.random_phonenumber(),
            domain=domain,
            direction=direction,
            date_sent=datetime.date(message_month_date.year, message_month_date.month,
                                    random.randint(1, last_day_message)),
            multipart_count=multipart_count,
        )
        sms_billable.save()
        billables.append(sms_billable)
    return billables
コード例 #2
0
def arbitrary_sms_billables_for_domain(domain, direction, message_month_date,
                                       num_sms):
    from corehq.apps.smsbillables.models import SmsBillable, SmsGatewayFee, SmsUsageFee
    from corehq.apps.smsbillables import generator as sms_gen

    gateway_fee = SmsGatewayFee.create_new('MACH', direction,
                                           sms_gen.arbitrary_fee())
    usage_fee = SmsUsageFee.create_new(direction, sms_gen.arbitrary_fee())

    _, last_day_message = calendar.monthrange(message_month_date.year,
                                              message_month_date.month)

    for _ in range(0, num_sms):
        sms_billable = SmsBillable(
            gateway_fee=gateway_fee,
            usage_fee=usage_fee,
            log_id=data_gen.arbitrary_unique_name()[:50],
            phone_number=data_gen.random_phonenumber(),
            domain=domain,
            direction=direction,
            date_sent=datetime.date(message_month_date.year,
                                    message_month_date.month,
                                    random.randint(1, last_day_message)),
        )
        sms_billable.save()
コード例 #3
0
ファイル: generator.py プロジェクト: dankohn/commcare-hq
def arbitrary_sms_billables_for_domain(domain,
                                       message_month_date,
                                       num_sms,
                                       direction=None,
                                       multipart_count=1):
    direction = direction or random.choice(DIRECTIONS)

    gateway_fee = SmsGatewayFee.create_new('MACH', direction, Decimal(0.5))
    usage_fee = SmsUsageFee.create_new(direction, Decimal(0.25))

    _, last_day_message = calendar.monthrange(message_month_date.year,
                                              message_month_date.month)

    billables = []
    for _ in range(0, num_sms):
        sms_billable = SmsBillable(
            gateway_fee=gateway_fee,
            usage_fee=usage_fee,
            log_id=data_gen.arbitrary_unique_name()[:50],
            phone_number=data_gen.random_phonenumber(),
            domain=domain,
            direction=direction,
            date_sent=datetime.date(message_month_date.year,
                                    message_month_date.month,
                                    random.randint(1, last_day_message)),
            multipart_count=multipart_count,
        )
        sms_billable.save()
        billables.append(sms_billable)
    return billables
コード例 #4
0
def arbitrary_sms_billables_for_domain(domain, direction, message_month_date, num_sms):
    from corehq.apps.smsbillables.models import SmsBillable, SmsGatewayFee, SmsUsageFee
    from corehq.apps.smsbillables import generator as sms_gen

    gateway_fee = SmsGatewayFee.create_new('MACH', direction, sms_gen.arbitrary_fee())
    usage_fee = SmsUsageFee.create_new(direction, sms_gen.arbitrary_fee())

    _, last_day_message = calendar.monthrange(message_month_date.year, message_month_date.month)

    for _ in range(0, num_sms):
        sms_billable = SmsBillable(
            gateway_fee=gateway_fee,
            usage_fee=usage_fee,
            log_id=data_gen.arbitrary_unique_name()[:50],
            phone_number=data_gen.random_phonenumber(),
            domain=domain,
            direction=direction,
            date_sent=datetime.date(message_month_date.year, message_month_date.month,
                                    random.randint(1, last_day_message)),
        )
        sms_billable.save()
コード例 #5
0
 def apply_direction_and_domain_fee(self):
     for direction, domain_fee in self.most_specific_fees.items():
         for domain, amount in domain_fee.items():
             SmsUsageFee.create_new(direction, amount, domain=domain)
コード例 #6
0
 def apply_direction_fee(self):
     for direction, amount in self.least_specific_fees.items():
         SmsUsageFee.create_new(direction, amount)
コード例 #7
0
 def handle(self, *args, **options):
     SmsUsageFee.create_new(INCOMING, 0.01)
     SmsUsageFee.create_new(OUTGOING, 0.01)
     logger.info("Updated usage fees.")
コード例 #8
0
def bootstrap_usage_fees(apps):
    SmsUsageFee.create_new(INCOMING, 0.01)
    SmsUsageFee.create_new(OUTGOING, 0.01)
    log_smsbillables_info("Updated usage fees.")
コード例 #9
0
ファイル: test_usage_fees.py プロジェクト: dimagi/commcare-hq
 def apply_direction_and_domain_fee(self):
     for direction, domain_fee in self.most_specific_fees.items():
         for domain, amount in domain_fee.items():
             SmsUsageFee.create_new(direction, amount, domain=domain)
コード例 #10
0
ファイル: test_usage_fees.py プロジェクト: dimagi/commcare-hq
 def apply_direction_fee(self):
     for direction, amount in self.least_specific_fees.items():
         SmsUsageFee.create_new(direction, amount)
コード例 #11
0
def bootstrap_usage_fees(apps):
    SmsUsageFee.create_new(INCOMING, 0.01)
    SmsUsageFee.create_new(OUTGOING, 0.01)
    log_smsbillables_info("Updated usage fees.")