Browse Source

Import a completed shared ownership example

pull/1331/head
Kat 3 years ago
parent
commit
3a815ce670
  1. 17
      app/services/imports/sales_logs_import_service.rb
  2. 35
      spec/fixtures/imports/sales_logs/00d2343e-d5fa-4c89-8400-ec3854b0f2b4.xml

17
app/services/imports/sales_logs_import_service.rb

@ -75,8 +75,8 @@ module Imports
attributes["hb"] = unsafe_string_as_integer(xml_doc, "Q2A") attributes["hb"] = unsafe_string_as_integer(xml_doc, "Q2A")
attributes["frombeds"] = safe_string_as_integer(xml_doc, "Q20BEDROOMS") attributes["frombeds"] = safe_string_as_integer(xml_doc, "Q20BEDROOMS")
attributes["staircase"] = unsafe_string_as_integer(xml_doc, "Q17ASTAIRCASE") attributes["staircase"] = unsafe_string_as_integer(xml_doc, "Q17ASTAIRCASE")
attributes["stairbought"] = nil # ? attributes["stairbought"] = safe_string_as_integer(xml_doc, "PERCENTBOUGHT") # ?
attributes["stairowned"] = nil # ? attributes["stairowned"] = safe_string_as_integer(xml_doc, "PERCENTOWNS") # ?
attributes["mrent"] = safe_string_as_decimal(xml_doc, "Q28MONTHLYRENT") attributes["mrent"] = safe_string_as_decimal(xml_doc, "Q28MONTHLYRENT")
attributes["exdate"] = compose_date(xml_doc, "EXDAY", "EXMONTH", "EXYEAR") attributes["exdate"] = compose_date(xml_doc, "EXDAY", "EXMONTH", "EXYEAR")
attributes["exday"] = safe_string_as_integer(xml_doc, "EXDAY") attributes["exday"] = safe_string_as_integer(xml_doc, "EXDAY")
@ -87,7 +87,6 @@ module Imports
attributes["cashdis"] = safe_string_as_decimal(xml_doc, "Q27SOCIALHOMEBUY") attributes["cashdis"] = safe_string_as_decimal(xml_doc, "Q27SOCIALHOMEBUY")
attributes["disabled"] = unsafe_string_as_integer(xml_doc, "DISABILITY") attributes["disabled"] = unsafe_string_as_integer(xml_doc, "DISABILITY")
attributes["lanomagr"] = unsafe_string_as_integer(xml_doc, "Q19REHOUSED") attributes["lanomagr"] = unsafe_string_as_integer(xml_doc, "Q19REHOUSED")
attributes["soctenant"] = nil # ?
attributes["value"] = safe_string_as_decimal(xml_doc, "Q22PURCHASEPRICE") attributes["value"] = safe_string_as_decimal(xml_doc, "Q22PURCHASEPRICE")
attributes["equity"] = safe_string_as_decimal(xml_doc, "Q23EQUITY") attributes["equity"] = safe_string_as_decimal(xml_doc, "Q23EQUITY")
attributes["discount"] = safe_string_as_decimal(xml_doc, "Q33DISCOUNT") attributes["discount"] = safe_string_as_decimal(xml_doc, "Q33DISCOUNT")
@ -136,6 +135,7 @@ module Imports
attributes["ethnicbuy2"] = nil attributes["ethnicbuy2"] = nil
attributes["prevshared"] = nil attributes["prevshared"] = nil
attributes["staircasesale"] = nil attributes["staircasesale"] = nil
attributes["soctenant"] = soctenant(attributes)
# Required for our form invalidated questions (not present in import) # Required for our form invalidated questions (not present in import)
attributes["previous_la_known"] = attributes["prevloc"].nil? ? 0 : 1 attributes["previous_la_known"] = attributes["prevloc"].nil? ? 0 : 1
@ -393,5 +393,16 @@ module Imports
1 1
end end
end end
def soctenant(attributes)
return nil unless attributes["ownershipsch"] == 1
if attributes["frombeds"].blank? && attributes["fromprop"].blank? && attributes["socprevten"].blank?
2
else
1
end
# NO (2) if FROMBEDS, FROMPROP and socprevten are blank, and YES(1) if they are completed
end
end end
end end

35
spec/fixtures/imports/sales_logs/00d2343e-d5fa-4c89-8400-ec3854b0f2b4.xml vendored

@ -22,10 +22,8 @@
<MONTH>11</MONTH> <MONTH>11</MONTH>
<YEAR>2022</YEAR> <YEAR>2022</YEAR>
<!-- for shared ownership testing --> <!-- for shared ownership testing -->
<!-- <OWNERSHIP>1 Yes - a shared ownership scheme</OWNERSHIP> <OWNERSHIP>1 Yes - a shared ownership scheme</OWNERSHIP>
<DERSALETYPE>18 Social Homebuy (shared ownership purchase)</DERSALETYPE> --> <DERSALETYPE>18 Social Homebuy (shared ownership purchase)</DERSALETYPE>
<OWNERSHIP>2 Yes - a discount ownership scheme</OWNERSHIP>
<DERSALETYPE>8 Right to Acquire (RTA)</DERSALETYPE>
<COMPANY></COMPANY> <COMPANY></COMPANY>
<JOINT>1 Yes</JOINT> <JOINT>1 Yes</JOINT>
<Q11BEDROOMS>2</Q11BEDROOMS> <Q11BEDROOMS>2</Q11BEDROOMS>
@ -68,16 +66,17 @@
<P5ECO>5 Retired</P5ECO> <P5ECO>5 Retired</P5ECO>
<P6ECO>1 Full Time - 30 hours or more a week</P6ECO> <P6ECO>1 Full Time - 30 hours or more a week</P6ECO>
<DISABILITY>1 Yes</DISABILITY> <DISABILITY>1 Yes</DISABILITY>
<Q26CASHDEPOSIT>90_000</Q26CASHDEPOSIT> <Q28MONTHLYRENT>300</Q28MONTHLYRENT>
<Q27SOCIALHOMEBUY></Q27SOCIALHOMEBUY> <Q26CASHDEPOSIT>70_000</Q26CASHDEPOSIT>
<Q22PURCHASEPRICE>250_000</Q22PURCHASEPRICE> <Q22PURCHASEPRICE>230_000</Q22PURCHASEPRICE>
<Q32REDUCTIONS>10_000</Q32REDUCTIONS> <Q30A>0</Q30A>
<!-- not sure about q30a format /--> <Q17ASTAIRCASE>1 Yes</Q17ASTAIRCASE>
<!-- for shared ownership testing --> <PERCENTBOUGHT>10</PERCENTBOUGHT>
<!-- <Q30A></Q30A> --> <PERCENTOWNS>10</PERCENTOWNS>
<!-- <Q32REDUCTIONS></Q32REDUCTIONS> --> <Q19REHOUSED>1 Yes</Q19REHOUSED>
<!-- <Q27SOCIALHOMEBUY>1_000</Q27SOCIALHOMEBUY> --> <Q32REDUCTIONS></Q32REDUCTIONS>
<Q30A>10</Q30A> <Q27SOCIALHOMEBUY>10_000</Q27SOCIALHOMEBUY>
<Q23EQUITY>100</Q23EQUITY>
<PREGYRHA>Yes</PREGYRHA> <PREGYRHA>Yes</PREGYRHA>
<PREGLA>Yes</PREGLA> <PREGLA>Yes</PREGLA>
<PREGOTHER>Yes</PREGOTHER> <PREGOTHER>Yes</PREGOTHER>
@ -98,12 +97,12 @@
<Q15WHEELCHAIR>1 Yes</Q15WHEELCHAIR> <Q15WHEELCHAIR>1 Yes</Q15WHEELCHAIR>
<ARMEDFORCESSPOUSE>5 No</ARMEDFORCESSPOUSE> <ARMEDFORCESSPOUSE>5 No</ARMEDFORCESSPOUSE>
<Q29MONTHLYCHARGES>100</Q29MONTHLYCHARGES> <Q29MONTHLYCHARGES>100</Q29MONTHLYCHARGES>
<Q24B></Q24B> <Q24B>10</Q24B>
<Q34B>10</Q34B> <Q34B></Q34B>
<Q41B></Q41B> <Q41B></Q41B>
<Q7UNKNOWNPOSTCODE>If postcode not known tick</Q7UNKNOWNPOSTCODE> <Q7UNKNOWNPOSTCODE>If postcode not known tick</Q7UNKNOWNPOSTCODE>
<Q24AMORTGAGELENDER></Q24AMORTGAGELENDER> <Q24AMORTGAGELENDER>5</Q24AMORTGAGELENDER>
<Q34AMORTGAGELENDER>5</Q34AMORTGAGELENDER> <Q34AMORTGAGELENDER></Q34AMORTGAGELENDER>
<Q41AMORTGAGELENDER></Q41AMORTGAGELENDER> <Q41AMORTGAGELENDER></Q41AMORTGAGELENDER>
<Q24AMORTGAGELENDEROTHER></Q24AMORTGAGELENDEROTHER> <Q24AMORTGAGELENDEROTHER></Q24AMORTGAGELENDEROTHER>
<Q34AMORTGAGELENDEROTHER></Q34AMORTGAGELENDEROTHER> <Q34AMORTGAGELENDEROTHER></Q34AMORTGAGELENDEROTHER>

Loading…
Cancel
Save