Completed
Push — master ( 0e2af0...ec5bb6 )
by
unknown
9s
created

locatie_adres_adapter()   B

Complexity

Conditions 1

Size

Total Lines 36

Duplication

Lines 0
Ratio 0 %

Importance

Changes 3
Bugs 1 Features 0
Metric Value
cc 1
c 3
b 1
f 0
dl 0
loc 36
rs 8.8571
1
# -*- coding: utf-8 -*-
2
3
4
def locatie_element_adapter(obj, request=None):
5
    '''
6
    Adapter for rendering
7
    :class:`oe_geoutils.data.models.LocatieElement` to json.
8
9
    Add the adapter to `jsonpublish`
10
    from jsonpublish import register_adapter
11
    register_adapter(LocatieElement, locatie_element_adapter)
12
13
    Add the adapter to your :class:`pyramid.renderers.JSON` json_renderer
14
    from pyramid.renderers import JSON
15
    json_renderer = JSON()
16
    json_renderer.add_adapter(LocatieElement, locatie_element_adapter)
17
    '''
18
    locatie_element = {
19
        'id': obj.id,
20
        'type': obj.type,
21
        'provincie': {
22
            'niscode': obj.provincie_niscode,
23
            'naam': obj.provincie_naam
24
        },
25
        'gemeente': {
26
            'niscode': obj.gemeente_niscode,
27
            'naam': obj.gemeente_naam,
28
            'id': obj.gemeente_crab_id
29
        }
30
31
    }
32
    return locatie_element
33
34
35
def perceel_adapter(obj, request=None):
36
    '''
37
    Adapter for rendering
38
    :class:`oe_geoutils.data.models.Perceel` to json.
39
40
    Add the adapter to `jsonpublish`
41
    from jsonpublish import register_adapter
42
    register_adapter(Perceel, perceel_adapter)
43
44
    Add the adapter to your :class:`pyramid.renderers.JSON` json_renderer
45
    from pyramid.renderers import JSON
46
    json_renderer = JSON()
47
    json_renderer.add_adapter(Perceel, perceel_adapter)
48
    '''
49
    perceel = {
50
        'id': obj.id,
51
        'type': obj.type,
52
        'provincie': {
53
            'niscode': obj.provincie_niscode,
54
            'naam': obj.provincie_naam
55
        },
56
        'gemeente': {
57
            'niscode': obj.gemeente_niscode,
58
            'naam': obj.gemeente_naam,
59
            'id': obj.gemeente_crab_id
60
        }
61
62
    }
63
    if obj.capakey and len(obj.capakey) > 0:
64
        perceel.update({
65
            'perceel': {
66
                'afdeling': obj.afdeling,
67
                'sectie': obj.sectie,
68
                'perceel': obj.perceel,
69
                'capakey': obj.capakey
70
            }
71
        })
72
    return perceel
73
74
75
def openbaar_domein_adapter(obj, request=None):
76
    '''
77
    Adapter for rendering
78
    :class:`oe_geoutils.data.models.OpenbaarDomein` to json.
79
80
    Add the adapter to `jsonpublish`
81
    from jsonpublish import register_adapter
82
    register_adapter(OpenbaarDomein, openbaar_domein_adapter)
83
84
    Add the adapter to your :class:`pyramid.renderers.JSON` json_renderer
85
    from pyramid.renderers import JSON
86
    json_renderer = JSON()
87
    json_renderer.add_adapter(OpenbaarDomein, openbaar_domein_adapter)
88
    '''
89
    openbaar_domein = {
90
        'id': obj.id,
91
        'type': obj.type,
92
        'provincie': {
93
            'niscode': obj.provincie_niscode,
94
            'naam': obj.provincie_naam
95
        },
96
        'gemeente': {
97
            'niscode': obj.gemeente_niscode,
98
            'naam': obj.gemeente_naam,
99
            'id': obj.gemeente_crab_id
100
        },
101
        'omschrijving': obj.omschrijving
102
    }
103
    return openbaar_domein
104
105
106
def locatie_adres_adapter(obj, request=None):
107
    '''
108
    Adapter for rendering
109
    :class:`oe_geoutils.data.models.LocatieAdres` to json.
110
111
    Add the adapter to `jsonpublish`
112
    from jsonpublish import register_adapter
113
    register_adapter(LocatieAdres, locatie_adres_adapter)
114
115
    Add the adapter to your :class:`pyramid.renderers.JSON` json_renderer
116
    from pyramid.renderers import JSON
117
    json_renderer = JSON()
118
    json_renderer.add_adapter(LocatieAdres, locatie_adres_adapter)
119
    '''
120
    locatie_adres = {
121
        'id': obj.id,
122
        'type': obj.type,
123
        'provincie': {
124
            'niscode': obj.provincie_niscode,
125
            'naam': obj.provincie_naam
126
        },
127
        'gemeente': {
128
            'niscode': obj.gemeente_niscode,
129
            'naam': obj.gemeente_naam,
130
            'id': obj.gemeente_crab_id
131
        },
132
        'huisnummer_id': obj.huisnummer_id,
133
        'huisnummer': obj.huisnummer,
134
        'subadres_id': obj.subadres_id,
135
        'subadres': obj.subadres,
136
        'straat': obj.straat,
137
        'straat_id': obj.straat_id,
138
        'postcode': obj.postcode,
139
        'land': obj.land
140
    }
141
    return locatie_adres
142