From 7add5342b79176f271c66800444a0d544d55e46e Mon Sep 17 00:00:00 2001 From: jakub Date: Mon, 14 Feb 2022 17:58:29 +0000 Subject: [PATCH] Delete 'ucetnictvi_pokusy.py' --- ucetnictvi_pokusy.py | 156 ------------------------------------------- 1 file changed, 156 deletions(-) delete mode 100644 ucetnictvi_pokusy.py diff --git a/ucetnictvi_pokusy.py b/ucetnictvi_pokusy.py deleted file mode 100644 index 539ace8..0000000 --- a/ucetnictvi_pokusy.py +++ /dev/null @@ -1,156 +0,0 @@ -import csv -from datetime import datetime -import sys -import pandas as pd - -FILE = 'TMGDSP202110.CSV' - -#usrmonth = input("Month to be processed: ") - -countofnotsms = int(1) - - -dictionary = {} - -def add_dict(id, key, value): - dict = dictionary.get(id) - if key in dict: - print("increasing notsms dict key for: ",value,"key IS: ",key) - dict[key] += value - - print("end state: ",dict[key]) - dict[key] = round(dict[key],5) - print("key: ",key) - - - else: - print("Never should happen", id) - -def add_dictsms(id, pricesms): - dict = dictionary.get(id) - - print("increasing sms dict key for dict: ",dict," for :",pricesms) - dict["smscount"] += pricesms - - - - - - -#MAIN -with open(FILE, newline='', encoding='utf-8') as csvfile: - reader = csv.DictReader(csvfile, delimiter=';') - for row in reader: - - #print(row) - if row['MSISDN'] == '': - continue #skip empty MSISDN - - #if row['BILLED_PERIOD_START'] == '': - #continue - - #my_string = row['BILLED_PERIOD_START'] - #my_string = '2021-09-06' - #print(my_string) - #try: - #my_date = datetime.strptime(my_string, "%Y-%m-%d") - #except: - #print("An exception occurred, current my_string is: ", my_string) - #sys.exit(1) - - #print(row['BILLED_PERIOD_START']) - #print(my_date.month) - - - - #if my_date.month != '5': - #continue #skip bad dates - - - - MSISDN = int(row['MSISDN']) - ICCID = int(row['ICCID']) - - print("charge_net: ",row['CHARGE_NET']) - price = float(row['CHARGE_NET'].replace(',','.')) - price = round(price, 5) - - print("before conditions price: ",price, "for: ",ICCID) - - typ = None - if row['CHARGE_TYPE'] == "Pravidelné měsíční poplatky": - typ = "data" - elif row['CHARGE_TYPE'] == "Poplatky za roamingový datový provoz": - typ = "data" - elif row['CHARGE_TYPE'] == "Poplatky za národní datový provoz": - typ = "data" - elif row['CHARGE_TYPE'] == "Poplatky za roamingový SMS provoz": - typ = "sms" - elif row['CHARGE_TYPE'] == "Poplatky za národní SMS provoz": - typ = "sms" - else: - typ = 'other' - - - if row['INCREMENT'] == "SMS": - - pricesms = int(row['RATED_AMOUNT']) - else: - pricesms = 0 - - #only if not exist create new record in dictionary for ID - if not MSISDN in dictionary: - - dictionary[MSISDN] = {'ICCID':ICCID,'data':0.00000, 'sms':0.00000, 'other':0.00000, 'smscount':pricesms} - print("Creating new dictionary: ", dictionary[MSISDN]) - - - print("Adding: ", price, " for: ", dictionary[MSISDN], "TYP: ",typ) - add_dict(MSISDN, typ, price) - if row['INCREMENT'] == "SMS": - print("pricesms: ",pricesms," for unit: ",dictionary[MSISDN]) - add_dictsms(MSISDN, pricesms) - - - - - - #ptry: - #print(dictionary[436761890319959]) #one with both types - #pexcept: - #pprint("Required unit is not in our set") - #psys.exit(1) - -#pprint(len(dictionary.keys())) - -#for key, value in dictionary.items(): - #print(key, ' : ', value) - - -print("Count of units: ", len(dictionary.keys())) -#print("Count of sms: ",countofsms) -#for dict_value in dictionary: -# type(dict_value) -# #for k, v in dict_value.items(): - - -#with open('fakturace_tmgdsp_export_20211110v2.csv', 'w') as f: -# for key in dictionary.keys(): -# print(key,dictionary[key]) -# f.write("%s,%s\n"%(key,dictionary[key])) - - - -csv_columns = ['takhleuztoneudelam', 'ICCID', 'data', 'sms', 'other', 'smscount'] -try: - with open('fakturace_tmgdsp_export_202110v1.csv', 'w') as csvfile: - w = csv.DictWriter(sys.stdout, csv_columns) - for key, val in sorted(dictionary.items()): - row = {'takhleuztoneudelam': key} - row.update(val) - - writer = csv.DictWriter(csvfile, fieldnames=csv_columns) - writer.writerow(row) - -except IOError: - print(f"I/O error: {IOError}") \ No newline at end of file