@mixd-id/web-scaffold 0.1.230406151 → 0.1.230406152
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/package.json +1 -1
- package/src/components/ListView.vue +1 -2
- package/src/utils/helpers.js +2 -0
- package/src/utils/listpage1.js +30 -46
- package/src/utils/listview.js +27 -41
package/package.json
CHANGED
|
@@ -115,7 +115,6 @@
|
|
|
115
115
|
<VirtualGrid v-else-if="computedViewType === 'grid'"
|
|
116
116
|
:items="items"
|
|
117
117
|
:column="gridColumn"
|
|
118
|
-
:gap="gridGap"
|
|
119
118
|
class="flex-1"
|
|
120
119
|
ref="table1"
|
|
121
120
|
:opt-bar="optBar"
|
|
@@ -740,7 +739,7 @@ export default{
|
|
|
740
739
|
}
|
|
741
740
|
|
|
742
741
|
if(this.$screenPrefix.value === ''){
|
|
743
|
-
return 'gap-
|
|
742
|
+
return 'gap-0'
|
|
744
743
|
}
|
|
745
744
|
|
|
746
745
|
return this.config.gridGap
|
package/src/utils/helpers.js
CHANGED
package/src/utils/listpage1.js
CHANGED
|
@@ -2,8 +2,7 @@ const { Op } = module.parent.require('sequelize')
|
|
|
2
2
|
const Sequelize = module.parent.require('sequelize')
|
|
3
3
|
const dayjs = require("dayjs");
|
|
4
4
|
const Exceljs = require("exceljs");
|
|
5
|
-
const { getPresetSortWhereParams } = require("./helpers");
|
|
6
|
-
const { sleep } = require('@mixd-id/web-scaffold/helpers')
|
|
5
|
+
const { getPresetSortWhereParams, ftWildcard } = require("./helpers");
|
|
7
6
|
|
|
8
7
|
let ListPage1 = {
|
|
9
8
|
|
|
@@ -111,7 +110,6 @@ let ListPage1 = {
|
|
|
111
110
|
async loadSummary(params){
|
|
112
111
|
|
|
113
112
|
if(!this.conn){
|
|
114
|
-
console.error('Unable to load summary, connection not found')
|
|
115
113
|
return
|
|
116
114
|
}
|
|
117
115
|
|
|
@@ -313,7 +311,7 @@ let ListPage1 = {
|
|
|
313
311
|
const sheet = workbook.addWorksheet('Export ' + this.name);
|
|
314
312
|
sheet.columns = columns
|
|
315
313
|
|
|
316
|
-
let where =
|
|
314
|
+
let where = []
|
|
317
315
|
let replacements = []
|
|
318
316
|
let order = [
|
|
319
317
|
[ 'updatedAt', 'desc' ],
|
|
@@ -350,14 +348,6 @@ let ListPage1 = {
|
|
|
350
348
|
}
|
|
351
349
|
attributes = Object.keys(attributes)
|
|
352
350
|
|
|
353
|
-
if(preset.filters){
|
|
354
|
-
const { where:presetWhere } = this.getPresetFilterParams(preset)
|
|
355
|
-
where = {
|
|
356
|
-
...where,
|
|
357
|
-
...presetWhere
|
|
358
|
-
}
|
|
359
|
-
}
|
|
360
|
-
|
|
361
351
|
if(preset.sorts){
|
|
362
352
|
const { order:presetOrder } = this.getPresetSortParams(preset)
|
|
363
353
|
if(presetOrder){
|
|
@@ -365,21 +355,25 @@ let ListPage1 = {
|
|
|
365
355
|
}
|
|
366
356
|
}
|
|
367
357
|
|
|
368
|
-
if(preset.search){
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
358
|
+
if(preset.search && this.matchAgainst){
|
|
359
|
+
where.push({
|
|
360
|
+
[Op.and]: Sequelize.literal(this.matchAgainst)
|
|
361
|
+
})
|
|
362
|
+
replacements.push(ftWildcard(preset.search))
|
|
363
|
+
}
|
|
364
|
+
else if(preset.filters){
|
|
365
|
+
const { where:presetWhere } = this.getPresetFilterParams(preset)
|
|
366
|
+
where.push(presetWhere)
|
|
375
367
|
}
|
|
376
368
|
|
|
377
369
|
if(this.downloadFilters){
|
|
378
|
-
await this.downloadFilters(params
|
|
370
|
+
where.push((await this.downloadFilters(params) ?? {}))
|
|
379
371
|
}
|
|
380
372
|
|
|
381
373
|
const rows = await this.model.findAll({
|
|
382
|
-
where
|
|
374
|
+
where: {
|
|
375
|
+
[Op.and]: where
|
|
376
|
+
},
|
|
383
377
|
attributes: {
|
|
384
378
|
...attributes,
|
|
385
379
|
include: attributeIncludes
|
|
@@ -439,7 +433,7 @@ let ListPage1 = {
|
|
|
439
433
|
|
|
440
434
|
const { afterItem, itemsPerPage = this.itemsPerPage ?? 24 } = params
|
|
441
435
|
const { preset = {} } = params
|
|
442
|
-
let where =
|
|
436
|
+
let where = []
|
|
443
437
|
let replacements = []
|
|
444
438
|
let order = [
|
|
445
439
|
[ 'updatedAt', 'desc' ],
|
|
@@ -487,19 +481,8 @@ let ListPage1 = {
|
|
|
487
481
|
}
|
|
488
482
|
attributes = Object.keys(attributes)
|
|
489
483
|
|
|
490
|
-
if(preset.filters){
|
|
491
|
-
const { where:presetWhere } = this.getPresetFilterParams(preset, includes)
|
|
492
|
-
where = {
|
|
493
|
-
...where,
|
|
494
|
-
...presetWhere
|
|
495
|
-
}
|
|
496
|
-
}
|
|
497
|
-
|
|
498
484
|
if(typeof this['loadFilters'] === 'function'){
|
|
499
|
-
where
|
|
500
|
-
...where,
|
|
501
|
-
...(await this['loadFilters'](params) ?? {})
|
|
502
|
-
}
|
|
485
|
+
where.push(await this['loadFilters'](params) ?? {})
|
|
503
486
|
}
|
|
504
487
|
|
|
505
488
|
if(preset.sorts){
|
|
@@ -509,26 +492,27 @@ let ListPage1 = {
|
|
|
509
492
|
}
|
|
510
493
|
}
|
|
511
494
|
|
|
512
|
-
if(preset.search){
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
495
|
+
if(preset.search && this.matchAgainst){
|
|
496
|
+
where.push({
|
|
497
|
+
[Op.and]: Sequelize.literal(this.matchAgainst)
|
|
498
|
+
})
|
|
499
|
+
replacements.push(ftWildcard(preset.search))
|
|
500
|
+
}
|
|
501
|
+
else if(preset.filters){
|
|
502
|
+
const { where:presetWhere } = this.getPresetFilterParams(preset, includes)
|
|
503
|
+
where.push(presetWhere)
|
|
519
504
|
}
|
|
520
505
|
|
|
521
506
|
if(afterItem){
|
|
522
507
|
const sortWhere = getPresetSortWhereParams(order, afterItem)
|
|
523
|
-
where
|
|
524
|
-
...where,
|
|
525
|
-
...sortWhere
|
|
526
|
-
}
|
|
508
|
+
where.push(sortWhere)
|
|
527
509
|
}
|
|
528
510
|
|
|
529
511
|
let derivedSql
|
|
530
512
|
let { rows:items, count } = await this.model.findAndCountAll({
|
|
531
|
-
where
|
|
513
|
+
where: {
|
|
514
|
+
[Op.and]: where
|
|
515
|
+
},
|
|
532
516
|
attributes: {
|
|
533
517
|
...attributes,
|
|
534
518
|
include: attributeIncludes
|
package/src/utils/listview.js
CHANGED
|
@@ -2,7 +2,7 @@ const { Op } = module.parent.require('sequelize')
|
|
|
2
2
|
const Sequelize = module.parent.require('sequelize')
|
|
3
3
|
const dayjs = require("dayjs");
|
|
4
4
|
const Exceljs = require("exceljs");
|
|
5
|
-
const { getPresetSortWhereParams } = require("./helpers");
|
|
5
|
+
const { getPresetSortWhereParams, ftWildcard } = require("./helpers");
|
|
6
6
|
|
|
7
7
|
let ListView = {
|
|
8
8
|
|
|
@@ -45,7 +45,6 @@ let ListView = {
|
|
|
45
45
|
async loadSummary(params, loadResults){
|
|
46
46
|
|
|
47
47
|
if(!this.conn){
|
|
48
|
-
console.error('Unable to load summary, connection not found')
|
|
49
48
|
return
|
|
50
49
|
}
|
|
51
50
|
|
|
@@ -110,7 +109,7 @@ let ListView = {
|
|
|
110
109
|
const sheet = workbook.addWorksheet('Export ' + this.name);
|
|
111
110
|
sheet.columns = columns
|
|
112
111
|
|
|
113
|
-
let where =
|
|
112
|
+
let where = []
|
|
114
113
|
let replacements = []
|
|
115
114
|
let order = [
|
|
116
115
|
[ 'updatedAt', 'desc' ],
|
|
@@ -147,14 +146,6 @@ let ListView = {
|
|
|
147
146
|
}
|
|
148
147
|
attributes = Object.keys(attributes)
|
|
149
148
|
|
|
150
|
-
if(preset.filters){
|
|
151
|
-
const { where:presetWhere } = this.getPresetFilterParams(preset)
|
|
152
|
-
where = {
|
|
153
|
-
...where,
|
|
154
|
-
...presetWhere
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
|
|
158
149
|
if(preset.sorts){
|
|
159
150
|
const { order:presetOrder } = this.getPresetSortParams(preset)
|
|
160
151
|
if(presetOrder){
|
|
@@ -162,21 +153,25 @@ let ListView = {
|
|
|
162
153
|
}
|
|
163
154
|
}
|
|
164
155
|
|
|
165
|
-
if(preset.search){
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
156
|
+
if(preset.search && this.matchAgainst){
|
|
157
|
+
where.push({
|
|
158
|
+
[Op.and]: Sequelize.literal(this.matchAgainst)
|
|
159
|
+
})
|
|
160
|
+
replacements.push(ftWildcard(preset.search))
|
|
161
|
+
}
|
|
162
|
+
else if(preset.filters){
|
|
163
|
+
const { where:presetWhere } = this.getPresetFilterParams(preset)
|
|
164
|
+
where.push(presetWhere)
|
|
172
165
|
}
|
|
173
166
|
|
|
174
167
|
if(this.downloadFilters){
|
|
175
|
-
await this.downloadFilters(params
|
|
168
|
+
where.push((await this.downloadFilters(params) ?? {}))
|
|
176
169
|
}
|
|
177
170
|
|
|
178
171
|
const rows = await this.model.findAll({
|
|
179
|
-
where
|
|
172
|
+
where: {
|
|
173
|
+
[Op.and]: where
|
|
174
|
+
},
|
|
180
175
|
attributes: {
|
|
181
176
|
...attributes,
|
|
182
177
|
include: attributeIncludes
|
|
@@ -237,7 +232,7 @@ let ListView = {
|
|
|
237
232
|
const { afterItem, itemsPerPage = this.itemsPerPage ?? 24 } = params
|
|
238
233
|
|
|
239
234
|
const { preset = {} } = params
|
|
240
|
-
let where =
|
|
235
|
+
let where = []
|
|
241
236
|
let replacements = []
|
|
242
237
|
let order = [
|
|
243
238
|
[ 'updatedAt', 'desc' ],
|
|
@@ -281,27 +276,19 @@ let ListView = {
|
|
|
281
276
|
}
|
|
282
277
|
attributes = Object.keys(attributes)
|
|
283
278
|
|
|
284
|
-
if(preset.search &&
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
}
|
|
290
|
-
replacements.push(preset.search)
|
|
279
|
+
if(preset.search && this.matchAgainst){
|
|
280
|
+
where.push({
|
|
281
|
+
[Op.and]: Sequelize.literal(this.matchAgainst)
|
|
282
|
+
})
|
|
283
|
+
replacements.push(ftWildcard(preset.search))
|
|
291
284
|
}
|
|
292
285
|
else if(preset.filters){
|
|
293
286
|
const { where:presetWhere } = this.getPresetFilterParams(preset, includes)
|
|
294
|
-
where
|
|
295
|
-
...where,
|
|
296
|
-
...presetWhere
|
|
297
|
-
}
|
|
287
|
+
where.push(presetWhere)
|
|
298
288
|
}
|
|
299
289
|
|
|
300
290
|
if(typeof this['loadFilters'] === 'function'){
|
|
301
|
-
where
|
|
302
|
-
...where,
|
|
303
|
-
...(await this['loadFilters'](params) ?? {})
|
|
304
|
-
}
|
|
291
|
+
where.push(await this['loadFilters'](params) ?? {})
|
|
305
292
|
}
|
|
306
293
|
|
|
307
294
|
if(preset.sorts){
|
|
@@ -313,15 +300,14 @@ let ListView = {
|
|
|
313
300
|
|
|
314
301
|
if(afterItem){
|
|
315
302
|
const sortWhere = getPresetSortWhereParams(order, afterItem)
|
|
316
|
-
where
|
|
317
|
-
...where,
|
|
318
|
-
...sortWhere
|
|
319
|
-
}
|
|
303
|
+
where.push(sortWhere)
|
|
320
304
|
}
|
|
321
305
|
|
|
322
306
|
let derivedSql
|
|
323
307
|
let { rows:items, count } = await this.model.findAndCountAll({
|
|
324
|
-
where
|
|
308
|
+
where: {
|
|
309
|
+
[Op.and]: where
|
|
310
|
+
},
|
|
325
311
|
attributes: [
|
|
326
312
|
...attributes,
|
|
327
313
|
...attributeIncludes
|