"""Development.""" import sys from reports.period import Period from reports.replacement_generator import ReplacementGenerator def main(): """Main.""" if len(sys.argv) < 2: raise Exception('period_id is a required argument.') try: int(sys.argv[1]) except ValueError: raise Exception('period_id must be an integer.') period_id = int(sys.argv[1]) perform_check('month', period_id) if not period_id % 3: perform_check('quarter', period_id) def perform_check(interval, period_id): """Find and replace missing dynamodb items.""" for account_type in ['label', 'subaccount']: print('Running for {interval}ly {account_type}s in period {period}'.format( # noqa interval=interval, account_type=account_type, period=period_id)) period = Period(period_id, interval, account_type) ReplacementGenerator.run(period) if __name__ == '__main__': main()