def Stakeholder_Category(self, f, rules): self.passed = {} for records in self.all_records: if(f == "Stakeholder_Category"): for r in rules: if r == "M": if(records.Stakeholder_Category): self.passed[records.id]={"Mandatory":True} else: self.passed[records.id]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements(key, self._model, records.Stakeholder_Category, priority=r.get(key)) self.passed[records.id]["ENF"]=self.statuss.validate_field(records.Stakeholder_Category) else: if(records.Stakeholder_Category): if(len(records.Stakeholder_Category) == 1): self.passed[records.id]["FORMAT"]=checkformat.is_numeric(records.Stakeholder_Category) else: self.passed[records.id]["FORMAT"]=False else: self.passed[records.id]["FORMAT"]=False self.final_result[records.id]=self.passed if(not len(self.passed)): pass elif(len(self.passed) == self.all_count): for keys in self.passed.iterkeys(): self.passed_by_id.get(keys).append(self.passed.get(keys).values().count(True)) else: pass
def Loss_Amount(self, f, rules): self.passed = {} for records in self.all_records: if (f == "Loss_Amount"): for r in rules: if r == "C": if (records.Loss_Amount): self.passed[records.id] = {"Conditional": True} else: self.passed[records.id] = {"Conditional": False} elif (isinstance(r, dict)): for key in r: #self.statuss = checkenforcements.check_enforcements(key, self._model, records.Sub_Category_Code, priority=r.get(key)) self.passed[records.id][ "ENF"] = True #self.statuss.validate_field(records.Loss_Amount) else: if (len(records.Loss_Amount) <= 21): self.passed[ records.id]["FORMAT"] = checkformat.is_numeric( records.Loss_Amount) else: self.passed[records.id]["FORMAT"] = False self.final_result[records.id] = self.passed if (not len(self.passed)): pass elif (len(self.passed) == self.all_count): for keys in self.passed.iterkeys(): self.passed_by_id.get(keys).append( self.passed.get(keys).values().count(True)) else: pass
def Credit_Application_Duration(self, f, rules): self.passed = {} for records in self.all_records: if(f == "Credit_Application_Duration"): for r in rules: if r == "M": if(records.Credit_Application_Duration): self.passed[records.id]={"Mandatory":True} else: self.passed[records.id]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements(key, self._model, records.Credit_Application_Duration, priority=r.get(key)) self.passed[records.id]["ENF"]=self.statuss.validate_field(records.Credit_Application_Duration) else: if(records.Credit_Application_Duration != None): if(len(str(records.Credit_Application_Duration)) <= 50): if(str(records.Credit_Application_Duration).strip().lstrip().rstrip()): self.passed[records.id]["FORMAT"]=checkformat.is_numeric(int(records.Credit_Application_Duration)) else: self.passed[records.id]["FORMAT"]=False else: self.passed[records.id]["FORMAT"]=False else: self.passed[records.id]["FORMAT"]=False self.final_result[records.id]=self.passed if(not len(self.passed)): pass elif(len(self.passed) == self.all_count): for keys in self.passed.iterkeys(): self.passed_by_id.get(keys).append(self.passed.get(keys).values().count(True)) else: pass
def Cheque_Amount(self, f, rules): self.passed = {} for records in self.all_records: if (f == "Cheque_Amount"): for r in rules: if r == "M": if (records.Cheque_Amount): self.passed[records.id] = {"Mandatory": True} else: self.passed[records.id] = {"Mandatory": False} elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Cheque_Amount, priority=r.get(key)) self.passed[records.id][ "ENF"] = self.statuss.validate_field( records.Cheque_Amount) else: if (records): if (records.Cheque_Amount): if (len(records.Cheque_Amount) <= 21): self.stripped = str( records.Cheque_Amount.strip()).lstrip( ).rstrip() if (self.stripped): self.passed[records.id][ "FORMAT"] = checkformat.is_numeric( int(float(self.stripped))) else: self.passed[ records.id]["FORMAT"] = False else: self.passed[records.id]["FORMAT"] = False else: self.passed[records.id]["FORMAT"] = False else: self.passed[records.id]["FORMAT"] = False self.final_result[records.id] = self.passed if (not len(self.passed)): pass elif (len(self.passed) == self.all_count): for keys in self.passed.iterkeys(): self.passed_by_id.get(keys).append( self.passed.get(keys).values().count(True)) else: pass
def v_lid(self, f, rules): self.passed = {} if (f == "License_Issuing_Date"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if (records.License_Issuing_Date): self.passed[records.License_Issuing_Date] = { "Mandatory": True } else: self.passed[records.License_Issuing_Date] = { "Mandatory": True } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.License_Issuing_Date.replace( "-", "", 10), priority=r.get(key)) self.passed[records.License_Issuing_Date][ "ENF"] = self.statuss.validate_field( records.License_Issuing_Date.replace( "-", "", 10)) else: if (len( records.License_Issuing_Date.replace( "-", "", 10)) == 8): self.passed[records.License_Issuing_Date][ "FORMAT"] = checkformat.is_numeric( records.License_Issuing_Date.replace( "-", "", 10)) else: self.passed[ records.License_Issuing_Date]["FORMAT"] = False if (not len(self.passed)): pass else: return self.passed
def check_data_in_field(self, f, rules): self.passed = { } try: if(f == "PI_Identification_Code"): self.pass_pi = {} self.by_id = {} for records in self.all_records: for r in rules: if r == "M": if(records.PI_Identification_Code.pi_identification_code): self.passed[records.PI_Identification_Code.pi_identification_code]={"Mandatory":True} else: self.passed[records.PI_Identification_Code.pi_identification_code]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements(key, self._model, records.PI_Identification_Code.pi_identification_code, priority=r.get(key)) self.passed[records.PI_Identification_Code.pi_identification_code]["ENF"]=self.statuss.validate_field(records.PI_Identification_Code.pi_identification_code) else: if(records.PI_Identification_Code.pi_identification_code): self.parseddata = records.PI_Identification_Code.pi_identification_code.replace("-", "", 10) if(len(self.parseddata) == 6 or len(self.parseddata) <= 8 ): self.passed[records.PI_Identification_Code.pi_identification_code]["FORMAT"]=checkformat.sub_alphanumeric(records.PI_Identification_Code.pi_identification_code.strip()) else: self.passed[records.PI_Identification_Code.pi_identification_code]["FORMAT"]=False else: self.passed[str(records.PI_Identification_Code.pi_identification_code)]["FORMAT"]=False print "PASSED ", self.passed yield self.passed elif(f == "Branch_Identification_Code"): self.pass_it = { } for records in self.all_records: for r in rules: if r == "M": if(records.Branch_Identification_Code): self.passed[records.Branch_Identification_Code.branch_code]={"Mandatory":True} else: self.passed[records.Branch_Identification_Code.branch_code]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: #print "ENFORMENTS ", key, r self.statuss = checkenforcements.check_enforcements(key, self._model, records.Branch_Identification_Code.branch_code, priority=r.get(key)) self.passed[records.Branch_Identification_Code.branch_code]["ENF"]=self.statuss.validate_field(records.Branch_Identification_Code.branch_code) else: if(records.Branch_Identification_Code.branch_code): if(len(records.Branch_Identification_Code.branch_code) <= 15): self.passed[records.Branch_Identification_Code.branch_code]["FORMAT"]=True #checkformat.sub_alphanumeric(records.Branch_Identification_Code) else: self.passed[records.Branch_Identification_Code.branch_code]["FORMAT"]=False else: self.passed[records.Branch_Identification_Code.branch_code]["FORMAT"]=False yield self.passed elif(f == "Client_Number"): self.pass_in = {} for records in self.all_records: for r in rules: if r == "O": #print "SOME IS OPTIONAL" if(records.Client_Number): self.passed[records.Client_Number]={"Optional":True} else: self.passed[records.Client_Number]={"Optional":True} elif(isinstance(r, dict)): for key in r: #print "My KEY ", key, r #self.statuss = checkenforcements.check_enforcements(key, self._model, records.Client_Number, priority=r.get(key)) self.passed[records.Client_Number]["ENF"]= True #self.statuss.validate_field(records.Client_Number) else: if(records.Client_Number): if(len(str(records.Client_Number)) <= 30): self.passed[records.Client_Number]["FORMAT"]=True #checkformat.sub_alphanumeric(records.Client_Number) else: self.passed[records.Client_Number]["FORMAT"]=False else: self.passed[records.Client_Number]["FORMAT"]=False yield self.passed elif(f == "Credit_Application_Reference"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if(records.Credit_Application_Reference): self.passed[records.Credit_Application_Reference]={"Mandatory":True} else: self.passed[records.Credit_Application_Reference]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements(key, self._model, records.Credit_Application_Reference, priority=r.get(key)) self.passed[records.Credit_Application_Reference]["ENF"]=self.statuss.validate_field(records.Credit_Application_Reference) else: if(records.Credit_Application_Reference): if(len(records.Credit_Application_Reference) <= 30): self.passed[records.Credit_Application_Reference]["FORMAT"]=True #checkformat.sub_alphanumeric(records.Credit_Application_Reference) else: self.passed[records.Credit_Application_Reference]["FORMAT"]=False else: self.passed[records.Credit_Application_Reference]["FORMAT"]=False yield self.passed elif(f == "Applicant_Classification"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if(records.Applicant_Classification): self.passed[records.Applicant_Classification]={"Mandatory":True} else: self.passed[records.Applicant_Classification]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements(key, self._model, records.Applicant_Classification, priority=r.get(key)) self.passed[records.Applicant_Classification]["ENF"]=self.statuss.validate_field(records.Applicant_Classification) else: if(records.Applicant_Classification): if(len(records.Applicant_Classification) == 1): self.passed[records.Applicant_Classification]["FORMAT"]=checkformat.is_numeric(records.Applicant_Classification) else: self.passed[records.Applicant_Classification]["FORMAT"]=False else: self.passed[records.Applicant_Classification]["FORMAT"]=False yield self.passed elif(f == "Credit_Application_Date"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if(records.Credit_Application_Date): self.passed[records.Credit_Application_Date]={"Mandatory":True} else: self.passed[records.Credit_Application_Date]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values(r.get(key)[0]) self.second_priority = self.check_dict_values(r.get(key)[1]) self.third_priority = self.check_dict_values(r.get(key)[2]) if(self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Credit_Application_Date, priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.Credit_Application_Date) if(self.validation_first == True): #Perform the second validation self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Credit_Application_Date, priority=r.get(key)) #print "DATES ", r.get(key)[1] self.validation_second = self.sec_enf.validate_field(records.Credit_Application_Date, records) if(self.validation_second == True): self.passed[records.Credit_Application_Date]["ENF"]=True else: self.passed[records.Credit_Application_Date]["ENF"]=False self.third_ef = checkenforcements.check_enforcements(self.get_keys(r.get(key)[2]), self._model, records.Credit_Application_Date, priority=r.get(key)) self.validation_third = self.third_ef.validate_field(records.Credit_Application_Date) if(self.validation_third == True): self.passed[records.Credit_Application_Date]["ENF"]=True else: self.passed[records.Credit_Application_Date]["ENF"]=False else: self.passed[records.Credit_Application_Date]["ENF"]=False elif(self.second_priority == 1 or self.second_priority == 2): self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Credit_Application_Date, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field(records.Credit_Application_Date) if(self.validation_second == True): #Perform the second validation given the first enforcements self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Credit_Application_Date, priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.Credit_Application_Date) if(self.validation_first == True): self.passed[records.Credit_Application_Date]["ENF"]=True else: self.passed[records.Credit_Application_Date]["ENF"]=False self.third_ef = checkenforcements.check_enforcements(self.get_keys(r.get.key()[2]), self._model, records.Credit_Application_Date, priority=r.get(key)) self.validation_third = self.third_ef.validate_field(records.Credit_Application_Date) if(self.validation_third == True): self.passed[records.Credit_Application_Date]["ENF"]=True else: self.passed[records.Credit_Application_Date]["ENF"]=False else: self.passed[records.Credit_Application_Date]["ENF"]=False elif(self.third_priority == 1 or self.third_priority == 2): self.third_ef = checkenforcements.check_enforcements(self.get_keys(r.get.key()[2]), self._model, records.Credit_Application_Date, priority=r.get(key)) self.validation_third = self.third_ef.validate_field(records.Credit_Application_Date) if(self.validation_third == True): #Perform the second validation given the first enforcements self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Credit_Application_Date, priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.Credit_Application_Date) if(self.validation_first == True): self.passed[records.Credit_Application_Date]["ENF"]=True else: self.passed[records.Credit_Application_Date]["ENF"]=False self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Credit_Application_Date, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field(records.Credit_Application_Date) if(self.validation_second == True): self.passed[records.Credit_Application_Date]["ENF"]=True else: self.passed[records.Credit_Application_Date]["ENF"]=False else: self.passed[records.Credit_Application_Date]["ENF"]=False else: self.passed[records.Credit_Application_Date]["ENF"]=False else: if(records.Credit_Application_Date): if(len(str(records.Credit_Application_Date)) <= 8): self.passed[records.Credit_Application_Date]["FORMAT"]=checkformat.is_numeric(int(float(records.Credit_Application_Date))) else: self.passed[records.Credit_Application_Date]["FORMAT"]=False else: self.passed[records.Credit_Application_Date]["FORMAT"]=False yield self.passed elif(f == "Amount"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if(records.Amount): self.passed[records.Amount]={"Mandatory":True} else: self.passed[records.Amount]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements(key, self._model, records.Amount, priority=r.get(key)) self.passed[records.Amount]["ENF"]=self.statuss.validate_field(records.Amount) else: if(records.Amount != None): if(len(records.Amount) <= 21): self.passed[records.Amount]["FORMAT"]=checkformat.is_numeric(records.Amount) else: self.passed[records.Amount]["FORMAT"]=False else: self.passed[records.Amount]["FORMAT"]=False yield self.passed elif(f == "Currency"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if(records.Currency): self.passed[records.Currency]={"Mandatory":True} else: self.passed[records.Currency]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values(r.get(key)[0]) self.second_priority = self.check_dict_values(r.get(key)[1]) if(self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Currency, priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.Currency) if(self.validation_first == True): #Perform the second validation self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Currency, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field(records.Currency) else: self.passed[records.Currency]["ENF"]=False if(self.validation_first==True): if(self.validation_second == True): self.passed[records.Currency]["ENF"]=True else: #Perform a logging self.passed[records.Currency]["ENF"]=False else: self.passed[records.Currency]["ENF"]=False else: self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Currency, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Currency, priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.Currency) self.validation_second = self.sec_enf.validate_field(records.Currency) if(self.validation_second==True): if(self.validation_first == True): self.passed[records.Currency]["ENF"]=True else: #Perform a logging self.passed[records.Currency]["ENF"]=False else: self.passed[records.Currency]["ENF"]=False else: if(records.Currency): if(len(records.Currency) == 3): self.passed[records.Currency]["FORMAT"]=checkformat.sub_alphanumeric(records.Currency) else: self.passed[records.Currency]["FORMAT"]=False else: self.passed[records.Currency]["FORMAT"]=False yield self.passed elif(f == "Credit_Account_or_Loan_Product_Type"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if(records.Credit_Account_or_Loan_Product_Type): self.passed[records.Credit_Account_or_Loan_Product_Type]={"Mandatory":True} else: self.passed[records.Credit_Account_or_Loan_Product_Type]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements(key, self._model, records.Credit_Account_or_Loan_Product_Type, priority=r.get(key)) self.passed[records.Credit_Account_or_Loan_Product_Type]["ENF"]=self.statuss.validate_field(records.Credit_Account_or_Loan_Product_Type) else: if(records.Credit_Account_or_Loan_Product_Type): if(len(records.Credit_Account_or_Loan_Product_Type) <= 5): self.passed[records.Credit_Account_or_Loan_Product_Type]["FORMAT"]=checkformat.is_numeric(records.Credit_Account_or_Loan_Product_Type) else: self.passed[records.Credit_Account_or_Loan_Product_Type]["FORMAT"]=False else: self.passed[records.Credit_Account_or_Loan_Product_Type]["FORMAT"]=False yield self.passed elif(f == "Credit_Application_Status"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if(records.Credit_Application_Status): self.passed[records.Credit_Application_Status]={"Mandatory":True} else: self.passed[records.Credit_Application_Status]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements(key, self._model, records.Credit_Application_Status, priority=r.get(key)) self.passed[records.Credit_Application_Status]["ENF"]=self.statuss.validate_field(records.Credit_Application_Status) else: if(records.Credit_Application_Status): if(len(str(records.Credit_Application_Status)) == 1): self.stripped = str(records.Credit_Application_Status).strip().lstrip().rstrip() if(self.stripped): self.passed[records.Credit_Application_Status]["FORMAT"]=checkformat.is_numeric(int(float(self.stripped))) else: self.passed[records.Credit_Application_Status]["FORMAT"]=False else: self.passed[records.Credit_Application_Status]["FORMAT"]=False else: self.passed[records.Credit_Application_Status]["FORMAT"]=False yield self.passed elif(f == "Last_Status_Change_Date"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if(records.Last_Status_Change_Date): self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]={"Mandatory":True} else: self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: #print key, r self.first_priority = self.check_dict_values(r.get(key)[0]) self.second_priority = self.check_dict_values(r.get(key)[1]) self.third_priority = self.check_dict_values(r.get(key)[2]) if(self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) if(self.validation_first == True): #Perform the second validation self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) self.validation_second = self.sec_enf.validate_field(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) if(self.validation_second == True): self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["ENF"]=True else: self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["ENF"]=False self.third_ef = checkenforcements.check_enforcements(self.get_keys(r.get(key)[2]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) self.validation_third = self.third_ef.validate_field(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) if(self.validation_third == True): self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["ENF"]=True else: self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["ENF"]=False else: self.passed[records.Currency]["ENF"]=False elif(self.second_priority == 1 or self.second_priority == 2): self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) self.validation_second = self.sec_enf.validate_field(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) if(self.validation_second == True): #Perform the second validation given the first enforcements self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) #self.validation_first = self.vstatus.validate_field(records.Credit_Application_Date) self.validation_first = self.vstatus.validate_field(rrecords.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) if(self.validation_first == True): self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["ENF"]=True else: self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["ENF"]=False self.third_ef = checkenforcements.check_enforcements(self.get_keys(r.get.key()[2]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) self.validation_third = self.third_ef.validate_field(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) if(self.validation_third == True): self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["ENF"]=True else: self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["ENF"]=False else: self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["ENF"]=False elif(self.third_priority == 1 or self.third_priority == 2): self.third_ef = checkenforcements.check_enforcements(self.get_keys(r.get.key()[2]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) self.validation_third = self.third_ef.validate_field(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) if(self.validation_third == True): #Perform the second validation given the first enforcements self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) if(self.validation_first == True): self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["ENF"]=True else: self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["ENF"]=False self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) self.validation_second = self.sec_enf.validate_field(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) if(self.validation_second == True): self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["ENF"]=True else: self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["ENF"]=False else: self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["ENF"]=False else: self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["ENF"]=False else: if(records.Last_Status_Change_Date != None): if(len(str(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT))) <= 16): if(str(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)).rstrip().strip().rstrip()): self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["FORMAT"]=True #checkformat.is_numeric(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) else: self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["FORMAT"]=False else: self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["FORMAT"]=False else: self.passed[records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)]["FORMAT"]=False print self.passed yield self.passed elif(f == "Credit_Application_Duration"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if(records.Credit_Application_Duration): self.passed[records.Credit_Application_Duration]={"Mandatory":True} else: self.passed[records.Credit_Application_Duration]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements(key, self._model, records.Credit_Application_Duration, priority=r.get(key)) self.passed[records.Credit_Application_Duration]["ENF"]=self.statuss.validate_field(records.Credit_Application_Duration) else: if(records.Credit_Application_Duration != None): if(len(str(records.Credit_Application_Duration)) <= 50): self.passed[records.Credit_Application_Duration]["FORMAT"]=checkformat.is_numeric(records.Credit_Application_Duration) else: self.passed[records.Credit_Application_Duration]["FORMAT"]=False else: self.passed[records.Credit_Application_Duration]["FORMAT"]=False yield self.passed elif(f == "Rejection_Reason"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "C": if(records.Rejection_Reason): self.passed[records.Rejection_Reason]={"Conditional":True} else: self.passed[records.Rejection_Reason]={"Conditional":False} elif(isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values(r.get(key)[0]) self.second_priority = self.check_dict_values(r.get(key)[1]) if(self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Rejection_Reason, priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.Rejection_Reason) #print "V STATUS ", self.vstatus if(self.validation_first == True): #print "Phase 1 validation first is entirely true" #Perform the second validation self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Rejection_Reason, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field(records.Rejection_Reason) if(self.validation_second == True): #print "Phase 1 validation two is True" self.passed[records.Rejection_Reason]["ENF"]=True else: #print "Phase 1 validation two is falses" self.passed[records.Rejection_Reason]["ENF"]=False else: #print "Phase 1 validation first is fale" self.passed[records.Rejection_Reason]["ENF"]=False else: self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Rejection_Reason, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Rejection_Reason, priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.Rejection_Reason) self.validation_second = self.sec_enf.validate_field(records.Rejection_Reason) if(self.validation_first == True): #print "First validation is true" if(self.validation_second == True): #print "Second validation has passed " self.passed[records.Rejection_Reason]["ENF"]=True else: #print "Looks like second validation has failed in last" self.passed[records.Rejection_Reason]["ENF"]=False else: #print "First validation is not true.." self.passed[records.Rejection_Reason]["ENF"]=False else: if(records.Rejection_Reason): #print "Validation in progress...", records.Rejection_Reason, checkformat.is_numeric(records.Rejection_Reason) if(len(str(records.Rejection_Reason)) <= 20): self.passed[records.Rejection_Reason]["FORMAT"]=checkformat.is_numeric(records.Rejection_Reason) else: self.passed[records.Rejection_Reason]["FORMAT"]=False else: self.passed[records.Rejection_Reason]["FORMAT"]=False #print self.passed yield self.passed elif(f == "Client_Consent_flag"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if(records.Client_Consent_flag): self.passed[records.Client_Consent_flag]={"Mandatory":True} else: self.passed[records.Client_Consent_flag]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements(key, self._model, records.Client_Consent_flag, priority=r.get(key)) self.passed[records.Client_Consent_flag]["ENF"]=self.statuss.validate_field(records.Client_Consent_flag) else: if(records.Client_Consent_flag): if(len(str(records.Client_Consent_flag)) <= 10): self.passed[records.Client_Consent_flag]["FORMAT"]=True #checkformat.sub_alphanumeric(records.Client_Consent_flag) else: self.passed[records.Client_Consent_flag]["FORMAT"]=False else: self.passed[records.Client_Consent_flag]["FORMAT"]=False yield self.passed else: print "Yes", f #print "Something nusty has happend" except Exception as e: # Log pass
def Rejection_Reason(self, f, rules): self.passed = {} for records in self.all_records: if(f == "Rejection_Reason"): for r in rules: if r == "C": if(records.Rejection_Reason): self.passed[records.id]={"Conditional":True} else: self.passed[records.id]={"Conditional":False} elif(isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values(r.get(key)[0]) self.second_priority = self.check_dict_values(r.get(key)[1]) if(self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Rejection_Reason, priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.Rejection_Reason) if(self.validation_first == True): #Perform the second validation self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Rejection_Reason, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field(records.Rejection_Reason) if(self.validation_second == True): self.passed[records.id]["ENF"]=True else: self.passed[records.id]["ENF"]=False else: self.passed[records.id]["ENF"]=False else: self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Rejection_Reason, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Rejection_Reason, priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.Rejection_Reason) self.validation_second = self.sec_enf.validate_field(records.Rejection_Reason) if(self.validation_first == True): if(self.validation_second == True): self.passed[records.id]["ENF"]=True else: self.passed[records.id]["ENF"]=False else: self.passed[records.id]["ENF"]=False else: if(records.Rejection_Reason): if(len(str(records.Rejection_Reason)) <= 20): if(str(records.Rejection_Reason).strip().lstrip().rstrip()): self.passed[records.id]["FORMAT"]=checkformat.is_numeric(records.Rejection_Reason) else: self.passed[records.id]["FORMAT"]=False else: self.passed[records.id]["FORMAT"]=False else: self.passed[records.id]["FORMAT"]=False self.final_result[records.id]=self.passed if(not len(self.passed)): pass elif(len(self.passed) == self.all_count): for keys in self.passed.iterkeys(): self.passed_by_id.get(keys).append(self.passed.get(keys).values().count(True)) else: pass
def check_data_in_field(self, f, rules): self.passed = {} try: if (f == "EI_Employment_Type"): self.pass_pi = {} self.by_id = {} for records in self.all_records: for r in rules: if r == "C": if (records.ei.EI_Employment_Type): self.passed[records.ei.EI_Employment_Type] = { "Conditional": True } else: self.passed[records.ei.EI_Employment_Type] = { "Conditional": False } elif (isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values( r.get(key)[0]) self.second_priority = self.check_dict_values( r.get(key)[1]) if (self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.ei.EI_Employment_Type, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.ei.EI_Employment_Type, records) if (self.validation_first == True): self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.ei.EI_Employment_Type, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field( records.ei.EI_Employment_Type) if (self.validation_second == True): self.passed[ records.ei.EI_Employment_Type][ "ENF"] = True else: self.passed[ records.ei.EI_Employment_Type][ "ENF"] = False else: self.passed[ records.ei. EI_Employment_Type]["ENF"] = False else: self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.ei.EI_Employment_Type, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.ei.EI_Employment_Type, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.ei.EI_Employment_Type) self.validation_second = self.sec_enf.validate_field( records.ei.EI_Employment_Type) if (self.validation_first == True): if (self.validation_second == True): self.passed[ records.ei.EI_Employment_Type][ "ENF"] = True else: self.passed[ records.ei.EI_Employment_Type][ "ENF"] = False else: self.passed[ records.ei. EI_Employment_Type]["ENF"] = False else: if (records.ei.EI_Employment_Type): if (len(records.ei.EI_Employment_Type) == 1): self.passed[records.ei.EI_Employment_Type][ "FORMAT"] = checkformat.has_numerics_re( records.ei.EI_Employment_Type) else: self.passed[records.ei.EI_Employment_Type][ "FORMAT"] = False else: self.passed[str(records.ei.EI_Employment_Type )]["FORMAT"] = False #print self.passed yield self.passed elif (f == "EI_Primary_Occupation"): self.pass_it = {} for records in self.all_records: for r in rules: if r == "C": if (records.ei.EI_Primary_Occupation): self.passed[ records.ei.EI_Primary_Occupation] = { "Conditional": True } else: self.passed[ records.ei.EI_Primary_Occupation] = { "Conditional": False } elif (isinstance(r, dict)): for key in r: #print "KEY ", key self.statuss = checkenforcements.check_enforcements( key, self._model, records.ei.EI_Primary_Occupation, priority=r.get(key)) self.passed[records.ei.EI_Primary_Occupation][ "ENF"] = self.statuss.validate_field( records, records) else: if (len(records.ei.EI_Primary_Occupation) <= 100): self.passed[records.ei.EI_Primary_Occupation][ "FORMAT"] = checkformat.sub_alphanumeric( records.ei.EI_Primary_Occupation) else: self.passed[records.ei.EI_Primary_Occupation][ "FORMAT"] = False yield self.passed elif (f == "EI_Employer_Name"): self.pass_in = {} for records in self.all_records: for r in rules: if r == "C": if (records.ei.EI_Employer_Name): self.passed[records.ei.EI_Employer_Name] = { "Conditional": True } else: self.passed[records.ei.EI_Employer_Name] = { "Conditional": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.ei.EI_Employer_Name, priority=r.get(key)) self.passed[records.ei.EI_Employer_Name][ "ENF"] = self.statuss.validate_field( records, records) else: if (len(records.ei.EI_Employer_Name) <= 100): self.passed[records.ei.EI_Employer_Name][ "FORMAT"] = True #checkformat.has_numerics_re(records.ei.EI_Employer_Name) else: self.passed[records.ei. EI_Employer_Name]["FORMAT"] = False yield self.passed elif (f == "EI_Employee_Number"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "C": if (records.ei.EI_Employee_Number): self.passed[records.ei.EI_Employee_Number] = { "Conditional": True } else: self.passed[records.ei.EI_Employee_Number] = { "Conditional": False } elif (isinstance(r, bool)): # self.passed[ records.ei.EI_Employee_Number]["ENF"] = True else: if (len(str(records.ei.EI_Employee_Number)) <= 20): self.passed[records.ei.EI_Employee_Number][ "FORMAT"] = checkformat.has_numerics_re( records.ei.EI_Employee_Number) else: self.passed[records.ei.EI_Employee_Number][ "FORMAT"] = False yield self.passed elif (f == "EI_Employment_Date"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "C": if (records.ei.EI_Employment_Date): self.passed[records.ei.EI_Employment_Date] = { "Conditional": True } else: self.passed[records.ei.EI_Employment_Date] = { "Conditional": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.ei.EI_Employment_Date, priority=r.get(key)) self.passed[records.ei.EI_Employment_Date][ "ENF"] = self.statuss.validate_field( records.ei.EI_Employment_Date, records) else: if (records.ei.EI_Employment_Date): self.ei_date = records.ei.EI_Employment_Date.replace( "-", "", 20) if (len(str(self.ei_date)) >= 6): self.passed[records.ei.EI_Employment_Date][ "FORMAT"] = checkformat.is_numeric( self.ei_date) else: self.passed[records.ei.EI_Employment_Date][ "FORMAT"] = False else: self.passed[records.ei.EI_Employment_Date][ "FORMAT"] = False #print "DATE EI ", self.passed yield self.passed elif (f == "EI_Income_Band"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "C": if (records.ei.EI_Income_Band): self.passed[records.ei.EI_Income_Band] = { "Conditional": True } else: self.passed[records.ei.EI_Income_Band] = { "Conditional": False } elif (isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values( r.get(key)[0]) self.second_priority = self.check_dict_values( r.get(key)[1]) if (self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.ei.EI_Income_Band, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records, records) if (self.validation_first == True): self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.ei.EI_Income_Band, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field( records.ei.EI_Income_Band) if (self.validation_second == True): self.passed[ records.ei. EI_Income_Band]["ENF"] = True else: self.passed[ records.ei. EI_Income_Band]["ENF"] = False else: self.passed[records.ei.EI_Income_Band][ "ENF"] = False else: self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.ei.EI_Income_Band, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.ei.EI_Income_Band, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.ei.EI_Income_Band) self.validation_second = self.sec_enf.validate_field( records.ei.EI_Income_Band) if (self.validation_first == True): if (self.validation_second == True): self.passed[ records.ei. EI_Income_Band]["ENF"] = True else: self.passed[ records.ei. EI_Income_Band]["ENF"] = False else: self.passed[records.ei.EI_Income_Band][ "ENF"] = False else: if (records.ei.EI_Income_Band): if (len(str(records.ei.EI_Income_Band)) <= 2): self.passed[records.ei.EI_Income_Band][ "FORMAT"] = checkformat.is_numeric( records.ei.EI_Income_Band) else: self.passed[records.ei.EI_Income_Band][ "FORMAT"] = False else: self.passed[str(records.ei.EI_Income_Band )]["FORMAT"] = False yield self.passed elif (f == "EI_Salary_Frequency"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "C": if (records.ei.EI_Salary_Frequency): self.passed[records.ei.EI_Salary_Frequency] = { "Conditional": True } else: self.passed[records.ei.EI_Salary_Frequency] = { "Conditional": False } elif (isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values( r.get(key)[0]) self.second_priority = self.check_dict_values( r.get(key)[1]) if (self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.ei.EI_Salary_Frequency, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records, records) if (self.validation_first == True): self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.ei.EI_Salary_Frequency, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field( records.ei.EI_Salary_Frequency) if (self.validation_second == True): self.passed[records.ei. EI_Salary_Frequency][ "ENF"] = True else: self.passed[records.ei. EI_Salary_Frequency][ "ENF"] = False else: self.passed[ records.ei. EI_Salary_Frequency]["ENF"] = False else: self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.ei.EI_Salary_Frequency, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.ei.EI_Salary_Frequency, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.ei.EI_Salary_Frequency) self.validation_second = self.sec_enf.validate_field( records.ei.EI_Salary_Frequency) if (self.validation_first == True): if (self.validation_second == True): self.passed[records.ei. EI_Salary_Frequency][ "ENF"] = True else: self.passed[records.ei. EI_Salary_Frequency][ "ENF"] = False else: self.passed[ records.ei. EI_Salary_Frequency]["ENF"] = False else: if (records.ei.EI_Salary_Frequency): if (len(str(records.ei.EI_Salary_Frequency)) <= 2): self.passed[ records.ei.EI_Salary_Frequency][ "FORMAT"] = checkformat.is_numeric( records.ei.EI_Salary_Frequency) else: self.passed[ records.ei. EI_Salary_Frequency]["FORMAT"] = False else: self.passed[str(records.ei.EI_Salary_Frequency )]["FORMAT"] = False yield self.passed except Exception as e: # Log pass
def Last_Status_Change_Date(self,f, rules): self.passed = {} for records in self.all_records: if(f == "Last_Status_Change_Date"): for r in rules: if r == "M": if(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)): self.passed[records.id]={"Mandatory":True} else: self.passed[records.id]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: #print key, r self.first_priority = self.check_dict_values(r.get(key)[0]) self.second_priority = self.check_dict_values(r.get(key)[1]) self.third_priority = self.check_dict_values(r.get(key)[2]) if(self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) if(self.validation_first == True): #Perform the second validation self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) self.validation_second = self.sec_enf.validate_field(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) if(self.validation_second == True): self.passed[records.id]["ENF"]=True else: self.passed[records.id]["ENF"]=False self.third_ef = checkenforcements.check_enforcements(self.get_keys(r.get(key)[2]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) self.validation_third = self.third_ef.validate_field(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) if(self.validation_third == True): self.passed[records.id]["ENF"]=True else: self.passed[records.id]["ENF"]=False else: self.passed[records.id]["ENF"]=False elif(self.second_priority == 1 or self.second_priority == 2): self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) self.validation_second = self.sec_enf.validate_field(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) if(self.validation_second == True): #Perform the second validation given the first enforcements self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.Credit_Application_Date.strftime(self.DATE_FORMAT)) if(self.validation_first == True): self.passed[records.id]["ENF"]=True else: self.passed[records.id]["ENF"]=False self.third_ef = checkenforcements.check_enforcements(self.get_keys(r.get.key()[2]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) self.validation_third = self.third_ef.validate_field(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) if(self.validation_third == True): self.passed[records.id]["ENF"]=True else: self.passed[records.id]["ENF"]=False else: self.passed[records.id]["ENF"]=False elif(self.third_priority == 1 or self.third_priority == 2): self.third_ef = checkenforcements.check_enforcements(self.get_keys(r.get.key()[2]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) self.validation_third = self.third_ef.validate_field(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) if(self.validation_third == True): #Perform the second validation given the first enforcements self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) if(self.validation_first == True): self.passed[records.id]["ENF"]=True else: self.passed[records.id]["ENF"]=False self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Last_Status_Change_Date.strftime(self.DATE_FORMAT), priority=r.get(key)) self.validation_second = self.sec_enf.validate_field(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)) if(self.validation_second == True): self.passed[records.id]["ENF"]=True else: self.passed[records.id]["ENF"]=False else: self.passed[records.id]["ENF"]=False else: self.passed[records.id]["ENF"]=False else: if(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT) != None): if(len(str(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT))) <= 12): if(str(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT)).strip().lstrip().rstrip()): self.passed[records.id]["FORMAT"]=checkformat.is_numeric(int(records.Last_Status_Change_Date.strftime(self.DATE_FORMAT))) else: self.passed[records.id]["FORMAT"]=False else: self.passed[records.id]["FORMAT"]=False else: self.passed[records.id]["FORMAT"]=False self.final_result[records.id]=self.passed if(not len(self.passed)): pass elif(len(self.passed) == self.all_count): for keys in self.passed.iterkeys(): self.passed_by_id.get(keys).append(self.passed.get(keys).values().count(True)) else: pass
def check_data_in_field(self, f, rules): self.passed = {} try: if (f == "PI_Identification_Code"): self.pass_pi = {} self.by_id = {} for records in self.all_records: for r in rules: if r == "M": if (records.PI_Identification_Code. pi_identification_code): self.passed[records.PI_Identification_Code. pi_identification_code] = { "Mandatory": True } else: self.passed[records.PI_Identification_Code. pi_identification_code] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values( r.get(key)[0]) self.second_priority = self.check_dict_values( r.get(key)[1]) if (self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.PI_Identification_Code. pi_identification_code, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.PI_Identification_Code. pi_identification_code) if (self.validation_first == True): #Perform the second validation self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.PI_Identification_Code. pi_identification_code, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field( records.PI_Identification_Code. pi_identification_code, headers=self.headers, compare_pi=True) if (self.validation_second == True): self.passed[ records.PI_Identification_Code. pi_identification_code][ "ENF"] = True else: self.passed[ records.PI_Identification_Code. pi_identification_code][ "ENF"] = False else: self.passed[ records.PI_Identification_Code. pi_identification_code][ "ENF"] = False else: self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.PI_Identification_Code. pi_identification_code, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.PI_Identification_Code. pi_identification_code, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.PI_Identification_Code. pi_identification_code) self.validation_second = self.sec_enf.validate_field( records.PI_Identification_Code. pi_identification_code, headers=self.headers, compare_pi=True) if (self.validation_first == True): if (self.validation_second == True): self.passed[ records.PI_Identification_Code. pi_identification_code][ "ENF"] = True else: self.passed[ records.PI_Identification_Code. pi_identification_code][ "ENF"] = False else: self.passed[ records.PI_Identification_Code. pi_identification_code][ "ENF"] = False else: if (records.PI_Identification_Code): self.parseddata = records.PI_Identification_Code.pi_identification_code.replace( "-", "", 10) if (len(self.parseddata) >= 2): self.passed[ records.PI_Identification_Code. pi_identification_code][ "FORMAT"] = checkformat.sub_alphanumeric( records.PI_Identification_Code. pi_identification_code.strip()) else: self.passed[records.PI_Identification_Code. pi_identification_code][ "FORMAT"] = False else: self.passed[str( records.PI_Identification_Code. pi_identification_code)]["FORMAT"] = False yield self.passed elif (f == "Branch_Identification_Code"): self.pass_it = {} for records in self.all_records: for r in rules: if r == "M": if (records.Branch_Identification_Code.branch_code ): self.passed[records.Branch_Identification_Code. branch_code] = { "Mandatory": True } else: self.passed[records.Branch_Identification_Code. branch_code] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values( r.get(key)[0]) self.second_priority = self.check_dict_values( r.get(key)[1]) if (self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Branch_Identification_Code. branch_code, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Branch_Identification_Code. branch_code) if (self.validation_first == True): #Perform the second validation self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Branch_Identification_Code. branch_code, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field( records.Branch_Identification_Code. branch_code, headers=records. Branch_Identification_Code. branch_code, compare_b=True) if (self.validation_second == True): self.passed[ records. Branch_Identification_Code. branch_code]["ENF"] = True else: self.passed[ records. Branch_Identification_Code. branch_code]["ENF"] = False else: self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Branch_Identification_Code. branch_code, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Branch_Identification_Code. branch_code, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Branch_Identification_Code. branch_code) self.validation_second = self.sec_enf.validate_field( records.Branch_Identification_Code. Branch_Code, headers=records. Branch_Identification_Code.branch_code, compare_b=True) if (self.validation_first == True): if (self.validation_second == True): self.passed[ records. Branch_Identification_Code. branch_code]["ENF"] = True else: self.passed[ records. Branch_Identification_Code. branch_code]["ENF"] = False else: self.passed[ records.Branch_Identification_Code. branch_code]["ENF"] = False else: if (len(records.Branch_Identification_Code. branch_code) >= 2): self.passed[ records.Branch_Identification_Code. branch_code][ "FORMAT"] = True #checkformat.is_numeric(records.Branch_Identification_Code) else: self.passed[records.Branch_Identification_Code. branch_code]["FORMAT"] = False yield self.passed elif (f == "Borrowers_Client_Number"): self.pass_in = {} for records in self.all_records: for r in rules: if r == "M": if (records.Borrowers_Client_Number.Client_Number): self.passed[records.Borrowers_Client_Number. Client_Number] = { "Mandatory": True } else: self.passed[records.Borrowers_Client_Number. Client_Number] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values( r.get(key)[0]) self.second_priority = self.check_dict_values( r.get(key)[1]) if (self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Borrowers_Client_Number. Client_Number, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Borrowers_Client_Number. Client_Number) if (self.validation_first == True): #Perform the second validation self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Borrowers_Client_Number. Client_Number, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field( records.Borrowers_Client_Number. Client_Number, headers=self.headers, b_client=True) if (self.validation_second == True): self.passed[ records.Borrowers_Client_Number .Client_Number]["ENF"] = True else: self.passed[ records.Borrowers_Client_Number .Client_Number]["ENF"] = False else: self.passed[ records.Borrowers_Client_Number. Client_Number]["ENF"] = False else: self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Borrowers_Client_Number. Client_Number, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Borrowers_Client_Number. Client_Number, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Borrowers_Client_Number. Client_Number) self.validation_second = self.sec_enf.validate_field( records.Borrowers_Client_Number. Client_Number, headers=self.headers, b_client=True) if (self.validation_first == True): if (self.validation_second == True): self.passed[ records.Borrowers_Client_Number .Client_Number]["ENF"] = True else: self.passed[ records.Borrowers_Client_Number .Client_Number]["ENF"] = False else: self.passed[ records.Borrowers_Client_Number. Client_Number]["ENF"] = False else: if (len(records.Borrowers_Client_Number. Client_Number) <= 30): self.passed[ records.Borrowers_Client_Number. Client_Number][ "FORMAT"] = True #checkformat.sub_alphanumeric(records.Borrowers_Client_Number.Client_Number) else: self.passed[records.Borrowers_Client_Number. Client_Number]["FORMAT"] = False yield self.passed elif (f == "Borrower_Account_Reference"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if (records.Borrower_Account_Reference): if (records.Borrower_Account_Reference. Credit_Account_Reference): self.passed[ records.Borrower_Account_Reference. Credit_Account_Reference] = { "Mandatory": True } else: self.passed[ records.Borrower_Account_Reference. Credit_Account_Reference] = { "Mandatory": False } else: self.passed[ records.Borrower_Account_Reference] = { "Mandatory": False } elif (isinstance(r, dict)): if (records.Borrower_Account_Reference): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Borrower_Account_Reference. Credit_Account_Reference, priority=r.get(key)) self.passed[ records.Borrower_Account_Reference. Credit_Account_Reference][ "ENF"] = self.statuss.validate_field( records. Borrower_Account_Reference. Credit_Account_Reference) else: self.passed[records.Borrower_Account_Reference][ "ENF"] = False #self.statuss.validate_field(records.Borrower_Account_Reference.Credit_Account_Reference) else: if (records.Borrower_Account_Reference): if (len(records.Borrower_Account_Reference. Credit_Account_Reference) <= 30): self.passed[ records.Borrower_Account_Reference. Credit_Account_Reference][ "FORMAT"] = True #checkformat.sub_alphanumeric(records.Borrower_Account_Reference) else: self.passed[ records.Borrower_Account_Reference. Credit_Account_Reference][ "FORMAT"] = False else: self.passed[ records.Borrower_Account_Reference][ "FORMAT"] = False yield self.passed elif (f == "Guarantor_Classification"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": #print "Date ", records.License_Issuing_Date if (records.Guarantor_Classification): self.passed[ records.Guarantor_Classification] = { "Mandatory": True } else: self.passed[ records.Guarantor_Classification] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Guarantor_Classification, priority=r.get(key)) self.passed[records.Guarantor_Classification][ "ENF"] = self.statuss.validate_field( records.Guarantor_Classification) else: if (len(records.Guarantor_Classification) == 1): self.passed[records.Guarantor_Classification][ "FORMAT"] = checkformat.is_numeric( records.Guarantor_Classification) else: self.passed[records.Guarantor_Classification][ "FORMAT"] = False yield self.passed elif (f == "Guarantee_Type"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if (records.Guarantee_Type): self.passed[records.Guarantee_Type] = { "Mandatory": True } else: self.passed[records.Guarantee_Type] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Guarantee_Type, priority=r.get(key)) self.passed[records.Guarantee_Type][ "ENF"] = self.statuss.validate_field( records.Guarantee_Type) else: if (len(records.Guarantee_Type) == 1): self.passed[records.Guarantee_Type][ "FORMAT"] = checkformat.is_numeric( records.Guarantee_Type) else: self.passed[ records.Guarantee_Type]["FORMAT"] = False yield self.passed elif (f == "Guarantor_Type"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": #print "Date ", records.License_Issuing_Date if (records.Guarantor_Type): self.passed[records.Guarantor_Type] = { "Mandatory": True } else: self.passed[records.Guarantor_Type] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Guarantor_Type, priority=r.get(key)) self.passed[records.Guarantor_Type][ "ENF"] = self.statuss.validate_field( records.Guarantor_Type) else: if (len(records.Guarantor_Type) == 1): self.passed[records.Guarantor_Type][ "FORMAT"] = checkformat.is_numeric( records.Guarantor_Type) else: self.passed[ records.Guarantor_Type]["FORMAT"] = False yield self.passed except Exception as e: # Log pass
def check_data_in_field(self, f, rules): self.passed = { } try: if(f == "PI_Identification_Code"): self.pass_pi = {} self.final_result = {} for records in self.all_records: for r in rules: if r == "M": if(records.PI_Identification_Code): if(records.PI_Identification_Code.pi_identification_code): self.passed[records.PI_Identification_Code.pi_identification_code]={"Mandatory":True} else: self.passed[records.PI_Identification_Code.pi_identification_code]={"Mandatory":False} else: self.passed[str(records.PI_Identification_Code)]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: if(records.PI_Identification_Code): self.statuss = checkenforcements.check_enforcements(key, self._model, records.PI_Identification_Code.pi_identification_code, priority=r.get(key)) self.passed[records.PI_Identification_Code.pi_identification_code]["ENF"]=self.statuss.validate_field(records.PI_Identification_Code.pi_identification_code) else: self.passed[str(records.PI_Identification_Code)]["ENF"]=self.statuss.validate_field(str(records.PI_Identification_Code)) else: if(records.PI_Identification_Code): self.parseddata = records.PI_Identification_Code.pi_identification_code.replace("-", "", 10) if(len(self.parseddata) == 6 or len(self.parseddata) <= 8): self.passed[records.PI_Identification_Code.pi_identification_code]["FORMAT"]=checkformat.sub_alphanumeric(records.PI_Identification_Code.pi_identification_code.strip()) else: self.passed[records.PI_Identification_Code.pi_identification_code]["FORMAT"]=False else: self.passed[str(records.PI_Identification_Code)]["FORMAT"]=False yield self.passed elif(f == "Institution_Type"): self.pass_it = { } for records in self.all_records: for r in rules: if r == "M": if(records.Institution_Type): if(records.Institution_Type): self.passed[records.Institution_Type]={"Mandatory":True} else: self.passed[records.Institution_Type]={"Mandatory":False} else: self.passed[str(records.Institution_Type)]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: if(records.Institution_Type): self.statuss = checkenforcements.check_enforcements(key, self._model, records.Institution_Type, priority=r.get(key)) self.passed[records.Institution_Type]["ENF"]=self.statuss.validate_field(records.Institution_Type) else: self.passed[str(records.Institution_Type)]["ENF"]=self.statuss.validate_field(str(records.Institution_Type)) else: if(records.Institution_Type): if(len(records.Institution_Type) == 3 or len(records.Institution_Type) == 2): self.passed[records.Institution_Type]["FORMAT"]=checkformat.sub_alphanumeric(records.Institution_Type) else: self.passed[records.Institution_Type]["FORMAT"]=False else: self.passed[str(records.Institution_Type)]["FORMAT"]=False #print self.passed yield self.passed elif(f == "Institution_Name"): self.pass_in = {} for records in self.all_records: for r in rules: if r == "M": if(records.Institution_Name): self.passed[records.Institution_Name]={"Mandatory":True} else: self.passed[records.Institution_Name]={"Mandatory":True} elif(isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements(key, self._model, records.Institution_Name, priority=r.get(key)) self.passed[records.Institution_Name]["ENF"]=self.statuss.validate_field(records.Institution_Name) else: if(len(records.Institution_Name) <= 100 or len(records.Institution_Name) == 5): self.passed[records.Institution_Name]["FORMAT"]=checkformat.sub_alphanumeric(records.Institution_Name) else: self.passed[records.Institution_Name]["FORMAT"]=False yield self.passed elif(f == "License_Issuing_Date"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if(records.License_Issuing_Date): self.passed[records.License_Issuing_Date]={"Mandatory":True} else: self.passed[records.License_Issuing_Date]={"Mandatory":True} elif(isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values(r.get(key)[0]) self.second_priority = self.check_dict_values(r.get(key)[1]) if(self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.License_Issuing_Date, priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.License_Issuing_Date) if(self.validation_first == True): #Perform the second validation self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.License_Issuing_Date, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field(records.License_Issuing_Date) if(self.validation_second == True): self.passed[records.License_Issuing_Date]["ENF"]=True else: self.passed[records.License_Issuing_Date]["ENF"]=False else: self.passed[records.License_Issuing_Date]["ENF"]=False else: self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.License_Issuing_Date, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.License_Issuing_Date, priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.License_Issuing_Date) self.validation_second = self.sec_enf.validate_field(records.License_Issuing_Date, headers=self.headers) if(self.validation_first == True): if(self.validation_second == True): self.passed[records.License_Issuing_Date]["ENF"]=True else: self.passed[records.License_Issuing_Date]["ENF"]=False else: self.passed[records.License_Issuing_Date]["ENF"]=False else: if(len(records.License_Issuing_Date.replace("-", "", 10)) == 8): self.passed[records.License_Issuing_Date]["FORMAT"]=checkformat.is_numeric(records.License_Issuing_Date.replace("-", "",10)) else: self.passed[records.License_Issuing_Date]["FORMAT"]=False yield self.passed else: print "Uknown FIELD ", f except Exception as e: # Log pass else: print "FINAL ", self.dict_list
def Date_Opened(self, f, rules): self.passed = {} for records in self.all_records: if (f == "Date_Opened"): for r in rules: if r == "M": if (records.Date_Opened): self.passed[records.Date_Opened] = { "Mandatory": True } else: self.passed[records.Date_Opened] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values( r.get(key)[0]) self.second_priority = self.check_dict_values( r.get(key)[1]) if (self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Date_Opened, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Date_Opened) if (self.validation_first == True): #Perform the second validation self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Date_Opened, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field( records.Date_Opened) if (self.validation_second == True): self.passed[ records.Date_Opened]["ENF"] = True else: self.passed[ records.Date_Opened]["ENF"] = False else: self.passed[ records.Date_Opened]["ENF"] = False else: self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Date_Opened, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Date_Opened, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Date_Opened) self.validation_second = self.sec_enf.validate_field( records.Date_Opened, headers=self.headers) if (self.validation_first == True): if (self.validation_second == True): self.passed[ records.Date_Opened]["ENF"] = True else: self.passed[ records.Date_Opened]["ENF"] = False else: self.passed[ records.Date_Opened]["ENF"] = False else: if (len(records.Date_Opened.replace("-", "", 12)) == 8): self.passed[records.Date_Opened][ "FORMAT"] = checkformat.is_numeric( records.Date_Opened.replace("-", "", 12)) else: self.passed[records.Date_Opened]["FORMAT"] = False self.final_result[records.id] = self.passed if (not len(self.passed)): pass elif (len(self.passed) == self.all_count): for keys in self.passed.iterkeys(): if (self.passed_by_id.get(keys)): self.passed_by_id.get(keys).append( self.passed.get(keys).values().count(True)) else: self.passed_by_id.get(keys) else: pass
def Valuation_Date(self, f, rules): self.passed = {} for records in self.all_records: if(f == "Valuation_Date"): for r in rules: if r == "M": if(records.Valuation_Date): self.passed[records.id]={"Mandatory":True} else: self.passed[records.id]={"Mandatory":False} elif(isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values(r.get(key)[0]) self.second_priority = self.check_dict_values(r.get(key)[1]) self.third_priority = self.check_dict_values(r.get(key)[2]) if(self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Valuation_Date, priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.Valuation_Date) if(self.validation_first == True): #Perform the second validation self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Valuation_Date, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field(records.Valuation_Date) if(self.validation_second == True): self.passed[records.id]["ENF"]=True else: self.passed[records.id]["ENF"]=False self.third_ef = checkenforcements.check_enforcements(self.get_keys(r.get(key)[2]), self._model, records.Valuation_Date, priority=r.get(key)) self.validation_third = self.third_ef.validate_field(records.Valuation_Date) if(self.validation_third == True): self.passed[records.id]["ENF"]=True else: self.passed[records.id]["ENF"]=False else: self.passed[records.id]["ENF"]=False elif(self.second_priority == 1 or self.second_priority == 2): self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Valuation_Date, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field(records.Valuation_Date) if(self.validation_second == True): #Perform the second validation given the first enforcements self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Valuation_Date, priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.Valuation_Date) if(self.validation_first == True): self.passed[records.id]["ENF"]=True else: self.passed[records.id]["ENF"]=False self.third_ef = checkenforcements.check_enforcements(self.get_keys(r.get.key()[2]), self._model, records.Valuation_Date, priority=r.get(key)) self.validation_third = self.third_ef.validate_field(records.Valuation_Date) if(self.validation_third == True): self.passed[records.id]["ENF"]=True else: self.passed[records.id]["ENF"]=False else: self.passed[records.id]["ENF"]=False elif(self.third_priority == 1 or self.third_priority == 2): self.third_ef = checkenforcements.check_enforcements(self.get_keys(r.get.key()[2]), self._model, records.Valuation_Date, priority=r.get(key)) self.validation_third = self.third_ef.validate_field(records.Valuation_Date) if(self.validation_third == True): #Perform the second validation given the first enforcements self.vstatus = checkenforcements.check_enforcements(self.get_keys(r.get(key)[0]), self._model, records.Valuation_Date, priority=r.get(key)) self.validation_first = self.vstatus.validate_field(records.Valuation_Date) if(self.validation_first == True): self.passed[records.id]["ENF"]=True else: self.passed[records.id]["ENF"]=False self.sec_enf = checkenforcements.check_enforcements(self.get_keys(r.get(key)[1]), self._model, records.Valuation_Date, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field(records.Valuation_Date) if(self.validation_second == True): self.passed[records.id]["ENF"]=True else: self.passed[records.id]["ENF"]=False else: self.passed[records.id]["ENF"]=False else: self.passed[records.id]["ENF"]=False else: if(records.Valuation_Date): self.value_date = records.Valuation_Date.replace("-", "", 20) if(len(self.value_date) >= 6): self.passed[records.id]["FORMAT"]=checkformat.is_numeric(self.value_date) else: self.passed[records.id]["FORMAT"]=False else: self.passed[records.id]["FORMAT"]=False self.final_result[records.id]=self.passed if(not len(self.passed)): pass elif(len(self.passed) == self.all_count): for keys in self.passed.iterkeys(): self.passed_by_id.get(keys).append(self.passed.get(keys).values().count(True)) else: pass
def Cheque_Account_Bounce_Reason(self, f, rules): self.passed = {} for records in self.all_records: if (f == "Cheque_Account_Bounce_Reason"): for r in rules: if r == "M": if (records.Cheque_Account_Bounce_Reason): self.passed[records.id] = {"Mandatory": True} else: self.passed[records.id] = {"Mandatory": False} elif (isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values( r.get(key)[0]) self.second_priority = self.check_dict_values( r.get(key)[1]) if (self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Cheque_Account_Bounce_Reason, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Cheque_Account_Bounce_Reason) if (self.validation_first == True): self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Cheque_Account_Bounce_Reason, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field( records.Cheque_Account_Bounce_Reason) if (self.validation_second == True): self.passed[records.id]["ENF"] = True else: self.passed[records.id]["ENF"] = False else: self.passed[records.id]["ENF"] = False else: self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Cheque_Account_Bounce_Reason, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Cheque_Account_Bounce_Reason, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Cheque_Account_Bounce_Reason) self.validation_second = self.sec_enf.validate_field( records.Cheque_Account_Bounce_Reason, headers=self.headers) if (self.validation_first == True): if (self.validation_second == True): self.passed[records.id]["ENF"] = True else: self.passed[records.id]["ENF"] = False else: self.passed[records.id]["ENF"] = False else: if (records): if (records.Cheque_Account_Bounce_Reason): self.stripped_reason = str( records.Cheque_Account_Bounce_Reason) if (len(self.stripped_reason) <= 12): self.passed[records.id][ "FORMAT"] = checkformat.is_numeric( int(float(self.stripped_reason))) else: self.passed[records.id]["FORMAT"] = False else: self.passed[records.id]["FORMAT"] = False else: self.passed[records.id]["FORMAT"] = False self.final_result[records.id] = self.passed if (not len(self.passed)): pass elif (len(self.passed) == self.all_count): for keys in self.passed.iterkeys(): self.passed_by_id.get(keys).append( self.passed.get(keys).values().count(True)) else: pass
def check_data_in_field(self, f, rules): self.passed = {} try: if (f == "PI_Identification_Code"): self.pass_pi = {} self.by_id = {} for records in self.all_records: for r in rules: if r == "M": if (records.PI_Identification_Code. pi_identification_code): self.passed[records.PI_Identification_Code. pi_identification_code] = { "Mandatory": True } else: self.passed[records.PI_Identification_Code. pi_identification_code] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.PI_Identification_Code. pi_identification_code, priority=r.get(key)) self.passed[ records.PI_Identification_Code. pi_identification_code][ "ENF"] = self.statuss.validate_field( records.PI_Identification_Code. pi_identification_code) else: if (records.PI_Identification_Code): self.parseddata = records.PI_Identification_Code.pi_identification_code.replace( "-", "", 10) if (len(self.parseddata) == 6 or len(self.parseddata) <= 8): self.passed[ records.PI_Identification_Code. pi_identification_code][ "FORMAT"] = checkformat.sub_alphanumeric( records.PI_Identification_Code. pi_identification_code.strip()) else: self.passed[records.PI_Identification_Code. pi_identification_code][ "FORMAT"] = False else: self.passed[str(records.PI_Identification_Code )]["FORMAT"] = False yield self.passed elif (f == "Branch_Identification_Code"): self.pass_it = {} for records in self.all_records: for r in rules: if r == "M": if (records.Branch_Identification_Code.branch_code ): self.passed[records.Branch_Identification_Code. branch_code] = { "Mandatory": True } else: self.passed[records.Branch_Identification_Code. branch_code] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Branch_Identification_Code. branch_code, priority=r.get(key)) self.passed[ records.Branch_Identification_Code. branch_code][ "ENF"] = self.statuss.validate_field( records.Branch_Identification_Code. branch_code) else: if (len(records.Branch_Identification_Code. branch_code) >= 3): self.passed[ records.Branch_Identification_Code. branch_code][ "FORMAT"] = True #checkformat.is_numeric(records.Branch_Identification_Code) else: self.passed[records.Branch_Identification_Code. branch_code]["FORMAT"] = False yield self.passed elif (f == "Borrowers_Client_Number"): self.pass_in = {} for records in self.all_records: for r in rules: if r == "C": if (records.Borrowers_Client_Number.Client_Number): self.passed[records.Borrowers_Client_Number. Client_Number] = { "Conditional": True } else: self.passed[records.Borrowers_Client_Number. Client_Number] = { "Conditional": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Borrowers_Client_Number. Client_Number, priority=r.get(key)) self.passed[ records.Borrowers_Client_Number. Client_Number][ "ENF"] = self.statuss.validate_field( records.Borrowers_Client_Number. Client_Number) else: if (len(records.Borrowers_Client_Number. Client_Number) <= 30): self.passed[ records.Borrowers_Client_Number. Client_Number][ "FORMAT"] = True #checkformat.sub_alphanumeric(records.Client_Number.Client_Number) else: self.passed[records.Borrowers_Client_Number. Client_Number]["FORMAT"] = False yield self.passed elif (f == "Consumer_Classification"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "C": if (records.Consumer_Classification): self.passed[ records.Consumer_Classification] = { "Conditional": True } else: self.passed[ records.Consumer_Classification] = { "Conditional": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Consumer_Classification, priority=r.get(key)) self.passed[records.Consumer_Classification][ "ENF"] = self.statuss.validate_field( records.Consumer_Classification) else: if (len(records.Consumer_Classification) == 1): self.passed[records.Consumer_Classification][ "FORMAT"] = checkformat.is_numeric( records.Consumer_Classification) else: self.passed[records.Consumer_Classification][ "FORMAT"] = False yield self.passed elif (f == "Category_Code"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "C": if (records.Category_Code): self.passed[records.Category_Code] = { "Conditional": True } else: self.passed[str(records.Category_Code)] = { "Conditional": False } elif (isinstance(r, dict)): for key in r: if (records.Category_Code): self.statuss = checkenforcements.check_enforcements( key, self._model, records.Category_Code, priority=r.get(key)) self.passed[records.Category_Code][ "ENF"] = self.statuss.validate_field( records.Category_Code) else: self.passed[str( records.Category_Code )]["ENF"] = False #self.statuss.validate_field(records.Category_Code) else: if (records.Category_Code): if (len(records.Category_Code) == 2 or len(records.Category_Code) == 1): self.passed[records.Category_Code][ "FORMAT"] = checkformat.is_numeric( records.Category_Code) else: self.passed[records.Category_Code][ "FORMAT"] = False else: self.passed[str( records.Category_Code)]["FORMAT"] = False yield self.passed elif (f == "Sub_Category_Code"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "C": if (records.Sub_Category_Code): self.passed[records.Sub_Category_Code] = { "Conditional": True } else: self.passed[str(records.Sub_Category_Code)] = { "Conditional": False } elif (isinstance(r, dict)): for key in r: if (records.Sub_Category_Code): self.statuss = checkenforcements.check_enforcements( key, self._model, records.Sub_Category_Code, priority=r.get(key)) self.passed[records.Sub_Category_Code][ "ENF"] = self.statuss.validate_field( records.Sub_Category_Code) else: self.passed[str( records.Sub_Category_Code )]["ENF"] = False #self.statuss.validate_field(records.Sub_Category_Code) else: if (records.Sub_Category_Code): if (len(records.Sub_Category_Code) >= 2 or len( records.Sub_Category_Code) == 1): self.passed[records.Sub_Category_Code][ "FORMAT"] = checkformat.is_numeric( records.Sub_Category_Code) else: self.passed[records.Sub_Category_Code][ "FORMAT"] = False else: self.passed[str(records.Sub_Category_Code )]["FORMAT"] = False yield self.passed elif (f == "Incident_Date"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "C": if (records.Incident_Date): self.passed[records.Incident_Date] = { "Conditional": True } else: self.passed[records.Incident_Date] = { "Conditional": False } elif (isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values( r.get(key)[0]) self.second_priority = self.check_dict_values( r.get(key)[1]) if (self.first_priority == 1 or self.first_priority == 2): #print r.get(key)[1] #print key self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Incident_Date, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Incident_Date, records.Borrowers_Client_Number. Credit_Application_Date) if (self.validation_first == True): #Perform the second validation self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Incident_Date, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field( records.Incident_Date) if (self.validation_second == True): self.passed[records.Incident_Date][ "ENF"] = True else: self.passed[records.Incident_Date][ "ENF"] = False else: self.passed[records.Incident_Date][ "ENF"] = False else: self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Incident_Date, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Incident_Date, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Incident_Date) self.validation_second = self.sec_enf.validate_field( records.Incident_Date) if (self.validation_first == True): if (self.validation_second == True): self.passed[records.Incident_Date][ "ENF"] = True else: self.passed[records.Incident_Date][ "ENF"] = False else: self.passed[records.Incident_Date][ "ENF"] = False else: if (len(records.Incident_Date) >= 8): self.replaced = records.Incident_Date.replace( "-", "", len(records.Incident_Date)) if (self.replaced): print "HERE IS THE REPLACE ", records.Incident_Date self.passed[records.Incident_Date][ "FORMAT"] = checkformat.is_numeric( self.replaced) else: self.passed[ records.Incident_Date]["FORMAT"] = True else: self.passed[ records.Incident_Date]["FORMAT"] = False yield self.passed elif (f == "Loss_Amount"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "C": if (records.Loss_Amount): self.passed[records.Loss_Amount] = { "Conditional": True } else: self.passed[records.Loss_Amount] = { "Conditional": False } elif (isinstance(r, dict)): for key in r: #self.statuss = checkenforcements.check_enforcements(key, self._model, records.Sub_Category_Code, priority=r.get(key)) self.passed[records.Loss_Amount][ "ENF"] = True #self.statuss.validate_field(records.Loss_Amount) else: if (len(records.Loss_Amount) <= 21): self.passed[records.Loss_Amount][ "FORMAT"] = checkformat.is_numeric( records.Loss_Amount) else: self.passed[ records.Loss_Amount]["FORMAT"] = False yield self.passed elif (f == "Currency_Type"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "C": if (records.Currency_Type): self.passed[records.Currency_Type] = { "Conditional": True } else: self.passed[records.Currency_Type] = { "Conditional": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Currency_Type, priority=r.get(key)) self.passed[records.Currency_Type][ "ENF"] = self.statuss.validate_field( records.Currency_Type) else: if (len(records.Currency_Type) == 3): self.passed[records.Currency_Type][ "FORMAT"] = checkformat.sub_alphanumeric( records.Currency_Type) else: self.passed[ records.Currency_Type]["FORMAT"] = False yield self.passed elif (f == "Incident_Details"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "C": if (records.Incident_Details): self.passed[records.Incident_Details] = { "Conditional": True } else: self.passed[records.Incident_Details] = { "Conditional": False } elif (isinstance(r, dict)): for key in r: #pass #self.statuss = checkenforcements.check_enforcements(key, self._model, records.Incident_Details, priority=r.get(key)) self.passed[records.Incident_Details][ "ENF"] = True #self.statuss.validate_field(records.Incident_Details, re_enfor=self.sec_enf) else: if (len(records.Incident_Details) <= 1000): self.passed[records.Incident_Details][ "FORMAT"] = checkformat.sub_alphanumeric( records.Incident_Details) else: self.passed[ records.Incident_Details]["FORMAT"] = False yield self.passed elif (f == "Forensic_Information_Available"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "C": if (records.Forensic_Information_Available): self.passed[ records.Forensic_Information_Available] = { "Conditional": True } else: self.passed[ records.Forensic_Information_Available] = { "Conditional": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Forensic_Information_Available, priority=r.get(key)) self.passed[ records.Forensic_Information_Available][ "ENF"] = self.statuss.validate_field( records. Forensic_Information_Available) else: if (len(records.Forensic_Information_Available) == 1): self.passed[ records.Forensic_Information_Available][ "FORMAT"] = checkformat.sub_alphanumeric( records. Forensic_Information_Available) else: self.passed[ records.Forensic_Information_Available][ "FORMAT"] = False yield self.passed else: print "Something nusty has happend" except Exception as e: # Log #raise pass
def check_data_in_field(self, f, rules): self.passed = {} try: if (f == "PI_Identification_Code"): self.pass_pi = {} self.by_id = {} for records in self.all_records: for r in rules: if r == "M": if (records.PI_Identification_Code. pi_identification_code): self.passed[records.PI_Identification_Code. pi_identification_code] = { "Mandatory": True } else: self.passed[records.PI_Identification_Code. pi_identification_code] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.PI_Identification_Code. pi_identification_code, priority=r.get(key)) self.passed[ records.PI_Identification_Code. pi_identification_code][ "ENF"] = self.statuss.validate_field( records.PI_Identification_Code. pi_identification_code) else: if (records.PI_Identification_Code): self.parseddata = records.PI_Identification_Code.pi_identification_code.replace( "-", "", 10) if (len(self.parseddata) == 6 or len(self.parseddata) <= 8): self.passed[ records.PI_Identification_Code. pi_identification_code][ "FORMAT"] = checkformat.sub_alphanumeric( records.PI_Identification_Code. pi_identification_code.strip()) else: self.passed[records.PI_Identification_Code. pi_identification_code][ "FORMAT"] = False else: self.passed[str(records.PI_Identification_Code )]["FORMAT"] = False yield self.passed elif (f == "Stakeholder_Type"): self.pass_it = {} for records in self.all_records: for r in rules: if r == "M": if (records.Stakeholder_Type): self.passed[records.Stakeholder_Type] = { "Mandatory": True } else: self.passed[records.Stakeholder_Type] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Stakeholder_Type, priority=r.get(key)) self.passed[records.Stakeholder_Type][ "ENF"] = self.statuss.validate_field( records.Stakeholder_Type) else: if (len(records.Stakeholder_Type) == 1): self.passed[records.Stakeholder_Type][ "FORMAT"] = checkformat.is_numeric( records.Stakeholder_Type) else: self.passed[ records.Stakeholder_Type]["FORMAT"] = False yield self.passed elif (f == "Stakeholder_Category"): self.pass_in = {} for records in self.all_records: for r in rules: if r == "M": if (records.Stakeholder_Category): self.passed[records.Stakeholder_Category] = { "Mandatory": True } else: self.passed[records.Stakeholder_Category] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Stakeholder_Category, priority=r.get(key)) self.passed[records.Stakeholder_Category][ "ENF"] = self.statuss.validate_field( records.Stakeholder_Category) else: if (len(records.Stakeholder_Category) == 1 or len(records.Stakeholder_Category) == 2): self.passed[records.Stakeholder_Category][ "FORMAT"] = checkformat.is_numeric( records.Stakeholder_Category) else: self.passed[records.Stakeholder_Category][ "FORMAT"] = False yield self.passed elif (f == "Shareholder_Percentage"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if (records.Shareholder_Percentage): self.passed[records.Shareholder_Percentage] = { "Mandatory": True } else: self.passed[records.Shareholder_Percentage] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Shareholder_Percentage, priority=r.get(key)) self.is_valid = self.statuss.validate_field( records.Shareholder_Percentage) if (self.is_valid == True): if (records.Shareholder_Percentage): self.passed[ records.Shareholder_Percentage][ "ENF"] = True else: self.passed[ records.Shareholder_Percentage][ "ENF"] = False else: self.passed[ records. Shareholder_Percentage]["ENF"] = True else: if (len(str(records.Shareholder_Percentage))): self.passed[records.Shareholder_Percentage][ "FORMAT"] = checkformat.is_float( records.Shareholder_Percentage) else: self.passed[records.Shareholder_Percentage][ "FORMAT"] = False yield self.passed except Exception as e: # Log pass
def check_data_in_field(self, f, rules): self.passed = {} try: if (f == "PI_Identification_Code"): self.pass_pi = {} self.by_id = {} for records in self.all_records: for r in rules: if r == "M": if (records.PI_Identification_Code. pi_identification_code): self.passed[records.PI_Identification_Code. pi_identification_code] = { "Mandatory": True } else: self.passed[records.PI_Identification_Code. pi_identification_code] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values( r.get(key)[0]) self.second_priority = self.check_dict_values( r.get(key)[1]) if (self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.PI_Identification_Code. pi_identification_code, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.PI_Identification_Code. pi_identification_code) if (self.validation_first == True): #Perform the second validation self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.PI_Identification_Code. pi_identification_code, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field( records.PI_Identification_Code. pi_identification_code, headers=self.headers) if (self.validation_second == True): self.passed[ records.PI_Identification_Code. pi_identification_code][ "ENF"] = True else: self.passed[ records.PI_Identification_Code. pi_identification_code][ "ENF"] = False else: self.passed[ records.PI_Identification_Code. pi_identification_code][ "ENF"] = False else: self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.PI_Identification_Code. pi_identification_code, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.PI_Identification_Code. pi_identification_code, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.PI_Identification_Code. pi_identification_code) self.validation_second = self.sec_enf.validate_field( records.PI_Identification_Code. pi_identification_code, headers=self.headers) if (self.validation_first == True): if (self.validation_second == True): self.passed[ records.PI_Identification_Code. pi_identification_code][ "ENF"] = True else: self.passed[ records.PI_Identification_Code. pi_identification_code][ "ENF"] = False else: self.passed[ records.PI_Identification_Code. pi_identification_code][ "ENF"] = False else: if (records.PI_Identification_Code): self.parseddata = records.PI_Identification_Code.pi_identification_code.replace( "-", "", 10) if (len(self.parseddata) <= 8): self.passed[ records.PI_Identification_Code. pi_identification_code][ "FORMAT"] = True #checkformat.sub_alphanumeric(records.PI_Identification_Code.pi_identification_code.strip()) else: self.passed[records.PI_Identification_Code. pi_identification_code][ "FORMAT"] = False else: self.passed[str( records.PI_Identification_Code. pi_identification_code)]["FORMAT"] = False yield self.passed elif (f == "Branch_Identification_Code"): self.pass_it = {} for records in self.all_records: for r in rules: if r == "M": if (records.Branch_Identification_Code.branch_code ): self.passed[records.Branch_Identification_Code. branch_code] = { "Mandatory": True } else: self.passed[records.Branch_Identification_Code. branch_code] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values( r.get(key)[0]) self.second_priority = self.check_dict_values( r.get(key)[1]) if (self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Branch_Identification_Code. branch_code, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Branch_Identification_Code. branch_code) if (self.validation_first == True): #Perform the second validation self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Branch_Identification_Code. branch_code, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field( records.Branch_Identification_Code. branch_code, headers=records. Branch_Identification_Code. branch_code) if (self.validation_second == True): self.passed[ records. Branch_Identification_Code. branch_code]["ENF"] = True else: self.passed[ records. Branch_Identification_Code. branch_code]["ENF"] = False else: self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Branch_Identification_Code. branch_code, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Branch_Identification_Code. branch_code, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Branch_Identification_Code. branch_code) self.validation_second = self.sec_enf.validate_field( records.Branch_Identification_Code. branch_code, headers=records. Branch_Identification_Code.branch_code) if (self.validation_first == True): if (self.validation_second == True): self.passed[ records. Branch_Identification_Code. branch_code]["ENF"] = True else: self.passed[ records. Branch_Identification_Code. branch_code]["ENF"] = False else: self.passed[ records.Branch_Identification_Code. branch_code]["ENF"] = False else: if (len(records.Branch_Identification_Code. branch_code) <= 15): if (str(records.Branch_Identification_Code. branch_code).strip().lstrip().rstrip() ): self.passed[ records.Branch_Identification_Code. branch_code][ "FORMAT"] = checkformat.is_numeric( records. Branch_Identification_Code. branch_code) else: self.passed[ records.Branch_Identification_Code. branch_code]["FORMAT"] = False else: self.passed[records.Branch_Identification_Code. branch_code]["FORMAT"] = False yield self.passed elif (f == "Borrowers_Client_Number"): self.pass_in = {} for records in self.all_records: for r in rules: if r == "M": if (records.Borrowers_Client_Number.Client_Number): self.passed[records.Borrowers_Client_Number. Client_Number] = { "Mandatory": True } else: self.passed[records.Borrowers_Client_Number. Client_Number] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values( r.get(key)[0]) self.second_priority = self.check_dict_values( r.get(key)[1]) if (self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Borrowers_Client_Number. Client_Number, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Borrowers_Client_Number. Client_Number) if (self.validation_first == True): #Perform the second validation self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Borrowers_Client_Number. Client_Number, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field( records.Borrowers_Client_Number. Client_Number, headers=self.headers) if (self.validation_second == True): self.passed[ records.Borrowers_Client_Number .Client_Number]["ENF"] = True else: self.passed[ records.Borrowers_Client_Number .Client_Number]["ENF"] = False else: self.passed[ records.Borrowers_Client_Number. Client_Number]["ENF"] = False else: self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Borrowers_Client_Number. Client_Number, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Borrowers_Client_Number. Client_Number, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Borrowers_Client_Number. Client_Number) self.validation_second = self.sec_enf.validate_field( records.Borrowers_Client_Number. Client_Number, headers=self.headers) if (self.validation_first == True): if (self.validation_second == True): self.passed[ records.Borrowers_Client_Number .Client_Number]["ENF"] = True else: self.passed[ records.Borrowers_Client_Number .Client_Number]["ENF"] = False else: self.passed[ records.Borrowers_Client_Number. Client_Number]["ENF"] = False else: if (records): if (len(records.Borrowers_Client_Number. Client_Number) <= 30): self.passed[ records.Borrowers_Client_Number. Client_Number][ "FORMAT"] = True #checkformat.sub_alphanumeric(records.Client_Number) else: self.passed[ records.Borrowers_Client_Number. Client_Number]["FORMAT"] = False else: self.passed[records.Borrowers_Client_Number. Client_Number]["FORMAT"] = False yield self.passed elif (f == "Stakeholder_Type"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if (records.Stakeholder_Type): self.passed[records.Stakeholder_Type] = { "Mandatory": True } else: self.passed[records.Stakeholder_Type] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Stakeholder_Type, priority=r.get(key)) self.passed[records.Stakeholder_Type][ "ENF"] = self.statuss.validate_field( records.Stakeholder_Type) else: if (records): if (len(records.Stakeholder_Type) == 1): self.passed[records.Stakeholder_Type][ "FORMAT"] = checkformat.is_numeric( records.Stakeholder_Type) else: self.passed[records.Stakeholder_Type][ "FORMAT"] = False else: self.passed[ records.Stakeholder_Type]["FORMAT"] = False yield self.passed elif (f == "Stakeholder_Category"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if (records.Stakeholder_Category): self.passed[records.Stakeholder_Category] = { "Mandatory": True } else: self.passed[records.Stakeholder_Category] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Stakeholder_Category, priority=r.get(key)) self.passed[records.Stakeholder_Category][ "ENF"] = self.statuss.validate_field( records.Stakeholder_Category) else: if (records): if (len(records.Stakeholder_Category) == 1): self.passed[records.Stakeholder_Category][ "FORMAT"] = checkformat.is_numeric( records.Stakeholder_Category) else: self.passed[records.Stakeholder_Category][ "FORMAT"] = False else: self.passed[records.Stakeholder_Category][ "FORMAT"] = False yield self.passed elif (f == "Shareholder_Percentage"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if (records.Shareholder_Percentage): self.passed[records.Shareholder_Percentage] = { "Mandatory": True } else: self.passed[records.Shareholder_Percentage] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Shareholder_Percentage, priority=r.get(key)) self.passed[records.Shareholder_Percentage][ "ENF"] = self.statuss.validate_field( records.Shareholder_Percentage) else: if (records): if (len(records.Shareholder_Percentage) >= 1): self.passed[ records.Shareholder_Percentage][ "FORMAT"] = checkformat.is_float( records.Shareholder_Percentage) else: self.passed[ records.Shareholder_Percentage][ "FORMAT"] = False else: self.passed[records.Shareholder_Percentage][ "FORMAT"] = False yield self.passed except Exception as e: # Log pass
def check_data_in_field(self, f, rules): self.passed = {} try: if (f == "PI_Identification_Code"): self.pass_pi = {} self.by_id = {} for records in self.all_records: for r in rules: if r == "M": if (records.PI_Identification_Code. pi_identification_code): self.passed[records.PI_Identification_Code. pi_identification_code] = { "Mandatory": True } else: self.passed[records.PI_Identification_Code. pi_identification_code] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.PI_Identification_Code. pi_identification_code, priority=r.get(key)) self.passed[ records.PI_Identification_Code. pi_identification_code][ "ENF"] = self.statuss.validate_field( records.PI_Identification_Code. pi_identification_code) else: if (records.PI_Identification_Code): self.parseddata = records.PI_Identification_Code.pi_identification_code.replace( "-", "", 10) if (len(self.parseddata) == 6 or len(self.parseddata) <= 8): self.passed[ records.PI_Identification_Code. pi_identification_code][ "FORMAT"] = checkformat.sub_alphanumeric( records.PI_Identification_Code. pi_identification_code.strip()) else: self.passed[records.PI_Identification_Code. pi_identification_code][ "FORMAT"] = False else: self.passed[str(records.PI_Identification_Code )]["FORMAT"] = False yield self.passed elif (f == "Branch_Identification_Code"): self.pass_it = {} for records in self.all_records: for r in rules: if r == "M": if (records.Branch_Identification_Code.branch_code ): self.passed[records.Branch_Identification_Code. branch_code] = { "Mandatory": True } else: self.passed[records.Branch_Identification_Code. branch_code] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Branch_Identification_Code. branch_code, priority=r.get(key)) self.passed[ records.Branch_Identification_Code. branch_code][ "ENF"] = self.statuss.validate_field( records.Branch_Identification_Code. branch_code) else: if (len(records.Branch_Identification_Code. branch_code) >= 3): self.passed[ records.Branch_Identification_Code. branch_code][ "FORMAT"] = checkformat.sub_alphanumeric( records.Branch_Identification_Code. branch_code) else: self.passed[records.Branch_Identification_Code. branch_code]["FORMAT"] = False yield self.passed elif (f == "Branch_Name"): self.pass_in = {} for records in self.all_records: for r in rules: if r == "M": if (records.Branch_Name): self.passed[records.Branch_Name] = { "Mandatory": True } else: self.passed[records.Branch_Name] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Branch_Name, priority=r.get(key)) self.passed[records.Branch_Name][ "ENF"] = self.statuss.validate_field( records.Branch_Name) else: if (len(records.Branch_Name) <= 100): self.passed[records.Branch_Name][ "FORMAT"] = checkformat.sub_alphanumeric( records.Branch_Name) else: self.passed[ records.Branch_Name]["FORMAT"] = False yield self.passed elif (f == "Branch_Type"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": #print "Date ", records.License_Issuing_Date if (records.Branch_Type): self.passed[records.Branch_Type] = { "Mandatory": True } else: self.passed[records.Branch_Type] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.statuss = checkenforcements.check_enforcements( key, self._model, records.Branch_Type, priority=r.get(key)) self.passed[records.Branch_Type][ "ENF"] = self.statuss.validate_field( records.Branch_Type) else: if (len(records.Branch_Type) == 1): self.passed[records.Branch_Type][ "FORMAT"] = checkformat.sub_alphanumeric( records.Branch_Type) else: self.passed[ records.Branch_Type]["FORMAT"] = False yield self.passed elif (f == "Date_Opened"): self.pass_lid = {} for records in self.all_records: for r in rules: if r == "M": if (records.Date_Opened): self.passed[records.Date_Opened] = { "Mandatory": True } else: self.passed[records.Date_Opened] = { "Mandatory": False } elif (isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values( r.get(key)[0]) self.second_priority = self.check_dict_values( r.get(key)[1]) if (self.first_priority == 1 or self.first_priority == 2): self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Date_Opened, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Date_Opened) if (self.validation_first == True): #Perform the second validation self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Date_Opened, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field( records.Date_Opened) if (self.validation_second == True): self.passed[records.Date_Opened][ "ENF"] = True else: self.passed[records.Date_Opened][ "ENF"] = False else: self.passed[ records.Date_Opened]["ENF"] = False else: self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Date_Opened, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Date_Opened, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Date_Opened) self.validation_second = self.sec_enf.validate_field( records.Date_Opened, headers=self.headers) if (self.validation_first == True): if (self.validation_second == True): self.passed[records.Date_Opened][ "ENF"] = True else: self.passed[records.Date_Opened][ "ENF"] = False else: self.passed[ records.Date_Opened]["ENF"] = False else: if (len(records.Date_Opened.replace("-", "", 12)) == 8): self.passed[records.Date_Opened][ "FORMAT"] = checkformat.is_numeric( records.Date_Opened.replace( "-", "", 12)) else: self.passed[ records.Date_Opened]["FORMAT"] = False yield self.passed else: print "Something nusty has happend" except Exception as e: # Log pass
def Incident_Date(self, f, rules): self.passed = {} for records in self.all_records: if (f == "Incident_Date"): for r in rules: if r == "C": if (records.Incident_Date): self.passed[records.id] = {"Conditional": True} else: self.passed[records.id] = {"Conditional": False} elif (isinstance(r, dict)): for key in r: self.first_priority = self.check_dict_values( r.get(key)[0]) self.second_priority = self.check_dict_values( r.get(key)[1]) if (self.first_priority == 1 or self.first_priority == 2): #print r.get(key)[1] #print key self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Incident_Date, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Incident_Date, records.Borrowers_Client_Number. Credit_Application_Date) if (self.validation_first == True): #Perform the second validation self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Incident_Date, priority=r.get(key)) self.validation_second = self.sec_enf.validate_field( records.Incident_Date) if (self.validation_second == True): self.passed[records.id]["ENF"] = True else: self.passed[records.id]["ENF"] = False else: self.passed[records.id]["ENF"] = False else: self.vstatus = checkenforcements.check_enforcements( self.get_keys(r.get(key)[0]), self._model, records.Incident_Date, priority=r.get(key)) self.sec_enf = checkenforcements.check_enforcements( self.get_keys(r.get(key)[1]), self._model, records.Incident_Date, priority=r.get(key)) self.validation_first = self.vstatus.validate_field( records.Incident_Date) self.validation_second = self.sec_enf.validate_field( records.Incident_Date) if (self.validation_first == True): if (self.validation_second == True): self.passed[records.id]["ENF"] = True else: self.passed[records.id]["ENF"] = False else: self.passed[records.id]["ENF"] = False else: if (len(records.Incident_Date) >= 8): self.passed[ records.id]["FORMAT"] = checkformat.is_numeric( records.Incident_Date) else: self.passed[records.id]["FORMAT"] = False self.final_result[records.id] = self.passed if (not len(self.passed)): pass elif (len(self.passed) == self.all_count): for keys in self.passed.iterkeys(): self.passed_by_id.get(keys).append( self.passed.get(keys).values().count(True)) else: pass