예제 #1
0
def import_rules_unfixed_returned_cheques_count_of_last_3_months():
    # DishonouredChequesL3M = 0	20	T2901P20	کاربر چک برگشتی ندارد
    rule = RuleUnfixedReturnedChequesCountOfLast3Months()
    rule.drop_collection()
    rule.save(creat_rule(rule, 'T2901P20', 0, 0, 20, 'کاربر چک برگشتی ندارد'))

    # DishonouredChequesL3M = 1	-10	T2902N10	کاربر ۱ چک برگشتی دارد
    rule = RuleUnfixedReturnedChequesCountOfLast3Months()
    rule.save(creat_rule(rule, 'T2902N10', 1, 1, -10,
                         'کاربر ۱ چک برگشتی دارد'))

    # DishonouredChequesL3M = 2	-20	T2903N20	کاربر ۲ چک برگشتی دارد
    rule = RuleUnfixedReturnedChequesCountOfLast3Months()
    rule.save(creat_rule(rule, 'T2903N20', 2, 2, -20,
                         'کاربر 2 چک برگشتی دارد'))

    # DishonouredChequesL3M = 3	-30	T2904N30	کاربر ۳ چک برگشتی دارد
    rule = RuleUnfixedReturnedChequesCountOfLast3Months()
    rule.save(creat_rule(rule, 'T2904N30', 3, 3, -30,
                         'کاربر 3 چک برگشتی دارد'))

    # DishonouredChequesL3M > 3	-40	T2905N40	کاربر بیش از ۳ چک برگشتی دارد
    rule = RuleUnfixedReturnedChequesCountOfLast3Months()
    rule.save(
        creat_rule(rule, 'T2905N40', 4, 999, -40,
                   'کاربر بیش از ۳ چک برگشتی دارد'))
def import_rules_suspicious_loans_total_count():
    # DoubfulCollectionLoans = 0	30	T3501P30	کاربر تسهیلات مشکوک الوصول ندارد
    rule = RuleSuspiciousLoansTotalCount()
    rule.drop_collection()
    rule.save(
        creat_rule(rule, 'T3501P30', 0, 0, 30,
                   'کاربر تسهیلات مشکوک الوصول ندارد'))

    # DoubfulCollectionLoans = 1	-20	T3502N20	کاربر 1 تسهیلات مشکوک الوصول دارد
    rule = RuleSuspiciousLoansTotalCount()
    rule.save(
        creat_rule(rule, 'T3502N20', 1, 1, -20,
                   'کاربر 1 تسهیلات مشکوک الوصول دارد'))

    # DoubfulCollectionLoans = 2	-30	T3503N30	کاربر ۲ تسهیلات مشکوک الوصول دارد
    rule = RuleSuspiciousLoansTotalCount()
    rule.save(
        creat_rule(rule, 'T3503N30', 2, 2, -30,
                   'کاربر ۲ تسهیلات مشکوک الوصول دارد'))

    # DoubfulCollectionLoans = 3	-40	T3504N40	کاربر ۳ تسهیلات مشکوک الوصول دارد
    rule = RuleSuspiciousLoansTotalCount()
    rule.save(
        creat_rule(rule, 'T3504N40', 3, 3, -40,
                   'کاربر ۳ تسهیلات مشکوک الوصول دارد'))

    # DoubfulCollectionLoans >= 4	-50	T3505N50	کاربر بیش از ۳ تسهیلات مشکوک الوصول دارد
    rule = RuleSuspiciousLoansTotalCount()
    rule.save(
        creat_rule(rule, 'T3505N50', 4, 999, -50,
                   'کاربر بیش از ۳ تسهیلات مشکوک الوصول دارد'))
예제 #3
0
def import_rules_unfixed_returned_cheques_count_of_last_5_years():
    # DishonouredChequesA12M = 0	20	T3101P20	کاربر چک برگشتی ندارد
    rule = RuleUnfixedReturnedChequesCountOfLast5Years()
    rule.drop_collection()
    rule.save(creat_rule(rule, 'T3101P20', 0, 0, 20, 'کاربر چک برگشتی ندارد'))

    # DishonouredChequesA12M = 1	-40	T3102N40	کاربر ۱ چک برگشتی دارد
    rule = RuleUnfixedReturnedChequesCountOfLast5Years()
    rule.save(creat_rule(rule, 'T3102N40', 1, 1, -40,
                         'کاربر ۱ چک برگشتی دارد'))

    # DishonouredChequesA12M = 2	-50	T3103N50	کاربر ۲ چک برگشتی دارد
    rule = RuleUnfixedReturnedChequesCountOfLast5Years()
    rule.save(creat_rule(rule, 'T3103N50', 2, 2, -50,
                         'کاربر ۲ چک برگشتی دارد'))

    # DishonouredChequesA12M = 3	-60	T3104N60	کاربر ۳ چک برگشتی دارد
    rule = RuleUnfixedReturnedChequesCountOfLast5Years()
    rule.save(creat_rule(rule, 'T3104N60', 3, 3, -60,
                         'کاربر ۳ چک برگشتی دارد'))

    # DishonouredChequesA12M >= 4	-70	T3105N70	کاربر بیش از ۳ چک برگشتی دارد
    rule = RuleUnfixedReturnedChequesCountOfLast5Years()
    rule.save(
        creat_rule(rule, 'T3105N70', 4, 999, -70,
                   'کاربر بیش از ۳ چک برگشتی دارد'))
예제 #4
0
def import_rules_unfixed_returned_cheques_count_between_last_3_to_12_months():
    # DishonouredChequesL3-12M = 0	20	T3001P20	کاربر چک برگشتی ندارد
    rule = RuleUnfixedReturnedChequesCountBetweenLast3To12Months()
    rule.drop_collection()
    rule.save(creat_rule(rule, 'T3001P20', 0, 0, 20, 'کاربر چک برگشتی ندارد'))

    # DishonouredChequesL3-12M = 1	-10	T3002N30	کاربر ۱ چک برگشتی دارد
    rule = RuleUnfixedReturnedChequesCountBetweenLast3To12Months()
    rule.save(creat_rule(rule, 'T3002N30', 1, 1, -30,
                         'کاربر ۱ چک برگشتی دارد'))

    # DishonouredChequesL3-12M = 2	-20	T3003N40	کاربر ۲ چک برگشتی دارد
    rule = RuleUnfixedReturnedChequesCountBetweenLast3To12Months()
    rule.save(creat_rule(rule, 'T3003N40', 2, 2, -40,
                         'کاربر 2 چک برگشتی دارد'))

    # DishonouredChequesL3-12M = 3	-30	T3004N50	کاربر ۳ چک برگشتی دارد
    rule = RuleUnfixedReturnedChequesCountBetweenLast3To12Months()
    rule.save(creat_rule(rule, 'T3004N50', 3, 3, -50,
                         'کاربر 3 چک برگشتی دارد'))

    # DishonouredChequesL3-12M > 3	-40	T3005N60	کاربر بیش از ۳ چک برگشتی دارد
    rule = RuleUnfixedReturnedChequesCountBetweenLast3To12Months()
    rule.save(
        creat_rule(rule, 'T3005N60', 4, 999, -60,
                   'کاربر بیش از ۳ چک برگشتی دارد'))
def import_rules_arrear_loans_total_count():
    # DelayedLoans = 0	20	T3401P20	کاربر تسهیلات معوق ندارد
    rule = RuleArrearLoansTotalCounts()
    rule.drop_collection()
    rule.save(
        creat_rule(rule, 'T3401P20', 0, 0, 20, 'کاربر تسهیلات معوق ندارد'))

    # DelayedLoans = 1	-10	T3402N10	کاربر 1 تسهیلات معوق دارد
    rule = RuleArrearLoansTotalCounts()
    rule.save(
        creat_rule(rule, 'T3402N10', 1, 1, -10, 'کاربر 1 تسهیلات معوق دارد'))

    # DelayedLoans = 2	-20	T3403N20	کاربر ۲ تسهیلات معوق دارد
    rule = RuleArrearLoansTotalCounts()
    rule.save(
        creat_rule(rule, 'T3403N20', 2, 2, -20, 'کاربر ۲ تسهیلات معوق دارد'))

    # DelayedLoans = 3	-30	T3404N30	کاربر ۳ تسهیلات معوق دارد
    rule = RuleArrearLoansTotalCounts()
    rule.save(
        creat_rule(rule, 'T3404N30', 3, 3, -30, 'کاربر ۳ تسهیلات معوق دارد'))

    # DelayedLoans >= 4	-40	T3405N40	کاربر بیش از ۳ تسهیلات معوق دارد
    rule = RuleArrearLoansTotalCounts()
    rule.save(
        creat_rule(rule, 'T3405N40', 4, 999, -40,
                   'کاربر بیش از ۳ تسهیلات معوق دارد'))
def import_rules_past_due_loans_total_count():
    # PastDueLoans = 0	10	T3301P10	کاربر تسهیلات سررسید گذشته ندارد
    rule = RulePastDueLoansTotalCount()
    rule.drop_collection()
    rule.save(
        creat_rule(rule, 'T3301P10', 0, 0, 10,
                   'کاربر تسهیلات سررسید گذشته ندارد'))

    # PastDueLoans = 1	00	T3302P0	کاربر 1 تسهیلات سررسید گذشته دارد
    rule = RulePastDueLoansTotalCount()
    rule.save(
        creat_rule(rule, 'T3302P0', 1, 1, 0,
                   'کاربر 1 تسهیلات سررسید گذشته دارد'))

    # PastDueLoans = 2	-10	T3303N10	کاربر ۲ تسهیلات سررسید گذشته دارد
    rule = RulePastDueLoansTotalCount()
    rule.save(
        creat_rule(rule, 'T3303N10', 2, 2, -10,
                   'کاربر ۲ تسهیلات سررسید گذشته دارد'))

    # PastDueLoans = 3	-20	T3304N20	کاربر ۳ تسهیلات سررسید گذشته دارد
    rule = RulePastDueLoansTotalCount()
    rule.save(
        creat_rule(rule, 'T3304N20', 3, 3, -20,
                   'کاربر ۳ تسهیلات سررسید گذشته دارد'))

    # PastDueLoans >= 4	-30	T3305N30	کاربر بیش از ۳ تسهیلات سررسید گذشته دارد
    rule = RulePastDueLoansTotalCount()
    rule.save(
        creat_rule(rule, 'T3305N30', 4, 999, -30,
                   'کاربر بیش از ۳ تسهیلات سررسید گذشته دارد'))
def import_rules_overdue_loans_total_balance_ratio():
    # CurrentLoanAmountRatio = 0	00	V1801P0	کاربر تسهیلات جاری ندارد
    rule = RuleOverdueLoansTotalBalanceRatio()
    rule.drop_collection()
    rule.save(creat_rule(rule, 'V1801P0', 0, 0, 0, 'کاربر تسهیلات جاری ندارد'))

    # 0.001 <= CurrentLoanAmountRatio ≤ 0.5	05	V1802P5	نسبت بین 0.001 و 0.5 می‌باشد
    rule = RuleOverdueLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V1802P5', 0.001, 0.5, 5,
                   'نسبت بین 0.001 و 0.5 می‌باشد'))

    # 0.501 <= CurrentLoanAmountRatio ≤ 1	10	V1803P10	نسبت بین 0.501 و 1 می‌باشد
    rule = RuleOverdueLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V1803P10', 0.501, 1, 10,
                   'نسبت بین 0.501 و 1 می‌باشد'))

    # 1.001 <= CurrentLoanAmountRatio ≤ 1.5	-05	V1804N5	نسبت بین 1.001 و 1.5 می‌باشد
    rule = RuleOverdueLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V1804N5', 1.001, 1.5, -5,
                   'نسبت بین 1.001 و 1.5 می‌باشد'))

    # 1.501 <= CurrentLoanAmountRatio ≤ 2	-10	V1805N10	نسبت بین 1.501 و 2 می‌باشد
    rule = RuleOverdueLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V1805N10', 1.501, 2, -10,
                   'نسبت بین 1.501 و 2 می‌باشد'))

    # CurrentLoanAmountRatio >= 2.001	-20	V1806N20	نسبت بیش از 2 می‌باشد
    rule = RuleOverdueLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V1806N20', 2.001, 999, -20, 'نسبت بیش از 2 می‌باشد'))
def import_rules_loan_monthly_installments_total_balance_ratio():
    # MonthlyInstallments = 0	00	V1601P0	کاربر پرداخت اقساط ندارد
    rule = RuleMonthlyInstallmentsTotalBalanceRatio()
    rule.drop_collection()
    rule.save(creat_rule(rule, 'V1601P0', 0, 0, 0, 'کاربر پرداخت اقساط ندارد'))

    # 0.001 <= MonthlyInstallments ≤ 0.5	10	V1602P10	نسبت بین 0.001 و 0.5 می‌باشد
    rule = RuleMonthlyInstallmentsTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V1602P10', 0.001, 0.5, 10,
                   'نسبت بین 0.001 و 0.5 می‌باشد'))

    # 0.501 <= MonthlyInstallments ≤ 1	20	V1603P20	نسبت بین 0.501 و 1 می‌باشد
    rule = RuleMonthlyInstallmentsTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V1603P20', 0.501, 1, 20,
                   'نسبت بین 0.501 و 1 می‌باشد'))

    # 1.001 <= MonthlyInstallments ≤ 1.2	00	V1604P0	نسبت بین 1.001 و 1.2 می‌باشد
    rule = RuleMonthlyInstallmentsTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V1604P0', 1.001, 1.2, 0,
                   'نسبت بین 1.001 و 1.2 می‌باشد'))

    # 1.201 <= MonthlyInstallments ≤ 2	-10	V1605N10	نسبت بین 1.201 و 2 می‌باشد
    rule = RuleMonthlyInstallmentsTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V1605N10', 1.201, 2, -10,
                   'نسبت بین 1.201 و 2 می‌باشد'))

    # MonthlyInstallments >= 2.001	-20	V1606N20	نسبت بیش از 2 می‌باشد
    rule = RuleMonthlyInstallmentsTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V1606N20', 2.001, 999, -20, 'نسبت بیش از 2 می‌باشد'))
def import_rules_undone_undue_trades_total_balance_of_last_year_ratios():
    # If SDA(denominator) = 0	00	V1501P0	کاربر در یکسال گذشته تعامل موفقی ندارد (اولین تعامل در حال انجام است)
    rule = RuleUnDoneUndueTradesTotalBalanceOfLastYearRatio()
    rule.drop_collection()
    rule.save(
        creat_rule(
            rule, 'V1501P0', 0, 0, 0,
            'کاربر در یکسال گذشته تعامل موفقی ندارد (اولین تعامل در حال انجام است)'
        ))

    # 0 ≤ NotDueDealAmountRatio ≤ 1	00	V1502P0	نسبت بین 0 و ۱ می‌باشد
    rule = RuleUnDoneUndueTradesTotalBalanceOfLastYearRatio()
    rule.save(creat_rule(rule, 'V1502P0', 0, 1, 0, 'نسبت بین 0 و ۱ می‌باشد'))

    # 1.001 < NotDueDealAmountRatio ≤ 1.5	-05	V1503N5	نسبت بین 1 و 1.5 می‌باشد
    rule = RuleUnDoneUndueTradesTotalBalanceOfLastYearRatio()
    rule.save(
        creat_rule(rule, 'V1503N5', 0.001, 1.5, -5,
                   'نسبت بین 1 و 1.5 می‌باشد'))

    # 1.501 <= NotDueDealAmountRatio ≤ 2	-10	V1504N10	نسبت بین 1.5 و ۲ می‌باشد
    rule = RuleUnDoneUndueTradesTotalBalanceOfLastYearRatio()
    rule.save(
        creat_rule(rule, 'V1504N10', 1.501, 2, -10,
                   'نسبت بین 1.5 و ۲ می‌باشد'))

    # 2.001 <= NotDueDealAmountRatio ≤ 3	-20	V1505N20	نسبت بین ۲ و ۳ می‌باشد
    rule = RuleUnDoneUndueTradesTotalBalanceOfLastYearRatio()
    rule.save(
        creat_rule(rule, 'V1505N20', 2.001, 3, -20, 'نسبت بین ۲ و ۳ می‌باشد'))

    # NotDueDealAmountRatio > 3	-30	V1506N30	نسبت بیش از ۳ می‌باشد
    rule = RuleUnDoneUndueTradesTotalBalanceOfLastYearRatio()
    rule.save(
        creat_rule(rule, 'V1506N30', 3.001, 999, -30, 'نسبت بیش از ۳ می‌باشد'))
def import_rules_undone_past_due_trades_total_balance_of_last_year_ratios():
    # UnfinishedB30Din1YRatio = 0	20	V1301P20	کاربر تعامل سررسید گذشته خاتمه نیافته ندارد
    rule = RuleUnDonePastDueTradesTotalBalanceOfLastYearRatio()
    rule.drop_collection()
    rule.save(
        creat_rule(rule, 'V1301P20', 0, 0, 20,
                   ' تعامل سررسید گذشته خاتمه نیافته ندارد'))

    # 0.001 <= UnfinishedB30Din1YRatio ≤ 0.5	00	V1302P0	نسبت بین 0.001 و 0.5 می‌باشد
    rule = RuleUnDonePastDueTradesTotalBalanceOfLastYearRatio()
    rule.save(
        creat_rule(rule, 'V1302P0', 0.001, 0.5, 0,
                   'نسبت بین 0.001 و 0.5 می‌باشد'))

    # 0.5001 <= UnfinishedB30Din1YRatio ≤ 1	-10	V1303N10	نسبت بین 0.5001 و 1 می‌باشد
    rule = RuleUnDonePastDueTradesTotalBalanceOfLastYearRatio()
    rule.save(
        creat_rule(rule, 'V1303N10', 0.5001, 1, -10,
                   'نسبت بین 0.5001 و 1 می‌باشد'))

    # If SDA (denominator) = 0	-20	V1304N20	کاربر در یکسال گذشته تعامل موفقی ندارد (اولین تعامل در حال انجام سررسید گذشته شده)
    rule = RuleUnDonePastDueTradesTotalBalanceOfLastYearRatio()
    rule.save(
        creat_rule(
            rule, 'V1304N20', 0, 0, -20,
            'کاربر در یکسال گذشته تعامل موفقی ندارد (اولین تعامل در حال انجام سررسید گذشته شده)'
        ))

    # 1 < UnfinishedB30Din1YRatio ≤ 1.5	-20	V1305N20	نسبت بین 1.001 و 1.5 می‌باشد
    rule = RuleUnDonePastDueTradesTotalBalanceOfLastYearRatio()
    rule.save(
        creat_rule(rule, 'V1305N20', 1.001, 1.5, -20,
                   'نسبت بین 1.001 و 1.5 می‌باشد'))

    # 1.501 <= UnfinishedB30Din1YRatio ≤ 2	-30	V1306N30	نسبت بین 1.501 و 2 می‌باشد
    rule = RuleUnDonePastDueTradesTotalBalanceOfLastYearRatio()
    rule.save(
        creat_rule(rule, 'V1306N30', 1.501, 2, -30,
                   'نسبت بین 1.501 و 2 می‌باشد'))

    # UnfinishedB30Din1YRatio > 2	-40	V1307N40	نسبت بیش از 2 می‌باشد
    rule = RuleUnDonePastDueTradesTotalBalanceOfLastYearRatio()
    rule.save(
        creat_rule(rule, 'V1307N40', 3, 999, -40, 'نسبت بیش از 2 می‌باشد'))
def import_rules_loans_total_count():
    # Loans = 0	00	H1101P0	کاربر هیچگونه تسهیلات در جریان ندارد
    rule = RuleLoansTotalCount()
    rule.drop_collection()
    rule.save(
        creat_rule(rule, 'H1101P0', 0, 0, 0,
                   'کاربر هیچگونه تسهیلات در جریان ندارد'))

    # Loans = 1	20	H1102P20	کاربر ۱ تسهیلات در جریان دارد
    rule = RuleLoansTotalCount()
    rule.save(
        creat_rule(rule, 'H1102P20', 1, 1, 20,
                   'کاربر ۱ تسهیلات در جریان دارد'))

    # Loans = 2	10	H1103P10	کاربر ۲ تسهیلات در جریان دارد
    rule = RuleLoansTotalCount()
    rule.save(
        creat_rule(rule, 'H1103P10', 2, 2, 10,
                   'کاربر ۲ تسهیلات در جریان دارد'))

    # Loans = 3	00	H1104P0	کاربر ۳ تسهیلات در جریان دارد
    rule = RuleLoansTotalCount()
    rule.save(
        creat_rule(rule, 'H1104P0', 3, 3, 0, 'کاربر ۳ تسهیلات در جریان دارد'))

    # Loans = 4	-20	H1105N20	کاربر ۴ تسهیلات در جریان دارد
    rule = RuleLoansTotalCount()
    rule.save(
        creat_rule(rule, 'H1105N20', 4, 4, -20,
                   'کاربر ۴ تسهیلات در جریان دارد'))

    # Loans = 5	-30	H1106N30	کاربر ۵ تسهیلات در جریان دارد
    rule = RuleLoansTotalCount()
    rule.save(
        creat_rule(rule, 'H1106N30', 5, 5, -30,
                   'کاربر ۵ تسهیلات در جریان دارد'))

    # Loans >= 6	-50	H1107N50	کاربر بیش از ۵ تسهیلات در جریان دارد
    rule = RuleLoansTotalCount()
    rule.save(
        creat_rule(rule, 'H1107N50', 6, 999, -50,
                   'کاربر بیش از ۵ تسهیلات در جریان دارد'))
def rules_undone_arrear_trades_counts():
    # UnfinishedA30DayDelay = 0	20	T2701P20	کاربر در سه ماه گذشته هیچ تعامل سررسید گذشته‌ای نداشته است
    rule = RuleUnDoneArrearTradesCount()
    rule.drop_collection()
    rule.save(
        creat_rule(
            rule, 'T2701P20', 0, 0, 20,
            'کاربر در سه ماه گذشته هیچ تعامل سررسید گذشته‌ای نداشته است'))

    # UnfinishedA30DayDelay = 1	-20	T2702N20	کاربر در سه ماه گذشته یک سررسید گذشته‌ داشته است
    rule = RuleUnDoneArrearTradesCount()
    rule.save(
        creat_rule(rule, 'T2702N20', 1, 1, -20,
                   'کاربر در سه ماه گذشته یک سررسید گذشته‌ داشته است'))

    # 2 <= UnfinishedA30DayDelay ≤ 3	-30	T2703N30	کاربر در سه ماه گذشته بین 2 تا 3 تعامل سررسید گذشته‌ داشته است
    rule = RuleUnDoneArrearTradesCount()
    rule.save(
        creat_rule(
            rule, 'T2703N30', 2, 3, -30,
            'کاربر در سه ماه گذشته بین 2 تا 3 تعامل سررسید گذشته‌ داشته است'))

    # 4 <= UnfinishedA30DayDelay ≤ 6	-40	T2704N40	کاربر در سه ماه گذشته بین 4 تا 6 تعامل سررسید گذشته‌ داشته است
    rule = RuleUnDoneArrearTradesCount()
    rule.save(
        creat_rule(
            rule, 'T2704N40', 4, 6, -40,
            'کاربر در سه ماه گذشته بین 4 تا 6 تعامل سررسید گذشته‌ داشته است'))

    # 7 <= UnfinishedA30DayDelay ≤ 10	-50	T2705N50	کاربر در سه ماه گذشته بین 7 تا 10 تعامل سررسید گذشته‌ داشته است
    rule = RuleUnDoneArrearTradesCount()
    rule.save(
        creat_rule(
            rule, 'T2705N50', 7, 10, -50,
            'کاربر در سه ماه گذشته بین 7 تا 10 تعامل سررسید گذشته‌ داشته است'))

    # UnfinishedA30DayDelay >= 11	-60	T2706N60	کاربر در سه ماه گذشته بیش از 10 تعامل سررسید گذشته‌ داشته است
    rule = RuleUnDoneArrearTradesCount()
    rule.save(
        creat_rule(
            rule, 'T2706N60', 11, 999, -60,
            'کاربر در سه ماه گذشته بیش از 10 تعامل سررسید گذشته‌ داشته است'))
def rules_undone_past_due_trades_counts():
    # UnfinishedB30DayDelay = 0	10	T2601P10	کاربر در سه ماه گذشته هیچ تعامل سررسید گذشته‌ای نداشته است
    rule = RuleUnDonePastDueTradesCount()
    rule.drop_collection()
    rule.save(
        creat_rule(
            rule, 'T2601P10', 0, 0, 10,
            'کاربر در سه ماه گذشته هیچ تعامل سررسید گذشته‌ای نداشته است'))

    # UnfinishedB30DayDelay = 1	-20	T2602N20	کاربر در سه ماه گذشته یک تعامل سررسید گذشته‌ داشته است
    rule = RuleUnDonePastDueTradesCount()
    rule.save(
        creat_rule(rule, 'T2602N20', 1, 1, -20,
                   'کاربر در سه ماه گذشته یک تعامل سررسید گذشته‌ داشته است'))

    # 2 <= UnfinishedB30DayDelay ≤ 3	-30	T2603N30	کاربر در سه ماه گذشته بین ۲ تا 3 تعامل سررسید گذشته‌ داشته است
    rule = RuleUnDonePastDueTradesCount()
    rule.save(
        creat_rule(
            rule, 'T2603N30', 2, 3, -30,
            'کاربر در سه ماه گذشته بین ۲ تا 3 تعامل سررسید گذشته‌ داشته است'))

    # 4 <= UnfinishedB30DayDelay ≤ 6	-40	T2604N40	کاربر در سه ماه گذشته بین ۴ تا 6 تعامل سررسید گذشته‌ داشته است
    rule = RuleUnDonePastDueTradesCount()
    rule.save(
        creat_rule(
            rule, 'T2604N40', 4, 6, -40,
            'کاربر در سه ماه گذشته بین ۴ تا 6 تعامل سررسید گذشته‌ داشته است'))

    # 7 <= UnfinishedB30DayDelay ≤ 10	-50	T2605N50	کاربر در سه ماه گذشته بین ۷ تا 10 تعامل سررسید گذشته‌ داشته است
    rule = RuleUnDonePastDueTradesCount()
    rule.save(
        creat_rule(
            rule, 'T2605N50', 7, 10, -50,
            'کاربر در سه ماه گذشته بین ۷ تا 10 تعامل سررسید گذشته‌ داشته است'))

    # UnfinishedB30DayDelay >= 11	-60	T2606N60	کاربر در سه ماه گذشته بیش از 10 تعامل سررسید گذشته‌ داشته است
    rule = RuleUnDonePastDueTradesCount()
    rule.save(
        creat_rule(
            rule, 'T2606N60', 11, 999, -60,
            'کاربر در سه ماه گذشته بیش از 10 تعامل سررسید گذشته‌ داشته است'))
def import_rules_suspicious_loans_total_balance_ratio():
    # DoubtfulCollectionAmountRatio = 0	20	V2101P20	کاربر تسهیلات مشکوک‌الوصول ندارد
    rule = RuleSuspiciousLoansTotalBalanceRatio()
    rule.drop_collection()
    rule.save(
        creat_rule(rule, 'V2101P20', 0, 0, 20,
                   'کاربر تسهیلات مشکوک‌الوصول ندارد'))

    # 0.001 <= DoubtfulCollectionAmountRatio ≤ 0.1	-20	V2102N20	نسبت بین 0.001 و 0.1 می‌باشد
    rule = RuleSuspiciousLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V2102N20', 0.001, 0.1, -20,
                   'نسبت بین 0.001 و 0.1 می‌باشد'))

    # 0.101 <= DoubtfulCollectionAmountRatio ≤ 0.2	-30	V2103N30	نسبت بین 0.101 و 0.2 می‌باشد
    rule = RuleSuspiciousLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V2103N30', 0.101, 0.2, -30,
                   'نسبت بین 0.101 و 0.2 می‌باشد'))

    # 0.201 <= DoubtfulCollectionAmountRatio ≤ 0.3	-40	V2104N40	نسبت بین 0.201 و 0.3 می‌باشد
    rule = RuleSuspiciousLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V2104N40', 0.201, 0.3, -40,
                   'نسبت بین 0.201 و 0.3 می‌باشد'))

    # 0.301 <= DoubtfulCollectionAmountRatio ≤ 0.5	-50	V2105N50	نسبت بین 0.301 و 0.5 می‌باشد
    rule = RuleSuspiciousLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V2105N50', 0.301, 0.5, -50,
                   'نسبت بین 0.301 و 0.5 می‌باشد'))

    # DoubtfulCollectionAmountRatio >= 0.501	-60	V2106N60	نسبت بیش از 0.5 می‌باشد
    rule = RuleSuspiciousLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V2106N60', 0.501, 999, -60,
                   'نسبت بیش از 0.5 می‌باشد'))
def import_rules_past_due_loans_total_balance_ratio():
    # PastDueLoanAmountRatio = 0	10	V1901P10	کاربر تسهیلات سررسیدگذشته ندارد
    rule = RulePastDueLoansTotalBalanceRatio()
    rule.drop_collection()
    rule.save(
        creat_rule(rule, 'V1901P10', 0, 0, 10,
                   'کاربر تسهیلات سررسیدگذشته ندارد'))

    # 0.001 <= PastDueLoanAmountRatio ≤ 0.1	-05	V1902N5	نسبت بین 0.001 و 0.1 می‌باشد
    rule = RulePastDueLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V1902N5', 0.001, 0.1, -5,
                   'نسبت بین 0.001 و 0.1 می‌باشد'))

    # 0.101 <= PastDueLoanAmountRatio ≤ 0.2	-10	V1903N10	نسبت بین 0.101 و 0.2 می‌باشد
    rule = RulePastDueLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V1903N10', 0.101, 0.2, -10,
                   'نسبت بین 0.101 و 0.2 می‌باشد'))

    # 0.201 <= PastDueLoanAmountRatio ≤ 0.3	-20	V1904N20	نسبت بین 0.201 و 0.3 می‌باشد
    rule = RulePastDueLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V1904N20', 0.201, 0.3, -20,
                   'نسبت بین 0.201 و 0.3 می‌باشد'))

    # 0.301 <= PastDueLoanAmountRatio ≤ 0.5	-30	V1905N30	نسبت بین 0.301 و 0.5 می‌باشد
    rule = RulePastDueLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V1905N30', 0.301, 0.5, -30,
                   'نسبت بین 0.301 و 0.5 می‌باشد'))

    # PastDueLoanAmountRatio >= 0.501	-40	V1906N40	نسبت بیش از 0.5 می‌باشد
    rule = RulePastDueLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V1906N40', 0.501, 999, -40,
                   'نسبت بیش از 0.5 می‌باشد'))
def import_rules_arrear_loans_total_balance_ratios():
    # DelayedLoanAmountRatio = 0	15	V2001P15	کاربر تسهیلات معوق ندارد
    rule = RuleArrearLoansTotalBalanceRatio()
    rule.drop_collection()
    rule.save(
        creat_rule(rule, 'V2001P15', 0, 0, 15, 'کاربر تسهیلات معوق ندارد'))

    # 0.001 <= DelayedLoanAmountRatio ≤ 0.1	-10	V2002N10	نسبت بین 0 و 0.1 می‌باشد
    rule = RuleArrearLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V2002N10', 0.001, 0.1, -10,
                   'نسبت بین 0 و 0.1 می‌باشد'))

    # 0.101 <= DelayedLoanAmountRatio ≤ 0.2	-20	V2003N20	نسبت بین 0.101 و 0.2 می‌باشد
    rule = RuleArrearLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V2003N20', 0.101, 0.2, -20,
                   'نسبت بین 0.101 و 0.2 می‌باشد'))

    # 0.201 <= DelayedLoanAmountRatio ≤ 0.3	-30	V2004N30	نسبت بین 0.201 و 0.3 می‌باشد
    rule = RuleArrearLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V2004N30', 0.201, 0.3, -30,
                   'نسبت بین 0.201 و 0.3 می‌باشد'))

    # 0.301 <= DelayedLoanAmountRatio ≤ 0.5	-40	V2005N40	نسبت بین  0.301و 0.5 می‌باشد
    rule = RuleArrearLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V2005N40', 0.301, 0.5, -40,
                   'نسبت بین  0.301و 0.5 می‌باشد'))

    # DelayedLoanAmountRatio >= 0.501	-50	V2006N50	نسبت بیش از 0.5 می‌باشد
    rule = RuleArrearLoansTotalBalanceRatio()
    rule.save(
        creat_rule(rule, 'V2006N50', 0.501, 999, -50,
                   'نسبت بیش از 0.5 می‌باشد'))
예제 #17
0
def import_rules_unfixed_returned_cheques_total_balance_ratio():
    # DCAmountRatio = 0	20	V1701P20	کاربر چک برگشتی رفع سو اثر نشده ندارد
    rule = RuleUnfixedReturnedChequesTotalBalanceRatios()
    rule.drop_collection()
    rule.save(
        creat_rule(rule, 'V1701P20', 0, 0, 20,
                   'کاربر چک برگشتی رفع سو اثر نشده ندارد'))

    # 0.001 <= DCAmountRatio ≤ 0.5	00	V1702P0	نسبت بین 0.001 و 0.5 می‌باشد
    rule = RuleUnfixedReturnedChequesTotalBalanceRatios()
    rule.save(
        creat_rule(rule, 'V1702P0', 0.001, 0.5, 0,
                   'نسبت بین 0.001 و 0.5 می‌باشد'))

    # 0.501 <= DCAmountRatio ≤ 1	-10	V1703N10	نسبت بین 0.501 و 1 می‌باشد
    rule = RuleUnfixedReturnedChequesTotalBalanceRatios()
    rule.save(
        creat_rule(rule, 'V1703N10', 0.501, 1, -10,
                   'نسبت بین 0.501 و 1 می‌باشد'))

    # 1.001 <= DCAmountRatio ≤ 1.5	-20	V1704N20	نسبت بین 1.001 و 1.5 می‌باشد
    rule = RuleUnfixedReturnedChequesTotalBalanceRatios()
    rule.save(
        creat_rule(rule, 'V1704N20', 1.001, 1.5, -20,
                   'نسبت بین 1.001 و 1.5 می‌باشد'))

    # 1.501 <= DCAmountRatio ≤ 2	-30	V1705N30	نسبت بین 1.501 و 2 می‌باشد
    rule = RuleUnfixedReturnedChequesTotalBalanceRatios()
    rule.save(
        creat_rule(rule, 'V1705N30', 1.501, 2, -30,
                   'نسبت بین 1.501 و 2 می‌باشد'))

    # DCAmountRatio >= 2.001	-40	V1706N40	نسبت بیش از 2 می‌باشد
    rule = RuleUnfixedReturnedChequesTotalBalanceRatios()
    rule.save(
        creat_rule(rule, 'V1706N40', 2.001, 999, -40, 'نسبت بیش از 2 می‌باشد'))
def import_rules_undone_undue_trades_counts():
    # NumNotDueDeal = 0 00 	H1001P0	کاربر تعامل سررسید نشده ندارد
    rule = RuleUnDoneUndueTradesCount()
    rule.drop_collection()
    rule.save(
        creat_rule(rule, 'H1001P0', 0, 0, 0, 'کاربر تعامل سررسید نشده ندارد'))

    # NumNotDueDeal = 1 01	H1002P2	کاربر 1 تعامل سررسید نشده دارد
    rule = RuleUnDoneUndueTradesCount()
    rule.save(
        creat_rule(rule, 'H1002P2', 1, 1, 1, 'کاربر 1 تعامل سررسید نشده دارد'))

    # NumNotDueDeal = 2	05	H1003P5	کاربر 2 تعامل سررسید نشده دارد
    rule = RuleUnDoneUndueTradesCount()
    rule.save(
        creat_rule(rule, 'H1003P5', 2, 2, 5, 'کاربر 2 تعامل سررسید نشده دارد'))

    # NumNotDueDeal = 3	10	H1004P10	کاربر 3 تعامل سررسید نشده دارد
    rule = RuleUnDoneUndueTradesCount()
    rule.save(
        creat_rule(rule, 'H1004P10', 3, 3, 10,
                   'کاربر 3 تعامل سررسید نشده دارد'))

    # NumNotDueDeal = 4	20	H1005P20	کاربر 4 تعامل سررسید نشده دارد
    rule = RuleUnDoneUndueTradesCount()
    rule.save(
        creat_rule(rule, 'H1005P20', 4, 4, 20,
                   'کاربر 4 تعامل سررسید نشده دارد'))

    # NumNotDueDeal = 5	10	H1006P10	کاربر 5 تعامل سررسید نشده دارد
    rule = RuleUnDoneUndueTradesCount()
    rule.save(
        creat_rule(rule, 'H1006P10', 5, 5, 10,
                   'کاربر 5 تعامل سررسید نشده دارد'))

    # NumNotDueDeal = 6	00	H1007P0	کاربر 6 تعامل سررسید نشده دارد
    rule = RuleUnDoneUndueTradesCount()
    rule.save(
        creat_rule(rule, 'H1007P0', 6, 6, 0, 'کاربر 6 تعامل سررسید نشده دارد'))

    # 7 <= NumNotDueDeal ≤ 10	-10	H1008N10	کاربر بین 7 تا 10 تعامل سررسید نشده دارد
    rule = RuleUnDoneUndueTradesCount()
    rule.save(
        creat_rule(rule, 'H1008N10', 7, 10, -10,
                   'کاربر بین 7 تا 10 تعامل سررسید نشده دارد'))

    # 11 <= NumNotDueDeal ≤ 20	-20	H1009N20	کاربر بین 11 تا 20 تعامل سررسید نشده دارد
    rule = RuleUnDoneUndueTradesCount()
    rule.save(
        creat_rule(rule, 'H1009N20', 11, 20, -20,
                   'کاربر بین 11 تا 20 تعامل سررسید نشده دارد'))

    # 21 <= NumNotDueDeal ≤ 30	-30	H1010N30	کاربر بین 21 تا 30 تعامل سررسید نشده دارد
    rule = RuleUnDoneUndueTradesCount()
    rule.save(
        creat_rule(rule, 'H1010N30', 21, 30, -30,
                   'کاربر بین 21 تا 30 تعامل سررسید نشده دارد'))

    # NotDueDeal >= 31	-50	H1011N50	کاربر بیش از 30 تعامل سررسید نشده دارد
    rule = RuleUnDoneUndueTradesCount()
    rule.save(
        creat_rule(rule, 'H1011N50', 31, 999, -50,
                   'کاربر بیش از 30 تعامل سررسید نشده دارد'))