class Activities(object): """docstring for UserFunctions""" def __init__(self, user): super(Activities, self).__init__() self.dbconn = MysqlLib() self.user = user self.API = ApiCalls() def getAllActivities(self, request_params): where_con_list = [] where_con = '' if 'status' in request_params and request_params['status'] != "" and request_params['status'] != "All": where_con_list.append("status='{}' ".format(request_params['status'])) if 'user_msisdn' in request_params and request_params['user_msisdn'] != "" and request_params['user_msisdn'] != "All": where_con_list.append("user_msisdn='{}' ".format(request_params['user_msisdn'])) where_con = " and ".join(where_con_list) if where_con == "": where_con = "1" if request_params['fromdate'] == "" or request_params['todate'] == "": print("Yess Herreeee") data = self.dbconn.select_from_table_paged("tbl_activity_log", condition=" WHERE "+ where_con +" ORDER BY date_created DESC", offset=request_params['offset'], records=request_params['records']) data_count = self.dbconn.select_count_table("tbl_activity_log", condition="WHERE "+ where_con) else: data = self.dbconn.select_from_table_paged("tbl_activity_log", condition=" WHERE "+ where_con +" AND date_created between '{0}' and '{1}' ORDER BY date_created DESC".format(request_params['fromdate'], request_params['todate']), offset=request_params['offset'], records=request_params['records']) data_count = self.dbconn.select_count_table("tbl_activity_log", condition="WHERE "+ where_con) return [data, data_count] def getAllBlack(self, request_params): where_con_list = [] where_con = '' # if 'request_type' in request_params and request_params['request_type'] != "" and request_params['request_type'] != "All": # where_con_list.append("request_type='{}' ".format(request_params['request_type'])) # if 'branch' in request_params and request_params['branch'] != "" and request_params['branch'] != "All": # where_con_list.append("rbranch='{}' ".format(request_params['branch'])) where_con = " and ".join(where_con_list) if where_con == "": where_con = "1" if request_params['fromdate'] == "" or request_params['todate'] == "": print("Yess Herreeee") data = self.dbconn.select_from_table_paged("tbl_black_list", condition=" WHERE "+ where_con +" ORDER BY date_blacklisted DESC", offset=request_params['offset'], records=request_params['records']) data_count = self.dbconn.select_count_table("tbl_black_list", condition="WHERE "+ where_con) else: data = self.dbconn.select_from_table_paged("tbl_black_list", condition=" WHERE "+ where_con +" AND date_blacklisted between '{0}' and '{1}' ORDER BY date_blacklisted DESC".format(request_params['fromdate'], request_params['todate']), offset=request_params['offset'], records=request_params['records']) data_count = self.dbconn.select_count_table("tbl_black_list", condition="WHERE "+ where_con) return [data, data_count] def getAllUploads(self, request_params): where_con_list = [] where_con = '' if 'branch' in request_params and request_params['branch'] != "" and request_params['branch'] != "All": where_con_list.append("rbranch='{}' ".format(request_params['branch'])) where_con = " and ".join(where_con_list) if where_con == "": where_con = "1" if request_params['fromdate'] == "" or request_params['todate'] == "": print("Yess Herreeee") data = self.dbconn.select_from_table_paged("tbl_uploads", condition=" WHERE "+ where_con +" ORDER BY upload_date DESC", offset=request_params['offset'], records=request_params['records']) data_count = self.dbconn.select_count_table("tbl_uploads", condition="WHERE "+ where_con) else: data = self.dbconn.select_from_table_paged("tbl_uploads", condition=" WHERE "+ where_con +" AND upload_date between '{0}' and '{1}' ORDER BY upload_date DESC".format(request_params['fromdate'], request_params['todate']), offset=request_params['offset'], records=request_params['records']) data_count = self.dbconn.select_count_table("tbl_uploads", condition="WHERE "+ where_con) return [data, data_count] def getAllCustomByBranch(self, request_params): where_con_list = [] where_con = '' if 'status' in request_params and request_params['status'] != "" and request_params['status'] != "All": where_con_list.append("status='{}' ".format(request_params['status'])) if 'branch' in request_params and request_params['branch'] != "" and request_params['branch'] != "All": where_con_list.append("rbranch='{}' ".format(request_params['branch'])) where_con = " and ".join(where_con_list) if where_con == "": where_con = "1" if request_params['fromdate'] == "" or request_params['todate'] == "": data = self.dbconn.select_from_table_paged("tbl_customers", ["first_name", "middle_name", "last_name", "gender", "status", "join_date", "id"], " WHERE "+ where_con +" ORDER BY join_date DESC", offset=request_params['offset'], records=request_params['records']) data_count = self.dbconn.select_count_table("tbl_customers", condition="WHERE "+ where_con) else: data = self.dbconn.select_from_table_paged("tbl_customers", ["first_name", "middle_name", "last_name", "gender", "status", "join_date", "id"], " WHERE "+ where_con +" AND join_date between '{0}' and '{1}' ORDER BY join_date DESC".format(request_params['fromdate'], request_params['todate']), offset=request_params['offset'], records=request_params['records']) data_count = self.dbconn.select_count_table("tbl_customers", condition="WHERE "+ where_con) return data def getCustomerActivities(self, customer_id): data = self.dbconn.select_from_table_paged("tbl_activity_log", condition=" WHERE user_msisdn='{}' ORDER BY date_created DESC".format(customer_id)) return data def getCustomerAccounts(self, customer_id): data = self.dbconn.select_from_table_paged("tbl_customer_account", ["id", "account_number", "branch", "status"], " WHERE customer='{}'".format(customer_id)) return data def getCustomerTransactions(self, customer_acc): data = self.dbconn.select_from_table_paged("tbl_transactions", condition=" WHERE account_number='{0}' or des_act='{0}' ORDER BY request_time DESC".format(customer_acc)) return data def getCustomerRequests(self, customer_id): data = self.dbconn.select_from_table_paged("tbl_user_requests", condition=" WHERE customer_account='{}' ORDER BY request_date DESC".format(customer_id)) return data def getNewCustomerRegistration(self, request_data): data = self.dbconn.select_from_table_paged("tbl_details_change", condition=" WHERE customer_account='{}' AND customer_msisdn='{}' ORDER BY request_date DESC".format(request_data['customer_account'], request_data['customer_msisdn'])) return data def getCustomerRequestsByRequestId(self, request_id): data = self.dbconn.select_from_table_paged("tbl_user_requests", condition=" WHERE id={} ORDER BY request_date DESC".format(request_id)) return data def addCustomerRequest(self, data): response = self.dbconn.insert_in_table("tbl_user_requests", data) return response def updateCustomers(self, data): admin = self.dbconn.update_table("tbl_customers", data, "WHERE id='{}'".format(data['id'])) return admin def updateCustomerAccount(self, data): admin = self.dbconn.update_table("tbl_customer_account", data, "WHERE id='{}'".format(data['id'])) return admin def searchCustomers(self, request_params): search_data = self.dbconn.search_table(request_params['search_param'], "tbl_customers", ["id", "first_name", "middle_name", "last_name", "gender", "status", "join_date"]) print(search_data) return search_data def searchCustomersReq(self, request_params): search_data = self.dbconn.search_table(request_params['search_param'], "tbl_user_requests", ["id", "requested_by", "request_type", "customer_msisdn", "customer_account", "change_to", "change_from", "request_date", "approved_by", "approve_date", "branch"]) print(search_data) return search_data def getBranches(self): data = self.dbconn.select_from_table("tbl_branches") return data def deleteCustomerRequest(self, request_id): data = self.dbconn.delete_from_table("tbl_user_requests", condition=" WHERE id={}".format(request_id)) return data def deleteCustomerNewCustomer(self, customer_account, customer_msisdn): data = self.dbconn.delete_from_table("tbl_details_change", condition=" WHERE customer_account='{}' and customer_msisdn='{}'".format(customer_account, customer_msisdn)) return data def addNewRegistrationRequest(self, data): response = self.dbconn.insert_in_table("tbl_details_change", data) return response def insertBulkUpload(self, data): admin = self.dbconn.insert_in_table("tbl_uploads",data) return True def updateBulkUpload(self, data): admin = self.dbconn.update_table("tbl_uploads", data, "WHERE bulk_id='{}'".format(data['bulk_id'])) return admin def getBulkUploadDetails(self, request_id): data = self.dbconn.select_from_table_paged("tbl_uploads", condition=" WHERE bulk_id='{}'".format(request_id)) return data #API CALLS def sic_register_customer(self, user_data): request_data = { "action": "register", "uniqueid": user_data['customer_account'], "msisdn": user_data['customer_msisdn'], "firstname": user_data['new_fname'], "lastname": user_data['new_lname'], "middlename": user_data['new_mname'], "dob": user_data['dob'].strftime("%Y-%m-%d"), "gender": user_data['new_gender'], "region": user_data['region'], "city": user_data['city'], "requestedBy": self.user['username'], "requestBranch": self.user['branch_id'] } req_data = {'model':"bankClient", 'func':"register", 'args':request_data} print(request_data) encryptor = AESCipher() encoded_data = encryptor.encrypt(json.dumps(req_data)) print(encoded_data) # response_data = self.API.send_socket_data(encoded_data) # response_data = self.API.request_api_raw_json(encoded_data, url=API_URL, method='post', headers={"Authorization": "21d39021fc624f309fd9d41332e34rt5f"}) response_data = b'/MuglLXPw5C22iTP3W7aBWdHYpaToXvBOmSLmxB0ClX/PxrGHSarwj3TtE95R7LD' print(response_data) resp_data = encryptor.decrypt(response_data) print(resp_data) resp_data = json.loads(resp_data.decode('UTF-8')) print(resp_data) print(type(resp_data)) # data = {'code': '00', 'msg': 'Registration successful.'} # print(data) return resp_data def sic_bulk_register_customer(self, request_data): req_data = {'model':"bankClient", 'func':"register", 'args':request_data} print(request_data) encryptor = AESCipher() encoded_data = encryptor.encrypt(json.dumps(req_data)) print(encoded_data) # response_data = self.API.send_socket_data(encoded_data) # response_data = self.API.request_api_raw_json(encoded_data, url=API_URL, method='post', headers={"Authorization": "21d39021fc624f309fd9d41332e34rt5f"}) response_data = b'/MuglLXPw5C22iTP3W7aBWdHYpaToXvBOmSLmxB0ClX/PxrGHSarwj3TtE95R7LD' print(response_data) resp_data = encryptor.decrypt(response_data) resp_data = json.loads(resp_data.decode('UTF-8')) print(resp_data) print(type(resp_data)) # data = {'code': '00', 'msg': 'Registration successful.'} # print(data) return resp_data def sic_reset_customer_pin(self, user_data): request_data = { "action": "resetpin", "msisdn": user_data['id'], } req_data = {'model':"bankClient", 'func':"resetpin", 'args':request_data} print(request_data) encryptor = AESCipher() encoded_data = encryptor.encrypt(json.dumps(req_data)) print(encoded_data) # response_data = self.API.send_socket_data(encoded_data) # response_data = self.API.request_api_raw_json(encoded_data, url=API_URL, method='post', headers={"Authorization": "21d39021fc624f309fd9d41332e34rt5f"}) response_data = b'/MuglLXPw5C22iTP3W7aBWdHYpaToXvBOmSLmxB0ClX/PxrGHSarwj3TtE95R7LD' print(response_data) resp_data = encryptor.decrypt(response_data) resp_data = json.loads(resp_data.decode('UTF-8')) print(resp_data) print(type(resp_data)) # data = {'code': '00', 'msg': 'Registration successful.'} # print(data) return resp_data def sic_change_customer_status(self, user_data, status): request_data = { "action": "customerstatus", "msisdn": user_data['id'], "status": status } req_data = {'model':"bankClient", 'func':"customerstatus", 'args':request_data} print(request_data) encryptor = AESCipher() encoded_data = encryptor.encrypt(json.dumps(req_data)) print(encoded_data) # response_data = self.API.send_socket_data(encoded_data) # response_data = self.API.request_api_raw_json(encoded_data, url=API_URL, method='post', headers={"Authorization": "21d39021fc624f309fd9d41332e34rt5f"}) response_data = b'/MuglLXPw5C22iTP3W7aBWdHYpaToXvBOmSLmxB0ClX/PxrGHSarwj3TtE95R7LD' print(response_data) resp_data = encryptor.decrypt(response_data) resp_data = json.loads(resp_data.decode('UTF-8')) print(resp_data) print(type(resp_data)) # data = {'code': '00', 'msg': 'Registration successful.'} # print(data) return resp_data def sic_change_customer_account_status(self, user_data, status): request_data = { "action": "accountstatus", "uniqueid": user_data['change_to'], "status": status } req_data = {'model':"bankClient", 'func':"accountstatus", 'args':request_data} print(request_data) encryptor = AESCipher() encoded_data = encryptor.encrypt(json.dumps(req_data)) print(encoded_data) # response_data = self.API.send_socket_data(encoded_data) # response_data = self.API.request_api_raw_json(encoded_data, url=API_URL, method='post', headers={"Authorization": "21d39021fc624f309fd9d41332e34rt5f"}) response_data = b'/MuglLXPw5C22iTP3W7aBWdHYpaToXvBOmSLmxB0ClX/PxrGHSarwj3TtE95R7LD' print(response_data) resp_data = encryptor.decrypt(response_data) resp_data = json.loads(resp_data.decode('UTF-8')) print(resp_data) print(type(resp_data)) # data = {'code': '00', 'msg': 'Registration successful.'} # print(data) return resp_data def get_fusion_VA_details_by_holder_id(self, holder_id): req_data = {'model':"FUSION", 'func':"getByHolderId", 'params':json.dumps({"holderId": holder_id})} data = self.API.request_api(req_data, url=VA_URL, method='post', headers={"Authorization": "21d39021fc624f309fd9d41332e34rt5f"}) # data = {'msg': {'accountName': 'VA_GT', 'accountMaps': [{'balance': '0', 'entityType': 'WALLET', 'usage': 'COLLECTIONS', 'mapID': '143c0ce34bf44205bd4447ec049f1ba3', 'entityID': '55df143cfedc9bfd3bb99977', 'threshold': 1, 'mapName': 'TIGO_COLLECTIONS'}, {'balance': '5005.00', 'entityType': 'WALLET', 'usage': 'DISBURSEMENTS', 'mapID': 'edc0369efeed434f9f200fc46e766925', 'entityID': '55df143cfedc9bfd3bb99977', 'threshold': 10000, 'mapName': 'TIGO_DISBURSEMENTS'}, {'balance': '0', 'entityType': 'WALLET', 'usage': 'COLLECTIONS', 'mapID': '5ed7ab06054f4c4b916c3f91ca1dcf6a', 'entityID': '55df1563fedc9bfd3bb99978', 'threshold': 1, 'mapName': 'AIRTEL_COLLECTIONS'}, {'balance': '5005.00', 'entityType': 'WALLET', 'usage': 'DISBURSEMENTS', 'mapID': '18fe760f3c50468895612b0b1ffe7973', 'entityID': '55df1563fedc9bfd3bb99978', 'threshold': 10000, 'mapName': 'AIRTEL_DISBURSEMENTS'}, {'balance': '0', 'entityType': 'WALLET', 'usage': 'COLLECTIONS', 'mapID': 'a09b2fdb7737476ebba6517042eb6bf4', 'entityID': '55df15fa12ece2fa3b91c54f', 'threshold': 1, 'mapName': 'MTN_COLLECTIONS'}, {'balance': '1178.27', 'entityType': 'WALLET', 'usage': 'DISBURSEMENTS', 'mapID': '22e76033e6c44bf2b8e2790bc2cc8163', 'entityID': '55df15fa12ece2fa3b91c54f', 'threshold': 10000, 'mapName': 'MTN_DISBURSEMENTS'}, {'balance': '0', 'entityType': 'WALLET', 'usage': 'COLLECTIONS', 'mapID': 'fc38611e361b42eaadcb48e95b60fead', 'entityID': '57e3c7ba4100ec664fb15a87', 'threshold': 1, 'mapName': 'VODAFONE_COLLECTIONS'}, {'balance': '4965.00', 'entityType': 'WALLET', 'usage': 'DISBURSEMENTS', 'mapID': '4892f3dcca8649849af69dc10bb07346', 'entityID': '57e3c7ba4100ec664fb15a87', 'threshold': 10000, 'mapName': 'VODAFONE_DISBURSEMENTS'}], 'id': '58f2e0edcc1a613a5a22a45f', 'accountNumber': 'VA170416031141', 'holderID': '55e474a83b4ec3737fc0104e', 'enabled': True}, 'code': '00'} # print(data) return data def fusion_register_customer(self, user_data): route = "/user/bc/{}".format(FS_INST_APIKEY) user_data['instID'] = FS_INST_ID user_data['kuwaita'] = "kuongeza_benki" print(user_data) # data = self.API.request_api(user_data, route=route, method='post') data = {'msg':"Customer registered Successfully.", 'code': '00', 'data': [], } return data def fusion_deactivate_customer(self, user_data): route = "/user/bc/{}".format(FS_INST_APIKEY) user_data['instID'] = FS_INST_ID user_data['kuwaita'] = "mabadiliko_akaunti" user_data['status'] = "false" print(user_data) # data = self.API.request_api(user_data, route=route, method='post') data = {'msg':"Customer registered Successfully.", 'code': '00', 'data': [], } return data def fusion_activate_customer(self, user_data): route = "/user/bc/{}".format(FS_INST_APIKEY) user_data['instID'] = FS_INST_ID user_data['kuwaita'] = "mabadiliko_akaunti" user_data['status'] = "true" print(user_data) # data = self.API.request_api(user_data, route=route, method='post') data = {'msg':"Customer registered Successfully.", 'code': '00', 'data': [], } return data
class LogModel(object): """docstring for UserFunctions""" def __init__(self, user): super(LogModel, self).__init__() self.dbconn = MysqlLib() self.user = user def getAllTransactions(self, request_params): where_con_list = [] where_con = '' if "status" in request_params and request_params['status'] != "": where_con_list.append("msg_stat='{}' ".format( request_params['status'])) if "branch" in request_params and request_params['branch'] != "": where_con_list.append("account_branch='{}' ".format( request_params['branch'])) if "destination" in request_params and request_params[ 'destination'] != "": where_con_list.append("destination='{}' ".format( request_params['destination'])) if "type" in request_params and request_params['type'] != "": where_con_list.append("type='{}' ".format(request_params['type'])) if "tag" in request_params and request_params['tag'] != "": where_con_list.append("fusion_tag='{}' ".format( request_params['tag'])) where_con = " and ".join(where_con_list) if where_con == "": where_con = "1" if request_params['fromdate'] == "" or request_params['todate'] == "": data = self.dbconn.select_from_table_paged( "tbl_transactions", condition="WHERE " + where_con + " ORDER BY response_time DESC", offset=request_params['offset'], records=request_params['records']) data_count = self.dbconn.select_count_table("tbl_transactions", condition="WHERE " + where_con) else: data = self.dbconn.select_from_table_paged( "tbl_transactions", condition=" WHERE " + where_con + " and response_time between '{0}' and '{1}' ORDER BY response_time DESC" .format(request_params['fromdate'], request_params['todate']), offset=request_params['offset'], records=request_params['records']) data_count = self.dbconn.select_count_table("tbl_transactions", condition="WHERE " + where_con) return [data, data_count] def getAllTransactionsByBranch(self, request_params): where_con_list = [] where_con = '' if request_params['status'] != "": where_con_list.append("status='{}' ".format( request_params['status'])) where_con = " and ".join(where_con_list) if where_con == "": where_con = "1" if request_params['fromdate'] == "" or request_params['todate'] == "": data = self.dbconn.select_from_table_paged( "tbl_transactions", ["tbl_file_upload"], ["tbl_transaction.*"], [ "tbl_transaction.bulk_id=tbl_file_upload.bulk_id AND tbl_file_upload.merchant_id='{}'" .format(self.user['institution_data']['id']) ], "WHERE " + where_con + " ORDER BY transaction_date DESC".format( request_params['fromdate'], request_params['todate']), offset=request_params['offset'], records=request_params['records']) else: data = self.dbconn.select_from_table_paged( "tbl_transactions", ["tbl_file_upload"], ["tbl_transaction.*"], [ "tbl_transaction.bulk_id=tbl_file_upload.bulk_id AND tbl_file_upload.merchant_id='{}'" .format(self.user['institution_data']['id']) ], "WHERE " + where_con + " and transaction_date between '{0}' and '{1}' ORDER BY date_upload DESC" .format(request_params['fromdate'], request_params['todate']), offset=request_params['offset'], records=request_params['records']) return data def getAllTransactionsfilter(self): filter_data = {} filter_data['branches'] = self.dbconn.select_distinct( "tbl_transactions", "account_branch") filter_data['destination'] = self.dbconn.select_distinct( "tbl_transactions", "destination") filter_data['type'] = self.dbconn.select_distinct( "tbl_transactions", "type") filter_data['status'] = self.dbconn.select_distinct( "tbl_transactions", "msg_stat") filter_data['tag'] = self.dbconn.select_distinct( "tbl_transactions", "fusion_tag") print(filter_data) return filter_data def searchTransactions(self, request_params): search_data = self.dbconn.search_table( request_params['search_param'], "tbl_transactions", [ 'xref', 'reference', 'account_branch', 'processing_branch', 'account_number', 'des_act', 'destination', 'msisdn', 'msg_stat', 'fusion_tag', 'type', 'request_time', 'response_time' ]) return search_data def getAllTransactionsfilterForBranch(self): pass def getBulkUploadDetailsByBulkId(self, bulk_id): print(bulk_id) data = self.dbconn.joint_select( "tbl_file_upload", ["tbl_login", "tbl_file_upload_xdetails"], [ "tbl_file_upload.*", "tbl_login.username", "tbl_file_upload_xdetails.amount", "tbl_login.institution_shortName", ], [ "tbl_file_upload.merchant_admin_id=tbl_login.id", "tbl_file_upload_xdetails.bulk_id='{}'".format(bulk_id) ], "WHERE tbl_file_upload.bulk_id= \'" + bulk_id + "\'") approval_data = self.dbconn.joint_select( "tbl_file_upload_approval", ["tbl_login"], ["tbl_login.*", "tbl_file_upload_approval.*"], ["tbl_file_upload_approval.merchant_admin_id=tbl_login.id"], gen_condition="WHERE tbl_file_upload_approval.bulk_id='" + bulk_id + "'") if approval_data == []: data[0]['approval_data'] = [] else: data[0]['approval_data'] = approval_data return data def insertBulkUpload(self, data): admin = self.dbconn.insert_in_table("tbl_file_upload", data) return True def insertBulkUploadXtraDetails(self, data): res = self.dbconn.insert_in_table("tbl_file_upload_xdetails", data) return res def updateAdminByUsername(self, username, data): admin = self.dbconn.update_table("tbl_login", data, "WHERE bulk_id='" + username + "'") return True def getValidationLog(self, request_params): return True
class Administrator(object): """docstring for UserFunctions""" def __init__(self, user): super(Administrator, self).__init__() self.dbconn = MysqlLib() self.user = user def getAdminByUsernameLogin(self, username): # admin = self.dbconn.select_from_table('tbl_logins', condition = "WHERE username= '******'") admin = self.dbconn.joint_select( "tbl_logins", ["tbl_user_rights", "tbl_branches"], [ "tbl_logins.password", "tbl_logins.username", "tbl_logins.user_right_id", "tbl_logins.first_name", "tbl_logins.last_name", "tbl_logins.email", "tbl_logins.msisdn", "tbl_logins.last_login", "tbl_logins.pass_date", "tbl_logins.active", "tbl_logins.status", "tbl_logins.created", "tbl_user_rights.name", "tbl_user_rights.details", "tbl_branches.branch_name", "tbl_branches.branch_code", "tbl_branches.branch_id" ], [ "tbl_logins.user_right_id=tbl_user_rights.id", "tbl_logins.branch=tbl_branches.branch_code" ], gen_condition="WHERE username= '******'") return admin def getAdminByUsername(self, username): # admin = self.dbconn.select_from_table('tbl_logins', condition = "WHERE username= '******'") admin = self.dbconn.joint_select( "tbl_logins", ["tbl_user_rights", "tbl_branches"], [ "tbl_logins.username", "tbl_logins.user_right_id", "tbl_logins.first_name", "tbl_logins.last_name", "tbl_logins.email", "tbl_logins.msisdn", "tbl_logins.last_login", "tbl_logins.pass_date", "tbl_logins.active", "tbl_logins.status", "tbl_logins.created", "tbl_user_rights.name", "tbl_user_rights.details", "tbl_branches.branch_name", "tbl_branches.branch_code", "tbl_branches.branch_id" ], [ "tbl_logins.user_right_id=tbl_user_rights.id", "tbl_logins.branch=tbl_branches.branch_code" ], gen_condition="WHERE username= '******'") return admin def getAdminByUsername_chg(self, username): # admin = self.dbconn.select_from_table('tbl_logins', condition = "WHERE username= '******'") admin = self.dbconn.joint_select( "tbl_logins", ["tbl_user_rights", "tbl_branches"], [ "tbl_logins.username", "tbl_logins.password", "tbl_logins.user_right_id", "tbl_logins.first_name", "tbl_logins.last_name", "tbl_logins.email", "tbl_logins.msisdn", "tbl_logins.last_login", "tbl_logins.pass_date", "tbl_logins.active", "tbl_logins.status", "tbl_logins.created", "tbl_user_rights.name", "tbl_user_rights.details", "tbl_branches.branch_name", "tbl_branches.branch_code", "tbl_branches.branch_id" ], [ "tbl_logins.user_right_id=tbl_user_rights.id", "tbl_logins.branch=tbl_branches.branch_code" ], gen_condition="WHERE username= '******'") return admin def getAdminByMsisdn(self, msisdn): # admin = self.dbconn.select_from_table('tbl_logins', condition = "WHERE msisdn= '"+ msisdn +"'") admin = self.dbconn.joint_select( "tbl_logins", ["tbl_user_rights", "tbl_branches"], [ "tbl_logins.username", "tbl_logins.user_right_id", "tbl_logins.first_name", "tbl_logins.last_name", "tbl_logins.email", "tbl_logins.msisdn", "tbl_logins.last_login", "tbl_logins.pass_date", "tbl_logins.active", "tbl_logins.status", "tbl_logins.created", "tbl_user_rights.name", "tbl_user_rights.details", "tbl_branches.branch_name", "tbl_branches.branch_code", "tbl_branches.branch_id" ], [ "tbl_logins.user_right_id=tbl_user_rights.id", "tbl_logins.branch=tbl_branches.branch_code" ], gen_condition="WHERE msisdn= '" + msisdn + "'") return admin def getAdminByEmail(self, email): # admin = self.dbconn.select_from_table('tbl_logins', condition = "WHERE email= '"+ email +"'") admin = self.dbconn.joint_select( "tbl_logins", ["tbl_user_rights", "tbl_branches"], [ "tbl_logins.username", "tbl_logins.user_right_id", "tbl_logins.first_name", "tbl_logins.last_name", "tbl_logins.email", "tbl_logins.msisdn", "tbl_logins.last_login", "tbl_logins.pass_date", "tbl_logins.active", "tbl_logins.status", "tbl_logins.created", "tbl_user_rights.name", "tbl_user_rights.details", "tbl_branches.branch_name", "tbl_branches.branch_code", "tbl_branches.branch_id" ], [ "tbl_logins.user_right_id=tbl_user_rights.id", "tbl_logins.branch=tbl_branches.branch_code" ], gen_condition="WHERE email= '" + email + "'") return admin def getAllAdministrators(self, request_params): where_con_list = [] where_con = '' if 'active' in request_params != "" and request_params[ 'active'] != "" and request_params['active'] != "All": where_con_list.append("active='{}' ".format( request_params['active'])) if 'user_right_id' in request_params != "" and request_params[ 'user_right_id'] != "": where_con_list.append("user_right_id='{}' ".format( request_params['user_right_id'])) if 'branch' in request_params != "" and request_params[ 'branch'] != "" and request_params['branch'] != "All": where_con_list.append("branch='{}' ".format( request_params['branch'])) where_con = " and ".join(where_con_list) if where_con == "": where_con = "1" if request_params['fromdate'] == "" or request_params['todate'] == "": data = self.dbconn.joint_select_paged( "tbl_logins", ["tbl_user_rights", "tbl_branches"], [ "tbl_logins.username", "tbl_logins.user_right_id", "tbl_logins.first_name", "tbl_logins.last_name", "tbl_logins.email", "tbl_logins.msisdn", "tbl_logins.last_login", "tbl_logins.active", "tbl_logins.status", "tbl_logins.created", "tbl_user_rights.name", "tbl_user_rights.details", "tbl_branches.branch_name", "tbl_branches.branch_code" ], [ "tbl_logins.user_right_id=tbl_user_rights.id", "tbl_logins.branch=tbl_branches.branch_code" ], "WHERE " + where_con + " ORDER BY created DESC", offset=request_params['offset'], records=request_params['records']) else: data = self.dbconn.joint_select_paged( "tbl_logins", ["tbl_user_rights", "tbl_branches"], [ "tbl_logins.username", "tbl_logins.user_right_id", "tbl_logins.first_name", "tbl_logins.last_name", "tbl_logins.email", "tbl_logins.msisdn", "tbl_logins.last_login", "tbl_logins.active", "tbl_logins.status", "tbl_logins.created", "tbl_user_rights.name", "tbl_user_rights.details", "tbl_branches.branch_name", "tbl_branches.branch_code" ], [ "tbl_logins.user_right_id=tbl_user_rights.id", "tbl_logins.branch=tbl_branches.branch_code" ], "WHERE " + where_con + " and created between '{0}' and '{1}' ORDER BY created DESC". format(request_params['fromdate'], request_params['todate']), offset=request_params['offset'], records=request_params['records']) return data def getAllAdministratorsByBranch(self, request_params): where_con_list = [] where_con = '' if 'active' in request_params != "" and request_params[ 'active'] != "" and request_params['active'] != "All": where_con_list.append("active='{}' ".format( request_params['active'])) if 'user_right_id' in request_params != "" and request_params[ 'user_right_id'] != "": where_con_list.append("user_right_id='{}' ".format( request_params['user_right_id'])) if 'branch' in request_params != "" and request_params[ 'branch'] != "" and request_params['branch'] != "All": where_con_list.append("branch='{}' ".format( request_params['branch'])) where_con = " and ".join(where_con_list) if where_con == "": where_con = "1" if request_params['fromdate'] == "" or request_params['todate'] == "": data = self.dbconn.joint_select_paged( "tbl_logins", ["tbl_user_rights", "tbl_branches"], [ "tbl_logins.username", "tbl_logins.user_right_id", "tbl_logins.first_name", "tbl_logins.last_name", "tbl_logins.email", "tbl_logins.msisdn", "tbl_logins.last_login", "tbl_logins.active", "tbl_logins.status", "tbl_logins.created", "tbl_user_rights.name", "tbl_user_rights.details", "tbl_branches.branch_name", "tbl_branches.branch_code" ], [ "tbl_logins.user_right_id=tbl_user_rights.id", "tbl_logins.branch=tbl_branches.branch_code" ], "WHERE " + where_con + " and tbl_logins.branch='{0}' ORDER BY created DESC".format( self.user['branch_code']), offset=request_params['offset'], records=request_params['records']) else: data = self.dbconn.joint_select_paged( "tbl_logins", ["tbl_user_rights", "tbl_branches"], [ "tbl_logins.username", "tbl_logins.user_right_id", "tbl_logins.first_name", "tbl_logins.last_name", "tbl_logins.email", "tbl_logins.msisdn", "tbl_logins.last_login", "tbl_logins.active", "tbl_logins.status", "tbl_logins.created", "tbl_user_rights.name", "tbl_user_rights.details", "tbl_branches.branch_name", "tbl_branches.branch_code" ], [ "tbl_logins.user_right_id=tbl_user_rights.id", "tbl_logins.branch=tbl_branches.branch_code" ], "WHERE " + where_con + " and tbl_logins.branch='{0}' and created between '{1}' and '{2}' ORDER BY created DESC" .format(self.user['branch_code'], request_params['fromdate'], request_params['todate']), offset=request_params['offset'], records=request_params['records']) return data def addAdministrator(self, data): admin = self.dbconn.insert_in_table("tbl_logins", data) return admin def updateAdministrator(self, data): admin = self.dbconn.update_table( "tbl_logins", data, "WHERE username='******'".format(data['username'])) return admin def getAdminGroups(self): data = self.dbconn.select_from_table("tbl_user_rights", condition="where id != 1") return data def addAdministratorGroup(self, data): admin = self.dbconn.insert_in_table("tbl_user_rights", data) return admin def updateAdministratorGroup(self, data): admin = self.dbconn.update_table("tbl_user_rights", data, "WHERE id='{}'".format(data['id'])) return admin def getBranches(self, request_params): data = self.dbconn.select_from_table_paged( "tbl_branches", offset=request_params['offset'], records=request_params['records']) return data def getBranchByCode(self, branch_code): data = self.dbconn.select_from_table( "tbl_branches", condition="WHERE branch_code='{}'".format(branch_code)) return data def searchAdmins(self, request_params): search_data = self.dbconn.joint_table_search( request_params['search_param'], "tbl_logins", ["tbl_branches", "tbl_user_rights"], [ "tbl_logins.username", "tbl_logins.user_right_id", "tbl_logins.first_name", "tbl_logins.last_name", "tbl_logins.email", "tbl_logins.msisdn", "tbl_logins.last_login", "tbl_logins.active", "tbl_logins.status", "tbl_logins.created", "tbl_user_rights.name", "tbl_user_rights.details", "tbl_branches.branch_name", "tbl_branches.branch_code" ], [ "tbl_logins.branch=tbl_branches.branch_code", "tbl_logins.user_right_id=tbl_user_rights.id" ]) return search_data def searchAdminsBranch(self, request_params): search_data = self.dbconn.joint_table_search( request_params['search_param'], "tbl_logins", ["tbl_branches", "tbl_user_rights"], [ "tbl_logins.username", "tbl_logins.user_right_id", "tbl_logins.first_name", "tbl_logins.last_name", "tbl_logins.email", "tbl_logins.msisdn", "tbl_logins.last_login", "tbl_logins.active", "tbl_logins.status", "tbl_logins.created", "tbl_user_rights.name", "tbl_user_rights.details", "tbl_branches.branch_name", "tbl_branches.branch_code" ], [ "tbl_logins.branch=tbl_branches.branch_code", "tbl_logins.user_right_id=tbl_user_rights.id" ], gen_cond=" and tbl_logins.branch='{0}'".format( self.user['branch_code'])) return search_data def searchAdminsBranch(self, request_params): search_data = self.dbconn.joint_table_search( request_params['search_param'], "tbl_logins", ["tbl_branches", "tbl_user_rights"], [ "tbl_logins.username", "tbl_logins.user_right_id", "tbl_logins.first_name", "tbl_logins.last_name", "tbl_logins.email", "tbl_logins.msisdn", "tbl_logins.last_login", "tbl_logins.active", "tbl_logins.status", "tbl_logins.created", "tbl_user_rights.name", "tbl_user_rights.details", "tbl_branches.branch_name", "tbl_branches.branch_code" ], [ "tbl_logins.branch=tbl_branches.branch_code", "tbl_logins.user_right_id=tbl_user_rights.id" ], gen_cond=" and tbl_logins.branch='{0}'".format( self.user['branch_code'])) return search_data def searchBranches(self, request_params): search_data = self.dbconn.search_table( request_params['search_param'], 'tbl_branches', ["id", "branch_id", "acronym", "branch_name", "branch_code"]) return search_data def addAdminBranch(self, data): admin = self.dbconn.insert_in_table("tbl_branches", data) return admin def removeAdminBranch(self, data): admin = self.dbconn.delete_from_table( "tbl_branches", "where branch_id={}".format(data['branch_id'])) return admin
class Validator(object): """docstring for UserFunctions""" def __init__(self, user): super(Validator, self).__init__() self.dbconn = MysqlLib() self.user = user def getValidatorByMsisdn(self, msisdn): validator = self.dbconn.select_from_table('tbl_validators', condition="WHERE msisdn= '" + msisdn + "'") return validator def getValidatorByEmail(self, email): validator = self.dbconn.select_from_table('tbl_validators', condition="WHERE email= '" + email + "'") return validator def getAllValidators(self, request_params): where_con = "" if request_params['branch'] == "None": where_con = "1" else: where_con = "branch= '" + request_params['branch'] + "'" data = self.dbconn.select_from_table_paged( "tbl_validators", condition=" WHERE " + where_con + " ORDER BY date_created DESC", offset=request_params['offset'], records=request_params['records']) data_count = self.dbconn.select_count_table("tbl_validators", condition=" WHERE " + where_con) return [data, data_count] def addValidator(self, data): admin = self.dbconn.insert_in_table("tbl_validators", data) return admin def updateValidator(self, data): admin = self.dbconn.update_table( "tbl_validators", data, "WHERE email='{}'".format(data['email'])) return admin def deleteValidator(self, request_id): data = self.dbconn.delete_from_table( "tbl_validators", condition=" WHERE validator_id={}".format(request_id)) return data def getBranches(self): data = self.dbconn.select_from_table("tbl_branches") return data def getValidatorsHistory(self, request_params): where_con = "" if request_params['user_branch'] == "Non": where_con = "1" else: where_con = "user_branch= '" + request_params['user_branch'] + "'" if request_params['fromdate'] == "" or request_params['todate'] == "": data = self.dbconn.select_from_table_paged( "tbl_activity_log", condition=" WHERE user_type='{}'".format( request_params["user_type"]) + " AND " + where_con + " ORDER BY date_created DESC", offset=request_params['offset'], records=request_params['records']) data_count = self.dbconn.select_count_table( "tbl_activity_log", condition=" WHERE user_type='{}'".format( request_params["user_type"]) + " AND " + where_con) else: data = self.dbconn.select_from_table_paged( "tbl_activity_log", condition=" WHERE user_type='{}'".format( request_params["user_type"]) + " AND " + where_con + " AND DATE(date_created) BETWEEN '{0}' AND '{1}' ORDER BY date_created DESC" .format(request_params['fromdate'], request_params['todate']), offset=request_params['offset'], records=request_params['records']) data_count = self.dbconn.select_count_table( "tbl_activity_log", condition=" WHERE user_type='{}'".format( request_params["user_type"]) + " AND " + where_con + " AND DATE(date_created) BETWEEN '{0}' AND '{1}'".format( request_params['fromdate'], request_params['todate'])) return [data, data_count] def searchValidatoinHistory(self, request_params): data = self.dbconn.select_from_table( "tbl_activity_log", condition=" WHERE user_type='{}'".format( request_params["user_type"]) + " AND serial_no LIKE '%{}%'".format( request_params['search_param'])) return data