Untitled

mail@pastecode.io avatarunknown
plain_text
a month ago
2.7 kB
1
Indexable
Never
// RealEstate Codes
    func realEstateCodes() -> [String] {
        var codes: [String] = []
        switch category.type {
        case .appart, .studio:
            // housingGroup •  building •  floor  •   apartmentNumber
            if let housingGroup = housingGroup,
               let apartmentNumber = apartmentNumber,
               let building = building,
               let floor = floor
            {
                codes = [housingGroup, building, floor.toString(), apartmentNumber.toString()]
            }
        case .villa:
            //  housingGroup •  street  •   villaNumber
            if let housingGroup = housingGroup,
               let street = street,
               let villaNumber = villaNumber
            {
                codes = [housingGroup, street.prefix(3).uppercased(), villaNumber.toString()]
            }
        case .maison:
            //  housingGroup •  street  •   houseNumber
            if let housingGroup = housingGroup,
               let street = street,
               let houseNumber = houseNumber
            {
                codes = [housingGroup, street.prefix(3).uppercased(), houseNumber.toString()]
            }
        case .bureau:
            // housingGroup •  building •  floor  •   officeNumber
            if let housingGroup = housingGroup,
               let building = building,
               let floor = floor,
               let officeNumber = officeNumber
            {
                codes = [housingGroup, building, floor.toString(), officeNumber.toString()]
            }
        case .terrain:
            // housingGroup •  street  •   lotNumber
            if let housingGroup = housingGroup,
               let street = street,
               let lotNumber = lotNumber
            {
                codes = [housingGroup, street.prefix(3).uppercased(), lotNumber.toString()]
            }
        case .commerce:
            // housingGroup •  building •  floor  •   storeNumber
            if let housingGroup = housingGroup,
               let building = building,
               let floor = floor,
               let storeNumber = storeNumber
            {
                codes = [housingGroup, building, floor.toString(), storeNumber.toString()]
            }
        case .fermes:
            // housingGroup •  street  •   farmNumber
            if let housingGroup = housingGroup,
               let street = street,
               let farmNumber = farmNumber
            {
                codes = [housingGroup, street.prefix(3).uppercased(), farmNumber.toString()]
            }
        }

        return codes
    }