Browse Source

init

newStyle
wangxiaohua 2 years ago
commit
37b7e31f26
100 changed files with 2532 additions and 0 deletions
  1. +3
    -0
      .browserslistrc
  2. +15
    -0
      .editorconfig
  3. +4
    -0
      .eslintignore
  4. +215
    -0
      .eslintrc.js
  5. +28
    -0
      .gitignore
  6. +5
    -0
      .postcssrc.js
  7. +22
    -0
      README.md
  8. +5
    -0
      babel.config.js
  9. +9
    -0
      docker/Dockerfile
  10. +19
    -0
      docker/docker-compose.yaml
  11. +27
    -0
      docker/pigx-ui.conf
  12. +64
    -0
      package.json
  13. +11
    -0
      public/cdn/animate/3.5.2/animate.css
  14. +54
    -0
      public/cdn/avue/avue.css
  15. +1
    -0
      public/cdn/avue/index.css
  16. +8
    -0
      public/cdn/avue/index.js
  17. +193
    -0
      public/cdn/store/1.3.20/store.js
  18. BIN
      public/favicon.ico
  19. BIN
      public/images/banner_control23b288.png
  20. +1
    -0
      public/images/base.css.bak
  21. BIN
      public/images/base_z36574a.png
  22. BIN
      public/images/bg_mobile21d289.png
  23. BIN
      public/images/bg_mobile_foot_default2968da.png
  24. BIN
      public/images/bg_mobile_head_default2968da.png
  25. BIN
      public/images/card_tpl_deco.png
  26. BIN
      public/images/emoji218877.png
  27. BIN
      public/images/emotion_editor_z3518e7.png
  28. BIN
      public/images/history_msg35065c.png
  29. BIN
      public/images/icon13_arrow_right_gray218877.png
  30. BIN
      public/images/icon16_loading_light218877.gif
  31. BIN
      public/images/icon18_loading_default218877.gif
  32. BIN
      public/images/icon18_loading_primary218877.gif
  33. BIN
      public/images/icon32_loading_dark218877.gif
  34. BIN
      public/images/icon32_loading_light218877.gif
  35. BIN
      public/images/icon40_loading_gray218877.gif
  36. BIN
      public/images/icon40_loading_white218877.gif
  37. BIN
      public/images/icon_memu_function.png
  38. BIN
      public/images/icon_memu_function_selected.png
  39. BIN
      public/images/icon_memu_manage.png
  40. BIN
      public/images/icon_memu_manage_selected.png
  41. BIN
      public/images/icon_memu_statistics.png
  42. BIN
      public/images/icon_memu_statistics_selected.png
  43. BIN
      public/images/icon_menu_adclient.png
  44. BIN
      public/images/icon_menu_advert.png
  45. BIN
      public/images/icon_menu_advert_selected.png
  46. BIN
      public/images/icon_menu_host.png
  47. BIN
      public/images/icon_menu_host_selected.png
  48. BIN
      public/images/icon_menu_nav_next2968da.png
  49. BIN
      public/images/icon_menu_nav_prev2968da.png
  50. BIN
      public/images/icon_menu_service_selected.png
  51. BIN
      public/images/icon_menu_setting.png
  52. BIN
      public/images/icon_menu_setting_selected.png
  53. BIN
      public/images/icon_menu_store.png
  54. BIN
      public/images/icon_menu_store_selected.png
  55. BIN
      public/images/icon_noie6218877.png
  56. +1
    -0
      public/images/index.css.bak
  57. BIN
      public/images/index_z354723.png
  58. +2
    -0
      public/images/media_dialog&emotion_editor&msg_tab&emoji&msg_sender&tooltip.css.bak
  59. BIN
      public/images/media_dialog_z27dcd8.png
  60. BIN
      public/images/msg_sender_z35e455.png
  61. BIN
      public/images/msg_tab_z25df2d.png
  62. BIN
      public/images/pic_menu_preview2968da.png
  63. BIN
      public/img/bg/cloud.jpg
  64. BIN
      public/img/bg/login.png
  65. BIN
      public/img/bg/star-squashed.jpg
  66. BIN
      public/img/code/qq-code.jpg
  67. BIN
      public/img/code/wechat-code.jpg
  68. BIN
      public/img/login.png
  69. BIN
      public/img/logo.png
  70. +55
    -0
      public/index.html
  71. +6
    -0
      public/svg/loading-spin.svg
  72. +26
    -0
      src/App.vue
  73. +63
    -0
      src/api/activiti/activiti.js
  74. +63
    -0
      src/api/activiti/leave-bill.js
  75. +40
    -0
      src/api/activiti/process.js
  76. +48
    -0
      src/api/activiti/task.js
  77. +56
    -0
      src/api/admin/client.js
  78. +56
    -0
      src/api/admin/dept.js
  79. +101
    -0
      src/api/admin/dict.js
  80. +64
    -0
      src/api/admin/log.js
  81. +72
    -0
      src/api/admin/menu.js
  82. +88
    -0
      src/api/admin/role.js
  83. +41
    -0
      src/api/admin/route.js
  84. +56
    -0
      src/api/admin/sys-file.js
  85. +56
    -0
      src/api/admin/sys-public-param.js
  86. +56
    -0
      src/api/admin/sys-social-details.js
  87. +64
    -0
      src/api/admin/tenant.js
  88. +33
    -0
      src/api/admin/token.js
  89. +72
    -0
      src/api/admin/user.js
  90. +12
    -0
      src/api/api.js
  91. +26
    -0
      src/api/code.js
  92. +56
    -0
      src/api/daemon/execution-log.js
  93. +56
    -0
      src/api/daemon/status-trace-log.js
  94. +10
    -0
      src/api/daemon/sys-job-log.js
  95. +97
    -0
      src/api/daemon/sys-job.js
  96. +56
    -0
      src/api/gen/form.js
  97. +124
    -0
      src/api/gen/gen.js
  98. +20
    -0
      src/api/index.js
  99. +94
    -0
      src/api/login.js
  100. +178
    -0
      src/api/modules/api.js

+ 3
- 0
.browserslistrc View File

@@ -0,0 +1,3 @@
> 1%
last 2 versions
not ie <= 8

+ 15
- 0
.editorconfig View File

@@ -0,0 +1,15 @@
# http://editorconfig.org

root = true

[*]
charset = utf-8
indent_style = space
indent_size = 2
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true

[*.md]
insert_final_newline = false
trim_trailing_whitespace = false

+ 4
- 0
.eslintignore View File

@@ -0,0 +1,4 @@
build/*.js
src/assets
public
dist

+ 215
- 0
.eslintrc.js View File

@@ -0,0 +1,215 @@
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/html-self-closing': ['error', {
'html': {
'void': 'any',
'normal': 'any',
'component': 'any'
},
'svg': 'any',
'math': 'any'
}],
'vue/singleline-html-element-content-newline': 'off',
'vue/no-parsing-error': [2, { 'invalid-first-character-of-tag-name': false }],
'vue/no-use-v-if-with-v-for': 'off',
'vue/multiline-html-element-content-newline': 'off',
'vue/name-property-casing': [0, 'PascalCase'],
'vue/html-closing-bracket-newline': [0, {
'singleline': 'never',
'multiline': 'always'
}],
'vue/no-side-effects-in-computed-properties': 0,
'accessor-pairs': 2, //在对象中使用getter/setter
'arrow-spacing': [2, {
'before': true,
'after': true
}], //=>的前/后括号
'block-spacing': [2, 'always'], //块是否需要空格
// if while function 后面的{必须与if在同一行,java风格。
'brace-style': [2, '1tbs', {
'allowSingleLine': true
}],
//强制驼峰法命名
'camelcase': [0, {
'properties': 'always'
}],
// 数组和对象键值对最后一个逗号, never参数:不能带末尾的逗号, always参数:必须带末尾的逗号,
// always-multiline:多行模式必须带逗号,单行模式不能带逗号
'comma-dangle': [2, 'never'],
// 控制逗号前后的空格
'comma-spacing': [2, {
'before': false,
'after': true
}],
'comma-style': [2, 'last'], // 控制逗号在行尾出现还是在行首出现
// 强制在子类构造函数中用super()调用父类构造函数,TypeScrip的编译器也会提示
'constructor-super': 2,
// 强制object.key 中 . 的位置,参数:
// property,'.'号应与属性在同一行
// object, '.' 号应与对象名在同一行
'dot-location': [2, 'property'],
'eol-last': 2, // 文件末尾强制换行
'eqeqeq': [2, 'allow-null'], // 使用 === 替代 ==
'generator-star-spacing': 0, //生成器函数*的前后空格
'handle-callback-err': 0, //nodejs 处理错误
'indent': [2, 2, { //缩进风格
'SwitchCase': 1
}],
// JSX 属性中一致使用双引号或单引号
'jsx-quotes': [2, 'prefer-single'],
//对象字面量中冒号的前后空格
'key-spacing': [2, {
'beforeColon': false,
'afterColon': true
}],
'keyword-spacing': [2, {
'before': true,
'after': true
}],
//函数名首行大写必须使用new方式调用,首行小写必须用不带new方式调用
'new-cap': [2, {
'newIsCap': true,
'capIsNew': false
}],
'new-parens': 2, //new时必须加小括号
'no-array-constructor': 2, //禁止使用数组构造器
'no-caller': 2, //禁止使用arguments.caller或arguments.callee
'no-console': process.env.NODE_ENV === 'production' ? 2 : 0, //禁止使用console
'no-class-assign': 2, //禁止给类赋值
'no-cond-assign': 2, //禁止在条件表达式中使用赋值语句
'no-const-assign': 2, //禁止修改const声明的变量
'no-control-regex': 0, //禁止在正则表达式中使用控制字符
'no-delete-var': 2, //不能对var声明的变量使用delete操作符
'no-dupe-args': 2, //函数参数不能重复
'no-dupe-class-members': 2, //不允许类中出现重复的声明
'no-dupe-keys': 2, //在创建对象字面量时不允许键重复 {a:1,a:1}
'no-duplicate-case': 2, //switch中的case标签不能重复
'no-empty-character-class': 0, //正则表达式中的[]内容不能为空
'no-empty-pattern': 0,
'no-eval': 0, //禁止使用eval
'no-ex-assign': 2, //禁止给catch语句中的异常参数赋值
'no-extend-native': 2, //禁止扩展native对象
'no-extra-bind': 2, //禁止不必要的函数绑定
'no-extra-boolean-cast': 2, //禁止不必要的bool转换
'no-extra-parens': [2, 'functions'], //禁止非必要的括号
'no-fallthrough': 2, //禁止switch穿透
'no-floating-decimal': 2, //禁止省略浮点数中的0 .5 3.
'no-func-assign': 2, //禁止重复的函数声明
'no-implied-eval': 2, //禁止使用隐式eval
'no-inner-declarations': [2, 'functions'], //禁止在块语句中使用声明(变量或函数)
'no-invalid-regexp': 2, //禁止无效的正则表达式
'no-irregular-whitespace': 2, //不能有不规则的空格
'no-iterator': 2, //禁止使用__iterator__ 属性
'no-label-var': 2, //label名不能与var声明的变量名相同
'no-labels': [2, { //禁止标签声明
'allowLoop': false,
'allowSwitch': false
}],
'no-lone-blocks': 2, //禁止不必要的嵌套块
'no-mixed-spaces-and-tabs': 2, //禁止混用tab和空格
'no-multi-spaces': 2, //不能用多余的空格
'no-multi-str': 2, //字符串不能用\换行
'no-multiple-empty-lines': [0, {
'max': 1
}], //空行最多不能超过1行
'no-native-reassign': 2, //不能重写native对象
'no-negated-in-lhs': 2, //in 操作符的左边不能有!
'no-new-object': 2, //禁止使用new Object()
'no-new-require': 2, //禁止使用new require
'no-new-symbol': 2, //禁止使用new symbol
'no-new-wrappers': 2, //禁止使用new创建包装实例,new String new Boolean new Number
'no-obj-calls': 0, //不能调用内置的全局对象,比如Math() JSON()
'no-octal': 2, //禁止使用八进制数字
'no-octal-escape': 2, //禁止使用八进制转义序列
'no-path-concat': 2, //node中不能使用__dirname或__filename做路径拼接
'no-proto': 2, //禁止使用__proto__属性
'no-redeclare': 2, //禁止重复声明变量
'no-regex-spaces': 2, //禁止在正则表达式字面量中使用多个空格 /foo bar/
'no-return-assign': [2, 'except-parens'], //return 语句中不能有赋值表达式
'no-self-assign': 2, //自我分配
'no-self-compare': 2, //不能比较自身
'no-sequences': 2, //禁止使用逗号运算符
'no-shadow-restricted-names': 2, //严格模式中规定的限制标识符不能作为声明时的变量名使用
'no-spaced-func': 2, //函数调用时 函数名与()之间不能有空格
'no-sparse-arrays': 2, //禁止稀疏数组, [1,,2]
'no-this-before-super': 2, //在调用super()之前不能使用this或super
'no-throw-literal': 2, //禁止抛出字面量错误 throw "error";
'no-trailing-spaces': 0, //一行结束后面不要有空格
'no-undef': 2, //不能有未定义的变量
'no-undef-init': 2, //变量初始化时不能直接给它赋值为undefined
'no-unexpected-multiline': 0, //避免多行表达式
'no-unmodified-loop-condition': 0, //检查引用是否在循环中被修改
'no-unneeded-ternary': 0, //禁止不必要的嵌套 var isYes = answer === 1 ? true : false;
'no-unreachable': 2, //不能有无法执行的代码
'no-unsafe-finally': 0,
'no-unused-vars': [2, {
'vars': 'all',
'args': 'none'
}], //不能有声明后未被使用的变量或参数
'no-useless-call': 2, //禁止不必要的call和apply
'no-useless-computed-key': 0, //没有必要使用带文字的计算属性
'no-useless-constructor': 2, //可以在不改变类的工作方式的情况下安全地移除的类构造函数
'no-useless-escape': 0,
'no-whitespace-before-property': 0,
'no-with': 2, //禁用with
'one-var': 0, //连续声明
'operator-linebreak': [2, 'after', {
'overrides': {
'?': 'before',
':': 'before'
}
}], //换行时运算符在行尾还是行首
'padded-blocks': 0, //块语句内行首行尾是否要空行
'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': 0, //注释风格不要有空格什么的
'template-curly-spacing': [2, 'never'],
'use-isnan': 2, //禁止比较时使用NaN,只能用isNaN()
'valid-typeof': 2, //必须使用合法的typeof的值
'wrap-iife': [2, 'any'], //立即执行函数表达式的小括号风格
'yield-star-spacing': 0,
'yoda': [2, 'never'], //禁止尤达条件
'prefer-const': 2, //首选const
'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0, //禁止使用debugger
'object-curly-spacing': [2, 'always', {
objectsInObjects: false
}], //大括号内是否允许不必要的空格
'array-bracket-spacing': [2, 'never'] //是否允许非空数组里面有多余的空格
}
}

+ 28
- 0
.gitignore View File

@@ -0,0 +1,28 @@
.DS_Store
node_modules
/dist

/tests/e2e/videos/
/tests/e2e/screenshots/

# local env files
.env.local
.env.*.local

# Log files
npm-debug.log*
yarn-debug.log*
yarn-error.log*

# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw*

# Lock File
package-lock.json
yarn.lock

+ 5
- 0
.postcssrc.js View File

@@ -0,0 +1,5 @@
module.exports = {
plugins: {
autoprefixer: {}
}
}

+ 22
- 0
README.md View File

@@ -0,0 +1,22 @@
## 协议和授权

pigX并非一个开源软件,作者保留全部的权利。
擅自窃用,即属严重侵权行为,与盗窃无异。产生的一切任何后果责任由侵权者自负。

### 🚫禁止

将本项目的部分或全部代码和资源进行任何形式的再发行(上传GitHub、Gitee )

## 贡献代码

pigX并非一个开源项目,也不是社区共同创造,其全部功能由作者独立完成。

如果你愿意放弃所有权利,并将权利无条件转让给pigX作者,欢迎您贡献代码,当然会给予不等金额奖励。

## 提交反馈

1. 欢迎提交 issue,请写清楚遇到问题的原因,浏览器和操作系统环境,重现的流程。
如果有开发能力,建议在本地调试出出错的代码。

2. 不接受`功能请求`的 issue,功能请求可能会被直接关闭,请谅解(正确的方式是打赏并附言)。


+ 5
- 0
babel.config.js View File

@@ -0,0 +1,5 @@
module.exports = {
presets: [
'@vue/app'
]
}

+ 9
- 0
docker/Dockerfile View File

@@ -0,0 +1,9 @@
FROM nginx

COPY ./dist /data

RUN rm /etc/nginx/conf.d/default.conf

ADD pigx-ui.conf /etc/nginx/conf.d/default.conf

RUN /bin/bash -c 'echo init ok'

+ 19
- 0
docker/docker-compose.yaml View File

@@ -0,0 +1,19 @@
version: '3'
services:
pigx-ui:
build:
context: .
restart: always
container_name: pigx-ui
image: pigx-ui
networks:
- pigx_default
external_links:
- pigx-gateway
ports:
- 80:80

# 加入到后端网络, 默认为 pigx_default | docker network ls 查看
networks:
pigx_default:
external: true

+ 27
- 0
docker/pigx-ui.conf View File

@@ -0,0 +1,27 @@
server {
listen 80;
server_name localhost;

gzip on;
gzip_static on; # 需要http_gzip_static_module 模块
gzip_min_length 1k;
gzip_comp_level 4;
gzip_proxied any;
gzip_types text/plain text/xml text/css;
gzip_vary on;
gzip_disable "MSIE [1-6]\.(?!.*SV1)";

# 前端打包好的dist目录文件
root /data/;

# 若新增后端路由前缀注意在此处添加(|新增)
location ~* ^/(code|auth|admin|monitor|gen|job|tx|act|mp|pay) {
proxy_pass http://pigx-gateway:9999;
proxy_connect_timeout 15s;
proxy_send_timeout 15s;
proxy_read_timeout 15s;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto http;
}
}

+ 64
- 0
package.json View File

@@ -0,0 +1,64 @@
{
"name": "pigx-ui",
"version": "4.0.0",
"private": true,
"scripts": {
"pre": "cnpm install || yarn --registry https://registry.npm.taobao.org || npm install --registry https://registry.npm.taobao.org ",
"dev": "vue-cli-service serve",
"build": "vue-cli-service build",
"build:docker": "vue-cli-service build --dest=./docker/dist/",
"lint": "vue-cli-service lint",
"analyze": "vue-cli-service build --report"
},
"dependencies": {
"@chenfengyuan/vue-qrcode": "^1.0.1",
"@riophae/vue-treeselect": "0.4.0",
"@sscfaith/avue-form-design": "1.3.12",
"avue-plugin-ueditor": "^0.1.4",
"axios": "^0.18.0",
"babel-polyfill": "^6.26.0",
"classlist-polyfill": "^1.2.0",
"clipboard": "^2.0.4",
"codemirror": "^5.53.2",
"crypto-js": "^3.1.9-1",
"echarts": "^4.2.1",
"element-ui": "2.12.0",
"js-cookie": "^2.2.0",
"less-loader": "^6.0.0",
"nprogress": "^0.2.0",
"script-loader": "^0.7.2",
"sockjs-client": "1.0.0",
"stomp-websocket": "2.3.4-next",
"vue": "^2.6.10",
"vue-axios": "^2.1.2",
"vue-clipboard2": "^0.3.0",
"vue-cron": "^1.0.9",
"vue-echarts": "^4.0.1",
"vue-json-editor": "^1.2.3",
"vue-json-tree-view": "^2.1.4",
"vue-quill-editor": "3.0.6",
"vue-router": "^3.0.2",
"vuex": "^3.0.1"
},
"devDependencies": {
"@vue/cli-plugin-babel": "^3.12.0",
"@vue/cli-service": "^3.12.0",
"chai": "^4.1.2",
"compression-webpack-plugin": "^3.1.0",
"node-sass": "^4.9.0",
"sass-loader": "^7.0.1",
"vue-template-compiler": "^2.6.10",
"vue-video-player": "^5.0.2",
"benz-amr-recorder": "^1.0.14"
},
"lint-staged": {
"*.js": [
"vue-cli-service lint",
"git add"
],
"*.vue": [
"vue-cli-service lint",
"git add"
]
}
}

+ 11
- 0
public/cdn/animate/3.5.2/animate.css
File diff suppressed because it is too large
View File


+ 54
- 0
public/cdn/avue/avue.css View File

@@ -0,0 +1,54 @@
html,
body,
#app {
height: 100%;
margin: 0;
padding: 0;
}

.avue-home {
background-color: #303133;
height: 100%;
display: flex;
flex-direction: column;
}

.avue-home__main {
user-select: none;
width: 100%;
flex-grow: 1;
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
}

.avue-home__footer {
width: 100%;
flex-grow: 0;
text-align: center;
padding: 1em 0;
}

.avue-home__footer > a {
font-size: 12px;
color: #ABABAB;
text-decoration: none;
}

.avue-home__loading {
height: 32px;
width: 32px;
margin-bottom: 20px;
}

.avue-home__title {
color: #FFF;
font-size: 14px;
margin-bottom: 10px;
}

.avue-home__sub-title {
color: #ABABAB;
font-size: 12px;
}

+ 1
- 0
public/cdn/avue/index.css
File diff suppressed because it is too large
View File


+ 8
- 0
public/cdn/avue/index.js
File diff suppressed because it is too large
View File


+ 193
- 0
public/cdn/store/1.3.20/store.js View File

@@ -0,0 +1,193 @@
'use strict'
// Module export pattern from
// https://github.com/umdjs/umd/blob/master/returnExports.js
;(function (root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define([], factory)
} else if (typeof exports === 'object') {
// Node. Does not work with strict CommonJS, but
// only CommonJS-like environments that support module.exports,
// like Node.
module.exports = factory()
} else {
// Browser globals (root is window)
root.store = factory()
}
}(this, function () {
// Store.js
var store = {}

var win = (typeof window !== 'undefined' ? window : global)

var doc = win.document

var localStorageName = 'localStorage'

var scriptTag = 'script'

var storage

store.disabled = false
store.version = '1.3.20'
store.set = function (key, value) {}
store.get = function (key, defaultVal) {}
store.has = function (key) { return store.get(key) !== undefined }
store.remove = function (key) {}
store.clear = function () {}
store.transact = function (key, defaultVal, transactionFn) {
if (transactionFn == null) {
transactionFn = defaultVal
defaultVal = null
}
if (defaultVal == null) {
defaultVal = {}
}
var val = store.get(key, defaultVal)
transactionFn(val)
store.set(key, val)
}
store.getAll = function () {}
store.forEach = function () {}

store.serialize = function (value) {
return JSON.stringify(value)
}
store.deserialize = function (value) {
if (typeof value !== 'string') { return undefined }
try { return JSON.parse(value) } catch (e) { return value || undefined }
}

// Functions to encapsulate questionable FireFox 3.6.13 behavior
// when about.config::dom.storage.enabled === false
// See https://github.com/marcuswestin/store.js/issues#issue/13
function isLocalStorageNameSupported () {
try { return (localStorageName in win && win[localStorageName]) } catch (err) { return false }
}

if (isLocalStorageNameSupported()) {
storage = win[localStorageName]
store.set = function (key, val) {
if (val === undefined) { return store.remove(key) }
storage.setItem(key, store.serialize(val))
return val
}
store.get = function (key, defaultVal) {
var val = store.deserialize(storage.getItem(key))
return (val === undefined ? defaultVal : val)
}
store.remove = function (key) { storage.removeItem(key) }
store.clear = function () { storage.clear() }
store.getAll = function () {
var ret = {}
store.forEach(function (key, val) {
ret[key] = val
})
return ret
}
store.forEach = function (callback) {
for (var i = 0; i < storage.length; i++) {
var key = storage.key(i)
callback(key, store.get(key))
}
}
} else if (doc && doc.documentElement.addBehavior) {
var storageOwner,
storageContainer
// Since #userData storage applies only to specific paths, we need to
// somehow link our data to a specific path. We choose /favicon.ico
// as a pretty safe option, since all browsers already make a request to
// this URL anyway and being a 404 will not hurt us here. We wrap an
// iframe pointing to the favicon in an ActiveXObject(htmlfile) object
// (see: http://msdn.microsoft.com/en-us/library/aa752574(v=VS.85).aspx)
// since the iframe access rules appear to allow direct access and
// manipulation of the document element, even for a 404 page. This
// document can be used instead of the current document (which would
// have been limited to the current path) to perform #userData storage.
try {
storageContainer = new ActiveXObject('htmlfile')
storageContainer.open()
storageContainer.write('<' + scriptTag + '>document.w=window</' + scriptTag + '><iframe src="/favicon.ico"></iframe>')
storageContainer.close()
storageOwner = storageContainer.w.frames[0].document
storage = storageOwner.createElement('div')
} catch (e) {
// somehow ActiveXObject instantiation failed (perhaps some special
// security settings or otherwse), fall back to per-path storage
storage = doc.createElement('div')
storageOwner = doc.body
}
var withIEStorage = function (storeFunction) {
return function () {
var args = Array.prototype.slice.call(arguments, 0)
args.unshift(storage)
// See http://msdn.microsoft.com/en-us/library/ms531081(v=VS.85).aspx
// and http://msdn.microsoft.com/en-us/library/ms531424(v=VS.85).aspx
storageOwner.appendChild(storage)
storage.addBehavior('#default#userData')
storage.load(localStorageName)
var result = storeFunction.apply(store, args)
storageOwner.removeChild(storage)
return result
}
}

// In IE7, keys cannot start with a digit or contain certain chars.
// See https://github.com/marcuswestin/store.js/issues/40
// See https://github.com/marcuswestin/store.js/issues/83
var forbiddenCharsRegex = new RegExp("[!\"#$%&'()*+,/\\\\:;<=>?@[\\]^`{|}~]", 'g')
var ieKeyFix = function (key) {
return key.replace(/^d/, '___$&').replace(forbiddenCharsRegex, '___')
}
store.set = withIEStorage(function (storage, key, val) {
key = ieKeyFix(key)
if (val === undefined) { return store.remove(key) }
storage.setAttribute(key, store.serialize(val))
storage.save(localStorageName)
return val
})
store.get = withIEStorage(function (storage, key, defaultVal) {
key = ieKeyFix(key)
var val = store.deserialize(storage.getAttribute(key))
return (val === undefined ? defaultVal : val)
})
store.remove = withIEStorage(function (storage, key) {
key = ieKeyFix(key)
storage.removeAttribute(key)
storage.save(localStorageName)
})
store.clear = withIEStorage(function (storage) {
var attributes = storage.XMLDocument.documentElement.attributes
storage.load(localStorageName)
for (var i = attributes.length - 1; i >= 0; i--) {
storage.removeAttribute(attributes[i].name)
}
storage.save(localStorageName)
})
store.getAll = function (storage) {
var ret = {}
store.forEach(function (key, val) {
ret[key] = val
})
return ret
}
store.forEach = withIEStorage(function (storage, callback) {
var attributes = storage.XMLDocument.documentElement.attributes
for (var i = 0, attr; attr = attributes[i]; ++i) {
callback(attr.name, store.deserialize(storage.getAttribute(attr.name)))
}
})
}

try {
var testKey = '__storejs__'
store.set(testKey, testKey)
if (store.get(testKey) != testKey) { store.disabled = true }
store.remove(testKey)
} catch (e) {
store.disabled = true
}
store.enabled = !store.disabled

return store
}))

BIN
public/favicon.ico View File

Before After
Width: 290  |  Height: 290  |  Size: 14 KiB

BIN
public/images/banner_control23b288.png View File

Before After
Width: 318  |  Height: 65  |  Size: 7.8 KiB

+ 1
- 0
public/images/base.css.bak
File diff suppressed because it is too large
View File


BIN
public/images/base_z36574a.png View File

Before After
Width: 162  |  Height: 5513  |  Size: 95 KiB

BIN
public/images/bg_mobile21d289.png View File

Before After
Width: 327  |  Height: 674  |  Size: 33 KiB

BIN
public/images/bg_mobile_foot_default2968da.png View File

Before After
Width: 320  |  Height: 50  |  Size: 1.3 KiB

BIN
public/images/bg_mobile_head_default2968da.png View File

Before After
Width: 320  |  Height: 64  |  Size: 12 KiB

BIN
public/images/card_tpl_deco.png View File

Before After
Width: 11  |  Height: 5  |  Size: 1.1 KiB

BIN
public/images/emoji218877.png View File

Before After
Width: 20  |  Height: 11520  |  Size: 352 KiB

BIN
public/images/emotion_editor_z3518e7.png View File

Before After
Width: 20  |  Height: 68  |  Size: 732 B

BIN
public/images/history_msg35065c.png View File

Before After
Width: 240  |  Height: 348  |  Size: 32 KiB

BIN
public/images/icon13_arrow_right_gray218877.png View File

Before After
Width: 13  |  Height: 13  |  Size: 1.1 KiB

BIN
public/images/icon16_loading_light218877.gif View File

Before After
Width: 16  |  Height: 16  |  Size: 2.6 KiB

BIN
public/images/icon18_loading_default218877.gif View File

Before After
Width: 18  |  Height: 18  |  Size: 3.2 KiB

BIN
public/images/icon18_loading_primary218877.gif View File

Before After
Width: 18  |  Height: 18  |  Size: 4.3 KiB

BIN
public/images/icon32_loading_dark218877.gif View File

Before After
Width: 32  |  Height: 32  |  Size: 3.1 KiB

BIN
public/images/icon32_loading_light218877.gif View File

Before After
Width: 32  |  Height: 32  |  Size: 3.1 KiB

BIN
public/images/icon40_loading_gray218877.gif View File

Before After
Width: 40  |  Height: 40  |  Size: 6.3 KiB

BIN
public/images/icon40_loading_white218877.gif View File

Before After
Width: 40  |  Height: 40  |  Size: 7.8 KiB

BIN
public/images/icon_memu_function.png View File

Before After
Width: 23  |  Height: 23  |  Size: 1.1 KiB

BIN
public/images/icon_memu_function_selected.png View File

Before After
Width: 23  |  Height: 23  |  Size: 1.0 KiB

BIN
public/images/icon_memu_manage.png View File

Before After
Width: 23  |  Height: 23  |  Size: 1.4 KiB

BIN
public/images/icon_memu_manage_selected.png View File

Before After
Width: 23  |  Height: 23  |  Size: 1.2 KiB

BIN
public/images/icon_memu_statistics.png View File

Before After
Width: 23  |  Height: 23  |  Size: 1.5 KiB

BIN
public/images/icon_memu_statistics_selected.png View File

Before After
Width: 23  |  Height: 23  |  Size: 1.3 KiB

BIN
public/images/icon_menu_adclient.png View File

Before After
Width: 23  |  Height: 23  |  Size: 1.4 KiB

BIN
public/images/icon_menu_advert.png View File

Before After
Width: 23  |  Height: 23  |  Size: 1.4 KiB

BIN
public/images/icon_menu_advert_selected.png View File

Before After
Width: 23  |  Height: 23  |  Size: 1.2 KiB

BIN
public/images/icon_menu_host.png View File

Before After
Width: 23  |  Height: 23  |  Size: 1.5 KiB

BIN
public/images/icon_menu_host_selected.png View File

Before After
Width: 23  |  Height: 23  |  Size: 1.3 KiB

BIN
public/images/icon_menu_nav_next2968da.png View File

Before After
Width: 12  |  Height: 12  |  Size: 1.1 KiB

BIN
public/images/icon_menu_nav_prev2968da.png View File

Before After
Width: 12  |  Height: 12  |  Size: 1.1 KiB

BIN
public/images/icon_menu_service_selected.png View File

Before After
Width: 23  |  Height: 23  |  Size: 1.1 KiB

BIN
public/images/icon_menu_setting.png View File

Before After
Width: 23  |  Height: 23  |  Size: 1.8 KiB

BIN
public/images/icon_menu_setting_selected.png View File

Before After
Width: 23  |  Height: 23  |  Size: 1.4 KiB

BIN
public/images/icon_menu_store.png View File

Before After
Width: 23  |  Height: 23  |  Size: 1.4 KiB

BIN
public/images/icon_menu_store_selected.png View File

Before After
Width: 23  |  Height: 23  |  Size: 1.2 KiB

BIN
public/images/icon_noie6218877.png View File

Before After
Width: 369  |  Height: 390  |  Size: 40 KiB

+ 1
- 0
public/images/index.css.bak
File diff suppressed because it is too large
View File


BIN
public/images/index_z354723.png View File

Before After
Width: 14  |  Height: 43  |  Size: 228 B

+ 2
- 0
public/images/media_dialog&emotion_editor&msg_tab&emoji&msg_sender&tooltip.css.bak
File diff suppressed because it is too large
View File


BIN
public/images/media_dialog_z27dcd8.png View File

Before After
Width: 38  |  Height: 598  |  Size: 2.1 KiB

BIN
public/images/msg_sender_z35e455.png View File

Before After
Width: 36  |  Height: 156  |  Size: 2.4 KiB

BIN
public/images/msg_tab_z25df2d.png View File

Before After
Width: 20  |  Height: 410  |  Size: 1.9 KiB

BIN
public/images/pic_menu_preview2968da.png View File

Before After
Width: 256  |  Height: 456  |  Size: 21 KiB

BIN
public/img/bg/cloud.jpg View File

Before After
Width: 600  |  Height: 360  |  Size: 11 KiB

BIN
public/img/bg/login.png View File

Before After
Width: 1920  |  Height: 1080  |  Size: 239 KiB

BIN
public/img/bg/star-squashed.jpg View File

Before After
Width: 1920  |  Height: 1080  |  Size: 359 KiB

BIN
public/img/code/qq-code.jpg View File

Before After
Width: 290  |  Height: 294  |  Size: 104 KiB

BIN
public/img/code/wechat-code.jpg View File

Before After
Width: 762  |  Height: 756  |  Size: 206 KiB

BIN
public/img/login.png View File

Before After
Width: 1920  |  Height: 1080  |  Size: 239 KiB

BIN
public/img/logo.png View File

Before After
Width: 1000  |  Height: 1000  |  Size: 18 KiB

+ 55
- 0
public/index.html View File

@@ -0,0 +1,55 @@
<!DOCTYPE html>
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="format-detection" content="telephone=no">
<!--避免微信管理防盗链机制-->
<meta name="referrer" content="no-referrer"/>
<meta http-equiv="X-UA-Compatible" content="chrome=1"/>
<link rel="stylesheet" href="<%= BASE_URL %>cdn/animate/3.5.2/animate.css">
<link rel="stylesheet" href="<%= BASE_URL %>cdn/avue/avue.css">
<link rel="stylesheet" href="<%= BASE_URL %>cdn/avue/index.css">
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
<title>智控管家</title>
</head>

<body>
<noscript>
<strong>很抱歉,如果没有 JavaScript 支持,网站将不能正常工作。请启用浏览器的 JavaScript 然后继续。</strong>
</noscript>
<div id="app">
<div class="avue-home">
<div class="avue-home__main">
<img class="avue-home__loading" src="./svg/loading-spin.svg" alt="loading">
<div class="avue-home__title">
正在加载资源
</div>
<div class="avue-home__sub-title">
初次加载资源可能需要较多时间 请耐心等待
</div>
</div>
<div class="avue-home__footer">
<a href="https://pig4cloud.com/zh-cn" target="_blank">
Copyright © 2020 pig4cloud.com</a>
</div>
</div>
</div>
<!-- built files will be auto injected -->
<script src="<%= BASE_URL %>cdn/avue/index.js" charset="utf-8"></script>
<script>
var _hmt = _hmt || [];
(function() {
var hm = document.createElement('script')
hm.src = 'https://hm.baidu.com/hm.js?0625618efb027ed02e88da84c121652e'
var s = document.getElementsByTagName('script')[0]
s.parentNode.insertBefore(hm, s)
})()
</script>
</body>

</html>

+ 6
- 0
public/svg/loading-spin.svg View File

@@ -0,0 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="32" height="32" fill="white">
<path opacity=".25" d="M16 0 A16 16 0 0 0 16 32 A16 16 0 0 0 16 0 M16 4 A12 12 0 0 1 16 28 A12 12 0 0 1 16 4"/>
<path d="M16 0 A16 16 0 0 1 32 16 L28 16 A12 12 0 0 0 16 4z">
<animateTransform attributeName="transform" type="rotate" from="0 16 16" to="360 16 16" dur="0.8s" repeatCount="indefinite" />
</path>
</svg>

+ 26
- 0
src/App.vue View File

@@ -0,0 +1,26 @@
<template>
<div id="app">
<router-view/>
</div>
</template>

<script>
export default {
name: 'App',
data() {
return {}
},
computed: {},
watch: {},
created() {
},
methods: {}
}
</script>
<style lang="scss">
#app {
width: 100%;
height: 100%;
overflow: hidden;
}
</style>

+ 63
- 0
src/api/activiti/activiti.js View File

@@ -0,0 +1,63 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/act/model',
method: 'get',
params: query
})
}

export function delObj(id) {
return request({
url: '/act/model/' + id,
method: 'delete'
})
}

export function deploy(id) {
return request({
url: '/act/model/deploy/' + id,
method: 'post'
})
}

export function addObj(obj) {
return request({
url: '/act/model/insert',
method: 'post',
data: obj
})
}

export function getObj(id) {
return request({
url: '/admin/log/' + id,
method: 'get'
})
}

export function putObj(obj) {
return request({
url: '/admin/log/',
method: 'put',
data: obj
})
}

+ 63
- 0
src/api/activiti/leave-bill.js View File

@@ -0,0 +1,63 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/act/leave-bill/page',
method: 'get',
params: query
})
}

export function addObj(obj) {
return request({
url: '/act/leave-bill',
method: 'post',
data: obj
})
}

export function getObj(id) {
return request({
url: '/act/leave-bill/' + id,
method: 'get'
})
}

export function submit(id) {
return request({
url: '/act/leave-bill/submit/' + id,
method: 'get'
})
}

export function delObj(id) {
return request({
url: '/act/leave-bill/' + id,
method: 'delete'
})
}

export function putObj(obj) {
return request({
url: '/act/leave-bill/',
method: 'put',
data: obj
})
}

+ 40
- 0
src/api/activiti/process.js View File

@@ -0,0 +1,40 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/act/process',
method: 'get',
params: query
})
}

export function delObj(id) {
return request({
url: '/act/process/' + id,
method: 'delete'
})
}

export function status(id, type) {
return request({
url: '/act/process/status/' + id + '/' + type,
method: 'put'
})
}

+ 48
- 0
src/api/activiti/task.js View File

@@ -0,0 +1,48 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/act/task/todo',
method: 'get',
params: query
})
}

export function fetchDetail(id) {
return request({
url: '/act/task/' + id,
method: 'get'
})
}

export function fetchComment(id) {
return request({
url: '/act/task/comment/' + id,
method: 'get'
})
}

export function doTask(obj) {
return request({
url: '/act/task',
method: 'post',
data: obj
})
}

+ 56
- 0
src/api/admin/client.js View File

@@ -0,0 +1,56 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/admin/client/page',
method: 'get',
params: query
})
}

export function addObj(obj) {
return request({
url: '/admin/client/',
method: 'post',
data: obj
})
}

export function getObj(id) {
return request({
url: '/admin/client/' + id,
method: 'get'
})
}

export function delObj(id) {
return request({
url: '/admin/client/' + id,
method: 'delete'
})
}

export function putObj(obj) {
return request({
url: '/admin/client',
method: 'put',
data: obj
})
}

+ 56
- 0
src/api/admin/dept.js View File

@@ -0,0 +1,56 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchTree(query) {
return request({
url: '/admin/dept/tree',
method: 'get',
params: query
})
}

export function addObj(obj) {
return request({
url: '/admin/dept/',
method: 'post',
data: obj
})
}

export function getObj(id) {
return request({
url: '/admin/dept/' + id,
method: 'get'
})
}

export function delObj(id) {
return request({
url: '/admin/dept/' + id,
method: 'delete'
})
}

export function putObj(obj) {
return request({
url: '/admin/dept/',
method: 'put',
data: obj
})
}

+ 101
- 0
src/api/admin/dict.js View File

@@ -0,0 +1,101 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/admin/dict/page',
method: 'get',
params: query
})
}

export function fetchItemList(query) {
return request({
url: '/admin/dict/item/page',
method: 'get',
params: query
})
}

export function addItemObj(obj) {
return request({
url: '/admin/dict/item',
method: 'post',
data: obj
})
}

export function getItemObj(id) {
return request({
url: '/admin/dict/item/' + id,
method: 'get'
})
}

export function delItemObj(id) {
return request({
url: '/admin/dict/item/' + id,
method: 'delete'
})
}

export function putItemObj(obj) {
return request({
url: '/admin/dict/item',
method: 'put',
data: obj
})
}

export function addObj(obj) {
return request({
url: '/admin/dict/',
method: 'post',
data: obj
})
}

export function getObj(id) {
return request({
url: '/admin/dict/' + id,
method: 'get'
})
}

export function delObj(row) {
return request({
url: '/admin/dict/' + row.id,
method: 'delete'
})
}

export function putObj(obj) {
return request({
url: '/admin/dict/',
method: 'put',
data: obj
})
}

export function remote(type) {
return request({
url: '/admin/dict/type/' + type,
method: 'get'
})
}

+ 64
- 0
src/api/admin/log.js View File

@@ -0,0 +1,64 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/admin/log/page',
method: 'get',
params: query
})
}

export function delObj(id) {
return request({
url: '/admin/log/' + id,
method: 'delete'
})
}

export function addObj(obj) {
return request({
url: '/admin/log/',
method: 'post',
data: obj
})
}

export function getObj(id) {
return request({
url: '/admin/log/' + id,
method: 'get'
})
}

export function putObj(obj) {
return request({
url: '/admin/log/',
method: 'put',
data: obj
})
}

export function sendLogs(logsList) {
return request({
url: '/admin/log/logs',
method: 'post',
data: logsList
})
}

+ 72
- 0
src/api/admin/menu.js View File

@@ -0,0 +1,72 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function getMenu(id) {
return request({
url: '/admin/menu',
params: {parentId: id},
method: 'get'
})
}

export function getTopMenu() {
return request({
url: '/admin/menu',
params: {type: 'top'},
method: 'get'
})
}

export function fetchMenuTree(lazy, parentId) {
return request({
url: '/admin/menu/tree',
method: 'get',
params: {lazy: lazy, parentId: parentId}
})
}

export function addObj(obj) {
return request({
url: '/admin/menu',
method: 'post',
data: obj
})
}

export function getObj(id) {
return request({
url: '/admin/menu/' + id,
method: 'get'
})
}

export function delObj(id) {
return request({
url: '/admin/menu/' + id,
method: 'delete'
})
}

export function putObj(obj) {
return request({
url: '/admin/menu',
method: 'put',
data: obj
})
}

+ 88
- 0
src/api/admin/role.js View File

@@ -0,0 +1,88 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function roleList() {
return request({
url: '/admin/role/roleList',
method: 'get'
})
}

export function fetchList(query) {
return request({
url: '/admin/role/page',
method: 'get',
params: query
})
}

export function deptRoleList() {
return request({
url: '/admin/role/list',
method: 'get'
})
}

export function getObj(id) {
return request({
url: '/admin/role/' + id,
method: 'get'
})
}

export function addObj(obj) {
return request({
url: '/admin/role',
method: 'post',
data: obj
})
}

export function putObj(obj) {
return request({
url: '/admin/role',
method: 'put',
data: obj
})
}

export function delObj(id) {
return request({
url: '/admin/role/' + id,
method: 'delete'
})
}

export function permissionUpd(roleId, menuIds) {
return request({
url: '/admin/role/menu',
method: 'put',
data: {
roleId: roleId,
menuIds: menuIds
}
})
}

export function fetchRoleTree(roleId) {
return request({
url: '/admin/menu/tree/' + roleId,
method: 'get'
})
}

+ 41
- 0
src/api/admin/route.js View File

@@ -0,0 +1,41 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/admin/route',
method: 'get',
params: query
})
}

export function putObj(obj) {
return request({
url: '/admin/route',
method: 'put',
data: obj
})
}

export function refreshObj() {
return request({
url: '/actuator/refresh',
method: 'post'
})
}

+ 56
- 0
src/api/admin/sys-file.js View File

@@ -0,0 +1,56 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/admin/sys-file/page',
method: 'get',
params: query
})
}

export function addObj(obj) {
return request({
url: '/admin/sys-file',
method: 'post',
data: obj
})
}

export function getObj(id) {
return request({
url: '/admin/sys-file/' + id,
method: 'get'
})
}

export function delObj(id) {
return request({
url: '/admin/sys-file/' + id,
method: 'delete'
})
}

export function putObj(obj) {
return request({
url: '/admin/sys-file',
method: 'put',
data: obj
})
}

+ 56
- 0
src/api/admin/sys-public-param.js View File

@@ -0,0 +1,56 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/admin/param/page',
method: 'get',
params: query
})
}

export function addObj(obj) {
return request({
url: '/admin/param',
method: 'post',
data: obj
})
}

export function getObj(key) {
return request({
url: '/admin/param/publicValue/' + key,
method: 'get'
})
}

export function delObj(id) {
return request({
url: '/admin/param/' + id,
method: 'delete'
})
}

export function putObj(obj) {
return request({
url: '/admin/param',
method: 'put',
data: obj
})
}

+ 56
- 0
src/api/admin/sys-social-details.js View File

@@ -0,0 +1,56 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/admin/social/page',
method: 'get',
params: query
})
}

export function addObj(obj) {
return request({
url: '/admin/social/',
method: 'post',
data: obj
})
}

export function getObj(id) {
return request({
url: '/admin/social/' + id,
method: 'get'
})
}

export function delObj(id) {
return request({
url: '/admin/social/' + id,
method: 'delete'
})
}

export function putObj(obj) {
return request({
url: '/admin/social/',
method: 'put',
data: obj
})
}

+ 64
- 0
src/api/admin/tenant.js View File

@@ -0,0 +1,64 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchPage(query) {
return request({
url: '/admin/tenant/page',
method: 'get',
params: query
})
}

export function fetchList(query) {
return request({
url: '/admin/tenant/list',
method: 'get',
params: query
})
}

export function addObj(obj) {
return request({
url: '/admin/tenant',
method: 'post',
data: obj
})
}

export function getObj(id) {
return request({
url: '/admin/tenant/' + id,
method: 'get'
})
}

export function delObj(id) {
return request({
url: '/admin/tenant/' + id,
method: 'delete'
})
}

export function putObj(obj) {
return request({
url: '/admin/tenant',
method: 'put',
data: obj
})
}

+ 33
- 0
src/api/admin/token.js View File

@@ -0,0 +1,33 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/admin/token/page',
method: 'get',
params: query
})
}

export function delObj(token) {
return request({
url: '/admin/token/' + token,
method: 'delete'
})
}

+ 72
- 0
src/api/admin/user.js View File

@@ -0,0 +1,72 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/admin/user/page',
method: 'get',
params: query
})
}

export function addObj(obj) {
return request({
url: '/admin/user',
method: 'post',
data: obj
})
}

export function getObj(id) {
return request({
url: '/admin/user/' + id,
method: 'get'
})
}

export function delObj(id) {
return request({
url: '/admin/user/' + id,
method: 'delete'
})
}

export function putObj(obj) {
return request({
url: '/admin/user',
method: 'put',
data: obj
})
}

export function getDetails(obj) {
return request({
url: '/admin/user/details/' + obj,
method: 'get'
})
}

// 更改个人信息
export function editInfo(obj) {
return request({
url: '/admin/user/edit',
method: 'put',
data: obj
})
}

+ 12
- 0
src/api/api.js View File

@@ -0,0 +1,12 @@
/*
* 接口统一集成模块
*/
import * as api from './modules/api'
import * as http from './modules/http'


// 默认全部导出
export default {
api,
http
}

+ 26
- 0
src/api/code.js View File

@@ -0,0 +1,26 @@
import request from '@/router/axios'

/**
* 获取验证码
* @param query 查询条件
* @param code 验证码对象
* @returns {Promise<T>}
*/
export function getCode(query, code) {
return request({
url: '/code',
method: 'get',
params: query,
responseType: 'arraybuffer'
}).then(response => {
//将从后台获取的图片流进行转换
return 'data:image/png;base64,' + btoa(
new Uint8Array(response.data).reduce((data, byte) => data + String.fromCharCode(byte), '')
)
}).then(function(data) {
//接收转换后的Base64图片
code.src = data
}).catch(function(err) {
console.log(err)
})
}

+ 56
- 0
src/api/daemon/execution-log.js View File

@@ -0,0 +1,56 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/daemon/execution-log/page',
method: 'get',
params: query
})
}

export function addObj(obj) {
return request({
url: '/daemon/execution-log',
method: 'post',
data: obj
})
}

export function getObj(id) {
return request({
url: '/daemon/execution-log/' + id,
method: 'get'
})
}

export function delObj(id) {
return request({
url: '/daemon/execution-log/' + id,
method: 'delete'
})
}

export function putObj(obj) {
return request({
url: '/daemon/execution-log',
method: 'put',
data: obj
})
}

+ 56
- 0
src/api/daemon/status-trace-log.js View File

@@ -0,0 +1,56 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/daemon/status-trace-log/page',
method: 'get',
params: query
})
}

export function addObj(obj) {
return request({
url: '/daemon/status-trace-log',
method: 'post',
data: obj
})
}

export function getObj(id) {
return request({
url: '/daemon/status-trace-log/' + id,
method: 'get'
})
}

export function delObj(id) {
return request({
url: '/daemon/status-trace-log/' + id,
method: 'delete'
})
}

export function putObj(obj) {
return request({
url: '/daemon/status-trace-log',
method: 'put',
data: obj
})
}

+ 10
- 0
src/api/daemon/sys-job-log.js View File

@@ -0,0 +1,10 @@
import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/job/sys-job-log/page',
method: 'get',
params: query
})
}


+ 97
- 0
src/api/daemon/sys-job.js View File

@@ -0,0 +1,97 @@
import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/job/sys-job/page',
method: 'get',
params: query
})
}

export function fetchLogList(query) {
return request({
url: '/job/sys-job/job-log',
method: 'get',
params: query
})
}

export function shutdownJobsRa() {
return request({
url: '/job/sys-job/shutdown-jobs',
method: 'post'
})
}

export function startJobsRa() {
return request({
url: '/job/sys-job/start-jobs',
method: 'post'
})
}

export function refreshJobsRa() {
return request({
url: '/job/sys-job/refresh-jobs',
method: 'post'
})
}

export function startJobRa(jobId) {
return request({
url: '/job/sys-job/start-job/' + jobId,
method: 'post'
})
}

export function runJobRa(jobId) {
return request({
url: '/job/sys-job/run-job/' + jobId,
method: 'post'
})
}

export function shutDownJobRa(jobId) {
return request({
url: '/job/sys-job/shutdown-job/' + jobId,
method: 'post'
})
}

export function addObj(obj) {
return request({
url: '/job/sys-job',
method: 'post',
data: obj
})
}

export function getObj(id) {
return request({
url: '/job/sys-job/' + id,
method: 'get'
})
}

export function delObj(id) {
return request({
url: '/job/sys-job/' + id,
method: 'delete'
})
}

export function putObj(obj) {
return request({
url: '/job/sys-job',
method: 'put',
data: obj
})
}

export function isValidTaskName(query) {
return request({
url: '/job/sys-job/is-valid-task-name',
method: 'get',
params: query
})
}

+ 56
- 0
src/api/gen/form.js View File

@@ -0,0 +1,56 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/gen/form/page',
method: 'get',
params: query
})
}

export function addObj(obj) {
return request({
url: '/gen/form',
method: 'post',
data: obj
})
}

export function getObj(id) {
return request({
url: '/gen/form/' + id,
method: 'get'
})
}

export function delObj(id) {
return request({
url: '/gen/form/' + id,
method: 'delete'
})
}

export function putObj(obj) {
return request({
url: '/gen/form',
method: 'put',
data: obj
})
}

+ 124
- 0
src/api/gen/gen.js View File

@@ -0,0 +1,124 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/

import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/gen/generator/page',
method: 'get',
params: query
})
}

export function fetchDsList(query) {
return request({
url: '/gen/dsconf/page',
method: 'get',
params: query
})
}

export function fetchSelectDsList() {
return request({
url: '/gen/dsconf/list',
method: 'get'
})
}

export function addObj(obj) {
return request({
url: '/gen/dsconf/',
method: 'post',
data: obj
})
}

export function getObj(id) {
return request({
url: '/gen/dsconf/' + id,
method: 'get'
})
}

export function delObj(id) {
return request({
url: '/gen/dsconf/' + id,
method: 'delete'
})
}

export function putObj(obj) {
return request({
url: '/gen/dsconf/',
method: 'put',
data: obj
})
}

export function preview(table) {
return request({
url: '/gen/generator/preview',
method: 'get',
params: table
})
}

export function handleDown(table) {
return request({
url: '/gen/generator/code',
method: 'post',
data: table,
responseType: 'arraybuffer'
}).then((response) => { // 处理返回的文件流
const blob = new Blob([response.data], {type: 'application/zip'})
const filename = table.tableName + '.zip'
const link = document.createElement('a')
link.href = URL.createObjectURL(blob)
link.download = filename
document.body.appendChild(link)
link.click()
window.setTimeout(function () {
URL.revokeObjectURL(blob)
document.body.removeChild(link)
}, 0)
})
}

export function getGenTable(query) {
return request({
url: '/gen/generator/table',
params: query,
method: 'get'
})
}

export function getForm(tableName, dsName) {
return request({
url: '/gen/form/info',
params: {tableName: tableName, dsName: dsName},
method: 'get'
})
}

export function postForm(formInfo, tableName, dsId) {
return request({
url: '/gen/form/',
method: 'post',
data: Object.assign({formInfo, tableName, dsId})
})
}

+ 20
- 0
src/api/index.js View File

@@ -0,0 +1,20 @@
// 导入所有接口
import api from './api'

const install = Vue => {
if (install.installed)
return;

install.installed = true;

Object.defineProperties(Vue.prototype, {
// 注意,此处挂载在 Vue 原型的 $api 对象上
$api: {
get() {
return api
}
}
})
}

export default install

+ 94
- 0
src/api/login.js View File

@@ -0,0 +1,94 @@
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the pig4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
import request from '@/router/axios'
import qs from 'qs'

const scope = 'server'

export const loginByUsername = (username, password, code, randomStr) => {
let grant_type = 'password'
let dataObj = qs.stringify({'username': username, 'password': password})

return request({
url: '/auth/oauth/token',
headers: {
isToken: false,
'TENANT-ID': '1',
'Authorization': 'Basic cGlnOnBpZw=='
},
method: 'post',
params: {randomStr, code, grant_type},
data: dataObj
})
}

export const refreshToken = (refresh_token) => {
const grant_type = 'refresh_token'
return request({
url: '/auth/oauth/token',
headers: {
'isToken': false,
'TENANT-ID': '1',
'Authorization': 'Basic cGlnOnBpZw=='
},
method: 'post',
params: {refresh_token, grant_type, scope}
})
}

export const loginByMobile = (mobile, code) => {
const grant_type = 'mobile'
return request({
url: '/auth/mobile/token/sms',
headers: {
isToken: false,
'TENANT-ID': '1',
'Authorization': 'Basic cGlnOnBpZw=='
},
method: 'post',
params: {mobile: 'SMS@' + mobile, code: code, grant_type}
})
}

export const loginBySocial = (state, code) => {
const grant_type = 'mobile'
return request({
url: '/auth/mobile/token/social',
headers: {
isToken: false,
'TENANT-ID': '1',
'Authorization': 'Basic cGlnOnBpZw=='
},
method: 'post',
params: {mobile: state + '@' + code, grant_type}
})
}

export const getUserInfo = (query) => {
return request({
url: '/admin/user/info',
method: 'get',
params:query
})
}

export const logout = () => {
return request({
url: '/auth/token/logout',
method: 'delete'
})
}

+ 178
- 0
src/api/modules/api.js View File

@@ -0,0 +1,178 @@
import request from '@/router/axios'

export function fetchList(query) {
return request({
url: '/admin/user/page',
method: 'get',
params: query
})
}

export function addObj(obj) {
return request({
url: '/admin/user',
method: 'post',
data: obj
})
}

export function delObj(id) {
return request({
url: '/admin/user/' + id,
method: 'delete'
})
}

export function putObj(obj) {
return request({
url: '/admin/user',
method: 'put',
data: obj
})
}

// 页面加载时获取登录人tab
export function getTab(query) {
return request({
url: '/admin/user/getLoginBackend',
method: 'get',
params: query
})
}

// 获取部门树
export function userDeptTree(query) {
return request({
url: '/admin/user/deptTree',
method: 'get',
params: query
})
}
// 获取公司角色列表
export function getRoleByOrgCode(query) {
return request({
url: '/admin/role/getRoleByOrgCode',
method: 'get',
params: query
})
}

// 用户管理
// 获取当前人的所有楼盘
export function queryHouseByUsername(query) {
return request({
url: '/autoSR/zkhouse/queryHouseByUsername',
method: 'get',
params: query
})
}
//获取当前用户信息
export function getUserMsg(query) {
return request({
url: '/admin/user/getUser',
method: 'get',
params: query
})
}
// 用户批量删除
export function userDelByIds(query) {
return request({
url: '/admin/user/delByIds',
method: 'delete',
params: query
})
}
// 获取公司列表
export function deptGetOrgList(query) {
return request({
url: '/admin/dept/getOrgList',
method: 'get',
params: query
})
}
// 获取公司下的角色
export function roleList(query) {
return request({
url: '/admin/role/list',
method: 'get',
params: query
})
}
// 获取身份列表
export function getAllUserRoleType(query) {
return request({
url: 'admin/user/getAllUserRoleType',
method: 'get',
params: query
})
}
// 添加角色
export function addUserMsg(data) {
return request({
url: '/admin/user',
method: 'post',
data
})
}
// 修改角色
export function editUserMsg(data) {
return request({
url: '/admin/user',
method: 'put',
data
})
}
// 密码重置
export function resetPassword(data) {
return request({
url: '/admin/user/resetPassword',
method: 'post',
data
})
}
// 客户手机号显隐
export function updateShowPhoneStatus(data) {
return request({
url: '/admin/user/updateShowPhoneStatus',
method: 'post',
data
})
}

// 角色管理

export function roleDelIds(query) {
return request({
url: '/admin/role/delIds',
method: 'delete',
params: query
})
}

// 部门管理

//部门添加
export function deptAddOrg(data) {
return request({
url: '/admin/dept/addOrg',
method: 'post',
data
})
}
//部门编辑
export function deptUpdateOrgTree(data) {
return request({
url: '/admin/dept/updateOrgTree',
method: 'post',
data
})
}

//部门删除
export function deptDelOrg(data) {
return request({
url: '/admin/dept/delOrg',
method: 'post',
data
})
}

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save