@ -0,0 +1,3 @@ |
||||
> 1% |
||||
last 2 versions |
||||
not ie <= 8 |
||||
@ -0,0 +1,16 @@ |
||||
# http://editorconfig.org |
||||
root = true |
||||
|
||||
[*] |
||||
indent_style = space |
||||
indent_size = 2 |
||||
end_of_line = lf |
||||
charset = utf-8 |
||||
trim_trailing_whitespace = true |
||||
insert_final_newline = true |
||||
|
||||
[*.md] |
||||
trim_trailing_whitespace = false |
||||
|
||||
[Makefile] |
||||
indent_style = tab |
||||
@ -0,0 +1,17 @@ |
||||
module.exports = { |
||||
root: true, |
||||
env: { |
||||
node: true |
||||
}, |
||||
'extends': [ |
||||
'plugin:vue/essential', |
||||
'eslint:recommended' |
||||
], |
||||
rules: { |
||||
'no-console': process.env.NODE_ENV === 'production' ? 'error' : 'off', |
||||
'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off' |
||||
}, |
||||
parserOptions: { |
||||
parser: 'babel-eslint' |
||||
} |
||||
} |
||||
@ -1,37 +1,24 @@ |
||||
# ---> Java |
||||
# Compiled class file |
||||
*.class |
||||
|
||||
# Log file |
||||
*.log |
||||
|
||||
# BlueJ files |
||||
*.ctxt |
||||
|
||||
# Mobile Tools for Java (J2ME) |
||||
.mtj.tmp/ |
||||
|
||||
# Package Files # |
||||
*.jar |
||||
*.war |
||||
*.nar |
||||
*.ear |
||||
*.zip |
||||
*.tar.gz |
||||
*.rar |
||||
|
||||
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml |
||||
hs_err_pid* |
||||
replay_pid* |
||||
|
||||
# ---> Vue |
||||
# gitignore template for Vue.js projects |
||||
# |
||||
# Recommended template: Node.gitignore |
||||
|
||||
# TODO: where does this rule come from? |
||||
docs/_book |
||||
|
||||
# TODO: where does this rule come from? |
||||
test/ |
||||
|
||||
.DS_Store |
||||
node_modules |
||||
/dist |
||||
|
||||
/tests/e2e/videos/ |
||||
/tests/e2e/screenshots/ |
||||
|
||||
# local env files |
||||
.env.local |
||||
.env.*.local |
||||
|
||||
# Log files |
||||
npm-debug.log* |
||||
yarn-debug.log* |
||||
yarn-error.log* |
||||
|
||||
# Editor directories and files |
||||
.idea |
||||
.vscode |
||||
*.suo |
||||
*.ntvs* |
||||
*.njsproj |
||||
*.sln |
||||
*.sw* |
||||
|
||||
@ -0,0 +1,5 @@ |
||||
module.exports = { |
||||
plugins: { |
||||
autoprefixer: {} |
||||
} |
||||
} |
||||
@ -0,0 +1,35 @@ |
||||
BladeX商业授权许可协议 |
||||
|
||||
一、 知识产权: |
||||
BladeX系列产品知识产权归上海布雷德科技有限公司独立所有 |
||||
|
||||
二、 许可: |
||||
1. 在您完全接受并遵守本协议的基础上,本协议授予您使用BladeX的某些权利和非独占性许可。 |
||||
2. 本协议中,将本产品使用用途分为"专业版用途"和"企业版用途"。 |
||||
3. "专业版用途"定义:指个人在非团体机构中出于任何合法目的使用本产品(任何目的包括商业目的或非盈利目的)。 |
||||
4. "企业版用途"定义:指拥有合法执照的团体机构(例如公司企业、政府、学校、军队、医院、社会团体等各类组织)(不包含集团,若集团使用则需为各个子公司分别购买企业授权)出于任何合法目的使用本产品(任何目的包括商业目的或非盈利目的)。 |
||||
5. 若您不能以拥有合法执照的团体机构名义购买企业版,则视为个人名义购买,仅可行使专业版用途。在遵守此协议的前提下,后续有一次机会将企业版授权免费绑定至法人为购买人的新公司,并从专业版用途转为企业版用途。 |
||||
|
||||
三、 约束和限制: |
||||
1. 本产品只能由您为本协议许可的目的而使用,您不得透露给任何第三方; |
||||
2. 从本产品取得的任何信息、软件、产品或服务,您不得对其进行修改、改编或基于以上内容创建同种类别的衍生产品并售卖。 |
||||
3. 您不得对本产品以及与之关联的商业授权进行发布、出租、销售、分销、抵押、转让、许可或发放子许可证。 |
||||
4. 本产品商业授权版可能包含一些独立功能或特性,这些功能只有在您购买商业授权后才可以使用。在未取得商业授权的情况下,您不得使用、尝试使用或复制这些授权版独立功能。 |
||||
5. 若您的客户要求以源码方式交付软件,需缴纳企业版授权费用,否则本产品部分不得提供源码。 |
||||
|
||||
四、 不得用于非法或禁止的用途: |
||||
您在使用本产品或服务时,不得将本产品产品或服务用于任何非法用途或本协议条款、条件和声明禁止的用途。 |
||||
|
||||
五、 免责说明: |
||||
1. 本产品按"现状"授予许可,您须自行承担使用本产品的风险。BladeX团队不对此提供任何明示、暗示或任何其它形式的担保和表示。在任何情况下,对于因使用或无法使用本软件而导致的任何损失(包括但不仅限于商业利润损失、业务中断或业务信息丢失),BladeX团队无需向您或任何第三方负责,即使BladeX团队已被告知可能会造成此类损失。在任何情况下, BladeX团队均不就任何直接的、间接的、附带的、后果性的、特别的、惩戒性的和处罚性的损害赔偿承担任何责任,无论该主张是基于保证、合同、侵权(包括疏忽)或是基于其他原因作出。 |
||||
2. 本产品可能内置有第三方服务,您应自行评估使用这些第三方服务的风险,由使用此类第三方服务而产生的纠纷,全部责任由您自行承担。 |
||||
3. BladeX团队不对使用本产品构建的网站中任何信息内容以及导致的任何版权纠纷、法律争议和后果承担任何责任,全部责任由您自行承担。 |
||||
4. BladeX团队可能会经常提供产品更新或升级,但BladeX团队没有为根据本协议许可的产品提供维护或更新的责任。 |
||||
5. BladeX团队可能会按照官方制定的答疑规则为您进行答疑,但BladeX团队没有为根据本协议许可的产品提供技术支持的义务或责任。 |
||||
|
||||
六、 权利和所有权的保留: |
||||
BladeX团队保留所有未在本协议中明确授予您的所有权利。BladeX团队保留随时更新本协议的权利,并只需公示于对应产品项目的LICENSE文件,无需征得您的事先同意且无需另行通知,更新后的内容应于公示即时生效。您可以随时访问产品地址并查阅最新版许可条款,在更新生效后您继续使用本产品则被视作您已接受了新的条款。 |
||||
|
||||
七、 协议终止 |
||||
1. 您一旦开始复制、下载、安装或者使用本产品,即被视为完全理解并接受本协议的各项条款,在享有上述条款授予的许可权力同时,也受到相关的约束和限制,本协议许可范围以外的行为,将直接违反本协议并构成侵权。 |
||||
2. 一旦您违反本协议的条款,BladeX团队随时可能终止本协议、收回许可和授权,并要求您承担相应法律和经济责任。 |
||||
@ -1,3 +1,37 @@ |
||||
# lab-ops-ui-web |
||||
# 项目启动 |
||||
|
||||
实验室运维前端-web |
||||
## node版本 |
||||
> 14.x.x |
||||
|
||||
## install |
||||
> `npm install` |
||||
|
||||
## 修改服务器链接配置 |
||||
> `vue.config.js`文件的`devServer`配置中 |
||||
|
||||
## run |
||||
> `npm run serve` |
||||
|
||||
# 加密 |
||||
|
||||
## oauth2加密配置 |
||||
> website.js 配置如下 |
||||
> |
||||
``` javascript |
||||
// 使用后端工程 @org.springblade.test.Sm2KeyGenerator 获取,需和后端配置保持一致 |
||||
oauth2: { |
||||
publicKey: 'xxxxx', |
||||
} |
||||
``` |
||||
|
||||
## 报文加密配置 |
||||
> crypto.js 配置如下 |
||||
> |
||||
``` javascript |
||||
// 使用@org.springblade.test.CryptoKeyGenerator获取,需和后端配置保持一致 |
||||
export default class crypto { |
||||
static cryptoKey = 'xxxxx'; |
||||
static aesKey = 'xxxxx'; |
||||
static desKey = 'xxxxx'; |
||||
} |
||||
``` |
||||
|
||||
@ -0,0 +1,5 @@ |
||||
module.exports = { |
||||
presets: [ |
||||
'@vue/app' |
||||
] |
||||
} |
||||
@ -0,0 +1,9 @@ |
||||
#!/bin/bash |
||||
|
||||
echo "====================打包文件====================" |
||||
yarn build |
||||
echo "====================传输文件====================" |
||||
|
||||
scp -P 22 -r ./dist/** root@192.168.0.157:/docker/nginx/web/html |
||||
|
||||
echo "====================部署完毕====================" |
||||
@ -0,0 +1,66 @@ |
||||
{ |
||||
"name": "saber-admin", |
||||
"version": "4.2.0", |
||||
"private": true, |
||||
"scripts": { |
||||
"serve": "vue-cli-service serve", |
||||
"build": "vue-cli-service build", |
||||
"lint": "vue-cli-service lint", |
||||
"analyz": "npm_config_report=true npm run build", |
||||
"test:unit": "vue-cli-service test:unit", |
||||
"test:e2e": "vue-cli-service test:e2e" |
||||
}, |
||||
"dependencies": { |
||||
"@amap/amap-jsapi-loader": "^1.0.1", |
||||
"avue-plugin-ueditor": "^0.1.4", |
||||
"axios": "^0.21.1", |
||||
"babel-polyfill": "^6.26.0", |
||||
"classlist-polyfill": "^1.2.0", |
||||
"compressorjs": "^1.2.1", |
||||
"crypto-js": "^4.0.0", |
||||
"echarts": "^5.5.1", |
||||
"element-ui": "^2.15.6", |
||||
"file-saver": "^2.0.5", |
||||
"js-base64": "^2.5.1", |
||||
"js-cookie": "^2.2.0", |
||||
"js-md5": "^0.7.3", |
||||
"jszip": "^3.10.1", |
||||
"mockjs": "^1.0.1-beta3", |
||||
"moment": "^2.30.1", |
||||
"node-gyp": "^5.0.6", |
||||
"nprogress": "^0.2.0", |
||||
"portfinder": "^1.0.23", |
||||
"print-js": "^1.6.0", |
||||
"script-loader": "^0.7.2", |
||||
"sm-crypto": "^0.3.13", |
||||
"vue": "^2.6.10", |
||||
"vue-axios": "^2.1.2", |
||||
"vue-baidu-map": "^0.21.22", |
||||
"vue-easy-print": "0.0.8", |
||||
"vue-i18n": "^8.7.0", |
||||
"vue-print-nb": "^1.7.5", |
||||
"vue-router": "^3.0.1", |
||||
"vue-seamless-scroll": "^1.1.23", |
||||
"vuex": "^3.1.1" |
||||
}, |
||||
"devDependencies": { |
||||
"@vue/cli-plugin-babel": "^3.1.1", |
||||
"@vue/cli-plugin-eslint": "^3.1.5", |
||||
"@vue/cli-service": "^3.1.4", |
||||
"chai": "^4.1.2", |
||||
"sass": "^1.77.6", |
||||
"sass-loader": "^10.0.5", |
||||
"vue-template-compiler": "^2.5.17", |
||||
"webpack-bundle-analyzer": "^3.0.3" |
||||
}, |
||||
"lint-staged": { |
||||
"*.js": [ |
||||
"vue-cli-service lint", |
||||
"git add" |
||||
], |
||||
"*.vue": [ |
||||
"vue-cli-service lint", |
||||
"git add" |
||||
] |
||||
} |
||||
} |
||||
@ -0,0 +1,331 @@ |
||||
{ |
||||
"id": "567566", |
||||
"name": "avue-cli", |
||||
"font_family": "iconfont", |
||||
"css_prefix_text": "icon-", |
||||
"description": "", |
||||
"glyphs": [ |
||||
{ |
||||
"icon_id": "5779983", |
||||
"name": "中英文", |
||||
"font_class": "zhongyingwen", |
||||
"unicode": "e61d", |
||||
"unicode_decimal": 58909 |
||||
}, |
||||
{ |
||||
"icon_id": "6270863", |
||||
"name": "菜单", |
||||
"font_class": "caidan", |
||||
"unicode": "e891", |
||||
"unicode_decimal": 59537 |
||||
}, |
||||
{ |
||||
"icon_id": "696478", |
||||
"name": "日志", |
||||
"font_class": "rizhi1", |
||||
"unicode": "e6af", |
||||
"unicode_decimal": 59055 |
||||
}, |
||||
{ |
||||
"icon_id": "3416675", |
||||
"name": "锁屏", |
||||
"font_class": "suoping", |
||||
"unicode": "e6e9", |
||||
"unicode_decimal": 59113 |
||||
}, |
||||
{ |
||||
"icon_id": "6631809", |
||||
"name": "主题", |
||||
"font_class": "zhuti", |
||||
"unicode": "e620", |
||||
"unicode_decimal": 58912 |
||||
}, |
||||
{ |
||||
"icon_id": "1261208", |
||||
"name": "bug", |
||||
"font_class": "bug", |
||||
"unicode": "e649", |
||||
"unicode_decimal": 58953 |
||||
}, |
||||
{ |
||||
"icon_id": "288984", |
||||
"name": "微信", |
||||
"font_class": "weixin1", |
||||
"unicode": "e679", |
||||
"unicode_decimal": 59001 |
||||
}, |
||||
{ |
||||
"icon_id": "1037628", |
||||
"name": "qq", |
||||
"font_class": "qq1", |
||||
"unicode": "e609", |
||||
"unicode_decimal": 58889 |
||||
}, |
||||
{ |
||||
"icon_id": "1046777", |
||||
"name": "验证码", |
||||
"font_class": "yanzhengma", |
||||
"unicode": "e616", |
||||
"unicode_decimal": 58902 |
||||
}, |
||||
{ |
||||
"icon_id": "2559431", |
||||
"name": "用户", |
||||
"font_class": "yonghu", |
||||
"unicode": "e6b3", |
||||
"unicode_decimal": 59059 |
||||
}, |
||||
{ |
||||
"icon_id": "2678617", |
||||
"name": "密码", |
||||
"font_class": "mima", |
||||
"unicode": "e652", |
||||
"unicode_decimal": 58962 |
||||
}, |
||||
{ |
||||
"icon_id": "2678634", |
||||
"name": "手机", |
||||
"font_class": "shouji", |
||||
"unicode": "e65d", |
||||
"unicode_decimal": 58973 |
||||
}, |
||||
{ |
||||
"icon_id": "554313", |
||||
"name": "wifi路由", |
||||
"font_class": "iconset0265", |
||||
"unicode": "e6a4", |
||||
"unicode_decimal": 59044 |
||||
}, |
||||
{ |
||||
"icon_id": "1149090", |
||||
"name": "动态", |
||||
"font_class": "dongtai", |
||||
"unicode": "e6a7", |
||||
"unicode_decimal": 59047 |
||||
}, |
||||
{ |
||||
"icon_id": "3851337", |
||||
"name": "参数", |
||||
"font_class": "canshu", |
||||
"unicode": "e655", |
||||
"unicode_decimal": 58965 |
||||
}, |
||||
{ |
||||
"icon_id": "167168", |
||||
"name": "数据展示2", |
||||
"font_class": "shujuzhanshi2", |
||||
"unicode": "e651", |
||||
"unicode_decimal": 58961 |
||||
}, |
||||
{ |
||||
"icon_id": "1025135", |
||||
"name": "退出全屏", |
||||
"font_class": "tuichuquanping", |
||||
"unicode": "e755", |
||||
"unicode_decimal": 59221 |
||||
}, |
||||
{ |
||||
"icon_id": "1166053", |
||||
"name": "日志", |
||||
"font_class": "rizhi", |
||||
"unicode": "e61c", |
||||
"unicode_decimal": 58908 |
||||
}, |
||||
{ |
||||
"icon_id": "500861", |
||||
"name": "错误提示图标", |
||||
"font_class": "cuowutishitubiao", |
||||
"unicode": "e6a0", |
||||
"unicode_decimal": 59040 |
||||
}, |
||||
{ |
||||
"icon_id": "554205", |
||||
"name": "闪电", |
||||
"font_class": "iconset0216", |
||||
"unicode": "e673", |
||||
"unicode_decimal": 58995 |
||||
}, |
||||
{ |
||||
"icon_id": "1572731", |
||||
"name": "错误", |
||||
"font_class": "debug", |
||||
"unicode": "e611", |
||||
"unicode_decimal": 58897 |
||||
}, |
||||
{ |
||||
"icon_id": "1305474", |
||||
"name": "权限", |
||||
"font_class": "quanxian", |
||||
"unicode": "e63f", |
||||
"unicode_decimal": 58943 |
||||
}, |
||||
{ |
||||
"icon_id": "1684809", |
||||
"name": "刷新", |
||||
"font_class": "shuaxin", |
||||
"unicode": "e6ba", |
||||
"unicode_decimal": 59066 |
||||
}, |
||||
{ |
||||
"icon_id": "579385", |
||||
"name": "全屏", |
||||
"font_class": "quanping", |
||||
"unicode": "e615", |
||||
"unicode_decimal": 58901 |
||||
}, |
||||
{ |
||||
"icon_id": "2154823", |
||||
"name": "播放器-(锁屏)_44", |
||||
"font_class": "bofangqi-suoping", |
||||
"unicode": "e699", |
||||
"unicode_decimal": 59033 |
||||
}, |
||||
{ |
||||
"icon_id": "1160830", |
||||
"name": "navicon", |
||||
"font_class": "navicon", |
||||
"unicode": "e84e", |
||||
"unicode_decimal": 59470 |
||||
}, |
||||
{ |
||||
"icon_id": "1250665", |
||||
"name": "圆", |
||||
"font_class": "yuan", |
||||
"unicode": "e657", |
||||
"unicode_decimal": 58967 |
||||
}, |
||||
{ |
||||
"icon_id": "680969", |
||||
"name": "表单", |
||||
"font_class": "biaodan", |
||||
"unicode": "e715", |
||||
"unicode_decimal": 59157 |
||||
}, |
||||
{ |
||||
"icon_id": "1164693", |
||||
"name": "系统管理", |
||||
"font_class": "liuliangyunpingtaitubiao08", |
||||
"unicode": "e68f", |
||||
"unicode_decimal": 59023 |
||||
}, |
||||
{ |
||||
"icon_id": "1723000", |
||||
"name": "菜单管理", |
||||
"font_class": "caidanguanli", |
||||
"unicode": "e7c0", |
||||
"unicode_decimal": 59328 |
||||
}, |
||||
{ |
||||
"icon_id": "2486611", |
||||
"name": "用户管理", |
||||
"font_class": "yonghuguanli", |
||||
"unicode": "e610", |
||||
"unicode_decimal": 58896 |
||||
}, |
||||
{ |
||||
"icon_id": "2959039", |
||||
"name": "角色管理", |
||||
"font_class": "jiaoseguanli", |
||||
"unicode": "e624", |
||||
"unicode_decimal": 58916 |
||||
}, |
||||
{ |
||||
"icon_id": "1164841", |
||||
"name": "错误", |
||||
"font_class": "cuowu", |
||||
"unicode": "e626", |
||||
"unicode_decimal": 58918 |
||||
}, |
||||
{ |
||||
"icon_id": "591722", |
||||
"name": "wxb工具", |
||||
"font_class": "wxbgongju", |
||||
"unicode": "e61b", |
||||
"unicode_decimal": 58907 |
||||
}, |
||||
{ |
||||
"icon_id": "804054", |
||||
"name": "退出", |
||||
"font_class": "tuichu", |
||||
"unicode": "e642", |
||||
"unicode_decimal": 58946 |
||||
}, |
||||
{ |
||||
"icon_id": "1191509", |
||||
"name": "导航栏_模式02", |
||||
"font_class": "daohanglanmoshi02", |
||||
"unicode": "e623", |
||||
"unicode_decimal": 58915 |
||||
}, |
||||
{ |
||||
"icon_id": "1005775", |
||||
"name": "阿里巴巴", |
||||
"font_class": "changyonglogo27", |
||||
"unicode": "e714", |
||||
"unicode_decimal": 59156 |
||||
}, |
||||
{ |
||||
"icon_id": "128369", |
||||
"name": "欢迎页", |
||||
"font_class": "huanyingye", |
||||
"unicode": "e60c", |
||||
"unicode_decimal": 58892 |
||||
}, |
||||
{ |
||||
"icon_id": "586924", |
||||
"name": "iframe", |
||||
"font_class": "iframe", |
||||
"unicode": "e74c", |
||||
"unicode_decimal": 59212 |
||||
}, |
||||
{ |
||||
"icon_id": "700335", |
||||
"name": "360", |
||||
"font_class": "msnui-360", |
||||
"unicode": "e78a", |
||||
"unicode_decimal": 59274 |
||||
}, |
||||
{ |
||||
"icon_id": "833695", |
||||
"name": "搜狐", |
||||
"font_class": "souhu", |
||||
"unicode": "e62d", |
||||
"unicode_decimal": 58925 |
||||
}, |
||||
{ |
||||
"icon_id": "1114667", |
||||
"name": "图标", |
||||
"font_class": "tubiao", |
||||
"unicode": "e630", |
||||
"unicode_decimal": 58928 |
||||
}, |
||||
{ |
||||
"icon_id": "1346645", |
||||
"name": "百度1", |
||||
"font_class": "baidu1", |
||||
"unicode": "e621", |
||||
"unicode_decimal": 58913 |
||||
}, |
||||
{ |
||||
"icon_id": "1789257", |
||||
"name": "表格", |
||||
"font_class": "biaoge", |
||||
"unicode": "e6b5", |
||||
"unicode_decimal": 59061 |
||||
}, |
||||
{ |
||||
"icon_id": "695468", |
||||
"name": "QQ", |
||||
"font_class": "qq", |
||||
"unicode": "e631", |
||||
"unicode_decimal": 58929 |
||||
}, |
||||
{ |
||||
"icon_id": "851731", |
||||
"name": "微信", |
||||
"font_class": "weixin", |
||||
"unicode": "e632", |
||||
"unicode_decimal": 58930 |
||||
} |
||||
] |
||||
} |
||||
|
After Width: | Height: | Size: 88 KiB |
@ -0,0 +1,23 @@ |
||||
|
||||
[class^="icon-"]{ |
||||
font-family: "iconfont" !important; |
||||
/* 以下内容参照第三方图标库本身的规则 */ |
||||
font-size: 18px !important; |
||||
font-style: normal; |
||||
-webkit-font-smoothing: antialiased; |
||||
-moz-osx-font-smoothing: grayscale; |
||||
} |
||||
.el-menu-item [class^=icon-] { |
||||
margin-right: 5px; |
||||
width: 24px; |
||||
text-align: center; |
||||
font-size: 18px; |
||||
vertical-align: middle; |
||||
} |
||||
.el-submenu [class^=icon-] { |
||||
vertical-align: middle; |
||||
margin-right: 5px; |
||||
width: 24px; |
||||
text-align: center; |
||||
font-size: 18px; |
||||
} |
||||
@ -0,0 +1,583 @@ |
||||
{ |
||||
"id": "1066523", |
||||
"name": "saber", |
||||
"font_family": "iconfont", |
||||
"css_prefix_text": "icon", |
||||
"description": "saber图标库", |
||||
"glyphs": [ |
||||
{ |
||||
"icon_id": "7396772", |
||||
"name": "gitee", |
||||
"font_class": "gitee2", |
||||
"unicode": "e6d6", |
||||
"unicode_decimal": 59094 |
||||
}, |
||||
{ |
||||
"icon_id": "431779", |
||||
"name": "github", |
||||
"font_class": "github", |
||||
"unicode": "e709", |
||||
"unicode_decimal": 59145 |
||||
}, |
||||
{ |
||||
"icon_id": "7766806", |
||||
"name": "icon_wechat", |
||||
"font_class": "icon_wechat", |
||||
"unicode": "ebde", |
||||
"unicode_decimal": 60382 |
||||
}, |
||||
{ |
||||
"icon_id": "7766735", |
||||
"name": "icon_exchange", |
||||
"font_class": "icon_exchange", |
||||
"unicode": "eba7", |
||||
"unicode_decimal": 60327 |
||||
}, |
||||
{ |
||||
"icon_id": "7766736", |
||||
"name": "icon_ding", |
||||
"font_class": "icon_ding", |
||||
"unicode": "eba8", |
||||
"unicode_decimal": 60328 |
||||
}, |
||||
{ |
||||
"icon_id": "7766737", |
||||
"name": "icon_down", |
||||
"font_class": "icon_down", |
||||
"unicode": "eba9", |
||||
"unicode_decimal": 60329 |
||||
}, |
||||
{ |
||||
"icon_id": "7766740", |
||||
"name": "icon_glass", |
||||
"font_class": "icon_glass", |
||||
"unicode": "ebaa", |
||||
"unicode_decimal": 60330 |
||||
}, |
||||
{ |
||||
"icon_id": "7766742", |
||||
"name": "icon_GPS", |
||||
"font_class": "icon_GPS", |
||||
"unicode": "ebab", |
||||
"unicode_decimal": 60331 |
||||
}, |
||||
{ |
||||
"icon_id": "7766743", |
||||
"name": "icon_hardware_fill", |
||||
"font_class": "icon_hardware_fill", |
||||
"unicode": "ebac", |
||||
"unicode_decimal": 60332 |
||||
}, |
||||
{ |
||||
"icon_id": "7766745", |
||||
"name": "icon_im_more", |
||||
"font_class": "icon_im_more", |
||||
"unicode": "ebad", |
||||
"unicode_decimal": 60333 |
||||
}, |
||||
{ |
||||
"icon_id": "7766747", |
||||
"name": "icon_group", |
||||
"font_class": "icon_group", |
||||
"unicode": "ebae", |
||||
"unicode_decimal": 60334 |
||||
}, |
||||
{ |
||||
"icon_id": "7766748", |
||||
"name": "icon_horn", |
||||
"font_class": "icon_horn", |
||||
"unicode": "ebaf", |
||||
"unicode_decimal": 60335 |
||||
}, |
||||
{ |
||||
"icon_id": "7766749", |
||||
"name": "icon_im_face", |
||||
"font_class": "icon_im_face", |
||||
"unicode": "ebb0", |
||||
"unicode_decimal": 60336 |
||||
}, |
||||
{ |
||||
"icon_id": "7766752", |
||||
"name": "icon_launch_page", |
||||
"font_class": "icon_launch_page", |
||||
"unicode": "ebb1", |
||||
"unicode_decimal": 60337 |
||||
}, |
||||
{ |
||||
"icon_id": "7766753", |
||||
"name": "icon_likegood", |
||||
"font_class": "icon_likegood", |
||||
"unicode": "ebb2", |
||||
"unicode_decimal": 60338 |
||||
}, |
||||
{ |
||||
"icon_id": "7766754", |
||||
"name": "icon_index_line", |
||||
"font_class": "icon_index_line", |
||||
"unicode": "ebb3", |
||||
"unicode_decimal": 60339 |
||||
}, |
||||
{ |
||||
"icon_id": "7766755", |
||||
"name": "icon_live", |
||||
"font_class": "icon_live", |
||||
"unicode": "ebb4", |
||||
"unicode_decimal": 60340 |
||||
}, |
||||
{ |
||||
"icon_id": "7766756", |
||||
"name": "icon_link", |
||||
"font_class": "icon_link", |
||||
"unicode": "ebb5", |
||||
"unicode_decimal": 60341 |
||||
}, |
||||
{ |
||||
"icon_id": "7766757", |
||||
"name": "icon_im_voice", |
||||
"font_class": "icon_im_voice", |
||||
"unicode": "ebb6", |
||||
"unicode_decimal": 60342 |
||||
}, |
||||
{ |
||||
"icon_id": "7766758", |
||||
"name": "icon_mobilephone", |
||||
"font_class": "icon_mobilephone", |
||||
"unicode": "ebb7", |
||||
"unicode_decimal": 60343 |
||||
}, |
||||
{ |
||||
"icon_id": "7766759", |
||||
"name": "icon_dmail", |
||||
"font_class": "icon_dmail", |
||||
"unicode": "ebb8", |
||||
"unicode_decimal": 60344 |
||||
}, |
||||
{ |
||||
"icon_id": "7766760", |
||||
"name": "icon_message", |
||||
"font_class": "icon_message", |
||||
"unicode": "ebb9", |
||||
"unicode_decimal": 60345 |
||||
}, |
||||
{ |
||||
"icon_id": "7766763", |
||||
"name": "icon_more", |
||||
"font_class": "icon_more", |
||||
"unicode": "ebba", |
||||
"unicode_decimal": 60346 |
||||
}, |
||||
{ |
||||
"icon_id": "7766764", |
||||
"name": "icon_left", |
||||
"font_class": "icon_left", |
||||
"unicode": "ebbb", |
||||
"unicode_decimal": 60347 |
||||
}, |
||||
{ |
||||
"icon_id": "7766765", |
||||
"name": "icon_next_arrow", |
||||
"font_class": "icon_next_arrow", |
||||
"unicode": "ebbc", |
||||
"unicode_decimal": 60348 |
||||
}, |
||||
{ |
||||
"icon_id": "7766766", |
||||
"name": "icon_notice", |
||||
"font_class": "icon_notice", |
||||
"unicode": "ebbd", |
||||
"unicode_decimal": 60349 |
||||
}, |
||||
{ |
||||
"icon_id": "7766769", |
||||
"name": "icon_namecard", |
||||
"font_class": "icon_namecard", |
||||
"unicode": "ebbe", |
||||
"unicode_decimal": 60350 |
||||
}, |
||||
{ |
||||
"icon_id": "7766770", |
||||
"name": "icon_phone", |
||||
"font_class": "icon_phone", |
||||
"unicode": "ebbf", |
||||
"unicode_decimal": 60351 |
||||
}, |
||||
{ |
||||
"icon_id": "7766771", |
||||
"name": "icon_qq", |
||||
"font_class": "icon_qq", |
||||
"unicode": "ebc0", |
||||
"unicode_decimal": 60352 |
||||
}, |
||||
{ |
||||
"icon_id": "7766772", |
||||
"name": "icon_photo", |
||||
"font_class": "icon_photo", |
||||
"unicode": "ebc1", |
||||
"unicode_decimal": 60353 |
||||
}, |
||||
{ |
||||
"icon_id": "7766774", |
||||
"name": "icon_redpacket", |
||||
"font_class": "icon_redpacket", |
||||
"unicode": "ebc2", |
||||
"unicode_decimal": 60354 |
||||
}, |
||||
{ |
||||
"icon_id": "7766775", |
||||
"name": "icon_patriarch", |
||||
"font_class": "icon_patriarch", |
||||
"unicode": "ebc3", |
||||
"unicode_decimal": 60355 |
||||
}, |
||||
{ |
||||
"icon_id": "7766776", |
||||
"name": "icon_roundclose", |
||||
"font_class": "icon_roundclose", |
||||
"unicode": "ebc4", |
||||
"unicode_decimal": 60356 |
||||
}, |
||||
{ |
||||
"icon_id": "7766777", |
||||
"name": "icon_im_keyboard", |
||||
"font_class": "icon_im_keyboard", |
||||
"unicode": "ebc5", |
||||
"unicode_decimal": 60357 |
||||
}, |
||||
{ |
||||
"icon_id": "7766778", |
||||
"name": "icon_roundreduce", |
||||
"font_class": "icon_roundreduce", |
||||
"unicode": "ebc6", |
||||
"unicode_decimal": 60358 |
||||
}, |
||||
{ |
||||
"icon_id": "7766780", |
||||
"name": "icon_QRcode", |
||||
"font_class": "icon_QRcode", |
||||
"unicode": "ebc7", |
||||
"unicode_decimal": 60359 |
||||
}, |
||||
{ |
||||
"icon_id": "7766781", |
||||
"name": "icon_savememo", |
||||
"font_class": "icon_savememo", |
||||
"unicode": "ebc8", |
||||
"unicode_decimal": 60360 |
||||
}, |
||||
{ |
||||
"icon_id": "7766782", |
||||
"name": "icon_roundadd", |
||||
"font_class": "icon_roundadd", |
||||
"unicode": "ebc9", |
||||
"unicode_decimal": 60361 |
||||
}, |
||||
{ |
||||
"icon_id": "7766783", |
||||
"name": "icon_refresh", |
||||
"font_class": "icon_refresh", |
||||
"unicode": "ebca", |
||||
"unicode_decimal": 60362 |
||||
}, |
||||
{ |
||||
"icon_id": "7766784", |
||||
"name": "icon_search", |
||||
"font_class": "icon_search", |
||||
"unicode": "ebcb", |
||||
"unicode_decimal": 60363 |
||||
}, |
||||
{ |
||||
"icon_id": "7766785", |
||||
"name": "icon_scan", |
||||
"font_class": "icon_scan", |
||||
"unicode": "ebcc", |
||||
"unicode_decimal": 60364 |
||||
}, |
||||
{ |
||||
"icon_id": "7766786", |
||||
"name": "icon_send", |
||||
"font_class": "icon_send", |
||||
"unicode": "ebcd", |
||||
"unicode_decimal": 60365 |
||||
}, |
||||
{ |
||||
"icon_id": "7766787", |
||||
"name": "icon_principal", |
||||
"font_class": "icon_principal", |
||||
"unicode": "ebce", |
||||
"unicode_decimal": 60366 |
||||
}, |
||||
{ |
||||
"icon_id": "7766789", |
||||
"name": "icon_scan_namecard", |
||||
"font_class": "icon_scan_namecard", |
||||
"unicode": "ebcf", |
||||
"unicode_decimal": 60367 |
||||
}, |
||||
{ |
||||
"icon_id": "7766790", |
||||
"name": "icon_secret", |
||||
"font_class": "icon_secret", |
||||
"unicode": "ebd0", |
||||
"unicode_decimal": 60368 |
||||
}, |
||||
{ |
||||
"icon_id": "7766791", |
||||
"name": "icon_share", |
||||
"font_class": "icon_share", |
||||
"unicode": "ebd1", |
||||
"unicode_decimal": 60369 |
||||
}, |
||||
{ |
||||
"icon_id": "7766793", |
||||
"name": "icon_sms", |
||||
"font_class": "icon_sms", |
||||
"unicode": "ebd2", |
||||
"unicode_decimal": 60370 |
||||
}, |
||||
{ |
||||
"icon_id": "7766795", |
||||
"name": "icon_setting", |
||||
"font_class": "icon_setting", |
||||
"unicode": "ebd3", |
||||
"unicode_decimal": 60371 |
||||
}, |
||||
{ |
||||
"icon_id": "7766798", |
||||
"name": "icon_star", |
||||
"font_class": "icon_star", |
||||
"unicode": "ebd4", |
||||
"unicode_decimal": 60372 |
||||
}, |
||||
{ |
||||
"icon_id": "7766799", |
||||
"name": "icon_subordinate", |
||||
"font_class": "icon_subordinate", |
||||
"unicode": "ebd5", |
||||
"unicode_decimal": 60373 |
||||
}, |
||||
{ |
||||
"icon_id": "7766800", |
||||
"name": "icon_task", |
||||
"font_class": "icon_task", |
||||
"unicode": "ebd6", |
||||
"unicode_decimal": 60374 |
||||
}, |
||||
{ |
||||
"icon_id": "7766803", |
||||
"name": "icon_study", |
||||
"font_class": "icon_study", |
||||
"unicode": "ebd7", |
||||
"unicode_decimal": 60375 |
||||
}, |
||||
{ |
||||
"icon_id": "7766808", |
||||
"name": "icon_work", |
||||
"font_class": "icon_work", |
||||
"unicode": "ebd8", |
||||
"unicode_decimal": 60376 |
||||
}, |
||||
{ |
||||
"icon_id": "7766811", |
||||
"name": "icon_safety", |
||||
"font_class": "icon_safety", |
||||
"unicode": "ebd9", |
||||
"unicode_decimal": 60377 |
||||
}, |
||||
{ |
||||
"icon_id": "7766813", |
||||
"name": "icon_voipphone", |
||||
"font_class": "icon_voipphone", |
||||
"unicode": "ebda", |
||||
"unicode_decimal": 60378 |
||||
}, |
||||
{ |
||||
"icon_id": "7766815", |
||||
"name": "icon_shakehands", |
||||
"font_class": "icon_shakehands", |
||||
"unicode": "ebdb", |
||||
"unicode_decimal": 60379 |
||||
}, |
||||
{ |
||||
"icon_id": "7766817", |
||||
"name": "icon_task_done", |
||||
"font_class": "icon_task_done", |
||||
"unicode": "ebdc", |
||||
"unicode_decimal": 60380 |
||||
}, |
||||
{ |
||||
"icon_id": "7766820", |
||||
"name": "icon_workfile_line", |
||||
"font_class": "icon_workfile_line", |
||||
"unicode": "ebdd", |
||||
"unicode_decimal": 60381 |
||||
}, |
||||
{ |
||||
"icon_id": "7766709", |
||||
"name": "icon_add", |
||||
"font_class": "icon_add", |
||||
"unicode": "eb8f", |
||||
"unicode_decimal": 60303 |
||||
}, |
||||
{ |
||||
"icon_id": "7766710", |
||||
"name": "icon_addmessage", |
||||
"font_class": "icon_addmessage", |
||||
"unicode": "eb90", |
||||
"unicode_decimal": 60304 |
||||
}, |
||||
{ |
||||
"icon_id": "7766711", |
||||
"name": "icon_addresslist", |
||||
"font_class": "icon_addresslist", |
||||
"unicode": "eb91", |
||||
"unicode_decimal": 60305 |
||||
}, |
||||
{ |
||||
"icon_id": "7766712", |
||||
"name": "icon_affiliations_li", |
||||
"font_class": "icon_affiliations_li", |
||||
"unicode": "eb92", |
||||
"unicode_decimal": 60306 |
||||
}, |
||||
{ |
||||
"icon_id": "7766713", |
||||
"name": "icon_addperson", |
||||
"font_class": "icon_addperson", |
||||
"unicode": "eb93", |
||||
"unicode_decimal": 60307 |
||||
}, |
||||
{ |
||||
"icon_id": "7766714", |
||||
"name": "icon_boss", |
||||
"font_class": "icon_boss", |
||||
"unicode": "eb94", |
||||
"unicode_decimal": 60308 |
||||
}, |
||||
{ |
||||
"icon_id": "7766715", |
||||
"name": "icon_alipay_line", |
||||
"font_class": "icon_alipay_line", |
||||
"unicode": "eb95", |
||||
"unicode_decimal": 60309 |
||||
}, |
||||
{ |
||||
"icon_id": "7766716", |
||||
"name": "icon_addressbook", |
||||
"font_class": "icon_addressbook", |
||||
"unicode": "eb96", |
||||
"unicode_decimal": 60310 |
||||
}, |
||||
{ |
||||
"icon_id": "7766717", |
||||
"name": "icon_at", |
||||
"font_class": "icon_at", |
||||
"unicode": "eb97", |
||||
"unicode_decimal": 60311 |
||||
}, |
||||
{ |
||||
"icon_id": "7766718", |
||||
"name": "icon_airplay", |
||||
"font_class": "icon_airplay", |
||||
"unicode": "eb98", |
||||
"unicode_decimal": 60312 |
||||
}, |
||||
{ |
||||
"icon_id": "7766719", |
||||
"name": "icon_calendar", |
||||
"font_class": "icon_calendar", |
||||
"unicode": "eb99", |
||||
"unicode_decimal": 60313 |
||||
}, |
||||
{ |
||||
"icon_id": "7766720", |
||||
"name": "icon_attestation", |
||||
"font_class": "icon_attestation", |
||||
"unicode": "eb9a", |
||||
"unicode_decimal": 60314 |
||||
}, |
||||
{ |
||||
"icon_id": "7766721", |
||||
"name": "icon_camera", |
||||
"font_class": "icon_camera", |
||||
"unicode": "eb9b", |
||||
"unicode_decimal": 60315 |
||||
}, |
||||
{ |
||||
"icon_id": "7766722", |
||||
"name": "icon_certificate_fil", |
||||
"font_class": "icon_certificate_fil", |
||||
"unicode": "eb9c", |
||||
"unicode_decimal": 60316 |
||||
}, |
||||
{ |
||||
"icon_id": "7766723", |
||||
"name": "icon_coinpurse_line", |
||||
"font_class": "icon_coinpurse_line", |
||||
"unicode": "eb9d", |
||||
"unicode_decimal": 60317 |
||||
}, |
||||
{ |
||||
"icon_id": "7766725", |
||||
"name": "icon_compile", |
||||
"font_class": "icon_compile", |
||||
"unicode": "eb9e", |
||||
"unicode_decimal": 60318 |
||||
}, |
||||
{ |
||||
"icon_id": "7766726", |
||||
"name": "icon_details", |
||||
"font_class": "icon_details", |
||||
"unicode": "eb9f", |
||||
"unicode_decimal": 60319 |
||||
}, |
||||
{ |
||||
"icon_id": "7766728", |
||||
"name": "icon_cloud_history", |
||||
"font_class": "icon_cloud_history", |
||||
"unicode": "eba0", |
||||
"unicode_decimal": 60320 |
||||
}, |
||||
{ |
||||
"icon_id": "7766729", |
||||
"name": "icon_community_line", |
||||
"font_class": "icon_community_line", |
||||
"unicode": "eba1", |
||||
"unicode_decimal": 60321 |
||||
}, |
||||
{ |
||||
"icon_id": "7766730", |
||||
"name": "icon_discovery", |
||||
"font_class": "icon_discovery", |
||||
"unicode": "eba2", |
||||
"unicode_decimal": 60322 |
||||
}, |
||||
{ |
||||
"icon_id": "7766731", |
||||
"name": "icon_delete", |
||||
"font_class": "icon_delete", |
||||
"unicode": "eba3", |
||||
"unicode_decimal": 60323 |
||||
}, |
||||
{ |
||||
"icon_id": "7766732", |
||||
"name": "icon_dispose", |
||||
"font_class": "icon_dispose", |
||||
"unicode": "eba4", |
||||
"unicode_decimal": 60324 |
||||
}, |
||||
{ |
||||
"icon_id": "7766733", |
||||
"name": "icon_doc", |
||||
"font_class": "icon_doc", |
||||
"unicode": "eba5", |
||||
"unicode_decimal": 60325 |
||||
}, |
||||
{ |
||||
"icon_id": "7766734", |
||||
"name": "icon_cspace", |
||||
"font_class": "icon_cspace", |
||||
"unicode": "eba6", |
||||
"unicode_decimal": 60326 |
||||
} |
||||
] |
||||
} |
||||
|
After Width: | Height: | Size: 133 KiB |
|
After Width: | Height: | Size: 130 KiB |
|
After Width: | Height: | Size: 434 KiB |
@ -0,0 +1,7 @@ |
||||
/*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */ |
||||
var saveAs=saveAs||"undefined"!==typeof navigator&&navigator.msSaveOrOpenBlob&&navigator.msSaveOrOpenBlob.bind(navigator)||function(a){"use strict";if("undefined"===typeof navigator||!/MSIE [1-9]\./.test(navigator.userAgent)){var k=a.document,n=k.createElementNS("http://www.w3.org/1999/xhtml","a"),w="download"in n,x=function(c){var e=k.createEvent("MouseEvents");e.initMouseEvent("click",!0,!1,a,0,0,0,0,0,!1,!1,!1,!1,0,null);c.dispatchEvent(e)},q=a.webkitRequestFileSystem,u=a.requestFileSystem||q||a.mozRequestFileSystem, |
||||
y=function(c){(a.setImmediate||a.setTimeout)(function(){throw c;},0)},r=0,s=function(c){var e=function(){"string"===typeof c?(a.URL||a.webkitURL||a).revokeObjectURL(c):c.remove()};a.chrome?e():setTimeout(e,500)},t=function(c,a,d){a=[].concat(a);for(var b=a.length;b--;){var l=c["on"+a[b]];if("function"===typeof l)try{l.call(c,d||c)}catch(f){y(f)}}},m=function(c,e){var d=this,b=c.type,l=!1,f,p,k=function(){t(d,["writestart","progress","write","writeend"])},g=function(){if(l||!f)f=(a.URL||a.webkitURL|| |
||||
a).createObjectURL(c);p?p.location.href=f:void 0==a.open(f,"_blank")&&"undefined"!==typeof safari&&(a.location.href=f);d.readyState=d.DONE;k();s(f)},h=function(a){return function(){if(d.readyState!==d.DONE)return a.apply(this,arguments)}},m={create:!0,exclusive:!1},v;d.readyState=d.INIT;e||(e="download");if(w)f=(a.URL||a.webkitURL||a).createObjectURL(c),n.href=f,n.download=e,x(n),d.readyState=d.DONE,k(),s(f);else{a.chrome&&b&&"application/octet-stream"!==b&&(v=c.slice||c.webkitSlice,c=v.call(c,0, |
||||
c.size,"application/octet-stream"),l=!0);q&&"download"!==e&&(e+=".download");if("application/octet-stream"===b||q)p=a;u?(r+=c.size,u(a.TEMPORARY,r,h(function(a){a.root.getDirectory("saved",m,h(function(a){var b=function(){a.getFile(e,m,h(function(a){a.createWriter(h(function(b){b.onwriteend=function(b){p.location.href=a.toURL();d.readyState=d.DONE;t(d,"writeend",b);s(a)};b.onerror=function(){var a=b.error;a.code!==a.ABORT_ERR&&g()};["writestart","progress","write","abort"].forEach(function(a){b["on"+ |
||||
a]=d["on"+a]});b.write(c);d.abort=function(){b.abort();d.readyState=d.DONE};d.readyState=d.WRITING}),g)}),g)};a.getFile(e,{create:!1},h(function(a){a.remove();b()}),h(function(a){a.code===a.NOT_FOUND_ERR?b():g()}))}),g)}),g)):g()}},b=m.prototype;b.abort=function(){this.readyState=this.DONE;t(this,"abort")};b.readyState=b.INIT=0;b.WRITING=1;b.DONE=2;b.error=b.onwritestart=b.onprogress=b.onwrite=b.onabort=b.onerror=b.onwriteend=null;return function(a,b){return new m(a,b)}}}("undefined"!==typeof self&& |
||||
self||"undefined"!==typeof window&&window||this.content);"undefined"!==typeof module&&null!==module?module.exports=saveAs:"undefined"!==typeof define&&null!==define&&null!=define.amd&&define([],function(){return saveAs}); |
||||
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 54 KiB |
|
After Width: | Height: | Size: 87 KiB |
|
After Width: | Height: | Size: 87 KiB |
|
After Width: | Height: | Size: 285 KiB |
|
After Width: | Height: | Size: 254 KiB |
|
After Width: | Height: | Size: 310 KiB |
|
After Width: | Height: | Size: 190 KiB |
|
After Width: | Height: | Size: 136 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 450 KiB |
|
After Width: | Height: | Size: 239 KiB |
|
After Width: | Height: | Size: 26 KiB |
|
After Width: | Height: | Size: 359 KiB |
|
After Width: | Height: | Size: 2.2 KiB |
|
After Width: | Height: | Size: 3.6 KiB |
|
After Width: | Height: | Size: 3.7 KiB |
|
After Width: | Height: | Size: 3.7 KiB |
|
After Width: | Height: | Size: 26 KiB |
|
After Width: | Height: | Size: 52 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 141 KiB |
|
After Width: | Height: | Size: 26 KiB |
|
After Width: | Height: | Size: 211 KiB |
|
After Width: | Height: | Size: 240 KiB |
|
After Width: | Height: | Size: 407 KiB |
|
After Width: | Height: | Size: 267 KiB |
@ -0,0 +1,119 @@ |
||||
<!DOCTYPE html> |
||||
<html> |
||||
|
||||
<head> |
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge"> |
||||
<meta http-equiv="X-UA-Compatible" content="chrome=1"/> |
||||
<meta name="renderer" content="webkit"> |
||||
<meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0"> |
||||
<meta name="apple-mobile-web-app-capable" content="yes"> |
||||
<meta name="apple-mobile-web-app-status-bar-style" content="black"> |
||||
<meta name="format-detection" content="telephone=no"> |
||||
<link rel="stylesheet" href="<%= BASE_URL %>cdn/element-ui/2.15.6/theme-chalk/index.css"> |
||||
<link rel="stylesheet" href="<%= BASE_URL %>cdn/animate/3.5.2/animate.css"> |
||||
<link rel="stylesheet" href="<%= BASE_URL %>cdn/iconfont/index.css"> |
||||
<link rel="stylesheet" href="<%= BASE_URL %>cdn/iconfont/avue/iconfont.css"> |
||||
<link rel="stylesheet" href="<%= BASE_URL %>cdn/iconfont/saber/iconfont.css"> |
||||
<link rel="stylesheet" href="<%= BASE_URL %>cdn/iconfont/common/iconfont.css"> |
||||
<link rel="stylesheet" href="<%= BASE_URL %>cdn/avue/2.12.6/index.css"> |
||||
<script src="<%= BASE_URL %>cdn/xlsx/FileSaver.min.js"></script> |
||||
<script src="<%= BASE_URL %>cdn/xlsx/xlsx.full.min.js"></script> |
||||
<link rel="icon" href="<%= BASE_URL %>favicon.png"> |
||||
<!-- <script type="text/javascript" src="//api.map.baidu.com/api?v=3.0&ak=au7TE7Ewv9SSVNKb5NIiaThun2KP7jjt"></script> --> |
||||
<!-- <script type="text/javascript" src="http://webapi.amap.com/maps?v=1.3&key=a35a37c732890b60c4ff0aadd318d0aa"></script> --> |
||||
<!-- <script src="//webapi.amap.com/ui/1.0/main.js"></script> --> |
||||
<title>科研医疗建筑运维平台</title> |
||||
<style> |
||||
html, |
||||
body, |
||||
#app { |
||||
height: 100%; |
||||
margin: 0; |
||||
padding: 0; |
||||
} |
||||
|
||||
.avue-home { |
||||
background-color: #303133; |
||||
height: 100%; |
||||
display: flex; |
||||
flex-direction: column; |
||||
} |
||||
|
||||
.avue-home__main { |
||||
user-select: none; |
||||
width: 100%; |
||||
flex-grow: 1; |
||||
display: flex; |
||||
justify-content: center; |
||||
align-items: center; |
||||
flex-direction: column; |
||||
} |
||||
|
||||
.avue-home__footer { |
||||
width: 100%; |
||||
flex-grow: 0; |
||||
text-align: center; |
||||
padding: 1em 0; |
||||
} |
||||
|
||||
.avue-home__footer > a { |
||||
font-size: 12px; |
||||
color: #ABABAB; |
||||
text-decoration: none; |
||||
} |
||||
|
||||
.avue-home__loading { |
||||
height: 32px; |
||||
width: 32px; |
||||
margin-bottom: 20px; |
||||
} |
||||
|
||||
.avue-home__title { |
||||
color: #FFF; |
||||
font-size: 14px; |
||||
margin-bottom: 10px; |
||||
} |
||||
|
||||
.avue-home__sub-title { |
||||
color: #ABABAB; |
||||
font-size: 12px; |
||||
} |
||||
</style> |
||||
</head> |
||||
|
||||
<body> |
||||
<noscript> |
||||
<strong> |
||||
很抱歉,如果没有 JavaScript 支持,Saber 将不能正常工作。请启用浏览器的 JavaScript 然后继续。 |
||||
</strong> |
||||
</noscript> |
||||
<div id="app"> |
||||
<div class="avue-home"> |
||||
<div class="avue-home__main"> |
||||
<img class="avue-home__loading" src="<%= BASE_URL %>svg/loading-spin.svg" alt="loading"> |
||||
<div class="avue-home__title"> |
||||
正在加载资源 |
||||
</div> |
||||
<div class="avue-home__sub-title d"> |
||||
初次加载资源可能需要较多时间 请耐心等待 |
||||
</div> |
||||
</div> |
||||
<div class="avue-home__footer"> |
||||
<a href="https://bladex.cn" target="_blank"> |
||||
https://bladex.cn </a> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
<!-- built files will be auto injected --> |
||||
<script src="<%= BASE_URL %>util/aes.js" charset="utf-8"></script> |
||||
<script src="<%= BASE_URL %>cdn/vue/2.6.10/vue.min.js" charset="utf-8"></script> |
||||
<script src="<%= BASE_URL %>cdn/vuex/3.1.1/vuex.min.js" charset="utf-8"></script> |
||||
<script src="<%= BASE_URL %>cdn/vue-router/3.0.1/vue-router.min.js" charset="utf-8"></script> |
||||
<script src="<%= BASE_URL %>cdn/axios/1.0.0/axios.min.js" charset="utf-8"></script> |
||||
<script src="<%= BASE_URL %>cdn/element-ui/2.15.6/index.js" charset="utf-8"></script> |
||||
<script src="<%= BASE_URL %>cdn/avue/2.12.6/avue.min.js" charset="utf-8"></script> |
||||
<script src="<%= BASE_URL %>cdn/nutflow/wf-design-base/index.umd.min.js" charset="utf-8"></script> |
||||
</body> |
||||
|
||||
</html> |
||||
|
After Width: | Height: | Size: 422 B |
@ -0,0 +1,105 @@ |
||||
/* |
||||
CryptoJS v3.1.2 |
||||
code.google.com/p/crypto-js |
||||
(c) 2009-2013 by Jeff Mott. All rights reserved. |
||||
code.google.com/p/crypto-js/wiki/License |
||||
*/ |
||||
var CryptoJS = CryptoJS || function (u, p) { |
||||
var d = {}, l = d.lib = {}, s = function () { }, t = l.Base = { extend: function (a) { s.prototype = this; var c = new s; a && c.mixIn(a); c.hasOwnProperty("init") || (c.init = function () { c.$super.init.apply(this, arguments) }); c.init.prototype = c; c.$super = this; return c }, create: function () { var a = this.extend(); a.init.apply(a, arguments); return a }, init: function () { }, mixIn: function (a) { for (var c in a) a.hasOwnProperty(c) && (this[c] = a[c]); a.hasOwnProperty("toString") && (this.toString = a.toString) }, clone: function () { return this.init.prototype.extend(this) } }, |
||||
r = l.WordArray = t.extend({ |
||||
init: function (a, c) { a = this.words = a || []; this.sigBytes = c != p ? c : 4 * a.length }, toString: function (a) { return (a || v).stringify(this) }, concat: function (a) { var c = this.words, e = a.words, j = this.sigBytes; a = a.sigBytes; this.clamp(); if (j % 4) for (var k = 0; k < a; k++)c[j + k >>> 2] |= (e[k >>> 2] >>> 24 - 8 * (k % 4) & 255) << 24 - 8 * ((j + k) % 4); else if (65535 < e.length) for (k = 0; k < a; k += 4)c[j + k >>> 2] = e[k >>> 2]; else c.push.apply(c, e); this.sigBytes += a; return this }, clamp: function () { |
||||
var a = this.words, c = this.sigBytes; a[c >>> 2] &= 4294967295 << |
||||
32 - 8 * (c % 4); a.length = u.ceil(c / 4) |
||||
}, clone: function () { var a = t.clone.call(this); a.words = this.words.slice(0); return a }, random: function (a) { for (var c = [], e = 0; e < a; e += 4)c.push(4294967296 * u.random() | 0); return new r.init(c, a) } |
||||
}), w = d.enc = {}, v = w.Hex = { |
||||
stringify: function (a) { var c = a.words; a = a.sigBytes; for (var e = [], j = 0; j < a; j++) { var k = c[j >>> 2] >>> 24 - 8 * (j % 4) & 255; e.push((k >>> 4).toString(16)); e.push((k & 15).toString(16)) } return e.join("") }, parse: function (a) { |
||||
for (var c = a.length, e = [], j = 0; j < c; j += 2)e[j >>> 3] |= parseInt(a.substr(j, |
||||
2), 16) << 24 - 4 * (j % 8); return new r.init(e, c / 2) |
||||
} |
||||
}, b = w.Latin1 = { stringify: function (a) { var c = a.words; a = a.sigBytes; for (var e = [], j = 0; j < a; j++)e.push(String.fromCharCode(c[j >>> 2] >>> 24 - 8 * (j % 4) & 255)); return e.join("") }, parse: function (a) { for (var c = a.length, e = [], j = 0; j < c; j++)e[j >>> 2] |= (a.charCodeAt(j) & 255) << 24 - 8 * (j % 4); return new r.init(e, c) } }, x = w.Utf8 = { stringify: function (a) { try { return decodeURIComponent(escape(b.stringify(a))) } catch (c) { throw Error("Malformed UTF-8 data"); } }, parse: function (a) { return b.parse(unescape(encodeURIComponent(a))) } }, |
||||
q = l.BufferedBlockAlgorithm = t.extend({ |
||||
reset: function () { this._data = new r.init; this._nDataBytes = 0 }, _append: function (a) { "string" == typeof a && (a = x.parse(a)); this._data.concat(a); this._nDataBytes += a.sigBytes }, _process: function (a) { var c = this._data, e = c.words, j = c.sigBytes, k = this.blockSize, b = j / (4 * k), b = a ? u.ceil(b) : u.max((b | 0) - this._minBufferSize, 0); a = b * k; j = u.min(4 * a, j); if (a) { for (var q = 0; q < a; q += k)this._doProcessBlock(e, q); q = e.splice(0, a); c.sigBytes -= j } return new r.init(q, j) }, clone: function () { |
||||
var a = t.clone.call(this); |
||||
a._data = this._data.clone(); return a |
||||
}, _minBufferSize: 0 |
||||
}); l.Hasher = q.extend({ |
||||
cfg: t.extend(), init: function (a) { this.cfg = this.cfg.extend(a); this.reset() }, reset: function () { q.reset.call(this); this._doReset() }, update: function (a) { this._append(a); this._process(); return this }, finalize: function (a) { a && this._append(a); return this._doFinalize() }, blockSize: 16, _createHelper: function (a) { return function (b, e) { return (new a.init(e)).finalize(b) } }, _createHmacHelper: function (a) { |
||||
return function (b, e) { |
||||
return (new n.HMAC.init(a, |
||||
e)).finalize(b) |
||||
} |
||||
} |
||||
}); var n = d.algo = {}; return d |
||||
}(Math); |
||||
(function () { |
||||
var u = CryptoJS, p = u.lib.WordArray; u.enc.Base64 = { |
||||
stringify: function (d) { var l = d.words, p = d.sigBytes, t = this._map; d.clamp(); d = []; for (var r = 0; r < p; r += 3)for (var w = (l[r >>> 2] >>> 24 - 8 * (r % 4) & 255) << 16 | (l[r + 1 >>> 2] >>> 24 - 8 * ((r + 1) % 4) & 255) << 8 | l[r + 2 >>> 2] >>> 24 - 8 * ((r + 2) % 4) & 255, v = 0; 4 > v && r + 0.75 * v < p; v++)d.push(t.charAt(w >>> 6 * (3 - v) & 63)); if (l = t.charAt(64)) for (; d.length % 4;)d.push(l); return d.join("") }, parse: function (d) { |
||||
var l = d.length, s = this._map, t = s.charAt(64); t && (t = d.indexOf(t), -1 != t && (l = t)); for (var t = [], r = 0, w = 0; w < |
||||
l; w++)if (w % 4) { var v = s.indexOf(d.charAt(w - 1)) << 2 * (w % 4), b = s.indexOf(d.charAt(w)) >>> 6 - 2 * (w % 4); t[r >>> 2] |= (v | b) << 24 - 8 * (r % 4); r++ } return p.create(t, r) |
||||
}, _map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" |
||||
} |
||||
})(); |
||||
(function (u) { |
||||
function p(b, n, a, c, e, j, k) { b = b + (n & a | ~n & c) + e + k; return (b << j | b >>> 32 - j) + n } function d(b, n, a, c, e, j, k) { b = b + (n & c | a & ~c) + e + k; return (b << j | b >>> 32 - j) + n } function l(b, n, a, c, e, j, k) { b = b + (n ^ a ^ c) + e + k; return (b << j | b >>> 32 - j) + n } function s(b, n, a, c, e, j, k) { b = b + (a ^ (n | ~c)) + e + k; return (b << j | b >>> 32 - j) + n } for (var t = CryptoJS, r = t.lib, w = r.WordArray, v = r.Hasher, r = t.algo, b = [], x = 0; 64 > x; x++)b[x] = 4294967296 * u.abs(u.sin(x + 1)) | 0; r = r.MD5 = v.extend({ |
||||
_doReset: function () { this._hash = new w.init([1732584193, 4023233417, 2562383102, 271733878]) }, |
||||
_doProcessBlock: function (q, n) { |
||||
for (var a = 0; 16 > a; a++) { var c = n + a, e = q[c]; q[c] = (e << 8 | e >>> 24) & 16711935 | (e << 24 | e >>> 8) & 4278255360 } var a = this._hash.words, c = q[n + 0], e = q[n + 1], j = q[n + 2], k = q[n + 3], z = q[n + 4], r = q[n + 5], t = q[n + 6], w = q[n + 7], v = q[n + 8], A = q[n + 9], B = q[n + 10], C = q[n + 11], u = q[n + 12], D = q[n + 13], E = q[n + 14], x = q[n + 15], f = a[0], m = a[1], g = a[2], h = a[3], f = p(f, m, g, h, c, 7, b[0]), h = p(h, f, m, g, e, 12, b[1]), g = p(g, h, f, m, j, 17, b[2]), m = p(m, g, h, f, k, 22, b[3]), f = p(f, m, g, h, z, 7, b[4]), h = p(h, f, m, g, r, 12, b[5]), g = p(g, h, f, m, t, 17, b[6]), m = p(m, g, h, f, w, 22, b[7]), |
||||
f = p(f, m, g, h, v, 7, b[8]), h = p(h, f, m, g, A, 12, b[9]), g = p(g, h, f, m, B, 17, b[10]), m = p(m, g, h, f, C, 22, b[11]), f = p(f, m, g, h, u, 7, b[12]), h = p(h, f, m, g, D, 12, b[13]), g = p(g, h, f, m, E, 17, b[14]), m = p(m, g, h, f, x, 22, b[15]), f = d(f, m, g, h, e, 5, b[16]), h = d(h, f, m, g, t, 9, b[17]), g = d(g, h, f, m, C, 14, b[18]), m = d(m, g, h, f, c, 20, b[19]), f = d(f, m, g, h, r, 5, b[20]), h = d(h, f, m, g, B, 9, b[21]), g = d(g, h, f, m, x, 14, b[22]), m = d(m, g, h, f, z, 20, b[23]), f = d(f, m, g, h, A, 5, b[24]), h = d(h, f, m, g, E, 9, b[25]), g = d(g, h, f, m, k, 14, b[26]), m = d(m, g, h, f, v, 20, b[27]), f = d(f, m, g, h, D, 5, b[28]), h = d(h, f, |
||||
m, g, j, 9, b[29]), g = d(g, h, f, m, w, 14, b[30]), m = d(m, g, h, f, u, 20, b[31]), f = l(f, m, g, h, r, 4, b[32]), h = l(h, f, m, g, v, 11, b[33]), g = l(g, h, f, m, C, 16, b[34]), m = l(m, g, h, f, E, 23, b[35]), f = l(f, m, g, h, e, 4, b[36]), h = l(h, f, m, g, z, 11, b[37]), g = l(g, h, f, m, w, 16, b[38]), m = l(m, g, h, f, B, 23, b[39]), f = l(f, m, g, h, D, 4, b[40]), h = l(h, f, m, g, c, 11, b[41]), g = l(g, h, f, m, k, 16, b[42]), m = l(m, g, h, f, t, 23, b[43]), f = l(f, m, g, h, A, 4, b[44]), h = l(h, f, m, g, u, 11, b[45]), g = l(g, h, f, m, x, 16, b[46]), m = l(m, g, h, f, j, 23, b[47]), f = s(f, m, g, h, c, 6, b[48]), h = s(h, f, m, g, w, 10, b[49]), g = s(g, h, f, m, |
||||
E, 15, b[50]), m = s(m, g, h, f, r, 21, b[51]), f = s(f, m, g, h, u, 6, b[52]), h = s(h, f, m, g, k, 10, b[53]), g = s(g, h, f, m, B, 15, b[54]), m = s(m, g, h, f, e, 21, b[55]), f = s(f, m, g, h, v, 6, b[56]), h = s(h, f, m, g, x, 10, b[57]), g = s(g, h, f, m, t, 15, b[58]), m = s(m, g, h, f, D, 21, b[59]), f = s(f, m, g, h, z, 6, b[60]), h = s(h, f, m, g, C, 10, b[61]), g = s(g, h, f, m, j, 15, b[62]), m = s(m, g, h, f, A, 21, b[63]); a[0] = a[0] + f | 0; a[1] = a[1] + m | 0; a[2] = a[2] + g | 0; a[3] = a[3] + h | 0 |
||||
}, _doFinalize: function () { |
||||
var b = this._data, n = b.words, a = 8 * this._nDataBytes, c = 8 * b.sigBytes; n[c >>> 5] |= 128 << 24 - c % 32; var e = u.floor(a / |
||||
4294967296); n[(c + 64 >>> 9 << 4) + 15] = (e << 8 | e >>> 24) & 16711935 | (e << 24 | e >>> 8) & 4278255360; n[(c + 64 >>> 9 << 4) + 14] = (a << 8 | a >>> 24) & 16711935 | (a << 24 | a >>> 8) & 4278255360; b.sigBytes = 4 * (n.length + 1); this._process(); b = this._hash; n = b.words; for (a = 0; 4 > a; a++)c = n[a], n[a] = (c << 8 | c >>> 24) & 16711935 | (c << 24 | c >>> 8) & 4278255360; return b |
||||
}, clone: function () { var b = v.clone.call(this); b._hash = this._hash.clone(); return b } |
||||
}); t.MD5 = v._createHelper(r); t.HmacMD5 = v._createHmacHelper(r) |
||||
})(Math); |
||||
(function () { |
||||
var u = CryptoJS, p = u.lib, d = p.Base, l = p.WordArray, p = u.algo, s = p.EvpKDF = d.extend({ cfg: d.extend({ keySize: 4, hasher: p.MD5, iterations: 1 }), init: function (d) { this.cfg = this.cfg.extend(d) }, compute: function (d, r) { for (var p = this.cfg, s = p.hasher.create(), b = l.create(), u = b.words, q = p.keySize, p = p.iterations; u.length < q;) { n && s.update(n); var n = s.update(d).finalize(r); s.reset(); for (var a = 1; a < p; a++)n = s.finalize(n), s.reset(); b.concat(n) } b.sigBytes = 4 * q; return b } }); u.EvpKDF = function (d, l, p) { |
||||
return s.create(p).compute(d, |
||||
l) |
||||
} |
||||
})(); |
||||
CryptoJS.lib.Cipher || function (u) { |
||||
var p = CryptoJS, d = p.lib, l = d.Base, s = d.WordArray, t = d.BufferedBlockAlgorithm, r = p.enc.Base64, w = p.algo.EvpKDF, v = d.Cipher = t.extend({ |
||||
cfg: l.extend(), createEncryptor: function (e, a) { return this.create(this._ENC_XFORM_MODE, e, a) }, createDecryptor: function (e, a) { return this.create(this._DEC_XFORM_MODE, e, a) }, init: function (e, a, b) { this.cfg = this.cfg.extend(b); this._xformMode = e; this._key = a; this.reset() }, reset: function () { t.reset.call(this); this._doReset() }, process: function (e) { this._append(e); return this._process() }, |
||||
finalize: function (e) { e && this._append(e); return this._doFinalize() }, keySize: 4, ivSize: 4, _ENC_XFORM_MODE: 1, _DEC_XFORM_MODE: 2, _createHelper: function (e) { return { encrypt: function (b, k, d) { return ("string" == typeof k ? c : a).encrypt(e, b, k, d) }, decrypt: function (b, k, d) { return ("string" == typeof k ? c : a).decrypt(e, b, k, d) } } } |
||||
}); d.StreamCipher = v.extend({ _doFinalize: function () { return this._process(!0) }, blockSize: 1 }); var b = p.mode = {}, x = function (e, a, b) { |
||||
var c = this._iv; c ? this._iv = u : c = this._prevBlock; for (var d = 0; d < b; d++)e[a + d] ^= |
||||
c[d] |
||||
}, q = (d.BlockCipherMode = l.extend({ createEncryptor: function (e, a) { return this.Encryptor.create(e, a) }, createDecryptor: function (e, a) { return this.Decryptor.create(e, a) }, init: function (e, a) { this._cipher = e; this._iv = a } })).extend(); q.Encryptor = q.extend({ processBlock: function (e, a) { var b = this._cipher, c = b.blockSize; x.call(this, e, a, c); b.encryptBlock(e, a); this._prevBlock = e.slice(a, a + c) } }); q.Decryptor = q.extend({ |
||||
processBlock: function (e, a) { |
||||
var b = this._cipher, c = b.blockSize, d = e.slice(a, a + c); b.decryptBlock(e, a); x.call(this, |
||||
e, a, c); this._prevBlock = d |
||||
} |
||||
}); b = b.CBC = q; q = (p.pad = {}).Pkcs7 = { pad: function (a, b) { for (var c = 4 * b, c = c - a.sigBytes % c, d = c << 24 | c << 16 | c << 8 | c, l = [], n = 0; n < c; n += 4)l.push(d); c = s.create(l, c); a.concat(c) }, unpad: function (a) { a.sigBytes -= a.words[a.sigBytes - 1 >>> 2] & 255 } }; d.BlockCipher = v.extend({ |
||||
cfg: v.cfg.extend({ mode: b, padding: q }), reset: function () { |
||||
v.reset.call(this); var a = this.cfg, b = a.iv, a = a.mode; if (this._xformMode == this._ENC_XFORM_MODE) var c = a.createEncryptor; else c = a.createDecryptor, this._minBufferSize = 1; this._mode = c.call(a, |
||||
this, b && b.words) |
||||
}, _doProcessBlock: function (a, b) { this._mode.processBlock(a, b) }, _doFinalize: function () { var a = this.cfg.padding; if (this._xformMode == this._ENC_XFORM_MODE) { a.pad(this._data, this.blockSize); var b = this._process(!0) } else b = this._process(!0), a.unpad(b); return b }, blockSize: 4 |
||||
}); var n = d.CipherParams = l.extend({ init: function (a) { this.mixIn(a) }, toString: function (a) { return (a || this.formatter).stringify(this) } }), b = (p.format = {}).OpenSSL = { |
||||
stringify: function (a) { |
||||
var b = a.ciphertext; a = a.salt; return (a ? s.create([1398893684, |
||||
1701076831]).concat(a).concat(b) : b).toString(r) |
||||
}, parse: function (a) { a = r.parse(a); var b = a.words; if (1398893684 == b[0] && 1701076831 == b[1]) { var c = s.create(b.slice(2, 4)); b.splice(0, 4); a.sigBytes -= 16 } return n.create({ ciphertext: a, salt: c }) } |
||||
}, a = d.SerializableCipher = l.extend({ |
||||
cfg: l.extend({ format: b }), encrypt: function (a, b, c, d) { d = this.cfg.extend(d); var l = a.createEncryptor(c, d); b = l.finalize(b); l = l.cfg; return n.create({ ciphertext: b, key: c, iv: l.iv, algorithm: a, mode: l.mode, padding: l.padding, blockSize: a.blockSize, formatter: d.format }) }, |
||||
decrypt: function (a, b, c, d) { d = this.cfg.extend(d); b = this._parse(b, d.format); return a.createDecryptor(c, d).finalize(b.ciphertext) }, _parse: function (a, b) { return "string" == typeof a ? b.parse(a, this) : a } |
||||
}), p = (p.kdf = {}).OpenSSL = { execute: function (a, b, c, d) { d || (d = s.random(8)); a = w.create({ keySize: b + c }).compute(a, d); c = s.create(a.words.slice(b), 4 * c); a.sigBytes = 4 * b; return n.create({ key: a, iv: c, salt: d }) } }, c = d.PasswordBasedCipher = a.extend({ |
||||
cfg: a.cfg.extend({ kdf: p }), encrypt: function (b, c, d, l) { |
||||
l = this.cfg.extend(l); d = l.kdf.execute(d, |
||||
b.keySize, b.ivSize); l.iv = d.iv; b = a.encrypt.call(this, b, c, d.key, l); b.mixIn(d); return b |
||||
}, decrypt: function (b, c, d, l) { l = this.cfg.extend(l); c = this._parse(c, l.format); d = l.kdf.execute(d, b.keySize, b.ivSize, c.salt); l.iv = d.iv; return a.decrypt.call(this, b, c, d.key, l) } |
||||
}) |
||||
}(); |
||||
(function () { |
||||
for (var u = CryptoJS, p = u.lib.BlockCipher, d = u.algo, l = [], s = [], t = [], r = [], w = [], v = [], b = [], x = [], q = [], n = [], a = [], c = 0; 256 > c; c++)a[c] = 128 > c ? c << 1 : c << 1 ^ 283; for (var e = 0, j = 0, c = 0; 256 > c; c++) { var k = j ^ j << 1 ^ j << 2 ^ j << 3 ^ j << 4, k = k >>> 8 ^ k & 255 ^ 99; l[e] = k; s[k] = e; var z = a[e], F = a[z], G = a[F], y = 257 * a[k] ^ 16843008 * k; t[e] = y << 24 | y >>> 8; r[e] = y << 16 | y >>> 16; w[e] = y << 8 | y >>> 24; v[e] = y; y = 16843009 * G ^ 65537 * F ^ 257 * z ^ 16843008 * e; b[k] = y << 24 | y >>> 8; x[k] = y << 16 | y >>> 16; q[k] = y << 8 | y >>> 24; n[k] = y; e ? (e = z ^ a[a[a[G ^ z]]], j ^= a[a[j]]) : e = j = 1 } var H = [0, 1, 2, 4, 8, |
||||
16, 32, 64, 128, 27, 54], d = d.AES = p.extend({ |
||||
_doReset: function () { |
||||
for (var a = this._key, c = a.words, d = a.sigBytes / 4, a = 4 * ((this._nRounds = d + 6) + 1), e = this._keySchedule = [], j = 0; j < a; j++)if (j < d) e[j] = c[j]; else { var k = e[j - 1]; j % d ? 6 < d && 4 == j % d && (k = l[k >>> 24] << 24 | l[k >>> 16 & 255] << 16 | l[k >>> 8 & 255] << 8 | l[k & 255]) : (k = k << 8 | k >>> 24, k = l[k >>> 24] << 24 | l[k >>> 16 & 255] << 16 | l[k >>> 8 & 255] << 8 | l[k & 255], k ^= H[j / d | 0] << 24); e[j] = e[j - d] ^ k } c = this._invKeySchedule = []; for (d = 0; d < a; d++)j = a - d, k = d % 4 ? e[j] : e[j - 4], c[d] = 4 > d || 4 >= j ? k : b[l[k >>> 24]] ^ x[l[k >>> 16 & 255]] ^ q[l[k >>> |
||||
8 & 255]] ^ n[l[k & 255]] |
||||
}, encryptBlock: function (a, b) { this._doCryptBlock(a, b, this._keySchedule, t, r, w, v, l) }, decryptBlock: function (a, c) { var d = a[c + 1]; a[c + 1] = a[c + 3]; a[c + 3] = d; this._doCryptBlock(a, c, this._invKeySchedule, b, x, q, n, s); d = a[c + 1]; a[c + 1] = a[c + 3]; a[c + 3] = d }, _doCryptBlock: function (a, b, c, d, e, j, l, f) { |
||||
for (var m = this._nRounds, g = a[b] ^ c[0], h = a[b + 1] ^ c[1], k = a[b + 2] ^ c[2], n = a[b + 3] ^ c[3], p = 4, r = 1; r < m; r++)var q = d[g >>> 24] ^ e[h >>> 16 & 255] ^ j[k >>> 8 & 255] ^ l[n & 255] ^ c[p++], s = d[h >>> 24] ^ e[k >>> 16 & 255] ^ j[n >>> 8 & 255] ^ l[g & 255] ^ c[p++], t = |
||||
d[k >>> 24] ^ e[n >>> 16 & 255] ^ j[g >>> 8 & 255] ^ l[h & 255] ^ c[p++], n = d[n >>> 24] ^ e[g >>> 16 & 255] ^ j[h >>> 8 & 255] ^ l[k & 255] ^ c[p++], g = q, h = s, k = t; q = (f[g >>> 24] << 24 | f[h >>> 16 & 255] << 16 | f[k >>> 8 & 255] << 8 | f[n & 255]) ^ c[p++]; s = (f[h >>> 24] << 24 | f[k >>> 16 & 255] << 16 | f[n >>> 8 & 255] << 8 | f[g & 255]) ^ c[p++]; t = (f[k >>> 24] << 24 | f[n >>> 16 & 255] << 16 | f[g >>> 8 & 255] << 8 | f[h & 255]) ^ c[p++]; n = (f[n >>> 24] << 24 | f[g >>> 16 & 255] << 16 | f[h >>> 8 & 255] << 8 | f[k & 255]) ^ c[p++]; a[b] = q; a[b + 1] = s; a[b + 2] = t; a[b + 3] = n |
||||
}, keySize: 8 |
||||
}); u.AES = p._createHelper(d) |
||||
})(); |
||||
|
After Width: | Height: | Size: 65 KiB |
|
After Width: | Height: | Size: 421 KiB |
@ -0,0 +1,32 @@ |
||||
.el-tip { |
||||
position: fixed; |
||||
left: 50%; |
||||
top: 50%; |
||||
width: 500px; |
||||
padding: 8px 16px; |
||||
margin: 0; |
||||
margin-left: -250px; |
||||
margin-top: -60px; |
||||
box-sizing: border-box; |
||||
border-radius: 4px; |
||||
position: relative; |
||||
background-color: #fff; |
||||
overflow: hidden; |
||||
opacity: 1; |
||||
display: flex; |
||||
align-items: center; |
||||
transition: opacity .2s; |
||||
} |
||||
|
||||
.el-tip--warning { |
||||
background-color: #fdf6ec; |
||||
color: #e6a23c; |
||||
} |
||||
|
||||
.el-tip__title { |
||||
line-height: 18px; |
||||
} |
||||
.el-tip_img img{ |
||||
width: 80px; |
||||
height: 80px; |
||||
} |
||||
@ -0,0 +1,47 @@ |
||||
function util() { |
||||
this.flag = true; |
||||
var body = document.body; |
||||
var safe = this; |
||||
var validVersion = function() { |
||||
var browser = navigator.appName |
||||
var b_version = navigator.appVersion |
||||
var version = b_version.split(";"); |
||||
var trim_Version = version[1].replace(/[ ]/g, ""); |
||||
if (trim_Version == 'WOW64') { |
||||
safe.flag = false |
||||
} else if (browser == "Microsoft Internet Explorer" && trim_Version == "MSIE6.0") { |
||||
safe.flag = false |
||||
} else if (browser == "Microsoft Internet Explorer" && trim_Version == "MSIE7.0") { |
||||
safe.flag = false |
||||
} else if (browser == "Microsoft Internet Explorer" && trim_Version == "MSIE8.0") { |
||||
safe.flag = false |
||||
} else if (browser == "Microsoft Internet Explorer" && trim_Version == "MSIE9.0") { |
||||
safe.flag = false |
||||
} |
||||
} |
||||
this.setBody = function() { |
||||
var str = '<div class="el-tip el-tip--warning" id="tip">' + |
||||
'<div class="el-tip_content">' + |
||||
'<span class="el-tip__title">' + |
||||
'您乘坐的浏览器版本太低了,你可以把浏览器从兼容模式调到极速模式' + |
||||
'<br /> 实在不行就换浏览器吧;' + |
||||
'</span>' + |
||||
'<div class="el-tip_img">' + |
||||
'<img src="/util/screen/huohu.png" alt="">' + |
||||
'<img src="/util/screen/guge.png" alt="">' + |
||||
'</div>' + |
||||
'</div>' + |
||||
'</div>'; |
||||
body.innerHTML = str + body.innerHTML |
||||
} |
||||
this.init = function() { |
||||
validVersion(); //检测浏览器的版本
|
||||
return this; |
||||
} |
||||
} |
||||
|
||||
var creen = new util().init(); |
||||
var flag = creen.flag; |
||||
if (!flag) { |
||||
creen.setBody(); |
||||
} |
||||
@ -0,0 +1,30 @@ |
||||
<template> |
||||
<div id="app"> |
||||
<router-view /> |
||||
</div> |
||||
</template> |
||||
|
||||
<script> |
||||
export default { |
||||
name: "app", |
||||
data() { |
||||
return {}; |
||||
}, |
||||
watch: {}, |
||||
created() { |
||||
|
||||
}, |
||||
methods: {}, |
||||
computed: {} |
||||
}; |
||||
</script> |
||||
<style lang="scss"> |
||||
#app { |
||||
width: 100%; |
||||
height: 100%; |
||||
overflow: hidden; |
||||
} |
||||
.avue--detail .el-col{ |
||||
margin-bottom: 0; |
||||
} |
||||
</style> |
||||
@ -0,0 +1,53 @@ |
||||
import request from '@/router/axios'; |
||||
|
||||
export const getList = (current, size, params) => { |
||||
return request({ |
||||
url: '/api/blade-system/region/list', |
||||
method: 'get', |
||||
params: { |
||||
...params, |
||||
current, |
||||
size, |
||||
} |
||||
}) |
||||
} |
||||
|
||||
export const getLazyTree = (parentCode, params) => { |
||||
return request({ |
||||
url: '/api/blade-system/region/lazy-tree', |
||||
method: 'get', |
||||
params: { |
||||
...params, |
||||
parentCode |
||||
} |
||||
}) |
||||
} |
||||
|
||||
export const getDetail = (code) => { |
||||
return request({ |
||||
url: '/api/blade-system/region/detail', |
||||
method: 'get', |
||||
params: { |
||||
code |
||||
} |
||||
}) |
||||
} |
||||
|
||||
export const remove = (id) => { |
||||
return request({ |
||||
url: '/api/blade-system/region/remove', |
||||
method: 'post', |
||||
params: { |
||||
id, |
||||
} |
||||
}) |
||||
} |
||||
|
||||
export const submit = (row) => { |
||||
return request({ |
||||
url: '/api/blade-system/region/submit', |
||||
method: 'post', |
||||
data: row |
||||
}) |
||||
} |
||||
|
||||
@ -0,0 +1,15 @@ |
||||
import request from "@/router/axios"; |
||||
|
||||
/** |
||||
* 文件流返回 |
||||
* @param url 接口地址 |
||||
* @param params 接口参数 |
||||
*/ |
||||
export const exportBlob = (url, params) => { |
||||
return request({ |
||||
url: url, |
||||
params: params, |
||||
method: 'get', |
||||
responseType: 'blob' |
||||
}) |
||||
} |
||||
@ -0,0 +1,47 @@ |
||||
import request from '@/router/axios'; |
||||
|
||||
// 资料列表
|
||||
export const getInformationList = (query) => { |
||||
return request({ |
||||
// url: '/api/information/list',
|
||||
url:'/api/informationAttach/detail', |
||||
method: 'get', |
||||
params: query |
||||
}) |
||||
} |
||||
|
||||
// 资料保存
|
||||
export const saveInformation = (data) =>{ |
||||
return request({ |
||||
url:'/api/informationAttach/save', |
||||
method:'post', |
||||
data |
||||
}) |
||||
} |
||||
|
||||
// 查看详情
|
||||
export const getDetail = (query) =>{ |
||||
return request({ |
||||
url:'/api/informationAttach/detail', |
||||
method:'get', |
||||
params:query |
||||
}) |
||||
} |
||||
|
||||
// 资料修改
|
||||
export const editInformation = (data) =>{ |
||||
return request({ |
||||
url:'/api/informationAttach/update', |
||||
method:'post', |
||||
data |
||||
}) |
||||
} |
||||
|
||||
// 资料删除
|
||||
export const deleteInfomation = (ids) =>{ |
||||
return request({ |
||||
url:'/api/informationAttach/remove', |
||||
method:'post', |
||||
params:ids |
||||
}) |
||||
} |
||||
@ -0,0 +1,60 @@ |
||||
import request from '@/router/axios'; |
||||
|
||||
export const getList = (current, size, params) => { |
||||
return request({ |
||||
url: '/api/blade-desk/notice/list', |
||||
method: 'get', |
||||
params: { |
||||
...params, |
||||
current, |
||||
size, |
||||
}, |
||||
cryptoToken: false, |
||||
cryptoData: false |
||||
}) |
||||
} |
||||
|
||||
export const remove = (ids) => { |
||||
return request({ |
||||
url: '/api/blade-desk/notice/remove', |
||||
method: 'post', |
||||
params: { |
||||
ids, |
||||
}, |
||||
cryptoToken: false, |
||||
cryptoData: false |
||||
}) |
||||
} |
||||
|
||||
export const add = (row) => { |
||||
return request({ |
||||
url: '/api/blade-desk/notice/submit', |
||||
method: 'post', |
||||
data: row, |
||||
cryptoToken: false, |
||||
cryptoData: false |
||||
}) |
||||
} |
||||
|
||||
export const update = (row) => { |
||||
return request({ |
||||
url: '/api/blade-desk/notice/submit', |
||||
method: 'post', |
||||
data: row, |
||||
cryptoToken: false, |
||||
cryptoData: false |
||||
}) |
||||
} |
||||
|
||||
export const getNotice = (id) => { |
||||
return request({ |
||||
url: '/api/blade-desk/notice/detail', |
||||
method: 'get', |
||||
params: { |
||||
id |
||||
}, |
||||
cryptoToken: false, |
||||
cryptoData: false |
||||
}) |
||||
} |
||||
|
||||
@ -0,0 +1,47 @@ |
||||
import request from '@/router/axios'; |
||||
|
||||
export const getDeviceList = (query) => { |
||||
return request({ |
||||
url: '/api/device/list', |
||||
method: 'get', |
||||
params: query |
||||
}) |
||||
} |
||||
|
||||
// 设备新增
|
||||
export const addDevice = (data) =>{ |
||||
return request({ |
||||
url:'/api/device/save', |
||||
method:'post', |
||||
data |
||||
}) |
||||
} |
||||
|
||||
// 设备编辑
|
||||
export const editDevice = (data) =>{ |
||||
return request({ |
||||
url:'/api/device/update', |
||||
method:'post', |
||||
data |
||||
}) |
||||
} |
||||
|
||||
// 查看详情
|
||||
export const getDetail = (query) =>{ |
||||
return request({ |
||||
url:'/api/device/detail', |
||||
method:'get', |
||||
params:query |
||||
}) |
||||
} |
||||
|
||||
//设备删除
|
||||
export const deleteDevice = (ids) =>{ |
||||
return request({ |
||||
url:'/api/device/remove', |
||||
method:'post', |
||||
params: { |
||||
ids, |
||||
} |
||||
}) |
||||
} |
||||
@ -0,0 +1,46 @@ |
||||
import request from '@/router/axios'; |
||||
|
||||
// 客户意见反馈列表
|
||||
export const getFeedList = (query) => { |
||||
return request({ |
||||
url: '/api/feedback/list', |
||||
method: 'get', |
||||
params: query |
||||
}) |
||||
} |
||||
|
||||
// 意见反馈提交
|
||||
export const addFeedback = (data) =>{ |
||||
return request({ |
||||
url:'/api/feedback/save', |
||||
method:'post', |
||||
data |
||||
}) |
||||
} |
||||
|
||||
// 根据id查看意见详情
|
||||
export const getDetail = (query) =>{ |
||||
return request({ |
||||
url:'/api/feedback/detail', |
||||
method:'get', |
||||
params:query |
||||
}) |
||||
} |
||||
|
||||
// 客服对客户提的意见进行反馈记录
|
||||
export const updateFeedback = (data) =>{ |
||||
return request({ |
||||
url:'/api/feedback/update', |
||||
method:'post', |
||||
data |
||||
}) |
||||
} |
||||
|
||||
// 保存客户反馈
|
||||
export const saveFeedback = (data) =>{ |
||||
return request({ |
||||
url:'/api/feedback/submit', |
||||
method:'post', |
||||
data |
||||
}) |
||||
} |
||||