bonsaif 1.10.39 → 1.10.41

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.
@@ -24,24 +24,24 @@ const find=async(options,dbm, col, query, orderby, limit)=>{
24
24
  //let obj_result = {"alias":alias,"dml":dml,"headers":"","columns":0,"error":0,"msg":"","ip":ip, "time":0}
25
25
  return new Promise((resolve, reject)=>{
26
26
  mongoclient.then(
27
- async function(client){
28
- try{
29
- let db = client.db(dbm);
30
- let result = await db.collection(col).find(query).sort(orderby).limit(limit).toArray();
31
- const end = Date.now();
32
- const time = end - start;
33
- resolve({"result":{"dml":"find", "headers":getFields(result[0]), "time":utl.milisegundosASegundos(time), code:200, error:0}, data:result});
34
- }catch(err){
35
- const end = Date.now();
36
- const time = end - start;
37
- resolve({"result":{"dml":"find", "headers":"", "time":utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
38
- }finally{
39
- try{
40
- await exec.mongoClose(client);
41
- }catch(e){
42
- utl.log('err.find.close '+e);
43
- }
44
- }
27
+ function(client){
28
+ let db = client.db(dbm);
29
+ db.collection(col).find(query).sort(orderby).limit(limit).toArray(function(err, result) {
30
+ const end = Date.now();
31
+ const time = end - start;
32
+
33
+ if (err) {
34
+ resolve({"result":{"dml":"find", "headers":"", "time":utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
35
+ }else{
36
+ resolve({"result":{"dml":"find", "headers":getFields(result[0]), "time":utl.milisegundosASegundos(time), code:200, error:0}, data:result});
37
+ }
38
+
39
+ try{
40
+ exec.mongoClose(mongoclient);
41
+ }catch(e){
42
+ utl.log('err.find '+e);
43
+ }
44
+ });
45
45
  }
46
46
  ).catch(err=>{
47
47
  resolve({"result":{"dml":"find", "headers":"", time:0, code:404, error:1}, "results":err});
@@ -57,35 +57,28 @@ const count=async(options,dbm, col, json)=>{
57
57
  const start = Date.now();
58
58
  return new Promise((resolve, reject)=>{
59
59
  mongoclient.then(
60
- async function(client){
61
- try{
62
- let db = client.db(dbm);
63
- let res;
64
- // Compatibilidad con versiones antiguas y nuevas de MongoDB
65
- if (typeof db.collection(col).countDocuments === 'function') {
66
- res = await db.collection(col).countDocuments(query);
67
- } else {
68
- // Fallback para versiones anteriores
69
- res = await db.collection(col).count(query);
70
- }
71
- const end = Date.now();
72
- const time = end - start;
73
- let data = {"count":res};
74
- resolve({"result":{dml:"count", headers:"count", "time":utl.milisegundosASegundos(time), code:200, error:0}, results:res, data});
75
- }catch(err){
60
+ function(client){
61
+ let db = client.db(dbm);
62
+ db.collection(col).find(query).count(function(err, res) {
63
+
76
64
  const end = Date.now();
77
65
  const time = end - start;
78
- resolve({result:{dml:"count", headers:"", time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
79
- }finally{
80
- try{
81
- await exec.mongoClose(client);
82
- }catch(e){
83
- utl.log('err.count.close '+e);
84
- }
85
- }
66
+
67
+ if (err) {
68
+ resolve({result:{dml:"count", headers:"", time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
69
+ }else{
70
+ let data = {"count":res};
71
+ resolve({"result":{dml:"count", headers:"count", "time":utl.milisegundosASegundos(time), code:200, error:0}, results:res, data});
72
+ }
73
+ try{
74
+ exec.mongoClose(mongoclient);
75
+ }catch(e){
76
+ utl.log('err.count '+e);
77
+ }
78
+ });
86
79
  }
87
80
  ).catch(err=>{
88
- resolve({result:{dml:"count", headers:"", time:0, code:404, error:1}, results:err});
81
+ resolve({result:{dml:"insert", headers:"", time:0, code:404, error:1}, results:err});
89
82
  });
90
83
  })
91
84
  }
@@ -109,26 +102,24 @@ const insert= async(options,dbm, col, json_obj)=>{
109
102
 
110
103
  return new Promise((resolve, reject)=>{
111
104
  mongoclient.then(
112
- async function(client){
113
- try{
114
- let db = client.db(dbm);
115
- let res = await db.collection(col).insertOne(json_insert);
116
- const end = Date.now();
117
- const time = end - start;
118
- let data = {"insertId":_id};
119
- let ops=res.ops!=null?res.ops:{};
120
- resolve({result:{dml:"insert", headers:"insertId", insertId:_id, time:utl.milisegundosASegundos(time), code:200, error:0}, results:{WriteResult:'1 document inserted', ops}, data:[data]});
121
- }catch(err){
122
- const end = Date.now();
123
- const time = end - start;
124
- resolve({result:{dml:"insert", headers:"insertId", insertId:_id, time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
125
- }finally{
126
- try{
127
- await exec.mongoClose(client);
128
- }catch(e){
129
- utl.log('err.insert.close '+e);
130
- }
131
- }
105
+ function(client){
106
+ let db = client.db(dbm);
107
+ db.collection(col).insertOne(json_insert, function(err, res) {
108
+ const end = Date.now();
109
+ const time = end - start;
110
+ if (err) {
111
+ resolve({result:{dml:"insert", headers:"insertId", insertId:_id, time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
112
+ }else{
113
+ let data = {"insertId":_id};
114
+ let ops=res.ops!=null?res.ops:{};
115
+ resolve({result:{dml:"insert", headers:"insertId", insertId:_id, time:utl.milisegundosASegundos(time), code:200, error:0}, results:{WriteResult:'1 document inserted', ops}, data:[data]});
116
+ }
117
+ try{
118
+ exec.mongoClose(mongoclient);
119
+ }catch(e){
120
+ utl.log('err.insert '+e);
121
+ }
122
+ });
132
123
  }
133
124
  ).catch(err=>{
134
125
  resolve({"result":{"dml":"insert", "headers":"", time:0, code:404, error:1}, results:err});
@@ -146,26 +137,24 @@ const update=async(options,dbm, col, json_obj, query)=>{
146
137
 
147
138
  return new Promise((resolve, reject)=>{
148
139
  mongoclient.then(
149
- async function(client){
150
- try{
151
- let db = client.db(dbm);
152
- let res = await db.collection(col).updateOne(query, { $set: json_obj });
140
+ function(client){
141
+ let db = client.db(dbm);
142
+ db.collection(col).updateOne(query, { $set: json_obj }, function(err, res) {
153
143
  const end = Date.now();
154
144
  const time = end - start;
155
145
  let result, nModified=0;
156
- try{ result = res.result; nModified = res.modifiedCount || res.result?.nModified || 0; } catch(e){ }
157
- resolve({result:{dml:"update", headers:"update", time:utl.milisegundosASegundos(time), code:200, error:0}, results:{WriteResult:`${nModified} document Updated`, result }});
158
- }catch(err){
159
- const end = Date.now();
160
- const time = end - start;
161
- resolve({result:{dml:"update", headers:"", time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
162
- }finally{
163
- try{
164
- await exec.mongoClose(client);
165
- }catch(e){
166
- utl.log('err.update.close '+e);
167
- }
168
- }
146
+ try{ result = res.result; nModified = res.result.nModified; } catch(e){ }
147
+ if (err) {
148
+ resolve({result:{dml:"update", headers:"", time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
149
+ }else{
150
+ resolve({result:{dml:"update", headers:"update", time:utl.milisegundosASegundos(time), code:200, error:0}, results:{WriteResult:`${nModified} document Updated`, result }});
151
+ }
152
+ try{
153
+ exec.mongoClose(mongoclient);
154
+ }catch(e){
155
+ utl.log('err.update '+e);
156
+ }
157
+ });
169
158
  }
170
159
  ).catch(err=>{
171
160
  resolve({result:{dml:"update", headers:"", time:0, code:404, error:1}, results:err});
@@ -213,27 +202,25 @@ const dbs=async(options)=>{
213
202
  const start = Date.now();
214
203
  return new Promise((resolve, reject)=>{
215
204
  mongoclient.then(
216
- async function(client){
217
- try{
218
- let db = client.db().admin();
219
- let res = await db.listDatabases();
220
- const end = Date.now();
221
- const time = end - start;
222
- res.time=utl.milisegundosASegundos(time);
223
- let databases=res.databases!=null?res.databases:{};
224
- let totalSize=res.totalSize!=null?res.totalSize:0;
225
- resolve({result:{dml:"dbs", headers:getFields(databases[0]), time:utl.milisegundosASegundos(time), code:200, error:0}, results:{totalSize}, data:databases});
226
- }catch(err){
227
- const end = Date.now();
228
- const time = end - start;
229
- resolve({result:{dml:"dbs", headers:"", time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
230
- }finally{
231
- try{
232
- await exec.mongoClose(client);
233
- }catch(e){
234
- utl.log('err.dbs.close '+e);
235
- }
236
- }
205
+ function(client){
206
+ let db = client.db().admin();
207
+ db.listDatabases(function(err, res) {
208
+ const end = Date.now();
209
+ const time = end - start;
210
+ if (err) {
211
+ resolve({result:{dml:"dbs", headers:"", time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
212
+ }else{
213
+ res.time=utl.milisegundosASegundos(time);
214
+ let databases=res.databases!=null?res.databases:{};
215
+ let totalSize=res.totalSize!=null?res.totalSize:0;
216
+ resolve({result:{dml:"dbs", headers:getFields(databases[0]), time:utl.milisegundosASegundos(time), code:200, error:0}, results:{totalSize}, data:databases});
217
+ }
218
+ try{
219
+ exec.mongoClose(mongoclient);
220
+ }catch(e){
221
+ utl.log('err.dbs '+e);
222
+ }
223
+ });
237
224
  }
238
225
  ).catch(err=>{
239
226
  resolve({result:{dml:"dbs", headers:"", time:0, code:404, error:1}, results:err});
@@ -248,24 +235,24 @@ const collections=async(options,dbm)=>{
248
235
  const start = Date.now();
249
236
  return new Promise((resolve, reject)=>{
250
237
  mongoclient.then(
251
- async function(client){
252
- try{
253
- let db = client.db(dbm);
254
- let res = await db.listCollections().toArray();
255
- const end = Date.now();
256
- const time = end - start;
257
- resolve({result:{dml:"collections", headers:"name", time:utl.milisegundosASegundos(time), code:200, error:0}, results:res, data:res});
258
- }catch(err){
238
+ function(client){
239
+ let db = client.db(dbm);
240
+ db.listCollections().toArray(function(err, res) {
241
+
259
242
  const end = Date.now();
260
243
  const time = end - start;
261
- resolve({result:{dml:"collections", headers:"", time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
262
- }finally{
263
- try{
264
- await exec.mongoClose(client);
265
- }catch(e){
266
- utl.log('err.collections.close '+e);
267
- }
268
- }
244
+
245
+ if (err) {
246
+ resolve({result:{dml:"collections", headers:"", time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
247
+ }else{
248
+ resolve({result:{dml:"collections", headers:"name", time:utl.milisegundosASegundos(time), code:200, error:0}, results:res, data:res});
249
+ }
250
+ try{
251
+ exec.mongoClose(mongoclient);
252
+ }catch(e){
253
+ utl.log('err.collections '+e);
254
+ }
255
+ });
269
256
  }
270
257
  ).catch(err=>{
271
258
  resolve({result:{dml:"collections", headers:"", time:0, code:404, error:1}, results:err});
@@ -407,33 +394,32 @@ const command=async(options,dbm, json)=>{
407
394
 
408
395
  return new Promise((resolve, reject)=>{
409
396
  mongoclient.then(
410
- async function(client){
411
- try{
412
- let db = client.db(dbm);
413
- let res = await db.command(json);
414
- const end = Date.now();
415
- const time = end - start;
397
+ function(client){
398
+ let db = client.db(dbm);
399
+ db.command(json,function(err, res) {
400
+ const end = Date.now();
401
+ const time = end - start;
416
402
 
417
- if (find){
418
- let rFind = res.cursor.firstBatch;
419
- resolve({result:{dml:"find", headers:getFields(rFind[0]), time:utl.milisegundosASegundos(time), code:200, error:0}, data:rFind});
420
- }else{
421
- resolve({result:{dml:"command", headers:"", time:utl.milisegundosASegundos(time), code:200, error:0}, results:res});
422
- }
423
- }catch(err){
424
- const end = Date.now();
425
- const time = end - start;
426
- resolve({result:{dml:"command", headers:"", time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
427
- }finally{
428
- try{
429
- await exec.mongoClose(client);
430
- }catch(e){
431
- utl.log('err.command.close '+e);
432
- }
433
- }
403
+ if (err) {
404
+ resolve({result:{dml:"command", headers:"", time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
405
+ }else{
406
+ if (find){
407
+ let rFind = res.cursor.firstBatch;
408
+ resolve({result:{dml:"find", headers:getFields(rFind[0]), time:utl.milisegundosASegundos(time), code:200, error:0}, data:rFind});
409
+ }else{
410
+ resolve({result:{dml:"command", headers:"", time:utl.milisegundosASegundos(time), code:200, error:0}, results:res});
411
+ }
412
+ }
413
+
414
+ try{
415
+ exec.mongoClose(mongoclient);
416
+ }catch(e){
417
+ utl.log('err.find '+e);
418
+ }
419
+ });
434
420
  }
435
421
  ).catch(err=>{
436
- resolve({result:{dml:"command", headers:"", time:0, code:404, error:1}, results:err});
422
+ resolve({result:{dml:"insert", headers:"", time:0, code:404, error:1}, results:err});
437
423
  });
438
424
  })
439
425
  }
@@ -445,24 +431,24 @@ const deleteMany=async(options,dbm, col, json)=>{
445
431
  const start = Date.now();
446
432
  return new Promise((resolve, reject)=>{
447
433
  mongoclient.then(
448
- async function(client){
449
- try{
450
- let db = client.db(dbm);
451
- let res = await db.collection(col).deleteMany(query);
452
- const end = Date.now();
453
- const time = end - start;
454
- resolve({"result":{dml:"deleteMany", headers:"", "time":utl.milisegundosASegundos(time), code:200, error:0}, results:res});
455
- }catch(err){
434
+ function(client){
435
+ let db = client.db(dbm);
436
+ db.collection(col).deleteMany(query,function(err, res) {
437
+
456
438
  const end = Date.now();
457
439
  const time = end - start;
458
- resolve({result:{dml:"deleteMany", headers:"", time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
459
- }finally{
460
- try{
461
- await exec.mongoClose(client);
462
- }catch(e){
463
- utl.log('err.deleteMany.close '+e);
464
- }
465
- }
440
+
441
+ if (err) {
442
+ resolve({result:{dml:"deleteMany", headers:"", time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
443
+ }else{
444
+ resolve({"result":{dml:"deleteMany", headers:"", "time":utl.milisegundosASegundos(time), code:200, error:0}, results:res});
445
+ }
446
+ try{
447
+ exec.mongoClose(mongoclient);
448
+ }catch(e){
449
+ utl.log('err.deleteMany '+e);
450
+ }
451
+ });
466
452
  }
467
453
  ).catch(err=>{
468
454
  resolve({result:{dml:"deleteMany", headers:"", time:0, code:404, error:1}, results:err});
@@ -480,29 +466,27 @@ const updateMany=async(options,dbm, col, json_obj, query)=>{
480
466
 
481
467
  return new Promise((resolve, reject)=>{
482
468
  mongoclient.then(
483
- async function(client){
484
- try{
485
- let db = client.db(dbm);
486
- let res = await db.collection(col).updateMany(query, { $set: json_obj });
469
+ function(client){
470
+ let db = client.db(dbm);
471
+ db.collection(col).updateMany(query, { $set: json_obj }, function(err, res) {
487
472
  const end = Date.now();
488
473
  const time = end - start;
489
474
  let result, nModified=0;
490
- try{ result = res.result; nModified = res.modifiedCount || res.result?.nModified || 0; } catch(e){ }
491
- resolve({result:{dml:"updateMany", headers:"updateMany", time:utl.milisegundosASegundos(time), code:200, error:0}, results:{WriteResult:`${nModified} document Updated`, result }});
492
- }catch(err){
493
- const end = Date.now();
494
- const time = end - start;
495
- resolve({result:{dml:"updateMany", headers:"", time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
496
- }finally{
497
- try{
498
- await exec.mongoClose(client);
499
- }catch(e){
500
- utl.log('err.updateMany.close '+e);
501
- }
502
- }
475
+ try{ result = res.result; nModified = res.result.nModified; } catch(e){ }
476
+ if (err) {
477
+ resolve({result:{dml:"updateMany", headers:"", time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
478
+ }else{
479
+ resolve({result:{dml:"updateMany", headers:"updateMany", time:utl.milisegundosASegundos(time), code:200, error:0}, results:{WriteResult:`${nModified} document Updated`, result }});
480
+ }
481
+ try{
482
+ exec.mongoClose(mongoclient);
483
+ }catch(e){
484
+ utl.log('err.updateMany '+e);
485
+ }
486
+ });
503
487
  }
504
488
  ).catch(err=>{
505
- resolve({result:{dml:"updateMany", headers:"", time:0, code:404, error:1}, results:err});
489
+ resolve({result:{dml:"update", headers:"", time:0, code:404, error:1}, results:err});
506
490
  });
507
491
  })
508
492
  }
@@ -513,28 +497,28 @@ const drop=async(options,dbm, col)=>{
513
497
  const start = Date.now();
514
498
  return new Promise((resolve, reject)=>{
515
499
  mongoclient.then(
516
- async function(client){
517
- try{
518
- let db = client.db(dbm);
519
- let res = await db.collection(col).drop();
520
- const end = Date.now();
521
- const time = end - start;
522
- let data = {"drop":res};
523
- resolve({"result":{dml:"drop", headers:"drop", "time":utl.milisegundosASegundos(time), code:200, error:0}, results:res, data});
524
- }catch(err){
500
+ function(client){
501
+ let db = client.db(dbm);
502
+ db.collection(col).drop(function(err, res) {
503
+
525
504
  const end = Date.now();
526
505
  const time = end - start;
527
- resolve({result:{dml:"drop", headers:"", time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
528
- }finally{
529
- try{
530
- await exec.mongoClose(client);
531
- }catch(e){
532
- utl.log('err.drop.close '+e);
533
- }
534
- }
506
+
507
+ if (err) {
508
+ resolve({result:{dml:"drop", headers:"", time:utl.milisegundosASegundos(time), code:204, error:1, msg:err}, results:err});
509
+ }else{
510
+ let data = {"drop":res};
511
+ resolve({"result":{dml:"drop", headers:"drop", "time":utl.milisegundosASegundos(time), code:200, error:0}, results:res, data});
512
+ }
513
+ try{
514
+ exec.mongoClose(mongoclient);
515
+ }catch(e){
516
+ utl.log('err.drop '+e);
517
+ }
518
+ });
535
519
  }
536
520
  ).catch(err=>{
537
- resolve({result:{dml:"drop", headers:"", time:0, code:404, error:1}, results:err});
521
+ resolve({result:{dml:"insert", headers:"", time:0, code:404, error:1}, results:err});
538
522
  });
539
523
  })
540
524
  }