w-web-perm 1.0.22 → 1.0.24
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/dist/index.tmp +1 -1
- package/dist/js/app-legacy.128a1ced.js +2 -0
- package/dist/js/app-legacy.128a1ced.js.map +1 -0
- package/dist/js/app.128a1ced.js +2 -0
- package/dist/js/app.128a1ced.js.map +1 -0
- package/dist/w-web-perm.umd.js +2 -2
- package/dist/w-web-perm.umd.js.map +1 -1
- package/docs/WWebPerm.html +2 -2
- package/docs/WWebPerm.mjs.html +59 -1
- package/docs/index.html +1 -1
- package/package.json +3 -3
- package/server/WWebPerm.mjs +58 -0
- package/src/App.vue +7 -0
- package/src/components/LayoutContentGrups.vue +186 -7
- package/src/components/LayoutContentPemis.vue +147 -7
- package/src/components/LayoutContentTargets.vue +1 -1
- package/src/components/LayoutContentUsers.vue +55 -12
- package/src/components/VeCgrups.vue +30 -30
- package/src/components/VeCpemis.vue +27 -27
- package/src/components/VeCrules.vue +5 -5
- package/src/components/VeGrupBlngUsers.vue +1142 -0
- package/src/components/VePemiBlngGrups.vue +1142 -0
- package/src/schema/tables/grups.mjs +1 -1
- package/src/store/mutations.mjs +168 -77
- package/tableTags-web-perm.json +1 -1
- package/dist/js/app-legacy.ce3fad1e.js +0 -2
- package/dist/js/app-legacy.ce3fad1e.js.map +0 -1
- package/dist/js/app.ce3fad1e.js +0 -2
- package/dist/js/app.ce3fad1e.js.map +0 -1
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
|
|
77
77
|
<WButtonCircle
|
|
78
78
|
:paddingStyle="{v:6,h:6}"
|
|
79
|
-
:tooltip="$t('
|
|
79
|
+
:tooltip="$t('pemiDeleteCheckPemis')"
|
|
80
80
|
:icon="mdiTrashCanOutline"
|
|
81
81
|
:backgroundColor="'#fff'"
|
|
82
82
|
:backgroundColorHover="'#f2f2f2'"
|
|
@@ -141,9 +141,11 @@
|
|
|
141
141
|
|
|
142
142
|
<script>
|
|
143
143
|
import { mdiStackOverflow, mdiVectorPolylinePlus, mdiCheckboxMarkedCircle, mdiCloudUploadOutline, mdiTrashCanOutline, mdiPlus, mdiPencilOutline, mdiContentCopy } from '@mdi/js/mdi.js'
|
|
144
|
+
import JSON5 from 'json5'
|
|
144
145
|
import get from 'lodash-es/get.js'
|
|
145
146
|
import set from 'lodash-es/set.js'
|
|
146
147
|
import each from 'lodash-es/each.js'
|
|
148
|
+
import map from 'lodash-es/map.js'
|
|
147
149
|
import size from 'lodash-es/size.js'
|
|
148
150
|
import filter from 'lodash-es/filter.js'
|
|
149
151
|
import sortBy from 'lodash-es/sortBy.js'
|
|
@@ -199,6 +201,7 @@ export default {
|
|
|
199
201
|
let vo = this
|
|
200
202
|
|
|
201
203
|
//註冊至$dg供使用
|
|
204
|
+
vo.$dg.showVePemiBlngGrupsById = vo.showVePemiBlngGrupsById
|
|
202
205
|
vo.$dg.showVeCrulesById = vo.showVeCrulesById
|
|
203
206
|
|
|
204
207
|
},
|
|
@@ -238,8 +241,15 @@ export default {
|
|
|
238
241
|
return ''
|
|
239
242
|
}
|
|
240
243
|
|
|
241
|
-
//
|
|
242
|
-
let
|
|
244
|
+
//pemis, grups
|
|
245
|
+
let pemis = cloneDeep(vo.pemis)
|
|
246
|
+
let grups = cloneDeep(vo.grups)
|
|
247
|
+
|
|
248
|
+
//addGrups
|
|
249
|
+
let items = vo.addGrups(pemis, grups)
|
|
250
|
+
|
|
251
|
+
// //cloneDeep
|
|
252
|
+
// let items = cloneDeep(vo.pemis)
|
|
243
253
|
|
|
244
254
|
//save
|
|
245
255
|
vo.items = items
|
|
@@ -374,6 +384,7 @@ export default {
|
|
|
374
384
|
let ks = [
|
|
375
385
|
'id',
|
|
376
386
|
'name',
|
|
387
|
+
'belongGrups',
|
|
377
388
|
'description',
|
|
378
389
|
'from',
|
|
379
390
|
'crules',
|
|
@@ -388,6 +399,7 @@ export default {
|
|
|
388
399
|
let kpHead = {
|
|
389
400
|
'id': vo.$t('id'),
|
|
390
401
|
'name': vo.$t('name'),
|
|
402
|
+
'belongGrups': vo.$t('belongGrups'),
|
|
391
403
|
'description': vo.$t('description'),
|
|
392
404
|
'from': vo.$t('from'),
|
|
393
405
|
'crules': vo.$t('pemiCrules'),
|
|
@@ -415,13 +427,15 @@ export default {
|
|
|
415
427
|
defHeadMinWidth: 150,
|
|
416
428
|
kpHeadWidth: {
|
|
417
429
|
'name': 300,
|
|
418
|
-
'
|
|
430
|
+
'belongGrups': 300,
|
|
431
|
+
'crules': 300,
|
|
419
432
|
'timeCreate': 220,
|
|
420
433
|
'timeUpdate': 220,
|
|
421
434
|
},
|
|
422
435
|
kpHeadFilterType: {
|
|
423
436
|
'id': 'text',
|
|
424
437
|
'name': 'text',
|
|
438
|
+
'belongGrups': 'text',
|
|
425
439
|
'description': 'text',
|
|
426
440
|
'from': 'text',
|
|
427
441
|
'crules': 'text',
|
|
@@ -442,12 +456,15 @@ export default {
|
|
|
442
456
|
'name': true,
|
|
443
457
|
},
|
|
444
458
|
kpHeadFilter: {
|
|
459
|
+
'belongGrups': false,
|
|
445
460
|
'crules': false,
|
|
446
461
|
},
|
|
447
462
|
kpHeadSort: {
|
|
463
|
+
'belongGrups': false,
|
|
448
464
|
'crules': false,
|
|
449
465
|
},
|
|
450
466
|
kpHeadFocusHighlight: { //雖然效果不完全, 但因按鈕與cell有padding可被點擊, 故還是需要開啟
|
|
467
|
+
'belongGrups': false,
|
|
451
468
|
'crules': false,
|
|
452
469
|
},
|
|
453
470
|
kpCellRender: {
|
|
@@ -470,6 +487,23 @@ export default {
|
|
|
470
487
|
|
|
471
488
|
return v
|
|
472
489
|
},
|
|
490
|
+
'belongGrups': (v, k, r) => {
|
|
491
|
+
// console.log('kpCellRender belongGrups', v, k, r)
|
|
492
|
+
|
|
493
|
+
//id
|
|
494
|
+
let id = get(r, 'id', '')
|
|
495
|
+
// console.log('id', id, k, r)
|
|
496
|
+
|
|
497
|
+
//因kpHeadFocusHighlight設定false時, 仍會於點擊其他可focus的cell, 再點回時依然出現highlight的focus邊框, 故改使用stopPropagation強制吃掉點擊訊息
|
|
498
|
+
//因stopPropagation只吃掉訊息, 原本focus會處於原本可focus的cell, 再重複點時會於前個focus的cell出現highlight邊框, 故再多使用preventDefault阻止瀏覽器預設行為, 此等同於return false
|
|
499
|
+
let t = `
|
|
500
|
+
<div onclick="event.stopPropagation();event.preventDefault();" onmousedown="event.stopPropagation();event.preventDefault();">
|
|
501
|
+
<button style="width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;" onclick="$vo.$dg.showVePemiBlngGrupsById('${id}')">${v}</button>
|
|
502
|
+
</div>
|
|
503
|
+
`
|
|
504
|
+
|
|
505
|
+
return t
|
|
506
|
+
},
|
|
473
507
|
'crules': (v, k, r) => {
|
|
474
508
|
// console.log('kpCellRender crules', v, k, r)
|
|
475
509
|
|
|
@@ -481,7 +515,7 @@ export default {
|
|
|
481
515
|
//因stopPropagation只吃掉訊息, 原本focus會處於原本可focus的cell, 再重複點時會於前個focus的cell出現highlight邊框, 故再多使用preventDefault阻止瀏覽器預設行為, 此等同於return false
|
|
482
516
|
let t = `
|
|
483
517
|
<div onclick="event.stopPropagation();event.preventDefault();" onmousedown="event.stopPropagation();event.preventDefault();">
|
|
484
|
-
<button style="width:100%;" onclick="$vo.$dg.showVeCrulesById('${id}')">${vo.$t('pemiEditCrulesSimple')}</button>
|
|
518
|
+
<button style="width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;" onclick="$vo.$dg.showVeCrulesById('${id}')">${vo.$t('pemiEditCrulesSimple')}</button>
|
|
485
519
|
</div>
|
|
486
520
|
`
|
|
487
521
|
|
|
@@ -526,6 +560,74 @@ export default {
|
|
|
526
560
|
|
|
527
561
|
},
|
|
528
562
|
|
|
563
|
+
addGrups: function(pemis, grups) {
|
|
564
|
+
// console.log('method addGrups', pemis, grups)
|
|
565
|
+
|
|
566
|
+
let vo = this
|
|
567
|
+
|
|
568
|
+
//parse cpemis
|
|
569
|
+
grups = map(grups, (g) => {
|
|
570
|
+
let kpPemi = JSON5.parse(g.cpemis)
|
|
571
|
+
g.kpPemi = kpPemi
|
|
572
|
+
return g
|
|
573
|
+
})
|
|
574
|
+
// console.log('users', users)
|
|
575
|
+
|
|
576
|
+
//kp
|
|
577
|
+
let kp = {}
|
|
578
|
+
each(grups, (g) => {
|
|
579
|
+
each(g.kpPemi, (v, k) => {
|
|
580
|
+
let isActive = get(v, 'isActive', '')
|
|
581
|
+
if (isActive !== 'y') {
|
|
582
|
+
return true //跳出換下一個
|
|
583
|
+
}
|
|
584
|
+
if (!haskey(kp, k)) {
|
|
585
|
+
kp[k] = []
|
|
586
|
+
}
|
|
587
|
+
kp[k].push({
|
|
588
|
+
grup: g,
|
|
589
|
+
pemi: v,
|
|
590
|
+
})
|
|
591
|
+
})
|
|
592
|
+
})
|
|
593
|
+
// console.log('kp', kp)
|
|
594
|
+
|
|
595
|
+
//items
|
|
596
|
+
let items = map(pemis, (p) => {
|
|
597
|
+
|
|
598
|
+
//gs
|
|
599
|
+
let gs = []
|
|
600
|
+
if (haskey(kp, p.name)) {
|
|
601
|
+
gs = kp[p.name]
|
|
602
|
+
}
|
|
603
|
+
// console.log('gs', gs)
|
|
604
|
+
|
|
605
|
+
//belongGrups
|
|
606
|
+
let belongGrups = vo.$t('pemiBlngRnderNoGrup')
|
|
607
|
+
let t = vo.$t('pemiBlngRnderGrups')
|
|
608
|
+
let n = size(gs)
|
|
609
|
+
if (n > 0) {
|
|
610
|
+
t = t.replace('{n}', n)
|
|
611
|
+
if (n === 1) {
|
|
612
|
+
t = t.replace('{nms}', `(${gs[0].grup.name})`)
|
|
613
|
+
}
|
|
614
|
+
else {
|
|
615
|
+
t = t.replace('{nms}', '')
|
|
616
|
+
}
|
|
617
|
+
belongGrups = t
|
|
618
|
+
}
|
|
619
|
+
|
|
620
|
+
//save belongGrups, gs
|
|
621
|
+
p.belongGrups = belongGrups
|
|
622
|
+
p.gs = gs
|
|
623
|
+
|
|
624
|
+
return p
|
|
625
|
+
})
|
|
626
|
+
// console.log('items', items)
|
|
627
|
+
|
|
628
|
+
return items
|
|
629
|
+
},
|
|
630
|
+
|
|
529
631
|
addItem: function() {
|
|
530
632
|
// console.log('method addItem')
|
|
531
633
|
|
|
@@ -670,6 +772,44 @@ export default {
|
|
|
670
772
|
|
|
671
773
|
},
|
|
672
774
|
|
|
775
|
+
showVePemiBlngGrupsById: function(id) {
|
|
776
|
+
// console.log('method showVePemiBlngGrupsById', id)
|
|
777
|
+
|
|
778
|
+
let vo = this
|
|
779
|
+
|
|
780
|
+
//check
|
|
781
|
+
if (!isestr(id)) {
|
|
782
|
+
vo.$alert(`${vo.$t('pemiEditBlngGrupsNoPemiId')}`, { type: 'error' })
|
|
783
|
+
return
|
|
784
|
+
}
|
|
785
|
+
|
|
786
|
+
//rows
|
|
787
|
+
let rows = get(vo, 'opt.rows', [])
|
|
788
|
+
|
|
789
|
+
//find
|
|
790
|
+
let r = null
|
|
791
|
+
// let kr = null
|
|
792
|
+
each(rows, (v, k) => {
|
|
793
|
+
if (get(v, 'id', '') === id) {
|
|
794
|
+
r = v
|
|
795
|
+
// kr = k
|
|
796
|
+
return false //跳出
|
|
797
|
+
}
|
|
798
|
+
})
|
|
799
|
+
|
|
800
|
+
//check
|
|
801
|
+
if (!iseobj(r)) {
|
|
802
|
+
vo.$alert(`${vo.$t('pemiEditBlngGrupsNoPemiData')}`, { type: 'error' })
|
|
803
|
+
return
|
|
804
|
+
}
|
|
805
|
+
|
|
806
|
+
//showVePemiBlngGrups
|
|
807
|
+
vo.$dg.showVePemiBlngGrups(r)
|
|
808
|
+
.then(() => {})
|
|
809
|
+
.catch(() => {})
|
|
810
|
+
|
|
811
|
+
},
|
|
812
|
+
|
|
673
813
|
showVeCrulesById: function(id) {
|
|
674
814
|
// console.log('method showVeCrulesById', id)
|
|
675
815
|
|
|
@@ -677,7 +817,7 @@ export default {
|
|
|
677
817
|
|
|
678
818
|
//check
|
|
679
819
|
if (!isestr(id)) {
|
|
680
|
-
vo.$alert(`${vo.$t('
|
|
820
|
+
vo.$alert(`${vo.$t('pemiEditCrulesNoPemiId')}`, { type: 'error' })
|
|
681
821
|
return
|
|
682
822
|
}
|
|
683
823
|
|
|
@@ -697,7 +837,7 @@ export default {
|
|
|
697
837
|
|
|
698
838
|
//check
|
|
699
839
|
if (!iseobj(r)) {
|
|
700
|
-
vo.$alert(`${vo.$t('
|
|
840
|
+
vo.$alert(`${vo.$t('pemiEditCrulesNoPemiData')}`, { type: 'error' })
|
|
701
841
|
return
|
|
702
842
|
}
|
|
703
843
|
|
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
|
|
77
77
|
<WButtonCircle
|
|
78
78
|
:paddingStyle="{v:6,h:6}"
|
|
79
|
-
:tooltip="$t('
|
|
79
|
+
:tooltip="$t('userDeleteCheckUsers')"
|
|
80
80
|
:icon="mdiTrashCanOutline"
|
|
81
81
|
:backgroundColor="'#fff'"
|
|
82
82
|
:backgroundColorHover="'#f2f2f2'"
|
|
@@ -141,6 +141,7 @@
|
|
|
141
141
|
|
|
142
142
|
<script>
|
|
143
143
|
import { mdiAccountGroupOutline, mdiVectorPolylinePlus, mdiCheckboxMarkedCircle, mdiCloudUploadOutline, mdiTrashCanOutline, mdiPlus, mdiPencilOutline, mdiContentCopy } from '@mdi/js/mdi.js'
|
|
144
|
+
import JSON5 from 'json5'
|
|
144
145
|
import get from 'lodash-es/get.js'
|
|
145
146
|
import set from 'lodash-es/set.js'
|
|
146
147
|
import each from 'lodash-es/each.js'
|
|
@@ -468,7 +469,7 @@ export default {
|
|
|
468
469
|
},
|
|
469
470
|
defHeadMinWidth: 150,
|
|
470
471
|
kpHeadWidth: {
|
|
471
|
-
'cgrups':
|
|
472
|
+
'cgrups': 300,
|
|
472
473
|
'isAdmin': 100,
|
|
473
474
|
'isActive': 100,
|
|
474
475
|
'timeCreate': 220,
|
|
@@ -559,7 +560,7 @@ export default {
|
|
|
559
560
|
//因stopPropagation只吃掉訊息, 原本focus會處於原本可focus的cell, 再重複點時會於前個focus的cell出現highlight邊框, 故再多使用preventDefault阻止瀏覽器預設行為, 此等同於return false
|
|
560
561
|
let t = `
|
|
561
562
|
<div onclick="event.stopPropagation();event.preventDefault();" onmousedown="event.stopPropagation();event.preventDefault();">
|
|
562
|
-
<button style="width:100%;" onclick="$vo.$dg.showVeCgrupsById('${id}')">${vo
|
|
563
|
+
<button style="width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;" onclick="$vo.$dg.showVeCgrupsById('${id}')">${vo.getCgrupsText(v)}</button>
|
|
563
564
|
</div>
|
|
564
565
|
`
|
|
565
566
|
|
|
@@ -640,7 +641,7 @@ export default {
|
|
|
640
641
|
|
|
641
642
|
//check
|
|
642
643
|
if (!isestr(id)) {
|
|
643
|
-
vo.$alert(`${vo.$t('
|
|
644
|
+
vo.$alert(`${vo.$t('userEditNoUserId')}`, { type: 'error' })
|
|
644
645
|
return
|
|
645
646
|
}
|
|
646
647
|
|
|
@@ -660,7 +661,7 @@ export default {
|
|
|
660
661
|
|
|
661
662
|
//check
|
|
662
663
|
if (!iseobj(r)) {
|
|
663
|
-
vo.$alert(`${vo.$t('
|
|
664
|
+
vo.$alert(`${vo.$t('userEditNoUserData')}`, { type: 'error' })
|
|
664
665
|
return
|
|
665
666
|
}
|
|
666
667
|
|
|
@@ -691,7 +692,7 @@ export default {
|
|
|
691
692
|
|
|
692
693
|
//check
|
|
693
694
|
if (!isestr(id)) {
|
|
694
|
-
vo.$alert(`${vo.$t('
|
|
695
|
+
vo.$alert(`${vo.$t('userEditNoUserId')}`, { type: 'error' })
|
|
695
696
|
return
|
|
696
697
|
}
|
|
697
698
|
|
|
@@ -711,7 +712,7 @@ export default {
|
|
|
711
712
|
|
|
712
713
|
//check
|
|
713
714
|
if (!iseobj(r)) {
|
|
714
|
-
vo.$alert(`${vo.$t('
|
|
715
|
+
vo.$alert(`${vo.$t('userEditNoUserData')}`, { type: 'error' })
|
|
715
716
|
return
|
|
716
717
|
}
|
|
717
718
|
|
|
@@ -876,6 +877,48 @@ export default {
|
|
|
876
877
|
|
|
877
878
|
},
|
|
878
879
|
|
|
880
|
+
getCgrupsText: function(cgrups) {
|
|
881
|
+
// console.log('method getCgrupsText', cgrups)
|
|
882
|
+
|
|
883
|
+
let vo = this
|
|
884
|
+
|
|
885
|
+
//kpGrup
|
|
886
|
+
let kpGrup = JSON5.parse(cgrups)
|
|
887
|
+
|
|
888
|
+
let vs = []
|
|
889
|
+
each(kpGrup, (v, k) => {
|
|
890
|
+
// console.log(k, 'v', v)
|
|
891
|
+
|
|
892
|
+
//isActive
|
|
893
|
+
let isActive = get(v, 'isActive', '')
|
|
894
|
+
if (isActive !== 'y') {
|
|
895
|
+
return true //跳出換下一個
|
|
896
|
+
}
|
|
897
|
+
// console.log(k, '_isActive', _isActive)
|
|
898
|
+
|
|
899
|
+
//push
|
|
900
|
+
vs.push(k)
|
|
901
|
+
|
|
902
|
+
})
|
|
903
|
+
|
|
904
|
+
//cgrupsText
|
|
905
|
+
let cgrupsText = vo.$t('userRnderCgrupsNoGroup')
|
|
906
|
+
let t = vo.$t('userRnderCgrupsHasNGroups')
|
|
907
|
+
let n = size(vs)
|
|
908
|
+
if (n > 0) {
|
|
909
|
+
t = t.replace('{n}', n)
|
|
910
|
+
if (n === 1) {
|
|
911
|
+
t = t.replace('{nms}', `(${vs[0]})`)
|
|
912
|
+
}
|
|
913
|
+
else {
|
|
914
|
+
t = t.replace('{nms}', '')
|
|
915
|
+
}
|
|
916
|
+
cgrupsText = t
|
|
917
|
+
}
|
|
918
|
+
|
|
919
|
+
return cgrupsText
|
|
920
|
+
},
|
|
921
|
+
|
|
879
922
|
showVeCgrupsById: function(id) {
|
|
880
923
|
// console.log('method showVeCgrupsById', id)
|
|
881
924
|
|
|
@@ -883,7 +926,7 @@ export default {
|
|
|
883
926
|
|
|
884
927
|
//check
|
|
885
928
|
if (!isestr(id)) {
|
|
886
|
-
vo.$alert(`${vo.$t('
|
|
929
|
+
vo.$alert(`${vo.$t('userEditCgrupsNoUserId')}`, { type: 'error' })
|
|
887
930
|
return
|
|
888
931
|
}
|
|
889
932
|
|
|
@@ -903,13 +946,13 @@ export default {
|
|
|
903
946
|
|
|
904
947
|
//check
|
|
905
948
|
if (!iseobj(r)) {
|
|
906
|
-
vo.$alert(`${vo.$t('
|
|
949
|
+
vo.$alert(`${vo.$t('userEditCgrupsNoUserData')}`, { type: 'error' })
|
|
907
950
|
return
|
|
908
951
|
}
|
|
909
952
|
|
|
910
|
-
//getUserRules
|
|
911
|
-
let kur = vo.$s.getUserRules(r, vo.grups, vo.pemis, vo.targets)
|
|
912
|
-
console.log('getUserRules kur', kur)
|
|
953
|
+
// //getUserRules
|
|
954
|
+
// let kur = vo.$s.getUserRules(r, vo.grups, vo.pemis, vo.targets)
|
|
955
|
+
// // console.log('getUserRules kur', kur)
|
|
913
956
|
|
|
914
957
|
//showVeCgrups
|
|
915
958
|
vo.$dg.showVeCgrups(r)
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
|
|
33
33
|
<WButtonCircle
|
|
34
34
|
:paddingStyle="{v:6,h:6}"
|
|
35
|
-
:tooltip="$t('
|
|
35
|
+
:tooltip="$t('checkAllYes')"
|
|
36
36
|
:icon="mdiCheckboxMultipleMarked"
|
|
37
37
|
:backgroundColor="'#fff'"
|
|
38
38
|
:backgroundColorHover="'#f2f2f2'"
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
:iconColor="'#444'"
|
|
42
42
|
:iconColorHover="'#222'"
|
|
43
43
|
:shadow="false"
|
|
44
|
-
@click="
|
|
44
|
+
@click="showVeCgrupsToggleItemsEnableAllYes"
|
|
45
45
|
></WButtonCircle>
|
|
46
46
|
|
|
47
47
|
<div style="padding-left:6px;"></div>
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
|
|
53
53
|
<WButtonCircle
|
|
54
54
|
:paddingStyle="{v:6,h:6}"
|
|
55
|
-
:tooltip="$t('
|
|
55
|
+
:tooltip="$t('checkAllNo')"
|
|
56
56
|
:icon="mdiCheckboxMultipleBlankOutline"
|
|
57
57
|
:backgroundColor="'#fff'"
|
|
58
58
|
:backgroundColorHover="'#f2f2f2'"
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
:iconColor="'#444'"
|
|
62
62
|
:iconColorHover="'#222'"
|
|
63
63
|
:shadow="false"
|
|
64
|
-
@click="
|
|
64
|
+
@click="showVeCgrupsToggleItemsEnableAllNo"
|
|
65
65
|
></WButtonCircle>
|
|
66
66
|
|
|
67
67
|
<div style="padding-left:6px;"></div>
|
|
@@ -72,7 +72,7 @@
|
|
|
72
72
|
|
|
73
73
|
<WButtonCircle
|
|
74
74
|
:paddingStyle="{v:6,h:6}"
|
|
75
|
-
:tooltip="$t('
|
|
75
|
+
:tooltip="$t('checkAllInv')"
|
|
76
76
|
:icon="mdiCodeTagsCheck"
|
|
77
77
|
:backgroundColor="'#fff'"
|
|
78
78
|
:backgroundColorHover="'#f2f2f2'"
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
:iconColor="'#444'"
|
|
82
82
|
:iconColorHover="'#222'"
|
|
83
83
|
:shadow="false"
|
|
84
|
-
@click="
|
|
84
|
+
@click="showVeCgrupsToggleItemsEnableAllInv"
|
|
85
85
|
></WButtonCircle>
|
|
86
86
|
|
|
87
87
|
<div style="padding-left:6px;"></div>
|
|
@@ -92,7 +92,7 @@
|
|
|
92
92
|
|
|
93
93
|
<WButtonCircle
|
|
94
94
|
:paddingStyle="{v:6,h:6}"
|
|
95
|
-
:tooltip="$t('
|
|
95
|
+
:tooltip="$t('cgrupDeleteCheckPemis')"
|
|
96
96
|
:icon="mdiTrashCanOutline"
|
|
97
97
|
:backgroundColor="'#fff'"
|
|
98
98
|
:backgroundColorHover="'#f2f2f2'"
|
|
@@ -215,8 +215,8 @@ export default {
|
|
|
215
215
|
|
|
216
216
|
//set
|
|
217
217
|
Vue.prototype.$dg.showVeCgrups = vo.show
|
|
218
|
-
Vue.prototype.$dg.
|
|
219
|
-
Vue.prototype.$dg.
|
|
218
|
+
Vue.prototype.$dg.showVeCgrupsToggleItemModeByName = vo.showVeCgrupsToggleItemModeByName
|
|
219
|
+
Vue.prototype.$dg.showVeCgrupsToggleItemEnableByName = vo.showVeCgrupsToggleItemEnableByName
|
|
220
220
|
|
|
221
221
|
},
|
|
222
222
|
computed: {
|
|
@@ -353,8 +353,8 @@ export default {
|
|
|
353
353
|
//kpHead
|
|
354
354
|
let kpHead = {
|
|
355
355
|
'name': vo.$t('pemiName'),
|
|
356
|
-
'mode': vo.$t('
|
|
357
|
-
'enable': vo.$t('
|
|
356
|
+
'mode': vo.$t('operEnable'),
|
|
357
|
+
'enable': vo.$t('operMode'),
|
|
358
358
|
}
|
|
359
359
|
|
|
360
360
|
//opt
|
|
@@ -372,8 +372,8 @@ export default {
|
|
|
372
372
|
// 'enable': true,
|
|
373
373
|
// },
|
|
374
374
|
kpHeadWidth: {
|
|
375
|
-
'mode':
|
|
376
|
-
'enable':
|
|
375
|
+
'mode': 100,
|
|
376
|
+
'enable': 100,
|
|
377
377
|
},
|
|
378
378
|
// kpRowDrag: {
|
|
379
379
|
// 'name': true,
|
|
@@ -407,7 +407,7 @@ export default {
|
|
|
407
407
|
// console.log('mode', mode, k, r)
|
|
408
408
|
|
|
409
409
|
let t = `
|
|
410
|
-
<select onchange="$vo.$dg.
|
|
410
|
+
<select onchange="$vo.$dg.showVeCgrupsToggleItemModeByName('${name}',this.value)">
|
|
411
411
|
<option value="OR" ${mode === 'OR' ? 'selected' : ''}>OR</option>
|
|
412
412
|
<option value="AND" ${mode === 'AND' ? 'selected' : ''}>AND</option>
|
|
413
413
|
</select>
|
|
@@ -423,7 +423,7 @@ export default {
|
|
|
423
423
|
// console.log('name', name, k, r)
|
|
424
424
|
|
|
425
425
|
let t = `
|
|
426
|
-
<input type="checkbox" ${v === 'y' ? 'checked' : ''} onclick="$vo.$dg.
|
|
426
|
+
<input type="checkbox" ${v === 'y' ? 'checked' : ''} onclick="$vo.$dg.showVeCgrupsToggleItemEnableByName('${name}')" />
|
|
427
427
|
`
|
|
428
428
|
|
|
429
429
|
return t
|
|
@@ -521,14 +521,14 @@ export default {
|
|
|
521
521
|
return rows
|
|
522
522
|
},
|
|
523
523
|
|
|
524
|
-
|
|
525
|
-
// console.log('
|
|
524
|
+
showVeCgrupsToggleItemModeByName: function(name, mode) {
|
|
525
|
+
// console.log('showVeCgrupsToggleItemModeByName', name, mode)
|
|
526
526
|
|
|
527
527
|
let vo = this
|
|
528
528
|
|
|
529
529
|
//check
|
|
530
530
|
if (!isestr(name)) {
|
|
531
|
-
vo.$alert(`${vo.$t('
|
|
531
|
+
vo.$alert(`${vo.$t('cgrupEditNoName')}`, { type: 'error' })
|
|
532
532
|
return
|
|
533
533
|
}
|
|
534
534
|
|
|
@@ -548,13 +548,13 @@ export default {
|
|
|
548
548
|
|
|
549
549
|
//check
|
|
550
550
|
if (!iseobj(r)) {
|
|
551
|
-
vo.$alert(`${vo.$t('
|
|
551
|
+
vo.$alert(`${vo.$t('cgrupEditNoPemi')}`, { type: 'error' })
|
|
552
552
|
return
|
|
553
553
|
}
|
|
554
554
|
|
|
555
555
|
//mode
|
|
556
556
|
// let mode = th.value
|
|
557
|
-
console.log('mode', mode)
|
|
557
|
+
// console.log('mode', mode)
|
|
558
558
|
|
|
559
559
|
//set
|
|
560
560
|
set(vo, `opt.rows[${kr}].mode`, mode)
|
|
@@ -568,14 +568,14 @@ export default {
|
|
|
568
568
|
|
|
569
569
|
},
|
|
570
570
|
|
|
571
|
-
|
|
572
|
-
// console.log('
|
|
571
|
+
showVeCgrupsToggleItemEnableByName: function(name) {
|
|
572
|
+
// console.log('showVeCgrupsToggleItemEnableByName', name)
|
|
573
573
|
|
|
574
574
|
let vo = this
|
|
575
575
|
|
|
576
576
|
//check
|
|
577
577
|
if (!isestr(name)) {
|
|
578
|
-
vo.$alert(`${vo.$t('
|
|
578
|
+
vo.$alert(`${vo.$t('cgrupEditNoName')}`, { type: 'error' })
|
|
579
579
|
return
|
|
580
580
|
}
|
|
581
581
|
|
|
@@ -595,7 +595,7 @@ export default {
|
|
|
595
595
|
|
|
596
596
|
//check
|
|
597
597
|
if (!iseobj(r)) {
|
|
598
|
-
vo.$alert(`${vo.$t('
|
|
598
|
+
vo.$alert(`${vo.$t('cgrupEditNoPemi')}`, { type: 'error' })
|
|
599
599
|
return
|
|
600
600
|
}
|
|
601
601
|
|
|
@@ -616,8 +616,8 @@ export default {
|
|
|
616
616
|
|
|
617
617
|
},
|
|
618
618
|
|
|
619
|
-
|
|
620
|
-
// console.log('
|
|
619
|
+
showVeCgrupsToggleItemsEnableAllYes: function() {
|
|
620
|
+
// console.log('showVeCgrupsToggleItemsEnableAllYes')
|
|
621
621
|
|
|
622
622
|
let vo = this
|
|
623
623
|
|
|
@@ -655,8 +655,8 @@ export default {
|
|
|
655
655
|
|
|
656
656
|
},
|
|
657
657
|
|
|
658
|
-
|
|
659
|
-
// console.log('
|
|
658
|
+
showVeCgrupsToggleItemsEnableAllNo: function() {
|
|
659
|
+
// console.log('showVeCgrupsToggleItemsEnableAllNo')
|
|
660
660
|
|
|
661
661
|
let vo = this
|
|
662
662
|
|
|
@@ -694,8 +694,8 @@ export default {
|
|
|
694
694
|
|
|
695
695
|
},
|
|
696
696
|
|
|
697
|
-
|
|
698
|
-
// console.log('
|
|
697
|
+
showVeCgrupsToggleItemsEnableAllInv: function() {
|
|
698
|
+
// console.log('showVeCgrupsToggleItemsEnableAllInv')
|
|
699
699
|
|
|
700
700
|
let vo = this
|
|
701
701
|
|