alsmanager_lib 3.0.3 → 3.0.5

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.
Files changed (2) hide show
  1. package/lib/modules.js +251 -4
  2. package/package.json +1 -1
package/lib/modules.js CHANGED
@@ -8499,6 +8499,209 @@ function checkDocumentoDevice(db_used, id_device, id_doc) {
8499
8499
  return query;
8500
8500
  }
8501
8501
 
8502
+ // Altri beni
8503
+ function queryDocumentsIdAltroBeneSQLite(id_bene) {
8504
+ var query = "select distinct c.id, c.tipo, c.data_emissione, c.descrizione, ";
8505
+ query += "case ";
8506
+ query += "when is_collaudo = 1 then 'Collaudo' ";
8507
+ query += "when is_acquisto = 1 then 'Acquisto' ";
8508
+ query += "when is_dismissione = 1 then 'Dismissione' ";
8509
+ query += "end as motivo ";
8510
+ query += "from documenti c ";
8511
+ query += "join altri_beni_doc ac on ac.id_doc = c.id ";
8512
+ query += "where ac.id_bene = " + id_bene;
8513
+ return query;
8514
+ }
8515
+ function queryDocumentsIdAltroBeneMySQL(id_bene) {
8516
+ var query = "select distinct c.id, c.tipo, c.data_emissione, c.descrizione, ";
8517
+ query += "case ";
8518
+ query += "when is_collaudo = 1 then 'Collaudo' ";
8519
+ query += "when is_acquisto = 1 then 'Acquisto' ";
8520
+ query += "when is_dismissione = 1 then 'Dismissione' ";
8521
+ query += "end as motivo ";
8522
+ query += "from documenti c ";
8523
+ query += "join altri_beni_doc ac on ac.id_doc = c.id ";
8524
+ query += "where ac.id_device = :id_device";
8525
+ return query;
8526
+ }
8527
+
8528
+ function queryDocumentsIdAltroBene(db_used, id_bene) {
8529
+ var query = "";
8530
+ if (db_used) {
8531
+ switch (db_used) {
8532
+ case 'SQLITE':
8533
+ query = queryDocumentsIdAltroBeneSQLite(id_bene);
8534
+ break;
8535
+ case 'MYSQL':
8536
+ query = queryDocumentsIdAltroBeneMySQL(id_bene);
8537
+ break;
8538
+ case 'MYSQL2':
8539
+ query = queryDocumentsIdAltroBeneSQLite(id_bene);
8540
+ break;
8541
+ }
8542
+ }
8543
+ return query;
8544
+ }
8545
+
8546
+ function insertDocumentoAltroBeneSQLite(id_bene, id_doc, scopo) {
8547
+ let collaudoFlag = 0;
8548
+ let acquistoFlag = 0;
8549
+ let dismissioneFlag = 0;
8550
+ switch (scopo) {
8551
+ case 'ACQUISTO':
8552
+ acquistoFlag = 1;
8553
+ break;
8554
+ case 'COLLAUDO':
8555
+ collaudoFlag = 1;
8556
+ break;
8557
+ case 'DISMISSIONE':
8558
+ dismissioneFlag = 1;
8559
+ break;
8560
+ default:
8561
+ break;
8562
+ }
8563
+ var query = "insert into altri_beni_doc (id_bene, id_doc, is_acquisto, is_collaudo, is_dismissione) values ";
8564
+ query += "(" + id_bene + ", " + id_doc + ", ";
8565
+ query += acquistoFlag + ", ";
8566
+ query += collaudoFlag + ", ";
8567
+ query += dismissioneFlag;
8568
+ query += ")";
8569
+ return query;
8570
+ }
8571
+ function insertDocumentoAltroBeneMySQL(id_bene, id_doc, scopo) {
8572
+ let collaudoFlag = 0;
8573
+ let acquistoFlag = 0;
8574
+ let dismissioneFlag = 0;
8575
+ switch (scopo) {
8576
+ case 'ACQUISTO':
8577
+ acquistoFlag = 1;
8578
+ break;
8579
+ case 'COLLAUDO':
8580
+ collaudoFlag = 1;
8581
+ break;
8582
+ case 'DISMISSIONE':
8583
+ dismissioneFlag = 1;
8584
+ break;
8585
+ default:
8586
+ break;
8587
+ }
8588
+ var query = "insert into altri_beni_doc (id_bene, id_doc, is_acquisto, is_collaudo, is_dismissione) values ";
8589
+ query += "(:id_bene, :id_doc, ";
8590
+ query += acquistoFlag + ", ";
8591
+ query += collaudoFlag + ", ";
8592
+ query += dismissioneFlag;
8593
+ query += ")";
8594
+ return query;
8595
+ }
8596
+ function insertDocumentoAltroBene(db_used, id_bene, id_doc, scopo) {
8597
+ var query = "";
8598
+ if (db_used) {
8599
+ switch (db_used) {
8600
+ case 'SQLITE':
8601
+ query = insertDocumentoAltroBeneSQLite(id_bene, id_doc, scopo);
8602
+ break;
8603
+ case 'MYSQL':
8604
+ query = insertDocumentoAltroBeneMySQL(id_bene, id_doc, scopo);
8605
+ break;
8606
+ case 'MYSQL2':
8607
+ query = insertDocumentoAltroBeneSQLite(id_bene, id_doc, scopo);
8608
+ break;
8609
+ }
8610
+ }
8611
+ return query;
8612
+ }
8613
+
8614
+
8615
+ function removeDocumentoAltroBeneSQLite(id_bene, id_doc) {
8616
+ var query = "delete from altri_beni_doc ";
8617
+ query += "where id_bene = " + id_bene + " and ";
8618
+ query += "id_doc = " + id_doc;
8619
+ return query;
8620
+ }
8621
+ function removeDocumentoAltroBeneMySQL(id_bene, id_doc) {
8622
+ var query = "delete from altri_beni_doc ";
8623
+ query += "where id_bene = :id_bene and ";
8624
+ query += "id_doc = :id_doc";
8625
+ return query;
8626
+ }
8627
+ function removeDocumentoAltroBene(db_used, id_bene, id_doc) {
8628
+ var query = "";
8629
+ if (db_used) {
8630
+ switch (db_used) {
8631
+ case 'SQLITE':
8632
+ query = removeDocumentoAltroBeneSQLite(id_bene, id_doc);
8633
+ break;
8634
+ case 'MYSQL':
8635
+ query = removeDocumentoAltroBeneMySQL(id_bene, id_doc);
8636
+ break;
8637
+ case 'MYSQL2':
8638
+ query = removeDocumentoAltroBeneSQLite(id_bene, id_doc);
8639
+ break;
8640
+ }
8641
+ }
8642
+ return query;
8643
+ }
8644
+
8645
+ function selectDocumentoAltroBeneByIdSQLite(id_docdev) {
8646
+ var query = "select id, id_device, id_doc, is_acquisto, is_collaudo, is_dismissione from device_doc ";
8647
+ query += "where id = " + id_docdev;
8648
+ return query;
8649
+ }
8650
+
8651
+ function selectDocumentoAltroBeneByIdMySQL(id_docdev) {
8652
+ var query = "select id, id_device, id_doc, is_acquisto, is_collaudo, is_dismissione from device_doc ";
8653
+ query += "where id = :id_docdev";
8654
+ return query;
8655
+ }
8656
+ function selectDocumentoAltroBeneById(db_used, id_docdev) {
8657
+ var query = "";
8658
+ if (db_used) {
8659
+ switch (db_used) {
8660
+ case 'SQLITE':
8661
+ query = selectDocumentoAltroBeneByIdSQLite(id_docdev);
8662
+ break;
8663
+ case 'MYSQL':
8664
+ query = selectDocumentoAltroBeneByIdMySQL(id_docdev);
8665
+ break;
8666
+ case 'MYSQL2':
8667
+ query = selectDocumentoAltroBeneByIdSQLite(id_docdev);
8668
+ break;
8669
+ }
8670
+ }
8671
+ return query;
8672
+ }
8673
+
8674
+
8675
+ function checkDocumentoAltroBeneSQLite(id_bene, id_doc) {
8676
+ var query = "select count(*) as num from device_doc ";
8677
+ query += "where id_bene = " + id_bene + " and id_doc = " + id_doc;
8678
+ return query;
8679
+ }
8680
+ function checkDocumentoAltroBeneMySQL(id_bene, id_doc) {
8681
+ var query = "select count(*) as num from device_doc ";
8682
+ query += "where id_bene = :id_bene and id_doc = :id_doc";
8683
+ return query;
8684
+ }
8685
+ function checkDocumentoAltroBene(db_used, id_bene, id_doc) {
8686
+ var query = "";
8687
+ if (db_used) {
8688
+ switch (db_used) {
8689
+ case 'SQLITE':
8690
+ query = checkDocumentoAltroBeneSQLite(id_bene, id_doc);
8691
+ break;
8692
+ case 'MYSQL':
8693
+ query = checkDocumentoAltroBeneMySQL(id_bene, id_doc);
8694
+ break;
8695
+ case 'MYSQL2':
8696
+ query = checkDocumentoAltroBeneSQLite(id_bene, id_doc);
8697
+ break;
8698
+ }
8699
+ }
8700
+ return query;
8701
+ }
8702
+
8703
+ // End altri beni
8704
+
8502
8705
  function getDocumentByIdDocSQLite(id_doc) {
8503
8706
  var query = "select c.id, c.tipo, c.anno, c.data_emissione, c.descrizione, c.riferimento, c.nome_originale, c.nome_uuid from documenti c ";
8504
8707
  query += "where c.id = " + id_doc;
@@ -12127,12 +12330,37 @@ function getAltroBeneManifacturerCombo() {
12127
12330
  return query;
12128
12331
  }
12129
12332
 
12130
- function getAltroBeneModelCombo(manifacturer) {
12333
+ function getAltroBeneModelComboSQLite(manifacturer) {
12131
12334
  var query = "select DISTINCT model from altri_beni ";
12132
- query += "where manifacturer = '" + manifacturer + "'";
12335
+ query += "where manifacturer = '" + manifacturer + "' ";
12336
+ query += "order by model";
12133
12337
  return query;
12134
12338
  }
12135
12339
 
12340
+ function getAltroBeneModelComboMySQL(manifacturer) {
12341
+ var query = "select DISTINCT model from altri_beni ";
12342
+ query += "where manifacturer = :manifacturer ";
12343
+ query += "order by model";
12344
+ return query;
12345
+ }
12346
+
12347
+ function getAltroBeneModelCombo(db_used, manifacturer) {
12348
+ var query = "";
12349
+ if (db_used) {
12350
+ switch (db_used) {
12351
+ case 'SQLITE':
12352
+ query = getAltroBeneModelComboSQLite(manifacturer);
12353
+ break;
12354
+ case 'MYSQL':
12355
+ query = getAltroBeneModelComboMySQL(manifacturer);
12356
+ break;
12357
+ case 'MYSQL2':
12358
+ query = getAltroBeneModelComboSQLite(manifacturer);
12359
+ break;
12360
+ }
12361
+ }
12362
+ return query;
12363
+ }
12136
12364
 
12137
12365
  function getAltroBeneByIdSQLite(id_bene) {
12138
12366
  var query = "select id, inv_ict3_number, inv_comune_prov, id_type, descrizione, manifacturer, model, note from altri_beni ";
@@ -12163,7 +12391,14 @@ function getAltroBeneById(db_used, id_bene) {
12163
12391
  }
12164
12392
 
12165
12393
  function getAltriBeniSQLite(id_type, manifacturer, model, id_site, id_place) {
12166
- var query = "select ab.id, ab.inv_ict3_number, ab.inv_comune_prov, a.name as tipo, ab.descrizione, ab.manifacturer, ab.model, ab.note from altri_beni ab ";
12394
+ var query = "select ab.id, ";
12395
+ query += "case ";
12396
+ query += "when ab.inv_ict3_number is not null and trim(ab.inv_ict3_number) <> '' then concat(ab.inv_ict3_number, ' (inv.)') ";
12397
+ query += "when ab.inv_comune_prov is not null and trim(ab.inv_comune_prov) <> '' then concat(ab.inv_comune_prov, ' (TN/Prov)') ";
12398
+ query += "when ab.serial_no is not null and trim(ab.serial_no) <> '' then concat(ab.serial_no, ' (S/N)') ";
12399
+ query += "else '' ";
12400
+ query += "end as codice, ";
12401
+ query += "a.name as tipo, ab.descrizione, ab.manifacturer, ab.model, ab.note from altri_beni ab ";
12167
12402
  query += "join altro_tipi a on a.id = ab.id_type "
12168
12403
  if ((id_site && id_site > 0) || (id_place && id_place != '')) {
12169
12404
  query += "left join altri_beni_site s on ab.id = s.id_bene ";
@@ -12198,7 +12433,14 @@ function getAltriBeniSQLite(id_type, manifacturer, model, id_site, id_place) {
12198
12433
  return query;
12199
12434
  }
12200
12435
  function getAltriBeniMySQL(id_type, manifacturer, model, id_site, id_place) {
12201
- var query = "select ab.id, ab.inv_ict3_number, ab.inv_comune_prov, a.name as tipo, ab.descrizione, ab.manifacturer, ab.model, note from altri_beni ";
12436
+ var query = "select ab.id, ";
12437
+ query += "case ";
12438
+ query += "when ab.inv_ict3_number is not null and trim(ab.inv_ict3_number) <> '' then concat(ab.inv_ict3_number, ' (inv.)') ";
12439
+ query += "when ab.inv_comune_prov is not null and trim(ab.inv_comune_prov) <> '' then concat(ab.inv_comune_prov, ' (TN/Prov)') ";
12440
+ query += "when ab.serial_no is not null and trim(ab.serial_no) <> '' then concat(ab.serial_no, ' (S/N)') ";
12441
+ query += "else '' ";
12442
+ query += "end as codice, ";
12443
+ query += "a.name as tipo, ab.descrizione, ab.manifacturer, ab.model, ab.note from altri_beni ab ";
12202
12444
  query += "join altro_tipi a on a.id = ab.id_type "
12203
12445
  if ((id_site && id_site > 0) || (id_place && id_place != '')) {
12204
12446
  query += "left join altri_beni_site s on ab.id = s.id_bene ";
@@ -12801,6 +13043,9 @@ module.exports = {
12801
13043
  queryDocumentsIdDevice,
12802
13044
  insertDocumentoDevice,
12803
13045
  removeDocumentoDevice,
13046
+ queryDocumentsIdAltroBene,
13047
+ insertDocumentoAltroBene,
13048
+ removeDocumentoAltroBene,
12804
13049
  selectDocumentoById,
12805
13050
  selectDocuments,
12806
13051
  selectDocumentiCombo,
@@ -12812,6 +13057,8 @@ module.exports = {
12812
13057
  queryDocumentoMotivo,
12813
13058
  checkDocumentoDevice,
12814
13059
  selectDocumentoDeviceById,
13060
+ checkDocumentoAltroBene,
13061
+ selectDocumentoAltroBeneById,
12815
13062
  //
12816
13063
  selectDismissioniByYear,
12817
13064
  selectDismissioneById,
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  ".": "./lib/modules.js",
5
5
  "./dbconn": "./lib/dbconn.js"
6
6
  },
7
- "version": "3.0.3",
7
+ "version": "3.0.5",
8
8
  "description": "Funzioni per ALSManager",
9
9
  "license": "ISC",
10
10
  "author": "Luca Cattani",