-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmodels.go
105 lines (89 loc) · 2.33 KB
/
models.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
package main
import (
"encoding/json"
"io/ioutil"
"path/filepath"
)
type Provinsi []ProvinsiElement
type Kecamatan []KecamatanElement
type Kabupaten []KabupatenElement
type Kelurahan []KelurahanElement
func UnmarshalProvinsi(data []byte) (Provinsi, error) {
var r Provinsi
err := json.Unmarshal(data, &r)
return r, err
}
func (r *Provinsi) Marshal() ([]byte, error) {
return json.Marshal(r)
}
type ProvinsiElement struct {
ID int64 `json:"id"`
Provinsi string `json:"provinsi"`
Bsni string `json:"p_bsni"`
}
func UnmarshalKabupaten(data []byte) (Kabupaten, error) {
var r Kabupaten
err := json.Unmarshal(data, &r)
return r, err
}
func (r *Kabupaten) Marshal() ([]byte, error) {
return json.Marshal(r)
}
type KabupatenElement struct {
ID int64 `json:"id"`
ProvId int64 `json:"prov_id"`
KabKota string `json:"kab_kota"`
Ibukota string `json:"ibukota"`
Bsni string `json:"k_bsni"`
}
func UnmarshalKecamatan(data []byte) (Kecamatan, error) {
var r Kecamatan
err := json.Unmarshal(data, &r)
return r, err
}
func (r *Kecamatan) Marshal() ([]byte, error) {
return json.Marshal(r)
}
type KecamatanElement struct {
ID int64 `json:"id"`
KabkotId int64 `json:"kabkot_id"`
Kec string `json:"kec"`
}
func UnmarshalKelurahan(data []byte) (Kelurahan, error) {
var r Kelurahan
err := json.Unmarshal(data, &r)
return r, err
}
func (r *Kelurahan) Marshal() ([]byte, error) {
return json.Marshal(r)
}
type KelurahanElement struct {
ID int64 `json:"id"`
KecId int64 `json:"kec_id"`
Kelurahan string `json:"kelu"`
Pos int64 `json:"pos"`
}
func loadProvinsi() Provinsi {
filePath, _ := filepath.Abs("./dirty/provinsi.json")
file, _ := ioutil.ReadFile(filePath)
provinsi, _ := UnmarshalProvinsi(file)
return provinsi
}
func loadKabupaten() Kabupaten {
filePath, _ := filepath.Abs("./dirty/kabupaten.json")
file, _ := ioutil.ReadFile(filePath)
kabupaten, _ := UnmarshalKabupaten(file)
return kabupaten
}
func loadKecamatan() Kecamatan {
filePath, _ := filepath.Abs("./dirty/kecamatan.json")
file, _ := ioutil.ReadFile(filePath)
kecamatan, _ := UnmarshalKecamatan(file)
return kecamatan
}
func loadKelurahan() Kelurahan {
filePath, _ := filepath.Abs("./dirty/kelurahan.json")
file, _ := ioutil.ReadFile(filePath)
kelurahan, _ := UnmarshalKelurahan(file)
return kelurahan
}