summaryrefslogtreecommitdiff
path: root/indoteknik_api/controllers/api_v1/city.py
blob: afe92c4aa0eeac4407931ebf266f30a5bcd2957b (plain)
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
from .. import controller
from odoo import http
from odoo.http import request

class City(controller.Controller):
    prefix = '/api/v1/'

    @http.route(prefix + 'city', auth='public', methods=['GET', 'OPTIONS'])
    @controller.Controller.must_authorized()
    def get_city(self, **kw):
        parameters = []
        
        name = kw.get('name')
        if name:
            name = '%' + name.replace(' ', '%') + '%'
            parameters.append(('name', 'ilike', name))

        state_id = kw.get('state_id')
        if state_id:
            parameters.append(('state_id', '=', int(state_id)))

        districts = request.env['vit.kota'].search(parameters)
        data = []
        for district in districts:
            data.append({ 'id': district.id, 'name': district.name })
        
        return self.response(data)