module fb { export class ValueguardObjekt { constructor(data: fb.MaeklarObjektDO, oenObjektTyp: fb.MaeklarObjektKategorisObjekttyp) { var self = this; // Efter avstämning med Valueguard så använder vi bar följande 3 typer apartment, house, house_lot if (data.Boendeform.value === fb.FasITDomain.Boendeform.KEDJEHUS /*KEDJEHUS*/) { if (data.Upplaatelseform.value === fb.FasITDomain.Upplaatelseform.BOSTADSRAETT /*BOSTADSRAETT*/) { self.category = 'apartment'; } else { self.category = 'house'; } } else if (data.Boendeform.value === fb.FasITDomain.Boendeform.RADHUS && (data.Upplaatelseform.value === fb.FasITDomain.Upplaatelseform.FRIKOEPT || data.Upplaatelseform.value === fb.FasITDomain.Upplaatelseform.ARRENDE)) { self.category = 'house'; } else if (_.isEmpty(oenObjektTyp) == false) { switch (oenObjektTyp.OenObjekttypId.value) { case fb.FasITDomain.OenObjektTyp.BOSTADSRAETT: { self.category = 'apartment'; break; } case fb.FasITDomain.OenObjektTyp.FRITIDSHUS: { self.category = 'house'; break; } case fb.FasITDomain.OenObjektTyp.GAARD: { // ValueGuard hanterar inte gårdar break; } case fb.FasITDomain.OenObjektTyp.KOMMERSIELL_FASTIGHET: { // ValueGuard hanterar inte kommersiella fastigheter break; } case fb.FasITDomain.OenObjektTyp.OEVRIGT: { if (data.Boendeform.value === 5 /*FRITIDSHUS*/) { self.category = 'house'; } else if (data.Boendeform.value === 7 /*TOMT*/) { self.category = 'house_lot'; } else if (data.Boendeform.value === 2 /*RADHUS*/) { self.category = 'house'; } break; } case fb.FasITDomain.OenObjektTyp.RADHUS: { self.category = 'house'; break; } case fb.FasITDomain.OenObjektTyp.TOMTER: { self.category = 'house_lot'; break; } case fb.FasITDomain.OenObjektTyp.VILLA: { self.category = 'house'; break; } default: { break; } } } if (data.Longitud.value !== null) { self.wgs84Longitude = data.Longitud.value; } if (data.Latitud.value) { self.wgs84Latitude = data.Latitud.value; } if (data.AntalRum.value) { self.nrRoomsReference = data.AntalRum.value; } if (data.BoYta.value) { self.floorAreaReference = data.BoYta.value; } if (data.ByggnadsAar.value && Number(data.ByggnadsAar.value) !== NaN) { self.buildYearReference = Number(data.ByggnadsAar.value); } if (data.Adress.Vaaningsplan.value && Number(data.Adress.Vaaningsplan.value) !== NaN) { self.floorReference = Number(data.Adress.Vaaningsplan.value); } if (data.AntalVaaningar.value) { self.nrRoomsReference = data.AntalVaaningar.value; } if (data.Avgift.value) { self.monthlyFeeReference = data.Avgift.value; } } category: string; wgs84Latitude: number; wgs84Longitude: number; nrRoomsReference: number; floorAreaReference: number; buildYearReference: number; floorReference: number; nrFloorsReference: number; monthlyFeeReference: number; } }