alsmanager_lib 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,3 @@
1
+ Raccolta funzioni per ALSManager/Node-Red
2
+
3
+ 1.0.0 - Implementazione libreria
@@ -2546,81 +2546,136 @@ function getBeniConsumoByIdDeviceMySQL(id_device) {
2546
2546
  }
2547
2547
 
2548
2548
  //Manage dismissioni
2549
- function selectDismissioni() {
2550
- var query = "select id, identificativo as Identificativo, tipo_identificativo as 'Tipo id', tipo as 'Tipo disp', data as 'Data rilievo', note as 'Note dismiss' from dismissioni";
2549
+ function selectDismissioniByYearSQLite(sel_year) {
2550
+ var query = "select id, data, note from dismissioni ";
2551
+ if (sel_year && sel_year > 0) {
2552
+ query += "where data >= concat(" + sel_year + ", '-01-01') && data <= concat(" + sel_year + ", '-12-31')";
2553
+ }
2551
2554
  return query;
2552
2555
  }
2553
2556
 
2557
+ function selectDismissioniByYearMySQL(sel_year) {
2558
+ var query = "select id, data, note from dismissioni ";
2559
+ if (sel_year && sel_year > 0) {
2560
+ query += "where data >= concat(:sel_year, '-01-01') && data <= concat(:sel_year, '-12-31')";
2561
+ }
2562
+ return query;
2563
+ }
2564
+
2554
2565
  function selectDismissioneByIdSQLite(id_dismiss) {
2555
- var query = "select id, identificativo, tipo_identificativo, tipo, id_device, data, note, motivo, id_place, id_site from dismissioni ";
2566
+ var query = "select id, data, note, from dismissioni ";
2556
2567
  query += "where id = " + id_dismiss;
2557
2568
  return query;
2558
2569
  }
2559
2570
  function selectDismissioneByIdMySQL(id_dismiss) {
2560
- var query = "select id, identificativo, tipo_identificativo, tipo, id_device, data, note, motivo, id_place, id_site from dismissioni ";
2571
+ var query = "select id, data, note from dismissioni ";
2561
2572
  query += "where id = :id_dismiss";
2562
2573
  return query;
2563
2574
  }
2564
2575
  //
2565
2576
  function insertDismissioneSQLite(dismiss) {
2566
2577
  var query = "insert into dismissioni ";
2567
- query += "(data, identificativo, tipo_identificativo, tipo, id_device, note, motivo, id_site, id_place) ";
2578
+ query += "(data, note) ";
2568
2579
  query += " values ('" + dismiss.dr_str + "',";
2569
- query += "'" + dismiss.Identificativo + "',";
2570
- query += "'" + dismiss.tipo_identificativo + "',";
2571
- query += "'" + dismiss.tipo_device + "',";
2572
- query += dismiss.id_device + ",";
2573
- query += "'" + dismiss.note + "',";
2574
- query += "'" + dismiss.motivo + "',";
2575
- query += dismiss.id_site + ",";
2576
- query += "'" + dismiss.id_place + "')";
2580
+ query += "'" + dismiss.note + "')";
2577
2581
  return query;
2578
2582
  }
2579
2583
  function insertDismissioneMySQL(dismiss) {
2580
2584
  var query = "insert into dismissioni ";
2581
- query += "(data, identificativo, tipo_identificativo, tipo, id_device, note, motivo, id_site, id_place) values (";
2585
+ query += "(data, note) ";
2582
2586
  query += ":dr_str, ";
2583
- query += ":Identificativo, ";
2584
- query += ":tipo_identificativo, ";
2585
- query += ":tipo_device, ";
2586
- query += ":id_device, ";
2587
- query += ":note, ";
2588
- query += ":dismiss.motivo, ";
2589
- query += ":dismiss.id_site, ";
2590
- query += ":dismiss.id_place)";
2587
+ query += ":note) ";
2591
2588
  return query;
2592
2589
  }
2593
2590
  //
2594
2591
  function updateDismissioneSQLite(dismiss) {
2595
2592
  var query = "update dismissioni ";
2596
- query += "set id_place = '" + dismiss.id_place + "', ";
2597
- query += "id_site = " + dismiss.id_site + ", ";
2598
- query += "id_device = " + dismiss.id_device + ", ";
2599
- query += "identificativo = '" + dismiss.Identificativo + "', ";
2600
- query += "tipo_identificativo = '" + dismiss.tipo_identificativo + "', ";
2601
- query += "tipo = '" + dismiss.tipo_device + "', ";
2593
+ query += "set ";
2602
2594
  if (dismiss.dr_str.trim() != '')
2603
2595
  query += "data = '" + dismiss.dr_str + "', ";
2604
2596
  query += "note = '" + dismiss.note + "', ";
2605
- query += "motivo = '" + dismiss.motivo + "' ";
2606
2597
  query += "where id = " + dismiss.id;
2607
2598
  return query;
2608
2599
  }
2609
2600
  function updateDismissioneMySQL(dismiss) {
2610
2601
  var query = "update dismissioni ";
2611
- query += "set id_place = :id_place, ";
2612
- query += "id_site = :id_site, ";
2613
- query += "id_device = :id_device, ";
2614
- query += "identificativo = :Identificativo, ";
2615
- query += "tipo_identificativo = :tipo_identificativo, ";
2616
- query += "tipo = :tipo_device, ";
2602
+ query += "set ";
2617
2603
  if (dismiss.dr_str.trim() != '')
2618
2604
  query += "data = :dr_str, ";
2619
2605
  query += "note = :note, ";
2620
- query += "motivo = :motivo ";
2621
2606
  query += "where id = :id";
2622
2607
  return query;
2623
2608
  }
2609
+ function removeDismissioneByIdSQLite(id_dismiss) {
2610
+ var query = "delete from dismissioni ";
2611
+ query += "where id = " + id_dismiss;
2612
+ return query;
2613
+ }
2614
+ function removeDismissioneByIdMySQL(id_dismiss) {
2615
+ var query = "delete from dismissioni ";
2616
+ query += "where id = :id_dismiss";
2617
+ return query;
2618
+ }
2619
+
2620
+ function selectDismissioneDevicesByIdDismissSQLite(id_dismiss) {
2621
+ var query = "select id, data, note from dismissioni ";
2622
+ if (sel_year && sel_year > 0) {
2623
+ query += "where data >= concat(" + sel_year + ", '-01-01') && data <= concat(" + sel_year + ", '-12-31')";
2624
+ }
2625
+ return query;
2626
+ }
2627
+
2628
+ function selectDismissioneDevicesByIdDismissMySQL(id_dismiss) {
2629
+ var query = "select id, data, note from dismissioni ";
2630
+ if (sel_year && sel_year > 0) {
2631
+ query += "where data >= concat(:sel_year, '-01-01') && data <= concat(:sel_year, '-12-31')";
2632
+ }
2633
+ return query;
2634
+ }
2635
+ function removeDismissioneDeviceByIdDismissioneSQLite(id_dismiss) {
2636
+ var query = "delete from device_dismissioni ";
2637
+ query += "where id_dismissione = " + id_dismiss;
2638
+ return query;
2639
+ }
2640
+ function removeDismissioneDeviceByIdDismissioneMySQL(id_dismiss) {
2641
+ var query = "delete from device_dismissioni ";
2642
+ query += "where id_dismissione = :id_dismiss";
2643
+ return query;
2644
+ }
2645
+ function insertDismissioneDeviceSQLite(id_dismiss, id_device, note) {
2646
+ var query = "insert into device_dismissioni (id_dismissione, id_device, note ) values ";
2647
+ query += "(" + id_dismiss + ", " + id_device + ", " + note + ")";
2648
+ return query;
2649
+ }
2650
+ function insertDismissioneDeviceMySQL(id_dismiss, id_device, note) {
2651
+ var query = "insert into device_dismissioni (id_dismissione, id_device, note ) values ";
2652
+ query += "(:id_dismiss, :id_device, :note)";
2653
+ return query;
2654
+ }
2655
+ function updateDismissioneDeviceSQLite(id_devdismiss, id_device, note) {
2656
+ var query = "update device_dismissioni ";
2657
+ query += "set id_device = " + id_device + ", ";
2658
+ query += "note = " + note + " ";
2659
+ query += "where id = " + id_devdismiss;
2660
+ return query;
2661
+ }
2662
+ function updateDismissioneDeviceMySQL(id_devdismiss, id_device, note) {
2663
+ var query = "update device_dismissioni ";
2664
+ query += "set id_device = :id_device, ";
2665
+ query += "note = :note ";
2666
+ query += "where id = :id_devdismiss";
2667
+ return query;
2668
+ }
2669
+ function removeDismissioneDeviceSQLite(id_devdismiss) {
2670
+ var query = "delete from device_dismissioni ";
2671
+ query += "where id = " + id_devdismiss;
2672
+ return query;
2673
+ }
2674
+ function removeDismissioneDeviceMySQL(id_devdismiss) {
2675
+ var query = "delete from device_dismissioni ";
2676
+ query += "where id = :id_devdismiss";
2677
+ return query;
2678
+ }
2624
2679
  //End manage dismissioni
2625
2680
 
2626
2681
 
@@ -3527,9 +3582,35 @@ function getAllPropertiesFromBLOB(text) {
3527
3582
  }
3528
3583
 
3529
3584
  //end complete parser
3585
+ // Reports
3586
+ function getDevicesInUse() {
3587
+ var query = "select d.type as Tipo, count(*) as Numero from devices d ";
3588
+ query += "left join device_site ds on d.id = ds.id_device ";
3589
+ query += "left join site_destinations sd on ds.id_site = sd.id_site ";
3590
+ query += "where ds.id_place is not null ";
3591
+ query += "and ds.date_in <= date('now') and ds.date_out >= date('now') ";
3592
+ query += "and sd.type not in ('MAGAZZINO') ";
3593
+ query += "group by d.type";
3594
+ return query;
3595
+ }
3596
+
3597
+ function getDevicesInUseByPlaces() {
3598
+ var query = "select ds.id_place as Plesso, d.type as Tipo, count(*) as Numero from devices d ";
3599
+ query += "left join device_site ds on d.id = ds.id_device ";
3600
+ query += "left join site_destinations sd on ds.id_site = sd.id_site ";
3601
+ query += "where ds.id_place is not null ";
3602
+ query += "and ds.date_in <= date('now') and ds.date_out >= date('now') ";
3603
+ query += "and sd.type not in ('MAGAZZINO') ";
3604
+ query += "group by ds.id_place, d.type";
3605
+ return query;
3606
+ }
3607
+
3608
+ //End reports
3530
3609
  // Exports
3531
3610
 
3532
3611
  module.exports = {
3612
+ getDevicesInUse,
3613
+ getDevicesInUseByPlaces,
3533
3614
  getDevicesAllocatedComboSQLite,
3534
3615
  getDevicesAllocatedComboMySQL,
3535
3616
  getDevicesNotAllocatedCombo,
@@ -3692,13 +3773,26 @@ module.exports = {
3692
3773
  queryDocumentsIdDeviceMySQL,
3693
3774
  getDocumentByIdDocSQLite,
3694
3775
  getDocumentByIdDocMySQL,
3776
+ selectDismissioniByYearSQLite,
3777
+ selectDismissioniByYearMySQL,
3778
+ selectDismissioneByIdSQLite,
3779
+ selectDismissioneByIdMySQL,
3695
3780
  updateDismissioneSQLite,
3696
3781
  updateDismissioneMySQL,
3697
3782
  insertDismissioneSQLite,
3698
3783
  insertDismissioneMySQL,
3699
- selectDismissioneByIdSQLite,
3700
- selectDismissioneByIdMySQL,
3701
- selectDismissioni,
3784
+ removeDismissioneByIdSQLite,
3785
+ removeDismissioneByIdMySQL,
3786
+ selectDismissioneDevicesByIdDismissSQLite,
3787
+ selectDismissioneDevicesByIdDismissMySQL,
3788
+ removeDismissioneDeviceByIdDismissioneSQLite,
3789
+ removeDismissioneDeviceByIdDismissioneMySQL,
3790
+ insertDismissioneDeviceSQLite,
3791
+ insertDismissioneDeviceMySQL,
3792
+ updateDismissioneDeviceSQLite,
3793
+ updateDismissioneDeviceMySQL,
3794
+ removeDismissioneDeviceSQLite,
3795
+ removeDismissioneDeviceMySQL,
3702
3796
  assignCategoryFromDBSQLite,
3703
3797
  assignCategoryFromDBMySQL,
3704
3798
  getBeniConsumoByIdDeviceSQLite,
package/package.json CHANGED
@@ -1,11 +1,12 @@
1
1
  {
2
2
  "name": "alsmanager_lib",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "Funzioni per ALSManager",
5
- "main": "index.js",
5
+ "license": "ISC",
6
+ "author": "Luca Cattani",
7
+ "type": "commonjs",
8
+ "main": "./lib/modules.js",
6
9
  "scripts": {
7
10
  "test": "echo \"Error: no test specified\" && exit 1"
8
- },
9
- "author": "Luca Cattani",
10
- "license": "ISC"
11
+ }
11
12
  }