예제 #1
0
    def get_pcr_loanstatus(self, return_para):
        key_list = ['pcrReport', 'data', 'loanStats']
        mid_dict = dict_parse.dict_parse(self, key_list, len(key_list))

        key_name = [
            'overDueUpToNowBizLoanAmount', 'overDueUpToNowLoanCount',
            'overDueUpToNowOtherLoanAmount', 'overDue90DayBizLoanCount',
            'overDueUpToNowCarLoanAmount', 'overDue90DayOtherLoanCount',
            'overDueUpToNowHousingLoanCount', 'overDue90DayHousingLoanCount',
            'overDueUpToNowCarLoanCount', 'overDueUpToNowHomeLoanCount',
            'badDebtLoanCount', 'overDueUpToNowHomeLoanAmount',
            'overDueUpToNowOtherLoanCount', 'overDue90DayHomeLoanCount',
            'totalMonthsOverdue', 'overDueUpToNowHousingLoanAmount',
            'loanCount', 'overDue90DayLoanCount', 'overDue90DayCarLoanCount',
            'overDueUpToNowBizLoanCount'
        ]

        count_list = []
        for key in key_name:
            if mid_dict == 'None' or mid_dict is None or key not in mid_dict.keys(
            ):
                count_list.append('None')
            else:
                value = mid_dict[key]
                count_list.append(value)

        if return_para == 'name':
            return key_name
        elif return_para == 'value':
            return count_list
예제 #2
0
    def get_pcr_creditcardstatus(self, return_para):
        key_list = ['pcrReport', 'data', 'creditCardStats']
        mid_dict = dict_parse.dict_parse(self, key_list, len(key_list))

        key_name = [
            'cardCount', 'badDebtCardCount', 'overDue90DayCardCount',
            'overDueUpToNowCardCount', 'totalMonthsOverdue',
            'overDueUpToNowAmount', 'validCNYCreditCardCount',
            'validCNYCreditCardMaxCreditLine',
            'validCNYCreditCardTotalCreditLine',
            'validCNYCreditCardTotalCreditLineUsed',
            'validCNYCreditCardCreditUsageRate',
            'validCNYCreditCardMinOpenDate',
            'validCNYCreditCardMaxOpenMonthSpan'
        ]

        count_list = []
        for key in key_name:
            if mid_dict == 'None' or mid_dict is None or key not in mid_dict.keys(
            ):
                count_list.append('None')
            else:
                value = mid_dict[key]
                count_list.append(value)

        if return_para == 'name':
            return key_name
        elif return_para == 'value':
            return count_list
예제 #3
0
    def get_gender(self):
        key_list = ['loanApplyInfo', 'data', 'certNo']
        certno = dict_parse.dict_parse(self, key_list, 3)

        if len(certno) == 18:
            gender = certno[16:17]
            gender_num = int(gender) % 2
        else:
            gender_num = 'None'

        return gender_num
예제 #4
0
    def get_age(self):
        key_list = ['loanApplyInfo', 'data', 'certNo']
        certno = dict_parse.dict_parse(self, key_list, 3)

        if len(certno) == 18:
            born_date = certno[6:10]
            now_date = dt.datetime.now().strftime('%Y')
            age = int(now_date) - int(born_date)
        else:
            age = 'None'

        return age
예제 #5
0
    def get_contact(self):
        key_list = [
            'partyInfo', 'data', 'partyMobileContacts', 'mobileContacts'
        ]
        contact = dict_parse.dict_parse(self, key_list, len(key_list))

        if contact is None or contact == 'None':
            num = 0
        else:
            num = len(contact)

        return num
예제 #6
0
    def get_applist_bydevice(self, return_para):
        key_list = ['mobileAppList', 'data', 'byApplyDevice']
        mid_dict = dict_parse.dict_parse(self, key_list, len(key_list))

        key_name = ['deviceDataIds', 'appNames', 'deviceIds']
        if return_para == 'name':
            return key_name

        elif return_para == 'value':
            count_list = []
            for key in key_name:
                if mid_dict == 'None' or mid_dict is None:
                    count_list.append('None')
                else:
                    value = len(mid_dict[key])
                    count_list.append(value)

            return count_list
예제 #7
0
    def get_pcr_accesstatus(self, return_para):
        key_list = ['pcrReport', 'data', 'accessStats']
        mid_dict = dict_parse.dict_parse(self, key_list, len(key_list))

        key_name = [
            'selfInqInLast3m', 'auditInqInLast3m', 'selfInqInLast6m',
            'accessCount', 'counterQueryCount', 'selfInqViaCounterInLast6m'
        ]

        count_list = []
        for key in key_name:
            if mid_dict == 'None' or mid_dict is None or key not in mid_dict.keys(
            ):
                count_list.append('None')
            else:
                value = mid_dict[key]
                count_list.append(value)

        if return_para == 'name':
            return key_name
        elif return_para == 'value':
            return count_list
예제 #8
0
    def get_city(self, data):
        key_list = ['loanApplyInfo', 'data', 'certNo']
        certno = dict_parse.dict_parse(data, key_list, 3)

        if len(certno) == 18:
            no = certno[0:4]

            city_list = []
            for cityno in self['city_no']:
                if str(cityno)[0:4] == no:
                    var_city = self[self['city_no'] ==
                                    cityno]['city'].values[0]
                    city_list.append(var_city)

            if len(city_list) > 0:
                city = city_list[0]
            else:
                city = 'None'

        else:
            city = 'None'

        return city
예제 #9
0
    def get_txn6m(self, return_para):
        key_list = ['txnData6m', 'data']
        mid_dict = dict_parse.dict_parse(self, key_list, len(key_list))

        key_name = [
            'debitQueryCount', 'totalQueryCount', 'creditCount',
            'succPurchaseCount', 'totalTxnCount', 'succTxnCount',
            'failedPurchaseCount', 'noBalanceCreditPurchaseCount',
            'creditPurchaseAmts', 'creditPurchaseCount'
        ]

        if return_para == 'name':
            return key_name

        elif return_para == 'value':
            count_list = []
            for key in key_name:
                if mid_dict == 'None' or mid_dict is None:
                    count_list.append('None')
                else:
                    value = mid_dict[key]
                    count_list.append(value)

            return count_list
예제 #10
0
    def get_pcr_baseinfo(self, return_para):
        key_list = ['pcrReport', 'data', 'baseInfo']
        mid_dict = dict_parse.dict_parse(self, key_list, len(key_list))

        key_name = [
            'maritalStatus', 'creditCardNum', 'overduedCounts',
            'exceedNinetyDaysCounts', 'maxMonthsOverdue', 'haveBadDebts',
            'totalCreditLine', 'totalCreditLineUsed', 'loanFreq',
            'totalLoanAmount', 'totalLoanBalance', 'cceRate'
        ]

        count_list = []
        for key in key_name:
            if mid_dict == 'None' or mid_dict is None or key not in mid_dict.keys(
            ):
                count_list.append('None')
            else:
                value = mid_dict[key]
                count_list.append(value)

        if return_para == 'name':
            return key_name
        elif return_para == 'value':
            return count_list
예제 #11
0
    def get_succphonecall(self, return_para):
        key_list = ['mobileCallLog', 'data']
        mid_dict = dict_parse.dict_parse(self, key_list, len(key_list))

        first_layer = [
            'succPhoneCallStats', 'callStatsIn6m', 'r008CallStatsIn3m',
            'r009CallStatsIn3m', 'r010CallStatsIn3m'
        ]

        if return_para == 'name':
            key_name_list = []
            for item in first_layer:
                key_name = ['callCount', 'totalCallDuration']
                for key in key_name:
                    end_name = item + '_' + key
                    key_name_list.append(end_name)

            return key_name_list

        elif return_para == 'value':

            count_list = []
            for item in first_layer:
                if mid_dict == 'None' or mid_dict is None:
                    count_list = ['None', 'None']
                else:
                    key_name = ['callCount', 'totalCallDuration']
                    for key in key_name:
                        if item not in mid_dict.keys(
                        ) or mid_dict[item] is None:
                            count_list.append('None')
                        else:
                            value = mid_dict[item][key]
                            count_list.append(value)

            return count_list
예제 #12
0
    def get_zmwatchlist(self):
        key_list = ['zmxyWatchListReport', 'data', 'isMatched']
        watchlist = dict_parse.dict_parse(self, key_list, 3)

        return watchlist
예제 #13
0
    def get_zmatfscore(self):
        key_list = ['zmxyAntifraudScoreReport', 'data', 'score']
        zmatfscore = dict_parse.dict_parse(self, key_list, 3)

        return zmatfscore
예제 #14
0
    def get_zmscore(self):
        key_list = ['zmxyReport', 'data', 'zmScore']
        zm_score = dict_parse.dict_parse(self, key_list, 3)

        return zm_score
예제 #15
0
    def get_disputetxn(self):
        key_list = ['disputedTxn', 'data', 'disputedTxn6m', 'count']
        value = dict_parse.dict_parse(self, key_list, len(key_list))

        return value
예제 #16
0
def get_reportid(item):
    key_list = ['tdReport', 'data', 'report_id']
    reportid = dict_parse(item, key_list, 3)

    return reportid
예제 #17
0
def get_phone(item):
    key_list = ['loanApplyInfo', 'data', 'mobile']
    mobile = dict_parse(item, key_list, 3)

    return mobile
예제 #18
0
    def get_phone(self):
        key_list = ['loanApplyInfo', 'data', 'mobile']
        phone = dict_parse.dict_parse(self, key_list, 3)

        return phone
예제 #19
0
    def get_brackbehavior(self):
        key_list = ['partyInfo', 'data', 'partyBlackBehavior', 'count']
        value = dict_parse.dict_parse(self, key_list, len(key_list))

        return value
예제 #20
0
    def get_zmrisklist(self):
        key_list = ['zmxyAntifraudRiskListReport', 'data', 'hit']
        risklist = dict_parse.dict_parse(self, key_list, 3)

        return risklist
예제 #21
0
def get_relative(item):
    key_list = ['contactsInfo', 'relative', 'mobile']
    relative_mobile = dict_parse(item, key_list, 3)

    return relative_mobile
예제 #22
0
    def get_devicequery(self):
        key_list = ['mobileDevices', 'data', 'deviceIdQuery', 'count']
        value = dict_parse.dict_parse(self, key_list, len(key_list))

        return value
예제 #23
0
def get_colleague(item):
    key_list = ['contactsInfo', 'colleague', 'mobile']
    colleague_mobile = dict_parse(item, key_list, 3)

    return colleague_mobile
예제 #24
0
    def get_activeuserquery(self):
        key_list = ['mobileDevices', 'data', 'activateUserNameQuery', 'count']
        value = dict_parse.dict_parse(self, key_list, len(key_list))

        return value
예제 #25
0
    def get_tdscore(self):
        key_list = ['tdReport', 'data', 'final_score']
        td_score = dict_parse.dict_parse(self, key_list, 3)

        return td_score
예제 #26
0
    def get_marr(self):
        key_list = ['loanApplyInfo', 'data', 'marriaged']
        marr = dict_parse.dict_parse(self, key_list, 3)

        return marr
예제 #27
0
    def get_qhrskscore(self):
        key_list = ['qhRskdooReport', 'data', 'rskScore']
        value = dict_parse.dict_parse(self, key_list, len(key_list))

        return value
예제 #28
0
    def get_partyid(self):
        key_list = ['loanApplyInfo', 'data', 'partyId']
        partyid = dict_parse.dict_parse(self, key_list, 3)

        return partyid