mismo_enum 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/MIT-LICENSE +21 -0
- data/Rakefile +21 -0
- data/app/assets/javascripts/mismo_enum/application.js +13 -0
- data/app/assets/stylesheets/mismo_enum/application.css +15 -0
- data/app/controllers/mismo_enum/application_controller.rb +4 -0
- data/app/helpers/mismo_enum/application_helper.rb +4 -0
- data/app/models/mismo_enum/amortization_type.rb +39 -0
- data/app/models/mismo_enum/automated_underwriting_system_type.rb +32 -0
- data/app/models/mismo_enum/bankruptcy_disposition_type.rb +26 -0
- data/app/models/mismo_enum/bankruptcy_status_type.rb +20 -0
- data/app/models/mismo_enum/base.rb +6 -0
- data/app/models/mismo_enum/borrower_classification_type.rb +19 -0
- data/app/models/mismo_enum/citizenship_residency_type.rb +23 -0
- data/app/models/mismo_enum/construction_method_type.rb +33 -0
- data/app/models/mismo_enum/definition_of_value_type.rb +25 -0
- data/app/models/mismo_enum/foreclosure_status_type.rb +35 -0
- data/app/models/mismo_enum/gender_type.rb +21 -0
- data/app/models/mismo_enum/index_source_type.rb +140 -0
- data/app/models/mismo_enum/index_type.rb +27 -0
- data/app/models/mismo_enum/loan_delinquency_status_type.rb +108 -0
- data/app/models/mismo_enum/loan_purpose_type.rb +26 -0
- data/app/models/mismo_enum/loan_state_type.rb +44 -0
- data/app/models/mismo_enum/marital_status_type.rb +22 -0
- data/app/models/mismo_enum/mortgage_type.rb +43 -0
- data/app/models/mismo_enum/payment_delinquency_status_type.rb +22 -0
- data/app/models/mismo_enum/postal_state.rb +95 -0
- data/app/models/mismo_enum/prepayment_penalty_option_type.rb +21 -0
- data/app/models/mismo_enum/project_design_type.rb +24 -0
- data/app/models/mismo_enum/project_legal_structure_type.rb +32 -0
- data/app/models/mismo_enum/property_usage_type.rb +26 -0
- data/app/models/mismo_enum/property_valuation_method_type.rb +29 -0
- data/app/models/mismo_enum/property_valuation_state_type.rb +20 -0
- data/app/models/mismo_enum/rate_lock_type.rb +19 -0
- data/app/models/mismo_enum/refinance_cash_out_determination_type.rb +21 -0
- data/app/models/mismo_enum/taxpayer_identifier_type.rb +24 -0
- data/app/views/layouts/mismo_enum/application.html.erb +14 -0
- data/config/routes.rb +2 -0
- data/db/migrations/001_create_mismo_enums.rb +26 -0
- data/db/seeds.rb +3 -0
- data/lib/generators/mismo_enum/install/install_generator.rb +22 -0
- data/lib/generators/mismo_enum/templates/create_mismo_enums.rb +26 -0
- data/lib/mismo_enum.rb +3 -0
- data/lib/mismo_enum/class_list.rb +50 -0
- data/lib/mismo_enum/engine.rb +11 -0
- data/lib/mismo_enum/helper.rb +3 -0
- data/lib/mismo_enum/version.rb +3 -0
- data/lib/tasks/mismo_enum_tasks.rake +23 -0
- metadata +92 -0
@@ -0,0 +1,27 @@
|
|
1
|
+
# app/models/mismo_enum/index_type.rb
|
2
|
+
# enum
|
3
|
+
|
4
|
+
class MismoEnum::IndexType < MismoEnum::Base
|
5
|
+
validates_presence_of :name
|
6
|
+
validates_uniqueness_of :name
|
7
|
+
|
8
|
+
def self.description
|
9
|
+
'Specifies the general category of mortgage index upon which adjustments'+
|
10
|
+
' will be based.'
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.seed
|
14
|
+
[[1, 'LIBOR', 'London Interbank Offered Rate'],
|
15
|
+
[2, 'ConstantMaturityTreasury', 'Often referred to as CMT'],
|
16
|
+
[3, 'BankPrimeLoan', 'Often referred to as Prime Rate'],
|
17
|
+
[4, 'CertificateOfDepositIndex', 'Often referred to as CODI'],
|
18
|
+
[5, 'CostOfSavingsIndex', 'Often referred to as COSI'],
|
19
|
+
[6, 'EleventhDistrictCostOfFundsIndex', 'Often referred to as COFI'],
|
20
|
+
[7, 'Other', ''],
|
21
|
+
[8, 'TreasuryBill', 'Often referred to as T-Bill'],
|
22
|
+
[9, 'TwelveMonthTreasuryAverage', 'Often referred to as MTA']
|
23
|
+
].each { |id, entry, desc| create(id: id,
|
24
|
+
name: entry,
|
25
|
+
description: desc) }
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,108 @@
|
|
1
|
+
# app/models/mismo_enum/loan_delinquency_status_type.rb
|
2
|
+
# enum
|
3
|
+
|
4
|
+
class MismoEnum::LoanDelinquencyStatusType < MismoEnum::Base
|
5
|
+
validates_presence_of :name
|
6
|
+
validates_uniqueness_of :name
|
7
|
+
|
8
|
+
def self.description
|
9
|
+
'Loan Delinquency Status Type is used to report the status of a delinquent'+
|
10
|
+
' loan (i.e., is the loan in delinquency, foreclosure, bankruptcy, or '+
|
11
|
+
'some other status).'
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.seed
|
15
|
+
[[1, 'AssignmentPursued', 'An FHA-insured mortgage that qualifies for HUD '+
|
16
|
+
'special assignment procedures is in the process of being assigned '+
|
17
|
+
'to HUD.'],
|
18
|
+
[2, 'Assumption', 'The Servicer is working with the borrower to sell the '+
|
19
|
+
'property by permitting the purchaser to pay the delinquent '+
|
20
|
+
'installments and assume the outstanding debt.'],
|
21
|
+
[3, 'ChapterElevenBankruptcy', 'The borrower has filed for bankruptcy '+
|
22
|
+
'under Chapter 11 of the Federal Bankruptcy Act.'],
|
23
|
+
[4, 'ChapterSevenBankruptcy', 'The borrower has filed for bankruptcy '+
|
24
|
+
'under Chapter 7 of the Federal Bankruptcy Act.'],
|
25
|
+
[5, 'ChapterThirteenBankruptcy', 'The borrower has filed for bankruptcy '+
|
26
|
+
'under Chapter 13 of the Federal Bankruptcy Act.'],
|
27
|
+
[6, 'ChapterTwelveBankruptcy', 'The borrower has filed for bankruptcy '+
|
28
|
+
'under Chapter 12 of the Federal Bankruptcy Act. A Chapter 12 '+
|
29
|
+
'bankruptcy is a bankruptcy action that involves the reorganization'+
|
30
|
+
' of a family farming business.'],
|
31
|
+
[7, 'ChargeOffPursued', 'The investor has agreed not to pursue collection'+
|
32
|
+
' efforts or legal actions against the borrower because of a '+
|
33
|
+
'reduced value for the property, a low outstanding mortgage '+
|
34
|
+
'balance, or the presence of environmental hazards on the '+
|
35
|
+
'property.'],
|
36
|
+
[8, 'ContestedForeclosure', 'Borrower has contested the legal action of '+
|
37
|
+
'the servicer or there is litigation pending or filed that '+
|
38
|
+
'adversely affects the property. For example, a borrower or other '+
|
39
|
+
'defendant interposes an answer to an action, or files a '+
|
40
|
+
'countersuit.'],
|
41
|
+
[9, 'Current', 'The loan has been made current and is no longer '+
|
42
|
+
'delinquent.'],
|
43
|
+
[10, 'DelinquentNoAction', 'Considered delinquent based on investor '+
|
44
|
+
'guidelines, but the servicer has not taken legal action.'],
|
45
|
+
[11, 'DrugSeizure', 'The Department of Justice or a state/local agency '+
|
46
|
+
'has decided to seize (or has seized) a property under the '+
|
47
|
+
'forfeiture provision of the Controlled Substances Act.'],
|
48
|
+
[12, 'Forbearance', 'The Servicer has authorized a temporary suspension '+
|
49
|
+
'of payments or a repayment plan that calls for periodic payments '+
|
50
|
+
'of less than the normal monthly payment, or periodic payments at '+
|
51
|
+
'different intervals, to give the borrower additional time to '+
|
52
|
+
'bring the mortgage current.'],
|
53
|
+
[13, 'Foreclosure', 'The Servicer has referred the case to an attorney to'+
|
54
|
+
' take legal action to acquire the property through a foreclosure '+
|
55
|
+
'sale.'],
|
56
|
+
[14, 'GovernmentSeizure', 'An action by a local agency to seize or '+
|
57
|
+
'initiate forfeiture proceedings against a property.'],
|
58
|
+
[15, 'MediationReferral', 'The mortgage loan has been referrerd to '+
|
59
|
+
'mediation.'],
|
60
|
+
[16, 'MilitaryIndulgence', 'The Servicer has granted a delinquent service'+
|
61
|
+
' member forbearance or a stay in foreclosure proceedings under '+
|
62
|
+
'the provisions of the Soldiers and Sailors Civil Relief Act.'],
|
63
|
+
[17, 'Modification', 'The Servicer is working with the borrower to '+
|
64
|
+
'renegotiate the terms of the mortgage.'],
|
65
|
+
[18, 'PreforeclosureSalePlanned', 'The Servicer plans to pursue a '+
|
66
|
+
'preforeclosure sale with a payoff of less than the full amount '+
|
67
|
+
'of indebtedness.'],
|
68
|
+
[19, 'Probate', 'The Servicer cannot pursue (or complete) foreclosure '+
|
69
|
+
'action because proceedings required to verify a will of a '+
|
70
|
+
'deceased mortgagor are in process.'],
|
71
|
+
[20, 'Refinance', 'The Servicer is pursuing a new loan in which the '+
|
72
|
+
'existing first mortgage is paid off with the proceeds of the new '+
|
73
|
+
'mortgage.'],
|
74
|
+
[21, 'RepaymentPlan', 'A written or verbal agreement between the Servicer'+
|
75
|
+
' and the borrower that gives the borrower a defined period of '+
|
76
|
+
'time to reinstate the mortgage by making payments in excess of '+
|
77
|
+
'the monthly payment.'],
|
78
|
+
[22, 'SecondLienConsiderations', 'The Servicer is evaluating the pros and'+
|
79
|
+
' cons of pursuing foreclosure or recommending that the debt be '+
|
80
|
+
'charged off on a second mortgage.'],
|
81
|
+
[23, 'ShortSalePlanning', 'The Servicer is working with the borrower to '+
|
82
|
+
'pursue a short sale.'],
|
83
|
+
[24, 'TrialModificationActive', 'The borrower has been approved to '+
|
84
|
+
'participate in a modification that requires a trial period plan '+
|
85
|
+
'and is current on their trial payments.'],
|
86
|
+
[25, 'VeteransAffairsBuydown', 'The investor has agreed to make a cash '+
|
87
|
+
'contribution to reduce the outstanding indebtedness of a '+
|
88
|
+
'VA-guaranteed mortgage, for which the Department of Veterans '+
|
89
|
+
'Affairs failed to establish an "upset price" bid for the '+
|
90
|
+
'foreclosure sale, in order to get the VA to reconsider its '+
|
91
|
+
'decision. Servicer has completed processing the Buydown.'],
|
92
|
+
[26, 'VeteransAffairsNoBids', 'The Department of Veterans Affairs refused'+
|
93
|
+
' to establish an \"upset price\" to be bid at the foreclosure sale '+
|
94
|
+
'of a VA-guaranteed mortgage that the Servicer had referred for '+
|
95
|
+
'foreclosure. Servicer is pursuing a buydown, charge-off or other '+
|
96
|
+
'alternative.'],
|
97
|
+
[27, 'VeteransAffairsRefundPursued', 'The Department of Veterans Affairs '+
|
98
|
+
'has requested information about a VA-guaranteed mortgage the '+
|
99
|
+
'Servicer had referred for foreclosure in order to decide whether '+
|
100
|
+
'to accept an assignment and refund the mortgage.'],
|
101
|
+
[28, 'Workout', 'There is a workout being pursued on the loan that will '+
|
102
|
+
'help bring the loan current or liquidate the loan to avoid '+
|
103
|
+
'foreclosure.']
|
104
|
+
].each { |id, entry, desc| create(id: id,
|
105
|
+
name: entry,
|
106
|
+
description: desc) }
|
107
|
+
end
|
108
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# app/models/mismo_enum/loan_purpose_type.rb
|
2
|
+
# enum
|
3
|
+
|
4
|
+
class MismoEnum::LoanPurposeType < MismoEnum::Base
|
5
|
+
validates_presence_of :name
|
6
|
+
validates_uniqueness_of :name
|
7
|
+
|
8
|
+
def self.description
|
9
|
+
'Specifies the purpose for which the loan proceeds will be used.'
|
10
|
+
end
|
11
|
+
|
12
|
+
def self.seed
|
13
|
+
[[1, 'Purchase', 'A loan made in association with the original purchase of'+
|
14
|
+
' a piece of property.'],
|
15
|
+
[2, 'Refinance', 'The repayment of a debt from proceeds of a new loan '+
|
16
|
+
'using the same property as security or a mortgage secured by a '+
|
17
|
+
'property previously owned free and clear by the Borrower.'],
|
18
|
+
[3, 'MortgageModification', 'Terms of the mortgage are modified from the '+
|
19
|
+
'original terms agreed to by the lender and borrower'],
|
20
|
+
[4, 'Other', ''],
|
21
|
+
[5, 'Unknown', 'Loan Purpose has not been reported or is not known.']
|
22
|
+
].each { |id, entry, desc| create(id: id,
|
23
|
+
name: entry,
|
24
|
+
description: desc) }
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
# app/models/mismo_enum/loan_state_type.rb
|
2
|
+
# enum
|
3
|
+
|
4
|
+
class MismoEnum::LoanStateType < MismoEnum::Base
|
5
|
+
validates_presence_of :name
|
6
|
+
validates_uniqueness_of :name
|
7
|
+
|
8
|
+
def self.description
|
9
|
+
'Identifies the state in time for the information associated with this '+
|
10
|
+
'occurrance of LOAN'
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.seed
|
14
|
+
[[1, 'AtBankruptcyFiling', 'A snapshot of the loan data at the time a '+
|
15
|
+
'borrower files for bankruptcy.'],
|
16
|
+
[2, 'AtClosing', 'A snapshot of the loan data at the completion of the '+
|
17
|
+
'closing process. This is sometimes referred to as "original".'],
|
18
|
+
[3, 'AtConversion', 'For loans with a conversion option, a snapshot of '+
|
19
|
+
'the loan data at the time the conversion features become effective '+
|
20
|
+
'(e.g., biweekly to monthly payments; adjustable to fixed rate '+
|
21
|
+
'amortization).'],
|
22
|
+
[4, 'AtEstimate', 'A snapshot of the loan data at the point in time when '+
|
23
|
+
'a loan estimate is disclosed.'],
|
24
|
+
[5, 'AtModification', 'For loans which undergo term modifications not '+
|
25
|
+
'originally specified in the note, a snapshot of the loan data at '+
|
26
|
+
'the time the new note terms become effective.'],
|
27
|
+
[6, 'AtRelief', 'For loans subject to payment relief, a snapshot of the '+
|
28
|
+
'loan data at the time the relief is initiated.'],
|
29
|
+
[7, 'AtReset', 'For balloon mortgages with a reset feature, a snapshot '+
|
30
|
+
'of the loan data on the balloon maturity date at the time the '+
|
31
|
+
'borrower exercises the reset option to modify and extend the '+
|
32
|
+
'balloon note.'],
|
33
|
+
[8, 'AtTransfer', 'A snapshot of the loan data as of the effective date '+
|
34
|
+
'of the servicing transfer.'],
|
35
|
+
[9, 'AtTrial', 'A snapshot of the loan data at the initiation of a trial '+
|
36
|
+
'period for a workout modification.'],
|
37
|
+
[10, 'AtUnderwriting', 'A snapshot of the loan data at the point at which '+
|
38
|
+
'the underwriting recommendation is made.'],
|
39
|
+
[11, 'Current', 'A snapshot of the loan data as of the "Loan State Date".']
|
40
|
+
].each { |id, entry, desc| create(id: id,
|
41
|
+
name: entry,
|
42
|
+
description: desc) }
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# app/models/mismo_enum/marital_status_type.rb
|
2
|
+
# enum
|
3
|
+
|
4
|
+
class MismoEnum::MaritalStatusType < MismoEnum::Base
|
5
|
+
validates_presence_of :name
|
6
|
+
validates_uniqueness_of :name
|
7
|
+
|
8
|
+
def self.description
|
9
|
+
'The marital status of the party as disclosed by the party.'
|
10
|
+
end
|
11
|
+
|
12
|
+
def self.seed
|
13
|
+
[[1, 'Married', ''],
|
14
|
+
[2, 'NotProvided', ''],
|
15
|
+
[3, 'Separated', ''],
|
16
|
+
[4, 'Unknown', ''],
|
17
|
+
[5, 'Unmarried', '']
|
18
|
+
].each { |id, entry, desc| create(id: id,
|
19
|
+
name: entry,
|
20
|
+
description: desc) }
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
# app/models/mismo_enum/mortgage_type.rb
|
2
|
+
# enum
|
3
|
+
|
4
|
+
class MismoEnum::MortgageType < MismoEnum::Base
|
5
|
+
validates_presence_of :name
|
6
|
+
validates_uniqueness_of :name
|
7
|
+
|
8
|
+
def self.description
|
9
|
+
'Identifies the highest level private or public sector entity under whose'+
|
10
|
+
' guidelines the mortgage is originated.'
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.seed
|
14
|
+
[[1, 'Conventional', 'Mortgage financing which is not insured or '+
|
15
|
+
'guaranteed by a government agency.'],
|
16
|
+
[2, 'FHA', "A loan originated in accordance with the guidelines of HUD's"+
|
17
|
+
" Federal Housing Administration, a federal agency that provides "+
|
18
|
+
"mortgage insurance on single-family, multifamily, manufactured homes "+
|
19
|
+
"and hospital loans made by FHA-approved lenders throughout the United "+
|
20
|
+
"States and its territories."],
|
21
|
+
[3, 'LocalAgency', 'A loan originated in accordance with the guidelines '+
|
22
|
+
'of an agency governed by a municipal jurisdiction.'],
|
23
|
+
[4, 'Other', ''],
|
24
|
+
[5, 'PublicAndIndianHousing', "A loan originated in accordance with the "+
|
25
|
+
"guidelines of HUD's Office of Native American Programs, which "+
|
26
|
+
"provides safe and affordable housing for lower-income Native "+
|
27
|
+
"American, Alaska Native and Native Hawaiian families."],
|
28
|
+
[6, 'StateAgency', 'A loan originated in accordance with the guidelines '+
|
29
|
+
'of an agency governed by a state jurisdiction.'],
|
30
|
+
[7, 'USDARuralDevelopment', "A loan originated in accordance with the "+
|
31
|
+
"guidelines of the USDA Rural Development Agency's Housing and "+
|
32
|
+
"Community Facilities Program, which provides funding for single "+
|
33
|
+
"family homes in rural communities."],
|
34
|
+
[8, 'VA', 'A loan originated in accordance with the guidelines of the '+
|
35
|
+
'Department of Veterans Affairs’ Loan Guaranty Home Loan Program, '+
|
36
|
+
'which guarantees loans made by private lenders, such as banks, '+
|
37
|
+
'savings & loans, or mortgage companies to eligible veterans for the '+
|
38
|
+
'purchase of a home which must be for their own personal occupancy.']
|
39
|
+
].each { |id, entry, desc| create(id: id,
|
40
|
+
name: entry,
|
41
|
+
description: desc) }
|
42
|
+
end
|
43
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# app/models/mismo_enum/payment_delinquency_status_type.rb
|
2
|
+
# enum
|
3
|
+
|
4
|
+
class MismoEnum::PaymentDelinquencyStatusType < MismoEnum::Base
|
5
|
+
validates_presence_of :name
|
6
|
+
validates_uniqueness_of :name
|
7
|
+
|
8
|
+
def self.description
|
9
|
+
'Reports the delinquency status of the specific delinquency event.'
|
10
|
+
end
|
11
|
+
|
12
|
+
def self.seed
|
13
|
+
[[1, 'MoreThan120Days', ''],
|
14
|
+
[2, 'MoreThan30Days', ''],
|
15
|
+
[3, 'MoreThan60Days', ''],
|
16
|
+
[4, 'MoreThan90Days', ''],
|
17
|
+
[5, 'NotDelinquent', '']
|
18
|
+
].each { |id, entry, desc| create(id: id,
|
19
|
+
name: entry,
|
20
|
+
description: desc) }
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,95 @@
|
|
1
|
+
# app/models/mismo_enum/postal_state.rb
|
2
|
+
# utility enum (not mismo)
|
3
|
+
|
4
|
+
class MismoEnum::PostalState < MismoEnum::Base
|
5
|
+
validates_presence_of :name
|
6
|
+
validates_uniqueness_of :name
|
7
|
+
|
8
|
+
def self.description
|
9
|
+
'List of states and territories with accompanying Postal abbreviation.'+
|
10
|
+
' https://en.wikipedia.org/wiki/List_of_U.S._state_abbreviations'
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.seed
|
14
|
+
[[1, 'AK', 'Alaska'],
|
15
|
+
[2, 'AL', 'Alabama'],
|
16
|
+
[3, 'AR', 'Arkansas'],
|
17
|
+
[4, 'AZ', 'Arizona'],
|
18
|
+
[5, 'CA', 'California'],
|
19
|
+
[6, 'CO', 'Colorado'],
|
20
|
+
[7, 'CT', 'Connecticut'],
|
21
|
+
[8, 'DE', 'Delaware'],
|
22
|
+
[9, 'FL', 'Florida'],
|
23
|
+
[10, 'GA', 'Georgia'],
|
24
|
+
[11, 'HI', 'Hawaii'],
|
25
|
+
[12, 'IA', 'Iowa'],
|
26
|
+
[13, 'ID', 'Idaho'],
|
27
|
+
[14, 'IL', 'Illinois'],
|
28
|
+
[15, 'IN', 'Indiana'],
|
29
|
+
[16, 'KS', 'Kansas'],
|
30
|
+
[17, 'KY', 'Kentucky'],
|
31
|
+
[18, 'LA', 'Louisiana'],
|
32
|
+
[19, 'MA', 'Massachusetts'],
|
33
|
+
[20, 'MD', 'Maryland'],
|
34
|
+
[21, 'ME', 'Maine'],
|
35
|
+
[22, 'MI', 'Michigan'],
|
36
|
+
[23, 'MN', 'Minnesota'],
|
37
|
+
[24, 'MO', 'Missouri'],
|
38
|
+
[25, 'MS', 'Mississippi'],
|
39
|
+
[26, 'MT', 'Montana'],
|
40
|
+
[27, 'NC', 'North Carolina'],
|
41
|
+
[28, 'ND', 'North Dakota'],
|
42
|
+
[29, 'NE', 'Nebraska'],
|
43
|
+
[30, 'NH', 'New Hampshire'],
|
44
|
+
[31, 'NJ', 'New Jersey'],
|
45
|
+
[32, 'NM', 'New Mexico'],
|
46
|
+
[33, 'NV', 'Nevada'],
|
47
|
+
[34, 'NY', 'New York'],
|
48
|
+
[35, 'OH', 'Ohio'],
|
49
|
+
[36, 'OK', 'Oklahoma'],
|
50
|
+
[37, 'OR', 'Oregon'],
|
51
|
+
[38, 'PA', 'Pennsylvania'],
|
52
|
+
[39, 'RI', 'Rhode Island'],
|
53
|
+
[40, 'SC', 'South Carolina'],
|
54
|
+
[41, 'SD', 'South Dakota'],
|
55
|
+
[42, 'TN', 'Tennessee'],
|
56
|
+
[43, 'TX', 'Texas'],
|
57
|
+
[44, 'UT', 'Utah'],
|
58
|
+
[45, 'VA', 'Virginia'],
|
59
|
+
[46, 'VT', 'Vermont'],
|
60
|
+
[47, 'WA', 'Washington'],
|
61
|
+
[48, 'WI', 'Wisconsin'],
|
62
|
+
[49, 'WV', 'West Virginia'],
|
63
|
+
[50, 'WY', 'Wyoming'],
|
64
|
+
|
65
|
+
# Evil Empire
|
66
|
+
[51, 'DC', 'District of Columbia'],
|
67
|
+
|
68
|
+
# Territories
|
69
|
+
[52, 'AS', 'American Samoa'],
|
70
|
+
[53, 'GU', 'Guam'],
|
71
|
+
[54, 'MP', 'Northern Mariana Islands'],
|
72
|
+
[55, 'PR', 'Puerto Rico'],
|
73
|
+
[56, 'VI', 'U.S. Virgin Islands'],
|
74
|
+
[57, 'UM', 'United States Minor Outlying Islands'],
|
75
|
+
|
76
|
+
# Freely Associated States
|
77
|
+
[58, 'AA', 'Federated States of Micronesia'],
|
78
|
+
[59, 'MH', 'Marshall Islands'],
|
79
|
+
[60, 'PW', 'Palau'],
|
80
|
+
|
81
|
+
# Armed Forces
|
82
|
+
[61, 'AA', 'Armed Forces Americas (except Canada)'],
|
83
|
+
[62, 'AE', 'Armed Forces Europe (covers all USARAEUR, Armed Forces Canada, ' +
|
84
|
+
'Armed Forces Middle East, Armed Forces Africa'],
|
85
|
+
[63, 'AP', 'Armed Forces Pacific'],
|
86
|
+
|
87
|
+
# No Longer Used
|
88
|
+
[64, 'CZ', 'Canal Zone'],
|
89
|
+
[65, 'TT', 'Trust Territory of the Pacific Islands'],
|
90
|
+
[66, 'PI', 'Rizal State']
|
91
|
+
].each { |id, short_name, name| create(:id => id,
|
92
|
+
:name => short_name,
|
93
|
+
:description => name) }
|
94
|
+
end
|
95
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# app/models/mismo_enum/prepayment_penalty_option_type.rb
|
2
|
+
# enum
|
3
|
+
|
4
|
+
class MismoEnum::PrepaymentPenaltyOptionType < MismoEnum::Base
|
5
|
+
validates_presence_of :name
|
6
|
+
validates_uniqueness_of :name
|
7
|
+
|
8
|
+
def self.description
|
9
|
+
'Identifies the type of early principal repayment eligible for a penalty'+
|
10
|
+
' charge.'
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.seed
|
14
|
+
[[1, 'Hard', 'Standard prepay penalty applies in all situations.'],
|
15
|
+
[2, 'Soft', 'Borrower may sell property without penalty. However, '+
|
16
|
+
'refinance will incur penalty.']
|
17
|
+
].each { |id, entry, desc| create(id: id,
|
18
|
+
name: entry,
|
19
|
+
description: desc) }
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# app/models/mismo_enum/project_design_type.rb
|
2
|
+
# enum
|
3
|
+
|
4
|
+
class MismoEnum::ProjectDesignType < MismoEnum::Base
|
5
|
+
validates_presence_of :name
|
6
|
+
validates_uniqueness_of :name
|
7
|
+
|
8
|
+
def self.description
|
9
|
+
'This field specifies the type of design for the multiple unit buildings'+
|
10
|
+
' in a project.'
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.seed
|
14
|
+
[[1, 'GardenProject', ''],
|
15
|
+
[2, 'HighriseProject', ''],
|
16
|
+
[3, 'MidriseProject', ''],
|
17
|
+
[4, 'TownhouseRowhouse', 'One in a row of identical houses or having '+
|
18
|
+
'common wall. Attached to another unit via common wall (e.g., a '+
|
19
|
+
'brownstone.)']
|
20
|
+
].each { |id, entry, desc| create(id: id,
|
21
|
+
name: entry,
|
22
|
+
description: desc) }
|
23
|
+
end
|
24
|
+
end
|