w-web-perm 1.0.12 → 1.0.13

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.
Files changed (68) hide show
  1. package/.vscode/launch.json +0 -1
  2. package/README.md +0 -1
  3. package/dist/css/app.f22995d1.css +1 -0
  4. package/dist/index.tmp +1 -1
  5. package/dist/js/app-legacy.82274c39.js +2 -0
  6. package/dist/js/app-legacy.82274c39.js.map +1 -0
  7. package/dist/js/app.82274c39.js +2 -0
  8. package/dist/js/app.82274c39.js.map +1 -0
  9. package/dist/js/chunk-vendors-legacy.d89048a8.js +13 -0
  10. package/dist/js/chunk-vendors-legacy.d89048a8.js.map +1 -0
  11. package/dist/js/chunk-vendors.d89048a8.js +13 -0
  12. package/dist/js/chunk-vendors.d89048a8.js.map +1 -0
  13. package/dist/w-web-perm.umd.js +2 -2
  14. package/dist/w-web-perm.umd.js.map +1 -1
  15. package/docs/WWebPerm.html +2 -2
  16. package/docs/WWebPerm.mjs.html +212 -64
  17. package/docs/index.html +1 -1
  18. package/g.backupDb.mjs +1 -1
  19. package/g.initialData.mjs +211 -111
  20. package/g.initialTestData.mjs +2 -1
  21. package/g.mjs +0 -0
  22. package/g.provideGrups.mjs +87 -0
  23. package/g.providePemis.mjs +43 -0
  24. package/g.provideTargets.mjs +20 -13
  25. package/g.provideUsers.mjs +45 -13
  26. package/package.json +8 -8
  27. package/script.txt +5 -5
  28. package/server/WWebPerm.mjs +211 -63
  29. package/server/provideGrups.mjs +64 -0
  30. package/server/{provideRuleGroups.mjs → providePemis.mjs} +14 -15
  31. package/server/provideTargets.mjs +8 -5
  32. package/server/provideUsers.mjs +9 -9
  33. package/src/App.vue +16 -3
  34. package/src/components/Layout.vue +13 -5
  35. package/src/components/LayoutContent.vue +31 -16
  36. package/src/components/LayoutContentGrups.vue +793 -0
  37. package/src/components/LayoutContentPemis.vue +793 -0
  38. package/src/components/LayoutContentTargets.vue +481 -307
  39. package/src/components/LayoutContentUsers.vue +796 -291
  40. package/src/components/VeCgrups.vue +926 -0
  41. package/src/components/VeCpemis.vue +926 -0
  42. package/src/components/VeCrules.vue +820 -0
  43. package/src/main.js +2 -2
  44. package/src/perm.mjs +5 -5
  45. package/src/plugins/mShare.mjs +444 -153
  46. package/src/plugins/mUI.mjs +37 -19
  47. package/src/schema/gi.mjs +1 -1
  48. package/src/schema/index.mjs +4 -2
  49. package/src/schema/tables/grups.mjs +154 -0
  50. package/src/schema/tables/{ruleGroups.mjs → pemis.mjs} +27 -16
  51. package/src/schema/tables/targets.mjs +49 -16
  52. package/src/schema/tables/users.mjs +55 -27
  53. package/src/store/mutations.mjs +375 -150
  54. package/srv.mjs +2 -2
  55. package/tableTags-web-perm.json +1 -1
  56. package/dist/css/app.f6c50bec.css +0 -1
  57. package/dist/js/app-legacy.767522f1.js +0 -2
  58. package/dist/js/app-legacy.767522f1.js.map +0 -1
  59. package/dist/js/app.767522f1.js +0 -2
  60. package/dist/js/app.767522f1.js.map +0 -1
  61. package/dist/js/chunk-vendors-legacy.b0d63e17.js +0 -13
  62. package/dist/js/chunk-vendors-legacy.b0d63e17.js.map +0 -1
  63. package/dist/js/chunk-vendors.b0d63e17.js +0 -13
  64. package/dist/js/chunk-vendors.b0d63e17.js.map +0 -1
  65. package/g.provideRuleGroups.mjs +0 -56
  66. package/src/components/LayoutContentGroups.vue +0 -671
  67. package/src/components/VeUser.vue +0 -446
  68. package/src/components/ruleGroup.vue +0 -645
package/script.txt CHANGED
@@ -1,14 +1,14 @@
1
- #node --experimental-modules --es-module-specifier-resolution=node toolg/addVersion.mjs
2
- node --experimental-modules --es-module-specifier-resolution=node toolg/modifyReadme.mjs
1
+ #node --experimental-modules toolg/addVersion.mjs
2
+ node --experimental-modules toolg/modifyReadme.mjs
3
3
 
4
- node --experimental-modules --es-module-specifier-resolution=node toolg/cleanFolder.mjs
4
+ node --experimental-modules toolg/cleanFolder.mjs
5
5
  ./node_modules/.bin/jsdoc -c .jsdoc
6
6
 
7
7
  npm run build
8
8
 
9
- node --experimental-modules --es-module-specifier-resolution=node toolg/genEntry.mjs
9
+ node --experimental-modules toolg/genEntry.mjs
10
10
 
11
- node --experimental-modules --es-module-specifier-resolution=node toolg/gDistRollup.mjs
11
+ node --experimental-modules toolg/gDistRollup.mjs
12
12
 
13
13
  git add . -A
14
14
  git commit -m 'modify: '
@@ -1,8 +1,9 @@
1
1
  import path from 'path'
2
2
  import fs from 'fs'
3
- import get from 'lodash-es/get.js'
4
- import each from 'lodash-es/each.js'
5
- import keys from 'lodash-es/keys.js'
3
+ import get from 'lodash-es/get.js'
4
+ import map from 'lodash-es/map.js'
5
+ import keys from 'lodash-es/keys.js'
6
+ import size from 'lodash-es/size.js'
6
7
  import iseobj from 'wsemi/src/iseobj.mjs'
7
8
  import isestr from 'wsemi/src/isestr.mjs'
8
9
  import ispint from 'wsemi/src/ispint.mjs'
@@ -18,6 +19,8 @@ import pm2resolve from 'wsemi/src/pm2resolve.mjs'
18
19
  import fsIsFolder from 'wsemi/src/fsIsFolder.mjs'
19
20
  import fsIsFile from 'wsemi/src/fsIsFile.mjs'
20
21
  import replace from 'wsemi/src/replace.mjs'
22
+ import ltdtDiffByKey from 'wsemi/src/ltdtDiffByKey.mjs'
23
+ import ltdtmapping from 'wsemi/src/ltdtmapping.mjs'
21
24
  import WServHapiServer from 'w-serv-hapi/src/WServHapiServer.mjs'
22
25
  import WServOrm from 'w-serv-orm/src/WServOrm.mjs'
23
26
  import ds from '../src/schema/index.mjs'
@@ -254,26 +257,102 @@ function WWebPerm(WOrm, url, db, getUserByToken, verifyBrowserUser, verifyAppUse
254
257
 
255
258
 
256
259
  //getUsersList
257
- let getUsersList = async (userId, token) => {
260
+ let getUsersList = async (userId) => {
258
261
  let rs = await woItems.users.select() //isActive為y或n都需要提供, 給前端編輯
259
262
  return rs
260
263
  }
261
264
 
262
265
 
263
266
  //getRuleGroupsList
264
- let getRuleGroupsList = async (userId, token) => {
265
- let rs = await woItems.ruleGroups.select()
267
+ let getRuleGroupsList = async (userId) => {
268
+ let rs = await woItems.pemis.select()
266
269
  return rs
267
270
  }
268
271
 
269
272
 
270
273
  //getTargetsList
271
- let getTargetsList = async (userId, token) => {
274
+ let getTargetsList = async (userId) => {
272
275
  let rs = await woItems.targets.select()
273
276
  return rs
274
277
  }
275
278
 
276
279
 
280
+ //updateTabItems
281
+ let updateTabItems = async (woName, userId, rows, keyDetect) => {
282
+ // console.log('updateTabItems', woName, userId, rows.length, keyDetect)
283
+
284
+ //ltdtmapping
285
+ rows = ltdtmapping(rows, ds[woName].keys)
286
+ // console.log('ltdtmapping rows', rows)
287
+
288
+ //重給order
289
+ rows = map(rows, (r, k) => {
290
+ r.order = k + 1
291
+ return r
292
+ })
293
+
294
+ //ltdtDiffByKey
295
+ let ltdtOld = await woItems[woName].select()
296
+ let ltdtNew = rows
297
+ let r = ltdtDiffByKey(ltdtOld, ltdtNew, keyDetect)
298
+ // console.log('ltdtDiffByKey r', r)
299
+
300
+ //del
301
+ if (size(r.del) > 0) {
302
+ await procOrm(userId, woName, 'del', r.del) //須使用procOrm才有辦法自動給予相關欄位
303
+ // .catch((err) => {
304
+ // console.log('woItems[woName].del err', err)
305
+ // })
306
+ }
307
+
308
+ //add
309
+ if (size(r.add) > 0) {
310
+ await procOrm(userId, woName, 'insert', r.add) //須使用procOrm才有辦法自動給予相關欄位
311
+ // .catch((err) => {
312
+ // console.log('woItems[woName].insert err', err)
313
+ // })
314
+ }
315
+
316
+ //diff
317
+ if (size(r.diff) > 0) {
318
+ await procOrm(userId, woName, 'save', r.diff) //須使用procOrm才有辦法自動給予相關欄位
319
+ // .catch((err) => {
320
+ // console.log('woItems[woName].save err', err)
321
+ // })
322
+ }
323
+
324
+ return ltdtNew
325
+ }
326
+
327
+
328
+ //updateTargets
329
+ let updateTargets = async (userId, rows) => {
330
+ rows = await updateTabItems('targets', userId, rows, 'id')
331
+ return rows
332
+ }
333
+
334
+
335
+ //updatePemis
336
+ let updatePemis = async (userId, rows) => {
337
+ rows = await updateTabItems('pemis', userId, rows, 'name')
338
+ return rows
339
+ }
340
+
341
+
342
+ //updateGrups
343
+ let updateGrups = async (userId, rows) => {
344
+ rows = await updateTabItems('grups', userId, rows, 'name')
345
+ return rows
346
+ }
347
+
348
+
349
+ //updateUsers
350
+ let updateUsers = async (userId, rows) => {
351
+ rows = await updateTabItems('users', userId, rows, 'id')
352
+ return rows
353
+ }
354
+
355
+
277
356
  //parseToken
278
357
  let parseToken = (req) => {
279
358
 
@@ -446,12 +525,8 @@ function WWebPerm(WOrm, url, db, getUserByToken, verifyBrowserUser, verifyAppUse
446
525
  return Promise.reject(`invalid from from inp`)
447
526
  }
448
527
 
449
-
450
528
  //vs
451
529
  let vs = get(inp, key, [])
452
- //users
453
- //targets
454
- //ruleGroups
455
530
 
456
531
  //check
457
532
  if (!isearr(vs)) {
@@ -472,7 +547,7 @@ function WWebPerm(WOrm, url, db, getUserByToken, verifyBrowserUser, verifyAppUse
472
547
 
473
548
 
474
549
  //syncAndReplaceRows
475
- let syncAndReplaceRows = async (params, key) => {
550
+ let syncAndReplaceRows = async (userId, params, woName) => {
476
551
 
477
552
  //from
478
553
  let from = get(params, 'from', '')
@@ -486,28 +561,34 @@ function WWebPerm(WOrm, url, db, getUserByToken, verifyBrowserUser, verifyAppUse
486
561
  return Promise.reject(`invalid from`)
487
562
  }
488
563
 
489
- //vs
490
- let vs = get(params, key, [])
491
- // console.log(key, vs)
564
+ //rows
565
+ let rows = get(params, woName, [])
566
+ // console.log(woName, rows)
492
567
 
493
568
  //check
494
- if (!isearr(vs)) {
569
+ if (!isearr(rows)) {
495
570
  console.log('params', params)
496
- console.log(key, vs)
497
- console.log(`invalid ${key}`)
498
- return Promise.reject(`invalid ${key}`)
571
+ console.log('woName', woName)
572
+ return Promise.reject(`invalid ${woName}`)
499
573
  }
500
574
 
501
575
  //save from
502
- each(vs, (v, k) => {
503
- vs[k].from = from
576
+ rows = map(rows, (v, k) => {
577
+ // v.order = k + 1 //order大部分由外部給予, 不能複寫
578
+ v.from = from
579
+ return v
504
580
  })
505
581
 
582
+ //ltdtmapping
583
+ rows = ltdtmapping(rows, ds[woName].keys)
584
+ // console.log('ltdtmapping rows', rows)
585
+
506
586
  //delAll from
507
- await woItems[key].delAll({ from })
587
+ await woItems[woName].delAll({ from })
508
588
 
509
589
  //insert
510
- let r = await woItems[key].insert(vs)
590
+ // let r = await woItems[woName].insert(rows)
591
+ let r = await procOrm(userId, woName, 'insert', rows) //須使用procOrm才有辦法自動給予相關欄位
511
592
 
512
593
  return r
513
594
  }
@@ -544,38 +625,39 @@ function WWebPerm(WOrm, url, db, getUserByToken, verifyBrowserUser, verifyAppUse
544
625
  }
545
626
 
546
627
 
547
- //getGenUserAndRulesByUserId
628
+ //getGenUserAndRulesByUserId bbb
548
629
  let getGenUserAndRulesByUserId = async (userId) => {
549
630
 
550
631
  //userFind
551
632
  let userFind = await getGenUserByUserId(userId)
552
633
  // console.log('userFind', userFind)
553
634
 
554
- //ruleGroups
555
- let ruleGroups = await woItems.ruleGroups.select()
556
- // console.log('ruleGroups', ruleGroups)
635
+ //grups
636
+ let grups = await woItems.grups.select()
637
+ // console.log('grups', grups)
638
+
639
+ //pemis
640
+ let pemis = await woItems.pemis.select()
641
+ // console.log('pemis', pemis)
557
642
 
558
643
  //targets
559
644
  let targets = await woItems.targets.select()
560
645
  // console.log('targets', targets)
561
646
 
562
647
  //getUserRules
563
- let urs = getUserRules(userFind, ruleGroups, targets)
564
- // console.log('getUserRules', urs)
648
+ let kur = getUserRules(userFind, grups, pemis, targets)
649
+ // console.log('getUserRules', kur)
565
650
 
566
651
  //check
567
- if (!iseobj(urs)) {
652
+ if (!iseobj(kur)) {
568
653
  console.log('userId', userId)
569
- console.log(`can not get permrules`)
570
- return Promise.reject(`can not get permrules`)
654
+ console.log(`can not get rules of user`)
655
+ return Promise.reject(`can not get rules of user`)
571
656
  }
572
657
 
573
658
  return {
574
- user: {
575
- ...userFind,
576
- ruleGroupsNames: urs.ruleGroupsNames, //ruleGroupsNames併入user內顯示
577
- },
578
- rules: urs.rules,
659
+ user: userFind,
660
+ kur,
579
661
  }
580
662
  }
581
663
 
@@ -676,7 +758,7 @@ function WWebPerm(WOrm, url, db, getUserByToken, verifyBrowserUser, verifyAppUse
676
758
  // console.log('getPerm', req)
677
759
 
678
760
  async function core() {
679
- //提供對象為node與browser使用者, node實際也為轉發之browser使用者, 須先檢測token是否有效, 再依照token取得使用者資訊物件, 再由其userId查詢回傳該使用者之權限資訊物件
761
+ //提供對象為node與browser使用者, node通常也為其他系統之browser使用者因須驗證而由node轉發, 皆須先檢測token是否有效, 再依照token取得使用者資訊物件, 再由其userId查詢回傳該使用者之權限資訊物件
680
762
 
681
763
  //parseToken
682
764
  let token = parseToken(req)
@@ -781,10 +863,10 @@ function WWebPerm(WOrm, url, db, getUserByToken, verifyBrowserUser, verifyAppUse
781
863
  },
782
864
  {
783
865
  method: 'POST',
784
- path: '/syncAndReplaceUsers',
866
+ path: '/syncAndReplaceTargets',
785
867
  handler: async function (req, res) {
786
- // console.log('syncAndReplaceUsers', req)
787
- // console.log('payload', req.payload)
868
+ // console.log('syncAndReplaceTargets', req)
869
+ // console.log('syncAndReplaceTargets payload', req.payload)
788
870
 
789
871
  async function core() {
790
872
  //提供對象為node使用者, 須為系統管理者, 須先檢測token是否有效, 再進行數據變更
@@ -793,21 +875,24 @@ function WWebPerm(WOrm, url, db, getUserByToken, verifyBrowserUser, verifyAppUse
793
875
  let token = get(req, 'query.token', '')
794
876
 
795
877
  //getAndVerifyAppTokenUser
796
- let user = await getAndVerifyAppTokenUser(token, 'syncAndReplaceUsers')
878
+ let user = await getAndVerifyAppTokenUser(token, 'syncAndReplaceTargets')
797
879
 
798
880
  //check
799
881
  if (!iseobj(user)) {
800
882
  console.log('token', token)
801
- console.log('[API]syncAndReplaceUsers/check user: invalid user')
883
+ console.log('[API]syncAndReplaceTargets/check user: invalid user')
802
884
  console.log(`token does not have permission`)
803
885
  return Promise.reject(`token does not have permission`)
804
886
  }
805
887
 
888
+ //userId
889
+ let userId = get(user, 'id', '')
890
+
806
891
  //parsePayload
807
- let inp = await parsePayload(req, 'users')
892
+ let inp = await parsePayload(req, 'targets')
808
893
 
809
894
  //syncAndReplaceRows
810
- let r = await syncAndReplaceRows(inp, 'users')
895
+ let r = await syncAndReplaceRows(userId, inp, 'targets')
811
896
 
812
897
  return r
813
898
  }
@@ -821,10 +906,10 @@ function WWebPerm(WOrm, url, db, getUserByToken, verifyBrowserUser, verifyAppUse
821
906
  },
822
907
  {
823
908
  method: 'POST',
824
- path: '/syncAndReplaceTargets',
909
+ path: '/syncAndReplacePemis',
825
910
  handler: async function (req, res) {
826
- // console.log('syncAndReplaceTargets', req)
827
- // console.log('payload', req.payload)
911
+ // console.log('syncAndReplacePemis', req)
912
+ // console.log('syncAndReplacePemis payload', req.payload)
828
913
 
829
914
  async function core() {
830
915
  //提供對象為node使用者, 須為系統管理者, 須先檢測token是否有效, 再進行數據變更
@@ -833,21 +918,24 @@ function WWebPerm(WOrm, url, db, getUserByToken, verifyBrowserUser, verifyAppUse
833
918
  let token = get(req, 'query.token', '')
834
919
 
835
920
  //getAndVerifyAppTokenUser
836
- let user = await getAndVerifyAppTokenUser(token, 'syncAndReplaceTargets')
921
+ let user = await getAndVerifyAppTokenUser(token, 'syncAndReplacePemis')
837
922
 
838
923
  //check
839
924
  if (!iseobj(user)) {
840
925
  console.log('token', token)
841
- console.log('[API]syncAndReplaceTargets/check user: invalid user')
926
+ console.log('[API]syncAndReplacePemis/check user: invalid user')
842
927
  console.log(`token does not have permission`)
843
928
  return Promise.reject(`token does not have permission`)
844
929
  }
845
930
 
846
931
  //parsePayload
847
- let inp = await parsePayload(req, 'targets')
932
+ let inp = await parsePayload(req, 'pemis')
933
+
934
+ //userId
935
+ let userId = get(user, 'id', '')
848
936
 
849
937
  //syncAndReplaceRows
850
- let r = await syncAndReplaceRows(inp, 'targets')
938
+ let r = await syncAndReplaceRows(userId, inp, 'pemis')
851
939
 
852
940
  return r
853
941
  }
@@ -861,10 +949,10 @@ function WWebPerm(WOrm, url, db, getUserByToken, verifyBrowserUser, verifyAppUse
861
949
  },
862
950
  {
863
951
  method: 'POST',
864
- path: '/syncAndReplaceRuleGroups',
952
+ path: '/syncAndReplaceGrups',
865
953
  handler: async function (req, res) {
866
- // console.log('syncAndReplaceRuleGroups', req)
867
- // console.log('payload', req.payload)
954
+ // console.log('syncAndReplaceGrups', req)
955
+ // console.log('syncAndReplaceGrups payload', req.payload)
868
956
 
869
957
  async function core() {
870
958
  //提供對象為node使用者, 須為系統管理者, 須先檢測token是否有效, 再進行數據變更
@@ -873,21 +961,67 @@ function WWebPerm(WOrm, url, db, getUserByToken, verifyBrowserUser, verifyAppUse
873
961
  let token = get(req, 'query.token', '')
874
962
 
875
963
  //getAndVerifyAppTokenUser
876
- let user = await getAndVerifyAppTokenUser(token, 'syncAndReplaceRuleGroups')
964
+ let user = await getAndVerifyAppTokenUser(token, 'syncAndReplaceGrups')
877
965
 
878
966
  //check
879
967
  if (!iseobj(user)) {
880
968
  console.log('token', token)
881
- console.log('[API]syncAndReplaceRuleGroups/check user: invalid user')
969
+ console.log('[API]syncAndReplaceGrups/check user: invalid user')
882
970
  console.log(`token does not have permission`)
883
971
  return Promise.reject(`token does not have permission`)
884
972
  }
885
973
 
886
974
  //parsePayload
887
- let inp = await parsePayload(req, 'ruleGroups')
975
+ let inp = await parsePayload(req, 'grups')
976
+
977
+ //userId
978
+ let userId = get(user, 'id', '')
888
979
 
889
980
  //syncAndReplaceRows
890
- let r = await syncAndReplaceRows(inp, 'ruleGroups')
981
+ let r = await syncAndReplaceRows(userId, inp, 'grups')
982
+
983
+ return r
984
+ }
985
+
986
+ //pm2resolve core
987
+ let r = await pm2resolve(core)()
988
+ // console.log('verifyIdentity', r)
989
+
990
+ return r
991
+ },
992
+ },
993
+ {
994
+ method: 'POST',
995
+ path: '/syncAndReplaceUsers',
996
+ handler: async function (req, res) {
997
+ // console.log('syncAndReplaceUsers', req)
998
+ // console.log('syncAndReplaceUsers payload', req.payload)
999
+
1000
+ async function core() {
1001
+ //提供對象為node使用者, 須為系統管理者, 須先檢測token是否有效, 再進行數據變更
1002
+
1003
+ //token
1004
+ let token = get(req, 'query.token', '')
1005
+
1006
+ //getAndVerifyAppTokenUser
1007
+ let user = await getAndVerifyAppTokenUser(token, 'syncAndReplaceUsers')
1008
+
1009
+ //check
1010
+ if (!iseobj(user)) {
1011
+ console.log('token', token)
1012
+ console.log('[API]syncAndReplaceUsers/check user: invalid user')
1013
+ console.log(`token does not have permission`)
1014
+ return Promise.reject(`token does not have permission`)
1015
+ }
1016
+
1017
+ //parsePayload
1018
+ let inp = await parsePayload(req, 'users')
1019
+
1020
+ //userId
1021
+ let userId = get(user, 'id', '')
1022
+
1023
+ //syncAndReplaceRows
1024
+ let r = await syncAndReplaceRows(userId, inp, 'users')
891
1025
 
892
1026
  return r
893
1027
  }
@@ -916,7 +1050,15 @@ function WWebPerm(WOrm, url, db, getUserByToken, verifyBrowserUser, verifyAppUse
916
1050
  pathStaticFiles,
917
1051
  apis,
918
1052
  getUserIDFromToken: async (token) => { //可使用async或sync函數
919
- return ''
1053
+ // console.log('getUserIDFromToken', token)
1054
+ let user = await getUserByToken(token)
1055
+ let userId = get(user, 'id', '')
1056
+ if (!isestr(userId)) {
1057
+ console.log('token', token)
1058
+ console.log('userId', userId)
1059
+ return Promise.reject(`can not find user.id`)
1060
+ }
1061
+ return userId
920
1062
  },
921
1063
  useDbORM: true,
922
1064
  dbORMs: woItems,
@@ -926,10 +1068,16 @@ function WWebPerm(WOrm, url, db, getUserByToken, verifyBrowserUser, verifyAppUse
926
1068
  tableNamesSync,
927
1069
  extFuncs: { //接收參數第1個為userId, 之後才是前端給予參數
928
1070
  getWebInfor,
929
- getUsersList,
930
- getRuleGroupsList,
1071
+
931
1072
  getTargetsList,
932
- //...
1073
+ getRuleGroupsList,
1074
+ getUsersList,
1075
+
1076
+ updateTargets,
1077
+ updatePemis,
1078
+ updateGrups,
1079
+ updateUsers,
1080
+
933
1081
  },
934
1082
  hookBefores: null,
935
1083
  hookAfters: null,
@@ -0,0 +1,64 @@
1
+ import axios from 'axios'
2
+ import ltdtpick from 'wsemi/src/ltdtpick.mjs'
3
+ import genPm from 'wsemi/src/genPm.mjs'
4
+
5
+
6
+ async function provideGrups(url, from, grups) {
7
+ //url: 指權限伺服器提供的調整grups網址, 例如 http://localhost:11006/syncAndReplaceGrups
8
+ //from: 指grups來源
9
+
10
+ //pm
11
+ let pm = genPm()
12
+
13
+ //ks
14
+ let ks = [
15
+ // 'id',
16
+ 'order', //order大部分由外部給予, 得要開啟
17
+ 'name',
18
+ 'description',
19
+ 'cpemis',
20
+ // 'userId',
21
+ // 'timeCreate',
22
+ // 'userIdUpdate',
23
+ // 'timeUpdate',
24
+ ]
25
+
26
+ //ltdtpick
27
+ grups = ltdtpick(grups, ks)
28
+
29
+ //rin
30
+ let rin = {
31
+ from,
32
+ grups,
33
+ }
34
+ // rin = JSON.stringify(rin)
35
+
36
+ //axios
37
+ await axios({
38
+ method: 'post',
39
+ url,
40
+ headers: { 'Content-Type': 'application/json; charset=utf-8' },
41
+ data: rin,
42
+ })
43
+ .then((res) => {
44
+ // console.log(res)
45
+ let r = {
46
+ msg: '成功傳輸grups清單',
47
+ res,
48
+ }
49
+ pm.resolve(r)
50
+ })
51
+ .catch((err) => {
52
+ // console.log(err)
53
+ let r = {
54
+ msg: '無法傳輸grups清單',
55
+ res: err,
56
+ }
57
+ pm.reject(r)
58
+ })
59
+
60
+ return pm
61
+ }
62
+
63
+
64
+ export default provideGrups
@@ -3,34 +3,33 @@ import ltdtpick from 'wsemi/src/ltdtpick.mjs'
3
3
  import genPm from 'wsemi/src/genPm.mjs'
4
4
 
5
5
 
6
- async function provideRuleGroups(url, from, ruleGroups) {
7
- //url: 指權限伺服器提供的調整ruleGroups網址, 例如 http://localhost:11006/syncAndReplaceRuleGroups
8
- //from: 指ruleGroup來源
6
+ async function providePemis(url, from, pemis) {
7
+ //url: 指權限伺服器提供的調整pemis網址, 例如 http://localhost:11006/syncAndReplacePemis
8
+ //from: 指pemis來源
9
9
 
10
10
  //pm
11
11
  let pm = genPm()
12
12
 
13
13
  //ks
14
14
  let ks = [
15
- 'id',
16
- 'order',
15
+ // 'id',
16
+ 'order', //order大部分由外部給予, 得要開啟
17
17
  'name',
18
18
  'description',
19
- 'from',
20
19
  'crules',
21
- 'userId',
22
- 'timeCreate',
23
- 'userIdUpdate',
24
- 'timeUpdate',
20
+ // 'userId',
21
+ // 'timeCreate',
22
+ // 'userIdUpdate',
23
+ // 'timeUpdate',
25
24
  ]
26
25
 
27
26
  //ltdtpick
28
- ruleGroups = ltdtpick(ruleGroups, ks)
27
+ pemis = ltdtpick(pemis, ks)
29
28
 
30
29
  //rin
31
30
  let rin = {
32
31
  from,
33
- ruleGroups,
32
+ pemis,
34
33
  }
35
34
  // rin = JSON.stringify(rin)
36
35
 
@@ -44,7 +43,7 @@ async function provideRuleGroups(url, from, ruleGroups) {
44
43
  .then((res) => {
45
44
  // console.log(res)
46
45
  let r = {
47
- msg: '成功傳輸RuleGroups清單',
46
+ msg: '成功傳輸pemis清單',
48
47
  res,
49
48
  }
50
49
  pm.resolve(r)
@@ -52,7 +51,7 @@ async function provideRuleGroups(url, from, ruleGroups) {
52
51
  .catch((err) => {
53
52
  // console.log(err)
54
53
  let r = {
55
- msg: '無法傳輸RuleGroups清單',
54
+ msg: '無法傳輸pemis清單',
56
55
  res: err,
57
56
  }
58
57
  pm.reject(r)
@@ -62,4 +61,4 @@ async function provideRuleGroups(url, from, ruleGroups) {
62
61
  }
63
62
 
64
63
 
65
- export default provideRuleGroups
64
+ export default providePemis
@@ -5,7 +5,7 @@ import genPm from 'wsemi/src/genPm.mjs'
5
5
 
6
6
  async function provideTargets(url, from, targets) {
7
7
  //url: 指權限伺服器提供的調整targets網址, 例如 http://localhost:11006/syncAndReplaceTargets
8
- //from: 指target來源
8
+ //from: 指targets來源
9
9
 
10
10
  //pm
11
11
  let pm = genPm()
@@ -13,9 +13,12 @@ async function provideTargets(url, from, targets) {
13
13
  //ks
14
14
  let ks = [
15
15
  'id',
16
- 'order',
16
+ 'order', //order大部分由外部給予, 得要開啟
17
17
  'description',
18
- 'from',
18
+ // 'userId',
19
+ // 'timeCreate',
20
+ // 'userIdUpdate',
21
+ // 'timeUpdate',
19
22
  ]
20
23
 
21
24
  //ltdtpick
@@ -38,7 +41,7 @@ async function provideTargets(url, from, targets) {
38
41
  .then((res) => {
39
42
  // console.log(res)
40
43
  let r = {
41
- msg: '成功傳輸Targets清單',
44
+ msg: '成功傳輸targets清單',
42
45
  res,
43
46
  }
44
47
  pm.resolve(r)
@@ -46,7 +49,7 @@ async function provideTargets(url, from, targets) {
46
49
  .catch((err) => {
47
50
  // console.log(err)
48
51
  let r = {
49
- msg: '無法傳輸Targets清單',
52
+ msg: '無法傳輸targets清單',
50
53
  res: err,
51
54
  }
52
55
  pm.reject(r)