"""Convert Regular vendor to Distributor(D3).""" import argparse import connection import config import constants as const def get_argument(): """Parse command line arguments.""" parser = argparse.ArgumentParser() parser.add_argument( 'vendor_id', nargs='+', help='Please enter vendor_id' ) args = parser.parse_args() return args.vendor_id def update_vendor(vendor_id, logger): """Convert vendor to D3.""" if len(vendor_id) == 1: db_connection = connection.database_connection() cursor = db_connection.cursor() select_query = const.select_query.format(vendor_id[0]) cursor.execute(select_query) result = cursor.fetchone() if result['is_distributor'] == 'N': update_query = const.update_query.format(vendor_id[0]) logger.info('Vendor is %s' % vendor_id) cursor.execute(update_query) db_connection.commit() logger.info('Vendor is successfully converted to D3') else: logger.info('Vendor is already a distributor') db_connection.close() else: logger.info('Only one vendor can be converted to D3 at once') def main(correlation_id=None): """Read Vendor Id from Command line arguments.""" vendor_id = get_argument() logger = config.get_current_logger(correlation_id) logger.info('Running script to convert regular vendor to D3') update_vendor(vendor_id, logger) if __name__ == '__main__': main()