forked from okfn-brasil/gastos_abertos
/
manage.py
61 lines (43 loc) · 1.41 KB
/
manage.py
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
# -*- coding: utf-8 -*-
from flask.ext.script import Manager, Shell
from gastosabertos.extensions import db
from gastosabertos import create_app
manager = Manager(create_app)
manager.add_option('-i', '--inst', dest='instance_folder', required=False)
manager.add_command('shell', Shell(make_context=lambda: {
'app': manager.app,
'db': db,
}))
@manager.command
def run():
"""Run in local machine."""
manager.app.run()
@manager.command
def test():
"""Run tests."""
return
@manager.command
def initdb():
"""Init or reset database"""
db.drop_all()
db.create_all()
@manager.command
def importdata():
"""Import the data to the database"""
from utils.import_revenue_codes import import_codes
from utils import (import_revenue, import_contrato,
import_execucao, geocode_execucao)
# Revenue
import_codes(db)
import_revenue.insert_all(db, csv_file='data/receitas_min.csv')
# insert_all(db, csv_file='data/receitas_min.csv', lines_per_insert=80)
# Contratos
import_contrato.insert_all(db, csv_file='data/contratos-2014.xls')
# Execucao
folder = '../gastos_abertos_dados/Orcamento/execucao/'
import_execucao.insert_all(db, path=folder)
data_folder = 'utils/geocoder/data'
terms_folder = 'utils/geocoder/terms'
geocode_execucao.geocode_all(db, data_folder, terms_folder)
if __name__ == "__main__":
manager.run()