GlisWeb framework
_commerciale.dashboard.php
Vai alla documentazione di questo file.
1 <?php
2 
12  // valore totale delle trattative in corso
13  $ct['etc']['trattative']['valore'] = mysqlSelectValue(
14  $cf['mysql']['connection'],
15  'SELECT coalesce( sum( progetti_commerciale_view.fatturato_previsto ), 0 ) AS t FROM progetti_commerciale_view WHERE timestamp_chiusura IS NULL'
16  );
17 
18  // numero di trattative in corso
19  $ct['etc']['trattative']['numero'] = mysqlSelectValue(
20  $cf['mysql']['connection'],
21  'SELECT count( id ) AS t FROM progetti_commerciale_view WHERE timestamp_chiusura IS NULL'
22  );
23 
24  // previsione acquisti
25  $ct['etc']['acquisti']['valore'] = mysqlSelectValue(
26  $cf['mysql']['connection'],
27  'SELECT coalesce( sum( progetti_commerciale_view.costi_previsti ), 0 ) AS t FROM progetti_commerciale_view WHERE timestamp_chiusura IS NULL'
28  );
29 
30  // previsione manodopera
31  $ct['etc']['manodopera']['valore'] = mysqlSelectValue(
32  $cf['mysql']['connection'],
33  'SELECT coalesce( sum( progetti_commerciale_view.ore_previste ), 0 ) AS t FROM progetti_commerciale_view WHERE timestamp_chiusura IS NULL'
34  );
35 
36  // grafico andamento generazione lead
37  $ct['contents']['chartjs']['line']['leadgeneration'] = array(
38  'dataset' => array(
39  'lead' => array(
40  'options' => array(
41  'bdColor' => 'rgba( 32, 32, 32, 0.5 )',
42  'bgColor' => 'rgba( 32, 32, 32, 0.5 )',
43  'fill' => false,
44  'lineTension' => 0,
45  'borderWidth' => 2
46  )
47  ),
48  'prospect' => array(
49  'options' => array(
50  'bdColor' => 'rgba( 96, 96, 96, 0.5 )',
51  'bgColor' => 'rgba( 96, 96, 96, 0.5 )',
52  'fill' => false,
53  'lineTension' => 0,
54  'borderWidth' => 2
55  )
56  )
57  ),
58  'options' => array(
59  'scales' => array(
60  'gridLines' => array( 'display' => false )
61  ),
62  'legend' => array(
63  'position' => 'left'
64  )
65  )
66  );
67 
68  // dati per il grafico di generazione lead
69  // TODO l'agente dev'essere l'anagrafica connessa, e root deve poter vedere tutti gli agenti (magari in un'altra scheda?)
70  $ct['etc']['leadgeneration'] = mysqlQuery(
71  $cf['mysql']['connection'],
72  'SELECT * FROM __report_lead_generation__ WHERE id_agente = 141 LIMIT 12'
73  );
74  $ct['etc']['leadgeneration'] = array_reverse( $ct['etc']['leadgeneration'] );
75  // TODO questo foreach va fatto sulle settimane e non sulle row, in modo da poter interpolare le settimane con valore zero
76  foreach( $ct['etc']['leadgeneration'] as $row ) {
77  $ct['contents']['chartjs']['line']['leadgeneration']['data'][ $row['settimana'] ]['lead']['value'] = $row['lead'];
78  }
79 
80  // dati per il grafico di generazione prospect
81  // TODO l'agente dev'essere l'anagrafica connessa, e root deve poter vedere tutti gli agenti (magari in un'altra scheda?)
82  $ct['etc']['prospectgeneration'] = mysqlQuery(
83  $cf['mysql']['connection'],
84  'SELECT * FROM __report_prospect_generation__ WHERE id_agente = 141 LIMIT 12'
85  );
86  $ct['etc']['prospectgeneration'] = array_reverse( $ct['etc']['prospectgeneration'] );
87  // TODO questo foreach va fatto sulle settimane e non sulle row, in modo da poter interpolare le settimane con valore zero
88  foreach( $ct['etc']['prospectgeneration'] as $row ) {
89  $ct['contents']['chartjs']['line']['leadgeneration']['data'][ $row['settimana'] ]['prospect']['value'] = $row['prospect'];
90  }
91 
92  // preparazione dei dati per Chart.js
93  foreach( $ct['contents']['chartjs']['line']['leadgeneration']['data'] as $label => $dataset ) {
94  foreach( $dataset as $dsName => $value ) {
95  $ct['contents']['chartjs']['line']['leadgeneration']['dataset'][ $dsName ]['data'][ $label ] = $value;
96  }
97  }
98  $ct['contents']['chartjs']['line']['leadgeneration']['options'] = json_encode( $ct['contents']['chartjs']['line']['leadgeneration']['options'], true );
99 
100  // --> fine codice da trasformare in funzione
101 
102  // debug
103  // print_r( $ct['etc'] );
104 
105 ?>
mysqlQuery( $c, $q, $p=false, &$e=array())
$cf['ricerca']['template']
Definition: _030.common.php:7
mysqlSelectValue( $c, $q, $p=false, &$e=array())
$ct['etc']['trattative']['valore']