- Refactor code carte

- Delete auto-comments when edit carte and description
This commit is contained in:
Xavier J 2016-01-27 15:48:27 +01:00
parent c461d58297
commit 5513504555
9 changed files with 74 additions and 119 deletions

View file

@ -19,62 +19,39 @@ class Users::CarteController < UsersController
dossier.cadastres.map(&:destroy)
unless params[:json_latlngs].blank?
if dossier.procedure.module_api_carto.quartiers_prioritaires?
qp_list = generate_qp JSON.parse(params[:json_latlngs])
qp_list.each do |key, qp|
qp.merge!({dossier_id: dossier.id})
qp[:geometry] = qp[:geometry].to_json
QuartierPrioritaire.create(qp)
end
end
if dossier.procedure.module_api_carto.cadastre?
cadastre_list = generate_cadastre JSON.parse(params[:json_latlngs])
cadastre_list.each do |cadastre|
cadastre.merge!({dossier_id: dossier.id})
cadastre[:geometry] = cadastre[:geometry].to_json
Cadastre.create(cadastre)
end
end
ModuleApiCartoService.save_qp! dossier, params[:json_latlngs]
ModuleApiCartoService.save_cadastre! dossier, params[:json_latlngs]
end
dossier.update_attributes(json_latlngs: params[:json_latlngs])
if dossier.draft?
redirect_to url_for(controller: :description, action: :show, dossier_id: params[:dossier_id])
else
commentaire_params = {
email: 'Modification localisation',
body: 'La localisation de la demande a été modifiée. Merci de le prendre en compte.',
dossier_id: dossier.id
}
Commentaire.create commentaire_params
redirect_to url_for(controller: :recapitulatif, action: :show, dossier_id: params[:dossier_id])
end
controller = :recapitulatif
controller = :description if dossier.draft?
redirect_to url_for(controller: controller, action: :show, dossier_id: params[:dossier_id])
end
def get_position
tmp_position = Carto::Geocodeur.convert_adresse_to_point(current_user_dossier.etablissement.geo_adresse)
point = Carto::Geocodeur.convert_adresse_to_point(current_user_dossier.etablissement.geo_adresse)
if !tmp_position.point.nil?
render json: {lon: tmp_position.point.x.to_s, lat: tmp_position.point.y.to_s, dossier_id: params[:dossier_id]}
else
render json: {lon: '0', lat: '0', dossier_id: params[:dossier_id]}
lon = '2.428462'
lat = '46.538192'
zoom = '13'
unless point.nil?
lon = point.x.to_s
lat = point.y.to_s
end
render json: {lon: lon, lat: lat, zoom: zoom, dossier_id: params[:dossier_id]}
end
def get_qp
qp = generate_qp JSON.parse(params[:coordinates])
render json: {quartier_prioritaires: qp}
render json: {quartier_prioritaires: ModuleApiCartoService.generate_qp(JSON.parse(params[:coordinates]))}
end
def get_cadastre
cadastres = generate_cadastre JSON.parse(params[:coordinates])
render json: {cadastres: cadastres}
render json: {cadastres: ModuleApiCartoService.generate_cadastre(JSON.parse(params[:coordinates]))}
end
def self.route_authorization
@ -83,28 +60,4 @@ class Users::CarteController < UsersController
api_carto: true
}
end
private
def generate_qp coordinates
qp = {}
coordinates.each_with_index do |coordinate, index|
coordinate = coordinates[index].map { |latlng| [latlng['lng'], latlng['lat']] }
qp = qp.merge CARTO::SGMAP::QuartiersPrioritaires::Adapter.new(coordinate).to_params
end
qp
end
def generate_cadastre coordinates
cadastre = []
coordinates.each_with_index do |coordinate, index|
coordinate = coordinates[index].map { |latlng| [latlng['lng'], latlng['lat']] }
cadastre << CARTO::SGMAP::Cadastre::Adapter.new(coordinate).to_params
end
cadastre.flatten
end
end

View file

@ -50,13 +50,7 @@ class Users::DescriptionController < UsersController
end
end
if !@dossier.draft?
commentaire = Commentaire.create
commentaire.email = 'Modification détails'
commentaire.body = 'Les informations détaillées de la demande ont été modifiées. Merci de le prendre en compte.'
commentaire.dossier = @dossier
commentaire.save
else
if @dossier.draft?
@dossier.initiated!
end