. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
| Server IP : 52.223.31.75 / Your IP : 172.31.6.220 [ Web Server : Apache/2.4.66 () OpenSSL/1.0.2k-fips PHP/7.4.33 System : Linux ip-172-31-14-81.eu-central-1.compute.internal 4.14.281-212.502.amzn2.x86_64 #1 SMP Thu May 26 09:52:17 UTC 2022 x86_64 User : apache ( 48) PHP Version : 7.4.33 Disable Function : NONE Domains : 4 Domains MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /var/www/ripara.co/admin/views/ |
Upload File : |
<!-- somma numero righe nel periodo oppure media conversation time
puls mostra su grafico su OR -->
<div class="container" data-ng-controller="UAPCtrl as uctrl">
<!--
<div class="card lvl-target-invisible todisappear" style="position: fixed; margin-top: 200px; z-index: 9999999">
<button class="btn btn-danger btn-icon-text waves-effect" style="margin: 5px;" ng-repeat="gruppo in gruppi" x-lvl-drop-target="true" group-id="{{gruppo.group_id}}" x-on-drop="dropped(dragEl, dropEl)">
<i class="zmdi zmdi-account-add zmdi-hc-fw"></i>
{{gruppo.title}}
</button>
</div>
-->
<!-- Header/Menu Ricerca avanzata si/no -->
<div class="block-header">
<h2>UAP<small>In questa sezione puoi trovare informazioni relative a UAP.<br> Eseguire la ricerca per mostrare le funzionalità.</small></h2>
<!-- <ul class="actions m-t-20 hidden-xs">
<li class="dropdown" uib-dropdown>
<a href="" uib-dropdown-toggle>
<i class="zmdi zmdi-more-vert"></i>
</a>
<ul class="dropdown-menu dropdown-menu-right">
<li>
<a id="appari" data-ng-click="ricercaAvanzata = !ricercaAvanzata" href="">Ricerca Avanzata</a>
</li>
</ul>
</li>
</ul>-->
</div>
<div class="block-header"> <!-- ng-if="ricercaAvanzata">-->
<h2>Ricerca Backend <small></small></h2>
</div>
<!-- Ricerca base -->
<div class="card">
<div class="card-header" ng-snow="ascissa">
<h2>Seleziona range di tempo <small>Eseguire la ricerca per mostrare le funzionalità</small></h2>
</div>
<div class="card-body card-padding p-t-0 row col-sm-offset-1" ng-snow="ascissa">
<div class="date row">
<div class="col-sm-3" style="margin-top: 30px">
<div class="date-picker input-group" ng-class="{ 'is-opened': opened == true }">
<span class="input-group-addon"><i class="zmdi zmdi-calendar ma-icon"></i></span>
<div class="fg-line" ng-class="{ 'fg-toggled': opened == true }">
<input ng-click="open($event, 'opened')" type="text" class="form-control" uib-datepicker-popup="{{format}}" show-weeks="false" ng-model="dtPopup" is-open="opened" datepicker-options="dateOptions" ng-required="true" close-text="Close" placeholder="Select Date" ng-dissabled="!ascissa" ng-change="changed()" />
</div>
</div>
</div>
<div class="col-sm-3">
<uib-timepicker ng-model="dtPopup" ng-change="changed()" hour-step="hstep" minute-step="mstep" show-meridian="ismeridian"></uib-timepicker>
</div>
<div class="col-sm-3" style="margin-top: 30px">
<div class="date-picker input-group dp-blue" ng-class="{ 'is-opened': opened2 == true }">
<span class="input-group-addon"><i class="zmdi zmdi-calendar ma-icon"></i></span>
<div class="fg-line" ng-class="{ 'fg-toggled': opened2 == true }">
<input ng-click="open($event, 'opened2')" type="text" class="form-control" uib-datepicker-popup="{{format}}" show-weeks="false" ng-model="dtPopup2" is-open="opened2" min-date="dtPopup" datepicker-options="dateOptions" ng-required="true" close-text="Close" placeholder="Select Date" ng-disabled="!dtPopup" ng-change="changed()"/>
</div>
</div>
</div>
<div class="col-sm-3">
<uib-timepicker ng-model="dtPopup2" ng-change="changed()" hour-step="hstep" minute-step="mstep" show-meridian="ismeridian" min="dtPopup"></uib-timepicker>
</div>
</div>
</div>
<div class="card-header">
<h2>Seleziona i filtri di ricerca <small>I campi da contiene in poi possono essere aggiunti solo uno per ricerca</small></h2>
</div>
<div class="card-body card-padding p-t-0 row col-sm-offset-1">
<div name="forme" class="row" style="margin-top: 30px">
<div class="col-xs-2">
<div class="select">
<select class="form-control" ng-model="o.campo" required>
<option ng-repeat="k in elencoCampiRICERCABACK track by $index" value="{{k}}" ng-hide="$first"> {{k}} </option>
</select>
</div>
</div>
<div class="col-xs-2">
<div class="select">
<select class="form-control" ng-model="o.operatore" required>
<option> < </option>
<option> > </option>
<option> >= </option>
<option> <= </option>
<option> = </option>
<option> != </option>
<!-- <option> contiene </option>-->
<option style="font-weight:bold;"> !contiene </option>
<option style="font-weight:bold;"> %..% </option>
<!-- <option style="font-weight:bold;"> %.. </option>
<option style="font-weight:bold;"> ..% </option>-->
<option style="font-weight:bold;"> ExpReg </option>
</select>
</div>
</div>
<div class="col-xs-2"><!--<div class="col-sm-3">-->
<div class="form-group">
<div class="fg-line">
<input type="text" class="form-control" placeholder="Value" ng-model="o.value">
</div>
</div>
</div>
<button type="button" style="background: green;" class="btn btn-primary waves-effect" ng-click="addFilter(o.campo, o.operatore, o.value, o.colore)" ng-disabled="!o.campo || !o.operatore || !o.value">+</button>
</div>
<div name="forme" class="form-group col-sm-offset-1 row" style="margin-top: 30px" ng-repeat="filtro in filtriAdded">
<div class="col-xs-2">
<label>{{filtro.campo}}</label>
</div>
<div class="col-xs-2">
<label><b>{{filtro.operatore}}</b></label>
</div>
<div class="col-xs-2">
<label>{{filtro.value}}</label>
</div>
<!--
<div class="col-xs-2" ng-show="xor == 'OR'">
<div class="form-group">
<div class="checkbox">
<label class="col-md-3">
<input type="checkbox" ng-model ="visible[$index]">
<i class="input-helper"></i>
Mostra nel grafico
</label>
</div>
</div>
</div>
-->
<button type="button" style="background: red;" class="btn btn-primary waves-effect" ng-click="removeFilter(filtro.campo)"> - </button>
</div>
<div class="card-body card-padding p-t-0 row col-sm-offset-1">
<button type="button" class="btn btn-primary pull-right" ng-disabled="bottoneAggiornaDati == false" ng-click="aggiornaDati();">Effettua Ricerca</button><!-- ng-disabled="!dtPopup || !dtPopup2 || dtPopup > dtPopup2"-->
</div>
<!--
<div class="col-sm-5">
<div class="form-group">
<div class="fg-line">
<div class="select">
<select class="form-control" ng-model="uctrl.ordinata">
<option>Seleziona Ordinata ^</option>
<option>SwitchName</option>
<option>SequenceID</option>
<option>CallerNo</option>
<option>InitialCLI</option>
<option>CalledNo</option>
<option>InitialCLD</option>
<option>OriginalCLD</option>
<option>CallType</option>
<option>ReleaseCause</option>
<option>ReleaseCallSide</option>
<option>ConversationTime</option>
<option>RouteNo</option>
<option>SubrouteNo</option>
<option>IncomingSignalingType</option>
<option>CallerTG</option>
<option>CallerCIC</option>
<option>OutgoingSignalingType</option>
<option>CalledTG</option>
<option>CalledCIC</option>
</select>
</div>
</div>
</div>
</div>
-->
</div>
</div>
<div ng-show="ricercaEffettuata" >
<!-- Ricerca avanzata-->
<div class="block-header" ng-if="ricercaAvanzata">
<h2>Visualizzazione Grafica <small></small></h2>
</div>
<div class="card" ng-if="ricercaAvanzata">
<div class="card-header">
<h2>Seleziona campi da filtrare <small>Seleziona campi da visualizzare nel grafico</small></h2>
</div>
<div class="card-body card-padding">
<!--
<div class="col-sm-3">
<label class="radio radio-inline m-r-20 col-sm-1">
<input type="radio" name="xor" value="AND" ng-model="o.xor">
<i class="input-helper"></i>
AND
</label>
<label class="radio radio-inline m-r-20 col-sm-1">
<input type="radio" name="xor" value="OR" ng-model="o.xor">
<i class="input-helper"></i>
OR
</label>
</div>
-->
<div name="forme" class="row" style="margin-top: 30px">
<div class="col-xs-2"><!--<div class="col-sm-3">-->
<div class="form-group">
<!-- <div class="fg-line">-->
<input color-picker color-me="true" ng-model="o.coloreFront" class="form-control" placeholder="Colore" >
</div>
<!--</div>-->
</div>
<div class="col-xs-2">
<div class="select">
<select class="form-control" ng-model="o.campoFront" required>
<option ng-repeat="k in elencoCampi track by $index" value="{{k}}" ng-hide="$first"> {{k}} </option>
</select>
</div>
</div>
<div class="col-xs-2">
<div class="select">
<select class="form-control" ng-model="o.operatoreFront" required>
<option> < </option>
<option> > </option>
<option> = </option>
</select>
</div>
</div>
<div class="col-xs-2"><!--<div class="col-sm-3">-->
<div class="form-group">
<div class="fg-line">
<input type="text" class="form-control" placeholder="Value" ng-model="o.valueFront">
</div>
</div>
</div>
<button type="button" style="background: green;" class="btn btn-primary waves-effect" ng-click="addFilterFront(o.campoFront, o.operatoreFront, o.valueFront, o.coloreFront, o.tempo)" ng-disabled="!o.campoFront || !o.operatoreFront || !o.valueFront || !o.coloreFront">+</button>
</div>
<div name="forme" class="form-group col-sm-offset-1 row" style="margin-top: 30px" ng-repeat="filtroFront in filtriAddedFront">
<div class="col-xs-2">
<div class="btn btn-primary waves-effect" style="background:{{filtroFront.colore}}"></div>
</div>
<div class="col-xs-2">
<label>{{filtroFront.campo}}</label>
</div>
<div class="col-xs-2">
<label>{{filtroFront.operatore}}</label>
</div>
<div class="col-xs-2">
<label>{{filtroFront.value}}</label>
</div>
<!-- <div class="col-xs-3">
<label>Campionamento: {{filtroFront.tempo}} sec</label>
</div>-->
<!--
<div class="col-xs-2" ng-show="xor == 'OR'">
<div class="form-group">
<div class="checkbox">
<label class="col-md-3">
<input type="checkbox" ng-model ="visible[$index]">
<i class="input-helper"></i>
Mostra nel grafico
</label>
</div>
</div>
</div>
-->
<button type="button" style="background: red;" class="btn btn-primary waves-effect" ng-click="removeFilterFront(filtroFront.campo)"> - </button>
</div>
</div>
<!--
<div class="card-body card-padding p-t-0 row col-sm-offset-1">
<div class="date row">
<div class="col-sm-5">
<div class="form-group">
<div class="fg-line">
<div class="select">
<select class="form-control" ng-model="ascissa" placeholder="Select Time">
<option>StartTime</option>
<option>AlertingTime</option>
<option>AnswerTime</option>
<option>EndTime</option>
</select>
</div>
</div>
</div>
</div>
</div>
</div>
-->
</div>
<!-- Header/Menu Ricerca avanzata si/no -->
<div class="block-header" ng-if="showGrafico && ricercaAvanzata">
<h2>Grafico dei dati<!--<small>In questa sezione puoi trovare informazioni relative a UAP.<br> Di default vengono mostrati solo i dati odierni.</small>--></h2>
<!--
<ul class="actions m-t-20 hidden-xs">
<li class="dropdown" uib-dropdown>
<a href="" uib-dropdown-toggle>
<i class="zmdi zmdi-more-vert"></i>
</a>
<ul class="dropdown-menu dropdown-menu-right">
<li>
<a id="appari" data-ng-click="ricercaAvanzata = 1" href="">Ricerca Avanzata</a>
</li>
</ul>
</li>
</ul>
-->
</div>
<!-- Grafico -->
<div class="card" ng-if="showGrafico && ricercaAvanzata">
<div class="card-header">
<h2>Seleziona periodo di campionamento <small>Inserisci arco di tempo in secondi</small></h2>
</div>
<div class="card-body card-padding p-t-0 row">
<div class="col-sm-3">
<div class="form-group">
<div class="fg-line">
<input type="text" class="form-control" placeholder="Tempo" ng-model="o.tempo">
</div>
</div>
</div>
<label class="col-sm-2" style="margin-top: 10px">
Secondi
</label>
<div class="col-sm-3">
<div class="form-group">
<div class="fg-line">
<button type="button" style="background: green;" class="btn btn-primary waves-effect" ng-click="aggiornaGrafico()">Aggiorna</button>
</div>
</div>
</div>
</div>
<!-- Menu grafico -->
<div class="card-header">
<h2>Filtri grafico <small>Seleziona queries da visualizzare</small></h2>
<ul class="actions">
<li class="dropdown action-show" uib-dropdown>
<a href="" uib-dropdown-toggle>
<i class="zmdi zmdi-more-vert"></i>
</a>
<ul class="dropdown-menu dropdown-menu-right">
<li>
<a data-ng-click="uctrl.grafico = 1" href="">Grafico a linee curve</a>
</li>
<li>
<a data-ng-click="uctrl.grafico = 2" href="">Grafico a linee</a>
</li>
<li>
<a data-ng-click="uctrl.grafico = 3" href="">Grafico Istogrammi</a>
</li>
<!-- <li>
<a data-ng-click="uctrl.grafico = 4" href="">Grafico linee dinamico</a>
</li>
<li>
<a data-ng-click="uctrl.grafico = 5" href="">Grafico a torta</a>
</li>
<li>
<a data-ng-click="uctrl.grafico = 6" href="">Grafico a ciambella</a>
</li>
<!--
<li>
<a data-ng-click="filtriGraficoOn = 1" href="">Seleziona dati da visualizzare</a>
</li>
-->
</ul>
</li>
</ul>
</div>
<div class="card-body card-padding p-t-0 row">
<div class="form-group">
<div class="checkbox">
<label class="col-md-3" ng-repeat="k in filtriAddedFront">
<input type="checkbox" ng-model="mostraNelGrafico[$index]" checked ng-click="aggiornaGrafico();">
<i class="input-helper"></i>
<div class="btn btn-primary waves-effect" style="background:{{k.colore}}"></div> {{k.campo}}{{k.operatore}}{{k.value}}
</label>
</div>
</div>
</div>
<div class="card-body card-padding-sm" ng-if="uctrl.grafico === 1">
<div class="chart-edge ">
<div class="flot-chart" data-lineline-chart datata="x.datiPerIlGrafico"></div>
<div class="flc-bar"></div>
</div>
</div>
<div class="card-body card-padding-sm" ng-if="uctrl.grafico === 2">
<div class="chart-edge">
<div class="flot-chart" data-curvedline-chart datata="x.datiPerIlGrafico"></div>
<div class="flc-bar"></div>
</div>
</div>
<div class="card-body card-padding-sm" ng-if="uctrl.grafico === 3">
<div class="chart-edge">
<div class="flot-chart" data-bar-chart datata="x.datiPerIlGrafico"></div>
<div class="flc-bar"></div>
</div>
</div>
</div>
<!-- Elenco gruppi visibili solo quando draggo
<div class="cardd aniamted" id="insertUtente" data-ng-if="1 === 1" style="position: fixed; z-index: 99999;">
<button class="btn btn-danger btn-icon-text waves-effect lvl-target-invisible todisappear" style="margin: 5px;" ng-repeat="gruppo in gruppi" x-lvl-drop-target="true" group-id="{{gruppo.group_id}}" x-on-drop="dropped(dragEl, dropEl)">
<i class="zmdi zmdi-account-add zmdi-hc-fw"></i>
{{gruppo.title}}
</button>
</div>
-->
<!-- Filtri per tabella -->
<div class="card">
<div class="card-header">
<h2 ng-if="uctrl.tableSource.total()>1">Esposizione Dati - Totale Records: {{uctrl.tableSource.total()}} <small>Seleziona campi da visualizzare nella tabella </small></h2>
<h2 ng-if="uctrl.tableSource.total()<2">Esposizione Dati<small>Seleziona campi da visualizzare nella tabella </small></h2>
<ul class="actions">
<li class="dropdown action-show" uib-dropdown>
<a href="" uib-dropdown-toggle>
<i class="zmdi zmdi-more-vert"></i>
</a>
<ul class="dropdown-menu dropdown-menu-right">
<li>
<a data-ng-click="selezionaTutti(true)" href="">Seleziona Tutti</a>
</li>
<li>
<a data-ng-click="selezionaTutti(false)" href="">Deseleziona Tutti</a>
</li>
<li>
<a data-ng-click="export(true)" href="">Esporta Tutti</a>
</li>
<li>
<a data-ng-click="export(false)" href="">Esporta Selezionati</a>
</li>
</ul>
</li>
</ul>
</div>
<div class="card-body card-padding p-t-0 row">
<div class="form-group" ng-click="checkStatus = true">
<div class="checkbox">
<label class="col-md-3" ng-repeat="k in elencoCampi track by $index">
<input type="checkbox" ng-model="activeFields[$index]" ng-click="aggiornaActiveFields()">
<i class="input-helper"></i>
{{k}}
</label>
</div>
</div>
</div>
</div>
<!-- Tabella -->
<div class="card" id="cardUtenti"><!-- ng-show="checkStatus">
<!-- <div class="card-header">
<h2>Column Filtering <small>Type something in filter and press Enter or Filter button</small></h2>
</div>-->
<div class="card-body">
<div class="table-responsive">
<table ng-table="uctrl.tableSource" class="table table-striped table-vmiddle" show-filter="true">
<thead>
<tr>
<th ng-repeat="column in elencoCampi" ng-show="activeFields[$index]" class="text-center sortable" ng-click="uctrl.tableSource.sorting('orderBy', (uctrl.isSortBy ? '+' : '-') + elencoCampi[$index]);" sortable="elencoCampi[$index]">
{{elencoCampi[$index]}}
</th>
</tr>
<tr>
<th ng-repeat="column in elencoCampi" ng-show="activeFields[$index]" class="text-center sortable ng-bilding">
<select class="form-control" style="width:100%;" ng-model="tipi_filtri_real_time[elencoCampi[$index]]" ng-change="filtri_real_time[elencoCampi[$index]] =''; ">
<option value="=" ng-selected="true"> = </option>
<!-- <option value=">"> > </option>
<option value="<"> < </option>
<option value="!="> != </option>
--></select>
<input type="text" style="width:100%;" class="form-control" ng-model="filtri_real_time[elencoCampi[$index]]" ng-change="uctrl.tableSource.sorting('filter', {key: elencoCampi[$index], value: filtri_real_time[elencoCampi[$index]], operatore: tipi_filtri_real_time[elencoCampi[$index]] });"/>
</th>
</tr>
</thead>
<body>
<tr style="cursor: move;" ng-repeat="w in $data">
<td ng-repeat="ak in elencoCampi track by $index" ng-show="activeFields[$index]" > {{ ((elencoCampi[$index] == "EndTime" || elencoCampi[$index] == "StartTime" || elencoCampi[$index] == "AnswerTime" || elencoCampi[$index] == "AlertingTime") ? convertiData(w[elencoCampi[$index]]) : w[elencoCampi[$index]]) }}</td>
<!--
<td ng-if="activeFields[2]" data-title="Sequenz" filter="{ 'SequenceID': 'text' }">
{{ w.SequenceID }}
</td>
<td ng-if="activeFields[3]" data-title="'CallerNo'" filter="{ 'CallerNo': 'text' }">
{{ w.CallerNo }}
</td>
<td ng-if="activeFields[4]" data-title="'InitialCLI'" filter="{ 'InitialCLI': 'text' }">
{{ w.InitialCLI }}
</td>
<!-- <td ng-if="activeFields[5]" data-title="'CalledNo'" filter="{ 'CalledNo': 'text' }">
{{ w.CalledNo }}
</td>
<td ng-if="activeFields[6]" data-title="'InitialCLD'" filter="{ 'InitialCLD': 'text' }">
{{ w.InitialCLD }}
</td>
<td ng-if="activeFields[7]" data-title="'OriginalCLD'" filter="{ 'OriginalCLD': 'text' }">
{{ w.OriginalCLD }}
</td>
<td ng-if="activeFields[8]" data-title="'CallType'" filter="{ 'CallType': 'text' }">
{{ w.CallType }}
</td>
<td ng-if="activeFields[9]" data-title="'ReleaseCause'" filter="{ 'ReleaseCause': 'text' }">
{{ w.ReleaseCause }}
</td>
<td ng-if="activeFields[10]" data-title="'ReleaseCallSide'" filter="{ 'ReleaseCallSide': 'text' }">
{{ w.ReleaseCallSide }}
</td>
<td ng-if="activeFields[11]" data-title="'StartTime'" filter="{ 'StartTime': 'text' }">
{{ w.StartTime.sec * 1000 | date:'medium' }}
</td>
<td ng-if="activeFields[12]" data-title="'AlertingTime'" filter="{ 'AlertingTime': 'text' }">
{{ w.AlertingTime.sec * 1000 | date:'medium' }}
</td>
<td ng-if="activeFields[13]" data-title="'AnswerTime'" filter="{ 'AnswerTime': 'text' }">
{{ w.AnswerTime.sec * 1000 | date:'medium' }}
</td>
<td ng-if="activeFields[14]" data-title="'EndTime'" filter="{ 'EndTime': 'text' }">
{{ w.EndTime.sec * 1000 | date:'medium' }}
</td>
<td ng-if="activeFields[15]" data-title="'ConversationTime'" filter="{ 'ConversationTime': 'text' }">
{{ w.ConversationTime }}
</td>
<td ng-if="activeFields[16]" data-title="'RouteNo'" filter="{ 'RouteNo': 'text' }">
{{ w.RouteNo }}
</td>
<td ng-if="activeFields[17]" data-title="'SubrouteNo'" filter="{ 'SubrouteNo': 'text' }">
{{ w.SubrouteNo }}
</td>
<td ng-if="activeFields[18]" data-title="'IncomingSignalingType'" filter="{ 'IncomingSignalingType': 'text' }">
{{ w.IncomingSignalingType }}
</td>
<td ng-if="activeFields[19]" data-title="'CallerTG'" filter="{ 'CallerTG': 'text' }">
{{ w.CallerTG }}
</td>
<td ng-if="activeFields[20]" data-title="'CallerCIC'" filter="{ 'CallerCIC': 'text' }">
{{ w.CallerCIC }}
</td>
<td ng-if="activeFields[21]" data-title="'OutgoingSignalingType'" filter="{ 'OutgoingSignalingType': 'text' }">
{{ w.OutgoingSignalingType }}
</td>
<td ng-if="activeFields[22]" data-title="'CalledTG'" filter="{ 'CalledTG': 'text' }">
{{ w.CalledTG }}
</td>
<td ng-if="activeFields[23]" data-title="'CalledCIC'" filter="{ 'CalledCIC': 'text' }">
{{ w.CalledCIC }}
</td>
-->
</tr>
</body>
</table>
</div>
</div>
</div>
</div>
</div>