Aggiunta visualizzazione mappa all'aggiunta attività
This commit is contained in:
parent
ddfaf6c23d
commit
b1cb2492f9
|
@ -25,7 +25,42 @@ switch ($resource) {
|
||||||
case 'clienti':
|
case 'clienti':
|
||||||
$id_azienda = setting('Azienda predefinita');
|
$id_azienda = setting('Azienda predefinita');
|
||||||
|
|
||||||
$query = "SELECT an_anagrafiche.idanagrafica AS id, is_bloccata, CONCAT(ragione_sociale, IF(citta IS NULL OR citta = '', '', CONCAT(' (', citta, ')')), IF(an_anagrafiche.deleted_at IS NULL, '', ' (".tr('eliminata').")'), IF(is_bloccata = 1, CONCAT(' (', an_relazioni.descrizione, ')'), '') ) AS descrizione, idtipointervento_default AS idtipointervento, in_tipiintervento.descrizione AS idtipointervento_descrizione, an_anagrafiche.idzona, contratto.id AS id_contratto, contratto.descrizione AS descrizione_contratto, co_pagamenti.id AS id_pagamento, co_pagamenti.descrizione AS desc_pagamento, banca_vendite.id AS id_banca_vendite, CONCAT(banca_vendite.nome, ' - ', banca_vendite.iban) AS descrizione_banca_vendite FROM an_anagrafiche INNER JOIN (an_tipianagrafiche_anagrafiche INNER JOIN an_tipianagrafiche ON an_tipianagrafiche_anagrafiche.idtipoanagrafica=an_tipianagrafiche.idtipoanagrafica) ON an_anagrafiche.idanagrafica=an_tipianagrafiche_anagrafiche.idanagrafica LEFT JOIN in_tipiintervento ON an_anagrafiche.idtipointervento_default=in_tipiintervento.idtipointervento LEFT JOIN an_relazioni ON an_anagrafiche.idrelazione=an_relazioni.id LEFT JOIN (SELECT co_contratti.id, idanagrafica, CONCAT('Contratto ', numero, ' del ', DATE_FORMAT(data_bozza, '%d/%m/%Y'), ' - ', co_contratti.nome, ' [', `co_staticontratti`.`descrizione` , ']') AS descrizione FROM co_contratti LEFT JOIN co_staticontratti ON co_contratti.idstato=co_staticontratti.id WHERE co_contratti.predefined=1 AND is_pianificabile=1) AS contratto ON an_anagrafiche.idanagrafica=contratto.idanagrafica LEFT JOIN co_pagamenti ON an_anagrafiche.idpagamento_vendite=co_pagamenti.id LEFT JOIN co_banche banca_vendite ON co_pagamenti.idconto_vendite = banca_vendite.id_pianodeiconti3 AND banca_vendite.id_anagrafica = ".prepare($id_azienda)." AND banca_vendite.deleted_at IS NULL AND banca_vendite.predefined = 1 |where| ORDER BY ragione_sociale";
|
$query = "SELECT
|
||||||
|
an_anagrafiche.idanagrafica AS id,
|
||||||
|
an_anagrafiche.lat,
|
||||||
|
an_anagrafiche.lng,
|
||||||
|
is_bloccata,
|
||||||
|
CONCAT(ragione_sociale, IF(citta IS NULL OR citta = '', '', CONCAT(' (', citta, ')')), IF(an_anagrafiche.deleted_at IS NULL, '', ' (".tr('eliminata').")'), IF(is_bloccata = 1, CONCAT(' (', an_relazioni.descrizione, ')'), '') ) AS descrizione,
|
||||||
|
idtipointervento_default AS idtipointervento,
|
||||||
|
in_tipiintervento.descrizione AS idtipointervento_descrizione,
|
||||||
|
an_anagrafiche.idzona,
|
||||||
|
contratto.id AS id_contratto,
|
||||||
|
contratto.descrizione AS descrizione_contratto,
|
||||||
|
co_pagamenti.id AS id_pagamento,
|
||||||
|
co_pagamenti.descrizione AS desc_pagamento,
|
||||||
|
banca_vendite.id AS id_banca_vendite,
|
||||||
|
CONCAT(banca_vendite.nome, ' - ', banca_vendite.iban) AS descrizione_banca_vendite
|
||||||
|
FROM
|
||||||
|
an_anagrafiche
|
||||||
|
INNER JOIN (an_tipianagrafiche_anagrafiche
|
||||||
|
INNER JOIN an_tipianagrafiche
|
||||||
|
ON an_tipianagrafiche_anagrafiche.idtipoanagrafica=an_tipianagrafiche.idtipoanagrafica)
|
||||||
|
ON an_anagrafiche.idanagrafica=an_tipianagrafiche_anagrafiche.idanagrafica LEFT JOIN in_tipiintervento ON an_anagrafiche.idtipointervento_default=in_tipiintervento.idtipointervento
|
||||||
|
LEFT JOIN
|
||||||
|
an_relazioni
|
||||||
|
ON an_anagrafiche.idrelazione=an_relazioni.id
|
||||||
|
LEFT JOIN
|
||||||
|
(SELECT co_contratti.id, idanagrafica, CONCAT('Contratto ', numero, ' del ', DATE_FORMAT(data_bozza, '%d/%m/%Y'), ' - ', co_contratti.nome, ' [', `co_staticontratti`.`descrizione` , ']') AS descrizione FROM co_contratti LEFT JOIN co_staticontratti ON co_contratti.idstato=co_staticontratti.id WHERE co_contratti.predefined=1 AND is_pianificabile=1) AS contratto
|
||||||
|
ON an_anagrafiche.idanagrafica=contratto.idanagrafica
|
||||||
|
LEFT JOIN
|
||||||
|
co_pagamenti
|
||||||
|
ON an_anagrafiche.idpagamento_vendite=co_pagamenti.id
|
||||||
|
LEFT JOIN
|
||||||
|
co_banche banca_vendite
|
||||||
|
ON co_pagamenti.idconto_vendite = banca_vendite.id_pianodeiconti3 AND banca_vendite.id_anagrafica = ".prepare($id_azienda)." AND banca_vendite.deleted_at IS NULL AND banca_vendite.predefined = 1
|
||||||
|
|where|
|
||||||
|
ORDER BY
|
||||||
|
ragione_sociale";
|
||||||
|
|
||||||
foreach ($elements as $element) {
|
foreach ($elements as $element) {
|
||||||
$filter[] = 'an_anagrafiche.idanagrafica='.prepare($element);
|
$filter[] = 'an_anagrafiche.idanagrafica='.prepare($element);
|
||||||
|
@ -267,7 +302,24 @@ switch ($resource) {
|
||||||
*/
|
*/
|
||||||
case 'sedi':
|
case 'sedi':
|
||||||
if (isset($superselect['idanagrafica'])) {
|
if (isset($superselect['idanagrafica'])) {
|
||||||
$query = "SELECT * FROM (SELECT '0' AS id, (SELECT idzona FROM an_anagrafiche |where|) AS idzona, CONCAT_WS(' - ', \"".tr('Sede legale')."\" , (SELECT CONCAT (citta, IF(indirizzo!='',CONCAT(' (', indirizzo, ')'), ''), ' (',ragione_sociale,')') FROM an_anagrafiche |where|)) AS descrizione UNION SELECT id, idzona, CONCAT_WS(' - ', nomesede, CONCAT(citta, IF(indirizzo!='',CONCAT(' (', indirizzo, ')'), '')) ) FROM an_sedi |where|) AS tab HAVING descrizione LIKE ".prepare('%'.$search.'%').' ORDER BY descrizione';
|
$query = "
|
||||||
|
SELECT
|
||||||
|
*
|
||||||
|
FROM
|
||||||
|
(SELECT '0' AS id, (SELECT lat FROM an_anagrafiche |where|) AS lat, (SELECT lng FROM an_anagrafiche |where|) AS lng, (SELECT idzona FROM an_anagrafiche |where|) AS idzona, CONCAT_WS(' - ', \"".tr('Sede legale')."\" , (SELECT CONCAT (citta, IF(indirizzo!='',CONCAT(' (', indirizzo, ')'), ''), ' (',ragione_sociale,')') FROM an_anagrafiche |where|)) AS descrizione
|
||||||
|
|
||||||
|
UNION
|
||||||
|
|
||||||
|
SELECT
|
||||||
|
id,
|
||||||
|
lat,
|
||||||
|
lng,
|
||||||
|
idzona,
|
||||||
|
CONCAT_WS(' - ', nomesede, CONCAT(citta, IF(indirizzo!='',CONCAT(' (', indirizzo, ')'), '')) ) FROM an_sedi |where|) AS tab
|
||||||
|
HAVING
|
||||||
|
descrizione LIKE ".prepare('%'.$search.'%').'
|
||||||
|
ORDER BY
|
||||||
|
descrizione';
|
||||||
|
|
||||||
foreach ($elements as $element) {
|
foreach ($elements as $element) {
|
||||||
$filter[] = 'id='.prepare($element);
|
$filter[] = 'id='.prepare($element);
|
||||||
|
|
|
@ -218,6 +218,30 @@ echo '
|
||||||
</div>
|
</div>
|
||||||
</div>';
|
</div>';
|
||||||
|
|
||||||
|
|
||||||
|
$api_key = setting('Google Maps API key');
|
||||||
|
$map_load_message = tr('Clicca per visualizzare');
|
||||||
|
|
||||||
|
if (!empty($api_key)) {
|
||||||
|
echo '
|
||||||
|
<!-- POSIZIONE -->
|
||||||
|
<div class="box box-info collapsable collapsed-box">
|
||||||
|
<div class="box-header with-border">
|
||||||
|
<h3 class="box-title">'.tr('Posizione').'</h3>
|
||||||
|
<div class="box-tools pull-right">
|
||||||
|
<button type="button" class="btn btn-box-tool" data-widget="collapse" onclick="autoload_mappa=true; caricaMappa(current_lat, current_lng);">
|
||||||
|
<i class="fa fa-plus"></i>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="box-body">
|
||||||
|
<div id="map-edit" style="height: 300px;width: 100%;display: flex;align-items: center;justify-content: center;"></div>
|
||||||
|
</div>
|
||||||
|
</div>';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
$espandi_dettagli = setting('Espandi automaticamente la sezione "Dettagli aggiuntivi"');
|
$espandi_dettagli = setting('Espandi automaticamente la sezione "Dettagli aggiuntivi"');
|
||||||
echo '
|
echo '
|
||||||
<!-- DATI AGGIUNTIVI -->
|
<!-- DATI AGGIUNTIVI -->
|
||||||
|
@ -443,6 +467,7 @@ echo '
|
||||||
var ordine = input("idordine");
|
var ordine = input("idordine");
|
||||||
var referente = input("idreferente");
|
var referente = input("idreferente");
|
||||||
var cliente_finale = input("idclientefinale");
|
var cliente_finale = input("idclientefinale");
|
||||||
|
var autoload_mappa = false;
|
||||||
|
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
if(!anagrafica.get()){
|
if(!anagrafica.get()){
|
||||||
|
@ -531,6 +556,8 @@ echo '
|
||||||
input("idcontratto").getElement()
|
input("idcontratto").getElement()
|
||||||
.selectSetNew(data.id_contratto, data.descrizione_contratto);
|
.selectSetNew(data.id_contratto, data.descrizione_contratto);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
caricaMappa(data.lat, data.lng);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (data !== undefined) {
|
if (data !== undefined) {
|
||||||
|
@ -574,6 +601,8 @@ echo '
|
||||||
if (data) {
|
if (data) {
|
||||||
input("idzona").set(data.idzona ? data.idzona : "");
|
input("idzona").set(data.idzona ? data.idzona : "");
|
||||||
// session_set("superselect,idzona", $(this).selectData().idzona, 0);
|
// session_set("superselect,idzona", $(this).selectData().idzona, 0);
|
||||||
|
|
||||||
|
caricaMappa(data.lat, data.lng);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -727,4 +756,54 @@ echo '
|
||||||
$("#data_fine_ricorrenza").attr("required", false);
|
$("#data_fine_ricorrenza").attr("required", false);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
var marker = null;
|
||||||
|
var position = null;
|
||||||
|
var map = null;
|
||||||
|
var current_lat = null;
|
||||||
|
var current_lng = null;
|
||||||
|
|
||||||
|
function caricaMappa(lat, lng) {
|
||||||
|
current_lat = lat;
|
||||||
|
current_lng = lng;
|
||||||
|
|
||||||
|
if (!autoload_mappa){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
const map_div = $("#map-edit");
|
||||||
|
|
||||||
|
if (input("idanagrafica").getData("select-options")) {
|
||||||
|
if (map === null) {
|
||||||
|
if (lat || lng) {
|
||||||
|
$.getScript("//maps.googleapis.com/maps/api/js?libraries=places&key='.$api_key.'", function() {
|
||||||
|
const map_element = map_div[0];
|
||||||
|
position = new google.maps.LatLng(lat, lng);
|
||||||
|
|
||||||
|
// Create a Google Maps native view under the map_canvas div.
|
||||||
|
map = new google.maps.Map(map_element, {
|
||||||
|
zoom: 14,
|
||||||
|
scrollwheel: false,
|
||||||
|
mapTypeControl: true,
|
||||||
|
mapTypeId: "roadmap",
|
||||||
|
mapTypeControlOptions: {
|
||||||
|
style: google.maps.MapTypeControlStyle.DROPDOWN_MENU,
|
||||||
|
mapTypeIds: ["roadmap", "terrain"],
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
map.setCenter(position);
|
||||||
|
marker = new google.maps.Marker({
|
||||||
|
position: position,
|
||||||
|
map: map,
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
position = new google.maps.LatLng(lat, lng);
|
||||||
|
marker.setPosition(position);
|
||||||
|
map.setCenter(position);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
</script>';
|
</script>';
|
||||||
|
|
Loading…
Reference in New Issue