alsmanager_lib 3.0.140 → 3.0.142
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/lib/modules.js +432 -0
- package/package.json +1 -1
package/lib/modules.js
CHANGED
|
@@ -3159,6 +3159,435 @@ function buildDevicesQuery(queryList) {
|
|
|
3159
3159
|
}
|
|
3160
3160
|
|
|
3161
3161
|
// End Device select
|
|
3162
|
+
// Select devices by details
|
|
3163
|
+
function getDevicesByDetailsSelectSQLite(search_criteria, details) {
|
|
3164
|
+
var query = "SELECT DISTINCT d.id, d.type as Tipo, d.manifacturer as Marca, d.model as Modello, ";
|
|
3165
|
+
query += "case ";
|
|
3166
|
+
query += "when d.no_inventario is not null and d.no_inventario > 0 then concat(d.id,'(ID)') ";
|
|
3167
|
+
query += "when d.inv_ict3_number != '' and d.inv_ict3_number is not null then d.inv_ict3_number ";
|
|
3168
|
+
query += "when d.inv_pnrr_number != '' and d.inv_pnrr_number is not null then d.inv_pnrr_number ";
|
|
3169
|
+
query += "when d.inv_tn_number != '' and d.inv_tn_number is not null then concat(d.inv_tn_number,'(TN)') ";
|
|
3170
|
+
query += "when d.inv_tndigit_number != '' and d.inv_tndigit_number is not null then concat(d.inv_tndigit_number,'(TNDigit)') ";
|
|
3171
|
+
query += "when d.serial_no != '' and d.serial_no is not null then concat(d.serial_no,'(S/N)') ";
|
|
3172
|
+
query += "end as Codice ";
|
|
3173
|
+
query += "from devices d ";
|
|
3174
|
+
if (search_criteria.dev_status)
|
|
3175
|
+
query += "left join device_usage du on d.id = du.id_device ";
|
|
3176
|
+
if (search_criteria.dev_gestione)
|
|
3177
|
+
query += "left join device_gestioni dg on d.id = dg.id_device ";
|
|
3178
|
+
if (search_criteria.in_consegna)
|
|
3179
|
+
query += "left join consegna_beni cb on d.id = cb.id_bene ";
|
|
3180
|
+
|
|
3181
|
+
var where_clause = " where (d.is_removed is null or d.is_removed = 0) ";
|
|
3182
|
+
if (search_criteria.inv_code || search_criteria.dev_type || search_criteria.marca || search_criteria.dev_model || (search_criteria.is_PNRR && search_criteria.is_PNRR > 0) || search_criteria.dev_status || search_criteria.dev_gestione || search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3183
|
+
if (search_criteria.inv_code) {
|
|
3184
|
+
if (search_criteria.search_type == "ESATTA") {
|
|
3185
|
+
where_clause += " and (d.inv_ict3_number = '" + search_criteria.inv_code + "' or ";
|
|
3186
|
+
where_clause += "d.inv_tn_number = '" + search_criteria.inv_code + "' or ";
|
|
3187
|
+
where_clause += "d.serial_no = '" + search_criteria.inv_code + "' or ";
|
|
3188
|
+
where_clause += "d.inv_tndigit_number = '" + search_criteria.inv_code + "' or ";
|
|
3189
|
+
where_clause += "d.inv_pnrr_number = '" + search_criteria.inv_code + "')";
|
|
3190
|
+
}
|
|
3191
|
+
else {
|
|
3192
|
+
where_clause += " and (d.inv_ict3_number like '" + search_criteria.inv_code + "%' or ";
|
|
3193
|
+
where_clause += "d.inv_tn_number like '" + search_criteria.inv_code + "%' or ";
|
|
3194
|
+
where_clause += "d.serial_no like '%" + search_criteria.inv_code + "%' or ";
|
|
3195
|
+
where_clause += "d.inv_tndigit_number like '" + search_criteria.inv_code + "%' or ";
|
|
3196
|
+
where_clause += "d.inv_pnrr_number = '" + search_criteria.inv_code + "')";
|
|
3197
|
+
}
|
|
3198
|
+
}
|
|
3199
|
+
else {
|
|
3200
|
+
where_clause += " and ";
|
|
3201
|
+
if (search_criteria.dev_type) {
|
|
3202
|
+
where_clause += "d.type = '" + search_criteria.dev_type + "'";
|
|
3203
|
+
if (search_criteria.marca || (search_criteria.is_PNRR && search_criteria.is_PNRR > 0) || search_criteria.dev_status || search_criteria.dev_model || search_criteria.dev_gestione || search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3204
|
+
where_clause += " and ";
|
|
3205
|
+
}
|
|
3206
|
+
}
|
|
3207
|
+
if (search_criteria.marca) {
|
|
3208
|
+
where_clause += " d.manifacturer = '" + search_criteria.marca + "'";
|
|
3209
|
+
if ((search_criteria.is_PNRR && search_criteria.is_PNRR > 0) || search_criteria.dev_status || search_criteria.dev_model || search_criteria.dev_gestione || search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3210
|
+
where_clause += " and ";
|
|
3211
|
+
}
|
|
3212
|
+
}
|
|
3213
|
+
if (search_criteria.is_PNRR && search_criteria.is_PNRR > 0) {
|
|
3214
|
+
where_clause += " (d.inv_pnrr_number <> '' and inv_pnrr_number is not null) ";
|
|
3215
|
+
if (search_criteria.dev_status || search_criteria.dev_gestione || search_criteria.dev_model || search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3216
|
+
where_clause += " and ";
|
|
3217
|
+
}
|
|
3218
|
+
}
|
|
3219
|
+
if (search_criteria.dev_model) {
|
|
3220
|
+
where_clause += " d.model = '" + search_criteria.dev_model + "'";
|
|
3221
|
+
if (search_criteria.dev_status || search_criteria.dev_gestione || search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3222
|
+
where_clause += " and ";
|
|
3223
|
+
}
|
|
3224
|
+
}
|
|
3225
|
+
if (search_criteria.dev_status) {
|
|
3226
|
+
where_clause += " du.status = " + search_criteria.dev_status + " and (date('now') >= du.date_start and date('now') <= du.date_end)";
|
|
3227
|
+
if (search_criteria.dev_gestione || search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3228
|
+
where_clause += " and ";
|
|
3229
|
+
}
|
|
3230
|
+
}
|
|
3231
|
+
if (search_criteria.dev_gestione) {
|
|
3232
|
+
where_clause += " dg.id_gestione = " + search_criteria.dev_gestione + " and date('now') >= dg.date_start and date('now') <= dg.date_end";
|
|
3233
|
+
if (search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3234
|
+
where_clause += " and ";
|
|
3235
|
+
}
|
|
3236
|
+
}
|
|
3237
|
+
if (search_criteria.no_inv) {
|
|
3238
|
+
where_clause += " d.no_inventario = 1";
|
|
3239
|
+
if (search_criteria.in_consegna) {
|
|
3240
|
+
where_clause += " and ";
|
|
3241
|
+
}
|
|
3242
|
+
}
|
|
3243
|
+
if (search_criteria.in_consegna) {
|
|
3244
|
+
where_clause += " (cb.id_consegna is not null and cb.tipo_bene = 'DEVICE' and cb.stato_restituzione = 0)"
|
|
3245
|
+
}
|
|
3246
|
+
}
|
|
3247
|
+
}
|
|
3248
|
+
if (search_criteria.id_dev_exclude > 0) {
|
|
3249
|
+
where_clause += " and d.id <> " + search_criteria.id_dev_exclude;
|
|
3250
|
+
}
|
|
3251
|
+
query += where_clause;
|
|
3252
|
+
return query;
|
|
3253
|
+
}
|
|
3254
|
+
|
|
3255
|
+
function getDevicesByDetailsSelectMySQL(search_criteria, details) {
|
|
3256
|
+
var query = "SELECT DISTINCT d.id, d.type as Tipo, d.manifacturer as Marca, d.model as Modello, ";
|
|
3257
|
+
query += "case ";
|
|
3258
|
+
query += "when d.inv_ict3_number != '' and d.inv_ict3_number is not null then d.inv_ict3_number ";
|
|
3259
|
+
query += "when d.inv_pnrr_number != '' and d.inv_pnrr_number is not null then d.inv_pnrr_number ";
|
|
3260
|
+
query += "when d.inv_tn_number != '' and d.inv_tn_number is not null then concat(d.inv_tn_number,'(TN)') ";
|
|
3261
|
+
query += "when d.inv_tndigit_number != '' and d.inv_tndigit_number is not null then concat(d.inv_tndigit_number,'(TNDigit)') ";
|
|
3262
|
+
query += "when d.serial_no != '' and d.serial_no is not null then concat(d.serial_no,'(S/N)') ";
|
|
3263
|
+
query += "end as Codice ";
|
|
3264
|
+
query += "from devices d ";
|
|
3265
|
+
if (search_criteria.dev_status)
|
|
3266
|
+
query += "left join device_usage du on d.id = du.id_device ";
|
|
3267
|
+
if (search_criteria.dev_gestione)
|
|
3268
|
+
query += "left join device_gestioni dg on d.id = dg.id_device ";
|
|
3269
|
+
if (search_criteria.in_consegna)
|
|
3270
|
+
query += "left join consegna_beni cb on d.id = cb.id_bene ";
|
|
3271
|
+
|
|
3272
|
+
if (details) {
|
|
3273
|
+
if (search_criteria.search_type == "DESKTOP" || search_criteria.search_type == "NOTEBOOK") {
|
|
3274
|
+
query += "left join device_pc dd on d.id = dd.id_device ";
|
|
3275
|
+
}
|
|
3276
|
+
else if (search_criteria.search_type == "A") {
|
|
3277
|
+
|
|
3278
|
+
}
|
|
3279
|
+
else if (search_criteria.search_type == "B") {
|
|
3280
|
+
|
|
3281
|
+
}
|
|
3282
|
+
else if (search_criteria.search_type == "C") {
|
|
3283
|
+
|
|
3284
|
+
}
|
|
3285
|
+
}
|
|
3286
|
+
|
|
3287
|
+
var where_clause = " where (d.is_removed is null or d.is_removed = 0) ";
|
|
3288
|
+
if (search_criteria.inv_code || search_criteria.dev_type || search_criteria.marca || search_criteria.dev_model || (search_criteria.is_PNRR && search_criteria.is_PNRR > 0) || search_criteria.dev_status || search_criteria.dev_gestione || search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3289
|
+
if (search_criteria.inv_code) {
|
|
3290
|
+
if (search_criteria.search_type == "ESATTA") {
|
|
3291
|
+
where_clause += " and (d.inv_ict3_number = :inv_code or ";
|
|
3292
|
+
where_clause += "d.inv_tn_number = :inv_code or ";
|
|
3293
|
+
where_clause += "d.inv_tndigit_number = :inv_code or ";
|
|
3294
|
+
where_clause += "d.serial_no = :inv_code or ";
|
|
3295
|
+
where_clause += "d.inv_pnrr_number = :inv_code)";
|
|
3296
|
+
}
|
|
3297
|
+
else {
|
|
3298
|
+
where_clause += " and (d.inv_ict3_number like :inv_code or ";
|
|
3299
|
+
where_clause += "d.inv_tn_number like :inv_code or ";
|
|
3300
|
+
where_clause += "d.inv_tndigit_number like :inv_code or ";
|
|
3301
|
+
where_clause += "d.serial_no like :inv_code or ";
|
|
3302
|
+
where_clause += "d.inv_pnrr_number = :inv_code)";
|
|
3303
|
+
}
|
|
3304
|
+
}
|
|
3305
|
+
else {
|
|
3306
|
+
where_clause += " and ";
|
|
3307
|
+
if (search_criteria.dev_type) {
|
|
3308
|
+
where_clause += " d.type = :dev_type";
|
|
3309
|
+
if (search_criteria.marca || search_criteria.dev_model || (search_criteria.is_PNRR && search_criteria.is_PNRR > 0 || search_criteria.dev_status || search_criteria.dev_gestione || search_criteria.no_inv || search_criteria.in_consegna)) {
|
|
3310
|
+
where_clause += " and ";
|
|
3311
|
+
}
|
|
3312
|
+
}
|
|
3313
|
+
if (search_criteria.marca) {
|
|
3314
|
+
where_clause += " d.manifacturer = :marca";
|
|
3315
|
+
if (search_criteria.dev_model || search_criteria.is_PNRR && search_criteria.is_PNRR > 0 || search_criteria.dev_status || search_criteria.dev_gestione|| search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3316
|
+
where_clause += " and ";
|
|
3317
|
+
}
|
|
3318
|
+
}
|
|
3319
|
+
if (search_criteria.is_PNRR && search_criteria.is_PNRR > 0) {
|
|
3320
|
+
where_clause += " (d.inv_pnrr_number <> '' and inv_pnrr_number is not null) ";
|
|
3321
|
+
if (search_criteria.dev_model || search_criteria.dev_status || search_criteria.dev_gestione || search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3322
|
+
where_clause += " and ";
|
|
3323
|
+
}
|
|
3324
|
+
}
|
|
3325
|
+
if (search_criteria.dev_model) {
|
|
3326
|
+
where_clause += " d.model = :dev_model ";
|
|
3327
|
+
if (search_criteria.dev_status || search_criteria.dev_gestione || search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3328
|
+
where_clause += " and ";
|
|
3329
|
+
}
|
|
3330
|
+
}
|
|
3331
|
+
if (search_criteria.dev_status) {
|
|
3332
|
+
where_clause += " du.status = :dev_status and (CURDATE() >= du.date_start and CURDATE() <= du.date_end) ";
|
|
3333
|
+
if (search_criteria.dev_gestione || search_criteria.no_inv) {
|
|
3334
|
+
where_clause += " and ";
|
|
3335
|
+
}
|
|
3336
|
+
}
|
|
3337
|
+
if (search_criteria.dev_gestione) {
|
|
3338
|
+
where_clause += " dg.id_gestione = :dev_gestione and CURDATE() >= dg.date_start and CURDATE() <= dg.date_end";
|
|
3339
|
+
if (search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3340
|
+
where_clause += " and ";
|
|
3341
|
+
}
|
|
3342
|
+
}
|
|
3343
|
+
if (search_criteria.no_inv) {
|
|
3344
|
+
where_clause += " d.no_inventario = 1";
|
|
3345
|
+
if (search_criteria.in_consegna) {
|
|
3346
|
+
where_clause += " and ";
|
|
3347
|
+
}
|
|
3348
|
+
}
|
|
3349
|
+
if (search_criteria.in_consegna) {
|
|
3350
|
+
where_clause += " (cb.id_consegna is not null and cb.tipo_bene = 'DEVICE' and cb.stato_restituzione = 0)"
|
|
3351
|
+
}
|
|
3352
|
+
}
|
|
3353
|
+
}
|
|
3354
|
+
if (search_criteria.id_dev_exclude > 0) {
|
|
3355
|
+
where_clause += " and d.id <> :id_dev_exclude";
|
|
3356
|
+
}
|
|
3357
|
+
if (details) {
|
|
3358
|
+
if (search_criteria.search_type == "DESKTOP" || search_criteria.search_type == "NOTEBOOK") {
|
|
3359
|
+
query += "left join device_pc dd on d.id = dd.id_device ";
|
|
3360
|
+
}
|
|
3361
|
+
else if (search_criteria.search_type == "A") {
|
|
3362
|
+
|
|
3363
|
+
}
|
|
3364
|
+
else if (search_criteria.search_type == "B") {
|
|
3365
|
+
|
|
3366
|
+
}
|
|
3367
|
+
else if (search_criteria.search_type == "C") {
|
|
3368
|
+
|
|
3369
|
+
}
|
|
3370
|
+
if (details.network || details.mac_address) {
|
|
3371
|
+
query += "left join device_networks dn on d.id = dn.id_device ";
|
|
3372
|
+
}
|
|
3373
|
+
if (details.storage) {
|
|
3374
|
+
query += "left join device_storages dr on d.id = dr.id_device ";
|
|
3375
|
+
}
|
|
3376
|
+
if (details.addon) {
|
|
3377
|
+
query += "left join device_addons don on d.id = don.id_device ";
|
|
3378
|
+
}
|
|
3379
|
+
}
|
|
3380
|
+
/*
|
|
3381
|
+
objDetails.version = version;
|
|
3382
|
+
objDetails.storage = storage;
|
|
3383
|
+
objDetails.addon = addon;
|
|
3384
|
+
objDetails.network = network;
|
|
3385
|
+
objDetails.mac_address = mac_address;
|
|
3386
|
+
objDetails.name = name;
|
|
3387
|
+
*/
|
|
3388
|
+
query += where_clause;
|
|
3389
|
+
// Filtro su dettagli...
|
|
3390
|
+
if (details) {
|
|
3391
|
+
if (search_criteria.search_type == "DESKTOP" || search_criteria.search_type == "NOTEBOOK") {
|
|
3392
|
+
where_clause += " and ";
|
|
3393
|
+
if (details.os) {
|
|
3394
|
+
where_clause += "(dd.os == '" + details.os + "') ";
|
|
3395
|
+
if (details.version || details.storage || details.addon || details.network || details.storage || details.mac_address || details.name) {
|
|
3396
|
+
where_clause += " and ";
|
|
3397
|
+
}
|
|
3398
|
+
}
|
|
3399
|
+
if (details.os) {
|
|
3400
|
+
where_clause += "(dd.version == '" + details.version + "') ";
|
|
3401
|
+
if (details.storage || details.addon || details.network || details.mac_address || details.name) {
|
|
3402
|
+
where_clause += " and ";
|
|
3403
|
+
}
|
|
3404
|
+
}
|
|
3405
|
+
if (details.name) {
|
|
3406
|
+
where_clause += "(dd.pc_name == '" + details.name + "') ";
|
|
3407
|
+
if (details.storage || details.addon || details.network || details.mac_address) {
|
|
3408
|
+
where_clause += " and ";
|
|
3409
|
+
}
|
|
3410
|
+
}
|
|
3411
|
+
|
|
3412
|
+
}
|
|
3413
|
+
else if (search_criteria.search_type == "A") {
|
|
3414
|
+
|
|
3415
|
+
}
|
|
3416
|
+
else if (search_criteria.search_type == "B") {
|
|
3417
|
+
|
|
3418
|
+
}
|
|
3419
|
+
else if (search_criteria.search_type == "C") {
|
|
3420
|
+
|
|
3421
|
+
}
|
|
3422
|
+
|
|
3423
|
+
|
|
3424
|
+
|
|
3425
|
+
if (details.network) {
|
|
3426
|
+
where_clause += "(dn.net_type == '" + details.network + "') ";
|
|
3427
|
+
if (details.storage || details.addon || details.network || details.mac_address) {
|
|
3428
|
+
where_clause += " and ";
|
|
3429
|
+
}
|
|
3430
|
+
}
|
|
3431
|
+
if (details.mac_address) {
|
|
3432
|
+
where_clause += "(dn.mac_address == '" + details.mac_address + "') ";
|
|
3433
|
+
if (details.storage || details.addon) {
|
|
3434
|
+
where_clause += " and ";
|
|
3435
|
+
}
|
|
3436
|
+
}
|
|
3437
|
+
if (details.storage) {
|
|
3438
|
+
where_clause += "(dr.storage_type == '" + details.storage + "') ";
|
|
3439
|
+
if (details.addon) {
|
|
3440
|
+
where_clause += " and ";
|
|
3441
|
+
}
|
|
3442
|
+
}
|
|
3443
|
+
if (details.addon) {
|
|
3444
|
+
where_clause += "(don.addon_type == '" + details.addon + "') ";
|
|
3445
|
+
}
|
|
3446
|
+
}
|
|
3447
|
+
query += "order by id";
|
|
3448
|
+
return query;
|
|
3449
|
+
}
|
|
3450
|
+
|
|
3451
|
+
function getDevicesByDetailsSelectMySQL2(search_criteria, details) {
|
|
3452
|
+
var query = "SELECT DISTINCT d.id, d.type as Tipo, d.manifacturer as Marca, d.model as Modello, ";
|
|
3453
|
+
query += "case ";
|
|
3454
|
+
query += "when d.inv_ict3_number != '' and d.inv_ict3_number is not null then d.inv_ict3_number ";
|
|
3455
|
+
query += "when d.inv_pnrr_number != '' and d.inv_pnrr_number is not null then d.inv_pnrr_number ";
|
|
3456
|
+
query += "when d.inv_tn_number != '' and d.inv_tn_number is not null then concat(d.inv_tn_number,'(TN)') ";
|
|
3457
|
+
query += "when d.inv_tndigit_number != '' and d.inv_tndigit_number is not null then concat(d.inv_tndigit_number,'(TNDigit)') ";
|
|
3458
|
+
query += "when d.serial_no != '' and d.serial_no is not null then concat(d.serial_no,'(S/N)') ";
|
|
3459
|
+
query += "end as Codice ";
|
|
3460
|
+
query += "from devices d ";
|
|
3461
|
+
if (search_criteria.dev_status)
|
|
3462
|
+
query += "left join device_usage du on d.id = du.id_device ";
|
|
3463
|
+
if (search_criteria.dev_gestione)
|
|
3464
|
+
query += "left join device_gestioni dg on d.id = dg.id_device ";
|
|
3465
|
+
if (search_criteria.in_consegna)
|
|
3466
|
+
query += "left join consegna_beni cb on d.id = cb.id_bene ";
|
|
3467
|
+
|
|
3468
|
+
var where_clause = " where (d.is_removed is null or d.is_removed = 0) ";
|
|
3469
|
+
if (search_criteria.inv_code || search_criteria.dev_type || search_criteria.marca || search_criteria.dev_model || (search_criteria.is_PNRR && search_criteria.is_PNRR > 0) || search_criteria.dev_status || search_criteria.dev_gestione || search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3470
|
+
if (search_criteria.inv_code) {
|
|
3471
|
+
if (search_criteria.search_type == "ESATTA") {
|
|
3472
|
+
where_clause += " and (d.inv_ict3_number = '" + search_criteria.inv_code + "' or ";
|
|
3473
|
+
where_clause += "d.inv_tn_number = '" + search_criteria.inv_code + "' or ";
|
|
3474
|
+
where_clause += "d.serial_no = '" + search_criteria.inv_code + "' or ";
|
|
3475
|
+
where_clause += "d.inv_tndigit_number = '" + search_criteria.inv_code + "' or ";
|
|
3476
|
+
where_clause += "d.inv_pnrr_number = '" + search_criteria.inv_code + "')";
|
|
3477
|
+
}
|
|
3478
|
+
else {
|
|
3479
|
+
where_clause += " and (d.inv_ict3_number like '" + search_criteria.inv_code + "%' or ";
|
|
3480
|
+
where_clause += "d.inv_tn_number like '" + search_criteria.inv_code + "%' or ";
|
|
3481
|
+
where_clause += "d.serial_no like '%" + search_criteria.inv_code + "%' or ";
|
|
3482
|
+
where_clause += "d.inv_tndigit_number like '" + search_criteria.inv_code + "%' or ";
|
|
3483
|
+
where_clause += "d.inv_pnrr_number = '" + search_criteria.inv_code + "')";
|
|
3484
|
+
}
|
|
3485
|
+
}
|
|
3486
|
+
else {
|
|
3487
|
+
where_clause += " and ";
|
|
3488
|
+
if (search_criteria.dev_type) {
|
|
3489
|
+
where_clause += "d.type = '" + search_criteria.dev_type + "'";
|
|
3490
|
+
if (search_criteria.marca || (search_criteria.is_PNRR && search_criteria.is_PNRR > 0) || search_criteria.dev_status || search_criteria.dev_model || search_criteria.dev_gestione || search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3491
|
+
where_clause += " and ";
|
|
3492
|
+
}
|
|
3493
|
+
}
|
|
3494
|
+
if (search_criteria.marca) {
|
|
3495
|
+
where_clause += " d.manifacturer = '" + search_criteria.marca + "'";
|
|
3496
|
+
if ((search_criteria.is_PNRR && search_criteria.is_PNRR > 0) || search_criteria.dev_status || search_criteria.dev_model || search_criteria.dev_gestione || search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3497
|
+
where_clause += " and ";
|
|
3498
|
+
}
|
|
3499
|
+
}
|
|
3500
|
+
if (search_criteria.is_PNRR && search_criteria.is_PNRR > 0) {
|
|
3501
|
+
where_clause += " (d.inv_pnrr_number <> '' and inv_pnrr_number is not null) ";
|
|
3502
|
+
if (search_criteria.dev_status || search_criteria.dev_model || search_criteria.dev_gestione || search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3503
|
+
where_clause += " and ";
|
|
3504
|
+
}
|
|
3505
|
+
}
|
|
3506
|
+
if (search_criteria.dev_model) {
|
|
3507
|
+
where_clause += " d.model = '" + search_criteria.dev_model + "'";
|
|
3508
|
+
if (search_criteria.dev_status || search_criteria.dev_gestione || search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3509
|
+
where_clause += " and ";
|
|
3510
|
+
}
|
|
3511
|
+
}
|
|
3512
|
+
if (search_criteria.dev_status) {
|
|
3513
|
+
where_clause += " du.status = :dev_status and (CURDATE() >= du.date_start and CURDATE() <= du.date_end) ";
|
|
3514
|
+
if (search_criteria.dev_gestione || search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3515
|
+
where_clause += " and ";
|
|
3516
|
+
}
|
|
3517
|
+
}
|
|
3518
|
+
if (search_criteria.dev_gestione) {
|
|
3519
|
+
where_clause += " dg.id_gestione = " + search_criteria.dev_gestione + " and CURDATE() >= dg.date_start and CURDATE() <= dg.date_end";
|
|
3520
|
+
if (search_criteria.no_inv || search_criteria.in_consegna) {
|
|
3521
|
+
where_clause += " and ";
|
|
3522
|
+
}
|
|
3523
|
+
}
|
|
3524
|
+
if (search_criteria.no_inv) {
|
|
3525
|
+
where_clause += " d.no_inventario = 1";
|
|
3526
|
+
if (search_criteria.in_consegna) {
|
|
3527
|
+
where_clause += " and ";
|
|
3528
|
+
}
|
|
3529
|
+
}
|
|
3530
|
+
if (search_criteria.in_consegna) {
|
|
3531
|
+
where_clause += " (cb.id_consegna is not null and cb.tipo_bene = 'DEVICE' and cb.stato_restituzione = 0)"
|
|
3532
|
+
}
|
|
3533
|
+
}
|
|
3534
|
+
}
|
|
3535
|
+
if (search_criteria.id_dev_exclude > 0) {
|
|
3536
|
+
where_clause += " and d.id <> " + search_criteria.id_dev_exclude;
|
|
3537
|
+
}
|
|
3538
|
+
query += where_clause;
|
|
3539
|
+
return query;
|
|
3540
|
+
}
|
|
3541
|
+
|
|
3542
|
+
function getDevicesByDetailsSelect(db_used, search_criteria, details) {
|
|
3543
|
+
var query = "";
|
|
3544
|
+
if (db_used) {
|
|
3545
|
+
switch (db_used) {
|
|
3546
|
+
case 'SQLITE':
|
|
3547
|
+
query = getDevicesByDetailsSelectSQLite(search_criteria, details);
|
|
3548
|
+
break;
|
|
3549
|
+
case 'MYSQL':
|
|
3550
|
+
query = getDevicesByDetailsSelectMySQL(search_criteria, details);
|
|
3551
|
+
break;
|
|
3552
|
+
case 'MYSQL2':
|
|
3553
|
+
query = getDevicesByDetailsSelectMySQL2(search_criteria, details);
|
|
3554
|
+
break;
|
|
3555
|
+
}
|
|
3556
|
+
}
|
|
3557
|
+
return query;
|
|
3558
|
+
}
|
|
3559
|
+
|
|
3560
|
+
function createDeviceSelectObj(search_type, inv_code, dev_type, marca, dev_model, is_PNRR, dev_status, dev_gestione, no_inv, in_consegna, id_dev_exclude) {
|
|
3561
|
+
var search_criteria = {};
|
|
3562
|
+
search_criteria.search_type = search_type;
|
|
3563
|
+
search_criteria.inv_code = inv_code;
|
|
3564
|
+
search_criteria.dev_type = dev_type;
|
|
3565
|
+
search_criteria.marca = marca;
|
|
3566
|
+
search_criteria.dev_model = dev_model;
|
|
3567
|
+
search_criteria.is_PNRR = is_PNRR;
|
|
3568
|
+
search_criteria.dev_status = dev_status;
|
|
3569
|
+
search_criteria.dev_gestione = dev_gestione;
|
|
3570
|
+
search_criteria.no_inv = no_inv;
|
|
3571
|
+
search_criteria.in_consegna = in_consegna;
|
|
3572
|
+
search_criteria.id_dev_exclude = id_dev_exclude;
|
|
3573
|
+
return search_criteria;
|
|
3574
|
+
}
|
|
3575
|
+
|
|
3576
|
+
function createDetailsObj(os, version, storage, addon, network, mac_address, name) {
|
|
3577
|
+
var objDetails = {};
|
|
3578
|
+
objDetails.os = os;
|
|
3579
|
+
objDetails.version = version;
|
|
3580
|
+
objDetails.storage = storage;
|
|
3581
|
+
objDetails.addon = addon;
|
|
3582
|
+
objDetails.network = network;
|
|
3583
|
+
objDetails.mac_address = mac_address;
|
|
3584
|
+
objDetails.name = name;
|
|
3585
|
+
|
|
3586
|
+
return objDetails;
|
|
3587
|
+
}
|
|
3588
|
+
// End Select devices by details
|
|
3589
|
+
|
|
3590
|
+
|
|
3162
3591
|
// Select by idDoc
|
|
3163
3592
|
function getDevicesByIdDocSQLite(id_doc) {
|
|
3164
3593
|
var query = "SELECT DISTINCT d.id, d.type as Tipo, d.manifacturer as Marca, d.model as Modello, ";
|
|
@@ -15280,6 +15709,9 @@ module.exports = {
|
|
|
15280
15709
|
queryNetworksByFilter,
|
|
15281
15710
|
getDevicesSelectByRelated,
|
|
15282
15711
|
getDevicesSelect,
|
|
15712
|
+
getDevicesByDetailsSelect,
|
|
15713
|
+
createDeviceSelectObj,
|
|
15714
|
+
createDetailsObj,
|
|
15283
15715
|
getDevicesByIdDoc,
|
|
15284
15716
|
getDevicesSelectBySite,
|
|
15285
15717
|
queryDeviceById,
|