remove provider_rates table

this was added five years ago but never used. if we want to bring back
variable rates per client we might as well get a fresh start since a lot
has changed since then.
This commit is contained in:
Leo Hemsted
2022-05-03 14:42:59 +01:00
parent 43206b1656
commit 51646af92e
7 changed files with 32 additions and 60 deletions

View File

@@ -4,7 +4,6 @@ import itertools
import os
import uuid
from datetime import datetime, timedelta
from decimal import Decimal
import click
import flask
@@ -42,9 +41,6 @@ from app.dao.organisation_dao import (
dao_get_organisation_by_id,
)
from app.dao.permissions_dao import permission_dao
from app.dao.provider_rates_dao import (
create_provider_rates as dao_create_provider_rates,
)
from app.dao.services_dao import (
dao_fetch_all_services_by_user,
dao_fetch_all_services_created_by_user,
@@ -61,7 +57,6 @@ from app.dao.users_dao import (
from app.models import (
KEY_TYPE_TEST,
NOTIFICATION_CREATED,
PROVIDERS,
SMS_TYPE,
AnnualBilling,
Domain,
@@ -108,18 +103,6 @@ class notify_command:
return wrapper
@notify_command()
@click.option('-p', '--provider_name', required=True, type=click.Choice(PROVIDERS))
@click.option('-c', '--cost', required=True, help='Cost (pence) per message including decimals', type=float)
@click.option('-d', '--valid_from', required=True, type=click_dt(format='%Y-%m-%dT%H:%M:%S'))
def create_provider_rates(provider_name, cost, valid_from):
"""
Backfill rates for a given provider
"""
cost = Decimal(cost)
dao_create_provider_rates(provider_name, valid_from, cost)
@notify_command()
@click.option('-u', '--user_email_prefix', required=True, help="""
Functional test user email prefix. eg "notify-test-preview"

View File

@@ -1,11 +0,0 @@
from app import db
from app.dao.dao_utils import autocommit
from app.models import ProviderDetails, ProviderRates
@autocommit
def create_provider_rates(provider_identifier, valid_from, rate):
provider = ProviderDetails.query.filter_by(identifier=provider_identifier).one()
provider_rates = ProviderRates(provider_id=provider.id, valid_from=valid_from, rate=rate)
db.session.add(provider_rates)

View File

@@ -1146,16 +1146,6 @@ NOTIFICATION_TYPE = [EMAIL_TYPE, SMS_TYPE, LETTER_TYPE]
notification_types = db.Enum(*NOTIFICATION_TYPE, name='notification_type')
class ProviderRates(db.Model):
__tablename__ = 'provider_rates'
id = db.Column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4)
valid_from = db.Column(db.DateTime, nullable=False)
rate = db.Column(db.Numeric(), nullable=False)
provider_id = db.Column(UUID(as_uuid=True), db.ForeignKey('provider_details.id'), index=True, nullable=False)
provider = db.relationship('ProviderDetails', backref=db.backref('provider_rates', lazy='dynamic'))
class ProviderDetails(db.Model):
__tablename__ = 'provider_details'

View File

@@ -208,7 +208,7 @@ class ProviderDetailsSchema(BaseSchema):
class Meta(BaseSchema.Meta):
model = models.ProviderDetails
exclude = ("provider_rates", "provider_stats")
exclude = ("provider_stats",)
strict = True
@@ -217,7 +217,7 @@ class ProviderDetailsHistorySchema(BaseSchema):
class Meta(BaseSchema.Meta):
model = models.ProviderDetailsHistory
exclude = ("provider_rates", "provider_stats")
exclude = ("provider_stats",)
strict = True