Compare commits
4 Commits
master
...
feature/vu
Author | SHA1 | Message | Date |
---|---|---|---|
![]() |
657a8ab784 |
解决qiankun框架无法加载kt组件的问题
|
4 years ago |
![]() |
0b2b34a45b |
update
|
4 years ago |
![]() |
e96e998b92 |
继续优化vuex方案
|
4 years ago |
|
ff7d7cda10 |
kt下bus改为vuex用法
|
4 years ago |
-
1lib/tis_design/examples/web
-
12src/tis_app_template_kt/public/esplug.json
-
1src/tis_app_template_kt/sdk/KTWGWLGH/css/KTWGNetplanMain.css
-
1src/tis_app_template_kt/sdk/KTWGWLGH/css/KTWGWLGH.css
-
1src/tis_app_template_kt/sdk/KTWGWLGH/css/KTWGZYGL.css
-
1src/tis_app_template_kt/sdk/KTWGWLGH/css/app.css
-
10248src/tis_app_template_kt/sdk/KTWGWLGH/data/platformClasses.json
-
255src/tis_app_template_kt/sdk/KTWGWLGH/data/subnetTypes.json
-
243src/tis_app_template_kt/sdk/KTWGWLGH/data/subnetTypes.json.orig
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/172.bfcbe56.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/adapter.ee0753e.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/atm.1e8de55.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/bg.e0291d5.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/canshufenfa_jizhong.759a7e5.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/canshufenfa_shouchi.4e4084e.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/chengyuanhe.fffe6e4.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/chetong.764e760.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/device.3e2f893.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/deviceClass.332ee63.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/duoyewu.1de39ba.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/fourin.3e2f893.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/fourin1.3e2f893.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/guihua.8593548.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/haomibo.4a350e9.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/hf(125W).707d1e9.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/hf(200W).86525af.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/hf(beifu).f254060.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/hub.4d41c0f.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/inc.0f9eea4.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/jieguan.02120b3.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/lan_member.332ee63.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/micro5g.c5dde8b.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/p2mp_center.f5a0a80.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/p2mp_user.c7d16f2.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/phone.9e3ac5e.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/subnet_member.b8a0cde.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/tdma.6896e0f.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/terminal.cfd63e6.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/uhf.dc46362.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/uv.99ef606.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/vhf.9533c9d.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/wangkong.fe39f9c.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/wlan.9ccab95.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/wlan_shouchi.c942220.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/单信道短波接收机(内部).807b7e2.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/用户扩展箱(内部).0b023b0.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/直升机载超短波电台(内部).ecbd9af.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/短波多信道接收机(内部).5c0b1aa.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/车长盒副本(内部).b4663a5.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/远传盒副本(内部).188be16.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/通用背负式超短波电台(内部).3a679a2.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/野战便携式信息终端(内部).bb2218e.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/野战手持式信息终端(内部).7a82a1e.png
-
BINsrc/tis_app_template_kt/sdk/KTWGWLGH/img/野战网络传真机(内部).cae5ebe.png
-
14src/tis_app_template_kt/sdk/KTWGWLGH/index.html
-
9190src/tis_app_template_kt/sdk/KTWGWLGH/jquery.js
-
22src/tis_app_template_kt/sdk/KTWGWLGH/js/KTWGNetplanMain.js
-
22src/tis_app_template_kt/sdk/KTWGWLGH/js/KTWGWLGH.js
-
22src/tis_app_template_kt/sdk/KTWGWLGH/js/KTWGZYGL.js
-
1src/tis_app_template_kt/sdk/KTWGWLGH/js/app.js
-
13src/tis_app_template_kt/sdk/KTWGWLGH/license.js
-
51src/tis_app_template_kt/sdk/KTWGWLGH/manifest/esplug.json
-
6src/tis_app_template_kt/sdk/KTWGWLGH/manifest/users.json
-
13src/tis_app_template_kt/sdk/KTWGWLGH/tisplatform.json
-
31065src/tis_app_template_kt/sdk/KTWGWLGH/twaver.js
-
32src/tis_app_template_kt/sdk/KTWGWLGH/twaverLoader.js
-
2src/tis_app_template_kt/sdk/KT_SJDB/js/app.js
-
11src/tis_app_template_kt/sdk/tisplatform.json
-
2src/tis_app_template_kt/src/App.vue
-
2src/tis_app_template_kt/src/components/BottomView.vue
-
17src/tis_app_template_kt/src/components/Dialog/DialogPc.vue
-
219src/tis_app_template_kt/src/components/Dialog/Pc.vue
-
2src/tis_app_template_kt/src/components/EventBusExample.vue
-
8src/tis_app_template_kt/src/components/LeftView.vue
-
2src/tis_app_template_kt/src/components/RightCardComponent.vue
-
2src/tis_app_template_kt/src/components/RightView.vue
-
192src/tis_app_template_kt/src/components/controlMixins.js
-
105src/tis_app_template_kt/src/main.js
-
16src/tis_app_template_kt/src/pc.vue
-
3src/tis_app_template_kt/src/public-path.js
-
2src/tis_app_template_kt/src/tis/bus.js
-
273src/tis_app_template_kt/src/tis/index.js
-
2src/tis_app_template_kt/src/tis/layouts/BackContainer.vue
-
3src/tis_app_template_kt/src/tis/layouts/DialogContainer.vue
-
11src/tis_app_template_kt/src/tis/store/index.js
-
299src/tis_app_template_kt/src/tis/store/modules/tisbus.js
@ -0,0 +1 @@ |
|||||
|
/Users/Poised_flw/github/outsource/207-group/tis-design/packages/web |
1
src/tis_app_template_kt/sdk/KTWGWLGH/css/KTWGNetplanMain.css
File diff suppressed because it is too large
View File
1
src/tis_app_template_kt/sdk/KTWGWLGH/css/KTWGWLGH.css
File diff suppressed because it is too large
View File
1
src/tis_app_template_kt/sdk/KTWGWLGH/css/KTWGZYGL.css
File diff suppressed because it is too large
View File
1
src/tis_app_template_kt/sdk/KTWGWLGH/css/app.css
File diff suppressed because it is too large
View File
10248
src/tis_app_template_kt/sdk/KTWGWLGH/data/platformClasses.json
File diff suppressed because it is too large
View File
@ -0,0 +1,255 @@ |
|||||
|
[ |
||||
|
{ |
||||
|
"subnetTypeCode": "vhf", |
||||
|
"subnetTypeDesc": "VHF超短波子网", |
||||
|
"waveTypes": [ |
||||
|
{ |
||||
|
"waveTypeCode": "171", |
||||
|
"waveTypeDesc": "171" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "120", |
||||
|
"waveTypeDesc": "120" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "96G", |
||||
|
"waveTypeDesc": "96G" |
||||
|
} |
||||
|
], |
||||
|
"netModes": [ |
||||
|
{ |
||||
|
"netModeCode": "prn", |
||||
|
"netModeDesc": "PRN分组网" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "cnr", |
||||
|
"netModeDesc": "CNR战斗网" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "link_dikong", |
||||
|
"netModeDesc": "LINK地空" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "link_dimian", |
||||
|
"netModeDesc": "LINK地面" |
||||
|
} |
||||
|
] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "uhf", |
||||
|
"subnetTypeDesc": "高速电台子网", |
||||
|
"waveTypes": [], |
||||
|
"netModes": [ |
||||
|
{ |
||||
|
"netModeCode": "prn", |
||||
|
"netModeDesc": "PRN" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "link", |
||||
|
"netModeDesc": "LINK" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "qLink", |
||||
|
"netModeDesc": "QLINK" |
||||
|
} |
||||
|
] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "datalink_HF", |
||||
|
"subnetTypeDesc": "综合数据链HF网", |
||||
|
"channelTypes": [ |
||||
|
{ |
||||
|
"channelTypeCode": "1", |
||||
|
"channelTypeDesc": "HF串行" |
||||
|
} |
||||
|
], |
||||
|
"workTypes": [ |
||||
|
{ |
||||
|
"workTypeCode": "1", |
||||
|
"workTypeDesc": "测试" |
||||
|
}, |
||||
|
{ |
||||
|
"workTypeCode": "2", |
||||
|
"workTypeDesc": "轮询" |
||||
|
}, |
||||
|
{ |
||||
|
"workTypeCode": "3", |
||||
|
"workTypeDesc": "广播" |
||||
|
}, |
||||
|
{ |
||||
|
"workTypeCode": "4", |
||||
|
"workTypeDesc": "点对点" |
||||
|
}, |
||||
|
{ |
||||
|
"workTypeCode": "5", |
||||
|
"workTypeDesc": "静默" |
||||
|
}, |
||||
|
{ |
||||
|
"workTypeCode": "16", |
||||
|
"workTypeDesc": "传输" |
||||
|
}, |
||||
|
{ |
||||
|
"workTypeCode": "17", |
||||
|
"workTypeDesc": "呼叫应答" |
||||
|
} |
||||
|
] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "datalink_VU", |
||||
|
"subnetTypeDesc": "综合数据链V/U网", |
||||
|
"channelTypes": [], |
||||
|
"workTypes": [] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "hf", |
||||
|
"subnetTypeDesc": "211短波子网", |
||||
|
"waveTypes": [ |
||||
|
{ |
||||
|
"waveTypeCode": "99短波", |
||||
|
"waveTypeDesc": "99短波" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "211短波", |
||||
|
"waveTypeDesc": "211短波" |
||||
|
} |
||||
|
], |
||||
|
"netModes": [ |
||||
|
{ |
||||
|
"netModeCode": "dingpin", |
||||
|
"netModeDesc": "定频" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "tiaopin", |
||||
|
"netModeDesc": "跳频" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "zidong", |
||||
|
"netModeDesc": "自动" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "zishiying", |
||||
|
"netModeDesc": "自适应" |
||||
|
} |
||||
|
] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "hf_prn", |
||||
|
"subnetTypeDesc": "PRN短波子网", |
||||
|
"waveTypes": [], |
||||
|
"netModes": [] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "hf_link", |
||||
|
"subnetTypeDesc": "LINK短波子网", |
||||
|
"waveTypes": [], |
||||
|
"netModes": [] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "wlan", |
||||
|
"subnetTypeDesc": "指挥所无线局域网", |
||||
|
"waveTypes": [], |
||||
|
"netModes": [] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "lte_CenterAdHoc", |
||||
|
"subnetTypeDesc": "lte中心站自组网", |
||||
|
"waveTypes": [], |
||||
|
"netModes": [] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "lte_UserAdHoc", |
||||
|
"subnetTypeDesc": "lte用户站自组网", |
||||
|
"waveTypes": [], |
||||
|
"netModes": [] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "secondGenerationSatellite", |
||||
|
"subnetTypeDesc": "二代卫星网", |
||||
|
"waveTypes": [], |
||||
|
"netModes": [] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "optical", |
||||
|
"subnetTypeDesc": "光环网", |
||||
|
"waveTypes": [], |
||||
|
"netModes": [] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "p2mp", |
||||
|
"subnetTypeDesc": "点对多点", |
||||
|
"waveTypes": [], |
||||
|
"netModes": [ |
||||
|
{ |
||||
|
"netModeCode": "ATM_NTN", |
||||
|
"netModeDesc": "ATM自组网" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "IP_NTN", |
||||
|
"netModeDesc": "IP自组网" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "ATM_ACCESS", |
||||
|
"netModeDesc": "ATM接入网" |
||||
|
} |
||||
|
] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "intelligenceTrans", |
||||
|
"subnetTypeDesc": "情报传输子网", |
||||
|
"waveTypes": [ |
||||
|
{ |
||||
|
"waveTypeCode": "NULL_WAVE", |
||||
|
"waveTypeDesc": "空波形" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WURENJI_206", |
||||
|
"waveTypeDesc": "无人机波形(KVB206/827)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WEIBOSHUZITUXIANG_SHOU", |
||||
|
"waveTypeDesc": "微波数字图像波形(收)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WEIBOSHUZITUXIANG_FA", |
||||
|
"waveTypeDesc": "微波数字图像波形(发)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WEIBOCHUANSHU_SHOU", |
||||
|
"waveTypeDesc": "微波传输设备波形(收)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "QINGBAOZHONGDUAN_A", |
||||
|
"waveTypeDesc": "情报终端A型波形" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "QINGBAOZHONGDUAN_B", |
||||
|
"waveTypeDesc": "情报终端B型波形" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WEIBOCHUANSHU_FA", |
||||
|
"waveTypeDesc": "微波传输设备波形(发)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WURENJI_206A", |
||||
|
"waveTypeDesc": "无人机波形(KVB206A)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WURENJI_205", |
||||
|
"waveTypeDesc": "无人机波形(BZK-205)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WURENJI_008", |
||||
|
"waveTypeDesc": "无人机波形(BZK-008)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WURENJI_001B", |
||||
|
"waveTypeDesc": "无人机波形(001B)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WURENJI_803", |
||||
|
"waveTypeDesc": "无人机波形(803)" |
||||
|
} |
||||
|
], |
||||
|
"netModes": [] |
||||
|
} |
||||
|
] |
@ -0,0 +1,243 @@ |
|||||
|
[ |
||||
|
{ |
||||
|
"subnetTypeCode": "vhf", |
||||
|
"subnetTypeDesc": "VHF超短波子网", |
||||
|
"waveTypes": [ |
||||
|
{ |
||||
|
"waveTypeCode": "171", |
||||
|
"waveTypeDesc": "171" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "120", |
||||
|
"waveTypeDesc": "120" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "96G", |
||||
|
"waveTypeDesc": "96G" |
||||
|
} |
||||
|
], |
||||
|
"netModes": [ |
||||
|
{ |
||||
|
"netModeCode": "prn", |
||||
|
"netModeDesc": "PRN分组网" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "cnr", |
||||
|
"netModeDesc": "CNR战斗网" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "link_dikong", |
||||
|
"netModeDesc": "LINK地空" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "link_dimian", |
||||
|
"netModeDesc": "LINK地面" |
||||
|
} |
||||
|
] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "uhf", |
||||
|
"subnetTypeDesc": "高速电台子网", |
||||
|
"waveTypes": [], |
||||
|
"netModes": [ |
||||
|
{ |
||||
|
"netModeCode": "prn", |
||||
|
"netModeDesc": "PRN" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "link", |
||||
|
"netModeDesc": "LINK" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "qLink", |
||||
|
"netModeDesc": "QLINK" |
||||
|
} |
||||
|
] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "datalink_HF", |
||||
|
"subnetTypeDesc": "综合数据链HF网", |
||||
|
"channelTypes": [ |
||||
|
{ |
||||
|
"channelTypeCode": "1", |
||||
|
"channelTypeDesc": "HF串行" |
||||
|
} |
||||
|
], |
||||
|
"workTypes": [ |
||||
|
{ |
||||
|
"workTypeCode": "1", |
||||
|
"workTypeDesc": "测试" |
||||
|
}, |
||||
|
{ |
||||
|
"workTypeCode": "2", |
||||
|
"workTypeDesc": "轮询" |
||||
|
}, |
||||
|
{ |
||||
|
"workTypeCode": "3", |
||||
|
"workTypeDesc": "广播" |
||||
|
}, |
||||
|
{ |
||||
|
"workTypeCode": "4", |
||||
|
"workTypeDesc": "点对点" |
||||
|
}, |
||||
|
{ |
||||
|
"workTypeCode": "5", |
||||
|
"workTypeDesc": "静默" |
||||
|
}, |
||||
|
{ |
||||
|
"workTypeCode": "16", |
||||
|
"workTypeDesc": "传输" |
||||
|
}, |
||||
|
{ |
||||
|
"workTypeCode": "17", |
||||
|
"workTypeDesc": "呼叫应答" |
||||
|
} |
||||
|
] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "datalink_VU", |
||||
|
"subnetTypeDesc": "综合数据链V/U网", |
||||
|
"channelTypes": [], |
||||
|
"workTypes": [] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "hf", |
||||
|
"subnetTypeDesc": "战互网短波子网", |
||||
|
"waveTypes": [ |
||||
|
{ |
||||
|
"waveTypeCode": "99短波", |
||||
|
"waveTypeDesc": "99短波" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "211短波", |
||||
|
"waveTypeDesc": "211短波" |
||||
|
} |
||||
|
], |
||||
|
"netModes": [ |
||||
|
{ |
||||
|
"netModeCode": "dingpin", |
||||
|
"netModeDesc": "定频" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "tiaopin", |
||||
|
"netModeDesc": "跳频" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "zidong", |
||||
|
"netModeDesc": "自动" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "zishiying", |
||||
|
"netModeDesc": "自适应" |
||||
|
} |
||||
|
] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "wlan", |
||||
|
"subnetTypeDesc": "指挥所无线局域网", |
||||
|
"waveTypes": [], |
||||
|
"netModes": [] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "lte_CenterAdHoc", |
||||
|
"subnetTypeDesc": "lte中心站自组网", |
||||
|
"waveTypes": [], |
||||
|
"netModes": [] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "lte_UserAdHoc", |
||||
|
"subnetTypeDesc": "lte用户站自组网", |
||||
|
"waveTypes": [], |
||||
|
"netModes": [] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "secondGenerationSatellite", |
||||
|
"subnetTypeDesc": "二代卫星网", |
||||
|
"waveTypes": [], |
||||
|
"netModes": [] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "optical", |
||||
|
"subnetTypeDesc": "光环网", |
||||
|
"waveTypes": [], |
||||
|
"netModes": [] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "p2mp", |
||||
|
"subnetTypeDesc": "点对多点", |
||||
|
"waveTypes": [], |
||||
|
"netModes": [ |
||||
|
{ |
||||
|
"netModeCode": "ATM_NTN", |
||||
|
"netModeDesc": "ATM自组网" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "IP_NTN", |
||||
|
"netModeDesc": "IP自组网" |
||||
|
}, |
||||
|
{ |
||||
|
"netModeCode": "ATM_ACCESS", |
||||
|
"netModeDesc": "ATM接入网" |
||||
|
} |
||||
|
] |
||||
|
}, |
||||
|
{ |
||||
|
"subnetTypeCode": "intelligenceTrans", |
||||
|
"subnetTypeDesc": "情报传输子网", |
||||
|
"waveTypes": [ |
||||
|
{ |
||||
|
"waveTypeCode": "NULL_WAVE", |
||||
|
"waveTypeDesc": "空波形" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WURENJI_206", |
||||
|
"waveTypeDesc": "无人机波形(KVB206/827)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WEIBOSHUZITUXIANG_SHOU", |
||||
|
"waveTypeDesc": "微波数字图像波形(收)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WEIBOSHUZITUXIANG_FA", |
||||
|
"waveTypeDesc": "微波数字图像波形(发)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WEIBOCHUANSHU_SHOU", |
||||
|
"waveTypeDesc": "微波传输设备波形(收)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "QINGBAOZHONGDUAN_A", |
||||
|
"waveTypeDesc": "情报终端A型波形" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "QINGBAOZHONGDUAN_B", |
||||
|
"waveTypeDesc": "情报终端B型波形" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WEIBOCHUANSHU_FA", |
||||
|
"waveTypeDesc": "微波传输设备波形(发)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WURENJI_206A", |
||||
|
"waveTypeDesc": "无人机波形(KVB206A)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WURENJI_205", |
||||
|
"waveTypeDesc": "无人机波形(BZK-205)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WURENJI_008", |
||||
|
"waveTypeDesc": "无人机波形(BZK-008)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WURENJI_001B", |
||||
|
"waveTypeDesc": "无人机波形(001B)" |
||||
|
}, |
||||
|
{ |
||||
|
"waveTypeCode": "WURENJI_803", |
||||
|
"waveTypeDesc": "无人机波形(803)" |
||||
|
} |
||||
|
], |
||||
|
"netModes": [] |
||||
|
} |
||||
|
] |
After Width: 120 | Height: 120 | Size: 32 KiB |
After Width: 120 | Height: 120 | Size: 19 KiB |
After Width: 120 | Height: 120 | Size: 25 KiB |
After Width: 1248 | Height: 832 | Size: 276 KiB |
After Width: 120 | Height: 120 | Size: 19 KiB |
After Width: 120 | Height: 120 | Size: 18 KiB |
After Width: 120 | Height: 120 | Size: 25 KiB |
After Width: 120 | Height: 120 | Size: 18 KiB |
After Width: 120 | Height: 120 | Size: 25 KiB |
After Width: 160 | Height: 160 | Size: 15 KiB |
After Width: 120 | Height: 120 | Size: 16 KiB |
After Width: 120 | Height: 120 | Size: 25 KiB |
After Width: 120 | Height: 120 | Size: 25 KiB |
After Width: 120 | Height: 120 | Size: 24 KiB |
After Width: 120 | Height: 120 | Size: 18 KiB |
After Width: 120 | Height: 120 | Size: 17 KiB |
After Width: 120 | Height: 120 | Size: 17 KiB |
After Width: 120 | Height: 120 | Size: 20 KiB |
After Width: 120 | Height: 120 | Size: 14 KiB |
After Width: 120 | Height: 120 | Size: 26 KiB |
After Width: 120 | Height: 120 | Size: 23 KiB |
After Width: 160 | Height: 160 | Size: 15 KiB |
After Width: 120 | Height: 120 | Size: 19 KiB |
After Width: 120 | Height: 120 | Size: 19 KiB |
After Width: 120 | Height: 120 | Size: 21 KiB |
After Width: 120 | Height: 120 | Size: 16 KiB |
After Width: 80 | Height: 90 | Size: 13 KiB |
After Width: 120 | Height: 120 | Size: 19 KiB |
After Width: 120 | Height: 120 | Size: 25 KiB |
After Width: 120 | Height: 120 | Size: 30 KiB |
After Width: 120 | Height: 120 | Size: 23 KiB |
After Width: 120 | Height: 120 | Size: 22 KiB |
After Width: 120 | Height: 120 | Size: 23 KiB |
After Width: 120 | Height: 120 | Size: 24 KiB |
After Width: 120 | Height: 120 | Size: 21 KiB |
After Width: 120 | Height: 120 | Size: 19 KiB |
After Width: 300 | Height: 199 | Size: 56 KiB |
After Width: 120 | Height: 120 | Size: 25 KiB |
After Width: 120 | Height: 120 | Size: 22 KiB |
After Width: 120 | Height: 120 | Size: 25 KiB |
After Width: 120 | Height: 120 | Size: 19 KiB |
After Width: 120 | Height: 120 | Size: 15 KiB |
After Width: 120 | Height: 120 | Size: 20 KiB |
After Width: 120 | Height: 120 | Size: 12 KiB |
After Width: 120 | Height: 120 | Size: 19 KiB |
@ -0,0 +1,14 @@ |
|||||
|
<!DOCTYPE html> |
||||
|
<html lang="en"> |
||||
|
<head> |
||||
|
<meta charset="UTF-8"> |
||||
|
<title></title> |
||||
|
<link rel="stylesheet" href="./css/app.css" /> |
||||
|
</head> |
||||
|
<body> |
||||
|
<div id="app"></div> |
||||
|
<script type="text/javascript" src="./twaverLoader.js"></script> |
||||
|
<script type="text/javascript" src="./jquery.js"></script> |
||||
|
<script type="text/javascript" src="./js/app.js"></script> |
||||
|
</body> |
||||
|
</html> |
9190
src/tis_app_template_kt/sdk/KTWGWLGH/jquery.js
File diff suppressed because it is too large
View File
22
src/tis_app_template_kt/sdk/KTWGWLGH/js/KTWGNetplanMain.js
File diff suppressed because it is too large
View File
22
src/tis_app_template_kt/sdk/KTWGWLGH/js/KTWGWLGH.js
File diff suppressed because it is too large
View File
22
src/tis_app_template_kt/sdk/KTWGWLGH/js/KTWGZYGL.js
File diff suppressed because it is too large
View File
1
src/tis_app_template_kt/sdk/KTWGWLGH/js/app.js
File diff suppressed because it is too large
View File
@ -0,0 +1,13 @@ |
|||||
|
twaver.Util.validateLicense( |
||||
|
"l=1.0\n"+ |
||||
|
"type=3\n"+ |
||||
|
"gis=1\n"+ |
||||
|
"3d=0\n"+ |
||||
|
"start=2015-12-23\n"+ |
||||
|
"licensee=The 54th Research Institute of China Electronics Technology Group Corporation\n"+ |
||||
|
"licensedUser=1 SITE\n"+ |
||||
|
"periodofValidity=PERMANENT\n"+ |
||||
|
"maintenanceandUpgrade=12 MONTH\n"+ |
||||
|
"buyer=GRAND LINK INTERNATIONAL HOLDING LIMITED\n"+ |
||||
|
"signature=2b626989827461fc8175f56f516aa96c9a07c0e91bf60663a9b05585a3857bdc86795f5161530c8f7e34285a87ae79c8e9872d21f1cfb94cf1b1b46f453452ff681845d29d86420e65538acaa32bdf132d00f1a7927575baf677df88b81aa0e15f07646bda6a276ada4d61bda075148fb6bf0df79eb141a94c5b474383eba4fc5bdf736cdece8d9bc84a32d0cc32bb543f87982c3889cbca88d1b25ec9e027ddf750ad589544b86080ebd6e7c2a1ba0eceeb94d699e03add0d51f09fa70f6577ab82bcba5f93f69e6deaf3fef98594fe5dd944175377ae25d89f7c1a24efa83382ec2038a74031936f49e7905542333aeb087e1b6fbee92b0814b3d7d1801aae5183faab84879d6a958c38699248666309b65bb0f10d6f07ed511056782b46428cda8d2c01110b50306ee5447da68a1df0657e8120f964d6747cb6bcae6a1b40515e75bcaa7713c2351c3a1bfb5469fc7c0e4187a2f3646a9fd85c26813be479fdd67ec5ccc16b722943bafd79be727703c8062ec42384c071f3f6a8e5b38187" |
||||
|
); |
@ -0,0 +1,51 @@ |
|||||
|
{ |
||||
|
"desk": { |
||||
|
"prefix": "zhts", |
||||
|
"menuBar": [ |
||||
|
{ |
||||
|
"name": "资源管理", |
||||
|
"component": [ |
||||
|
"KTWGZYGL" |
||||
|
], |
||||
|
"tip": "提示", |
||||
|
"icon": "icon-zhandou", |
||||
|
"ifSelfAComponent": false, |
||||
|
"selfComponent": "" |
||||
|
}, |
||||
|
{ |
||||
|
"name": "网络规划", |
||||
|
"component": [ |
||||
|
"KTWGWLGH" |
||||
|
], |
||||
|
"tip": "提示", |
||||
|
"icon": "icon-zhandou", |
||||
|
"ifSelfAComponent": false, |
||||
|
"selfComponent": "" |
||||
|
} |
||||
|
], |
||||
|
"components": [ |
||||
|
{ |
||||
|
"name": "资源管理", |
||||
|
"component": "KTWGZYGL", |
||||
|
"componentArgs": 0, |
||||
|
"type": "PopupWidget", |
||||
|
"height": 9999, |
||||
|
"width": 9999 |
||||
|
}, |
||||
|
{ |
||||
|
"name": "网络规划", |
||||
|
"component": "KTWGWLGH", |
||||
|
"componentArgs": 0, |
||||
|
"type": "PopupWidget", |
||||
|
"height": 9999, |
||||
|
"width": 9999 |
||||
|
}, |
||||
|
{ |
||||
|
"name": "网络规划", |
||||
|
"component": "KTWGNetplanMain", |
||||
|
"componentArgs": 0, |
||||
|
"type": "PopupWidget" |
||||
|
} |
||||
|
] |
||||
|
} |
||||
|
} |
@ -0,0 +1,6 @@ |
|||||
|
{ |
||||
|
"username": "admin", |
||||
|
"password": "admin", |
||||
|
"screendemo": "不同用户显示不同分屏,模拟==>根据用户显示分屏", |
||||
|
"screen": "1" |
||||
|
} |
@ -0,0 +1,13 @@ |
|||||
|
{ |
||||
|
"KTWGWLGH": { |
||||
|
"cssFiles": [ |
||||
|
"/KTWGWLGH/css/app.css" |
||||
|
], |
||||
|
"jsFiles": [ |
||||
|
"/KTWGWLGH/twaverLoader.js", |
||||
|
"/KTWGWLGH/jquery.js", |
||||
|
"/KTWGWLGH/js/app.js" |
||||
|
], |
||||
|
"preload": false |
||||
|
} |
||||
|
} |
31065
src/tis_app_template_kt/sdk/KTWGWLGH/twaver.js
File diff suppressed because it is too large
View File
@ -0,0 +1,32 @@ |
|||||
|
(function(){ |
||||
|
if(window.twaver && window.twaver.Node){ |
||||
|
console.warn("已加载拓扑控件,将不再加载"); |
||||
|
return; |
||||
|
} |
||||
|
console.log("加载拓扑控件……"); |
||||
|
var getPath = function(){ |
||||
|
let filePath = ""; |
||||
|
if(document.currentScript){ |
||||
|
filePath = document.currentScript.src; |
||||
|
} |
||||
|
if(filePath.lastIndexOf("/") != -1){ |
||||
|
filePath = filePath.substr(0, filePath.lastIndexOf("/") + 1); |
||||
|
}else{ |
||||
|
filePath = ""; |
||||
|
} |
||||
|
return filePath; |
||||
|
}; |
||||
|
var twaverJs = document.createElement("script"); |
||||
|
twaverJs.type = "text/javascript"; |
||||
|
twaverJs.src = getPath() + "twaver.js"; |
||||
|
twaverJs.async = false; |
||||
|
console.log('twaver路径为:' + twaverJs.src); |
||||
|
document.getElementsByTagName("head")[0].append(twaverJs); |
||||
|
|
||||
|
var twaverLicenseJs = document.createElement("script"); |
||||
|
twaverLicenseJs.type = "text/javascript"; |
||||
|
twaverLicenseJs.src = getPath() + "license.js"; |
||||
|
twaverLicenseJs.async = false; |
||||
|
console.log('twaver license路径为:' + twaverLicenseJs.src); |
||||
|
document.getElementsByTagName("head")[0].append(twaverLicenseJs); |
||||
|
}()); |
2
src/tis_app_template_kt/sdk/KT_SJDB/js/app.js
File diff suppressed because it is too large
View File
@ -1,107 +1,111 @@ |
|||||
|
|
||||
export const controlMixins = { |
export const controlMixins = { |
||||
data() { |
data() { |
||||
return { |
|
||||
active: 0, |
|
||||
hidden: [], |
|
||||
activeCache: -1, |
|
||||
show: true, |
|
||||
showRightContent: true, |
|
||||
type1: '' |
|
||||
}; |
|
||||
|
return { |
||||
|
active: 0, |
||||
|
hidden: [], |
||||
|
activeCache: -1, |
||||
|
show: true, |
||||
|
showRightContent: true, |
||||
|
type1: '', |
||||
|
} |
||||
}, |
}, |
||||
asyncComputed: { |
asyncComputed: { |
||||
list: { |
|
||||
lazy: false, |
|
||||
async get() { |
|
||||
let list = []; |
|
||||
const lefts = this.$tis.getWidgetsByType(this.type); |
|
||||
if (lefts) { |
|
||||
const lfs = lefts.filter(l => l && !l.lazy); |
|
||||
for (let i = 0; i < lfs.length; i++) { |
|
||||
let l = lfs[i]; |
|
||||
|
|
||||
if (l instanceof Promise) { |
|
||||
const r = await l.then(r => r) |
|
||||
list.push(r); |
|
||||
} else { |
|
||||
list.push(l); |
|
||||
} |
|
||||
} |
|
||||
|
list: { |
||||
|
lazy: false, |
||||
|
async get() { |
||||
|
let list = [] |
||||
|
// const lefts = this.$tis.getWidgetsByType(this.type)
|
||||
|
return this.$store |
||||
|
.dispatch('tisbus/getWidgetsByType', this.type) |
||||
|
.then(lefts => { |
||||
|
if (lefts.length > 0) { |
||||
|
const lfs = lefts.filter(l => l && !l.lazy) |
||||
|
for (let i = 0; i < lfs.length; i++) { |
||||
|
let l = lfs[i] |
||||
|
if (l instanceof Promise) { |
||||
|
console.log('tetetetete4t') |
||||
|
l.then(s => list.push(rl)) |
||||
|
} else { |
||||
|
list.push(l) |
||||
|
} |
||||
} |
} |
||||
console.log(this.type, list); |
|
||||
///记录激活数量
|
|
||||
return list; |
|
||||
}, |
|
||||
watch: ['$tis.layouts'], |
|
||||
default() { |
|
||||
return []; |
|
||||
}, |
|
||||
|
|
||||
|
} |
||||
|
///记录激活数量
|
||||
|
return list |
||||
|
}) |
||||
|
.catch(err => { |
||||
|
console.log(err) |
||||
|
}) |
||||
}, |
}, |
||||
|
watch: ['$store.state.tisbus.layouts'], |
||||
|
default() { |
||||
|
return [] |
||||
|
}, |
||||
|
}, |
||||
}, |
}, |
||||
computed: { |
computed: { |
||||
actives() { |
|
||||
return this.$tis.getActivesByType(this.type); |
|
||||
}, |
|
||||
allHiddened() { |
|
||||
if (this.hidden.length === 0) return false; |
|
||||
return this.list.every((i, index) => { |
|
||||
return this.hidden[index] === true; |
|
||||
}); |
|
||||
}, |
|
||||
|
actives() { |
||||
|
// return this.$tis.getActivesByType(this.type);
|
||||
|
return this.$store.getters['tisbus/getActivesByType'](this.type) |
||||
|
}, |
||||
|
allHiddened() { |
||||
|
if (this.hidden.length === 0) return false |
||||
|
return this.list.every((i, index) => { |
||||
|
return this.hidden[index] === true |
||||
|
}) |
||||
|
}, |
||||
}, |
}, |
||||
methods: { |
methods: { |
||||
onClose(index) { |
|
||||
console.log("删除", index); |
|
||||
// //最小化后
|
|
||||
this.list[index].lazy = true; |
|
||||
this.$tis.closeComponent([this.list[index].component]); |
|
||||
this.activeCache > 0 ? this.activeCache-- : ""; |
|
||||
}, |
|
||||
onMinize(index) { |
|
||||
this.$set(this.hidden, index, true); |
|
||||
if (this.active === index) { |
|
||||
this.active = -1; |
|
||||
for (let i = index + 1; i < this.list.length; i++) { |
|
||||
if (!this.hidden[i]) { |
|
||||
this.active = i; |
|
||||
return; |
|
||||
} |
|
||||
} |
|
||||
|
onClose(index) { |
||||
|
console.log('删除', index) |
||||
|
// //最小化后
|
||||
|
this.list[index].lazy = true |
||||
|
this.$store.commit('tisbus/closeComponent', [this.list[index].component]) |
||||
|
this.activeCache > 0 ? this.activeCache-- : '' |
||||
|
}, |
||||
|
onMinize(index) { |
||||
|
this.$set(this.hidden, index, true) |
||||
|
if (this.active === index) { |
||||
|
this.active = -1 |
||||
|
for (let i = index + 1; i < this.list.length; i++) { |
||||
|
if (!this.hidden[i]) { |
||||
|
this.active = i |
||||
|
return |
||||
} |
} |
||||
}, |
|
||||
onClickMenu(index) { |
|
||||
if(this.active === index){ |
|
||||
this.showRightContent = !this.showRightContent |
|
||||
this.type1 = 'self' |
|
||||
}else{ |
|
||||
this.showRightContent = true |
|
||||
this.type1 = 'ohter' |
|
||||
} |
|
||||
this.active = index; |
|
||||
this.$set(this.hidden, index, false); |
|
||||
// const appCard = this.$refs.appCards[index];
|
|
||||
// // console.log('99999999',index,this.$refs.appCards,this.$refs.appCards[index]);
|
|
||||
// appCard.scrollIntoView({
|
|
||||
// behavior: "smooth",
|
|
||||
// block: "start",
|
|
||||
// inline: "start",
|
|
||||
// });
|
|
||||
this.$forceUpdate(); |
|
||||
|
|
||||
}, |
|
||||
onHideAll() { |
|
||||
this.list.forEach((item, index) => { |
|
||||
this.$set(this.hidden, index, true); |
|
||||
}); |
|
||||
this.active = -1; |
|
||||
}, |
|
||||
onOpenAll() { |
|
||||
this.list.forEach((item, index) => { |
|
||||
this.$set(this.hidden, index, false); |
|
||||
}); |
|
||||
this.active = 0; |
|
||||
}, |
|
||||
|
} |
||||
|
} |
||||
|
}, |
||||
|
onClickMenu(index) { |
||||
|
if (this.active === index) { |
||||
|
this.showRightContent = !this.showRightContent |
||||
|
this.type1 = 'self' |
||||
|
} else { |
||||
|
this.showRightContent = true |
||||
|
this.type1 = 'ohter' |
||||
|
} |
||||
|
this.active = index |
||||
|
this.$set(this.hidden, index, false) |
||||
|
// const appCard = this.$refs.appCards[index];
|
||||
|
// // console.log('99999999',index,this.$refs.appCards,this.$refs.appCards[index]);
|
||||
|
// appCard.scrollIntoView({
|
||||
|
// behavior: "smooth",
|
||||
|
// block: "start",
|
||||
|
// inline: "start",
|
||||
|
// });
|
||||
|
this.$forceUpdate() |
||||
|
}, |
||||
|
onHideAll() { |
||||
|
this.list.forEach((item, index) => { |
||||
|
this.$set(this.hidden, index, true) |
||||
|
}) |
||||
|
this.active = -1 |
||||
|
}, |
||||
|
onOpenAll() { |
||||
|
this.list.forEach((item, index) => { |
||||
|
this.$set(this.hidden, index, false) |
||||
|
}) |
||||
|
this.active = 0 |
||||
|
}, |
||||
}, |
}, |
||||
} |
|
||||
|
} |
@ -0,0 +1,3 @@ |
|||||
|
if (window.__POWERED_BY_QIANKUN__) { |
||||
|
__webpack_public_path__ = window.__INJECTED_PUBLIC_PATH_BY_QIANKUN__; |
||||
|
} |
@ -0,0 +1,299 @@ |
|||||
|
import Vue from 'vue' |
||||
|
import {registerApps} from '../.././scriptsLoader/index' |
||||
|
|
||||
|
export default { |
||||
|
namespaced: true, |
||||
|
state: { |
||||
|
appId: '', |
||||
|
dialogZIndex: 400, |
||||
|
curBaseUrl: '', |
||||
|
baseUrl: process.env.NODE_ENV === 'development' ? process.env.BASE_URL : '', |
||||
|
components: [], // components
|
||||
|
asserts: {}, // 所有资源
|
||||
|
deviceType: 'pc', |
||||
|
actives: [], // 从菜单中激活的组件,
|
||||
|
layouts: [], // 由自定义组件和第三方组件组成的布局组件集合
|
||||
|
widgets: [], // 在应用模板内部需要加载的widgets
|
||||
|
}, |
||||
|
getters: { |
||||
|
// 获取设备型号
|
||||
|
getDeviceType(state) { |
||||
|
return state.deviceType |
||||
|
}, |
||||
|
// 获取布局组件集合
|
||||
|
getTemplateLayouts(state) { |
||||
|
return state.layouts |
||||
|
}, |
||||
|
// 计算弹窗的z-index
|
||||
|
getNextDialogZIndex(state) { |
||||
|
let zIndex = 0 |
||||
|
for (let item of state.actives) { |
||||
|
if (item.zIndex && item.zIndex > zIndex) { |
||||
|
zIndex = item.zIndex |
||||
|
} |
||||
|
} |
||||
|
return zIndex > 0 ? zIndex + 1 : state.dialogZIndex |
||||
|
}, |
||||
|
// 获取含有当前类型的激活组件
|
||||
|
getActivesByType(state) { |
||||
|
return type => { |
||||
|
console.log( |
||||
|
'获取含有当前类型的激活组件', |
||||
|
state.actives.filter(a => a.type === type) |
||||
|
) |
||||
|
return state.actives.filter(a => a.type === type) |
||||
|
} |
||||
|
// return type => state.actives.filter(a => a.type === type)
|
||||
|
}, |
||||
|
}, |
||||
|
mutations: { |
||||
|
updateAppId(state, appId) { |
||||
|
state.appId = appId |
||||
|
}, |
||||
|
// 传递当前所处组件的上下文环境
|
||||
|
menuStatusUpdate(state) { |
||||
|
const onActives = state.layouts |
||||
|
.filter(l => !l.lazy) |
||||
|
.map(c => ({ |
||||
|
component: c.component.name || c.component, |
||||
|
status: c.status, |
||||
|
})) |
||||
|
const appId = state.appId |
||||
|
// 调用框架的tis进行事件通信
|
||||
|
window.esapp.tis.$emit('TIS_TEMPLATE_MENU_ACTIVE', { |
||||
|
appId, |
||||
|
onActives: onActives, |
||||
|
system: true, |
||||
|
}) |
||||
|
}, |
||||
|
// 初始化配置信息
|
||||
|
async initData(state, props) { |
||||
|
const dev = process.env.NODE_ENV === 'development' |
||||
|
state.curBaseUrl = props.tis ? props.tis.entry : state.baseUrl |
||||
|
const esData = await Vue.prototype.$axios.get(`${state.curBaseUrl}/esplug.json`).catch(err => console.error(err)) |
||||
|
console.log('初始化配置信息', esData) |
||||
|
const asserts = await Vue.prototype.$axios |
||||
|
.get(`${state.curBaseUrl}/tisplatform.json`) |
||||
|
.catch(err => console.error(err)) |
||||
|
try { |
||||
|
// 运行模式才取用框架返回的数据
|
||||
|
if (props.tis && !dev) { |
||||
|
console.log('框架传入的components:', props.tis.components) |
||||
|
state.components = props.tis.components |
||||
|
? [...props.tis.components, ...esData.data.components] |
||||
|
: esData.data.components |
||||
|
state.asserts = Object.keys(props.tis.asserts).length !== 0 ? props.tis.asserts : asserts.data |
||||
|
state.widgets = props.tis.widgets ? props.tis.widgets : esData.data.widgets |
||||
|
} else { |
||||
|
// state.actives = esData.data.components
|
||||
|
state.components = esData.data.components |
||||
|
state.asserts = asserts.data |
||||
|
state.widgets = esData.data.widgets |
||||
|
} |
||||
|
// 避免不填此属性,默认懒加载
|
||||
|
state.components = state.components.map(c => { |
||||
|
if (!Object.prototype.hasOwnProperty.call(c, 'lazy') && c.type !== 'background') { |
||||
|
c.lazy = true |
||||
|
} |
||||
|
return c |
||||
|
}) |
||||
|
console.log('初始化配置信息components', state.components) |
||||
|
} catch (e) { |
||||
|
console.error(e) |
||||
|
} |
||||
|
}, |
||||
|
// 激活窗口
|
||||
|
activeComponent(state, component) { |
||||
|
const curComponent = state.actives.find(v => (v.component.name || v.component) === component) |
||||
|
const maxZIndex = Math.max.apply( |
||||
|
Math, |
||||
|
state.actives.map(function(o) { |
||||
|
return o.zIndex |
||||
|
}) |
||||
|
) |
||||
|
const maxComponent = state.actives.find(v => v.zIndex === maxZIndex) |
||||
|
if (curComponent === maxComponent) return |
||||
|
maxComponent.zIndex = curComponent.zIndex |
||||
|
curComponent.zIndex = maxZIndex |
||||
|
state.actives = [...state.actives] |
||||
|
}, |
||||
|
// 最小化激活的弹窗
|
||||
|
minimizeComponent(state, component) { |
||||
|
state.actives.forEach(c => { |
||||
|
const comp = c.component.name || c.component |
||||
|
console.log(comp, component, c) |
||||
|
if (comp === component) { |
||||
|
c.status = 'minimize' |
||||
|
c.zIndex = 0 |
||||
|
} |
||||
|
}) |
||||
|
state.actives = [...state.actives] |
||||
|
console.log('after minimize', state.actives) |
||||
|
this.commit('tisbus/menuStatusUpdate') |
||||
|
}, |
||||
|
// 关闭组件
|
||||
|
closeComponent(state, components) { |
||||
|
// 修改layout中的状态
|
||||
|
state.layouts.forEach(c => { |
||||
|
const component = c.component.name || c.component |
||||
|
// 激活组件命中此组件,更改状态
|
||||
|
const hit = components.includes(component) |
||||
|
if (hit) { |
||||
|
c.lazy = hit |
||||
|
} |
||||
|
}) |
||||
|
// active中删除该组件
|
||||
|
console.log('待删除组件', components) |
||||
|
components.forEach(c => { |
||||
|
const index = state.actives.findIndex(b => b.component === c) |
||||
|
console.log('aaaaaa', index) |
||||
|
if (index >= 0) { |
||||
|
state.actives.splice(index, 1) |
||||
|
} |
||||
|
}) |
||||
|
console.log('layouts变化状态', state.layouts) |
||||
|
console.log('actives变化状态', state.actives) |
||||
|
this.commit('tisbus/menuStatusUpdate') |
||||
|
}, |
||||
|
// initLayouts state.layouts 初始化,外部组件
|
||||
|
initLayouts(state, layouts = []) { |
||||
|
state.layouts.push(...layouts.filter(l => !l.lazy)) |
||||
|
}, |
||||
|
onSetup(state, options = {}) { |
||||
|
state.layouts = options.layout |
||||
|
}, |
||||
|
}, |
||||
|
actions: { |
||||
|
// 加载组件资源
|
||||
|
async loadComponent({state}, component) { |
||||
|
const comp = state.components.find(arg => arg.component === component) || {} |
||||
|
console.log('所有组件...', state.components) |
||||
|
console.log('所有资源...', state.asserts) |
||||
|
console.log('当前加载组件...', component) |
||||
|
console.log('匹配到的组件...', comp) |
||||
|
let assets = null, |
||||
|
dependencies = [], |
||||
|
isLib = false |
||||
|
try { |
||||
|
const info = comp.segprefix |
||||
|
assets = state.asserts[info] |
||||
|
dependencies = comp.dependencies || [] |
||||
|
isLib = comp.lib |
||||
|
} catch (e) { |
||||
|
console.error(e) |
||||
|
} |
||||
|
|
||||
|
// 等待依赖下载完毕
|
||||
|
for (const refer of dependencies) { |
||||
|
let reference = state.asserts[refer] || null |
||||
|
await registerApps(reference, state.curBaseUrl) |
||||
|
} |
||||
|
return new Promise((resolve, reject) => { |
||||
|
// 加载组件资源
|
||||
|
console.log('开始加载组件资源', assets, state.curBaseUrl) |
||||
|
registerApps(assets, state.curBaseUrl) |
||||
|
.then(() => { |
||||
|
if (!isLib) { |
||||
|
// 正常组件的加载流程,isLib为true代表纯js lib库的加载
|
||||
|
let startTime = new Date().getTime() |
||||
|
const looper = setInterval(() => { |
||||
|
if (Vue.component(`${component}`)) { |
||||
|
resolve(comp) |
||||
|
clearInterval(looper) |
||||
|
} else { |
||||
|
let nowTime = new Date().getTime() |
||||
|
if (nowTime - startTime > 20000) { |
||||
|
if (!assets) { |
||||
|
reject(`[loading error:${component}]:组件资源加载失败`) |
||||
|
} else { |
||||
|
resolve(comp) |
||||
|
return; |
||||
|
reject(`[loading error:${component}]:loading component timed out`) |
||||
|
} |
||||
|
clearInterval(looper) |
||||
|
} |
||||
|
} |
||||
|
}, 300) |
||||
|
} else { |
||||
|
resolve(comp) |
||||
|
} |
||||
|
}) |
||||
|
.catch(err => { |
||||
|
if (!assets) { |
||||
|
reject(`[loading error:${component}]:组件资源加载失败`) |
||||
|
} else { |
||||
|
reject(`[loading error:${component}]:${err}`) |
||||
|
} |
||||
|
}) |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
// 自定义函数,支持开发者按需增加接口
|
||||
|
openComponentByMenu({commit, state, getters}, components) { |
||||
|
// 长度变化才会触发computed?
|
||||
|
state.components |
||||
|
.filter(c => { |
||||
|
const component = c.component.name || c.component |
||||
|
// 激活组件命中此组件,更改状态
|
||||
|
const hit = components.includes(component) |
||||
|
if (hit) { |
||||
|
c.lazy = !hit |
||||
|
c.status = c.status === 'minimize' ? 'normal' : c.status |
||||
|
return c |
||||
|
} |
||||
|
}) |
||||
|
.forEach(c => { |
||||
|
if (!state.layouts.some(l => (l.component.name || l.component) === c.component)) { |
||||
|
state.layouts.push(c) |
||||
|
} else { |
||||
|
// 改变状态
|
||||
|
state.layouts.forEach(l => { |
||||
|
if ((l.component.name || l.component) === c.component) { |
||||
|
l.lazy = false |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
if (!state.actives.some(l => l.component === c.component)) { |
||||
|
// 弹窗暂定为同一时间只能打开一个 "PopupWidget" 非dialog
|
||||
|
// 计算z-index
|
||||
|
if (!c.zIndex) { |
||||
|
// c.zIndex = commit('getNextDialogZIndex')
|
||||
|
c.zIndex = getters.getNextDialogZIndex |
||||
|
} |
||||
|
if (c.type === 'dialog') { |
||||
|
state.actives = [c] |
||||
|
} else { |
||||
|
state.actives.push(c) |
||||
|
} |
||||
|
} |
||||
|
}) |
||||
|
// 有 加入 无 删除?
|
||||
|
// 强制触发更新
|
||||
|
state.actives = [...state.actives] |
||||
|
console.log('layouts变化状态', state.layouts) |
||||
|
console.log('actives变化状态', state.actives) |
||||
|
commit('menuStatusUpdate') |
||||
|
}, |
||||
|
// 获取组件
|
||||
|
getWidgetsByType({dispatch, state}, type) { |
||||
|
//以type 或 position 命中widget,背景板默认lazy=false
|
||||
|
return state.layouts |
||||
|
.filter(f => (f.type === type || f.position === type) && !f.lazy) |
||||
|
.map(f => { |
||||
|
// string类型,来自配置文件,需要下载资源才能使用,懒加载组件不加载但是需要加入到数组中、、
|
||||
|
if (typeof f.component === 'string') { |
||||
|
console.log('下载component资源', f.component) |
||||
|
return dispatch('loadComponent', f.component) |
||||
|
} else { |
||||
|
return f |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
|
||||
|
async onMount({commit, state}, props) { |
||||
|
await commit('initData', props) |
||||
|
commit('initLayouts', state.components) |
||||
|
commit('initLayouts', state.widgets) |
||||
|
}, |
||||
|
}, |
||||
|
} |