예제 #1
0
파일: fonte.py 프로젝트: iCarto/utentes-api
 def update_from_json(self, json):
     self.gid        = json.get('id')
     self.tipo_agua  = json.get('tipo_agua')
     self.tipo_fonte = json.get('tipo_fonte')
     self.lat_lon    = json.get('lat_lon')
     self.d_dado     = to_date(json.get('d_dado'))
     self.c_soli     = to_decimal(json.get('c_soli'))
     self.c_max      = to_decimal(json.get('c_max'))
     self.c_real     = to_decimal(json.get('c_real'))
     self.contador   = json.get('contador')
     self.metodo_est = json.get('metodo_est')
     self.observacio = json.get('observacio')
예제 #2
0
    def update_from_json(self, json, lic_nro_sequence):
        self.gid        = json.get('id')
        self.exp_id     = json.get('exp_id')
        self.exp_name   = json.get('exp_name')
        self.pagos      = json.get('pagos')
        self.d_soli     = to_date(json.get('d_soli'))
        self.observacio = json.get('observacio')
        self.loc_provin = json.get('loc_provin')
        self.loc_distri = json.get('loc_distri')
        self.loc_posto  = json.get('loc_posto')
        self.loc_nucleo = json.get('loc_nucleo')
        self.loc_endere = json.get('loc_endere')
        self.loc_bacia  = json.get('loc_bacia')
        self.loc_subaci = json.get('loc_subaci')
        self.loc_rio    = json.get('loc_rio')
        self.c_soli     = to_decimal(json.get('c_soli'))
        self.c_licencia = to_decimal(json.get('c_licencia'))
        self.c_real     = to_decimal(json.get('c_real'))
        self.c_estimado = to_decimal(json.get('c_estimado'))
        self.the_geom = update_geom(self.the_geom, json)
        update_area(self, json)


        self.update_and_validate_activity(json)

        # update relationships
        update_array(self.fontes,
                     json.get('fontes'),
                     Fonte.create_from_json)

        update_array(self.licencias,
                     json.get('licencias'),
                     Licencia.create_from_json)
        for licencia in self.licencias:
            if not licencia.lic_nro:
                licencia.lic_nro = self.exp_id + '-{:03d}'.format(lic_nro_sequence)
                lic_nro_sequence += 1
예제 #3
0
 def update_from_json(self, json):
     self.gid = json.get("id")
     self.lic_nro = json.get("lic_nro")
     self.lic_tipo = json.get("lic_tipo")
     self.finalidade = json.get("finalidade")
     self.cadastro = json.get("cadastro")
     self.estado = json.get("estado")
     self.d_emissao = to_date(json.get("d_emissao"))
     self.d_validade = to_date(json.get("d_validade"))
     self.c_soli_tot = to_decimal(json.get("c_soli_tot"))
     self.c_soli_int = to_decimal(json.get("c_soli_int"))
     self.c_soli_fon = to_decimal(json.get("c_soli_fon"))
     self.c_licencia = to_decimal(json.get("c_licencia"))
     self.c_real_tot = to_decimal(json.get("c_real_tot"))
     self.c_real_int = to_decimal(json.get("c_real_int"))
     self.c_real_fon = to_decimal(json.get("c_real_fon"))
예제 #4
0
    def update_from_json(self, json):
        for c in self.__mapper__.columns:
            name = c.name
            jsonValue = json['properties'].get(name) or json['properties'].get(name.upper())
            if name == 'geom':
                jsonValue = json['geometry']

            if jsonValue is None:
                continue

            if isinstance(c.type, Numeric):
                value = to_decimal(jsonValue)
            elif isinstance(c.type, Date):
                value = to_date(jsonValue)
            elif isinstance(c.type, Geometry):
                value = WKTElement(wkt.dumps(jsonValue), srid=4326)
                value = value.ST_Transform(32737)
            else:
                value = jsonValue
            setattr(self, name, value)