Initial commit
22
developer-front/.editorconfig
Normal file
@@ -0,0 +1,22 @@
|
||||
# 告诉EditorConfig插件,这是根文件,不用继续往上查找
|
||||
root = true
|
||||
|
||||
# 匹配全部文件
|
||||
[*]
|
||||
# 设置字符集
|
||||
charset = utf-8
|
||||
# 缩进风格,可选space、tab
|
||||
indent_style = space
|
||||
# 缩进的空格数
|
||||
indent_size = 2
|
||||
# 结尾换行符,可选lf、cr、crlf
|
||||
end_of_line = lf
|
||||
# 在文件结尾插入新行
|
||||
insert_final_newline = true
|
||||
# 删除一行中的前后空格
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
# 匹配md结尾的文件
|
||||
[*.md]
|
||||
insert_final_newline = false
|
||||
trim_trailing_whitespace = false
|
||||
11
developer-front/.env.development
Normal file
@@ -0,0 +1,11 @@
|
||||
# 页面标题
|
||||
VUE_APP_TITLE=觉远创智配件系统
|
||||
|
||||
# 开发环境配置
|
||||
ENV = 'development'
|
||||
|
||||
# 觉远创智管理系统/开发环境
|
||||
VUE_APP_BASE_API = '/dev-api'
|
||||
|
||||
# 路由懒加载
|
||||
VUE_CLI_BABEL_TRANSPILE_MODULES = true
|
||||
8
developer-front/.env.production
Normal file
@@ -0,0 +1,8 @@
|
||||
# 页面标题
|
||||
VUE_APP_TITLE=觉远创智配件系统
|
||||
|
||||
# 生产环境配置
|
||||
ENV = 'production'
|
||||
|
||||
# 觉远创智管理系统/生产环境
|
||||
VUE_APP_BASE_API = '/prod-api'
|
||||
10
developer-front/.env.staging
Normal file
@@ -0,0 +1,10 @@
|
||||
# 页面标题
|
||||
VUE_APP_TITLE=觉远创智配件系统
|
||||
|
||||
NODE_ENV = production
|
||||
|
||||
# 测试环境配置
|
||||
ENV = 'staging'
|
||||
|
||||
# 觉远创智管理系统/测试环境
|
||||
VUE_APP_BASE_API = '/stage-api'
|
||||
10
developer-front/.eslintignore
Normal file
@@ -0,0 +1,10 @@
|
||||
# 忽略build目录下类型为js的文件的语法检查
|
||||
build/*.js
|
||||
# 忽略src/assets目录下文件的语法检查
|
||||
src/assets
|
||||
# 忽略public目录下文件的语法检查
|
||||
public
|
||||
# 忽略当前目录下为js的文件的语法检查
|
||||
*.js
|
||||
# 忽略当前目录下为vue的文件的语法检查
|
||||
*.vue
|
||||
199
developer-front/.eslintrc.js
Normal file
@@ -0,0 +1,199 @@
|
||||
// ESlint 检查配置
|
||||
module.exports = {
|
||||
root: true,
|
||||
parserOptions: {
|
||||
parser: 'babel-eslint',
|
||||
sourceType: 'module'
|
||||
},
|
||||
env: {
|
||||
browser: true,
|
||||
node: true,
|
||||
es6: true,
|
||||
},
|
||||
extends: ['plugin:vue/recommended', 'eslint:recommended'],
|
||||
|
||||
// add your custom rules here
|
||||
//it is base on https://github.com/vuejs/eslint-config-vue
|
||||
rules: {
|
||||
"vue/max-attributes-per-line": [2, {
|
||||
"singleline": 10,
|
||||
"multiline": {
|
||||
"max": 1,
|
||||
"allowFirstLine": false
|
||||
}
|
||||
}],
|
||||
"vue/singleline-html-element-content-newline": "off",
|
||||
"vue/multiline-html-element-content-newline":"off",
|
||||
"vue/name-property-casing": ["error", "PascalCase"],
|
||||
"vue/no-v-html": "off",
|
||||
'accessor-pairs': 2,
|
||||
'arrow-spacing': [2, {
|
||||
'before': true,
|
||||
'after': true
|
||||
}],
|
||||
'block-spacing': [2, 'always'],
|
||||
'brace-style': [2, '1tbs', {
|
||||
'allowSingleLine': true
|
||||
}],
|
||||
'camelcase': [0, {
|
||||
'properties': 'always'
|
||||
}],
|
||||
'comma-dangle': [2, 'never'],
|
||||
'comma-spacing': [2, {
|
||||
'before': false,
|
||||
'after': true
|
||||
}],
|
||||
'comma-style': [2, 'last'],
|
||||
'constructor-super': 2,
|
||||
'curly': [2, 'multi-line'],
|
||||
'dot-location': [2, 'property'],
|
||||
'eol-last': 2,
|
||||
'eqeqeq': ["error", "always", {"null": "ignore"}],
|
||||
'generator-star-spacing': [2, {
|
||||
'before': true,
|
||||
'after': true
|
||||
}],
|
||||
'handle-callback-err': [2, '^(err|error)$'],
|
||||
'indent': [2, 2, {
|
||||
'SwitchCase': 1
|
||||
}],
|
||||
'jsx-quotes': [2, 'prefer-single'],
|
||||
'key-spacing': [2, {
|
||||
'beforeColon': false,
|
||||
'afterColon': true
|
||||
}],
|
||||
'keyword-spacing': [2, {
|
||||
'before': true,
|
||||
'after': true
|
||||
}],
|
||||
'new-cap': [2, {
|
||||
'newIsCap': true,
|
||||
'capIsNew': false
|
||||
}],
|
||||
'new-parens': 2,
|
||||
'no-array-constructor': 2,
|
||||
'no-caller': 2,
|
||||
'no-console': 'off',
|
||||
'no-class-assign': 2,
|
||||
'no-cond-assign': 2,
|
||||
'no-const-assign': 2,
|
||||
'no-control-regex': 0,
|
||||
'no-delete-var': 2,
|
||||
'no-dupe-args': 2,
|
||||
'no-dupe-class-members': 2,
|
||||
'no-dupe-keys': 2,
|
||||
'no-duplicate-case': 2,
|
||||
'no-empty-character-class': 2,
|
||||
'no-empty-pattern': 2,
|
||||
'no-eval': 2,
|
||||
'no-ex-assign': 2,
|
||||
'no-extend-native': 2,
|
||||
'no-extra-bind': 2,
|
||||
'no-extra-boolean-cast': 2,
|
||||
'no-extra-parens': [2, 'functions'],
|
||||
'no-fallthrough': 2,
|
||||
'no-floating-decimal': 2,
|
||||
'no-func-assign': 2,
|
||||
'no-implied-eval': 2,
|
||||
'no-inner-declarations': [2, 'functions'],
|
||||
'no-invalid-regexp': 2,
|
||||
'no-irregular-whitespace': 2,
|
||||
'no-iterator': 2,
|
||||
'no-label-var': 2,
|
||||
'no-labels': [2, {
|
||||
'allowLoop': false,
|
||||
'allowSwitch': false
|
||||
}],
|
||||
'no-lone-blocks': 2,
|
||||
'no-mixed-spaces-and-tabs': 2,
|
||||
'no-multi-spaces': 2,
|
||||
'no-multi-str': 2,
|
||||
'no-multiple-empty-lines': [2, {
|
||||
'max': 1
|
||||
}],
|
||||
'no-native-reassign': 2,
|
||||
'no-negated-in-lhs': 2,
|
||||
'no-new-object': 2,
|
||||
'no-new-require': 2,
|
||||
'no-new-symbol': 2,
|
||||
'no-new-wrappers': 2,
|
||||
'no-obj-calls': 2,
|
||||
'no-octal': 2,
|
||||
'no-octal-escape': 2,
|
||||
'no-path-concat': 2,
|
||||
'no-proto': 2,
|
||||
'no-redeclare': 2,
|
||||
'no-regex-spaces': 2,
|
||||
'no-return-assign': [2, 'except-parens'],
|
||||
'no-self-assign': 2,
|
||||
'no-self-compare': 2,
|
||||
'no-sequences': 2,
|
||||
'no-shadow-restricted-names': 2,
|
||||
'no-spaced-func': 2,
|
||||
'no-sparse-arrays': 2,
|
||||
'no-this-before-super': 2,
|
||||
'no-throw-literal': 2,
|
||||
'no-trailing-spaces': 2,
|
||||
'no-undef': 2,
|
||||
'no-undef-init': 2,
|
||||
'no-unexpected-multiline': 2,
|
||||
'no-unmodified-loop-condition': 2,
|
||||
'no-unneeded-ternary': [2, {
|
||||
'defaultAssignment': false
|
||||
}],
|
||||
'no-unreachable': 2,
|
||||
'no-unsafe-finally': 2,
|
||||
'no-unused-vars': [2, {
|
||||
'vars': 'all',
|
||||
'args': 'none'
|
||||
}],
|
||||
'no-useless-call': 2,
|
||||
'no-useless-computed-key': 2,
|
||||
'no-useless-constructor': 2,
|
||||
'no-useless-escape': 0,
|
||||
'no-whitespace-before-property': 2,
|
||||
'no-with': 2,
|
||||
'one-var': [2, {
|
||||
'initialized': 'never'
|
||||
}],
|
||||
'operator-linebreak': [2, 'after', {
|
||||
'overrides': {
|
||||
'?': 'before',
|
||||
':': 'before'
|
||||
}
|
||||
}],
|
||||
'padded-blocks': [2, 'never'],
|
||||
'quotes': [2, 'single', {
|
||||
'avoidEscape': true,
|
||||
'allowTemplateLiterals': true
|
||||
}],
|
||||
'semi': [2, 'never'],
|
||||
'semi-spacing': [2, {
|
||||
'before': false,
|
||||
'after': true
|
||||
}],
|
||||
'space-before-blocks': [2, 'always'],
|
||||
'space-before-function-paren': [2, 'never'],
|
||||
'space-in-parens': [2, 'never'],
|
||||
'space-infix-ops': 2,
|
||||
'space-unary-ops': [2, {
|
||||
'words': true,
|
||||
'nonwords': false
|
||||
}],
|
||||
'spaced-comment': [2, 'always', {
|
||||
'markers': ['global', 'globals', 'eslint', 'eslint-disable', '*package', '!', ',']
|
||||
}],
|
||||
'template-curly-spacing': [2, 'never'],
|
||||
'use-isnan': 2,
|
||||
'valid-typeof': 2,
|
||||
'wrap-iife': [2, 'any'],
|
||||
'yield-star-spacing': [2, 'both'],
|
||||
'yoda': [2, 'never'],
|
||||
'prefer-const': 2,
|
||||
'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0,
|
||||
'object-curly-spacing': [2, 'always', {
|
||||
objectsInObjects: false
|
||||
}],
|
||||
'array-bracket-spacing': [2, 'never']
|
||||
}
|
||||
}
|
||||
23
developer-front/.gitignore
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
.DS_Store
|
||||
node_modules/
|
||||
dist/
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
**/*.log
|
||||
|
||||
tests/**/coverage/
|
||||
tests/e2e/reports
|
||||
selenium-debug.log
|
||||
|
||||
# Editor directories and files
|
||||
.idea
|
||||
.vscode
|
||||
*.suo
|
||||
*.ntvs*
|
||||
*.njsproj
|
||||
*.sln
|
||||
*.local
|
||||
|
||||
package-lock.json
|
||||
yarn.lock
|
||||
1
developer-front/.npmrc
Normal file
@@ -0,0 +1 @@
|
||||
legacy-peer-deps=true
|
||||
30
developer-front/README.md
Normal file
@@ -0,0 +1,30 @@
|
||||
## 开发
|
||||
|
||||
```bash
|
||||
# 克隆项目
|
||||
git clone https://gitee.com/y_project/RuoYi-Vue
|
||||
|
||||
# 进入项目目录
|
||||
cd ruoyi-ui
|
||||
|
||||
# 安装依赖
|
||||
npm install
|
||||
|
||||
# 建议不要直接使用 cnpm 安装依赖,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题
|
||||
npm install --registry=https://registry.npmmirror.com
|
||||
|
||||
# 启动服务
|
||||
npm run dev
|
||||
```
|
||||
|
||||
浏览器访问 http://localhost:80
|
||||
|
||||
## 发布
|
||||
|
||||
```bash
|
||||
# 构建测试环境
|
||||
npm run build:stage
|
||||
|
||||
# 构建生产环境
|
||||
npm run build:prod
|
||||
```
|
||||
13
developer-front/babel.config.js
Normal file
@@ -0,0 +1,13 @@
|
||||
module.exports = {
|
||||
presets: [
|
||||
// https://github.com/vuejs/vue-cli/tree/master/packages/@vue/babel-preset-app
|
||||
'@vue/cli-plugin-babel/preset'
|
||||
],
|
||||
'env': {
|
||||
'development': {
|
||||
// babel-plugin-dynamic-import-node plugin only does one thing by converting all import() to require().
|
||||
// This plugin can significantly increase the speed of hot updates, when you have a large number of pages.
|
||||
'plugins': ['dynamic-import-node']
|
||||
}
|
||||
}
|
||||
}
|
||||
1
developer-front/backup/.htaccess
Normal file
@@ -0,0 +1 @@
|
||||
|
||||
1
developer-front/backup/.user.ini
Normal file
@@ -0,0 +1 @@
|
||||
open_basedir=/www/wwwroot/www.jueyuantech.com/:/tmp/
|
||||
@@ -0,0 +1 @@
|
||||
YVr2ETdUfLo23TEb2Nn45a_CPBkOK7uVOKyUWyp06lU.Kgq3Eej7kBQmYeRIImv7g98fI4mVhg3Lk5VSDIQ5w9g
|
||||
@@ -0,0 +1 @@
|
||||
4ffcd81362d1a03566e39eff1205cf780dbd3d2e
|
||||
110
developer-front/backup/agreement/smartglasses_policy.html
Normal file
@@ -0,0 +1,110 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<meta http-equiv="Cache-Control" content="no-store" />
|
||||
<title>隐私政策</title>
|
||||
<style type="text/css">
|
||||
body {
|
||||
font-size: 16px;
|
||||
background: rgba(253, 246, 236, 1);
|
||||
}
|
||||
p {
|
||||
text-indent: 2em;
|
||||
max-width: 100%;
|
||||
word-break: break-all;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="purchase-agreement">
|
||||
<p style="text-indent: 0">SmartGlasses隐私政策</br>
|
||||
更新时间:2025-03-06</p>
|
||||
<h3>引言</h3>
|
||||
<p>金华觉远创智科技有限公司(下称“觉远创智”或“我们”)充分重视您的个人信息权利,为保证您可以完整使用SmartGlasses(下称“本产品/服务”),我们将在您首次使用前以弹窗等显著形式告知本政策,阐明我们通过本产品/服务如何收集、使用、存储和保护您的个人信息,以及本产品业务功能对应的相关权限和申请权限的目的。若您选择拒绝提供相关业务功能对应的必要个人信息,或拒绝授予相关业务功能对应的必要权限,我们将很遗憾不能为您提供对应的功能服务。</p>
|
||||
<h3>我们如何收集和使用您的个人信息</h3>
|
||||
<p>您使用SmartGlasses账号或完善个人资料时,我们收集相关信息以完成注册、登录流程。您也可以使用第三方平台账号登录并使用本服务,您将授权我们获取您在第三方平台注册的公开信息(头像、昵称、手机号等),用于与本服务账号绑定。</p>
|
||||
<p>您使用本服务对应功能,或对设备进行连接、绑定、固件升级时,我们会收集使用<span style="font-weight: bold;">设备信息(厂商、型号等设备标识符,蓝牙Mac地址,设备序列号,固件版本信息等)、设备配置项、终端信息(品牌、型号、系统版本号、设备标识符和存储空间等)、应用信息(名称、包名、软件版本号等)</span>,以实现设备发现、绑定、维持设备与本应用的连接状态,使用本服务对应功能。</p>
|
||||
<p>您使用转写、翻译、语音助手功能时,我们会通过本应用收集使用您的语音,上传至语音服务供应商的服务端,由其完成转写、翻译、语义分析、对话应答后将结果回传至本应用,本应用随即会将内容同步至设备端和您的账号下。</p>
|
||||
<p>您使用通知提醒时,我们会收集使用您的通知信息和来电信息,以及终端应用安装列表。
|
||||
</p>
|
||||
<p>您使用提词器功能时,我们会收集使用您导入的提词文档信息。</p>
|
||||
<p>您查看天气信息时,我们会收集使用您的天气信息、城市信息、日期信息。</p>
|
||||
<p>您使用运动和健康功能时,我们会收集使用您在终端或授权第三方服务的实时运动和健康信息。</p>
|
||||
<p>需要授予的权限:</p>
|
||||
<ul>
|
||||
<li><strong>网络权限:</strong>用于使用 WLAN 和蜂窝网络;</li>
|
||||
<li><strong>蓝牙权限:</strong>用于快速查找、连接设备,并进行设备通信;</li>
|
||||
<li><strong>位置权限:</strong>用于快速查找、连接设备、基于位置提供的相关服务;</li>
|
||||
<li><strong>相机权限:</strong>用于反馈视频拍摄、账号个人头像设置等功能;</li>
|
||||
<li><strong>相册权限:</strong>用于将您主动下载的视频、图片信息同步至您的手机;</li>
|
||||
<li><strong>存储空间权限:</strong>用于将设备拍摄的照片及文件存储至本地相册;</li>
|
||||
<li><strong>麦克风权限:</strong>用于基于语音提供的相关服务;</li>
|
||||
<li><strong>通知转发权限:</strong>用于将手机的部分通知转发至绑定的设备;</li>
|
||||
<li><strong>读取电话权限:</strong>用于快速注册环节的功能服务;</li>
|
||||
<li><strong>运动健康权限:</strong>用户获取和显示运动健康数据;</li>
|
||||
<li><strong>自启动及关联启动权限:</strong>用于设备持续服务、固件升级或快速启动场景。</li>
|
||||
</ul>
|
||||
<h3>我们如何委托处理、共享、转让和公开您的个人信息</h3>
|
||||
<h4>委托</h4>
|
||||
<p>我们可能委托授权合作伙伴处理您的个人信息,代表我们为您提供某些服务或履行职能。我们会与受托方签署委托处理协议或共同遵守相关个人信息处理规则,以保障个人信息安全。</p>
|
||||
<h4>共享</h4>
|
||||
<p>通常情况下我们不会对外共享您的个人信息,以下情况除外:</p>
|
||||
<ul>
|
||||
<li>获得您明确同意后,向第三方共享您授权范围内的个人信息;</li>
|
||||
<li>根据法律法规规定、诉讼争议解决,或按相关行政、司法机关依法提出的要求,为履行法定义务或法定职责所必需的共享;</li>
|
||||
<li>出于合法、正当、必要、特定、明确的目的,共享您使用服务所必要的个人信息到第三方服务供应商,包括我们的物流供应商、数据中心、数据存储设施、客户服务供应商、广告和营销服务供应商以及其他业务合作伙伴。</li>
|
||||
</ul>
|
||||
<p>本服务接入第三方服务如下:</p>
|
||||
<p style="text-indent: 0;"><strong>SDK名称:</strong>友盟SDK</p>
|
||||
<p style="text-indent: 0;"><em>个人信息种类:</em>设备信息(IMEI、Mac/android ID、IDFA、OPENUDID、GUID、SIM卡IMSI信息、地址位置等);获取已安装APP信息</p>
|
||||
<p style="text-indent: 0;"><a href="https://www.umeng.com/page/policy" target="_blank">https://www.umeng.com/page/policy</a></p>
|
||||
|
||||
<p style="text-indent: 0;"><strong>SDK名称:</strong>高德地图开放平台 SDK</p>
|
||||
<p style="text-indent: 0;"><em>个人信息种类:</em>位置信息(精准位置、粗略位置、经纬度);设备信息(如IP 地址、GNSS信息、WiFi状态、WiFi参数、WiFi列表、SSID、BSSID、基站信息、WiFi信号强度的信息、蓝牙信息、传感器信息(矢量、加速度、压力、方向、地磁 、陀螺、温度、光敏、nema信号)、设备信号强度信息、外部存储目录;设备标识信息(IMEI、IDFA、IDFV、Android ID、MEID、MAC地址、OAID、IMSI、ICCID、硬件序列号)、当前应用信息(应用名、应用版本号)、设备参数及系统信息(系统属性、设备品牌及型号、操作系统、运营商信息)、屏幕分辨率</p>
|
||||
<p style="text-indent: 0;"><a href="https://lbs.amap.com/pages/privacy/" target="_blank">https://lbs.amap.com/pages/privacy/</a></p>
|
||||
|
||||
<p style="text-indent: 0;"><strong>第三方名称:</strong>讯飞语音服务</p>
|
||||
<p style="text-indent: 0;"><em>个人信息种类:</em>录音数据</p>
|
||||
<p style="text-indent: 0;"><a href="https://www.xfyun.cn/doc/total_sdk_privacy/lfasr_privacy.html" target="_blank">https://www.xfyun.cn/doc/total_sdk_privacy/lfasr_privacy.html</a></p>
|
||||
|
||||
<p style="text-indent: 0;"><strong>SDK名称:</strong>讯飞星火大模型SDK</p>
|
||||
<p style="text-indent: 0;"><em>个人信息种类:</em>录音数据</p>
|
||||
<p style="text-indent: 0;"><a href="https://www.xfyun.cn/doc/total_sdk_privacy/spark_privacy.html" target="_blank">https://www.xfyun.cn/doc/total_sdk_privacy/spark_privacy.html</a></p>
|
||||
|
||||
<p style="text-indent: 0;"><strong>第三方名称:</strong>思必驰语音服务</p>
|
||||
<p style="text-indent: 0;"><em>个人信息种类:</em>录音数据</p>
|
||||
<p style="text-indent: 0;"><a href="https://www.duiopen.com/docs/ct_privacyAgreement" target="_blank">https://www.duiopen.com/docs/ct_privacyAgreement</a></p>
|
||||
|
||||
<p style="text-indent: 0;"><strong>第三方名称:</strong>微软Azure语音服务</p>
|
||||
<p style="text-indent: 0;"><em>个人信息种类:</em>录音数据</p>
|
||||
<p style="text-indent: 0;"><a href="https://learn.microsoft.com/zh-cn/legal/cognitive-services/speech-service/speech-to-text/data-privacy-security" target="_blank">https://learn.microsoft.com/zh-cn/legal/cognitive-services/speech-service/speech-to-text/data-privacy-security</a></p>
|
||||
<h3>
|
||||
转让
|
||||
</h3>
|
||||
<p>转让发生在涉及合并、分立、解散、收购或被宣告破产时,如涉及到个人信息转移,我们会提前向您告知接收方的名称和联系方式,要求接收方继续按照本声明处理您的个人信息。</p>
|
||||
<h3>公开</h3>
|
||||
<p>我们仅会在获得您的同意,或基于法律程序、诉讼或公共和政府主管部门有要求的情况下,公开您的个人信息。</p>
|
||||
<h3>我们如何存储您的个人信息</h3>
|
||||
<h4>存储地点</h4>
|
||||
<p>我们依照法律法规的规定,运营过程中收集和产生的个人信息,将在中华人民共和国大陆地区(以下简称“境内”)的服务器存储。如需我们将严格依照法律的规定执行转移。</p>
|
||||
<h4>存储期限</h4>
|
||||
<p>我们依照法律法规的规定,在合理必要期限内存储您个人信息。超出必要的存储期限后,或当我们的产品或服务发生停止运营的情形时,我们会根据法律法规要求,尽快对您的个人信息进行删除或匿名化处理。</p>
|
||||
<h3>我们如何保护您的个人信息</h3>
|
||||
<p>我们非常重视对用户的个人信息提供安全保障,将努力采取各种符合行业标准的安全措施,包括但不限于HTTPS、加密技术、去标识化、本地存储和处理,以及数据中心的访问控制等,来保护您的个人信息,以最大程度降低您的个人信息被丢失、毁损、盗用、泄露、非授权访问、使用、披露和更改的风险。</p>
|
||||
<h3>您的个人信息主体权利</h3>
|
||||
<p>您对于个人信息有查询、更新、变更、导出、删除以及撤回同意的权利,本服务通过界面交互方式为您提供相关操作途径。</p>
|
||||
<ul>
|
||||
<li>通过「我的」-「个人头像」,「我的」-「账号中心」,进行访问、更正自己的个人资料,含头像、昵称、性别、生日、所在城市等;</li>
|
||||
<li>通过「我的」-「权限管理」,查看、授权和取消权限;</li>
|
||||
<li>通过「我的」-「关于」- 「服务协议」和「隐私政策」中查看相关协议和政策;</li>
|
||||
<li>通过「我的」-「账号中心」-「注销账号」进行账号的注销;</li>
|
||||
<li>通过「设置」-「移除设备」对绑定的设备进行移除。</li>
|
||||
</ul>
|
||||
<h3>联系我们</h3>
|
||||
<p>您可以通过「我的」-「用户反馈」来联系我们。</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
129
developer-front/backup/agreement/smartglasses_terms.html
Normal file
@@ -0,0 +1,129 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<meta http-equiv="Cache-Control" content="no-store" />
|
||||
<title>用户协议</title>
|
||||
<style type="text/css">
|
||||
body {
|
||||
font-size: 16px;
|
||||
background: rgba(253, 246, 236, 1);
|
||||
}
|
||||
p {
|
||||
text-indent: 2em;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="purchase-agreement">
|
||||
<p style="text-indent: 0">SmartGlasses用户协议</br> 更新日期:2024-10-15</p>
|
||||
<h3>引言</h3>
|
||||
<p>
|
||||
本协议是您(以下简称“您”或“用户”)就使用SmartGlasses(以下简称“本软件”)的相关服务(以下或称“本服务”)所订立的协议。我们针对本服务不时发布的其他服务条款、使用指南、规则提示也是本协议的组成部分。请仔细阅读并充分理解本协议,并承诺您具备与您相适应的民事行为能力来同意和履行本协议,未成年人应在法定监护人陪同下阅读本协议。当您按照界面提示同意本协议或使用本服务时,即表示您已充分阅读、理解并接受本协议的全部内容。若您不同意本协议的任意条款,请勿使用本软件或本服务。
|
||||
</p>
|
||||
<h3>服务内容</h3>
|
||||
<p>
|
||||
本软件为用户提供转写、翻译、导航、提醒、语音助手服务,具体服务内容由我们根据实际情况向您提供。部分功能因区域差异受到限制,因此这些服务未必能以各种语言或在各个区域使用。
|
||||
</p>
|
||||
<p>
|
||||
您在使用本服务过程中消耗的网络流量会产生数据流量费用,您理解并同意由您自行负担。
|
||||
本服务中部分功能以收费的方式向您提供(以下简称“付费功能”),购买前,请您仔细阅读对应付费功能的服务详情、购买须知、用户条款、使用规则和常见问题,如您购买则表示您接受并同意条款及规则的全部内容。
|
||||
</p>
|
||||
<p>
|
||||
为向您提供更好服务内容和体验,本软件会不时的向您提供软件更新。更新内容包括对问题的修复、改进,以及对性能、安全性、可靠性的提升。软件更新或采用不同的下载、安装方式,您理解及时接收和安装更新的必要性。如您决定不安装/更新软件更新内容,您可能将本软件置于严重的安全风险,并可能导致服务或功能不可用或不稳定。在更新前,请仔细阅读相关更新内容及安全提示。
|
||||
</p>
|
||||
<h3>第三方服务</h3>
|
||||
<p>
|
||||
您知悉并同意,本服务涉及的第三方产品及相关服务均由第三方独立向您提供,本服务不参与也不就第三方提供的任何内容、广告、产品、服务或其他信息的合法性、有效性、安全性、准确性做任何提示和保证,请您仔细阅读相关产品用户协议和规则。
|
||||
</p>
|
||||
<p>
|
||||
转写翻译服务:您知悉并同意本服务基于第三方技术实现,我们无法确保结果的准确性,相关输出内容仅能供您参考,您在任何时候都不应完全依赖于本服务中获得的内容而作出决策,否则您应自行承担不利后果,与本服务无关。
|
||||
</p>
|
||||
<p>
|
||||
语音助手服务:您知悉并同意本服务基于第三方技术模型完成,根据用户的输入,对话式生成和提炼服务结果,我们无法对其展示内容的合法性、有效性、安全性、准确性负责,相关内容仅能供您参考。
|
||||
</p>
|
||||
<h3>服务提示</h3>
|
||||
<p>
|
||||
请您确保了解相关功能的使用须知和注意事项后,在预期的合理使用方式下使用本服务,因您不当使用而产生的责任由您自行承担。
|
||||
</p>
|
||||
<p>
|
||||
您知悉并同意,使用本服务(及绑定的智能眼镜)可能会导致眼部疲劳,如果您的身体感到任何不适或患有特定疾病,请立即停止使用并咨询医生。
|
||||
</p>
|
||||
<p>
|
||||
我们不能完全确保您使用时不同环境下视野的清晰度,为了您的安全,请您在检查周围环境确保安全的情况下使用本服务(及绑定的智能眼镜)。部分型号产品在使用时会遮挡真实环境景象,请勿在行车、骑车、驾驶等需要集中注意力的场合使用该型号的产品,您应遵守交通及道路法律法规,确保交通安全,以免发生交通事故或其他危险情况对您的人身和财产造成不必要的损害。
|
||||
</p>
|
||||
<p>
|
||||
部分型号产品需配合视力调节眼镜(屈光夹片或隐形眼镜)使用,请尽量避免您的视力调节眼镜和智能眼镜互相磨伤或刮伤,否则影响视觉和效果。
|
||||
</p>
|
||||
<p>
|
||||
由于未成年人正处于视力发育的关键时期,未成年人请在咨询医生后使用本产品及服务。
|
||||
</p>
|
||||
<p>
|
||||
如果您出售、转让或报废绑定的智能眼镜,请务必还原本服务(及绑定的智能眼镜),恢复出厂设置并及时清除用户数据。否则由此导致的信息泄露,以及智能眼镜转让后智能眼镜所有人的任何操作记录仍然与您绑定等风险,均由您自行承担相关责任。
|
||||
</p>
|
||||
<h3>账号规则</h3>
|
||||
<p>
|
||||
在注册、使用、访问本服务时,您承诺向我们提供您本人真实、准确、有效信息(如手机号码、电子邮件地址、实名认证信息等),在账号信息发生变更时及时更新对应信息。如因提供错误、不完整、不实信息所导致的不能正常使用本服务的后果由您自行承担。
|
||||
</p>
|
||||
<p>
|
||||
您在本服务注册后即享有该账号的使用权,您的账号仅限于您本人使用,请妥善保管账号及密码,禁止以任何形式赠与、借用、出租、转让、售卖或以其他方式许可他人使用该账号,否则我们有权停止或终止向该注册账号提供服务,并有权注销该账号。
|
||||
</p>
|
||||
<p>
|
||||
您理解并同意,在符合法律法规的前提下,我们有权采取必要的措施确保您提交的内容遵守本协议及适用的法律。若我们发现您提交的内容有违法或不良信息,我们有权拒绝注册、停用、注销账号。
|
||||
</p>
|
||||
<p>
|
||||
您知悉并同意,注销账号是不可逆的永久操作,请您在执行注销操作前,确认已详细阅读相关的提示、说明、声明等内容,自行承担注销账号可能带来的后果。
|
||||
</p>
|
||||
<h3>个人信息保护</h3>
|
||||
<p>
|
||||
我们非常重视您的个人信息保护,在为您提供便捷、高效的服务的同时,我们在遵守法律法规的前提下,按照本协议和《隐私政策》来收集、使用、存储、披露和保护您的个人信息。请您在使用服务前,仔细阅读并充分理解《隐私政策》的内容,以便了解您的权利和我们的责任
|
||||
</p>
|
||||
<h3>使用规范</h3>
|
||||
<p>
|
||||
您同意并承诺在遵守法律和本协议的情况下使用本服务,期间不得实施任何违反相关法律法规或侵犯他人合法权益的行为,包括但不限于:
|
||||
</p>
|
||||
<ul>
|
||||
<li>
|
||||
利用本服务从事任何违法活动,发布、上传、存储、下载、传播、传输任何法律、法规、规章、条例以及任何具有法律效力之规范所限制或禁止的内容;
|
||||
</li>
|
||||
<li>
|
||||
对本服务进行复制、变更、反向工程、反汇编、反编译、拆装、企图导出其源代码、解码等,任何增加、删减、变动本服务的功能,影响本服务正常运行的行为;
|
||||
</li>
|
||||
<li>
|
||||
未经授权变动本服务的软件、页面标识、服务品牌、资讯、信息等任意部分;
|
||||
</li>
|
||||
<li>
|
||||
通过任何措施以规避、破坏本服务设置的安全措施或安全策略;未经授权变动本服务的软件、页面标识、服务品牌、资讯、信息等任意部分;
|
||||
</li>
|
||||
<li>
|
||||
通过任何手段记录、爬取,或以其他不合法、不合规的方式获取本服务的各项数据内容,收集本服务用户的信息
|
||||
</li>
|
||||
<li>
|
||||
通过任何自动化手段来访问本服务,或试图通过破译,向运行本服务的服务器中传入任何内容或从中提取任何内容。
|
||||
</li>
|
||||
</ul>
|
||||
<h3>免责声明</h3>
|
||||
<p>
|
||||
本服务按照“现状”和“现有”提供,不保证本服务或承载本服务的服务器是否存在缺陷、错误、病毒、漏洞或其他有害元素,不保证本服务运营或功能方面的缺陷是否会得到修正,
|
||||
不保证通过本服务获得的信息内容(包括但不限于调用的第三方服务内容)的合法性、真实性、准确性、有效性。
|
||||
</p>
|
||||
<p>
|
||||
您理解并同意,因软硬件维护升级导致的服务中止或终止,因台风、地震、停电、洪水、战争、恐怖袭击等不可抗力因素导致的服务中断,因系统或网络通讯延迟或出现故障,因第三方故障导致本服务不能正常运行,因黑客攻击、计算机病毒和攻击破坏或类似的危害影响导致错误或中断,以及其它超过我们合理控制的原因导致本服务异常,我们不承担任何责任。
|
||||
</p>
|
||||
<h3>知识产权声明</h3>
|
||||
<p>
|
||||
本软件的一切著作权、商标权、专利权、商业秘密等知识产权,以及与本软件相关的所有信息内容(包括但不限于文字、图片、音频、视频、图表、界面设计、版面框架、有关数据或电子文档等)均受当地法律法规和相应的国际条约保护,未经书面同意,您不得为任何商业或非商业目的自行或许可任何第三方实施、利用、转让上述知识产权,我们保留追究上述行为法律责任的权利。
|
||||
</p>
|
||||
<h3>协议修订</h3>
|
||||
<p>
|
||||
知悉并同意,我们有权根据有关法律法规的变化、互联网的发展以及公司经营状况和经营策略的调整等因素,在必要时修订本协议。如果您不接受修订后的协议内容,请立即停止使用本服务,您继续使用本服务将被视为接受修改后的本协议全部内容。
|
||||
</p>
|
||||
<h3>协议终止</h3>
|
||||
<p>
|
||||
依照适用法律、自身经营的实际需要,以及因您存在违反法律法规规定或本协议约定的情形,或我们有理由认为您可能违反法律法规或本协议约定的情形下,我们有权中止、限制、取消或终止您访问部分或全部本服务,而不对任何个人或第三方承担任何责任。
|
||||
</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
33
developer-front/backup/css/chunk-vendors.da646636.css
Normal file
1
developer-front/backup/css/index.1704507a.css
Normal file
BIN
developer-front/backup/favicon.ico
Normal file
|
After Width: | Height: | Size: 4.1 KiB |
BIN
developer-front/backup/guide/images.zip
Normal file
BIN
developer-front/backup/guide/images/01.png
Normal file
|
After Width: | Height: | Size: 242 KiB |
BIN
developer-front/backup/guide/images/02.png
Normal file
|
After Width: | Height: | Size: 161 KiB |
BIN
developer-front/backup/guide/images/03.png
Normal file
|
After Width: | Height: | Size: 142 KiB |
BIN
developer-front/backup/guide/images/04.png
Normal file
|
After Width: | Height: | Size: 75 KiB |
BIN
developer-front/backup/guide/images/05.png
Normal file
|
After Width: | Height: | Size: 75 KiB |
BIN
developer-front/backup/guide/images/06.png
Normal file
|
After Width: | Height: | Size: 74 KiB |
BIN
developer-front/backup/guide/images/07.png
Normal file
|
After Width: | Height: | Size: 185 KiB |
BIN
developer-front/backup/guide/images/08.png
Normal file
|
After Width: | Height: | Size: 142 KiB |
BIN
developer-front/backup/guide/images/09.png
Normal file
|
After Width: | Height: | Size: 60 KiB |
BIN
developer-front/backup/guide/images/10.png
Normal file
|
After Width: | Height: | Size: 60 KiB |
BIN
developer-front/backup/guide/images/11.png
Normal file
|
After Width: | Height: | Size: 130 KiB |
BIN
developer-front/backup/guide/images/12.png
Normal file
|
After Width: | Height: | Size: 126 KiB |
BIN
developer-front/backup/guide/images/13.png
Normal file
|
After Width: | Height: | Size: 121 KiB |
BIN
developer-front/backup/guide/images/14.png
Normal file
|
After Width: | Height: | Size: 67 KiB |
191
developer-front/backup/guide/index.html
Normal file
@@ -0,0 +1,191 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>操作指南</title>
|
||||
<style>
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 20px;
|
||||
background-color: #EEEEF0;
|
||||
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
||||
}
|
||||
|
||||
.container {
|
||||
max-width: 800px;
|
||||
margin: 0 auto;
|
||||
background: white;
|
||||
border-radius: 12px;
|
||||
overflow: hidden;
|
||||
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
.header {
|
||||
background: #333;
|
||||
color: white;
|
||||
padding: 20px;
|
||||
text-align: center;
|
||||
font-size: 24px;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.content {
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
.image-container {
|
||||
margin-bottom: 30px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.image-container img {
|
||||
max-width: 100%;
|
||||
height: auto;
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
.image-title {
|
||||
margin-top: 10px;
|
||||
font-size: 16px;
|
||||
color: #666;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
.header-img {
|
||||
width: 100%;
|
||||
height: auto;
|
||||
display: block;
|
||||
max-width: 800px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.header-title {
|
||||
color: rgba(16, 16, 16, 1);
|
||||
font-size: 4vw;
|
||||
font-weight: 600;
|
||||
text-align: left;
|
||||
position: absolute;
|
||||
top: 100px;
|
||||
right: 10vw;
|
||||
}
|
||||
|
||||
.product-description {
|
||||
width: 20vw;
|
||||
height: 6vw;
|
||||
font-size: 3vw;
|
||||
line-height: 6vw;
|
||||
background: #000;
|
||||
color: #fff;
|
||||
border-radius: 3vw;
|
||||
font-weight: 400;
|
||||
text-align: center;
|
||||
margin: 0 auto;
|
||||
margin-top: 10vw;
|
||||
margin-bottom: 10vw;
|
||||
}
|
||||
.description{
|
||||
font-size: 2.5vw;
|
||||
font-weight: 400;
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.installation-steps {
|
||||
padding: 0 6vw;
|
||||
margin-bottom: 10vw;
|
||||
}
|
||||
|
||||
.step {
|
||||
display: flex;
|
||||
align-items: flex-start;
|
||||
font-size: 2.5vw;
|
||||
line-height: 5vw;
|
||||
}
|
||||
|
||||
.step-number {
|
||||
color: #007AFF;
|
||||
font-weight: 600;
|
||||
margin-right: 2vw;
|
||||
min-width: 2vw;
|
||||
}
|
||||
|
||||
.step-text {
|
||||
color: #000;
|
||||
flex: 1;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<img class="header-img" src="./images/01.png" alt="产品概览">
|
||||
<p class="header-title">操作指南</p>
|
||||
<div class="container">
|
||||
<div class="content">
|
||||
<div class="product-description">产品描述</div>
|
||||
<div class="image-container">
|
||||
<img src="./images/02.png" alt="描述">
|
||||
</div>
|
||||
|
||||
<div class="image-container">
|
||||
<img src="./images/03.png" alt="描述">
|
||||
</div>
|
||||
<div class="product-description">操作指南</div>
|
||||
<div class="image-container">
|
||||
<img src="./images/04.png" alt="电源键">
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="./images/09.png" alt="短按">
|
||||
</div>
|
||||
|
||||
<div class="image-container">
|
||||
<img src="./images/10.png" alt="长按">
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="./images/06.png" alt="触控板">
|
||||
</div>
|
||||
<div class="image-container">
|
||||
<img src="./images/11.png" alt="左右滑动">
|
||||
</div>
|
||||
|
||||
<div class="image-container">
|
||||
<img src="./images/12.png" alt="长按">
|
||||
</div>
|
||||
|
||||
<div class="image-container">
|
||||
<img src="./images/13.png" alt="双击">
|
||||
</div>
|
||||
|
||||
<div class="image-container">
|
||||
<img src="./images/07.png" alt="充电">
|
||||
</div>
|
||||
<p class="description">为确保其正确充电,请按照上图所示链接充电线</p>
|
||||
<div class="image-container">
|
||||
<img src="./images/05.png" alt="指示灯">
|
||||
</div>
|
||||
|
||||
<div class="image-container">
|
||||
<img src="./images/14.png" alt="指示灯简介">
|
||||
</div>
|
||||
|
||||
<div class="image-container">
|
||||
<img src="./images/08.png" alt="近视镜片">
|
||||
</div>
|
||||
<p class="description" style="text-align: left; padding-left: 6vw;">安装近视镜架</p>
|
||||
<div class="installation-steps">
|
||||
<div class="step">
|
||||
<span class="step-number">1.</span>
|
||||
<span class="step-text">将近视镜片的金属框架与鼻托的框架重合,螺丝孔朝下</span>
|
||||
</div>
|
||||
<div class="step">
|
||||
<span class="step-number">2.</span>
|
||||
<span class="step-text">近视镜框的孔与底部螺丝孔对齐,使用工具包中的螺丝刀安装螺丝即可,请勿卸下鼻托螺丝!</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
BIN
developer-front/backup/img/glasses-detail1.2f0be154.png
Normal file
|
After Width: | Height: | Size: 285 KiB |
BIN
developer-front/backup/img/glasses-model1.3586945f.png
Normal file
|
After Width: | Height: | Size: 164 KiB |
BIN
developer-front/backup/img/glasses-scene1.5b0f304a.png
Normal file
|
After Width: | Height: | Size: 298 KiB |
BIN
developer-front/backup/img/glasses-scene2.d52e03f8.png
Normal file
|
After Width: | Height: | Size: 380 KiB |
BIN
developer-front/backup/img/glasses1.b0dcb7fb.png
Normal file
|
After Width: | Height: | Size: 207 KiB |
BIN
developer-front/backup/img/glasses2.538aea0a.png
Normal file
|
After Width: | Height: | Size: 282 KiB |
BIN
developer-front/backup/img/glasses3.211e2345.png
Normal file
|
After Width: | Height: | Size: 392 KiB |
BIN
developer-front/backup/img/logo.c3029a2f.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
1
developer-front/backup/index.html
Normal file
@@ -0,0 +1 @@
|
||||
<!DOCTYPE html><html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="icon" href="./favicon.ico"><title>JUEYUAN | 觉远科技</title><link href="./css/chunk-vendors.da646636.css" rel="preload" as="style"><link href="./css/index.1704507a.css" rel="preload" as="style"><link href="./js/chunk-vendors.a75fa186.js" rel="preload" as="script"><link href="./js/index.c86bb705.js" rel="preload" as="script"><link href="./css/chunk-vendors.da646636.css" rel="stylesheet"><link href="./css/index.1704507a.css" rel="stylesheet"></head><body><noscript><strong>We're sorry but JUEYUAN | 觉远科技 doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div><script src="./js/chunk-vendors.a75fa186.js"></script><script src="./js/index.c86bb705.js"></script></body></html>
|
||||
19
developer-front/backup/js/chunk-vendors.a75fa186.js
Normal file
1
developer-front/backup/js/chunk-vendors.a75fa186.js.map
Normal file
2
developer-front/backup/js/index.c86bb705.js
Normal file
1
developer-front/backup/js/index.c86bb705.js.map
Normal file
12
developer-front/bin/build.bat
Normal file
@@ -0,0 +1,12 @@
|
||||
@echo off
|
||||
echo.
|
||||
echo [<5B><>Ϣ] <20><><EFBFBD><EFBFBD>Web<65><62><EFBFBD>̣<EFBFBD><CCA3><EFBFBD><EFBFBD><EFBFBD>dist<73>ļ<EFBFBD><C4BC><EFBFBD>
|
||||
echo.
|
||||
|
||||
%~d0
|
||||
cd %~dp0
|
||||
|
||||
cd ..
|
||||
npm run build:prod
|
||||
|
||||
pause
|
||||
12
developer-front/bin/package.bat
Normal file
@@ -0,0 +1,12 @@
|
||||
@echo off
|
||||
echo.
|
||||
echo [<5B><>Ϣ] <20><>װWeb<65><62><EFBFBD>̣<EFBFBD><CCA3><EFBFBD><EFBFBD><EFBFBD>node_modules<65>ļ<EFBFBD><C4BC><EFBFBD>
|
||||
echo.
|
||||
|
||||
%~d0
|
||||
cd %~dp0
|
||||
|
||||
cd ..
|
||||
npm install --registry=https://registry.npmmirror.com
|
||||
|
||||
pause
|
||||
12
developer-front/bin/run-web.bat
Normal file
@@ -0,0 +1,12 @@
|
||||
@echo off
|
||||
echo.
|
||||
echo [<5B><>Ϣ] ʹ<><CAB9> Vue CLI <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Web <20><><EFBFBD>̡<EFBFBD>
|
||||
echo.
|
||||
|
||||
%~d0
|
||||
cd %~dp0
|
||||
|
||||
cd ..
|
||||
npm run dev
|
||||
|
||||
pause
|
||||
35
developer-front/build/index.js
Normal file
@@ -0,0 +1,35 @@
|
||||
const { run } = require('runjs')
|
||||
const chalk = require('chalk')
|
||||
const config = require('../vue.config.js')
|
||||
const rawArgv = process.argv.slice(2)
|
||||
const args = rawArgv.join(' ')
|
||||
|
||||
if (process.env.npm_config_preview || rawArgv.includes('--preview')) {
|
||||
const report = rawArgv.includes('--report')
|
||||
|
||||
run(`vue-cli-service build ${args}`)
|
||||
|
||||
const port = 9526
|
||||
const publicPath = config.publicPath
|
||||
|
||||
var connect = require('connect')
|
||||
var serveStatic = require('serve-static')
|
||||
const app = connect()
|
||||
|
||||
app.use(
|
||||
publicPath,
|
||||
serveStatic('./dist', {
|
||||
index: ['index.html', '/']
|
||||
})
|
||||
)
|
||||
|
||||
app.listen(port, function () {
|
||||
console.log(chalk.green(`> Preview at http://localhost:${port}${publicPath}`))
|
||||
if (report) {
|
||||
console.log(chalk.green(`> Report at http://localhost:${port}${publicPath}report.html`))
|
||||
}
|
||||
|
||||
})
|
||||
} else {
|
||||
run(`vue-cli-service build ${args}`)
|
||||
}
|
||||
122
developer-front/database/forum_tables.sql
Normal file
@@ -0,0 +1,122 @@
|
||||
-- 论坛分类表
|
||||
CREATE TABLE `forum_category` (
|
||||
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '分类ID',
|
||||
`name` varchar(50) NOT NULL COMMENT '分类名称',
|
||||
`description` varchar(255) DEFAULT NULL COMMENT '分类描述',
|
||||
`icon` varchar(100) DEFAULT NULL COMMENT '分类图标',
|
||||
`sort_order` int(11) DEFAULT '0' COMMENT '排序顺序',
|
||||
`status` char(1) DEFAULT '0' COMMENT '状态(0正常 1停用)',
|
||||
`post_count` int(11) DEFAULT '0' COMMENT '帖子数量',
|
||||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_status` (`status`),
|
||||
KEY `idx_sort_order` (`sort_order`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='论坛分类表';
|
||||
|
||||
-- 论坛帖子表
|
||||
CREATE TABLE `forum_post` (
|
||||
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '帖子ID',
|
||||
`category_id` bigint(20) NOT NULL COMMENT '分类ID',
|
||||
`title` varchar(200) NOT NULL COMMENT '标题',
|
||||
`content` text NOT NULL COMMENT '内容',
|
||||
`excerpt` varchar(500) DEFAULT NULL COMMENT '摘要',
|
||||
`author_id` bigint(20) NOT NULL COMMENT '作者ID',
|
||||
`author_name` varchar(50) NOT NULL COMMENT '作者名称',
|
||||
`author_avatar` varchar(255) DEFAULT NULL COMMENT '作者头像',
|
||||
`view_count` int(11) DEFAULT '0' COMMENT '浏览量',
|
||||
`reply_count` int(11) DEFAULT '0' COMMENT '回复数',
|
||||
`like_count` int(11) DEFAULT '0' COMMENT '点赞数',
|
||||
`favorite_count` int(11) DEFAULT '0' COMMENT '收藏数',
|
||||
`is_top` char(1) DEFAULT '0' COMMENT '是否置顶(0否 1是)',
|
||||
`is_hot` char(1) DEFAULT '0' COMMENT '是否热门(0否 1是)',
|
||||
`is_solved` char(1) DEFAULT '0' COMMENT '是否已解决(0否 1是)',
|
||||
`status` char(1) DEFAULT '0' COMMENT '状态(0正常 1删除 2审核中)',
|
||||
`last_reply_id` bigint(20) DEFAULT NULL COMMENT '最后回复ID',
|
||||
`last_reply_user` varchar(50) DEFAULT NULL COMMENT '最后回复用户',
|
||||
`last_reply_time` datetime DEFAULT NULL COMMENT '最后回复时间',
|
||||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_category_id` (`category_id`),
|
||||
KEY `idx_author_id` (`author_id`),
|
||||
KEY `idx_create_time` (`create_time`),
|
||||
KEY `idx_last_reply_time` (`last_reply_time`),
|
||||
KEY `idx_status` (`status`),
|
||||
KEY `idx_is_top` (`is_top`),
|
||||
KEY `idx_is_hot` (`is_hot`),
|
||||
KEY `idx_title` (`title`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='论坛帖子表';
|
||||
|
||||
-- 论坛回复表
|
||||
CREATE TABLE `forum_reply` (
|
||||
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '回复ID',
|
||||
`post_id` bigint(20) NOT NULL COMMENT '帖子ID',
|
||||
`parent_id` bigint(20) DEFAULT '0' COMMENT '父回复ID(0表示直接回复帖子)',
|
||||
`content` text NOT NULL COMMENT '回复内容',
|
||||
`author_id` bigint(20) NOT NULL COMMENT '作者ID',
|
||||
`author_name` varchar(50) NOT NULL COMMENT '作者名称',
|
||||
`author_avatar` varchar(255) DEFAULT NULL COMMENT '作者头像',
|
||||
`like_count` int(11) DEFAULT '0' COMMENT '点赞数',
|
||||
`status` char(1) DEFAULT '0' COMMENT '状态(0正常 1删除 2审核中)',
|
||||
`create_by` varchar(64) DEFAULT '' COMMENT '创建者',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||||
`update_by` varchar(64) DEFAULT '' COMMENT '更新者',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_post_id` (`post_id`),
|
||||
KEY `idx_parent_id` (`parent_id`),
|
||||
KEY `idx_author_id` (`author_id`),
|
||||
KEY `idx_create_time` (`create_time`),
|
||||
KEY `idx_status` (`status`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='论坛回复表';
|
||||
|
||||
-- 帖子点赞表
|
||||
CREATE TABLE `forum_post_like` (
|
||||
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
|
||||
`post_id` bigint(20) NOT NULL COMMENT '帖子ID',
|
||||
`user_id` bigint(20) NOT NULL COMMENT '用户ID',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_post_user` (`post_id`,`user_id`),
|
||||
KEY `idx_user_id` (`user_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='帖子点赞表';
|
||||
|
||||
-- 帖子收藏表
|
||||
CREATE TABLE `forum_post_favorite` (
|
||||
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
|
||||
`post_id` bigint(20) NOT NULL COMMENT '帖子ID',
|
||||
`user_id` bigint(20) NOT NULL COMMENT '用户ID',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_post_user` (`post_id`,`user_id`),
|
||||
KEY `idx_user_id` (`user_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='帖子收藏表';
|
||||
|
||||
-- 回复点赞表
|
||||
CREATE TABLE `forum_reply_like` (
|
||||
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
|
||||
`reply_id` bigint(20) NOT NULL COMMENT '回复ID',
|
||||
`user_id` bigint(20) NOT NULL COMMENT '用户ID',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_reply_user` (`reply_id`,`user_id`),
|
||||
KEY `idx_user_id` (`user_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='回复点赞表';
|
||||
|
||||
-- 初始化分类数据
|
||||
INSERT INTO `forum_category` (`name`, `description`, `sort_order`, `status`, `create_time`) VALUES
|
||||
('技术讨论', '技术问题讨论和解决方案', 1, '0', NOW()),
|
||||
('SDK使用', 'SDK使用相关问题', 2, '0', NOW()),
|
||||
('API文档', 'API接口使用问题', 3, '0', NOW()),
|
||||
('问题反馈', 'Bug反馈和建议', 4, '0', NOW()),
|
||||
('经验分享', '开发经验和技术分享', 5, '0', NOW()),
|
||||
('新手求助', '新手入门问题', 6, '0', NOW());
|
||||
|
||||
99
developer-front/package.json
Normal file
@@ -0,0 +1,99 @@
|
||||
{
|
||||
"name": "ruoyi",
|
||||
"version": "3.8.8",
|
||||
"description": "觉远创智配件系统",
|
||||
"author": "觉远创智",
|
||||
"license": "MIT",
|
||||
"scripts": {
|
||||
"dev": "vue-cli-service serve",
|
||||
"build:prod": "vue-cli-service build",
|
||||
"build:stage": "vue-cli-service build --mode staging",
|
||||
"preview": "node build/index.js --preview",
|
||||
"lint": "eslint --ext .js,.vue src"
|
||||
},
|
||||
"husky": {
|
||||
"hooks": {
|
||||
"pre-commit": "lint-staged"
|
||||
}
|
||||
},
|
||||
"lint-staged": {
|
||||
"src/**/*.{js,vue}": [
|
||||
"eslint --fix",
|
||||
"git add"
|
||||
]
|
||||
},
|
||||
"keywords": [
|
||||
"vue",
|
||||
"admin",
|
||||
"dashboard",
|
||||
"element-ui",
|
||||
"boilerplate",
|
||||
"admin-template",
|
||||
"management-system"
|
||||
],
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://gitee.com/y_project/RuoYi-Vue.git"
|
||||
},
|
||||
"dependencies": {
|
||||
"@riophae/vue-treeselect": "0.4.0",
|
||||
"axios": "0.28.1",
|
||||
"clipboard": "2.0.8",
|
||||
"core-js": "3.37.1",
|
||||
"echarts": "5.4.0",
|
||||
"element-ui": "2.15.14",
|
||||
"file-saver": "2.0.5",
|
||||
"fullpage.js": "^4.0.37",
|
||||
"fuse.js": "6.4.3",
|
||||
"highlight.js": "9.18.5",
|
||||
"js-beautify": "1.13.0",
|
||||
"js-cookie": "3.0.1",
|
||||
"jsencrypt": "3.0.0-rc.1",
|
||||
"nprogress": "0.2.0",
|
||||
"qrcode": "^1.5.4",
|
||||
"quill": "1.3.7",
|
||||
"screenfull": "5.0.2",
|
||||
"sortablejs": "1.10.2",
|
||||
"vue": "2.7.16",
|
||||
"vue-count-to": "1.0.13",
|
||||
"vue-cropper": "0.5.5",
|
||||
"vue-meta": "2.4.0",
|
||||
"vue-router": "3.4.9",
|
||||
"vuedraggable": "2.24.3",
|
||||
"vuex": "3.6.0",
|
||||
"wangeditor": "^4.7.15"
|
||||
},
|
||||
"overrides": {
|
||||
"postcss": "^8.4.32"
|
||||
},
|
||||
"devDependencies": {
|
||||
"autoprefixer": "^10.4.16",
|
||||
"postcss": "^8.4.32",
|
||||
"tailwindcss": "^3.4.0",
|
||||
"@vue/cli-plugin-babel": "4.4.6",
|
||||
"@vue/cli-plugin-eslint": "4.4.6",
|
||||
"@vue/cli-service": "4.4.6",
|
||||
"babel-eslint": "10.1.0",
|
||||
"babel-plugin-dynamic-import-node": "2.3.3",
|
||||
"chalk": "4.1.0",
|
||||
"compression-webpack-plugin": "6.1.2",
|
||||
"connect": "3.6.6",
|
||||
"eslint": "7.15.0",
|
||||
"eslint-plugin-vue": "7.2.0",
|
||||
"lint-staged": "10.5.3",
|
||||
"runjs": "4.4.2",
|
||||
"sass": "1.32.13",
|
||||
"sass-loader": "10.1.1",
|
||||
"script-ext-html-webpack-plugin": "2.1.5",
|
||||
"svg-sprite-loader": "5.1.1",
|
||||
"vue-template-compiler": "2.7.16"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8.9",
|
||||
"npm": ">= 3.0.0"
|
||||
},
|
||||
"browserslist": [
|
||||
"> 1%",
|
||||
"last 2 versions"
|
||||
]
|
||||
}
|
||||
8
developer-front/postcss.config.js
Normal file
@@ -0,0 +1,8 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = {
|
||||
plugins: {
|
||||
tailwindcss: {},
|
||||
autoprefixer: {}
|
||||
}
|
||||
}
|
||||
58
developer-front/public/docs/README.md
Normal file
@@ -0,0 +1,58 @@
|
||||
# 觉远创智开发文档
|
||||
|
||||
欢迎使用觉远创智智能眼镜开放平台开发文档。
|
||||
|
||||
## 快速开始
|
||||
|
||||
只需几步即可开始使用智能眼镜 API。
|
||||
|
||||
### 1. 获取 API 密钥
|
||||
|
||||
首先,您需要在开发者平台注册账号并创建应用来获取 API 密钥。
|
||||
|
||||
### 2. 安装 SDK
|
||||
|
||||
选择适合您平台的 SDK 进行安装:
|
||||
|
||||
#### Android (Kotlin)
|
||||
|
||||
```kotlin
|
||||
implementation 'com.smartglasses:api:2.1.0'
|
||||
```
|
||||
|
||||
#### iOS (Swift)
|
||||
|
||||
```swift
|
||||
.podspec dependency 'SmartGlassesAPI', '~> 2.1.0'
|
||||
```
|
||||
|
||||
#### Web (JavaScript)
|
||||
|
||||
```bash
|
||||
npm install smartglasses-api
|
||||
```
|
||||
|
||||
### 3. 初始化 API
|
||||
|
||||
```javascript
|
||||
// JavaScript 示例
|
||||
const glasses = new SmartGlassesAPI({
|
||||
apiKey: 'your-api-key',
|
||||
deviceId: 'your-device-id'
|
||||
});
|
||||
|
||||
// 连接到设备
|
||||
glasses.connect().then(() => {
|
||||
console.log('设备连接成功');
|
||||
});
|
||||
```
|
||||
|
||||
## 目录
|
||||
|
||||
- [设备端开发](device-dev.md)
|
||||
- [移动端开发](mobile-dev.md)
|
||||
- [后台接入](backend-integrations.md)
|
||||
- [能力中心](capabilities.md)
|
||||
- [API 参考](api-reference.md)
|
||||
- [最佳实践](best-practices.md)
|
||||
|
||||
108
developer-front/public/docs/README_DOCSIFY.md
Normal file
@@ -0,0 +1,108 @@
|
||||
# Docsify 文档使用说明
|
||||
|
||||
本文档说明如何在项目中管理和编辑 docsify 文档。
|
||||
|
||||
## 文档结构
|
||||
|
||||
```
|
||||
public/docs/
|
||||
├── index.html # Docsify 入口文件
|
||||
├── README.md # 文档首页
|
||||
├── _sidebar.md # 侧边栏导航配置
|
||||
├── device-dev.md # 设备端开发文档
|
||||
├── mobile-dev.md # 移动端开发文档
|
||||
├── backend-integrations.md # 后台接入文档
|
||||
├── capabilities.md # 能力中心文档
|
||||
├── api-reference.md # API 参考文档
|
||||
└── best-practices.md # 最佳实践文档
|
||||
```
|
||||
|
||||
## 如何编辑文档
|
||||
|
||||
### 1. 编辑现有文档
|
||||
|
||||
直接编辑 `public/docs/` 目录下的 `.md` 文件即可。文档使用 Markdown 格式编写。
|
||||
|
||||
### 2. 添加新文档
|
||||
|
||||
1. 在 `public/docs/` 目录下创建新的 `.md` 文件
|
||||
2. 在 `_sidebar.md` 中添加导航链接
|
||||
|
||||
示例:
|
||||
|
||||
```markdown
|
||||
# 在 _sidebar.md 中添加
|
||||
- 新文档
|
||||
- [章节1](new-doc.md#章节1)
|
||||
- [章节2](new-doc.md#章节2)
|
||||
```
|
||||
|
||||
### 3. 修改侧边栏
|
||||
|
||||
编辑 `public/docs/_sidebar.md` 文件来修改侧边栏导航结构。
|
||||
|
||||
## Markdown 语法
|
||||
|
||||
Docsify 支持标准 Markdown 语法,还支持一些扩展功能:
|
||||
|
||||
### 代码高亮
|
||||
|
||||
使用三个反引号包裹代码,并指定语言:
|
||||
|
||||
````markdown
|
||||
```javascript
|
||||
const api = new SmartGlassesAPI()
|
||||
```
|
||||
````
|
||||
|
||||
### 表格
|
||||
|
||||
```markdown
|
||||
| 参数 | 类型 | 说明 |
|
||||
|------|------|------|
|
||||
| apiKey | string | API 密钥 |
|
||||
```
|
||||
|
||||
### 链接
|
||||
|
||||
```markdown
|
||||
[链接文本](文档路径.md#锚点)
|
||||
```
|
||||
|
||||
## 配置说明
|
||||
|
||||
文档配置在 `public/docs/index.html` 中的 `window.$docsify` 对象中:
|
||||
|
||||
- `name`: 文档名称
|
||||
- `loadSidebar`: 是否加载侧边栏
|
||||
- `subMaxLevel`: 侧边栏最大层级
|
||||
- `search`: 搜索功能配置
|
||||
- `pagination`: 分页配置
|
||||
|
||||
## 访问文档
|
||||
|
||||
文档通过以下方式访问:
|
||||
|
||||
1. **在 Vue 应用中**:访问 `/docs` 路由
|
||||
2. **直接访问**:访问 `http://localhost:81/docs/index.html`
|
||||
|
||||
## 插件说明
|
||||
|
||||
当前使用的 Docsify 插件:
|
||||
|
||||
- **搜索插件**:支持全文搜索
|
||||
- **分页插件**:支持章节导航
|
||||
- **代码高亮**:支持多种编程语言
|
||||
|
||||
## 注意事项
|
||||
|
||||
1. 文档文件必须放在 `public/docs/` 目录下
|
||||
2. 修改文档后,刷新页面即可看到更新
|
||||
3. 侧边栏文件必须命名为 `_sidebar.md`
|
||||
4. 首页文件必须命名为 `README.md`
|
||||
|
||||
## 更多信息
|
||||
|
||||
- [Docsify 官方文档](https://docsify.js.org/)
|
||||
- [Markdown 语法指南](https://www.markdownguide.org/)
|
||||
|
||||
36
developer-front/public/docs/_sidebar - 副本.md
Normal file
@@ -0,0 +1,36 @@
|
||||
- [首页](/)
|
||||
- [快速开始](README.md#快速开始)
|
||||
|
||||
- 设备端开发
|
||||
- [设备型号](device-dev.md#设备型号)
|
||||
- [Vision Basic](device-dev.md#vision-basic)
|
||||
- [Vision Pro](device-dev.md#vision-pro)
|
||||
- [Vision Elite](device-dev.md#vision-elite)
|
||||
|
||||
- 移动端开发
|
||||
- [平台支持](mobile-dev.md#平台支持)
|
||||
- [Android](mobile-dev.md#android)
|
||||
- [iOS](mobile-dev.md#ios)
|
||||
- [Web](mobile-dev.md#web)
|
||||
|
||||
- 后台接入
|
||||
- [鉴权](backend-integrations.md#鉴权)
|
||||
- [接口调用](backend-integrations.md#接口调用)
|
||||
- [回调处理](backend-integrations.md#回调处理)
|
||||
|
||||
- 能力中心
|
||||
- [语音识别](capabilities.md#语音识别)
|
||||
- [转写服务](capabilities.md#转写服务)
|
||||
- [翻译服务](capabilities.md#翻译服务)
|
||||
- [AI 助手](capabilities.md#ai-助手)
|
||||
|
||||
- API 参考
|
||||
- [显示 API](api-reference.md#显示-api)
|
||||
- [语音 API](api-reference.md#语音-api)
|
||||
- [传感器 API](api-reference.md#传感器-api)
|
||||
|
||||
- 最佳实践
|
||||
- [性能优化](best-practices.md#性能优化)
|
||||
- [用户体验](best-practices.md#用户体验)
|
||||
- [故障排除](best-practices.md#故障排除)
|
||||
|
||||
58
developer-front/public/docs/_sidebar.md
Normal file
@@ -0,0 +1,58 @@
|
||||
|
||||
- [1. 文档概述](venus-sdk-1.0.md#_1-文档概述)
|
||||
|
||||
- [2. 支持平台与版本](venus-sdk-1.0.md#_2-支持平台与版本)
|
||||
|
||||
- [3. 快速开始](venus-sdk-1.0.md#_3-快速开始)
|
||||
- [3.1 集成SDK](venus-sdk-1.0.md#_31-集成sdk)
|
||||
- [3.2 声明权限](venus-sdk-1.0.md#_32-声明权限)
|
||||
- [3.3 混淆配置](venus-sdk-1.0.md#_33-混淆配置)
|
||||
- [3.4 SDK初始化](venus-sdk-1.0.md#_34-sdk初始化)
|
||||
- [3.5 获取SDK构建信息](venus-sdk-1.0.md#_35-获取sdk构建信息)
|
||||
|
||||
- [4. 设备连接和配置](venus-sdk-1.0.md#_4-设备连接和配置)
|
||||
- [4.1 设备扫描](venus-sdk-1.0.md#_41-设备扫描)
|
||||
- [4.2 设备连接管理](venus-sdk-1.0.md#_42-设备连接管理)
|
||||
- [4.3 设备信息获取](venus-sdk-1.0.md#_43-设备信息获取)
|
||||
- [4.4 系统配置获取](venus-sdk-1.0.md#_44-系统配置获取)
|
||||
- [4.5 时间设置](venus-sdk-1.0.md#_45-时间设置)
|
||||
- [4.6 亮度设置](venus-sdk-1.0.md#_46-亮度设置)
|
||||
- [4.7 音量设置](venus-sdk-1.0.md#_47-音量设置)
|
||||
- [4.8 显示模式设置](venus-sdk-1.0.md#_48-显示模式设置)
|
||||
- [4.9 系统语言设置](venus-sdk-1.0.md#_49-系统语言设置)
|
||||
- [4.10 通知功能设置](venus-sdk-1.0.md#_410-通知功能设置)
|
||||
- [4.11 触控板设置](venus-sdk-1.0.md#_411-触控板设置)
|
||||
- [4.12 静置状态自动熄屏设置](venus-sdk-1.0.md#_412-静置状态自动熄屏设置)
|
||||
- [4.13 非活跃状态自动熄屏设置](venus-sdk-1.0.md#_413-非活跃状态自动熄屏设置)
|
||||
- [4.14 熄屏状态自动关机设置](venus-sdk-1.0.md#_414-熄屏状态自动关机设置)
|
||||
- [4.15 佩戴检测设置](venus-sdk-1.0.md#_415-佩戴检测设置)
|
||||
|
||||
- [5. 系统状态和操控](venus-sdk-1.0.md#_5-系统状态和操控)
|
||||
- [5.1 获取、监听、设置系统状态](venus-sdk-1.0.md#_51-获取监听设置系统状态)
|
||||
- [5.2 触控板](venus-sdk-1.0.md#_52-触控板)
|
||||
- [5.3 应用的进入和退出](venus-sdk-1.0.md#_53-应用的进入和退出)
|
||||
- [5.4 通知](venus-sdk-1.0.md#_54-通知)
|
||||
- [5.5 文件系统](venus-sdk-1.0.md#_55-文件系统)
|
||||
- [5.6 查看存储空间](venus-sdk-1.0.md#_56-查看存储空间)
|
||||
- [5.7 监听设备主动消息](venus-sdk-1.0.md#_57-监听设备主动消息)
|
||||
- [5.8 重启](venus-sdk-1.0.md#_58-重启)
|
||||
- [5.9 恢复出厂设置](venus-sdk-1.0.md#_59-恢复出厂设置)
|
||||
- [5.10 解绑设备](venus-sdk-1.0.md#_510-解绑设备)
|
||||
|
||||
- [6. 应用](venus-sdk-1.0.md#_6-应用)
|
||||
- [6.1 实时翻译(语音转文字显示)信息同步](venus-sdk-1.0.md#61-实时翻译语音转文字显示信息同步)
|
||||
- [6.2 实时转写(语音转文字显示)信息同步](venus-sdk-1.0.md#62-实时转写语音转文字显示信息同步)
|
||||
- [6.3 对话信息同步](venus-sdk-1.0.md#_63-对话信息同步)
|
||||
- [6.4 导航信息同步](venus-sdk-1.0.md#_64-导航信息同步)
|
||||
- [6.5 提词信息同步](venus-sdk-1.0.md#_65-提词信息同步)
|
||||
- [6.6 图库](venus-sdk-1.0.md#_66-图库)
|
||||
|
||||
- [7. 应用定制](venus-sdk-1.0.md#_7-应用定制)
|
||||
|
||||
- [8. 固件升级](venus-sdk-1.0.md#_8-固件升级)
|
||||
|
||||
- [9. 常见问题](venus-sdk-1.0.md#_9-常见问题)
|
||||
- [9.1 设备无法扫描到](venus-sdk-1.0.md#_91-设备无法扫描到)
|
||||
- [9.2 设备没有声音](venus-sdk-1.0.md#_92-设备没有声音)
|
||||
|
||||
- [10. 更新历史](venus-sdk-1.0.md#_10-更新历史)
|
||||
170
developer-front/public/docs/api-reference.md
Normal file
@@ -0,0 +1,170 @@
|
||||
# API 参考
|
||||
|
||||
完整的 API 接口文档。
|
||||
|
||||
## 显示 API
|
||||
|
||||
在眼镜显示屏上显示内容。
|
||||
|
||||
### showText(options)
|
||||
|
||||
显示文本内容。
|
||||
|
||||
**参数:**
|
||||
|
||||
| 参数 | 类型 | 必填 | 说明 |
|
||||
|------|------|------|------|
|
||||
| text | string | 是 | 要显示的文本 |
|
||||
| position | object | 否 | 显示位置 {x, y} |
|
||||
| fontSize | number | 否 | 字体大小,默认 24 |
|
||||
| color | string | 否 | 颜色,默认 '#FFFFFF' |
|
||||
| duration | number | 否 | 显示时长(毫秒),0 表示永久显示 |
|
||||
|
||||
**示例:**
|
||||
|
||||
```javascript
|
||||
glasses.display.showText({
|
||||
text: 'Hello World',
|
||||
position: { x: 100, y: 200 },
|
||||
fontSize: 24,
|
||||
color: '#FFFFFF',
|
||||
duration: 3000
|
||||
})
|
||||
```
|
||||
|
||||
### showImage(options)
|
||||
|
||||
显示图像。
|
||||
|
||||
**参数:**
|
||||
|
||||
| 参数 | 类型 | 必填 | 说明 |
|
||||
|------|------|------|------|
|
||||
| url | string | 是 | 图像 URL |
|
||||
| position | object | 否 | 显示位置 {x, y} |
|
||||
| width | number | 否 | 宽度 |
|
||||
| height | number | 否 | 高度 |
|
||||
| opacity | number | 否 | 透明度,0-1 |
|
||||
|
||||
**示例:**
|
||||
|
||||
```javascript
|
||||
glasses.display.showImage({
|
||||
url: 'https://example.com/image.png',
|
||||
position: { x: 50, y: 100 },
|
||||
width: 200,
|
||||
height: 150,
|
||||
opacity: 0.8
|
||||
})
|
||||
```
|
||||
|
||||
### clear()
|
||||
|
||||
清除所有显示内容。
|
||||
|
||||
**示例:**
|
||||
|
||||
```javascript
|
||||
glasses.display.clear()
|
||||
```
|
||||
|
||||
## 语音 API
|
||||
|
||||
语音识别和合成。
|
||||
|
||||
### startRecognition(options)
|
||||
|
||||
启动语音识别。
|
||||
|
||||
**参数:**
|
||||
|
||||
| 参数 | 类型 | 必填 | 说明 |
|
||||
|------|------|------|------|
|
||||
| language | string | 否 | 语言代码,默认 'zh-CN' |
|
||||
| continuous | boolean | 否 | 是否连续识别 |
|
||||
| interimResults | boolean | 否 | 是否返回中间结果 |
|
||||
|
||||
**示例:**
|
||||
|
||||
```javascript
|
||||
const recognition = glasses.voice.startRecognition({
|
||||
language: 'zh-CN',
|
||||
continuous: true
|
||||
})
|
||||
|
||||
recognition.on('result', (text) => {
|
||||
console.log('识别结果:', text)
|
||||
})
|
||||
```
|
||||
|
||||
### stopRecognition()
|
||||
|
||||
停止语音识别。
|
||||
|
||||
**示例:**
|
||||
|
||||
```javascript
|
||||
glasses.voice.stopRecognition()
|
||||
```
|
||||
|
||||
### speak(text, options)
|
||||
|
||||
语音合成。
|
||||
|
||||
**参数:**
|
||||
|
||||
| 参数 | 类型 | 必填 | 说明 |
|
||||
|------|------|------|------|
|
||||
| text | string | 是 | 要合成的文本 |
|
||||
| language | string | 否 | 语言代码 |
|
||||
| speed | number | 否 | 语速,0.5-2.0 |
|
||||
|
||||
**示例:**
|
||||
|
||||
```javascript
|
||||
await glasses.voice.speak('Hello World', {
|
||||
language: 'en-US',
|
||||
speed: 1.0
|
||||
})
|
||||
```
|
||||
|
||||
## 传感器 API
|
||||
|
||||
获取传感器数据。
|
||||
|
||||
### getAccelerometer(callback)
|
||||
|
||||
获取加速度数据。
|
||||
|
||||
**示例:**
|
||||
|
||||
```javascript
|
||||
glasses.sensors.getAccelerometer((data) => {
|
||||
console.log('加速度:', data.x, data.y, data.z)
|
||||
})
|
||||
```
|
||||
|
||||
### getGyroscope(callback)
|
||||
|
||||
获取陀螺仪数据。
|
||||
|
||||
**示例:**
|
||||
|
||||
```javascript
|
||||
glasses.sensors.getGyroscope((data) => {
|
||||
console.log('角速度:', data.x, data.y, data.z)
|
||||
})
|
||||
```
|
||||
|
||||
### getMagnetometer(callback)
|
||||
|
||||
获取磁力计数据。
|
||||
|
||||
**示例:**
|
||||
|
||||
```javascript
|
||||
glasses.sensors.getMagnetometer((data) => {
|
||||
console.log('磁场强度:', data.x, data.y, data.z)
|
||||
})
|
||||
```
|
||||
|
||||
130
developer-front/public/docs/backend-integrations.md
Normal file
@@ -0,0 +1,130 @@
|
||||
# 后台接入
|
||||
|
||||
鉴权、接口调用与回调,国内与海外域名与限速差异,日志与监控。
|
||||
|
||||
## 鉴权
|
||||
|
||||
所有 API 请求都需要进行身份验证。
|
||||
|
||||
### API 密钥
|
||||
|
||||
在请求头中包含您的 API 密钥:
|
||||
|
||||
```http
|
||||
Authorization: Bearer YOUR_API_KEY
|
||||
Content-Type: application/json
|
||||
```
|
||||
|
||||
### 请求签名
|
||||
|
||||
对于敏感操作,需要使用签名验证:
|
||||
|
||||
```javascript
|
||||
const crypto = require('crypto')
|
||||
|
||||
function generateSignature(params, secret) {
|
||||
const sortedParams = Object.keys(params)
|
||||
.sort()
|
||||
.map(key => `${key}=${params[key]}`)
|
||||
.join('&')
|
||||
|
||||
return crypto
|
||||
.createHmac('sha256', secret)
|
||||
.update(sortedParams)
|
||||
.digest('hex')
|
||||
}
|
||||
```
|
||||
|
||||
## 接口调用
|
||||
|
||||
### RESTful API
|
||||
|
||||
基础 URL:
|
||||
- 国内:`https://api.jueyuan.com`
|
||||
- 海外:`https://api-global.jueyuan.com`
|
||||
|
||||
### 示例请求
|
||||
|
||||
```javascript
|
||||
const axios = require('axios')
|
||||
|
||||
const client = axios.create({
|
||||
baseURL: 'https://api.jueyuan.com',
|
||||
headers: {
|
||||
'Authorization': 'Bearer YOUR_API_KEY',
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
})
|
||||
|
||||
// 获取设备列表
|
||||
const devices = await client.get('/v1/devices')
|
||||
|
||||
// 发送消息到设备
|
||||
await client.post('/v1/devices/device-id/messages', {
|
||||
type: 'text',
|
||||
content: 'Hello World'
|
||||
})
|
||||
```
|
||||
|
||||
### 限速说明
|
||||
|
||||
不同接口有不同的限速策略:
|
||||
|
||||
- **普通接口**:100 次/分钟
|
||||
- **高频接口**:1000 次/分钟
|
||||
- **批量接口**:10 次/分钟
|
||||
|
||||
超过限速会返回 `429 Too Many Requests` 错误。
|
||||
|
||||
## 回调处理
|
||||
|
||||
### Webhook 配置
|
||||
|
||||
在开发者平台配置 Webhook URL,系统会在事件发生时调用该 URL。
|
||||
|
||||
### 回调验证
|
||||
|
||||
```javascript
|
||||
const crypto = require('crypto')
|
||||
|
||||
function verifyCallback(signature, payload, secret) {
|
||||
const hash = crypto
|
||||
.createHmac('sha256', secret)
|
||||
.update(JSON.stringify(payload))
|
||||
.digest('hex')
|
||||
|
||||
return hash === signature
|
||||
}
|
||||
```
|
||||
|
||||
### 回调事件
|
||||
|
||||
常见回调事件:
|
||||
|
||||
- `device.connected` - 设备连接
|
||||
- `device.disconnected` - 设备断开
|
||||
- `message.received` - 收到消息
|
||||
- `voice.recognized` - 语音识别完成
|
||||
|
||||
## 日志与监控
|
||||
|
||||
### 日志查询
|
||||
|
||||
```javascript
|
||||
// 查询设备日志
|
||||
const logs = await client.get('/v1/devices/device-id/logs', {
|
||||
params: {
|
||||
startTime: '2024-01-01T00:00:00Z',
|
||||
endTime: '2024-01-02T00:00:00Z',
|
||||
level: 'error'
|
||||
}
|
||||
})
|
||||
```
|
||||
|
||||
### 监控指标
|
||||
|
||||
- API 调用次数
|
||||
- 错误率
|
||||
- 响应时间
|
||||
- 设备在线率
|
||||
|
||||
160
developer-front/public/docs/best-practices.md
Normal file
@@ -0,0 +1,160 @@
|
||||
# 最佳实践
|
||||
|
||||
开发指南和最佳实践。
|
||||
|
||||
## 性能优化
|
||||
|
||||
### 减少 UI 元素
|
||||
|
||||
同时显示的 UI 元素数量会影响性能,建议:
|
||||
|
||||
- 限制同时显示的文本数量(建议 < 10 个)
|
||||
- 使用列表或分页显示大量内容
|
||||
- 及时清理不需要的显示元素
|
||||
|
||||
### 图像优化
|
||||
|
||||
- 使用适当的图像压缩格式(WebP、JPEG)
|
||||
- 限制图像尺寸(建议 < 1024x1024)
|
||||
- 使用 CDN 加速图像加载
|
||||
|
||||
### 位置更新
|
||||
|
||||
避免频繁更新元素位置:
|
||||
|
||||
```javascript
|
||||
// ❌ 不好:每帧都更新
|
||||
setInterval(() => {
|
||||
glasses.display.showText({
|
||||
text: 'Hello',
|
||||
position: { x: Math.random() * 100, y: Math.random() * 100 }
|
||||
})
|
||||
}, 16)
|
||||
|
||||
// ✅ 好:使用动画 API
|
||||
glasses.display.animate({
|
||||
element: textElement,
|
||||
from: { x: 0, y: 0 },
|
||||
to: { x: 100, y: 100 },
|
||||
duration: 1000
|
||||
})
|
||||
```
|
||||
|
||||
### 缓存机制
|
||||
|
||||
合理使用缓存:
|
||||
|
||||
```javascript
|
||||
// 缓存常用图像
|
||||
const imageCache = new Map()
|
||||
|
||||
async function loadImage(url) {
|
||||
if (imageCache.has(url)) {
|
||||
return imageCache.get(url)
|
||||
}
|
||||
|
||||
const image = await fetch(url).then(r => r.blob())
|
||||
imageCache.set(url, image)
|
||||
return image
|
||||
}
|
||||
```
|
||||
|
||||
## 用户体验
|
||||
|
||||
### 界面设计
|
||||
|
||||
- **简洁明了**:避免信息过载
|
||||
- **视觉反馈**:操作后提供明确的反馈
|
||||
- **一致性**:保持界面风格一致
|
||||
|
||||
### 交互方式
|
||||
|
||||
支持多种交互方式:
|
||||
|
||||
- 触摸交互
|
||||
- 语音交互
|
||||
- 手势识别
|
||||
- 头部追踪
|
||||
|
||||
### 环境适应
|
||||
|
||||
考虑不同环境光线条件:
|
||||
|
||||
```javascript
|
||||
// 根据环境光调整显示亮度
|
||||
glasses.display.setBrightness(ambientLight)
|
||||
|
||||
// 使用高对比度颜色
|
||||
const colors = {
|
||||
light: { text: '#000000', bg: '#FFFFFF' },
|
||||
dark: { text: '#FFFFFF', bg: '#000000' }
|
||||
}
|
||||
```
|
||||
|
||||
## 故障排除
|
||||
|
||||
### 连接失败
|
||||
|
||||
**问题:** 无法连接到智能眼镜设备
|
||||
|
||||
**解决方案:**
|
||||
1. 检查设备是否已开启
|
||||
2. 确认设备在有效范围内(蓝牙 < 10m,Wi-Fi 同网络)
|
||||
3. 验证 API 密钥是否正确
|
||||
4. 重启设备和应用
|
||||
5. 检查防火墙设置
|
||||
|
||||
### 显示异常
|
||||
|
||||
**问题:** 内容显示位置不正确
|
||||
|
||||
**解决方案:**
|
||||
1. 校准设备显示屏
|
||||
2. 检查坐标参数范围(通常 0-1920 x 0-1080)
|
||||
3. 验证内容尺寸设置
|
||||
4. 更新设备固件
|
||||
5. 检查设备方向设置
|
||||
|
||||
### 语音识别失败
|
||||
|
||||
**问题:** 语音识别不准确或失败
|
||||
|
||||
**解决方案:**
|
||||
1. 检查麦克风权限
|
||||
2. 确保环境噪音较小
|
||||
3. 使用正确的语言代码
|
||||
4. 检查网络连接(在线识别需要网络)
|
||||
5. 尝试使用离线识别模式
|
||||
|
||||
### 性能问题
|
||||
|
||||
**问题:** 应用运行卡顿
|
||||
|
||||
**解决方案:**
|
||||
1. 减少同时显示的 UI 元素
|
||||
2. 优化图像大小和格式
|
||||
3. 使用异步操作避免阻塞主线程
|
||||
4. 监控内存使用,及时释放资源
|
||||
5. 使用性能分析工具定位瓶颈
|
||||
|
||||
## 安全建议
|
||||
|
||||
### API 密钥保护
|
||||
|
||||
- 不要在客户端代码中硬编码 API 密钥
|
||||
- 使用环境变量或配置文件
|
||||
- 定期轮换 API 密钥
|
||||
- 使用 HTTPS 传输
|
||||
|
||||
### 数据加密
|
||||
|
||||
- 敏感数据传输使用加密
|
||||
- 本地存储加密敏感数据
|
||||
- 使用安全的通信协议
|
||||
|
||||
### 权限管理
|
||||
|
||||
- 只请求必要的权限
|
||||
- 向用户说明权限用途
|
||||
- 定期审查权限使用情况
|
||||
|
||||
165
developer-front/public/docs/capabilities.md
Normal file
@@ -0,0 +1,165 @@
|
||||
# 能力中心
|
||||
|
||||
语音、转写、翻译、AI 助手的端到端工作流与常见场景模板。
|
||||
|
||||
## 语音识别
|
||||
|
||||
实时语音识别,支持多种语言和方言。
|
||||
|
||||
### 基础使用
|
||||
|
||||
```javascript
|
||||
// 启动语音识别
|
||||
const recognition = glasses.voice.startRecognition({
|
||||
language: 'zh-CN',
|
||||
continuous: true,
|
||||
interimResults: true
|
||||
})
|
||||
|
||||
recognition.on('result', (text) => {
|
||||
console.log('识别结果:', text)
|
||||
})
|
||||
|
||||
recognition.on('error', (error) => {
|
||||
console.error('识别错误:', error)
|
||||
})
|
||||
```
|
||||
|
||||
### 语言支持
|
||||
|
||||
- 中文(普通话、粤语、四川话等)
|
||||
- 英语
|
||||
- 日语
|
||||
- 韩语
|
||||
- 更多语言持续更新
|
||||
|
||||
## 转写服务
|
||||
|
||||
将音频文件转换为文本。
|
||||
|
||||
### 上传音频
|
||||
|
||||
```javascript
|
||||
const transcription = await glasses.transcription.transcribe({
|
||||
audioUrl: 'https://example.com/audio.mp3',
|
||||
language: 'zh-CN',
|
||||
format: 'text'
|
||||
})
|
||||
|
||||
console.log('转写结果:', transcription.text)
|
||||
```
|
||||
|
||||
### 批量转写
|
||||
|
||||
```javascript
|
||||
const tasks = await glasses.transcription.batchTranscribe([
|
||||
{ audioUrl: 'audio1.mp3', language: 'zh-CN' },
|
||||
{ audioUrl: 'audio2.mp3', language: 'en-US' }
|
||||
])
|
||||
|
||||
tasks.forEach(task => {
|
||||
task.on('complete', (result) => {
|
||||
console.log('转写完成:', result.text)
|
||||
})
|
||||
})
|
||||
```
|
||||
|
||||
## 翻译服务
|
||||
|
||||
多语言实时翻译。
|
||||
|
||||
### 文本翻译
|
||||
|
||||
```javascript
|
||||
const translation = await glasses.translation.translate({
|
||||
text: 'Hello World',
|
||||
from: 'en',
|
||||
to: 'zh'
|
||||
})
|
||||
|
||||
console.log('翻译结果:', translation.text)
|
||||
```
|
||||
|
||||
### 语音翻译
|
||||
|
||||
```javascript
|
||||
const translation = glasses.translation.translateSpeech({
|
||||
audioUrl: 'audio.mp3',
|
||||
from: 'en',
|
||||
to: 'zh'
|
||||
})
|
||||
|
||||
translation.on('complete', (result) => {
|
||||
console.log('翻译结果:', result.text)
|
||||
console.log('音频URL:', result.audioUrl)
|
||||
})
|
||||
```
|
||||
|
||||
## AI 助手
|
||||
|
||||
智能对话助手,支持上下文理解。
|
||||
|
||||
### 对话
|
||||
|
||||
```javascript
|
||||
const conversation = glasses.ai.createConversation({
|
||||
model: 'gpt-4',
|
||||
systemPrompt: '你是一个智能助手'
|
||||
})
|
||||
|
||||
const response = await conversation.chat('你好')
|
||||
console.log('回复:', response.text)
|
||||
```
|
||||
|
||||
### 流式响应
|
||||
|
||||
```javascript
|
||||
const stream = await conversation.chatStream('请介绍一下智能眼镜')
|
||||
|
||||
stream.on('data', (chunk) => {
|
||||
process.stdout.write(chunk.text)
|
||||
})
|
||||
|
||||
stream.on('end', () => {
|
||||
console.log('\n对话完成')
|
||||
})
|
||||
```
|
||||
|
||||
## 场景模板
|
||||
|
||||
### 会议记录
|
||||
|
||||
```javascript
|
||||
const meeting = glasses.scenarios.createMeeting({
|
||||
participants: ['user1', 'user2'],
|
||||
language: 'zh-CN'
|
||||
})
|
||||
|
||||
meeting.on('transcription', (text) => {
|
||||
// 实时转写
|
||||
console.log('会议内容:', text)
|
||||
})
|
||||
|
||||
meeting.on('summary', (summary) => {
|
||||
// 会议摘要
|
||||
console.log('会议摘要:', summary)
|
||||
})
|
||||
```
|
||||
|
||||
### 实时翻译
|
||||
|
||||
```javascript
|
||||
const translator = glasses.scenarios.createTranslator({
|
||||
from: 'en',
|
||||
to: 'zh'
|
||||
})
|
||||
|
||||
translator.on('translation', (result) => {
|
||||
// 显示翻译结果
|
||||
glasses.display.showText({
|
||||
text: result.text,
|
||||
position: { x: 100, y: 200 }
|
||||
})
|
||||
})
|
||||
```
|
||||
|
||||
117
developer-front/public/docs/device-dev.md
Normal file
@@ -0,0 +1,117 @@
|
||||
# 设备端开发
|
||||
|
||||
在眼镜设备上开发应用,集成 SDK 与显示渲染,支持语音与传感器能力。
|
||||
|
||||
## 设备型号
|
||||
|
||||
觉远创智提供多款智能眼镜设备,满足不同场景需求。
|
||||
|
||||
### Vision Basic
|
||||
|
||||
入门款智能眼镜,提供基础显示与语音功能。
|
||||
|
||||
**主要特性:**
|
||||
- 基础 AR 显示
|
||||
- 语音交互
|
||||
- 基础传感器支持
|
||||
|
||||
**适用场景:**
|
||||
- 个人用户
|
||||
- 简单应用场景
|
||||
- 入门开发
|
||||
|
||||
### Vision Pro
|
||||
|
||||
高性能智能眼镜,提供更佳的渲染效果与传感器集成。
|
||||
|
||||
**主要特性:**
|
||||
- 高性能 AR 显示
|
||||
- 增强的语音识别
|
||||
- 丰富的传感器支持
|
||||
- 更长的续航时间
|
||||
|
||||
**适用场景:**
|
||||
- 专业应用
|
||||
- 企业级应用
|
||||
- 复杂交互场景
|
||||
|
||||
### Vision Elite
|
||||
|
||||
旗舰款智能眼镜,提供扩展能力与企业特性。
|
||||
|
||||
**主要特性:**
|
||||
- 顶级 AR 显示
|
||||
- 企业级安全特性
|
||||
- 完整的 API 支持
|
||||
- 定制化支持
|
||||
|
||||
**适用场景:**
|
||||
- 企业级应用
|
||||
- 专业开发
|
||||
- 定制化需求
|
||||
|
||||
## SDK 集成
|
||||
|
||||
### Android 设备端
|
||||
|
||||
```kotlin
|
||||
// 添加依赖
|
||||
dependencies {
|
||||
implementation 'com.smartglasses:device-sdk:2.1.0'
|
||||
}
|
||||
|
||||
// 初始化
|
||||
val deviceSDK = DeviceSDK.getInstance(context)
|
||||
deviceSDK.initialize {
|
||||
// SDK 初始化完成
|
||||
}
|
||||
```
|
||||
|
||||
### 显示渲染
|
||||
|
||||
```kotlin
|
||||
// 显示文本
|
||||
deviceSDK.display.showText(
|
||||
text = "Hello World",
|
||||
position = Position(100, 200),
|
||||
fontSize = 24,
|
||||
color = Color.WHITE,
|
||||
duration = 3000
|
||||
)
|
||||
|
||||
// 显示图像
|
||||
deviceSDK.display.showImage(
|
||||
imageUrl = "https://example.com/image.png",
|
||||
position = Position(50, 100),
|
||||
width = 200,
|
||||
height = 150
|
||||
)
|
||||
```
|
||||
|
||||
## 语音交互
|
||||
|
||||
```kotlin
|
||||
// 启动语音识别
|
||||
deviceSDK.voice.startRecognition { result ->
|
||||
// 处理识别结果
|
||||
println("识别结果: $result")
|
||||
}
|
||||
|
||||
// 停止语音识别
|
||||
deviceSDK.voice.stopRecognition()
|
||||
```
|
||||
|
||||
## 传感器数据
|
||||
|
||||
```kotlin
|
||||
// 获取加速度数据
|
||||
deviceSDK.sensors.getAccelerometer { data ->
|
||||
// 处理加速度数据
|
||||
}
|
||||
|
||||
// 获取陀螺仪数据
|
||||
deviceSDK.sensors.getGyroscope { data ->
|
||||
// 处理陀螺仪数据
|
||||
}
|
||||
```
|
||||
|
||||
106
developer-front/public/docs/index.html
Normal file
@@ -0,0 +1,106 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>觉远创智开发文档</title>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
|
||||
<meta name="description" content="觉远创智智能眼镜开放平台开发文档">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">
|
||||
|
||||
<!-- DNS 预解析和预连接优化 -->
|
||||
<link rel="dns-prefetch" href="https://cdn.staticfile.org">
|
||||
<link rel="dns-prefetch" href="https://unpkg.com">
|
||||
<link rel="preconnect" href="https://cdn.staticfile.org" crossorigin>
|
||||
|
||||
<!-- 直接加载 CSS,避免阻塞渲染 -->
|
||||
<link rel="stylesheet" href="https://cdn.staticfile.org/docsify/4.13.1/themes/vue.css">
|
||||
|
||||
<style>
|
||||
:root {
|
||||
--theme-color: #42b983;
|
||||
--sidebar-width: 300px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div id="app">加载中...</div>
|
||||
<script>
|
||||
window.$docsify = {
|
||||
name: '',
|
||||
repo: '',
|
||||
homepage: 'venus-sdk-1.0.md',
|
||||
loadSidebar: true,
|
||||
subMaxLevel: 3,
|
||||
auto2top: true,
|
||||
coverpage: false,
|
||||
alias: {
|
||||
'/.*/_sidebar.md': '/_sidebar.md'
|
||||
},
|
||||
// 自定义 slugify 函数,确保锚点正确生成(与文档内部链接格式一致)
|
||||
slugify: function(text) {
|
||||
// 移除标题标记和空格
|
||||
text = text.trim();
|
||||
// 移除中文括号和标点符号
|
||||
var slug = text
|
||||
.replace(/[()()【】\[\]《》<>""'',。、;:!?]/g, '') // 移除中文和英文标点符号
|
||||
.replace(/\./g, '') // 移除点号(如 6.1 -> 61)
|
||||
.replace(/\s+/g, '-') // 空格替换为连字符
|
||||
.replace(/[^\u4e00-\u9fa5a-z0-9-]+/g, '') // 移除其他非中文、字母、数字、连字符的字符
|
||||
.replace(/^-+|-+$/g, '') // 移除首尾连字符
|
||||
.replace(/-+/g, '-'); // 多个连字符合并为一个
|
||||
slug = slug.toLowerCase(); // 转为小写(docsify 默认行为)
|
||||
// 如果以数字开头,添加下划线前缀(匹配 sidebar 链接格式)
|
||||
if (/^\d/.test(slug)) {
|
||||
slug = '_' + slug;
|
||||
}
|
||||
return slug;
|
||||
},
|
||||
search: {
|
||||
maxAge: 86400000,
|
||||
paths: 'auto',
|
||||
placeholder: '搜索文档',
|
||||
noData: '找不到结果!',
|
||||
depth: 6
|
||||
},
|
||||
pagination: {
|
||||
previousText: '上一章节',
|
||||
nextText: '下一章节',
|
||||
crossChapter: true,
|
||||
crossChapterText: true,
|
||||
},
|
||||
plugins: [
|
||||
function(hook, vm) {
|
||||
hook.beforeEach(function(html) {
|
||||
return html
|
||||
})
|
||||
hook.afterEach(function(html, next) {
|
||||
next(html)
|
||||
})
|
||||
}
|
||||
]
|
||||
}
|
||||
</script>
|
||||
|
||||
<!-- 使用国内 CDN (staticfile.org 七牛云) 并优化加载顺序 -->
|
||||
<!-- Docsify 核心库 -->
|
||||
<script src="https://cdn.staticfile.org/docsify/4.13.1/docsify.min.js" defer></script>
|
||||
|
||||
<!-- 搜索插件 -->
|
||||
<script src="https://cdn.staticfile.org/docsify/4.13.1/plugins/search.min.js" defer></script>
|
||||
|
||||
<!-- 分页插件 - 使用 unpkg 作为备选 -->
|
||||
<script src="https://unpkg.com/docsify-pagination@2.10.1/dist/docsify-pagination.min.js" defer></script>
|
||||
|
||||
<!-- Prism 代码高亮 - 使用 defer 异步加载,合并加载顺序 -->
|
||||
<script src="https://cdn.staticfile.org/prism/1.29.0/components/prism-core.min.js" defer></script>
|
||||
<script src="https://cdn.staticfile.org/prism/1.29.0/components/prism-bash.min.js" defer></script>
|
||||
<script src="https://cdn.staticfile.org/prism/1.29.0/components/prism-javascript.min.js" defer></script>
|
||||
<script src="https://cdn.staticfile.org/prism/1.29.0/components/prism-java.min.js" defer></script>
|
||||
<script src="https://cdn.staticfile.org/prism/1.29.0/components/prism-kotlin.min.js" defer></script>
|
||||
<script src="https://cdn.staticfile.org/prism/1.29.0/components/prism-swift.min.js" defer></script>
|
||||
<script src="https://cdn.staticfile.org/prism/1.29.0/components/prism-python.min.js" defer></script>
|
||||
<script src="https://cdn.staticfile.org/prism/1.29.0/components/prism-json.min.js" defer></script>
|
||||
<script src="https://cdn.staticfile.org/prism/1.29.0/components/prism-markdown.min.js" defer></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
161
developer-front/public/docs/mobile-dev.md
Normal file
@@ -0,0 +1,161 @@
|
||||
# 移动端开发
|
||||
|
||||
完成配对与权限接入,下载示例 App 并查看开源仓库,集成通知与同步。
|
||||
|
||||
## 平台支持
|
||||
|
||||
觉远创智 SDK 支持以下移动端平台:
|
||||
|
||||
### Android
|
||||
|
||||
使用 Kotlin/Java 开发,支持蓝牙和 Wi-Fi 配对,需要相应权限。
|
||||
|
||||
**环境要求:**
|
||||
- Android 5.0 (API 21) 及以上
|
||||
- Kotlin 1.5+ 或 Java 8+
|
||||
|
||||
**安装:**
|
||||
|
||||
```gradle
|
||||
dependencies {
|
||||
implementation 'com.smartglasses:mobile-sdk:2.1.0'
|
||||
}
|
||||
```
|
||||
|
||||
**初始化:**
|
||||
|
||||
```kotlin
|
||||
val mobileSDK = MobileSDK.getInstance(context)
|
||||
mobileSDK.initialize(
|
||||
apiKey = "your-api-key",
|
||||
appId = "your-app-id"
|
||||
)
|
||||
```
|
||||
|
||||
**设备配对:**
|
||||
|
||||
```kotlin
|
||||
// 扫描设备
|
||||
mobileSDK.scanDevices { devices ->
|
||||
// 选择设备进行配对
|
||||
mobileSDK.pairDevice(devices[0]) { success ->
|
||||
if (success) {
|
||||
println("配对成功")
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### iOS
|
||||
|
||||
使用 Swift 开发,需要麦克风和通知权限,支持设备绑定。
|
||||
|
||||
**环境要求:**
|
||||
- iOS 12.0 及以上
|
||||
- Swift 5.0+
|
||||
|
||||
**安装:**
|
||||
|
||||
```ruby
|
||||
pod 'SmartGlassesMobileSDK', '~> 2.1.0'
|
||||
```
|
||||
|
||||
**初始化:**
|
||||
|
||||
```swift
|
||||
import SmartGlassesMobileSDK
|
||||
|
||||
let mobileSDK = MobileSDK.shared
|
||||
mobileSDK.initialize(
|
||||
apiKey: "your-api-key",
|
||||
appId: "your-app-id"
|
||||
)
|
||||
```
|
||||
|
||||
**设备配对:**
|
||||
|
||||
```swift
|
||||
// 扫描设备
|
||||
mobileSDK.scanDevices { devices in
|
||||
// 选择设备进行配对
|
||||
mobileSDK.pairDevice(devices[0]) { success in
|
||||
if success {
|
||||
print("配对成功")
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Web
|
||||
|
||||
使用 Web API 进行开发,支持进度上报。
|
||||
|
||||
**安装:**
|
||||
|
||||
```bash
|
||||
npm install smartglasses-mobile-sdk
|
||||
```
|
||||
|
||||
**使用:**
|
||||
|
||||
```javascript
|
||||
import { MobileSDK } from 'smartglasses-mobile-sdk'
|
||||
|
||||
const mobileSDK = new MobileSDK({
|
||||
apiKey: 'your-api-key',
|
||||
appId: 'your-app-id'
|
||||
})
|
||||
|
||||
// 初始化
|
||||
await mobileSDK.initialize()
|
||||
|
||||
// 扫描设备
|
||||
const devices = await mobileSDK.scanDevices()
|
||||
|
||||
// 配对设备
|
||||
await mobileSDK.pairDevice(devices[0])
|
||||
```
|
||||
|
||||
## 权限配置
|
||||
|
||||
### Android
|
||||
|
||||
在 `AndroidManifest.xml` 中添加权限:
|
||||
|
||||
```xml
|
||||
<uses-permission android:name="android.permission.BLUETOOTH" />
|
||||
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
|
||||
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
|
||||
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
|
||||
```
|
||||
|
||||
### iOS
|
||||
|
||||
在 `Info.plist` 中添加权限说明:
|
||||
|
||||
```xml
|
||||
<key>NSBluetoothAlwaysUsageDescription</key>
|
||||
<string>需要蓝牙权限以连接智能眼镜设备</string>
|
||||
<key>NSMicrophoneUsageDescription</key>
|
||||
<string>需要麦克风权限以进行语音交互</string>
|
||||
```
|
||||
|
||||
## 通知集成
|
||||
|
||||
```kotlin
|
||||
// Android 示例
|
||||
mobileSDK.notifications.sendNotification(
|
||||
title = "新消息",
|
||||
content = "您有一条新消息",
|
||||
icon = R.drawable.notification_icon
|
||||
)
|
||||
```
|
||||
|
||||
```swift
|
||||
// iOS 示例
|
||||
mobileSDK.notifications.sendNotification(
|
||||
title: "新消息",
|
||||
body: "您有一条新消息"
|
||||
)
|
||||
```
|
||||
|
||||
1875
developer-front/public/docs/venus-sdk-1.0.md
Normal file
BIN
developer-front/public/favicon.ico
Normal file
|
After Width: | Height: | Size: 5.5 KiB |
46
developer-front/public/html/ie.html
Normal file
209
developer-front/public/index.html
Normal file
@@ -0,0 +1,209 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
|
||||
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
|
||||
<!-- <title>11<%= webpackConfig.name %></title> -->
|
||||
<title><%= htmlWebpackPlugin.options.title %></title>
|
||||
<!--[if lt IE 11]><script>window.location.href='/html/ie.html';</script><![endif]-->
|
||||
<style>
|
||||
html,
|
||||
body,
|
||||
#app {
|
||||
height: 100%;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
}
|
||||
.chromeframe {
|
||||
margin: 0.2em 0;
|
||||
background: #ccc;
|
||||
color: #000;
|
||||
padding: 0.2em 0;
|
||||
}
|
||||
|
||||
#loader-wrapper {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
z-index: 999999;
|
||||
}
|
||||
|
||||
#loader {
|
||||
display: block;
|
||||
position: relative;
|
||||
left: 50%;
|
||||
top: 50%;
|
||||
width: 150px;
|
||||
height: 150px;
|
||||
margin: -75px 0 0 -75px;
|
||||
border-radius: 50%;
|
||||
border: 3px solid transparent;
|
||||
border-top-color: #FFF;
|
||||
-webkit-animation: spin 2s linear infinite;
|
||||
-ms-animation: spin 2s linear infinite;
|
||||
-moz-animation: spin 2s linear infinite;
|
||||
-o-animation: spin 2s linear infinite;
|
||||
animation: spin 2s linear infinite;
|
||||
z-index: 1001;
|
||||
}
|
||||
|
||||
#loader:before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 5px;
|
||||
left: 5px;
|
||||
right: 5px;
|
||||
bottom: 5px;
|
||||
border-radius: 50%;
|
||||
border: 3px solid transparent;
|
||||
border-top-color: #FFF;
|
||||
-webkit-animation: spin 3s linear infinite;
|
||||
-moz-animation: spin 3s linear infinite;
|
||||
-o-animation: spin 3s linear infinite;
|
||||
-ms-animation: spin 3s linear infinite;
|
||||
animation: spin 3s linear infinite;
|
||||
}
|
||||
|
||||
#loader:after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 15px;
|
||||
left: 15px;
|
||||
right: 15px;
|
||||
bottom: 15px;
|
||||
border-radius: 50%;
|
||||
border: 3px solid transparent;
|
||||
border-top-color: #FFF;
|
||||
-moz-animation: spin 1.5s linear infinite;
|
||||
-o-animation: spin 1.5s linear infinite;
|
||||
-ms-animation: spin 1.5s linear infinite;
|
||||
-webkit-animation: spin 1.5s linear infinite;
|
||||
animation: spin 1.5s linear infinite;
|
||||
}
|
||||
|
||||
|
||||
@-webkit-keyframes spin {
|
||||
0% {
|
||||
-webkit-transform: rotate(0deg);
|
||||
-ms-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
100% {
|
||||
-webkit-transform: rotate(360deg);
|
||||
-ms-transform: rotate(360deg);
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes spin {
|
||||
0% {
|
||||
-webkit-transform: rotate(0deg);
|
||||
-ms-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
100% {
|
||||
-webkit-transform: rotate(360deg);
|
||||
-ms-transform: rotate(360deg);
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#loader-wrapper .loader-section {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
width: 51%;
|
||||
height: 100%;
|
||||
background: #7171C6;
|
||||
z-index: 1000;
|
||||
-webkit-transform: translateX(0);
|
||||
-ms-transform: translateX(0);
|
||||
transform: translateX(0);
|
||||
}
|
||||
|
||||
#loader-wrapper .loader-section.section-left {
|
||||
left: 0;
|
||||
}
|
||||
|
||||
#loader-wrapper .loader-section.section-right {
|
||||
right: 0;
|
||||
}
|
||||
|
||||
|
||||
.loaded #loader-wrapper .loader-section.section-left {
|
||||
-webkit-transform: translateX(-100%);
|
||||
-ms-transform: translateX(-100%);
|
||||
transform: translateX(-100%);
|
||||
-webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
||||
transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
||||
}
|
||||
|
||||
.loaded #loader-wrapper .loader-section.section-right {
|
||||
-webkit-transform: translateX(100%);
|
||||
-ms-transform: translateX(100%);
|
||||
transform: translateX(100%);
|
||||
-webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
||||
transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
||||
}
|
||||
|
||||
.loaded #loader {
|
||||
opacity: 0;
|
||||
-webkit-transition: all 0.3s ease-out;
|
||||
transition: all 0.3s ease-out;
|
||||
}
|
||||
|
||||
.loaded #loader-wrapper {
|
||||
visibility: hidden;
|
||||
-webkit-transform: translateY(-100%);
|
||||
-ms-transform: translateY(-100%);
|
||||
transform: translateY(-100%);
|
||||
-webkit-transition: all 0.3s 1s ease-out;
|
||||
transition: all 0.3s 1s ease-out;
|
||||
}
|
||||
|
||||
.no-js #loader-wrapper {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.no-js h1 {
|
||||
color: #222222;
|
||||
}
|
||||
|
||||
#loader-wrapper .load_title {
|
||||
font-family: 'Open Sans';
|
||||
color: #FFF;
|
||||
font-size: 19px;
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
z-index: 9999999999999;
|
||||
position: absolute;
|
||||
top: 60%;
|
||||
opacity: 1;
|
||||
line-height: 30px;
|
||||
}
|
||||
|
||||
#loader-wrapper .load_title span {
|
||||
font-weight: normal;
|
||||
font-style: italic;
|
||||
font-size: 13px;
|
||||
color: #FFF;
|
||||
opacity: 0.5;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div id="app">
|
||||
<div id="loader-wrapper">
|
||||
<div id="loader"></div>
|
||||
<div class="loader-section section-left"></div>
|
||||
<div class="loader-section section-right"></div>
|
||||
<div class="load_title">正在加载系统资源,请耐心等待</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
2
developer-front/public/robots.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
User-agent: *
|
||||
Disallow: /
|
||||
148
developer-front/public/sensitive/广告.txt
Normal file
@@ -0,0 +1,148 @@
|
||||
兼职
|
||||
招聘
|
||||
网络
|
||||
|
||||
QQ
|
||||
招聘
|
||||
|
||||
有意者
|
||||
到货
|
||||
|
||||
本店
|
||||
代购
|
||||
|
||||
扣扣
|
||||
客服
|
||||
|
||||
微店
|
||||
兼职
|
||||
|
||||
兼值
|
||||
淘宝
|
||||
小姐
|
||||
|
||||
妓女
|
||||
包夜
|
||||
|
||||
3P
|
||||
LY
|
||||
JS
|
||||
|
||||
狼友
|
||||
技师
|
||||
|
||||
推油
|
||||
胸推
|
||||
|
||||
BT
|
||||
毒龙
|
||||
口爆
|
||||
|
||||
兼职
|
||||
楼凤
|
||||
|
||||
足交
|
||||
口暴
|
||||
|
||||
口交
|
||||
全套
|
||||
|
||||
SM
|
||||
桑拿
|
||||
|
||||
吞精
|
||||
|
||||
咪咪
|
||||
|
||||
婊子
|
||||
|
||||
乳方
|
||||
|
||||
操逼
|
||||
|
||||
全职
|
||||
性伴侣
|
||||
|
||||
网购
|
||||
|
||||
网络工作
|
||||
|
||||
代理
|
||||
|
||||
专业代理
|
||||
帮忙点一下
|
||||
帮忙点下
|
||||
请点击进入
|
||||
详情请进入
|
||||
私人侦探
|
||||
私家侦探
|
||||
针孔摄象
|
||||
调查婚外情
|
||||
信用卡提现
|
||||
无抵押贷款
|
||||
广告代理
|
||||
原音铃声
|
||||
借腹生子
|
||||
找个妈妈
|
||||
找个爸爸
|
||||
代孕妈妈
|
||||
代生孩子
|
||||
代开发票
|
||||
腾讯客服电话
|
||||
销售热线
|
||||
免费订购热线
|
||||
低价出售
|
||||
款到发货
|
||||
回复可见
|
||||
连锁加盟
|
||||
加盟连锁
|
||||
免费二级域名
|
||||
免费使用
|
||||
免费索取
|
||||
蚁力神
|
||||
婴儿汤
|
||||
售肾
|
||||
刻章办
|
||||
买小车
|
||||
套牌车
|
||||
玛雅网
|
||||
电脑传讯
|
||||
视频来源
|
||||
下载速度
|
||||
高清在线
|
||||
全集在线
|
||||
在线播放
|
||||
txt下载
|
||||
六位qq
|
||||
6位qq
|
||||
位的qq
|
||||
个qb
|
||||
送qb
|
||||
用刀横向切腹
|
||||
完全自杀手册
|
||||
四海帮
|
||||
足球投注
|
||||
地下钱庄
|
||||
中国复兴党
|
||||
阿波罗网
|
||||
曾道人
|
||||
六合彩
|
||||
改卷内幕
|
||||
替考试
|
||||
隐形耳机
|
||||
出售答案
|
||||
考中答案
|
||||
答an
|
||||
da案
|
||||
资金周转
|
||||
救市
|
||||
股市圈钱
|
||||
崩盘
|
||||
资金短缺
|
||||
证监会
|
||||
质押贷款
|
||||
小额贷款
|
||||
周小川
|
||||
刘明康
|
||||
尚福林
|
||||
孔丹
|
||||
326
developer-front/public/sensitive/政治类.txt
Normal file
@@ -0,0 +1,326 @@
|
||||
习近平,
|
||||
平近习,
|
||||
xjp,
|
||||
习太子,
|
||||
习明泽,
|
||||
老习,
|
||||
温家宝,
|
||||
温加宝,
|
||||
温x,
|
||||
温jia宝,
|
||||
温宝宝,
|
||||
温加饱,
|
||||
温加保,
|
||||
张培莉,
|
||||
温云松,
|
||||
温如春,
|
||||
温jb,
|
||||
胡温,
|
||||
胡x,
|
||||
胡jt,
|
||||
胡boss,
|
||||
胡总,
|
||||
胡王八,
|
||||
hujintao,
|
||||
胡jintao,
|
||||
胡j涛,
|
||||
胡惊涛,
|
||||
胡景涛,
|
||||
胡紧掏,
|
||||
湖紧掏,
|
||||
胡紧套,
|
||||
锦涛,
|
||||
hjt,
|
||||
胡派,
|
||||
胡主席,
|
||||
刘永清,
|
||||
胡海峰,
|
||||
胡海清,
|
||||
江泽民,
|
||||
民泽江,
|
||||
江胡,
|
||||
江哥,
|
||||
江主席,
|
||||
江书记,
|
||||
江浙闽,
|
||||
江沢民,
|
||||
江浙民,
|
||||
择民,
|
||||
则民,
|
||||
茳泽民,
|
||||
zemin,
|
||||
ze民,
|
||||
老江,
|
||||
老j,
|
||||
江core,
|
||||
江x,
|
||||
江派,
|
||||
江zm,
|
||||
jzm,
|
||||
江戏子,
|
||||
江蛤蟆,
|
||||
江某某,
|
||||
江贼,
|
||||
江猪,
|
||||
江氏集团,
|
||||
江绵恒,
|
||||
江绵康,
|
||||
王冶坪,
|
||||
江泽慧,
|
||||
邓小平,
|
||||
平小邓,
|
||||
xiao平,
|
||||
邓xp,
|
||||
邓晓平,
|
||||
邓朴方,
|
||||
邓榕,
|
||||
邓质方,
|
||||
毛泽东,
|
||||
猫泽东,
|
||||
猫则东,
|
||||
猫贼洞,
|
||||
毛zd,
|
||||
毛zx,
|
||||
z东,
|
||||
ze东,
|
||||
泽d,
|
||||
zedong,
|
||||
毛太祖,
|
||||
毛相,
|
||||
主席画像,
|
||||
改革历程,
|
||||
朱镕基,
|
||||
朱容基,
|
||||
朱镕鸡,
|
||||
朱容鸡,
|
||||
朱云来,
|
||||
李鹏,
|
||||
李peng,
|
||||
里鹏,
|
||||
李月月鸟,
|
||||
李小鹏,
|
||||
李小琳,
|
||||
华主席,
|
||||
华国,
|
||||
国锋,
|
||||
国峰,
|
||||
锋同志,
|
||||
白春礼,
|
||||
薄熙来,
|
||||
薄一波,
|
||||
蔡赴朝,
|
||||
蔡武,
|
||||
曹刚川,
|
||||
常万全,
|
||||
陈炳德,
|
||||
陈德铭,
|
||||
陈建国,
|
||||
陈良宇,
|
||||
陈绍基,
|
||||
陈同海,
|
||||
陈至立,
|
||||
戴秉国,
|
||||
丁一平,
|
||||
董建华,
|
||||
杜德印,
|
||||
杜世成,
|
||||
傅锐,
|
||||
郭伯雄,
|
||||
郭金龙,
|
||||
贺国强,
|
||||
胡春华,
|
||||
耀邦,
|
||||
华建敏,
|
||||
黄华华,
|
||||
黄丽满,
|
||||
黄兴国,
|
||||
回良玉,
|
||||
贾庆林,
|
||||
贾廷安,
|
||||
靖志远,
|
||||
李长春,
|
||||
李春城,
|
||||
李建国,
|
||||
李克强,
|
||||
李岚清,
|
||||
李沛瑶,
|
||||
李荣融,
|
||||
李瑞环,
|
||||
李铁映,
|
||||
李先念,
|
||||
李学举,
|
||||
李源潮,
|
||||
栗智,
|
||||
梁光烈,
|
||||
廖锡龙,
|
||||
林树森,
|
||||
林炎志,
|
||||
林左鸣,
|
||||
令计划,
|
||||
柳斌杰,
|
||||
刘奇葆,
|
||||
刘少奇,
|
||||
刘延东,
|
||||
刘云山,
|
||||
刘志军,
|
||||
龙新民,
|
||||
路甬祥,
|
||||
罗箭,
|
||||
吕祖善,
|
||||
马飚,
|
||||
马恺,
|
||||
孟建柱,
|
||||
欧广源,
|
||||
强卫,
|
||||
沈跃跃,
|
||||
宋平顺,
|
||||
粟戎生,
|
||||
苏树林,
|
||||
孙家正,
|
||||
铁凝,
|
||||
屠光绍,
|
||||
王东明,
|
||||
汪东兴,
|
||||
王鸿举,
|
||||
王沪宁,
|
||||
王乐泉,
|
||||
王洛林,
|
||||
王岐山,
|
||||
王胜俊,
|
||||
王太华,
|
||||
王学军,
|
||||
王兆国,
|
||||
王振华,
|
||||
吴邦国,
|
||||
吴定富,
|
||||
吴官正,
|
||||
无官正,
|
||||
吴胜利,
|
||||
吴仪,
|
||||
奚国华,
|
||||
习仲勋,
|
||||
徐才厚,
|
||||
许其亮,
|
||||
徐绍史,
|
||||
杨洁篪,
|
||||
叶剑英,
|
||||
由喜贵,
|
||||
于幼军,
|
||||
俞正声,
|
||||
袁纯清,
|
||||
曾培炎,
|
||||
曾庆红,
|
||||
曾宪梓,
|
||||
曾荫权,
|
||||
张德江,
|
||||
张定发,
|
||||
张高丽,
|
||||
张立昌,
|
||||
张荣坤,
|
||||
张志国,
|
||||
赵洪祝,
|
||||
紫阳,
|
||||
周生贤,
|
||||
周永康,
|
||||
朱海仑,
|
||||
中南海,
|
||||
大陆当局,
|
||||
中国当局,
|
||||
北京当局,
|
||||
共产党,
|
||||
党产共,
|
||||
共贪党,
|
||||
阿共,
|
||||
产党共,
|
||||
公产党,
|
||||
工产党,
|
||||
共c党,
|
||||
共x党,
|
||||
共铲,
|
||||
供产,
|
||||
共惨,
|
||||
供铲党,
|
||||
供铲谠,
|
||||
供铲裆,
|
||||
共残党,
|
||||
共残主义,
|
||||
共产主义的幽灵,
|
||||
拱铲,
|
||||
老共,
|
||||
中共,
|
||||
中珙,
|
||||
中gong,
|
||||
gc党,
|
||||
贡挡,
|
||||
gong党,
|
||||
g产,
|
||||
狗产蛋,
|
||||
共残裆,
|
||||
恶党,
|
||||
邪党,
|
||||
共产专制,
|
||||
共产王朝,
|
||||
裆中央,
|
||||
土共,
|
||||
土g,
|
||||
共狗,
|
||||
g匪,
|
||||
共匪,
|
||||
仇共,
|
||||
政府,
|
||||
症腐,
|
||||
政腐,
|
||||
政付,
|
||||
正府,
|
||||
政俯,
|
||||
政f,
|
||||
zhengfu,
|
||||
政zhi,
|
||||
挡中央,
|
||||
档中央,
|
||||
中央领导,
|
||||
中国zf,
|
||||
中央zf,
|
||||
国wu院,
|
||||
中华帝国,
|
||||
gong和,
|
||||
大陆官方,
|
||||
北京政权,
|
||||
江泽民,
|
||||
胡锦涛,
|
||||
温家宝,
|
||||
习近平,
|
||||
习仲勋,
|
||||
贺国强,
|
||||
贺子珍,
|
||||
周永康,
|
||||
李长春,
|
||||
李德生,
|
||||
王岐山,
|
||||
姚依林,
|
||||
回良玉,
|
||||
李源潮,
|
||||
李干成,
|
||||
戴秉国,
|
||||
黄镇,
|
||||
刘延东,
|
||||
刘瑞龙,
|
||||
俞正声,
|
||||
黄敬,
|
||||
薄熙,
|
||||
薄一波,
|
||||
周小川,
|
||||
周建南,
|
||||
温云松,
|
||||
徐明,
|
||||
江泽慧,
|
||||
江绵恒,
|
||||
江绵康,
|
||||
李小鹏,
|
||||
李鹏,
|
||||
李小琳,
|
||||
朱云来,
|
||||
朱容基,
|
||||
法轮功,
|
||||
李洪志,
|
||||
新疆骚乱
|
||||
438
developer-front/public/sensitive/涉枪涉爆违法信息关键词.txt
Normal file
@@ -0,0 +1,438 @@
|
||||
出售雷管
|
||||
炸药
|
||||
炸药
|
||||
枪支
|
||||
出售炸药
|
||||
出售炸药 电话
|
||||
制作火药配方
|
||||
炸药出售
|
||||
出售雷管炸药
|
||||
火药配方
|
||||
在家里做原子弹
|
||||
硝酸甘油炸弹制作
|
||||
TNT 炸弹的制作
|
||||
硝铵炸药配方
|
||||
硝酸甘油制作
|
||||
炸弹配方
|
||||
简易炸药
|
||||
火药制作简易炸弹
|
||||
炸弹制作
|
||||
硝酸甘油
|
||||
硝酸甘油炸弹制作方法
|
||||
手把手教你做炸弹
|
||||
恐怖分子傻瓜手册
|
||||
氢弹手工制作方法
|
||||
起爆器
|
||||
自制燃烧弹
|
||||
燃烧弹
|
||||
弹药制造方法
|
||||
液体炸药配方
|
||||
炸药配方与制作
|
||||
自制炸药配方
|
||||
tnt炸药成分
|
||||
炸药的制作
|
||||
tnt炸药配方
|
||||
各种炸药配方大全
|
||||
炸药的成分
|
||||
燃烧弹的制作方
|
||||
黑火药的配方
|
||||
黑火药的制作
|
||||
黑火药比例
|
||||
燃烧弹 制作
|
||||
黑火药配方比例
|
||||
黑火药的成分
|
||||
原子弹配方
|
||||
原子弹DIY教程
|
||||
C4炸药
|
||||
雷管出售
|
||||
制作硝化甘油
|
||||
DIY核弹
|
||||
核弹制作方法
|
||||
原子弹制作手册
|
||||
简易原子弹教程
|
||||
黑火药配方
|
||||
自制炸药方法
|
||||
教你怎么用土办法做武器
|
||||
莫洛托夫鸡尾酒的配方
|
||||
zz炸弹的制作方法
|
||||
C4炸药的成分
|
||||
炸药制造生产工艺
|
||||
原子弹制造完全手册
|
||||
「红烧兔子」大餐
|
||||
汽车炸弹制作
|
||||
人体炸弹制作流程
|
||||
炸弹制作从入门
|
||||
鸡尾酒炸弹制作
|
||||
集束炸弹制作
|
||||
硝酸铵的简便制取方法
|
||||
莫洛托夫燃烧弹
|
||||
塑胶炸弹
|
||||
用火药混合塑料
|
||||
高性能爆炸物质混合
|
||||
原子弹 制作方法
|
||||
手教你制作原子弹
|
||||
轻型巡航导弹的制作
|
||||
黑索金的制造过程
|
||||
Zha药制造进程
|
||||
购买自爆材料
|
||||
可塑炸弹制作方法
|
||||
C4塑胶炸药
|
||||
水浴法制TNT
|
||||
简易核弹头的制造
|
||||
高爆炸药的基本配方
|
||||
如何制硝化甘油
|
||||
燃烧剂的简易制备
|
||||
简易大威力炸弹
|
||||
炸弹制作入门
|
||||
硝酸甘油炸药制作
|
||||
基本配方是硝酸甘
|
||||
燃烧剂的简易制作
|
||||
制作性能优良的燃烧弹
|
||||
酸甘油炸药
|
||||
简易导弹制作
|
||||
核弹头的制造
|
||||
可塑炸弹制作
|
||||
炸药硝酸甘油制法
|
||||
原子弹制作方法
|
||||
火药的配方
|
||||
手教你做原子弹
|
||||
怎么用土办法做武器
|
||||
手把手教你制作原子弹
|
||||
燃烧弹的制作方法
|
||||
怎么自制燃烧弹
|
||||
TNT炸弹制作
|
||||
高爆炸药基本配方
|
||||
爆破和杀伤燃烧弹
|
||||
炸弹制作从入门到精
|
||||
写的炸弹制作教程
|
||||
原子弹制作 方法
|
||||
教你制作原子弹
|
||||
下硝化甘油的制作方法
|
||||
DIY原子弹
|
||||
原子弹制作
|
||||
炸药及其制造方法
|
||||
ATOM弹制造
|
||||
三分钟教你原子弹
|
||||
火药原理
|
||||
简易炸弹
|
||||
简易燃烧弹
|
||||
土炸药成份
|
||||
你怎么用土办法做武器
|
||||
燃烧弹制作
|
||||
燃烧瓶的制作方法
|
||||
炸弹制作手册 硫酸
|
||||
原子弹制作方法DIY
|
||||
汽油三分之一白糖混合
|
||||
炸药的制作配方
|
||||
燃烧弹的制作方
|
||||
炸药的配方
|
||||
如何自制燃烧弹
|
||||
标准炸弹教程
|
||||
黑火药和硝酸钾农药混合
|
||||
恐怖分子自己制造炸弹
|
||||
手柄制作炸弹引爆器
|
||||
制作炸弹首先要
|
||||
燃烧瓶制作
|
||||
出售炸药QQ
|
||||
出售气枪
|
||||
出售气枪 QQ
|
||||
出售气枪 电话
|
||||
出售手枪
|
||||
出售手枪 QQ
|
||||
出售手枪 电话
|
||||
出售猎枪
|
||||
出售猎枪 QQ
|
||||
出售猎枪 电话
|
||||
出售汽枪
|
||||
出售步枪
|
||||
出售狙击枪
|
||||
出售手狗
|
||||
出售气狗
|
||||
出售猎狗
|
||||
【手枪出售】联系电话
|
||||
64式手枪出售
|
||||
92式手枪出售
|
||||
出售:高仿真枪
|
||||
出售54式手枪
|
||||
出售M1911
|
||||
出售各类猎狗
|
||||
出售国产军用54手枪
|
||||
出售火枪 –游戏
|
||||
出售进口金属枪模
|
||||
出售仿真枪
|
||||
出售麻醉枪免收任何定金
|
||||
出售手枪=货到付款
|
||||
出售外国枪模
|
||||
出售袖珍手枪
|
||||
娥眉气枪出售
|
||||
防身手枪QQ
|
||||
防身武器手枪
|
||||
仿真枪QQ
|
||||
钢珠枪小口径步枪
|
||||
高压狗QQ
|
||||
高压气枪,气枪子弹
|
||||
高压气枪|电狗专卖
|
||||
高压气枪|气枪货到付款
|
||||
高压气枪专卖店
|
||||
各类军用枪
|
||||
各类军用枪支
|
||||
各式气枪出售
|
||||
工字牌气枪出售专卖
|
||||
气枪
|
||||
工字汽狗麻醉枪
|
||||
供应军用手枪
|
||||
供应汽枪
|
||||
购买枪支QQ
|
||||
国产汽狗专卖|气枪货
|
||||
集团出售手枪
|
||||
集团出售手枪气枪
|
||||
进口气枪,气枪子弹
|
||||
军用54出售
|
||||
军用77出售
|
||||
军用手枪钢珠枪
|
||||
里有汽枪出售
|
||||
猎枪出售/枪
|
||||
猎枪仿真枪QQ
|
||||
猎枪麻醉枪钢珠枪
|
||||
猎枪哪里有卖
|
||||
猎枪手枪买卖
|
||||
猎枪销售手枪销售气枪
|
||||
猎枪专卖店
|
||||
猎枪子弹底火专卖
|
||||
麻醉枪出售可验货
|
||||
麻醉枪猎枪军用
|
||||
买卖54狗
|
||||
买卖64狗
|
||||
买卖警察枪支
|
||||
买卖军狗
|
||||
买卖军用枪支
|
||||
卖64手枪
|
||||
卖92手枪
|
||||
卖钢珠枪QQ
|
||||
哪里能买到自制手枪
|
||||
哪里有钢珠枪
|
||||
哪里有连发猎枪买卖
|
||||
哪里有卖双管猎
|
||||
哪里有气枪卖
|
||||
哪里有枪出售
|
||||
哪里有真枪出售
|
||||
哪里有真枪卖买
|
||||
哪能买到真枪
|
||||
期出售手枪气枪猎
|
||||
气狗 高压气枪
|
||||
气狗出售 进口气狗
|
||||
气枪专卖网
|
||||
气枪/出售/专卖网
|
||||
气枪/猎枪/钢珠枪
|
||||
气枪仿真枪出售
|
||||
气枪购买|气枪组装
|
||||
气枪货到付款,汽狗出售
|
||||
气枪价格 仿真气枪
|
||||
气枪价格,气枪专卖店
|
||||
气枪看货加QQ
|
||||
气枪联系QQ
|
||||
气枪猎枪麻醉枪
|
||||
气枪迷魂药
|
||||
汽狗高压汽枪
|
||||
铅弹 上海工字气枪
|
||||
全金属仿真枪专卖
|
||||
热武器QQ
|
||||
三箭气枪出售
|
||||
手枪气* 枪猎
|
||||
手槍买卖自制手枪
|
||||
售枪购买手枪
|
||||
售手枪QQ
|
||||
司马仿真枪模型QQ
|
||||
淘宝气枪货到付款
|
||||
提供气狗专卖店
|
||||
提供专业及时的气狗
|
||||
秃鹰气枪货到付款
|
||||
锡峰气枪出售
|
||||
仙鹤气枪出售
|
||||
销售/专卖/买卖77式手枪
|
||||
销售电手狗
|
||||
销售气手狗
|
||||
销售小口径步枪
|
||||
销售运动步枪
|
||||
小口径秃鹰沙漠
|
||||
有军用枪支出售
|
||||
长期出 售手枪
|
||||
折叠狗QQ
|
||||
转让 猎枪
|
||||
子弹货到付款
|
||||
自制手枪哪里买
|
||||
自制手枪哪里有卖
|
||||
阻击枪/汽枪/高压气枪
|
||||
组装手枪
|
||||
最新销售汽狗
|
||||
出售警用手铐|仿真枪
|
||||
猎枪|真枪
|
||||
手枪|阻击枪
|
||||
弓弩专营
|
||||
弓弩专卖网货到付款
|
||||
弓弩专卖网
|
||||
弓弩专卖货到付款
|
||||
弓弩专卖店网
|
||||
弓弩专卖店
|
||||
弓弩专卖
|
||||
弓弩制作
|
||||
弓弩直销
|
||||
弓弩有限公司
|
||||
弓弩营销中心
|
||||
弓弩一百专卖店
|
||||
弓弩销售
|
||||
弓弩网
|
||||
弓弩网
|
||||
弓弩图纸
|
||||
弓弩特许经销
|
||||
弓弩狩猎网
|
||||
自制手弩
|
||||
追风弓弩麻醉箭专卖
|
||||
专业弓弩网
|
||||
中国战神军用弓弩
|
||||
中国弩弓专卖
|
||||
中国弓弩专卖网
|
||||
中国弓弩直销
|
||||
中国弓弩网
|
||||
中国弓弩狩猎网
|
||||
中国弓驽网
|
||||
制作简易弓弩
|
||||
郑州弓弩专卖
|
||||
赵氏弓弩专卖网
|
||||
赵氏弓弩专卖店
|
||||
赵氏弓弩专卖
|
||||
赵氏弓弩销售
|
||||
小型弓弩专卖店
|
||||
小猎人弓弩网
|
||||
狩猎器材弓弩专卖
|
||||
狩猎器材弓弩
|
||||
狩猎弓弩专卖网
|
||||
狩猎弓弩专卖
|
||||
狩猎弓弩麻醉箭
|
||||
手枪式折叠三用弩
|
||||
三利达弓弩专卖网
|
||||
三利达弓弩直营
|
||||
三利达弓弩配件
|
||||
三步倒药箭批发
|
||||
三步倒弩箭专卖
|
||||
三步倒麻醉弩箭销售
|
||||
三步倒麻醉箭专卖
|
||||
三步倒麻醉箭
|
||||
三步倒捕狗药
|
||||
军用弓弩专卖网
|
||||
军用弓弩专卖店
|
||||
军用弓弩批发
|
||||
军用弓弩公司
|
||||
供应三利达弓弩麻醉箭
|
||||
供应三步倒麻醉箭
|
||||
供应秦氏弓弩
|
||||
供应弩用麻醉箭
|
||||
供应弩捕狗箭
|
||||
供应麻醉箭三步倒
|
||||
供应麻醉箭批发
|
||||
供应麻醉箭
|
||||
供应军用弩折叠弩
|
||||
供应军用弓弩专卖
|
||||
供应精品弓弩
|
||||
供应弓弩麻醉箭
|
||||
供应弓弩
|
||||
供应钢珠弓弩
|
||||
弓弩商城专卖
|
||||
弓弩商城
|
||||
弓弩亲兄弟货到付款
|
||||
弓弩批发
|
||||
弓弩免定金货到付款
|
||||
弓弩麻醉箭
|
||||
弓弩麻醉镖
|
||||
弓弩论坛
|
||||
钢珠弓弩专卖网
|
||||
钢珠弓弩专卖店
|
||||
打狗弓弩三步倒
|
||||
麻醉弓弩专卖店
|
||||
出售军刀
|
||||
出售军刺
|
||||
出售弹簧刀
|
||||
出售三棱刀
|
||||
出售跳刀
|
||||
军刀网
|
||||
南方军刀网
|
||||
户外军刀网
|
||||
三棱军刺专卖
|
||||
出售开山刀军刺
|
||||
西点军刀网
|
||||
军刀专 卖
|
||||
戈博军刀
|
||||
阿兰德龙户外
|
||||
出售军品军刀
|
||||
勃朗宁军刀
|
||||
军刀军品网
|
||||
阿兰得龙野营刀具网
|
||||
出售军刺军刀
|
||||
警用刀具出售
|
||||
折刀专卖网
|
||||
阳江军品军刀网
|
||||
野营刀专卖
|
||||
砍刀精品折刀专卖
|
||||
匕首蝴蝶甩刀专卖
|
||||
军刀专卖军刺
|
||||
军刀专卖刀具批发
|
||||
军刀图片砍刀
|
||||
军刀网军刀专卖
|
||||
军刀价格军用刀具
|
||||
军品军刺网
|
||||
军刀军刺甩棍
|
||||
阳江刀具批发网
|
||||
北方先锋军刀
|
||||
正品军刺出售
|
||||
野营军刀出售
|
||||
开山刀砍刀出售
|
||||
仿品军刺出售
|
||||
军刀直刀专卖
|
||||
手工猎刀专卖
|
||||
自动跳刀专卖
|
||||
军刀电棍销售
|
||||
军刀甩棍销售
|
||||
美国军刀出售
|
||||
极端武力折刀
|
||||
防卫棍刀户外刀具
|
||||
阿兰德龙野营刀
|
||||
仿品军刺网
|
||||
野营砍刀户外军刀
|
||||
手工猎刀户外刀具
|
||||
中国户外刀具网
|
||||
西点军品军刀网
|
||||
野营开山刀军刺
|
||||
三利达弓弩军刀
|
||||
尼泊尔军刀出售
|
||||
防卫野营砍刀出售
|
||||
防卫著名军刀出售
|
||||
防卫棍刀出售
|
||||
防卫甩棍出售
|
||||
防卫电棍出售
|
||||
军刺野营砍刀出售
|
||||
著名精品折刀出售
|
||||
战术军刀出售
|
||||
刺刀专卖网
|
||||
户外军刀出售
|
||||
阳江刀具直销网
|
||||
冷钢刀具直销网
|
||||
防卫刀具直销网
|
||||
极端武力直销网
|
||||
刀具直销网
|
||||
军刀直销网
|
||||
直刀匕首直销网
|
||||
军刀匕首直销网
|
||||
折刀砍刀军品网
|
||||
野营刀具军品网
|
||||
阳江刀具军品网
|
||||
冷钢刀具军品网
|
||||
防卫刀具军品网
|
||||
极端武力军品网
|
||||
军用刀具军品网
|
||||
军刀直刀军品网
|
||||
折刀砍刀专卖
|
||||
野营刀具专卖
|
||||
阳江刀具专卖
|
||||
冷钢刀具专卖
|
||||
防卫刀具专卖
|
||||
出售美军现役军刀
|
||||
14595
developer-front/public/sensitive/网址.txt
Normal file
304
developer-front/public/sensitive/色情类.txt
Normal file
@@ -0,0 +1,304 @@
|
||||
爱液,
|
||||
按摩棒,
|
||||
拔出来,
|
||||
爆草,
|
||||
包二奶,
|
||||
暴干,
|
||||
暴奸,
|
||||
暴乳,
|
||||
爆乳,
|
||||
暴淫,
|
||||
被操,
|
||||
被插,
|
||||
被干,
|
||||
逼奸,
|
||||
仓井空,
|
||||
插暴,
|
||||
操逼,
|
||||
操黑,
|
||||
操烂,
|
||||
肏你,
|
||||
肏死,
|
||||
操死,
|
||||
操我,
|
||||
厕奴,
|
||||
插比,
|
||||
插b,
|
||||
插逼,
|
||||
插进,
|
||||
插你,
|
||||
插我,
|
||||
插阴,
|
||||
潮吹,
|
||||
潮喷,
|
||||
成人电影,
|
||||
成人论坛,
|
||||
成人色情,
|
||||
成人网站,
|
||||
成人文学,
|
||||
成人小说,
|
||||
艳情小说,
|
||||
成人游戏,
|
||||
吃精,
|
||||
抽插,
|
||||
春药,
|
||||
大波,
|
||||
大力抽送,
|
||||
大乳,
|
||||
荡妇,
|
||||
荡女,
|
||||
盗撮,
|
||||
发浪,
|
||||
放尿,
|
||||
肥逼,
|
||||
粉穴,
|
||||
风月大陆,
|
||||
干死你,
|
||||
干穴,
|
||||
肛交,
|
||||
肛门,
|
||||
龟头,
|
||||
裹本,
|
||||
国产av,
|
||||
好嫩,
|
||||
豪乳,
|
||||
黑逼,
|
||||
后庭,
|
||||
后穴,
|
||||
虎骑,
|
||||
换妻俱乐部,
|
||||
黄片,
|
||||
几吧,
|
||||
鸡吧,
|
||||
鸡巴,
|
||||
鸡奸,
|
||||
妓女,
|
||||
奸情,
|
||||
叫床,
|
||||
脚交,
|
||||
精液,
|
||||
就去日,
|
||||
巨屌,
|
||||
菊花洞,
|
||||
菊门,
|
||||
巨奶,
|
||||
巨乳,
|
||||
菊穴,
|
||||
开苞,
|
||||
口爆,
|
||||
口活,
|
||||
口交,
|
||||
口射,
|
||||
口淫,
|
||||
裤袜,
|
||||
狂操,
|
||||
狂插,
|
||||
浪逼,
|
||||
浪妇,
|
||||
浪叫,
|
||||
浪女,
|
||||
狼友,
|
||||
聊性,
|
||||
凌辱,
|
||||
漏乳,
|
||||
露b,
|
||||
乱交,
|
||||
乱伦,
|
||||
轮暴,
|
||||
轮操,
|
||||
轮奸,
|
||||
裸陪,
|
||||
买春,
|
||||
美逼,
|
||||
美少妇,
|
||||
美乳,
|
||||
美腿,
|
||||
美穴,
|
||||
美幼,
|
||||
秘唇,
|
||||
迷奸,
|
||||
密穴,
|
||||
蜜穴,
|
||||
蜜液,
|
||||
摸奶,
|
||||
摸胸,
|
||||
母奸,
|
||||
奈美,
|
||||
奶子,
|
||||
男奴,
|
||||
内射,
|
||||
嫩逼,
|
||||
嫩女,
|
||||
嫩穴,
|
||||
捏弄,
|
||||
女优,
|
||||
炮友,
|
||||
砲友,
|
||||
喷精,
|
||||
屁眼,
|
||||
前凸后翘,
|
||||
强jian,
|
||||
强暴,
|
||||
强奸处女,
|
||||
情趣用品,
|
||||
情色,
|
||||
拳交,
|
||||
全裸,
|
||||
群交,
|
||||
人妻,
|
||||
人兽,
|
||||
日逼,
|
||||
日烂,
|
||||
肉棒,
|
||||
肉逼,
|
||||
肉唇,
|
||||
肉洞,
|
||||
肉缝,
|
||||
肉棍,
|
||||
肉茎,
|
||||
肉具,
|
||||
揉乳,
|
||||
肉穴,
|
||||
肉欲,
|
||||
乳爆,
|
||||
乳房,
|
||||
乳沟,
|
||||
乳交,
|
||||
乳头,
|
||||
骚逼,
|
||||
骚比,
|
||||
骚女,
|
||||
骚水,
|
||||
骚穴,
|
||||
色逼,
|
||||
色界,
|
||||
色猫,
|
||||
色盟,
|
||||
色情网站,
|
||||
色区,
|
||||
色色,
|
||||
色诱,
|
||||
色欲,
|
||||
色b,
|
||||
少年阿宾,
|
||||
射爽,
|
||||
射颜,
|
||||
食精,
|
||||
释欲,
|
||||
兽奸,
|
||||
兽交,
|
||||
手淫,
|
||||
兽欲,
|
||||
熟妇,
|
||||
熟母,
|
||||
熟女,
|
||||
爽片,
|
||||
双臀,
|
||||
死逼,
|
||||
丝袜,
|
||||
丝诱,
|
||||
松岛枫,
|
||||
酥痒,
|
||||
汤加丽,
|
||||
套弄,
|
||||
体奸,
|
||||
体位,
|
||||
舔脚,
|
||||
舔阴,
|
||||
调教,
|
||||
偷欢,
|
||||
推油,
|
||||
脱内裤,
|
||||
文做,
|
||||
舞女,
|
||||
无修正,
|
||||
吸精,
|
||||
夏川纯,
|
||||
相奸,
|
||||
小逼,
|
||||
校鸡,
|
||||
小穴,
|
||||
小xue,
|
||||
性感妖娆,
|
||||
性感诱惑,
|
||||
性虎,
|
||||
性饥渴,
|
||||
性技巧,
|
||||
性交,
|
||||
性奴,
|
||||
性虐,
|
||||
性息,
|
||||
性欲,
|
||||
胸推,
|
||||
穴口,
|
||||
穴图,
|
||||
亚情,
|
||||
颜射,
|
||||
阳具,
|
||||
杨思敏,
|
||||
要射了,
|
||||
夜勤病栋,
|
||||
一本道,
|
||||
一夜欢,
|
||||
一夜情,
|
||||
一ye情,
|
||||
阴部,
|
||||
淫虫,
|
||||
阴唇,
|
||||
淫荡,
|
||||
阴道,
|
||||
淫电影,
|
||||
阴阜,
|
||||
淫妇,
|
||||
淫河,
|
||||
阴核,
|
||||
阴户,
|
||||
淫贱,
|
||||
淫叫,
|
||||
淫教师,
|
||||
阴茎,
|
||||
阴精,
|
||||
淫浪,
|
||||
淫媚,
|
||||
淫糜,
|
||||
淫魔,
|
||||
淫母,
|
||||
淫女,
|
||||
淫虐,
|
||||
淫妻,
|
||||
淫情,
|
||||
淫色,
|
||||
淫声浪语,
|
||||
淫兽学园,
|
||||
淫书,
|
||||
淫术炼金士,
|
||||
淫水,
|
||||
淫娃,
|
||||
淫威,
|
||||
淫亵,
|
||||
淫样,
|
||||
淫液,
|
||||
淫照,
|
||||
阴b,
|
||||
应召,
|
||||
幼交,
|
||||
欲火,
|
||||
欲女,
|
||||
玉乳,
|
||||
玉穴,
|
||||
援交,
|
||||
原味内衣,
|
||||
援助交际,
|
||||
招鸡,
|
||||
招妓,
|
||||
抓胸,
|
||||
自慰,
|
||||
作爱,
|
||||
a片,
|
||||
fuck,
|
||||
gay片,
|
||||
g点,
|
||||
h动画,
|
||||
h动漫,
|
||||
失身粉,
|
||||
淫荡自慰器
|
||||
BIN
developer-front/public/static/images/default-product.png
Normal file
|
After Width: | Height: | Size: 70 B |
1893
developer-front/sensitive/stopword.dic
Normal file
123
developer-front/sensitive/广告.txt
Normal file
@@ -0,0 +1,123 @@
|
||||
兼职
|
||||
招聘
|
||||
网络
|
||||
QQ
|
||||
招聘
|
||||
有意者
|
||||
到货
|
||||
本店
|
||||
代购
|
||||
扣扣
|
||||
客服
|
||||
微店
|
||||
兼职
|
||||
兼值
|
||||
淘宝
|
||||
小姐
|
||||
妓女
|
||||
包夜
|
||||
3P
|
||||
LY
|
||||
JS
|
||||
狼友
|
||||
技师
|
||||
推油
|
||||
胸推
|
||||
BT
|
||||
毒龙
|
||||
口爆
|
||||
兼职
|
||||
楼凤
|
||||
足交
|
||||
口暴
|
||||
口交
|
||||
全套
|
||||
SM
|
||||
桑拿
|
||||
吞精
|
||||
咪咪
|
||||
婊子
|
||||
乳方
|
||||
操逼
|
||||
全职
|
||||
性伴侣
|
||||
网购
|
||||
网络工作
|
||||
代理
|
||||
专业代理
|
||||
帮忙点一下
|
||||
帮忙点下
|
||||
请点击进入
|
||||
详情请进入
|
||||
私人侦探
|
||||
私家侦探
|
||||
针孔摄象
|
||||
调查婚外情
|
||||
信用卡提现
|
||||
无抵押贷款
|
||||
广告代理
|
||||
原音铃声
|
||||
借腹生子
|
||||
找个妈妈
|
||||
找个爸爸
|
||||
代孕妈妈
|
||||
代生孩子
|
||||
代开发票
|
||||
腾讯客服电话
|
||||
销售热线
|
||||
免费订购热线
|
||||
低价出售
|
||||
款到发货
|
||||
回复可见
|
||||
连锁加盟
|
||||
加盟连锁
|
||||
免费二级域名
|
||||
免费使用
|
||||
免费索取
|
||||
蚁力神
|
||||
婴儿汤
|
||||
售肾
|
||||
刻章办
|
||||
买小车
|
||||
套牌车
|
||||
玛雅网
|
||||
电脑传讯
|
||||
视频来源
|
||||
下载速度
|
||||
高清在线
|
||||
全集在线
|
||||
在线播放
|
||||
txt下载
|
||||
六位qq
|
||||
6位qq
|
||||
位的qq
|
||||
个qb
|
||||
送qb
|
||||
用刀横向切腹
|
||||
完全自杀手册
|
||||
四海帮
|
||||
足球投注
|
||||
地下钱庄
|
||||
中国复兴党
|
||||
阿波罗网
|
||||
曾道人
|
||||
六合彩
|
||||
改卷内幕
|
||||
替考试
|
||||
隐形耳机
|
||||
出售答案
|
||||
考中答案
|
||||
答an
|
||||
da案
|
||||
资金周转
|
||||
救市
|
||||
股市圈钱
|
||||
崩盘
|
||||
资金短缺
|
||||
证监会
|
||||
质押贷款
|
||||
小额贷款
|
||||
周小川
|
||||
刘明康
|
||||
尚福林
|
||||
孔丹
|
||||
326
developer-front/sensitive/政治类.txt
Normal file
@@ -0,0 +1,326 @@
|
||||
习近平,
|
||||
平近习,
|
||||
xjp,
|
||||
习太子,
|
||||
习明泽,
|
||||
老习,
|
||||
温家宝,
|
||||
温加宝,
|
||||
温x,
|
||||
温jia宝,
|
||||
温宝宝,
|
||||
温加饱,
|
||||
温加保,
|
||||
张培莉,
|
||||
温云松,
|
||||
温如春,
|
||||
温jb,
|
||||
胡温,
|
||||
胡x,
|
||||
胡jt,
|
||||
胡boss,
|
||||
胡总,
|
||||
胡王八,
|
||||
hujintao,
|
||||
胡jintao,
|
||||
胡j涛,
|
||||
胡惊涛,
|
||||
胡景涛,
|
||||
胡紧掏,
|
||||
湖紧掏,
|
||||
胡紧套,
|
||||
锦涛,
|
||||
hjt,
|
||||
胡派,
|
||||
胡主席,
|
||||
刘永清,
|
||||
胡海峰,
|
||||
胡海清,
|
||||
江泽民,
|
||||
民泽江,
|
||||
江胡,
|
||||
江哥,
|
||||
江主席,
|
||||
江书记,
|
||||
江浙闽,
|
||||
江沢民,
|
||||
江浙民,
|
||||
择民,
|
||||
则民,
|
||||
茳泽民,
|
||||
zemin,
|
||||
ze民,
|
||||
老江,
|
||||
老j,
|
||||
江core,
|
||||
江x,
|
||||
江派,
|
||||
江zm,
|
||||
jzm,
|
||||
江戏子,
|
||||
江蛤蟆,
|
||||
江某某,
|
||||
江贼,
|
||||
江猪,
|
||||
江氏集团,
|
||||
江绵恒,
|
||||
江绵康,
|
||||
王冶坪,
|
||||
江泽慧,
|
||||
邓小平,
|
||||
平小邓,
|
||||
xiao平,
|
||||
邓xp,
|
||||
邓晓平,
|
||||
邓朴方,
|
||||
邓榕,
|
||||
邓质方,
|
||||
毛泽东,
|
||||
猫泽东,
|
||||
猫则东,
|
||||
猫贼洞,
|
||||
毛zd,
|
||||
毛zx,
|
||||
z东,
|
||||
ze东,
|
||||
泽d,
|
||||
zedong,
|
||||
毛太祖,
|
||||
毛相,
|
||||
主席画像,
|
||||
改革历程,
|
||||
朱镕基,
|
||||
朱容基,
|
||||
朱镕鸡,
|
||||
朱容鸡,
|
||||
朱云来,
|
||||
李鹏,
|
||||
李peng,
|
||||
里鹏,
|
||||
李月月鸟,
|
||||
李小鹏,
|
||||
李小琳,
|
||||
华主席,
|
||||
华国,
|
||||
国锋,
|
||||
国峰,
|
||||
锋同志,
|
||||
白春礼,
|
||||
薄熙来,
|
||||
薄一波,
|
||||
蔡赴朝,
|
||||
蔡武,
|
||||
曹刚川,
|
||||
常万全,
|
||||
陈炳德,
|
||||
陈德铭,
|
||||
陈建国,
|
||||
陈良宇,
|
||||
陈绍基,
|
||||
陈同海,
|
||||
陈至立,
|
||||
戴秉国,
|
||||
丁一平,
|
||||
董建华,
|
||||
杜德印,
|
||||
杜世成,
|
||||
傅锐,
|
||||
郭伯雄,
|
||||
郭金龙,
|
||||
贺国强,
|
||||
胡春华,
|
||||
耀邦,
|
||||
华建敏,
|
||||
黄华华,
|
||||
黄丽满,
|
||||
黄兴国,
|
||||
回良玉,
|
||||
贾庆林,
|
||||
贾廷安,
|
||||
靖志远,
|
||||
李长春,
|
||||
李春城,
|
||||
李建国,
|
||||
李克强,
|
||||
李岚清,
|
||||
李沛瑶,
|
||||
李荣融,
|
||||
李瑞环,
|
||||
李铁映,
|
||||
李先念,
|
||||
李学举,
|
||||
李源潮,
|
||||
栗智,
|
||||
梁光烈,
|
||||
廖锡龙,
|
||||
林树森,
|
||||
林炎志,
|
||||
林左鸣,
|
||||
令计划,
|
||||
柳斌杰,
|
||||
刘奇葆,
|
||||
刘少奇,
|
||||
刘延东,
|
||||
刘云山,
|
||||
刘志军,
|
||||
龙新民,
|
||||
路甬祥,
|
||||
罗箭,
|
||||
吕祖善,
|
||||
马飚,
|
||||
马恺,
|
||||
孟建柱,
|
||||
欧广源,
|
||||
强卫,
|
||||
沈跃跃,
|
||||
宋平顺,
|
||||
粟戎生,
|
||||
苏树林,
|
||||
孙家正,
|
||||
铁凝,
|
||||
屠光绍,
|
||||
王东明,
|
||||
汪东兴,
|
||||
王鸿举,
|
||||
王沪宁,
|
||||
王乐泉,
|
||||
王洛林,
|
||||
王岐山,
|
||||
王胜俊,
|
||||
王太华,
|
||||
王学军,
|
||||
王兆国,
|
||||
王振华,
|
||||
吴邦国,
|
||||
吴定富,
|
||||
吴官正,
|
||||
无官正,
|
||||
吴胜利,
|
||||
吴仪,
|
||||
奚国华,
|
||||
习仲勋,
|
||||
徐才厚,
|
||||
许其亮,
|
||||
徐绍史,
|
||||
杨洁篪,
|
||||
叶剑英,
|
||||
由喜贵,
|
||||
于幼军,
|
||||
俞正声,
|
||||
袁纯清,
|
||||
曾培炎,
|
||||
曾庆红,
|
||||
曾宪梓,
|
||||
曾荫权,
|
||||
张德江,
|
||||
张定发,
|
||||
张高丽,
|
||||
张立昌,
|
||||
张荣坤,
|
||||
张志国,
|
||||
赵洪祝,
|
||||
紫阳,
|
||||
周生贤,
|
||||
周永康,
|
||||
朱海仑,
|
||||
中南海,
|
||||
大陆当局,
|
||||
中国当局,
|
||||
北京当局,
|
||||
共产党,
|
||||
党产共,
|
||||
共贪党,
|
||||
阿共,
|
||||
产党共,
|
||||
公产党,
|
||||
工产党,
|
||||
共c党,
|
||||
共x党,
|
||||
共铲,
|
||||
供产,
|
||||
共惨,
|
||||
供铲党,
|
||||
供铲谠,
|
||||
供铲裆,
|
||||
共残党,
|
||||
共残主义,
|
||||
共产主义的幽灵,
|
||||
拱铲,
|
||||
老共,
|
||||
中共,
|
||||
中珙,
|
||||
中gong,
|
||||
gc党,
|
||||
贡挡,
|
||||
gong党,
|
||||
g产,
|
||||
狗产蛋,
|
||||
共残裆,
|
||||
恶党,
|
||||
邪党,
|
||||
共产专制,
|
||||
共产王朝,
|
||||
裆中央,
|
||||
土共,
|
||||
土g,
|
||||
共狗,
|
||||
g匪,
|
||||
共匪,
|
||||
仇共,
|
||||
政府,
|
||||
症腐,
|
||||
政腐,
|
||||
政付,
|
||||
正府,
|
||||
政俯,
|
||||
政f,
|
||||
zhengfu,
|
||||
政zhi,
|
||||
挡中央,
|
||||
档中央,
|
||||
中央领导,
|
||||
中国zf,
|
||||
中央zf,
|
||||
国wu院,
|
||||
中华帝国,
|
||||
gong和,
|
||||
大陆官方,
|
||||
北京政权,
|
||||
江泽民,
|
||||
胡锦涛,
|
||||
温家宝,
|
||||
习近平,
|
||||
习仲勋,
|
||||
贺国强,
|
||||
贺子珍,
|
||||
周永康,
|
||||
李长春,
|
||||
李德生,
|
||||
王岐山,
|
||||
姚依林,
|
||||
回良玉,
|
||||
李源潮,
|
||||
李干成,
|
||||
戴秉国,
|
||||
黄镇,
|
||||
刘延东,
|
||||
刘瑞龙,
|
||||
俞正声,
|
||||
黄敬,
|
||||
薄熙,
|
||||
薄一波,
|
||||
周小川,
|
||||
周建南,
|
||||
温云松,
|
||||
徐明,
|
||||
江泽慧,
|
||||
江绵恒,
|
||||
江绵康,
|
||||
李小鹏,
|
||||
李鹏,
|
||||
李小琳,
|
||||
朱云来,
|
||||
朱容基,
|
||||
法轮功,
|
||||
李洪志,
|
||||
新疆骚乱
|
||||
BIN
developer-front/sensitive/涉枪涉爆违法信息关键词.txt
Normal file
14595
developer-front/sensitive/网址.txt
Normal file
304
developer-front/sensitive/色情类.txt
Normal file
@@ -0,0 +1,304 @@
|
||||
爱液,
|
||||
按摩棒,
|
||||
拔出来,
|
||||
爆草,
|
||||
包二奶,
|
||||
暴干,
|
||||
暴奸,
|
||||
暴乳,
|
||||
爆乳,
|
||||
暴淫,
|
||||
被操,
|
||||
被插,
|
||||
被干,
|
||||
逼奸,
|
||||
仓井空,
|
||||
插暴,
|
||||
操逼,
|
||||
操黑,
|
||||
操烂,
|
||||
肏你,
|
||||
肏死,
|
||||
操死,
|
||||
操我,
|
||||
厕奴,
|
||||
插比,
|
||||
插b,
|
||||
插逼,
|
||||
插进,
|
||||
插你,
|
||||
插我,
|
||||
插阴,
|
||||
潮吹,
|
||||
潮喷,
|
||||
成人电影,
|
||||
成人论坛,
|
||||
成人色情,
|
||||
成人网站,
|
||||
成人文学,
|
||||
成人小说,
|
||||
艳情小说,
|
||||
成人游戏,
|
||||
吃精,
|
||||
抽插,
|
||||
春药,
|
||||
大波,
|
||||
大力抽送,
|
||||
大乳,
|
||||
荡妇,
|
||||
荡女,
|
||||
盗撮,
|
||||
发浪,
|
||||
放尿,
|
||||
肥逼,
|
||||
粉穴,
|
||||
风月大陆,
|
||||
干死你,
|
||||
干穴,
|
||||
肛交,
|
||||
肛门,
|
||||
龟头,
|
||||
裹本,
|
||||
国产av,
|
||||
好嫩,
|
||||
豪乳,
|
||||
黑逼,
|
||||
后庭,
|
||||
后穴,
|
||||
虎骑,
|
||||
换妻俱乐部,
|
||||
黄片,
|
||||
几吧,
|
||||
鸡吧,
|
||||
鸡巴,
|
||||
鸡奸,
|
||||
妓女,
|
||||
奸情,
|
||||
叫床,
|
||||
脚交,
|
||||
精液,
|
||||
就去日,
|
||||
巨屌,
|
||||
菊花洞,
|
||||
菊门,
|
||||
巨奶,
|
||||
巨乳,
|
||||
菊穴,
|
||||
开苞,
|
||||
口爆,
|
||||
口活,
|
||||
口交,
|
||||
口射,
|
||||
口淫,
|
||||
裤袜,
|
||||
狂操,
|
||||
狂插,
|
||||
浪逼,
|
||||
浪妇,
|
||||
浪叫,
|
||||
浪女,
|
||||
狼友,
|
||||
聊性,
|
||||
凌辱,
|
||||
漏乳,
|
||||
露b,
|
||||
乱交,
|
||||
乱伦,
|
||||
轮暴,
|
||||
轮操,
|
||||
轮奸,
|
||||
裸陪,
|
||||
买春,
|
||||
美逼,
|
||||
美少妇,
|
||||
美乳,
|
||||
美腿,
|
||||
美穴,
|
||||
美幼,
|
||||
秘唇,
|
||||
迷奸,
|
||||
密穴,
|
||||
蜜穴,
|
||||
蜜液,
|
||||
摸奶,
|
||||
摸胸,
|
||||
母奸,
|
||||
奈美,
|
||||
奶子,
|
||||
男奴,
|
||||
内射,
|
||||
嫩逼,
|
||||
嫩女,
|
||||
嫩穴,
|
||||
捏弄,
|
||||
女优,
|
||||
炮友,
|
||||
砲友,
|
||||
喷精,
|
||||
屁眼,
|
||||
前凸后翘,
|
||||
强jian,
|
||||
强暴,
|
||||
强奸处女,
|
||||
情趣用品,
|
||||
情色,
|
||||
拳交,
|
||||
全裸,
|
||||
群交,
|
||||
人妻,
|
||||
人兽,
|
||||
日逼,
|
||||
日烂,
|
||||
肉棒,
|
||||
肉逼,
|
||||
肉唇,
|
||||
肉洞,
|
||||
肉缝,
|
||||
肉棍,
|
||||
肉茎,
|
||||
肉具,
|
||||
揉乳,
|
||||
肉穴,
|
||||
肉欲,
|
||||
乳爆,
|
||||
乳房,
|
||||
乳沟,
|
||||
乳交,
|
||||
乳头,
|
||||
骚逼,
|
||||
骚比,
|
||||
骚女,
|
||||
骚水,
|
||||
骚穴,
|
||||
色逼,
|
||||
色界,
|
||||
色猫,
|
||||
色盟,
|
||||
色情网站,
|
||||
色区,
|
||||
色色,
|
||||
色诱,
|
||||
色欲,
|
||||
色b,
|
||||
少年阿宾,
|
||||
射爽,
|
||||
射颜,
|
||||
食精,
|
||||
释欲,
|
||||
兽奸,
|
||||
兽交,
|
||||
手淫,
|
||||
兽欲,
|
||||
熟妇,
|
||||
熟母,
|
||||
熟女,
|
||||
爽片,
|
||||
双臀,
|
||||
死逼,
|
||||
丝袜,
|
||||
丝诱,
|
||||
松岛枫,
|
||||
酥痒,
|
||||
汤加丽,
|
||||
套弄,
|
||||
体奸,
|
||||
体位,
|
||||
舔脚,
|
||||
舔阴,
|
||||
调教,
|
||||
偷欢,
|
||||
推油,
|
||||
脱内裤,
|
||||
文做,
|
||||
舞女,
|
||||
无修正,
|
||||
吸精,
|
||||
夏川纯,
|
||||
相奸,
|
||||
小逼,
|
||||
校鸡,
|
||||
小穴,
|
||||
小xue,
|
||||
性感妖娆,
|
||||
性感诱惑,
|
||||
性虎,
|
||||
性饥渴,
|
||||
性技巧,
|
||||
性交,
|
||||
性奴,
|
||||
性虐,
|
||||
性息,
|
||||
性欲,
|
||||
胸推,
|
||||
穴口,
|
||||
穴图,
|
||||
亚情,
|
||||
颜射,
|
||||
阳具,
|
||||
杨思敏,
|
||||
要射了,
|
||||
夜勤病栋,
|
||||
一本道,
|
||||
一夜欢,
|
||||
一夜情,
|
||||
一ye情,
|
||||
阴部,
|
||||
淫虫,
|
||||
阴唇,
|
||||
淫荡,
|
||||
阴道,
|
||||
淫电影,
|
||||
阴阜,
|
||||
淫妇,
|
||||
淫河,
|
||||
阴核,
|
||||
阴户,
|
||||
淫贱,
|
||||
淫叫,
|
||||
淫教师,
|
||||
阴茎,
|
||||
阴精,
|
||||
淫浪,
|
||||
淫媚,
|
||||
淫糜,
|
||||
淫魔,
|
||||
淫母,
|
||||
淫女,
|
||||
淫虐,
|
||||
淫妻,
|
||||
淫情,
|
||||
淫色,
|
||||
淫声浪语,
|
||||
淫兽学园,
|
||||
淫书,
|
||||
淫术炼金士,
|
||||
淫水,
|
||||
淫娃,
|
||||
淫威,
|
||||
淫亵,
|
||||
淫样,
|
||||
淫液,
|
||||
淫照,
|
||||
阴b,
|
||||
应召,
|
||||
幼交,
|
||||
欲火,
|
||||
欲女,
|
||||
玉乳,
|
||||
玉穴,
|
||||
援交,
|
||||
原味内衣,
|
||||
援助交际,
|
||||
招鸡,
|
||||
招妓,
|
||||
抓胸,
|
||||
自慰,
|
||||
作爱,
|
||||
a片,
|
||||
fuck,
|
||||
gay片,
|
||||
g点,
|
||||
h动画,
|
||||
h动漫,
|
||||
失身粉,
|
||||
淫荡自慰器
|
||||
29
developer-front/src/App.vue
Normal file
@@ -0,0 +1,29 @@
|
||||
<template>
|
||||
<div id="app">
|
||||
<router-view />
|
||||
<theme-picker />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ThemePicker from "@/components/ThemePicker";
|
||||
|
||||
export default {
|
||||
name: "App",
|
||||
components: { ThemePicker },
|
||||
metaInfo() {
|
||||
return {
|
||||
title: this.$store.state.settings.dynamicTitle && this.$store.state.settings.title,
|
||||
titleTemplate: title => {
|
||||
const appTitle = process.env.VUE_APP_TITLE || '觉远创智配件系统'
|
||||
return title ? `${title} - ${appTitle}` : appTitle
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<style scoped>
|
||||
#app .theme-picker {
|
||||
display: none;
|
||||
}
|
||||
</style>
|
||||
153
developer-front/src/api/forum/post.js
Normal file
@@ -0,0 +1,153 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 查询帖子列表
|
||||
export function listPosts(query) {
|
||||
return request({
|
||||
url: '/forum/post/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 查询帖子详细
|
||||
export function getPost(postId) {
|
||||
return request({
|
||||
url: '/forum/post/' + postId,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 新增帖子
|
||||
export function addPost(data) {
|
||||
return request({
|
||||
url: '/forum/post',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 修改帖子
|
||||
export function updatePost(data) {
|
||||
return request({
|
||||
url: '/forum/post',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 删除帖子
|
||||
export function delPost(postId) {
|
||||
return request({
|
||||
url: '/forum/post/' + postId,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 查询分类列表
|
||||
export function listCategories() {
|
||||
return request({
|
||||
url: '/forum/category/list',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 增加浏览量
|
||||
export function incrementViewCount(postId) {
|
||||
return request({
|
||||
url: '/forum/post/view/' + postId,
|
||||
method: 'put'
|
||||
})
|
||||
}
|
||||
|
||||
// 点赞/取消点赞
|
||||
export function toggleLike(postId) {
|
||||
return request({
|
||||
url: '/forum/post/like/' + postId,
|
||||
method: 'put'
|
||||
})
|
||||
}
|
||||
|
||||
// 收藏/取消收藏
|
||||
export function toggleFavorite(postId) {
|
||||
return request({
|
||||
url: '/forum/post/favorite/' + postId,
|
||||
method: 'put'
|
||||
})
|
||||
}
|
||||
|
||||
// 标记为已解决
|
||||
export function markSolved(postId) {
|
||||
return request({
|
||||
url: '/forum/post/solved/' + postId,
|
||||
method: 'put'
|
||||
})
|
||||
}
|
||||
|
||||
// 置顶/取消置顶
|
||||
export function toggleTop(postId) {
|
||||
return request({
|
||||
url: '/forum/post/top/' + postId,
|
||||
method: 'put'
|
||||
})
|
||||
}
|
||||
|
||||
// 获取用户统计数据
|
||||
export function getUserStats() {
|
||||
return request({
|
||||
url: '/forum/post/user/stats',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 检查用户是否已点赞
|
||||
export function checkLike(postId) {
|
||||
return request({
|
||||
url: '/forum/post/like/check/' + postId,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 检查用户是否已收藏
|
||||
export function checkFavorite(postId) {
|
||||
return request({
|
||||
url: '/forum/post/favorite/check/' + postId,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 获取用户点赞的帖子列表
|
||||
export function getUserLikedPosts(query) {
|
||||
return request({
|
||||
url: '/forum/post/user/liked',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 获取用户收藏的帖子列表
|
||||
export function getUserFavoritedPosts(query) {
|
||||
return request({
|
||||
url: '/forum/post/user/favorited',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 获取用户发布的帖子列表
|
||||
export function getUserPosts(query) {
|
||||
return request({
|
||||
url: '/forum/post/user/posts',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 获取用户回复的帖子列表
|
||||
export function getUserRepliedPosts(query) {
|
||||
return request({
|
||||
url: '/forum/post/user/replied',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
61
developer-front/src/api/forum/reply.js
Normal file
@@ -0,0 +1,61 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 查询回复列表
|
||||
export function listReplies(query) {
|
||||
return request({
|
||||
url: '/forum/reply/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 根据帖子ID查询回复列表(树形结构)
|
||||
export function listRepliesByPostId(postId) {
|
||||
return request({
|
||||
url: '/forum/reply/list/' + postId,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 查询回复详细
|
||||
export function getReply(replyId) {
|
||||
return request({
|
||||
url: '/forum/reply/' + replyId,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 新增回复
|
||||
export function addReply(data) {
|
||||
return request({
|
||||
url: '/forum/reply',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 修改回复
|
||||
export function updateReply(data) {
|
||||
return request({
|
||||
url: '/forum/reply',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 删除回复
|
||||
export function delReply(replyId) {
|
||||
return request({
|
||||
url: '/forum/reply/' + replyId,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 点赞/取消点赞回复
|
||||
export function toggleLikeReply(replyId) {
|
||||
return request({
|
||||
url: '/forum/reply/like/' + replyId,
|
||||
method: 'put'
|
||||
})
|
||||
}
|
||||
|
||||
9
developer-front/src/api/jysystem/lens.js
Normal file
@@ -0,0 +1,9 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 通用镜片下拉选项
|
||||
export function listLensOptions() {
|
||||
return request({
|
||||
url: '/jysystem/lens/options',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
34
developer-front/src/api/jysystem/message.js
Normal file
@@ -0,0 +1,34 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 门户消息列表
|
||||
export function listPortalMessage(query) {
|
||||
return request({
|
||||
url: '/jysystem/message/portal/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 未读消息数
|
||||
export function getPortalUnreadCount() {
|
||||
return request({
|
||||
url: '/jysystem/message/portal/unreadCount',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 标记单条已读
|
||||
export function markPortalMessageRead(id) {
|
||||
return request({
|
||||
url: '/jysystem/message/portal/read/' + id,
|
||||
method: 'put'
|
||||
})
|
||||
}
|
||||
|
||||
// 全部标记已读
|
||||
export function markPortalMessageAllRead() {
|
||||
return request({
|
||||
url: '/jysystem/message/portal/readAll',
|
||||
method: 'put'
|
||||
})
|
||||
}
|
||||
154
developer-front/src/api/jysystem/order.js
Normal file
@@ -0,0 +1,154 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 门户订单列表
|
||||
export function listPortalOrder(query) {
|
||||
return request({
|
||||
url: '/jysystem/order/portal/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 门户订单上下文
|
||||
export function getPortalOrderContext() {
|
||||
return request({
|
||||
url: '/jysystem/order/portal/context',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 门户配片单可选产品(当前租户已配置)
|
||||
export function listPortalProductOptions() {
|
||||
return request({
|
||||
url: '/jysystem/order/portal/productOptions',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 门户订单详情
|
||||
export function getPortalOrder(id) {
|
||||
return request({
|
||||
url: '/jysystem/order/portal/' + id,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 新增配片单
|
||||
export function addPortalOrder(data) {
|
||||
return request({
|
||||
url: '/jysystem/order/portal',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 修改配片单
|
||||
export function updatePortalOrder(data) {
|
||||
return request({
|
||||
url: '/jysystem/order/portal',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 删除配片单
|
||||
export function delPortalOrder(id) {
|
||||
return request({
|
||||
url: '/jysystem/order/portal/' + id,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 制片单补充
|
||||
export function supplementPortalOrder(data) {
|
||||
return request({
|
||||
url: '/jysystem/order/portal/supplement',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 制片单接单
|
||||
export function acceptPortalOrder(id) {
|
||||
return request({
|
||||
url: '/jysystem/order/portal/accept/' + id,
|
||||
method: 'put'
|
||||
})
|
||||
}
|
||||
|
||||
// 制片单制作中
|
||||
export function producePortalOrder(id) {
|
||||
return request({
|
||||
url: '/jysystem/order/portal/produce/' + id,
|
||||
method: 'put'
|
||||
})
|
||||
}
|
||||
|
||||
// 制片单撤单
|
||||
export function withdrawPortalOrder(data) {
|
||||
return request({
|
||||
url: '/jysystem/order/portal/withdraw',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 门户订单物流信息
|
||||
export function getPortalOrderLogistics(id) {
|
||||
return request({
|
||||
url: '/jysystem/order/portal/logistics/' + id,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 制片单发货
|
||||
export function shipPortalOrder(data) {
|
||||
return request({
|
||||
url: '/jysystem/order/portal/ship',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 制片单完成
|
||||
export function completePortalOrder(id) {
|
||||
return request({
|
||||
url: '/jysystem/order/portal/complete/' + id,
|
||||
method: 'put'
|
||||
})
|
||||
}
|
||||
|
||||
// 配片单换货申请
|
||||
export function exchangeApplyPortalOrder(data) {
|
||||
return request({
|
||||
url: '/jysystem/order/portal/exchangeApply',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 配片单接收(拒绝换货申请后确认完成)
|
||||
export function receivePortalOrder(id) {
|
||||
return request({
|
||||
url: '/jysystem/order/portal/receive/' + id,
|
||||
method: 'put'
|
||||
})
|
||||
}
|
||||
|
||||
// 配片单重新提交
|
||||
export function resubmitPortalOrder(data) {
|
||||
return request({
|
||||
url: '/jysystem/order/portal/resubmit',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 制片单驳回
|
||||
export function rejectPortalOrder(data) {
|
||||
return request({
|
||||
url: '/jysystem/order/portal/reject',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
10
developer-front/src/api/jysystem/product.js
Normal file
@@ -0,0 +1,10 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 查询产品下拉选项
|
||||
export function listProductOptions(tenantId) {
|
||||
return request({
|
||||
url: '/jysystem/product/options',
|
||||
method: 'get',
|
||||
params: { tenantId }
|
||||
})
|
||||
}
|
||||
17
developer-front/src/api/jysystem/tenant.js
Normal file
@@ -0,0 +1,17 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 获取当前登录用户关联租户
|
||||
export function getCurrentTenant() {
|
||||
return request({
|
||||
url: '/jysystem/tenant/current',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 查询镜片厂租户列表
|
||||
export function listLensFactoryTenant() {
|
||||
return request({
|
||||
url: '/jysystem/tenant/lensFactoryList',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
154
developer-front/src/api/login.js
Normal file
@@ -0,0 +1,154 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 登录方法
|
||||
export function login(username, password, code, uuid, directLogin) {
|
||||
const data = {
|
||||
username,
|
||||
password,
|
||||
code,
|
||||
uuid,
|
||||
directLogin
|
||||
}
|
||||
return request({
|
||||
url: '/login',
|
||||
headers: {
|
||||
isToken: false,
|
||||
repeatSubmit: false
|
||||
},
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 注册方法
|
||||
export function register(data) {
|
||||
return request({
|
||||
url: '/register',
|
||||
headers: {
|
||||
isToken: false
|
||||
},
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 验证码注册方法(手机号或邮箱)
|
||||
export function registerByCode(data) {
|
||||
return request({
|
||||
url: '/register/code',
|
||||
headers: {
|
||||
isToken: false
|
||||
},
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 获取用户详细信息
|
||||
export function getInfo() {
|
||||
return request({
|
||||
url: '/getInfo',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 退出方法
|
||||
export function logout() {
|
||||
return request({
|
||||
url: '/logout',
|
||||
method: 'post'
|
||||
})
|
||||
}
|
||||
|
||||
// 获取验证码
|
||||
export function getCodeImg() {
|
||||
return request({
|
||||
url: '/captchaImage',
|
||||
headers: {
|
||||
isToken: false
|
||||
},
|
||||
method: 'get',
|
||||
timeout: 20000
|
||||
})
|
||||
}
|
||||
|
||||
// 发送短信验证码
|
||||
export function sendSmsCode(mobile) {
|
||||
return request({
|
||||
url: '/sms/code',
|
||||
headers: {
|
||||
isToken: false
|
||||
},
|
||||
method: 'post',
|
||||
data: { mobile }
|
||||
})
|
||||
}
|
||||
|
||||
// 发送邮箱验证码
|
||||
export function sendEmailCode(email) {
|
||||
return request({
|
||||
url: '/email/code',
|
||||
headers: {
|
||||
isToken: false
|
||||
},
|
||||
method: 'post',
|
||||
data: { email }
|
||||
})
|
||||
}
|
||||
|
||||
// 验证码登录(邮箱)
|
||||
export function emailLogin(email, emailCode, uuid, directLogin) {
|
||||
return request({
|
||||
url: '/email/login',
|
||||
headers: {
|
||||
isToken: false
|
||||
},
|
||||
method: 'post',
|
||||
data: { email, emailCode, uuid, directLogin }
|
||||
})
|
||||
}
|
||||
|
||||
// 验证码登录(手机号)
|
||||
export function smsLogin(mobile, smsCode, uuid, directLogin) {
|
||||
return request({
|
||||
url: '/sms/login',
|
||||
headers: {
|
||||
isToken: false
|
||||
},
|
||||
method: 'post',
|
||||
data: { mobile, smsCode, uuid, directLogin }
|
||||
})
|
||||
}
|
||||
|
||||
/** 短信验证码校验(手机号有效性校验) */
|
||||
export function checkSMSCode(mobile, smsCode, uuid) {
|
||||
return request({
|
||||
url: '/checkSMSCode',
|
||||
method: 'post',
|
||||
data: { mobile, code: smsCode, uuid }
|
||||
})
|
||||
}
|
||||
|
||||
// 根据账号重置密码
|
||||
export function resetPasswordByAccount(data) {
|
||||
return request({
|
||||
url: '/resetPassword/account',
|
||||
headers: {
|
||||
isToken: false
|
||||
},
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 根据验证码重置密码
|
||||
export function resetPasswordByCode(data) {
|
||||
return request({
|
||||
url: '/resetPassword/code',
|
||||
headers: {
|
||||
isToken: false
|
||||
},
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
9
developer-front/src/api/menu.js
Normal file
@@ -0,0 +1,9 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 获取路由
|
||||
export const getRouters = () => {
|
||||
return request({
|
||||
url: '/getRouters',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
57
developer-front/src/api/monitor/cache.js
Normal file
@@ -0,0 +1,57 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 查询缓存详细
|
||||
export function getCache() {
|
||||
return request({
|
||||
url: '/monitor/cache',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 查询缓存名称列表
|
||||
export function listCacheName() {
|
||||
return request({
|
||||
url: '/monitor/cache/getNames',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 查询缓存键名列表
|
||||
export function listCacheKey(cacheName) {
|
||||
return request({
|
||||
url: '/monitor/cache/getKeys/' + cacheName,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 查询缓存内容
|
||||
export function getCacheValue(cacheName, cacheKey) {
|
||||
return request({
|
||||
url: '/monitor/cache/getValue/' + cacheName + '/' + cacheKey,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 清理指定名称缓存
|
||||
export function clearCacheName(cacheName) {
|
||||
return request({
|
||||
url: '/monitor/cache/clearCacheName/' + cacheName,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 清理指定键名缓存
|
||||
export function clearCacheKey(cacheKey) {
|
||||
return request({
|
||||
url: '/monitor/cache/clearCacheKey/' + cacheKey,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 清理全部缓存
|
||||
export function clearCacheAll() {
|
||||
return request({
|
||||
url: '/monitor/cache/clearCacheAll',
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
71
developer-front/src/api/monitor/job.js
Normal file
@@ -0,0 +1,71 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 查询定时任务调度列表
|
||||
export function listJob(query) {
|
||||
return request({
|
||||
url: '/monitor/job/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 查询定时任务调度详细
|
||||
export function getJob(jobId) {
|
||||
return request({
|
||||
url: '/monitor/job/' + jobId,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 新增定时任务调度
|
||||
export function addJob(data) {
|
||||
return request({
|
||||
url: '/monitor/job',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 修改定时任务调度
|
||||
export function updateJob(data) {
|
||||
return request({
|
||||
url: '/monitor/job',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
// 删除定时任务调度
|
||||
export function delJob(jobId) {
|
||||
return request({
|
||||
url: '/monitor/job/' + jobId,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 任务状态修改
|
||||
export function changeJobStatus(jobId, status) {
|
||||
const data = {
|
||||
jobId,
|
||||
status
|
||||
}
|
||||
return request({
|
||||
url: '/monitor/job/changeStatus',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
// 定时任务立即执行一次
|
||||
export function runJob(jobId, jobGroup) {
|
||||
const data = {
|
||||
jobId,
|
||||
jobGroup
|
||||
}
|
||||
return request({
|
||||
url: '/monitor/job/run',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
}
|
||||
26
developer-front/src/api/monitor/jobLog.js
Normal file
@@ -0,0 +1,26 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 查询调度日志列表
|
||||
export function listJobLog(query) {
|
||||
return request({
|
||||
url: '/monitor/jobLog/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 删除调度日志
|
||||
export function delJobLog(jobLogId) {
|
||||
return request({
|
||||
url: '/monitor/jobLog/' + jobLogId,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 清空调度日志
|
||||
export function cleanJobLog() {
|
||||
return request({
|
||||
url: '/monitor/jobLog/clean',
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
34
developer-front/src/api/monitor/logininfor.js
Normal file
@@ -0,0 +1,34 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 查询登录日志列表
|
||||
export function list(query) {
|
||||
return request({
|
||||
url: '/monitor/logininfor/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 删除登录日志
|
||||
export function delLogininfor(infoId) {
|
||||
return request({
|
||||
url: '/monitor/logininfor/' + infoId,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 解锁用户登录状态
|
||||
export function unlockLogininfor(userName) {
|
||||
return request({
|
||||
url: '/monitor/logininfor/unlock/' + userName,
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||
|
||||
// 清空登录日志
|
||||
export function cleanLogininfor() {
|
||||
return request({
|
||||
url: '/monitor/logininfor/clean',
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
18
developer-front/src/api/monitor/online.js
Normal file
@@ -0,0 +1,18 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 查询在线用户列表
|
||||
export function list(query) {
|
||||
return request({
|
||||
url: '/monitor/online/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 强退用户
|
||||
export function forceLogout(tokenId) {
|
||||
return request({
|
||||
url: '/monitor/online/' + tokenId,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
26
developer-front/src/api/monitor/operlog.js
Normal file
@@ -0,0 +1,26 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 查询操作日志列表
|
||||
export function list(query) {
|
||||
return request({
|
||||
url: '/monitor/operlog/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
// 删除操作日志
|
||||
export function delOperlog(operId) {
|
||||
return request({
|
||||
url: '/monitor/operlog/' + operId,
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
|
||||
// 清空操作日志
|
||||
export function cleanOperlog() {
|
||||
return request({
|
||||
url: '/monitor/operlog/clean',
|
||||
method: 'delete'
|
||||
})
|
||||
}
|
||||
9
developer-front/src/api/monitor/server.js
Normal file
@@ -0,0 +1,9 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
// 获取服务信息
|
||||
export function getServer() {
|
||||
return request({
|
||||
url: '/monitor/server',
|
||||
method: 'get'
|
||||
})
|
||||
}
|
||||