Merge branch 'fronkdev' into 'master'
Added FttxLocation ex state circles to PreorderMap See merge request fronk/thetool!1966
This commit is contained in:
@@ -1370,6 +1370,7 @@ $pagination_entity_name = "Vorbestellungen";
|
|||||||
|
|
||||||
var preorderMap;
|
var preorderMap;
|
||||||
var preorders = [];
|
var preorders = [];
|
||||||
|
var fttxlocations = [];
|
||||||
var markers = [];
|
var markers = [];
|
||||||
var markerState = true;
|
var markerState = true;
|
||||||
var mapCenterPos = [<?=TT_PLACEHOLDER_GPS_LAT?>, <?=TT_PLACEHOLDER_GPS_LONG?>];
|
var mapCenterPos = [<?=TT_PLACEHOLDER_GPS_LAT?>, <?=TT_PLACEHOLDER_GPS_LONG?>];
|
||||||
@@ -1536,6 +1537,7 @@ $pagination_entity_name = "Vorbestellungen";
|
|||||||
|
|
||||||
//fetch fcps and show on map
|
//fetch fcps and show on map
|
||||||
getFCPs(preorderMap);
|
getFCPs(preorderMap);
|
||||||
|
addFttxLocations(preorderMap);
|
||||||
|
|
||||||
// calculate center position
|
// calculate center position
|
||||||
mapCenterPos = GetCenterFromDegrees(all_coords);
|
mapCenterPos = GetCenterFromDegrees(all_coords);
|
||||||
@@ -1614,6 +1616,29 @@ $pagination_entity_name = "Vorbestellungen";
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function addFttxLocations(preorderMap) {
|
||||||
|
fttx_c = {
|
||||||
|
"gross planning": "grey",
|
||||||
|
"detailed planning": "yellow",
|
||||||
|
"plan released": "deeppink",
|
||||||
|
"assigend": "aqua",
|
||||||
|
"executed": "darkblue",
|
||||||
|
"documented": "lime",
|
||||||
|
"canceled": "darkred",
|
||||||
|
};
|
||||||
|
|
||||||
|
fttxlocations.forEach(loc => {
|
||||||
|
if(!loc.gps_lat || !loc.gps_long || !loc.ex_state) return;
|
||||||
|
|
||||||
|
var circle = L.circleMarker([loc.gps_lat, loc.gps_long], {
|
||||||
|
color: fttx_c[loc.ex_state.toLowerCase()],
|
||||||
|
fillColor: fttx_c[loc.ex_state.toLowerCase()],
|
||||||
|
fillOpacity: .8,
|
||||||
|
radius: 6
|
||||||
|
}).bindTooltip(loc.street + "<br />" + loc.zip + " " + loc.city + "<br /><br />Execution State: " + loc.ex_state).addTo(preorderMap);
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
function centerMap() {
|
function centerMap() {
|
||||||
preorderMap.setView(mapCenterPos, 12);
|
preorderMap.setView(mapCenterPos, 12);
|
||||||
}
|
}
|
||||||
@@ -1624,19 +1649,25 @@ $pagination_entity_name = "Vorbestellungen";
|
|||||||
|
|
||||||
$.post('<?=self::getUrl("Preorder", "Api")?>', {
|
$.post('<?=self::getUrl("Preorder", "Api")?>', {
|
||||||
'do': "getFilteredPreorders",
|
'do': "getFilteredPreorders",
|
||||||
filter: filter
|
filter: filter,
|
||||||
},function(success) {
|
},function(success) {
|
||||||
if(success.status == "OK") {
|
if(success.status == "OK") {
|
||||||
|
changes = false;
|
||||||
if(Array.isArray(success.result.preorders)) {
|
if(Array.isArray(success.result.preorders)) {
|
||||||
preorders = success.result.preorders;
|
preorders = success.result.preorders;
|
||||||
|
changes = true;
|
||||||
|
}
|
||||||
|
if(Array.isArray(success.result.fttxlocations))
|
||||||
|
fttxlocations = success.result.fttxlocations;
|
||||||
|
changes = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(changes) {
|
||||||
renderMap();
|
renderMap();
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
},
|
|
||||||
'json'
|
'json'
|
||||||
);
|
);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function getFilter() {
|
function getFilter() {
|
||||||
|
|||||||
@@ -1490,10 +1490,19 @@ class PreorderController extends mfBaseController {
|
|||||||
|
|
||||||
private function getFilteredPreordersApi() {
|
private function getFilteredPreordersApi() {
|
||||||
$preorders = [];
|
$preorders = [];
|
||||||
|
$fttxlocations = [];
|
||||||
|
|
||||||
$filter = [];
|
$filter = [];
|
||||||
|
$type = ["preorders", "fttx"];
|
||||||
if(is_array($this->request->filter)) {
|
if(is_array($this->request->filter)) {
|
||||||
$filter = $this->request->filter;
|
$filter = $this->request->filter;
|
||||||
}
|
}
|
||||||
|
if($this->request->type == "preorders") {
|
||||||
|
$type = ["preorders"];
|
||||||
|
}
|
||||||
|
if($this->request->type == "fttxlocations") {
|
||||||
|
$type = ["fttx"];
|
||||||
|
}
|
||||||
|
|
||||||
$filter = $this->getPreparedFilter($filter);
|
$filter = $this->getPreparedFilter($filter);
|
||||||
|
|
||||||
@@ -1558,40 +1567,104 @@ class PreorderController extends mfBaseController {
|
|||||||
|
|
||||||
if(!$filter['preordercampaign_id']) $filter['preordercampaign_id'] = 0;
|
if(!$filter['preordercampaign_id']) $filter['preordercampaign_id'] = 0;
|
||||||
|
|
||||||
//var_dump($filter);exit;
|
|
||||||
$results = PreorderModel::searchActive($filter);
|
|
||||||
foreach($results as $preorder) {
|
|
||||||
//$this->log->debug("building status: ".print_r($building->status,true));
|
|
||||||
$data = clone($preorder->data);
|
|
||||||
unset($data->workorder_export_data);
|
|
||||||
unset($data->submit_request);
|
|
||||||
unset($data->addon_services);
|
|
||||||
$data->id = $preorder->id;
|
|
||||||
$data->status_code = $preorder->status->code;
|
|
||||||
$data->adrcd = $preorder->adb_hausnummer->adrcd;
|
|
||||||
$data->extref = $preorder->adb_hausnummer->extref;
|
|
||||||
$data->adb_strasse = $preorder->adb_hausnummer->strasse->name;
|
|
||||||
$data->adb_hausnummer = $preorder->adb_hausnummer->hausnummer;
|
|
||||||
$data->adb_plz = $preorder->adb_hausnummer->plz->plz;
|
|
||||||
$data->adb_ort = $preorder->adb_hausnummer->ortschaft->name;
|
|
||||||
$data->adb_gemeinde = $preorder->adb_hausnummer->strasse->gemeinde->name;
|
|
||||||
$data->gps_lat = $preorder->adb_hausnummer->gps_lat;
|
|
||||||
$data->gps_long = $preorder->adb_hausnummer->gps_long;
|
|
||||||
|
|
||||||
if($this->me->is("Admin")) {
|
|
||||||
$data->borderpoint_lat = ($preorder->adb_hausnummer->borderpoint_lat) ? json_decode($preorder->adb_hausnummer->borderpoint_lat) : null;
|
if(in_array("preorders", $type)) {
|
||||||
$data->borderpoint_long = ($preorder->adb_hausnummer->borderpoint_long) ? json_decode($preorder->adb_hausnummer->borderpoint_long) : null;
|
$this->log->debug(__METHOD__.": requested preorders");
|
||||||
//$data->trenches = ($preorder->adb_hausnummer->trenches) ? json_decode($preorder->adb_hausnummer->trenches) : null;
|
//var_dump($filter);exit;
|
||||||
$data->home_trench = ($preorder->adb_hausnummer->home_trench) ? json_decode($preorder->adb_hausnummer->home_trench) : null;
|
$results = PreorderModel::searchActive($filter);
|
||||||
|
foreach($results as $preorder) {
|
||||||
|
//$this->log->debug("building status: ".print_r($building->status,true));
|
||||||
|
$data = clone($preorder->data);
|
||||||
|
unset($data->workorder_export_data);
|
||||||
|
unset($data->submit_request);
|
||||||
|
unset($data->addon_services);
|
||||||
|
$data->id = $preorder->id;
|
||||||
|
$data->status_code = $preorder->status->code;
|
||||||
|
$data->adrcd = $preorder->adb_hausnummer->adrcd;
|
||||||
|
$data->extref = $preorder->adb_hausnummer->extref;
|
||||||
|
$data->adb_strasse = $preorder->adb_hausnummer->strasse->name;
|
||||||
|
$data->adb_hausnummer = $preorder->adb_hausnummer->hausnummer;
|
||||||
|
$data->adb_plz = $preorder->adb_hausnummer->plz->plz;
|
||||||
|
$data->adb_ort = $preorder->adb_hausnummer->ortschaft->name;
|
||||||
|
$data->adb_gemeinde = $preorder->adb_hausnummer->strasse->gemeinde->name;
|
||||||
|
$data->gps_lat = $preorder->adb_hausnummer->gps_lat;
|
||||||
|
$data->gps_long = $preorder->adb_hausnummer->gps_long;
|
||||||
|
|
||||||
|
if($this->me->is("Admin")) {
|
||||||
|
$data->borderpoint_lat = ($preorder->adb_hausnummer->borderpoint_lat) ? json_decode($preorder->adb_hausnummer->borderpoint_lat) : null;
|
||||||
|
$data->borderpoint_long = ($preorder->adb_hausnummer->borderpoint_long) ? json_decode($preorder->adb_hausnummer->borderpoint_long) : null;
|
||||||
|
//$data->trenches = ($preorder->adb_hausnummer->trenches) ? json_decode($preorder->adb_hausnummer->trenches) : null;
|
||||||
|
$data->home_trench = ($preorder->adb_hausnummer->home_trench) ? json_decode($preorder->adb_hausnummer->home_trench) : null;
|
||||||
|
}
|
||||||
|
|
||||||
|
$data->type_label = __($data->type, "preorder");
|
||||||
|
$data->connection_type_label = __($data->connection_type, "preorder");
|
||||||
|
|
||||||
|
$preorders[] = $data;
|
||||||
}
|
}
|
||||||
|
|
||||||
$data->type_label = __($data->type, "preorder");
|
|
||||||
$data->connection_type_label = __($data->connection_type, "preorder");
|
|
||||||
|
|
||||||
$preorders[] = $data;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return ["preorders" => $preorders];
|
if(in_array("fttx", $type)) {
|
||||||
|
$this->log->debug(__METHOD__.": requested fttxlocations");
|
||||||
|
// get all fttp locations in current campaign network with status
|
||||||
|
|
||||||
|
if($filter["preordercampaign_id"]) {
|
||||||
|
$my_adb_networks = [];
|
||||||
|
|
||||||
|
$campaign = new Preordercampaign($filter["preordercampaign_id"]);
|
||||||
|
if($campaign->id) {
|
||||||
|
$salesclusters = $campaign->salesclusters;
|
||||||
|
if(is_array($salesclusters) && count($salesclusters)) {
|
||||||
|
foreach($salesclusters as $sc) {
|
||||||
|
$my_adb_networks[] = new ADBNetzgebiet($sc->id);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$my_adb_networks[] = $campaign->adb_netzgebiet;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach($my_adb_networks as $adb_network) {
|
||||||
|
if(!$adb_network->isLoaded()) continue;
|
||||||
|
|
||||||
|
/*foreach(ADBHausnummerModel::search(['netzgebiet_id' => $adb_network->id]) as $hausnummer) {
|
||||||
|
$loc = [];
|
||||||
|
$loc["street"] = $hausnummer->strasse->name . " " . $hausnummer->hausnummer;
|
||||||
|
$loc["zip"] = $hausnummer->plz->plz;
|
||||||
|
$loc["city"] = $hausnummer->strasse->gemeinde->name;
|
||||||
|
|
||||||
|
$loc["gps_lat"] = $hausnummer->gps_lat;
|
||||||
|
$loc["gps_long"] = $hausnummer->gps_long;
|
||||||
|
$loc["ex_state"] = $hausnummer->rimo_ex_state;
|
||||||
|
$loc["op_state"] = $hausnummer->rimo_op_state;
|
||||||
|
|
||||||
|
$fttxlocations[] = $loc;
|
||||||
|
}*/
|
||||||
|
|
||||||
|
$adb = FronkDB::singleton(ADDRESSDB_DBHOST, ADDRESSDB_DBUSER, ADDRESSDB_DBPASS, ADDRESSDB_DBNAME);
|
||||||
|
$sql = "SELECT * FROM view_hausnummer WHERE netzgebiet_id=".$adb_network->id;
|
||||||
|
$res = $adb->query($sql);
|
||||||
|
while($data = $adb->fetch_object($res)) {
|
||||||
|
$loc = [];
|
||||||
|
$loc["street"] = $data->strasse . " " . $data->hausnummer;
|
||||||
|
$loc["zip"] = $data->plz;
|
||||||
|
$loc["city"] = $data->gemeinde;
|
||||||
|
|
||||||
|
$loc["gps_lat"] = $data->gps_lat;
|
||||||
|
$loc["gps_long"] = $data->gps_long;
|
||||||
|
$loc["ex_state"] = $data->rimo_ex_state;
|
||||||
|
$loc["op_state"] = $data->rimo_op_state;
|
||||||
|
|
||||||
|
$fttxlocations[] = $loc;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return [
|
||||||
|
"preorders" => $preorders,
|
||||||
|
"fttxlocations" => $fttxlocations
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
private function saveAttributeApi() {
|
private function saveAttributeApi() {
|
||||||
|
|||||||
Reference in New Issue
Block a user