zet-lib 1.3.32 → 1.3.34
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/Form.js +33 -18
- package/lib/zAppRouter.js +30 -0
- package/lib/zRoute.js +1 -0
- package/package.json +2 -1
package/lib/Form.js
CHANGED
|
@@ -232,42 +232,52 @@ Form.field = (obj) => {
|
|
|
232
232
|
break
|
|
233
233
|
|
|
234
234
|
case 'select':
|
|
235
|
+
var please_select = obj.please_select
|
|
236
|
+
if (please_select != undefined) {
|
|
237
|
+
if (please_select != '') {
|
|
238
|
+
selects += `<option value="">${please_select}</option>`
|
|
239
|
+
}
|
|
240
|
+
}
|
|
235
241
|
if (obj.hasOwnProperty('array')) {
|
|
236
242
|
var items = obj.array || []
|
|
237
|
-
var please_select = obj.please_select
|
|
238
|
-
if (please_select != undefined) {
|
|
239
|
-
if (please_select != '') {
|
|
240
|
-
selects += `<option value="">${please_select}</option>`
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
243
|
if (items.length) {
|
|
244
244
|
items.forEach(function (item) {
|
|
245
|
-
|
|
246
|
-
|
|
245
|
+
if (item.label) {
|
|
246
|
+
const selected = item.value == value ? ' selected ' : ''
|
|
247
|
+
selects += `<option value="${item.value}" ${selected}>${item.label}</option>`
|
|
248
|
+
}
|
|
247
249
|
})
|
|
248
250
|
} else {
|
|
249
251
|
if (Array.isArray(data)) {
|
|
250
252
|
data.map((item) => {
|
|
251
|
-
|
|
252
|
-
|
|
253
|
+
if (item.zname) {
|
|
254
|
+
var selected = item.id == value ? ' selected ' : ''
|
|
255
|
+
selects += `<option value="${item.id}" ${selected}>${item.zname}</option>`
|
|
256
|
+
}
|
|
253
257
|
})
|
|
254
258
|
} else {
|
|
255
259
|
for (var keys in data) {
|
|
256
|
-
|
|
257
|
-
|
|
260
|
+
if (data[keys]) {
|
|
261
|
+
var selected = keys == value ? ' selected ' : ''
|
|
262
|
+
selects += `<option value="${keys}" ${selected}>${data[keys]}</option>`
|
|
263
|
+
}
|
|
258
264
|
}
|
|
259
265
|
}
|
|
260
266
|
}
|
|
261
267
|
} else {
|
|
262
268
|
if (Array.isArray(data)) {
|
|
263
269
|
data.map((item) => {
|
|
264
|
-
|
|
265
|
-
|
|
270
|
+
if (item.zname) {
|
|
271
|
+
const selected = item.id == value ? ' selected ' : ''
|
|
272
|
+
selects += `<option value="${item.id}" ${selected}>${item.zname}</option>`
|
|
273
|
+
}
|
|
266
274
|
})
|
|
267
275
|
} else {
|
|
268
276
|
for (let keys in data) {
|
|
269
|
-
|
|
270
|
-
|
|
277
|
+
if (data[keys]) {
|
|
278
|
+
let selected = keys == value ? ' selected ' : ''
|
|
279
|
+
selects += `<option value="${keys}" ${selected}>${data[keys]}</option>`
|
|
280
|
+
}
|
|
271
281
|
}
|
|
272
282
|
}
|
|
273
283
|
}
|
|
@@ -494,7 +504,12 @@ Form.field = (obj) => {
|
|
|
494
504
|
break
|
|
495
505
|
|
|
496
506
|
case 'dropzoneview':
|
|
497
|
-
|
|
507
|
+
let countFiles = obj.value && obj.value.length ? obj.value.length + ' Files' : ''
|
|
508
|
+
let bodydropzoneview =
|
|
509
|
+
countFiles == '' ? '' : `<div class="card-header">${countFiles} <div class="float-end"><span class="icon-small icons-light" title="Download"><img onclick="location.href= '/zdownloads-dropzone/${obj.routeName}/${obj.key}/${obj.dataId}'" class="icons-bg-black gridview icon-image" src="/assets/icons/download.svg"></span></div> </div>`
|
|
510
|
+
displayForm = `<div class="card">
|
|
511
|
+
${bodydropzoneview}
|
|
512
|
+
<div class="card-body">`
|
|
498
513
|
if (obj.value && obj.value.length > 0) {
|
|
499
514
|
obj.value.map((item) => {
|
|
500
515
|
let extFile = Util.fileExtension(item)
|
|
@@ -506,7 +521,7 @@ Form.field = (obj) => {
|
|
|
506
521
|
}
|
|
507
522
|
})
|
|
508
523
|
}
|
|
509
|
-
displayForm += `</div>`
|
|
524
|
+
displayForm += `</div></div>`
|
|
510
525
|
|
|
511
526
|
break
|
|
512
527
|
default:
|
package/lib/zAppRouter.js
CHANGED
|
@@ -20,6 +20,7 @@ const zCache = require('./zCache')
|
|
|
20
20
|
const pm2 = require('pm2')
|
|
21
21
|
const zFunction = require('./zFunction')
|
|
22
22
|
const qs = require('qs')
|
|
23
|
+
const zip = require('express-zip')
|
|
23
24
|
|
|
24
25
|
/*
|
|
25
26
|
ajax Post
|
|
@@ -1569,4 +1570,33 @@ router.post('/zhistory-data', async (req, res) => {
|
|
|
1569
1570
|
}
|
|
1570
1571
|
})
|
|
1571
1572
|
|
|
1573
|
+
router.get('/zdownloads-dropzone/:table/:field/:id', async (req, res) => {
|
|
1574
|
+
try {
|
|
1575
|
+
let table = req.params.table
|
|
1576
|
+
let field = req.params.field
|
|
1577
|
+
let id = req.params.id
|
|
1578
|
+
const room = res.locals.token
|
|
1579
|
+
let result = await connection.result({
|
|
1580
|
+
table: table,
|
|
1581
|
+
where: {
|
|
1582
|
+
id: id,
|
|
1583
|
+
},
|
|
1584
|
+
})
|
|
1585
|
+
let dir = `${dirRoot}/public/uploads/${table}/${field}/`
|
|
1586
|
+
let arr = []
|
|
1587
|
+
let files = result[field]
|
|
1588
|
+
for (const file of files) {
|
|
1589
|
+
if (Util.fileExist(dir + file)) {
|
|
1590
|
+
let filename = file.substring(13)
|
|
1591
|
+
arr.push({ path: dir + file, name: filename })
|
|
1592
|
+
io.to(room).emit('info', `Zip file ${filename}`)
|
|
1593
|
+
}
|
|
1594
|
+
}
|
|
1595
|
+
io.to(room).emit('info', `Zip file completed...`)
|
|
1596
|
+
res.zip(arr, `${field}_${table}_${id}.zip`)
|
|
1597
|
+
} catch (e) {
|
|
1598
|
+
console.log(e)
|
|
1599
|
+
res.json(e + '')
|
|
1600
|
+
}
|
|
1601
|
+
})
|
|
1572
1602
|
module.exports = router
|
package/lib/zRoute.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zet-lib",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.34",
|
|
4
4
|
"description": "zet is a library that part of zet generator.",
|
|
5
5
|
"engines": {
|
|
6
6
|
"node": ">=18"
|
|
@@ -34,6 +34,7 @@
|
|
|
34
34
|
"dotenv": "^16.3.1",
|
|
35
35
|
"ejs": "^3.1.9",
|
|
36
36
|
"exceljs": "^4.4.0",
|
|
37
|
+
"express-zip": "^3.0.0",
|
|
37
38
|
"fs-extra": "^11.1.1",
|
|
38
39
|
"html-minifier-terser": "^7.2.0",
|
|
39
40
|
"js-sha256": "^0.9.0",
|