Browse Source

初始

master
qqkj 5 years ago
commit
ada4d4dce0
  1. 12
      .babelrc
  2. 14
      .editorconfig
  3. 3
      .eslintignore
  4. 199
      .eslintrc.js
  5. 20
      .gitignore
  6. 10
      .postcssrc.js
  7. 5
      .travis.yml
  8. 21
      LICENSE
  9. 185
      README.md
  10. 168
      README.zh-CN.md
  11. 48
      build/build.js
  12. 54
      build/check-versions.js
  13. 38
      build/copy.js
  14. 9
      build/dev-client.js
  15. 89
      build/dev-server.js
  16. BIN
      build/logo.png
  17. 102
      build/utils.js
  18. 22
      build/vue-loader.conf.js
  19. 102
      build/webpack.base.conf.js
  20. 91
      build/webpack.dev.conf.js
  21. 180
      build/webpack.prod.conf.js
  22. 5
      config/dev.env.js
  23. 98
      config/index.js
  24. 5
      config/prod.env.js
  25. 5
      config/sit.env.js
  26. 34
      copy/copy.js
  27. 50
      copy/copyDistToStatic.js
  28. BIN
      favicon.ico
  29. 20
      index.html
  30. 117
      package.json
  31. 11
      src/App.vue
  32. 40
      src/api/article.js
  33. 29
      src/api/branch.js
  34. 283
      src/api/common/code.js
  35. 33
      src/api/itemOption.js
  36. 36
      src/api/login.js
  37. 11
      src/api/login/user.js
  38. 26
      src/api/mdp/arc/archiveAttachment.js
  39. 28
      src/api/mdp/arc/category.js
  40. 34
      src/api/mdp/arc/image.js
  41. 29
      src/api/mdp/arc/imageCategory.js
  42. 36
      src/api/mdp/arc/tag.js
  43. 30
      src/api/mdp/arc/tagCategory.js
  44. 11
      src/api/mdp/attendance/attendace.js
  45. 30
      src/api/mdp/form/formData.js
  46. 33
      src/api/mdp/form/formDataTag.js
  47. 36
      src/api/mdp/form/formDef.js
  48. 34
      src/api/mdp/form/formDefTag.js
  49. 30
      src/api/mdp/form/formField.js
  50. 30
      src/api/mdp/form/formQx.js
  51. 25
      src/api/mdp/form/formView.js
  52. 9
      src/api/mdp/mallm/shop/shop.js
  53. 9
      src/api/mdp/mallm/shop/shopLocation.js
  54. 29
      src/api/mdp/meta/category.js
  55. 29
      src/api/mdp/meta/item.js
  56. 37
      src/api/mdp/meta/itemOption.js
  57. 39
      src/api/mdp/sms/smsSign.js
  58. 36
      src/api/mdp/sms/smsTemplate.js
  59. 29
      src/api/mdp/sys/branch.js
  60. 39
      src/api/mdp/sys/code.js
  61. 35
      src/api/mdp/sys/codeDetail.js
  62. 27
      src/api/mdp/sys/codeSecond.js
  63. 28
      src/api/mdp/sys/dept.js
  64. 25
      src/api/mdp/sys/deptExtinfo.js
  65. 25
      src/api/mdp/sys/deptMech.js
  66. 28
      src/api/mdp/sys/operDataTrail.js
  67. 33
      src/api/mdp/sys/post/post.js
  68. 25
      src/api/mdp/sys/qx.js
  69. 29
      src/api/mdp/sys/role.js
  70. 28
      src/api/mdp/sys/roleQx.js
  71. 24
      src/api/mdp/sys/thirdPartyAccount.js
  72. 33
      src/api/mdp/sys/user.js
  73. 25
      src/api/mdp/sys/userExtinfo.js
  74. 31
      src/api/mdp/sys/userRole.js
  75. 30
      src/api/mdp/workflow/biz/bizModel.js
  76. 31
      src/api/mdp/workflow/de/model.js
  77. 25
      src/api/mdp/workflow/hi/comment.js
  78. 25
      src/api/mdp/workflow/hi/procinst.js
  79. 29
      src/api/mdp/workflow/re/actAssignee.js
  80. 25
      src/api/mdp/workflow/re/deployment.js
  81. 34
      src/api/mdp/workflow/re/procdef.js
  82. 30
      src/api/mdp/workflow/re/procdefParames.js
  83. 34
      src/api/mdp/workflow/re/procdefParamesTemplate.js
  84. 34
      src/api/mdp/workflow/re/procdefTag.js
  85. 20
      src/api/mdp/workflow/ru/execution.js
  86. 30
      src/api/mdp/workflow/ru/procinstFormData.js
  87. 33
      src/api/mdp/workflow/ru/procinstParames.js
  88. 34
      src/api/mdp/workflow/ru/procinstTag.js
  89. 67
      src/api/mdp/workflow/ru/task.js
  90. 8
      src/api/qiniu.js
  91. 9
      src/api/remoteSearch.js
  92. 15
      src/api/sms/sms.js
  93. 9
      src/api/transaction.js
  94. BIN
      src/assets/401_images/401.gif
  95. BIN
      src/assets/404_images/404.png
  96. BIN
      src/assets/404_images/404_cloud.png
  97. BIN
      src/assets/custom-theme/fonts/element-icons.ttf
  98. BIN
      src/assets/custom-theme/fonts/element-icons.woff
  99. 1
      src/assets/custom-theme/index.css
  100. 199
      src/assets/echarts-macarons.js

12
.babelrc

@ -0,0 +1,12 @@
{
"presets": [
["env", {
"modules": false,
"targets": {
"browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
}
}],
"stage-2"
],
"plugins": ["transform-vue-jsx", "transform-runtime"]
}

14
.editorconfig

@ -0,0 +1,14 @@
# 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

3
.eslintignore

@ -0,0 +1,3 @@
build/*.js
config/*.js
src/assets

199
.eslintrc.js

@ -0,0 +1,199 @@
module.exports = {
root: true,
parser: 'babel-eslint',
parserOptions: {
sourceType: 'module'
},
env: {
browser: true,
node: true,
es6: true,
},
extends: 'eslint:recommended',
// required to lint *.vue files
plugins: [
'html'
],
// check if imports actually resolve
'settings': {
'import/resolver': {
'webpack': {
'config': 'build/webpack.base.conf.js'
}
}
},
// add your custom rules here
//it is base on https://github.com/vuejs/eslint-config-vue
'rules': {
'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': [2, 'allow-null'],
'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']
}
}

20
.gitignore

@ -0,0 +1,20 @@
.DS_Store
node_modules/
dist/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
test/unit/coverage
test/e2e/reports
selenium-debug.log
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
package-lock.json

10
.postcssrc.js

@ -0,0 +1,10 @@
// https://github.com/michael-ciniawsky/postcss-load-config
module.exports = {
"plugins": {
"postcss-import": {},
"postcss-url": {},
// to edit target browsers: use "browserslist" field in package.json
"autoprefixer": {}
}
}

5
.travis.yml

@ -0,0 +1,5 @@
language: node_js
node_js: stable
script: npm run test
notifications:
email: false

21
LICENSE

@ -0,0 +1,21 @@
MIT License
Copyright (c) 2016-present taylorchen709
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

185
README.md

@ -0,0 +1,185 @@
# To start
这是一个开发工具项目,主要帮助程序员自动生成增删改查代码,由广州擎勤网络科技有限公司研发。
` 前端`
# 前端开发工具
node.js、webpacck、npm、eclipse、svn、安卓、ios等
# 前端ui-pc端
vue.js、element-ui、axios
# 前端ui-手机端
vue.js、vux、weui、weex
# 前端ui-微信公众号端
vue.js、vux
# 前端ui-微信小程序
微信开发工具
# 前端文件结构
* build - webpack config files
* config - webpack config files
* dist - build
* src -your app
* api
* assets
* common
* components - your vue components
* mock
* styles
* views - your pages
* vuex
* App.vue
* main.js - main file
* routes.js
* static - static assets
# 前端web开发工具安装步骤 首次安装执行 1-6,添加工程执行 7-12
## 1 安装node.js 从网络下载最新稳定版本
node-v8.9.1-x64
## 2 安装 npm
npm install npm@latest -g
## 3 设置淘宝镜像及安装淘宝镜像命令cnpm (如有必要)
npm config set registry https://registry.npm.taobao.org
npm install -g cnpm --registry=https://registry.npm.taobao.org
## 4 通过镜像下载 node-sass(如有必要)
npm install -g node-sass --registry=https://registry.npm.taobao.org
## 5 安装vue 命令行工具 (如有必要)
npm install -g vue-cli
## 6 设置eclipse 关联 .vue文件
Window -> Preferences -> General -> Editors -> File Associations -> Add -> *.vue -> Add -> HTML Editor / JS Editor / CSS Editor
## 7 用eclipse 从svn下载工程项目
svn地址 http://203.195.131.73:8085/svn/
如工程 mdp-arc-web
## 8 进入工程 目录 (假设工程在 D:\workspace\mdp-arc-web)
cd /D D:\workspace\mdp-arc-web
## 9 安装工程依赖包
D:\workspace\mdp-arc-web > npm install
## 10 开发调试工程
npm dev
## 11 编译
npm build
## 12 拷贝编译后文件到后台工程(用于与后台工程一起打成jar包发布)(如有必要)
npm copyToStatic
`服务端`
# 服务端开发工具
jdk8、eclipse oxygen、svn、maven、oracle
# 服务端编程框架
spring boot 1.5、spring mvc 4、spring cloud 1.5、spring security 4、logback 1、mybatis 3、thymeleaf 3
# 服务端安装开发工具步骤 首次安装执行 1-3,开发打包部署执行4-5
## 1 安装开发工具
### 1.0 安装jdk8, elcipse oxygen, svn 官网下载64位版本
jdk-8u121-windows-x64
eclipse-jee-oxygen-3-win32-x86_64
TortoiseSVN-1.9.7.27907-x64
### 1.1 配置eclipse运行内存
在eclipse.ini中添加下面几个参数
-Xms512m
-Xmx1024m
### 1.2 从eclipse marketplace 下载版本控制插件工具svn
eclipse -> help -> Eclipse marketplace,搜索svn,安装subclipse4.2.3
#### 1.2.1 设置eclipse svn 忽略的文件规则 */logs/* */target/* */node_modules/*
Window -> Preferences -> Team -> Ignored Resource -> Add pattern -> */logs/*
Window -> Preferences -> Team -> Ignored Resource -> Add pattern -> */target/*
Window -> Preferences -> Team -> Ignored Resource -> Add pattern -> */node_modules/*
### 1.3 设置eclipse工程编码为utf-8
Window -> Preferences -> General -> Content Types -> java Archive / java class path / Text -> utf-8
Window -> Preferences -> General -> Workspace -> Text file encoding / UTF-8
### 1.4 设置eclipse jdk
Window -> Preferences -> Java -> Installed JREs -> 选择一条 -> Edit -> C:\Program Files\Java\jdk1.8.0_121(假设jdk安装目录,注意不是jre目录)
### 1.5 设置eclipse 检查项,提升编译速度
Window -> Preferences -> Validation -> 找到build列 -> 只保留 Classpath Dependance Validator 选中状态
## 2 下载代码生成器mdp-dev
### 2.0 从svn下载mdp-dev工程,mdp自研发的开发工具
svn 地址为 http://203.195.131.73:8085/svn/mdp/trunk/mdp-dev
### 2.1 使用mdp-dev生成crud代码(开发业务功能时使用,先设计表结构,再生成代码)
使用/mdp-dev/src/test/java/com/qqkj/mdp/dev/TestCodegenService.java 进行代码生成
## 3 maven 设置
### 3.0 设置maven私服 用户密码
将/mdp-dev/settings.xml拷贝到 C:\Users\Administrator\.m2目录下
### 3.1 安装本地jar包到私服(如果有本地jar包,目前有orcale的驱动包已经安装)
私服登录地址 http://203.195.131.73:8081/nexus 用户名、密码 admin/admin123
## 4 应用项目开发
### 4.0 从svn下载应用工程项目
svn 地址为 http://203.195.131.73:8085/svn/应用产品对应目录
### 4.1 从mven私服下载依赖jar包
在 Eclipse 工程目录鼠标右键 -> Maven -> Update Project
### 4.2 运行工程项目
在src/main/java 中找到 ***Application。java -> 鼠标右键 -> Run as -> Java Application
或者
在src/test/java 中找到 ***Application。java -> 鼠标右键 -> Run as -> Java Application
## 5 打包部署
### 5.0 工程打jar包
在 Eclipse 工程目录鼠标右键 -> Run as -> Maven Install
### 5.1 将打包好的jar包上传maven私服
在 Eclipse 工程目录鼠标右键 -> Run as -> Maven Buil -> deploy
``` bash
# install dependencies
cnpm install
# serve with hot reload at localhost:8081
cnpm run dev
# build for production with minification
cnpm run build
```
` 其它一些常用命令 `
# 清除缓存
npm cache clean --force
# npm国内代理镜像服务器 镜像使用方法(三种办法任意一种都能解决问题,建议使用第三种,将配置写死,下次用的时候配置还在):
npm config set registry https://registry.npm.taobao.org
npm info underscore (如果上面配置正确这个命令会有字符串response)
# Browser support
Modern browsers and IE 10+.
# License
[MIT](http://opensource.org/licenses/MIT)

168
README.zh-CN.md

@ -0,0 +1,168 @@
<p align="center">
<img width="320" src="https://wpimg.wallstcn.com/ecc53a42-d79b-42e2-8852-5126b810a4c8.svg">
</p>
<p align="center">
<a href="https://github.com/vuejs/vue">
<img src="https://img.shields.io/badge/vue-2.5.10-brightgreen.svg" alt="vue">
</a>
<a href="https://github.com/ElemeFE/element">
<img src="https://img.shields.io/badge/element--ui-2.3.0-brightgreen.svg" alt="element-ui">
</a>
<a href="https://travis-ci.org/PanJiaChen/vue-element-admin" rel="nofollow">
<img src="https://travis-ci.org/PanJiaChen/vue-element-admin.svg?branch=master" alt="Build Status">
</a>
<a href="https://github.com/PanJiaChen/vue-element-admin/blob/master/LICENSE">
<img src="https://img.shields.io/github/license/mashape/apistatus.svg" alt="license">
</a>
<a href="https://github.com/PanJiaChen/vue-element-admin/releases">
<img src="https://img.shields.io/github/release/PanJiaChen/vue-element-admin.svg" alt="GitHub release">
</a>
</p>
简体中文 | [English](./README.md)
## 简介
`vue-element-admin` 是一个后台集成解决方案,它基于 [Vue.js](https://github.com/vuejs/vue) 和 [element](https://github.com/ElemeFE/element)。它使用了最新的前端技术栈,内置了i18国际化解决方案,动态路由,权限验证等很多功能特性,相信不管你的需求是什么,本项目都能帮助到你。
- [在线访问](http://panjiachen.github.io/vue-element-admin)
- [使用文档](https://panjiachen.github.io/vue-element-admin-site/#/zh-cn/)
- [Gitter讨论组](https://gitter.im/vue-element-admin/discuss)
- [Wiki](https://github.com/PanJiaChen/vue-element-admin/wiki)
- [Donate](https://panjiachen.github.io/vue-element-admin-site/#/zh-cn/donate)
**本项目的定位是后台集成方案,不适合当基础模板来开发。**
- 模板建议使用: [vueAdmin-template](https://github.com/PanJiaChen/vueAdmin-template)  
- 桌面端: [electron-vue-admin](https://github.com/PanJiaChen/electron-vue-admin)
**注意:该项目使用 element-ui@2.3.0+ 版本,所以最低兼容 vue@2.5.0+**
## 前序准备
你的本地环境需要安装 [node](http://nodejs.org/) 和 [git](https://git-scm.com/)。我们的技术栈基于 [ES2015+](http://es6.ruanyifeng.com/)、[vue](https://cn.vuejs.org/index.html)、[vuex](https://vuex.vuejs.org/zh-cn/)、[vue-router](https://router.vuejs.org/zh-cn/) and [element-ui](https://github.com/ElemeFE/element),所有的请求数据都使用[Mock.js](https://github.com/nuysoft/Mock)模拟,提前了解和学习这些知识会对使用本项目有很大的帮助。
同时配套一个系列的教程文章,如何从零构建后一个完整的后台项目,建议大家先看完这些文章再来实践本项目
- [手摸手,带你用 vue 撸后台 系列一(基础篇)](https://juejin.im/post/59097cd7a22b9d0065fb61d2)
- [手摸手,带你用 vue 撸后台 系列二(登录权限篇)](https://juejin.im/post/591aa14f570c35006961acac)
- [手摸手,带你用 vue 撸后台 系列三 (实战篇)](https://juejin.im/post/593121aa0ce4630057f70d35)
- [手摸手,带你用 vue 撸后台 系列四(vueAdmin 一个极简的后台基础模板)](https://juejin.im/post/595b4d776fb9a06bbe7dba56)
- [手摸手,带你封装一个 vue component](https://segmentfault.com/a/1190000009090836)
- [手摸手,带你优雅的使用 icon](https://juejin.im/post/59bb864b5188257e7a427c09)
或者加入该群主 **[圈子](https://jianshiapp.com/circles/1209)** 楼主会经常分享一些技术相关的东西
**如有问题请先看上述使用文档和文章,若不能满足,欢迎 issue 和 pr**
**本项目并不是一个脚手架,更倾向于是一个集成解决方案**
**该项目不支持低版本浏览器(如ie),有需求请自行添加polyfill [详情](https://github.com/PanJiaChen/vue-element-admin/wiki#babel-polyfill)**
<p align="center">
<img width="900" src="https://wpimg.wallstcn.com/a5894c1b-f6af-456e-82df-1151da0839bf.png">
</p>
## 功能
```
- 登录/注销
- 权限验证
- 多环境发布
- 动态侧边栏(支持多级路由)
- 动态面包屑
- 国际化多语言
- 多种动态换肤
- 快捷导航(标签页)
- 富文本编辑器
- Markdown编辑器
- JSON编辑器
- Screenfull全屏
- 列表拖拽
- Svg Sprite 图标
- Dashboard
- 本地mock数据
- Echarts 图表
- Clipboard(剪贴复制)
- 401/404错误页面
- 错误日志
- 导出excel
- 导出zip
- 前端可视化excel
- 树形table
- Table example
- 动态table example
- 拖拽table example
- 内联编辑table example
- Form example
- 二步登录
- SplitPane
- 拖拽 Dialog
- Dropzone
- Sticky
- CountTo
- Markdown2html
```
## 开发
```bash
# 克隆项目
git clone https://github.com/PanJiaChen/vue-element-admin.git
# 安装依赖
npm install
   
# 建议不要用cnpm安装 会有各种诡异的bug 可以通过如下操作解决 npm 下载速度慢的问题
npm install --registry=https://registry.npm.taobao.org
# 启动服务
npm run dev
```
浏览器访问 http://localhost:9527
## 发布
```bash
# 构建测试环境
npm run build:sit
# 构建生成环境
npm run build:prod
```
## 其它
```bash
# --report to build with bundle size analytics
npm run build:prod --report
# --preview to start a server in local to preview
npm run build:prod --preview
# lint code
npm run lint
# auto fix
npm run lint -- --fix
```
更多信息请参考 [使用文档](https://panjiachen.github.io/vue-element-admin-site/#/zh-cn/deploy)
## Changelog
Detailed changes for each release are documented in the [release notes](https://github.com/PanJiaChen/vue-element-admin/releases).
## Online Demo
[在线 Demo](http://panjiachen.github.io/vue-element-admin)
## Donate
如果你觉得这个项目帮助到了你,你可以帮作者买一杯果汁表示鼓励 :tropical_drink:
![donate](https://panjiachen.github.io/donate/donation.png)
[Paypal Me](https://www.paypal.me/panfree23)
## License
[MIT](https://github.com/PanJiaChen/vue-element-admin/blob/master/LICENSE)
Copyright (c) 2017-present PanJiaChen

48
build/build.js

@ -0,0 +1,48 @@
'use strict'
require('./check-versions')()
const ora = require('ora')
const rm = require('rimraf')
const path = require('path')
const chalk = require('chalk')
const webpack = require('webpack')
const config = require('../config')
const webpackConfig = require('./webpack.prod.conf')
const server = require('pushstate-server')
var spinner = ora('building for '+ process.env.env_config+ ' environment...' )
spinner.start()
rm(path.join(config.build.assetsRoot, config.build.assetsSubDirectory), err => {
if (err) throw err
webpack(webpackConfig, (err, stats) => {
spinner.stop()
if (err) throw err
process.stdout.write(stats.toString({
colors: true,
modules: false,
children: false,
chunks: false,
chunkModules: false
}) + '\n\n')
if (stats.hasErrors()) {
console.log(chalk.red(' Build failed with errors.\n'))
process.exit(1)
}
console.log(chalk.cyan(' Build complete.\n'))
console.log(chalk.yellow(
' Tip: built files are meant to be served over an HTTP server.\n' +
' Opening index.html over file:// won\'t work.\n'
))
if(process.env.npm_config_preview){
server.start({
port: 9526,
directory: './dist',
file: '/index.html'
});
console.log('> Listening at ' + 'http://localhost:9526' + '\n')
}
})
})

54
build/check-versions.js

@ -0,0 +1,54 @@
'use strict'
const chalk = require('chalk')
const semver = require('semver')
const packageConfig = require('../package.json')
const shell = require('shelljs')
function exec (cmd) {
return require('child_process').execSync(cmd).toString().trim()
}
const versionRequirements = [
{
name: 'node',
currentVersion: semver.clean(process.version),
versionRequirement: packageConfig.engines.node
}
]
if (shell.which('npm')) {
versionRequirements.push({
name: 'npm',
currentVersion: exec('npm --version'),
versionRequirement: packageConfig.engines.npm
})
}
module.exports = function () {
const warnings = []
for (let i = 0; i < versionRequirements.length; i++) {
const mod = versionRequirements[i]
if (!semver.satisfies(mod.currentVersion, mod.versionRequirement)) {
warnings.push(mod.name + ': ' +
chalk.red(mod.currentVersion) + ' should be ' +
chalk.green(mod.versionRequirement)
)
}
}
if (warnings.length) {
console.log('')
console.log(chalk.yellow('To use this template, you must update following to modules:'))
console.log()
for (let i = 0; i < warnings.length; i++) {
const warning = warnings[i]
console.log(' ' + warning)
}
console.log()
process.exit(1)
}
}

38
build/copy.js

@ -0,0 +1,38 @@
var fs = require('fs');
var path = require('path')
function copy(src, dst) {
fs.writeFileSync(dst, fs.readFileSync(src));
}
function travel(dir, callback) {
if (fs.statSync(dir).isDirectory()) {
callback(dir,true);
}
fs.readdirSync(dir).forEach(function (file) {
var pathname = path.join(dir, file);
if (fs.statSync(pathname).isDirectory()) {
travel(pathname, callback);
} else {
callback(pathname,false);
}
});
}
function copy(src, dest){
travel(src,function(file,isDir){
var filename=dest+file.substring(src.length);
if (isDir===true && !fs.existsSync(filename)) {
fs.mkdirSync(filename);
}
if(isDir===false){
fs.writeFileSync(filename, fs.readFileSync(file));
}
});
};
copy('../mdp-sys-web/src/api/mdp/','src/api/mdp/');
copy('../mdp-sys-web/src/views/mdp/','src/views/mdp/');
copy('../ac-core-web/src/api/ac/','src/api/ac/');
copy('../ac-core-web/src/views/ac/','src/views/ac/');
copy('../mk-mng-web/src/api/mk/','src/api/mk/');
copy('../mk-mng-web/src/views/mk/','src/views/mk/');

9
build/dev-client.js

@ -0,0 +1,9 @@
/* eslint-disable */
require('eventsource-polyfill')
var hotClient = require('webpack-hot-middleware/client?noInfo=true&reload=true')
hotClient.subscribe(function (event) {
if (event.action === 'reload') {
window.location.reload()
}
})

89
build/dev-server.js

@ -0,0 +1,89 @@
require('./check-versions')()
var config = require('../config')
if (!process.env.NODE_ENV) {
process.env.NODE_ENV = JSON.parse(config.dev.env.NODE_ENV)
}
var opn = require('opn')
var path = require('path')
var express = require('express')
var webpack = require('webpack')
var proxyMiddleware = require('http-proxy-middleware')
var webpackConfig = require('./webpack.dev.conf')
// default port where dev server listens for incoming traffic
var port = process.env.PORT || config.dev.port
// automatically open browser, if not set will be false
var autoOpenBrowser = !!config.dev.autoOpenBrowser
// Define HTTP proxies to your custom API backend
// https://github.com/chimurai/http-proxy-middleware
var proxyTable = config.dev.proxyTable
var app = express()
var compiler = webpack(webpackConfig)
var devMiddleware = require('webpack-dev-middleware')(compiler, {
publicPath: webpackConfig.output.publicPath,
quiet: true
})
var hotMiddleware = require('webpack-hot-middleware')(compiler, {
log: () => {}
})
// force page reload when html-webpack-plugin template changes
compiler.plugin('compilation', function (compilation) {
compilation.plugin('html-webpack-plugin-after-emit', function (data, cb) {
hotMiddleware.publish({ action: 'reload' })
cb()
})
})
// proxy api requests
Object.keys(proxyTable).forEach(function (context) {
var options = proxyTable[context]
if (typeof options === 'string') {
options = { target: options }
}
app.use(proxyMiddleware(options.filter || context, options))
})
// handle fallback for HTML5 history API
app.use(require('connect-history-api-fallback')())
// serve webpack bundle output
app.use(devMiddleware)
// enable hot-reload and state-preserving
// compilation error display
app.use(hotMiddleware)
// serve pure static assets
var staticPath = path.posix.join(config.dev.assetsPublicPath, config.dev.assetsSubDirectory)
app.use(staticPath, express.static('./static'))
var uri = 'http://localhost:' + port
var _resolve
var readyPromise = new Promise(resolve => {
_resolve = resolve
})
console.log('> Starting dev server...')
devMiddleware.waitUntilValid(() => {
console.log('> Listening at ' + uri + '\n')
// when env is testing, don't need open it
if (autoOpenBrowser && process.env.NODE_ENV !== 'testing') {
opn(uri)
}
_resolve()
})
var server = app.listen(port)
module.exports = {
ready: readyPromise,
close: () => {
server.close()
}
}

BIN
build/logo.png

After

Width: 200  |  Height: 200  |  Size: 6.7 KiB

102
build/utils.js

@ -0,0 +1,102 @@
'use strict'
const path = require('path')
const config = require('../config')
const ExtractTextPlugin = require('extract-text-webpack-plugin')
const packageConfig = require('../package.json')
exports.assetsPath = function (_path) {
const assetsSubDirectory = process.env.NODE_ENV === 'production'
? config.build.assetsSubDirectory
: config.dev.assetsSubDirectory
return path.posix.join(assetsSubDirectory, _path)
}
exports.cssLoaders = function (options) {
options = options || {}
const cssLoader = {
loader: 'css-loader',
options: {
sourceMap: options.sourceMap
}
}
const postcssLoader = {
loader: 'postcss-loader',
options: {
sourceMap: options.sourceMap
}
}
// generate loader string to be used with extract text plugin
function generateLoaders (loader, loaderOptions) {
const loaders = options.usePostCSS ? [cssLoader, postcssLoader] : [cssLoader]
if (loader) {
loaders.push({
loader: loader + '-loader',
options: Object.assign({}, loaderOptions, {
sourceMap: options.sourceMap
})
})
}
// Extract CSS when that option is specified
// (which is the case during production build)
if (options.extract) {
return ExtractTextPlugin.extract({
use: loaders,
fallback: 'vue-style-loader',
publicPath:'../'
})
} else {
return ['vue-style-loader'].concat(loaders)
}
}
// https://vue-loader.vuejs.org/en/configurations/extract-css.html
return {
css: generateLoaders(),
postcss: generateLoaders(),
less: generateLoaders('less'),
sass: generateLoaders('sass', { indentedSyntax: true }),
scss: generateLoaders('sass'),
stylus: generateLoaders('stylus'),
styl: generateLoaders('stylus')
}
}
// Generate loaders for standalone style files (outside of .vue)
exports.styleLoaders = function (options) {
const output = []
const loaders = exports.cssLoaders(options)
for (const extension in loaders) {
const loader = loaders[extension]
output.push({
test: new RegExp('\\.' + extension + '$'),
use: loader
})
}
return output
}
exports.createNotifierCallback = () => {
const notifier = require('node-notifier')
return (severity, errors) => {
if (severity !== 'error') return
const error = errors[0]
const filename = error.file && error.file.split('!').pop()
notifier.notify({
title: packageConfig.name,
message: severity + ': ' + error.name,
subtitle: filename || '',
icon: path.join(__dirname, 'logo.png')
})
}
}

22
build/vue-loader.conf.js

@ -0,0 +1,22 @@
'use strict'
const utils = require('./utils')
const config = require('../config')
const isProduction = process.env.NODE_ENV === 'production'
const sourceMapEnabled = isProduction
? config.build.productionSourceMap
: config.dev.cssSourceMap
module.exports = {
loaders: utils.cssLoaders({
sourceMap: sourceMapEnabled,
extract: isProduction
}),
cssSourceMap: sourceMapEnabled,
cacheBusting: config.dev.cacheBusting,
transformToRequire: {
video: ['src', 'poster'],
source: 'src',
img: 'src',
image: 'xlink:href'
}
}

102
build/webpack.base.conf.js

@ -0,0 +1,102 @@
'use strict'
const path = require('path')
const utils = require('./utils')
const config = require('../config')
const vueLoaderConfig = require('./vue-loader.conf')
function resolve (dir) {
return path.join(__dirname, '..', dir)
}
const createLintingRule = () => ({
test: /\.(js|vue)$/,
loader: 'eslint-loader',
enforce: 'pre',
include: [resolve('src'), resolve('test')],
options: {
formatter: require('eslint-friendly-formatter'),
emitWarning: !config.dev.showEslintErrorsInOverlay
}
})
module.exports = {
context: path.resolve(__dirname, '../'),
entry: {
app: './src/main.js'
},
output: {
path: config.build.assetsRoot,
filename: '[name].js',
publicPath: process.env.NODE_ENV === 'production'
? config.build.assetsPublicPath
: config.dev.assetsPublicPath
},
resolve: {
extensions: ['.js', '.vue', '.json'],
alias: {
'vue$': 'vue/dist/vue.esm.js',
'@': resolve('src'),
}
},
module: {
rules: [
...(config.dev.useEslint ? [createLintingRule()] : []),
{
test: /\.vue$/,
loader: 'vue-loader',
options: vueLoaderConfig
},
{
test: /\.js$/,
loader: 'babel-loader?cacheDirectory',
exclude: /node_modules(?!\/quill-image-drop-module|quill-image-resize-module)/,
include: [resolve('src'), resolve('test'), resolve('node_modules/webpack-dev-server/client')]
},
{
test: /\.svg$/,
loader: 'svg-sprite-loader',
include: [resolve('src/icons')],
options: {
symbolId: 'icon-[name]'
}
},
{
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
loader: 'url-loader',
exclude: [resolve('src/icons')],
options: {
limit: 10000,
name: utils.assetsPath('img/[name].[hash:7].[ext]')
}
},
{
test: /\.(mp4|webm|ogg|mp3|wav|flac|aac)(\?.*)?$/,
loader: 'url-loader',
options: {
limit: 10000,
name: utils.assetsPath('media/[name].[hash:7].[ext]')
}
},
{
test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
loader: 'url-loader',
options: {
limit: 10000,
name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
}
}
]
},
node: {
// prevent webpack from injecting useless setImmediate polyfill because Vue
// source contains it (although only uses it if it's native).
setImmediate: false,
// prevent webpack from injecting mocks to Node native modules
// that does not make sense for the client
dgram: 'empty',
fs: 'empty',
net: 'empty',
tls: 'empty',
child_process: 'empty'
}
}

91
build/webpack.dev.conf.js

@ -0,0 +1,91 @@
'use strict'
const path = require('path')
const utils = require('./utils')
const webpack = require('webpack')
const config = require('../config')
const merge = require('webpack-merge')
const baseWebpackConfig = require('./webpack.base.conf')
const HtmlWebpackPlugin = require('html-webpack-plugin')
const FriendlyErrorsPlugin = require('friendly-errors-webpack-plugin')
const portfinder = require('portfinder')
function resolve (dir) {
return path.join(__dirname, '..', dir)
}
const HOST = process.env.HOST
const PORT = process.env.PORT && Number(process.env.PORT)
const devWebpackConfig = merge(baseWebpackConfig, {
module: {
rules: utils.styleLoaders({ sourceMap: config.dev.cssSourceMap, usePostCSS: true })
},
// cheap-module-eval-source-map is faster for development
devtool: config.dev.devtool,
// these devServer options should be customized in /config/index.js
devServer: {
clientLogLevel: 'warning',
historyApiFallback: true,
hot: true,
compress: true,
host: HOST || config.dev.host,
port: PORT || config.dev.port,
open: config.dev.autoOpenBrowser,
overlay: config.dev.errorOverlay
? { warnings: false, errors: true }
: false,
publicPath: config.dev.assetsPublicPath,
proxy: config.dev.proxyTable,
quiet: true, // necessary for FriendlyErrorsPlugin
watchOptions: {
poll: config.dev.poll,
}
},
plugins: [
new webpack.DefinePlugin({
'process.env': require('../config/dev.env')
}),
new webpack.HotModuleReplacementPlugin(),
new webpack.NamedModulesPlugin(), // HMR shows correct file names in console on update.
new webpack.NoEmitOnErrorsPlugin(),
// https://github.com/ampedandwired/html-webpack-plugin
new HtmlWebpackPlugin({
filename: 'index.html',
template: 'index.html',
inject: true,
favicon: resolve('favicon.ico'),
title: 'vue-element-admin',
path: config.dev.assetsPublicPath + config.dev.assetsSubDirectory
}),
new webpack.ProvidePlugin({
'window.Quill': 'quill'
})
]
})
module.exports = new Promise((resolve, reject) => {
portfinder.basePort = process.env.PORT || config.dev.port
portfinder.getPort((err, port) => {
if (err) {
reject(err)
} else {
// publish the new Port, necessary for e2e tests
process.env.PORT = port
// add port to devServer config
devWebpackConfig.devServer.port = port
// Add FriendlyErrorsPlugin
devWebpackConfig.plugins.push(new FriendlyErrorsPlugin({
compilationSuccessInfo: {
messages: [`Your application is running here: http://${devWebpackConfig.devServer.host}:${port}`],
},
onErrors: config.dev.notifyOnErrors
? utils.createNotifierCallback()
: undefined
}))
resolve(devWebpackConfig)
}
})
})

180
build/webpack.prod.conf.js

@ -0,0 +1,180 @@
'use strict'
const path = require('path')
const utils = require('./utils')
const webpack = require('webpack')
const config = require('../config')
const merge = require('webpack-merge')
const baseWebpackConfig = require('./webpack.base.conf')
const CopyWebpackPlugin = require('copy-webpack-plugin')
const HtmlWebpackPlugin = require('html-webpack-plugin')
const ExtractTextPlugin = require('extract-text-webpack-plugin')
const OptimizeCSSPlugin = require('optimize-css-assets-webpack-plugin')
const UglifyJsPlugin = require('uglifyjs-webpack-plugin')
function resolve (dir) {
return path.join(__dirname, '..', dir)
}
const env = require('../config/'+process.env.env_config+'.env')
const webpackConfig = merge(baseWebpackConfig, {
module: {
rules: utils.styleLoaders({
sourceMap: config.build.productionSourceMap,
extract: true,
usePostCSS: true
})
},
devtool: config.build.productionSourceMap ? config.build.devtool : false,
output: {
path: config.build.assetsRoot,
filename: utils.assetsPath('js/[name].[chunkhash].js'),
chunkFilename: utils.assetsPath('js/[id].[chunkhash].js')
},
plugins: [
// http://vuejs.github.io/vue-loader/en/workflow/production.html
new webpack.DefinePlugin({
'process.env': env
}),
new UglifyJsPlugin({
uglifyOptions: {
compress: {
warnings: false
}
},
sourceMap: config.build.productionSourceMap,
parallel: true
}),
// extract css into its own file
new ExtractTextPlugin({
filename: utils.assetsPath('css/[name].[contenthash].css'),
// Setting the following option to `false` will not extract CSS from codesplit chunks.
// Their CSS will instead be inserted dynamically with style-loader when the codesplit chunk has been loaded by webpack.
// increasing file size: https://github.com/vuejs-templates/webpack/issues/1110
allChunks: false,
}),
// Compress extracted CSS. We are using this plugin so that possible
// duplicated CSS from different components can be deduped.
new OptimizeCSSPlugin({
cssProcessorOptions: config.build.productionSourceMap
? { safe: true, map: { inline: false } }
: { safe: true }
}),
// generate dist index.html with correct asset hash for caching.
// you can customize output by editing /index.html
// see https://github.com/ampedandwired/html-webpack-plugin
new HtmlWebpackPlugin({
filename: config.build.index,
template: 'index.html',
inject: true,
favicon: resolve('favicon.ico'),
title: 'vue-element-admin',
path: config.build.assetsPublicPath + config.build.assetsSubDirectory,
minify: {
removeComments: true,
collapseWhitespace: true,
removeAttributeQuotes: true
// more options:
// https://github.com/kangax/html-minifier#options-quick-reference
},
// necessary to consistently work with multiple chunks via CommonsChunkPlugin
chunksSortMode: 'dependency'
}),
// keep module.id stable when vender modules does not change
new webpack.HashedModuleIdsPlugin(),
new webpack.ProvidePlugin({
'window.Quill': 'quill'
}),
// enable scope hoisting
new webpack.optimize.ModuleConcatenationPlugin(),
// split vendor js into its own file
new webpack.optimize.CommonsChunkPlugin({
name: 'vendor',
minChunks (module) {
// any required modules inside node_modules are extracted to vendor
return (
module.resource &&
/\.js$/.test(module.resource) &&
module.resource.indexOf(
path.join(__dirname, '../node_modules')
) === 0
)
}
}),
// extract webpack runtime and module manifest to its own file in order to
// prevent vendor hash from being updated whenever app bundle is updated
new webpack.optimize.CommonsChunkPlugin({
name: 'manifest',
minChunks: Infinity
}),
// This instance extracts shared chunks from code splitted chunks and bundles them
// in a separate chunk, similar to the vendor chunk
// see: https://webpack.js.org/plugins/commons-chunk-plugin/#extra-async-commons-chunk
new webpack.optimize.CommonsChunkPlugin({
name: 'app',
async: 'vendor-async',
children: true,
minChunks: 3
}),
// split echarts into its own file
new webpack.optimize.CommonsChunkPlugin({
async: 'echarts',
minChunks(module) {
var context = module.context;
return context && (context.indexOf('echarts') >= 0 || context.indexOf('zrender') >= 0);
}
}),
// split xlsx into its own file
new webpack.optimize.CommonsChunkPlugin({
async: 'xlsx',
minChunks(module) {
var context = module.context;
return context && (context.indexOf('xlsx') >= 0);
}
}),
// split codemirror into its own file
new webpack.optimize.CommonsChunkPlugin({
async: 'codemirror',
minChunks(module) {
var context = module.context;
return context && (context.indexOf('codemirror') >= 0);
}
}),
// copy custom static assets
new CopyWebpackPlugin([
{
from: path.resolve(__dirname, '../static'),
to: config.build.assetsSubDirectory,
ignore: ['.*']
}
])
]
})
if (config.build.productionGzip) {
const CompressionWebpackPlugin = require('compression-webpack-plugin')
webpackConfig.plugins.push(
new CompressionWebpackPlugin({
asset: '[path].gz[query]',
algorithm: 'gzip',
test: new RegExp(
'\\.(' +
config.build.productionGzipExtensions.join('|') +
')$'
),
threshold: 10240,
minRatio: 0.8
})
)
}
if (config.build.bundleAnalyzerReport) {
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin
webpackConfig.plugins.push(new BundleAnalyzerPlugin())
}
module.exports = webpackConfig

5
config/dev.env.js

@ -0,0 +1,5 @@
module.exports = {
NODE_ENV: '"development"',
ENV_CONFIG: '"dev"',
BASE_API: '"api"'
}

98
config/index.js

@ -0,0 +1,98 @@
'use strict'
// Template version: 1.2.6
// see http://vuejs-templates.github.io/webpack for documentation.
const path = require('path')
module.exports = {
dev: {
// Paths
assetsSubDirectory: 'static',
assetsPublicPath: '/',
proxyTable: {
'/workflow': {
target: 'https://www.qingqinkj.com',
changeOrigin: true,
pathRewrite: {
'^/workflow': '/api/workflow'
}
},
'/api': {
target: 'https://www.qingqinkj.com',
changeOrigin: true,
pathRewrite: {
'^/api': '/api'
}
}
},
// Various Dev Server settings
host: 'localhost', // can be overwritten by process.env.HOST
port: 8089, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
autoOpenBrowser: true,
errorOverlay: true,
notifyOnErrors: false,
poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions-
// Use Eslint Loader?
// If true, your code will be linted during bundling and
// linting errors and warnings will be shown in the console.
useEslint: false,
// If true, eslint errors and warnings will also be shown in the error overlay
// in the browser.
showEslintErrorsInOverlay: false,
/**
* Source Maps
*/
// https://webpack.js.org/configuration/devtool/#development
devtool: '#cheap-source-map',
// If you have problems debugging vue-files in devtools,
// set this to false - it *may* help
// https://vue-loader.vuejs.org/en/options.html#cachebusting
cacheBusting: true,
// CSS Sourcemaps off by default because relative paths are "buggy"
// with this option, according to the CSS-Loader README
// (https://github.com/webpack/css-loader#sourcemaps)
// In our experience, they generally work as expected,
// just be aware of this issue when enabling this option.
cssSourceMap: false,
},
build: {
// Template for index.html
index: path.resolve(__dirname, '../dist/index.html'),
// Paths
assetsRoot: path.resolve(__dirname, '../dist'),
assetsSubDirectory: '',
// you can set by youself according to actual condition
assetsPublicPath: './',
/**
* Source Maps
*/
productionSourceMap: false,
// https://webpack.js.org/configuration/devtool/#production
devtool: '#source-map',
// Gzip off by default as many popular static hosts such as
// Surge or Netlify already gzip all static assets for you.
// Before setting to `true`, make sure to:
// npm install --save-dev compression-webpack-plugin
productionGzip: false,
productionGzipExtensions: ['js', 'css'],
// Run the build command with an extra argument to
// View the bundle analyzer report after build finishes:
// `npm run build --report`
// Set to `true` or `false` to always turn it on or off
bundleAnalyzerReport: process.env.npm_config_report
}
}

5
config/prod.env.js

@ -0,0 +1,5 @@
module.exports = {
NODE_ENV: '"production"',
ENV_CONFIG: '"prod"',
BASE_API: '"https://www.qingqinkj.com/api"'
}

5
config/sit.env.js

@ -0,0 +1,5 @@
module.exports = {
NODE_ENV: '"production"',
ENV_CONFIG: '"sit"',
BASE_API: '"https://api-sit"'
}

34
copy/copy.js

@ -0,0 +1,34 @@
var fs = require('fs');
var path = require('path')
function copy(src, dst) {
fs.writeFileSync(dst, fs.readFileSync(src));
}
function travel(dir, callback) {
if (fs.statSync(dir).isDirectory()) {
callback(dir,true);
}
fs.readdirSync(dir).forEach(function (file) {
var pathname = path.join(dir, file);
if (fs.statSync(pathname).isDirectory()) {
travel(pathname, callback);
} else {
callback(pathname,false);
}
});
}
function copy(src, dest){
travel(src,function(file,isDir){
var filename=dest+file.substring(src.length);
if (isDir===true && !fs.existsSync(filename)) {
fs.mkdirSync(filename);
}
if(isDir===false){
fs.writeFileSync(filename, fs.readFileSync(file));
}
});
};
//copy('../mdp-sys-web/src/api/mdp/','src/api/mdp/');
//copy('../mdp-sys-web/src/views/mdp/','src/views/mdp/');

50
copy/copyDistToStatic.js

@ -0,0 +1,50 @@
var fs = require('fs');
var path = require('path')
function copy(src, dst) {
fs.writeFileSync(dst, fs.readFileSync(src));
}
function travel(dir, callback) {
if (fs.statSync(dir).isDirectory()) {
callback(dir,true);
}
fs.readdirSync(dir).forEach(function (file) {
var pathname = path.join(dir, file);
if (fs.statSync(pathname).isDirectory()) {
travel(pathname, callback);
} else {
callback(pathname,false);
}
});
}
function copy(src, dest){
travel(src,function(file,isDir){
var filename=dest+file.substring(src.length);
if (isDir===true && !fs.existsSync(filename)) {
fs.mkdirSync(filename);
}
if(isDir===false){
fs.writeFileSync(filename, fs.readFileSync(file));
}
});
};
function delDir(path) {
if( fs.existsSync(path) ) {
fs.readdirSync(path).forEach(function(file) {
var curPath = path + "/" + file;
if(fs.statSync(curPath).isDirectory()) { // recurse
delDir(curPath);
} else { // delete file
fs.unlinkSync(curPath);
}
});
fs.rmdirSync(path);
}
};
function delCopy(src,dest){
delDir(dest);
copy(src,dest);
}
delCopy('dist','../mdp-workflow-starter/src/main/resources/static');

BIN
favicon.ico

After

Width: 2123  |  Height: 2123  |  Size: 44 KiB

20
index.html

@ -0,0 +1,20 @@
<!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">
<title>MDP-多功能快速开发平台</title>
<link rel="shortcut icon" href="assets/logo32x32.ico" type="image/x-icon"/>
</head>
<body>
<div id="app">
</div>
<!-- built files will be auto injected -->
</body>
</html>

117
package.json

@ -0,0 +1,117 @@
{
"name": "form-ui-web",
"version": "1.0.0",
"description": "form-ui-web",
"author": "chenyc <cyc58469@163.com>",
"license": "MIT",
"private": true,
"scripts": {
"dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
"build:prod": "cross-env NODE_ENV=production env_config=prod node build/build.js",
"build:sit": "cross-env NODE_ENV=production env_config=sit node build/build.js",
"build:m1prod": "cross-env NODE_ENV=production env_config=m1prod node build/build.js",
"lint": "eslint --ext .js,.vue src",
"test": "npm run lint",
"copy": "node copy/copy.js",
"copyDistToStatic": "node copy/copyDistToStatic.js"
},
"dependencies": {
"axios": "0.17.1",
"clipboard": "1.7.1",
"codemirror": "5.32.0",
"dropzone": "5.2.0",
"echarts": "3.8.5",
"element-ui": "^2.13.0",
"file-saver": "2.0.1",
"font-awesome": "4.7.0",
"highlight.js": "^9.12.0",
"html2canvas": "^1.0.0-alpha.9",
"js-cookie": "2.2.0",
"js-md5": "^0.7.3",
"jsonlint": "1.6.2",
"jszip": "3.2.1",
"mockjs": "1.0.1-beta3",
"moment": "^2.24.0",
"node-sass": "^4.13.1",
"normalize.css": "7.0.0",
"nprogress": "0.2.0",
"object-assign": "^4.1.1",
"quill-image-drop-module": "^1.0.3",
"quill-image-resize-module": "^3.0.0",
"screenfull": "3.3.2",
"showdown": "1.8.5",
"simplemde": "1.11.2",
"sortablejs": "1.7.0",
"vue": "2.6.10",
"vue-clipboard2": "^0.3.1",
"vue-count-to": "1.0.13",
"vue-cropper": "^0.2.9",
"vue-i18n": "7.3.2",
"vue-image-crop-upload": "^1.3.14",
"vue-multiselect": "2.0.8",
"vue-quill-editor": "^3.0.6",
"vue-router": "3.0.1",
"vue-splitpane": "1.0.2",
"vuedraggable": "2.15.0",
"vuex": "3.0.1",
"xlsx": "^0.14.1"
},
"devDependencies": {
"autoprefixer": "7.2.3",
"babel-core": "6.26.0",
"babel-eslint": "8.0.3",
"babel-helper-vue-jsx-merge-props": "2.0.3",
"babel-loader": "7.1.2",
"babel-plugin-syntax-jsx": "6.18.0",
"babel-plugin-transform-runtime": "6.23.0",
"babel-plugin-transform-vue-jsx": "3.5.0",
"babel-preset-env": "1.6.1",
"babel-preset-stage-2": "6.24.1",
"chalk": "2.3.0",
"copy-webpack-plugin": "4.3.0",
"cross-env": "5.1.1",
"css-loader": "0.28.7",
"eslint": "4.13.1",
"eslint-friendly-formatter": "3.0.0",
"eslint-loader": "1.9.0",
"eslint-plugin-html": "4.0.1",
"extract-text-webpack-plugin": "3.0.2",
"file-loader": "1.1.5",
"friendly-errors-webpack-plugin": "1.6.1",
"html-webpack-plugin": "2.30.1",
"node-notifier": "5.1.2",
"node-sass": "^4.5.0",
"optimize-css-assets-webpack-plugin": "3.2.0",
"ora": "1.3.0",
"portfinder": "1.0.13",
"postcss-import": "11.0.0",
"postcss-loader": "2.0.9",
"postcss-url": "7.3.0",
"pushstate-server": "3.0.1",
"quill-image-extend-module": "^1.1.2",
"rimraf": "2.6.2",
"sass-loader": "6.0.6",
"script-loader": "0.7.2",
"semver": "5.4.1",
"shelljs": "0.7.8",
"svg-sprite-loader": "3.5.2",
"uglifyjs-webpack-plugin": "1.1.3",
"url-loader": "0.6.2",
"vue-loader": "13.5.0",
"vue-style-loader": "3.0.3",
"vue-template-compiler": "2.6.10",
"webpack": "3.10.0",
"webpack-bundle-analyzer": "2.9.1",
"webpack-dev-server": "2.9.7",
"webpack-merge": "4.1.1"
},
"engines": {
"node": ">= 4.0.0",
"npm": ">= 3.0.0"
},
"browserslist": [
"> 1%",
"last 2 versions",
"not ie <= 8"
]
}

11
src/App.vue

@ -0,0 +1,11 @@
<template>
<div id="app">
<router-view></router-view>
</div>
</template>
<script>
export default{
name: 'App'
}
</script>

40
src/api/article.js

@ -0,0 +1,40 @@
import request from '@/utils/request'
export function fetchList(query) {
return request({
url: '/article/list',
method: 'get',
params: query
})
}
export function fetchArticle() {
return request({
url: '/article/detail',
method: 'get'
})
}
export function fetchPv(pv) {
return request({
url: '/article/pv',
method: 'get',
params: { pv }
})
}
export function createArticle(data) {
return request({
url: '/article/create',
method: 'post',
data
})
}
export function updateArticle(data) {
return request({
url: '/article/update',
method: 'post',
data
})
}

29
src/api/branch.js

@ -0,0 +1,29 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getSysBasePath();
/**
* 管理端机构表机构下面若干部门
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'机构编号 主键',branchName:'机构名称',enabled:'是否可用',industryCategory:'行业分类',cuserid:'创建人编号',cdate:'创建日期',cusername:'创建人姓名',phoneNo:'联系电话',emaill:'邮件'}
**/
//普通查询 条件之间and关系
export const listBranch = params => { return axios.get(`${base}/mdp/sys/branch/list`, { params: params }); };
//模糊查询管理端机构表(机构下面若干部门) 条件之间or关系
//export const listBranchKey = params => { return axios.get(`${base}/mdp/sys/branch/listKey`, { params: params }); };
//删除一条管理端机构表(机构下面若干部门) params={id:'机构编号 主键'}
export const delBranch = params => { return axios.post(`${base}/mdp/sys/branch/del`,params); };
//批量删除管理端机构表(机构下面若干部门) params=[{id:'机构编号 主键'}]
export const batchDelBranch = params => { return axios.post(`${base}/mdp/sys/branch/batchDel`, params); };
//修改一条管理端机构表(机构下面若干部门)记录
export const editBranch = params => { return axios.post(`${base}/mdp/sys/branch/edit`, params); };
//新增一条管理端机构表(机构下面若干部门)
export const addBranch = params => { return axios.post(`${base}/mdp/sys/branch/add`, params); };

283
src/api/common/code.js

@ -0,0 +1,283 @@
import axios from 'axios';
import config from '../../common/config.js';
let base = "/"+config.getContextName();
/***
* {
*
* }
*/
var cacheOptions={};
var cacheSeconds={};
var cacheOptionsBySecondCodeRows={};
var cacheCompanyDepts=null;
var cacheCompanyEmployees=null;
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listCode = params => { return axios.get(`${base}/sys/code/list`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
export const listCodeKey = params => {
return axios.get(`${base}/sys/code/listKey`, { params: params });
};
/**
* 查询下拉选项目 参数为数组型参数 selectOptions( { fieldNames:['sex','age','student'],code:'all' } ),code为数据分类
* 返回结果为
* res.data.data:{
* sex:[{codeName:,codeValue:1,ifdefault:'1'},{codeName:,codeValue:2,ifdefault:'0'}],
* age:[{codeName:1,codeValue:1,ifdefault:'1'},{codeName:2,codeValue:2,ifdefault:'0'},{codeName:3,codeValue:3,ifdefault:'0'}]
* }
*/
export const selectCacheOptions = params => {
let code=params.code;
let fieldNames=params.fieldNames;
if(!cacheOptions[code]){
return new Promise((resolve, reject) => {
axios.get(`${base}/sys/code/selectOptions`, { params:params }).then(res=>{
let options=res.data.data;
cacheOptions[code]=options;
resolve({
data: {data:options}
});
});
});
}else{
let codeOptions=cacheOptions[code];
var lostFieldNames=[];
var cacheHasOptions={};
fieldNames.forEach(item=>{
if(codeOptions[item]){
cacheHasOptions[item]=codeOptions[item];
}else{
lostFieldNames.push(item);
}
});
if(lostFieldNames.length>0){
return new Promise((resolve, reject) => {
axios.get(`${base}/sys/code/selectOptions`, { params:{code:code,fieldNames:lostFieldNames} }).then(res=>{
let options2=res.data.data;
lostFieldNames.forEach(item=>{
codeOptions[item]=options2[item];
cacheHasOptions[item]=options2[item];
cacheOptions[code]=codeOptions;
});
resolve( {
data: {data:cacheHasOptions}
});
});
});
}else{
return new Promise((resolve, reject) => {
resolve( {
data: {data:cacheHasOptions}
});
});
}
}
};
/**
* 查询下拉选项目 参数为数组型参数 selectOptionsBySecondCodeRows( {secondCodeRows:['secondCodeRow1','secondCodeRow2']} )
* 返回结果为
* res.data.data:{
* secondCodeRow1:[{codeName:,codeValue:1,ifdefault:'1'},{codeName:,codeValue:2,ifdefault:'0'}],
* secondCodeRow1:[{codeName:1,codeValue:1,ifdefault:'1'},{codeName:2,codeValue:2,ifdefault:'0'},{codeName:3,codeValue:3,ifdefault:'0'}]
* }
*/
export const selectOptionsBySecondCodeRows = params => {
let secondCodeRows=params.secondCodeRows;
var lostSecondCodeRows=[];
var cacheHasOptions={};
secondCodeRows.forEach(item=>{
if(cacheOptionsBySecondCodeRows[item]){
cacheHasOptions[item]=cacheOptionsBySecondCodeRows[item];
}else{
lostSecondCodeRows.push(item);
}
});
if(lostSecondCodeRows.length>0){
return new Promise((resolve, reject) => {
axios.get(`${base}/sys/code/selectOptionsBySecondCodeRows`, { params:{secondCodeRows:lostSecondCodeRows }}).then(res=>{
let options2=res.data.data;
lostSecondCodeRows.forEach(item=>{
cacheOptionsBySecondCodeRows[item]=options2[item];
cacheHasOptions[item]=options2[item];
});
resolve( {
data: {data:cacheHasOptions}
});
});
});
}else{
return new Promise((resolve, reject) => {
resolve( {
data: {data:cacheHasOptions}
});
});
}
};
/**
* 查询下拉选项目 参数为数组型参数 selectOptions( { fieldNames:['sex','age','student'],code:'all' } ),code为数据分类
* 返回结果为
* res.data.data:{
* sex:[{codeName:,codeValue:1,ifdefault:'1'},{codeName:,codeValue:2,ifdefault:'0'}],
* age:[{codeName:1,codeValue:1,ifdefault:'1'},{codeName:2,codeValue:2,ifdefault:'0'},{codeName:3,codeValue:3,ifdefault:'0'}]
* }
*/
export const selectOptions = params => {
return axios.get(`${base}/sys/code/selectOptions`, { params:params })
};
//获取代码对应的名称 用于数据反显 如 getCodeName(options.sex,'1');
export const getCodeName = (options,codeValue)=>{
if(!options)return codeValue;
let code=options.filter(i=>i.codeValue==codeValue);
if(code.length>0){
return code[0].codeName
}else{
return codeValue
}
};
/**
* 获取某个字段的默认值
* getDefaultValue(options.sex,'1');
*/
export const getDefaultValue = (fieldOptions,defaultValue) =>{
if(fieldOptions==null || fieldOptions.length==0){
return defaultValue;
}
let defaultV=defaultValue;
fieldOptions.forEach(i=>{
if(i.ifdefault=='1'){
defaultV=i.codeValue;
}
});
return defaultV;
};
/**
* 根据一级分类列表查询所有的二级分类
* @param codes 分类编码 列表 ['JCBM_TPL','SystemParas']
* @return 返回如下格式的mapsecondCodeRow为主键,dtcodeId为编码dtcodeName中文描述
* {
* JCBM_TPL:[{secondCodeRow:'xxxx',dtcodeId:1,dtcodeName:},{secondCodeRow:'xxxx',dtcodeid:1,dtcodeName:}],
* SystemParas:[{secondCodeRow:'xxxx',dtcodeId:3,dtcodeName:其它},{secondCodeRow:'xxxx',dtcodeid:2,dtcodeName:其它2}]
* }
*/
export const selectSeconds = params => { return axios.get(`${base}/sys/code/selectSeconds`, { params:params }); };
/**
* 根据一级分类列表查询所有的二级分类
* @param codes 分类编码 列表 ['JCBM_TPL','SystemParas']
* @return 返回如下格式的mapsecondCodeRow为主键,dtcodeId为编码dtcodeName中文描述
* {
* JCBM_TPL:[{secondCodeRow:'xxxx',dtcodeId:1,dtcodeName:},{secondCodeRow:'xxxx',dtcodeid:1,dtcodeName:}],
* SystemParas:[{secondCodeRow:'xxxx',dtcodeId:3,dtcodeName:其它},{secondCodeRow:'xxxx',dtcodeid:2,dtcodeName:其它2}]
* }
*/
export const selectCacheSeconds = params => {
let codes=params.codes;
let lostCodes=[];
codes.forEach(item=>{
if(!cacheSeconds[item]){
lostCodes.push(item);
}
});
if(lostCodes.length>0){
return new Promise((resolve, reject) => {
selectSeconds({codes:lostCodes}).then(res=>{
let seconds=res.data.data;
lostCodes.forEach(item=>{
cacheSeconds[item]=seconds[item];
});
let result={};
codes.forEach(item=>{
result[item]=cacheSeconds[item];
});
resolve( {
data: {data:result}
});
});
});
}else{
let result={};
codes.forEach(item=>{
result[item]=cacheSeconds[item];
});
return new Promise((resolve, reject) => {
resolve( {
data: {data:result}
});
});
}
};
// [{dpetid:'',displayDeptid:'',deptName:'',shortName:'',pdeptid:''},{dpetid:'',displayDeptid:'',deptName:'',shortName:'',pdeptid:''}]
export const getCompanyDepts = () => {
if(cacheCompanyDepts!=null && cacheCompanyDepts.length>=0){
return new Promise((resolve, reject) => {
resolve( {
data: {data:cacheCompanyDepts}
});
});
}
return axios.get(`${base}/sys/code/companyDepts`).then(res=>{
if(res.data.data==null){
cacheCompanyDepts=[];
}else{
cacheCompanyDepts=res.data.data;
}
return new Promise((resolve, reject) => {
resolve( {
data: {data:cacheCompanyDepts}
});
});
});
};
//[{userid:'',displayUserid:'',username:'',deptid:'',shortName:'',deptName:''},{userid:'',displayUserid:'',username:'',deptid:'',shortName:'',deptName:''}]
export const getCompanyEmployees = () => {
if(cacheCompanyEmployees!=null && cacheCompanyEmployees.length>=0){
return new Promise((resolve, reject) => {
resolve( {
data: {data:cacheCompanyEmployees}
});
});
}
return axios.get(`${base}/sys/code/companyEmployees`).then(res=>{
if(res.data.data==null){
cacheCompanyEmployees=[];
}else{
cacheCompanyEmployees=res.data.data;
}
return new Promise((resolve, reject) => {
resolve( {
data: {data:cacheCompanyEmployees}
});
});
});
};

33
src/api/itemOption.js

@ -0,0 +1,33 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getSysBasePath();
/**
* 数据项取值列表
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'主键 主键',itemId:'数据项编号',optionValue:'选项值',optionName:'选项名称',keys:'快捷键',isShow:'是否显示',seqOrder:'顺序',fp:'第一扩展字段',tp:'第三扩展字段',sp:'第二扩展字段',isDefault:'是否默认',cdate:'创建日期',branchId:'机构编号',deptid:'部门编号'}
**/
//普通查询 条件之间and关系
export const listItemOption = params => { return axios.get(`${base}/mdp/meta/itemOption/list`, { params: params }); };
//普通查询 条件之间and关系 params=[{categoryId:'0001',itemCode:'sex'}] 返回结果 {'sex':[{optionValue:'1',optionName:'男',seqOrder:'1',fp:'',isDefault:'0'},{optionValue:'2',optionName:'女',seqOrder:'2',fp:'',isDefault:'0'}]}
export const listOption = params => { return axios.post(`${base}/mdp/meta/itemOption/list/byItemCode`, params ); };
//params={id:''} 返回 {optionValue:'1',optionName:'男',seqOrder:'1',fp:'',isDefault:'0'}
export const getSysParam = params => { return axios.post(`${base}/mdp/meta/itemOption/sysParam`, params ); };
//模糊查询数据项取值列表 条件之间or关系
//export const listItemOptionKey = params => { return axios.get(`${base}/mdp/meta/itemOption/listKey`, { params: params }); };
//删除一条数据项取值列表 params={id:'主键 主键'}
export const delItemOption = params => { return axios.post(`${base}/mdp/meta/itemOption/del`,params); };
//批量删除数据项取值列表 params=[{id:'主键 主键'}]
export const batchDelItemOption = params => { return axios.post(`${base}/mdp/meta/itemOption/batchDel`, params); };
//修改一条数据项取值列表记录
export const editItemOption = params => { return axios.post(`${base}/mdp/meta/itemOption/edit`, params); };
//新增一条数据项取值列表
export const addItemOption = params => { return axios.post(`${base}/mdp/meta/itemOption/add`, params); };

36
src/api/login.js

@ -0,0 +1,36 @@
import request from '@/utils/request'
import config from '@/common/config'
let base=config.getFormBasePath();
export function loginByUsername(username, password) {
const data = {
displayUserid: username,
password: password
}
return request({
url: base+'/common/login',
method: 'post',
data
})
}
export function logout() {
return request({
url: base+'/logout',
method: 'post'
})
}
export function getUserInfo(params) {
return request({
url: base+'/common/login/user/info/all',
method: 'get',
params: params
})
}
export function switchDept(params) {
return request.post( base+'/common/login/user/switch', params )
}

11
src/api/login/user.js

@ -0,0 +1,11 @@
import axios from 'axios';
import config from '../../common/config.js';
let base = "/"+config.getContextName();
//没用到的api请注释掉
export const userLogin = params => { return axios.post(`${base}/common/login`, params) };
export const userReg = params => { return axios.post(`${base}/common/user/reg/web`, params) };

26
src/api/mdp/arc/archiveAttachment.js

@ -0,0 +1,26 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getArcBasePath();
//普通查询
export const listArchiveAttachment = params => { return axios.get(`${base}/mdp/arc/file/list`, { params: params }); };
//将base64的图片数据保存为png图片附件
export const uploadBase64ArchiveAttachment = params => { return axios.post(`${base}/mdp/arc/file/upload/base64`, params); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listArchiveAttachmentKey = params => { return axios.get(`${base}/mdp/arc/file/listKey`, { params: params }); };
//删除一个
export const delArchiveAttachment = params => { return axios.post(`${base}/mdp/arc/file/del`,params); };
//批量删除
export const batchDelArchiveAttachment = params => { return axios.post(`${base}/mdp/arc/file/batchDel`, params); };
//修改一个
export const editArchiveAttachment = params => { return axios.post(`${base}/mdp/arc/file/edit`, params); };
//新增一个
export const addArchiveAttachment = params => { return axios.post(`${base}/mdp/arc/file/add`, params); };

28
src/api/mdp/arc/category.js

@ -0,0 +1,28 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getArcBasePath();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listCategory = params => { return axios.get(`${base}/mdp/arc/category/list`, { params: params }); };
//普通查询
export const listTreeCategory = params => { return axios.get(`${base}/mdp/arc/category/list/tree`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listCategoryKey = params => { return axios.get(`${base}/mdp/arc/category/listKey`, { params: params }); };
//删除一个
export const delCategory = params => { return axios.post(`${base}/mdp/arc/category/del`,params); };
//批量删除
export const batchDelCategory = params => { return axios.post(`${base}/mdp/arc/category/batchDel`, params); };
//修改一个
export const editCategory = params => { return axios.post(`${base}/mdp/arc/category/edit`, params); };
//新增一个
export const addCategory = params => { return axios.post(`${base}/mdp/arc/category/add`, params); };

34
src/api/mdp/arc/image.js

@ -0,0 +1,34 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getArcBasePath();
/**
* 图片素材库
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'主键 主键',name:'附件名称',url:'访问路径',relativePath:'硬盘存放路径',fileSuffix:'后缀名',rootPath:'根目录',createDate:'存入时间',fileSize:'文件大小',deptid:'归属部门',tag:'标签',remark:'备注信息',categoryId:'图片分类',storageName:'硬盘存储名字(不带后缀)',urlPrefix:'链接前缀',isOutUrl:'是否外部链接',outUrl:'外部链接',branchId:'机构编号'}
**/
//普通查询 条件之间and关系
export const listImage = params => { return axios.get(`${base}/mdp/arc/image/list`, { params: params }); };
//模糊查询图片素材库 条件之间or关系
//export const listImageKey = params => { return axios.get(`${base}/mdp/arc/image/listKey`, { params: params }); };
//删除一条图片素材库 params={id:'主键 主键'}
export const delImage = params => { return axios.post(`${base}/mdp/arc/image/del`,params); };
//批量删除图片素材库 params=[{id:'主键 主键'}]
export const batchDelImage = params => { return axios.post(`${base}/mdp/arc/image/batchDel`, params); };
//修改一条图片素材库记录
export const editImage = params => { return axios.post(`${base}/mdp/arc/image/edit`, params); };
//新增一条图片素材库
export const addImage = params => { return axios.post(`${base}/mdp/arc/image/add`, params); };
//获取图片分类名
export const listTags = params => { return axios.get(`${base}/mdp/arc/image/listTags`, params); };
export const uploadBase64 = params => { return axios.post(`${base}/mdp/arc/image/upload/base64`, params); };

29
src/api/mdp/arc/imageCategory.js

@ -0,0 +1,29 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getArcBasePath();
/**
* 图片分类
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'主键 主键',categoryName:'分类名称',branchId:'机构编号'}
**/
//普通查询 条件之间and关系
export const listImageCategory = params => { return axios.get(`${base}/mdp/arc/imageCategory/list`, { params: params }); };
//模糊查询图片分类 条件之间or关系
//export const listImageCategoryKey = params => { return axios.get(`${base}/mdp/arc/imageCategory/listKey`, { params: params }); };
//删除一条图片分类 params={id:'主键 主键'}
export const delImageCategory = params => { return axios.post(`${base}/mdp/arc/imageCategory/del`,params); };
//批量删除图片分类 params=[{id:'主键 主键'}]
export const batchDelImageCategory = params => { return axios.post(`${base}/mdp/arc/imageCategory/batchDel`, params); };
//修改一条图片分类记录
export const editImageCategory = params => { return axios.post(`${base}/mdp/arc/imageCategory/edit`, params); };
//新增一条图片分类
export const addImageCategory = params => { return axios.post(`${base}/mdp/arc/imageCategory/add`, params); };

36
src/api/mdp/arc/tag.js

@ -0,0 +1,36 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getArcBasePath();
/**
* arc_tag
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'标签编号 主键',tagName:'标签名',branchId:'机构号',shopId:'商户编号',categoryId:'标签分组'}
**/
//普通查询 条件之间and关系
export const listTag = params => { return axios.get(`${base}/mdp/arc/tag/list`, { params: params }); };
//模糊查询arc_tag 条件之间or关系
//export const listTagKey = params => { return axios.get(`${base}/mdp/arc/tag/listKey`, { params: params }); };
//删除一条arc_tag params={id:'标签编号 主键'}
export const delTag = params => { return axios.post(`${base}/mdp/arc/tag/del`,params); };
//批量删除arc_tag params=[{id:'标签编号 主键'}]
export const batchDelTag = params => { return axios.post(`${base}/mdp/arc/tag/batchDel`, params); };
//修改一条arc_tag记录
export const editTag = params => { return axios.post(`${base}/mdp/arc/tag/edit`, params); };
//新增一条arc_tag
export const addTag = params => { return axios.post(`${base}/mdp/arc/tag/add`, params); };
export const getAllTag = params => { return axios.get(`${base}/mdp/arc/tag/getAllTag`, { params: params }); };
//新增一条arc_tag
export const deleteTagCategory= params => { return axios.post(`${base}/mdp/arc/tag/deleteTagCategory`, params); };

30
src/api/mdp/arc/tagCategory.js

@ -0,0 +1,30 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getArcBasePath();
/**
* arc_tag_category
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'分组编号 主键',branchId:'机构号',shopId:'商户编号',categoryName:'分组名称'}
**/
//普通查询 条件之间and关系
export const listTagCategory = params => { return axios.get(`${base}/mdp/arc/tagCategory/list`, { params: params }); };
//模糊查询arc_tag_category 条件之间or关系
//export const listTagCategoryKey = params => { return axios.get(`${base}/mdp/arc/tagCategory/listKey`, { params: params }); };
//删除一条arc_tag_category params={id:'分组编号 主键'}
export const delTagCategory = params => { return axios.post(`${base}/mdp/arc/tagCategory/del`,params); };
//批量删除arc_tag_category params=[{id:'分组编号 主键'}]
export const batchDelTagCategory = params => { return axios.post(`${base}/mdp/arc/tagCategory/batchDel`, params); };
//修改一条arc_tag_category记录
export const editTagCategory = params => { return axios.post(`${base}/mdp/arc/tagCategory/edit`, params); };
//新增一条arc_tag_category
export const addTagCategory = params => { return axios.post(`${base}/mdp/arc/tagCategory/add`, params); };

11
src/api/mdp/attendance/attendace.js

@ -0,0 +1,11 @@
import axios from '@/utils/request'
import config from '@/common/config'
const base = config.getOaBasePath()
export const listAttendanceMonth = params => {
return axios.get(`${base}/kq/attendance/monthRecord`,
{ params: params })
}

30
src/api/mdp/form/formData.js

@ -0,0 +1,30 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getFormBasePath();
/**
* 表单数据表
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'主键 主键',two:'属性二',three:'属性三',four:'属性四',five:'属性五',six:'属性六',seven:'属性七',eight:'属性八',nine:'属性九',ten:'属性十',lastTime:'最后更新日期',one:'属性一',zero:'属性零',remark:'备注',formId:'表单编号',userid:'最后更新人',eleven:'字段十一',twelve:'字段十二',thirteen:'字段十三',fourteen:'字段十四',fifteen:'字段十五',attachmentUrls:'附件url多个',attachmentNames:'附件名称多个',branchId:'机构编号',bizKey:'唯一确定该业务的主键',deptid:'创建部门'}
**/
//普通查询 条件之间and关系
export const listFormData = params => { return axios.get(`${base}/mdp/form/formData/list`, { params: params }); };
//模糊查询表单数据表 条件之间or关系
//export const listFormDataKey = params => { return axios.get(`${base}/mdp/form/formData/listKey`, { params: params }); };
//删除一条表单数据表 params={id:'主键 主键'}
export const delFormData = params => { return axios.post(`${base}/mdp/form/formData/del`,params); };
//批量删除表单数据表 params=[{id:'主键 主键'}]
export const batchDelFormData = params => { return axios.post(`${base}/mdp/form/formData/batchDel`, params); };
//修改一条表单数据表记录
export const editFormData = params => { return axios.post(`${base}/mdp/form/formData/edit`, params); };
//新增一条表单数据表
export const addFormData = params => { return axios.post(`${base}/mdp/form/formData/add`, params); };

33
src/api/mdp/form/formDataTag.js

@ -0,0 +1,33 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getFormBasePath();
/**
* form_data_tag
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={dataId:'表单数据编号 主键',tagId:'标签编号',tagName:'标签名字',id:'主键',createTime:'添加事件'}
**/
//普通查询 条件之间and关系
export const listFormDataTag = params => { return axios.get(`${base}/mdp/form/formDataTag/list`, { params: params }); };
//模糊查询form_data_tag 条件之间or关系
//export const listFormDataTagKey = params => { return axios.get(`${base}/mdp/form/formDataTag/listKey`, { params: params }); };
//删除一条form_data_tag params={dataId:'表单数据编号 主键'}
export const delFormDataTag = params => { return axios.post(`${base}/mdp/form/formDataTag/del`,params); };
//批量删除form_data_tag params=[{dataId:'表单数据编号 主键'}]
export const batchDelFormDataTag = params => { return axios.post(`${base}/mdp/form/formDataTag/batchDel`, params); };
//修改一条form_data_tag记录
export const editFormDataTag = params => { return axios.post(`${base}/mdp/form/formDataTag/edit`, params); };
//新增一条form_data_tag
export const addFormDataTag = params => { return axios.post(`${base}/mdp/form/formDataTag/add`, params); };
// params=[{dataId:'',tags:[{tagId:'',tagName:''}]}]
export const batchInsertOrDeleteTags = params => { return axios.post(`${base}/mdp/form/formDataTag/batchInsertOrDeleteTags`, params); };

36
src/api/mdp/form/formDef.js

@ -0,0 +1,36 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getFormBasePath();
/**
* 表单定义
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'主键 主键',tableName:'表名',tableOwner:'表名拥有者',isCreateTable:'是否已经创建库表',formName:'表单名称',userid:'创建人',deptid:'创建部门',formType:'表单类型',isTemplate:'是否为模板',bizType:'业务分类',ctime:'创建日期',branchId:'机构编号'}
**/
//普通查询 条件之间and关系
export const listFormDef = params => { return axios.get(`${base}/mdp/form/formDef/list`, { params: params }); };
//模糊查询表单定义 条件之间or关系
//export const listFormDefKey = params => { return axios.get(`${base}/mdp/form/formDef/listKey`, { params: params }); };
//删除一条表单定义 params={id:'主键 主键'}
export const delFormDef = params => { return axios.post(`${base}/mdp/form/formDef/del`,params); };
//批量删除表单定义 params=[{id:'主键 主键'}]
export const batchDelFormDef = params => { return axios.post(`${base}/mdp/form/formDef/batchDel`, params); };
//修改一条表单定义记录
export const editFormDef = params => { return axios.post(`${base}/mdp/form/formDef/edit`, params); };
//新增一个
export const addFormDef = params => { return axios.post(`${base}/mdp/form/formDef/add`, params); };
//新增一个及其属性多个 {formDef:{formName:'',formId:''},formFields:[{fieldId:'',fieldTitle:''},{fieldId:'',fieldTitle:''}]}
export const addFormDefAndFields = params => { return axios.post(`${base}/mdp/form/formDef/addFormDefAndFields`, params); };
//新增一个及其属性多个 {formDef:{formName:'',formId:''},formFields:[{fieldId:'',fieldTitle:''},{fieldId:'',fieldTitle:''}]}
export const editFormDefAndFields = params => { return axios.post(`${base}/mdp/form/formDef/editFormDefAndFields`, params); };

34
src/api/mdp/form/formDefTag.js

@ -0,0 +1,34 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getFormBasePath();
/**
* form_def_tag
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={formId:'表单编号 主键',tagId:'标签编号',tagName:'标签名字',id:'主键',createTime:'添加事件'}
**/
//普通查询 条件之间and关系
export const listFormDefTag = params => { return axios.get(`${base}/mdp/form/formDefTag/list`, { params: params }); };
//模糊查询form_def_tag 条件之间or关系
//export const listFormDefTagKey = params => { return axios.get(`${base}/mdp/form/formDefTag/listKey`, { params: params }); };
//删除一条form_def_tag params={formId:'表单编号 主键'}
export const delFormDefTag = params => { return axios.post(`${base}/mdp/form/formDefTag/del`,params); };
//批量删除form_def_tag params=[{formId:'表单编号 主键'}]
export const batchDelFormDefTag = params => { return axios.post(`${base}/mdp/form/formDefTag/batchDel`, params); };
//修改一条form_def_tag记录
export const editFormDefTag = params => { return axios.post(`${base}/mdp/form/formDefTag/edit`, params); };
//新增一条form_def_tag
export const addFormDefTag = params => { return axios.post(`${base}/mdp/form/formDefTag/add`, params); };
// params=[{formId:'',tags:[{tagId:'',tagName:''}]}]
export const batchInsertOrDeleteTags = params => { return axios.post(`${base}/mdp/form/formDefTag/batchInsertOrDeleteTags`, params); };

30
src/api/mdp/form/formField.js

@ -0,0 +1,30 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getFormBasePath();
/**
* 表单字段定义
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'主键 主键',formId:'表单编号',fieldId:'字段编号对应数据库',fieldTitle:'字段显示内容',secondCodeRow:'下拉时候关联的分组',fieldType:'字段类型',fieldLength:'字段长度',defaultValue:'默认值',isMultiple:'是否多选',placeholder:'输入框占位文本',isRequired:'是否必输',isFromBaseData:'是否关联基础数据',fieldIdCamel:'字段驼峰命名',remark:'字段备注',extFieldType:'扩展信息',isCloneToFlow:'是否提交到工作流',flowFieldId:'提交到工作流的变量编号',isBizKey:'是否是业务主键'}
**/
//普通查询 条件之间and关系
export const listFormField = params => { return axios.get(`${base}/mdp/form/formField/list`, { params: params }); };
//模糊查询表单字段定义 条件之间or关系
//export const listFormFieldKey = params => { return axios.get(`${base}/mdp/form/formField/listKey`, { params: params }); };
//删除一条表单字段定义 params={id:'主键 主键'}
export const delFormField = params => { return axios.post(`${base}/mdp/form/formField/del`,params); };
//批量删除表单字段定义 params=[{id:'主键 主键'}]
export const batchDelFormField = params => { return axios.post(`${base}/mdp/form/formField/batchDel`, params); };
//修改一条表单字段定义记录
export const editFormField = params => { return axios.post(`${base}/mdp/form/formField/edit`, params); };
//新增一条表单字段定义
export const addFormField = params => { return axios.post(`${base}/mdp/form/formField/add`, params); };

30
src/api/mdp/form/formQx.js

@ -0,0 +1,30 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getFormBasePath();
/**
* 表单权限
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={formId:'表单编号 主键',allowQueryRoleids:'允许那些角色查询,号分割',allowQueryDeptids:'允许那些部门查询,号分割',allowQueryUserids:'允许哪些人查询,号分割',notQueryRoleids:'禁止哪些角色查询',notQueryDeptids:'禁止哪些部门查询',notQueryUserids:'禁止哪些人查询',allowOtherQuery:'是否允许其它人查询',allowOtherEdit:'是否允许其它人修改',allowOtherDel:'是否允许其它人删除',doDeptLvlCheck:'是否进行部门级别传递权限检查',deptLvlQx:'部门级别权限'}
**/
//普通查询 条件之间and关系
export const listFormQx = params => { return axios.get(`${base}/mdp/form/formQx/list`, { params: params }); };
//模糊查询表单权限 条件之间or关系
//export const listFormQxKey = params => { return axios.get(`${base}/mdp/form/formQx/listKey`, { params: params }); };
//删除一条表单权限 params={formId:'表单编号 主键'}
export const delFormQx = params => { return axios.post(`${base}/mdp/form/formQx/del`,params); };
//批量删除表单权限 params=[{formId:'表单编号 主键'}]
export const batchDelFormQx = params => { return axios.post(`${base}/mdp/form/formQx/batchDel`, params); };
//修改一条表单权限记录
export const editFormQx = params => { return axios.post(`${base}/mdp/form/formQx/edit`, params); };
//新增一条表单权限
export const addFormQx = params => { return axios.post(`${base}/mdp/form/formQx/add`, params); };

25
src/api/mdp/form/formView.js

@ -0,0 +1,25 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getFormBasePath();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listFormView = params => { return axios.get(`${base}/mdp/form/formView/list`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listFormViewKey = params => { return axios.get(`${base}/mdp/form/formView/listKey`, { params: params }); };
//删除一个
export const delFormView = params => { return axios.post(`${base}/mdp/form/formView/del`,params); };
//批量删除
export const batchDelFormView = params => { return axios.post(`${base}/mdp/form/formView/batchDel`, params); };
//修改一个
export const editFormView = params => { return axios.post(`${base}/mdp/form/formView/edit`, params); };
//新增一个
export const addFormView = params => { return axios.post(`${base}/mdp/form/formView/add`, params); };

9
src/api/mdp/mallm/shop/shop.js

@ -0,0 +1,9 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getSysBasePath();
//普通查询 条件之间and关系
export const createShopApi = params => { return axios.post(`${base}/mdp/mallm/shop/shop/createShop`, params); };

9
src/api/mdp/mallm/shop/shopLocation.js

@ -0,0 +1,9 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getSysBasePath();
//普通查询 条件之间and关系
export const selectshopLocationBySysDeptIdApi = params => { return axios.post(`${base}/mdp/mallm/shop/shopLocation/selectshopLocationBySysDeptId`, params); };

29
src/api/mdp/meta/category.js

@ -0,0 +1,29 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getSysBasePath();
/**
* 元数据分类
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'分类编号 主键',categoryName:'分类名称',isShow:'是否显示0否1是',remark:'备注',branchId:'机构编号'}
**/
//普通查询 条件之间and关系
export const listCategory = params => { return axios.get(`${base}/mdp/meta/category/list`, { params: params }); };
//模糊查询元数据分类 条件之间or关系
//export const listCategoryKey = params => { return axios.get(`${base}/mdp/meta/category/listKey`, { params: params }); };
//删除一条元数据分类 params={id:'分类编号 主键'}
export const delCategory = params => { return axios.post(`${base}/mdp/meta/category/del`,params); };
//批量删除元数据分类 params=[{id:'分类编号 主键'}]
export const batchDelCategory = params => { return axios.post(`${base}/mdp/meta/category/batchDel`, params); };
//修改一条元数据分类记录
export const editCategory = params => { return axios.post(`${base}/mdp/meta/category/edit`, params); };
//新增一条元数据分类
export const addCategory = params => { return axios.post(`${base}/mdp/meta/category/add`, params); };

29
src/api/mdp/meta/item.js

@ -0,0 +1,29 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getSysBasePath();
/**
* 数据项定义
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'主键 主键',itemCode:'代码',itemName:'名称',remark:'备注',categoryId:'分类编号',itemSize:'长度',itemType:'类型',branchId:'机构编号',deptid:'部门编号'}
**/
//普通查询 条件之间and关系
export const listItem = params => { return axios.get(`${base}/mdp/meta/item/list`, { params: params }); };
//模糊查询数据项定义 条件之间or关系
//export const listItemKey = params => { return axios.get(`${base}/mdp/meta/item/listKey`, { params: params }); };
//删除一条数据项定义 params={id:'主键 主键'}
export const delItem = params => { return axios.post(`${base}/mdp/meta/item/del`,params); };
//批量删除数据项定义 params=[{id:'主键 主键'}]
export const batchDelItem = params => { return axios.post(`${base}/mdp/meta/item/batchDel`, params); };
//修改一条数据项定义记录
export const editItem = params => { return axios.post(`${base}/mdp/meta/item/edit`, params); };
//新增一条数据项定义
export const addItem = params => { return axios.post(`${base}/mdp/meta/item/add`, params); };

37
src/api/mdp/meta/itemOption.js

@ -0,0 +1,37 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getSysBasePath();
/**
* 数据项取值列表
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'主键 主键',itemId:'数据项编号',optionValue:'选项值',optionName:'选项名称',keys:'快捷键',isShow:'是否显示',seqOrder:'顺序',fp:'第一扩展字段',tp:'第三扩展字段',sp:'第二扩展字段',isDefault:'是否默认',cdate:'创建日期',branchId:'机构编号',deptid:'部门编号'}
**/
//普通查询 条件之间and关系
export const listItemOption = params => { return axios.get(`${base}/mdp/meta/itemOption/list`, { params: params }); };
//普通查询 条件之间and关系 params=[{categoryId:'0001',itemCode:'sex'}] 返回结果 {'sex':[{optionValue:'1',optionName:'男',seqOrder:'1',fp:'',isDefault:'0'},{optionValue:'2',optionName:'女',seqOrder:'2',fp:'',isDefault:'0'}]}
export const listOption = params => { return axios.post(`${base}/mdp/meta/itemOption/list/byItemCode`, params ); };
//普通查询 条件之间and关系 params=[itemId1,itemId2] 返回结果 {'itemId1':[{optionValue:'1',optionName:'男',seqOrder:'1',fp:'',isDefault:'0'},{optionValue:'2',optionName:'女',seqOrder:'2',fp:'',isDefault:'0'}]}
export const listOptionByItemIds = params => { return axios.post(`${base}/mdp/meta/itemOption/list/byItemIds`, params ); };
//params={id:''} 返回 {optionValue:'1',optionName:'男',seqOrder:'1',fp:'',isDefault:'0'}
export const getSysParam = params => { return axios.post(`${base}/mdp/meta/itemOption/sysParam`, params ); };
//模糊查询数据项取值列表 条件之间or关系
//export const listItemOptionKey = params => { return axios.get(`${base}/mdp/meta/itemOption/listKey`, { params: params }); };
//删除一条数据项取值列表 params={id:'主键 主键'}
export const delItemOption = params => { return axios.post(`${base}/mdp/meta/itemOption/del`,params); };
//批量删除数据项取值列表 params=[{id:'主键 主键'}]
export const batchDelItemOption = params => { return axios.post(`${base}/mdp/meta/itemOption/batchDel`, params); };
//修改一条数据项取值列表记录
export const editItemOption = params => { return axios.post(`${base}/mdp/meta/itemOption/edit`, params); };
//新增一条数据项取值列表
export const addItemOption = params => { return axios.post(`${base}/mdp/meta/itemOption/add`, params); };

39
src/api/mdp/sms/smsSign.js

@ -0,0 +1,39 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getSmsBasePath();
/**
* sms_sign
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'短信签名ID 主键',international:'0表示国内短信,1表示国际/港澳台短信,默认为0',status:'签名状态(0:已通过,1表示待审核,2表示已拒绝)',text:'text',remark:'签名备注',pic:'签名对应的资质证明图片',createDate:'创建时间'}
**/
//普通查询 条件之间and关系
export const listSmsSign = params => { return axios.get(`${base}/sms/smsSign/list`, { params: params }); };
//模糊查询sms_sign 条件之间or关系
//export const listSmsSignKey = params => { return axios.get(`${base}/mdp/sms/smsSign/listKey`, { params: params }); };
//删除一条sms_sign params={id:'短信签名ID 主键'}
export const delSmsSign = params => { return axios.post(`${base}/sms/smsSign/del`,params); };
//批量删除sms_sign params=[{id:'短信签名ID 主键'}]
export const batchDelSmsSign = params => { return axios.post(`${base}/sms/smsSign/batchDel`, params); };
//修改一条sms_sign记录
export const editSmsSign = params => { return axios.post(`${base}/sms/smsSign/edit`, params); };
//新增一条sms_sign
export const addSmsSign = params => { return axios.post(`${base}/sms/smsSign/add`, params); };
export const addSmsSignApi = params => { return axios.post(`${base}/sms/smsSign/addSmsSign`, params); };
export const delSmsSignApi = params => { return axios.post(`${base}/sms/smsSign/delSmsSign`, params); };
export const editSmsSignApi = params => { return axios.post(`${base}/sms/smsSign/editSmsSign`, params); };
export const groupSendSmsApi = params => { return axios.post(`${base}/sms/smsSign/groupSendSms`, params); };

36
src/api/mdp/sms/smsTemplate.js

@ -0,0 +1,36 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getSmsBasePath();
/**
* sms_template
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'短信模板ID 主键',status:'模板状态',type:'短信类型,0表示普通短信,',international:'0表示国内短信,1表示国际/港澳台短信,默认为0',text:'短信内容',title:'模板名称',remark:'模板备注,例如申请原因,使用场景等',shopId:'商户ID',locationId:'门店ID',branchId:'机构ID',createDate:'创建时间'}
**/
//普通查询 条件之间and关系
export const listSmsTemplate = params => { return axios.get(`${base}/sms/smsTemplate/list`, { params: params }); };
//模糊查询sms_template 条件之间or关系
//export const listSmsTemplateKey = params => { return axios.get(`${base}/sms/smsTemplate/listKey`, { params: params }); };
//删除一条sms_template params={id:'短信模板ID 主键'}
export const delSmsTemplate = params => { return axios.post(`${base}/sms/smsTemplate/del`,params); };
//批量删除sms_template params=[{id:'短信模板ID 主键'}]
export const batchDelSmsTemplate = params => { return axios.post(`${base}/sms/smsTemplate/batchDel`, params); };
//修改一条sms_template记录
export const editSmsTemplate = params => { return axios.post(`${base}/sms/smsTemplate/edit`, params); };
//新增一条sms_template
export const addSmsTemplate = params => { return axios.post(`${base}/sms/smsTemplate/add`, params); };
export const addTemplateApi = params => { return axios.post(`${base}/sms/smsTemplate/addTemplate`, params); };
export const delTemplateApi = params => { return axios.post(`${base}/sms/smsTemplate/delTemplate`, params); };
export const editTemplateApi = params => { return axios.post(`${base}/sms/smsTemplate/editTemplate`, params); };

29
src/api/mdp/sys/branch.js

@ -0,0 +1,29 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getSysBasePath();
/**
* 管理端机构表机构下面若干部门
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'机构编号 主键',branchName:'机构名称',enabled:'是否可用',industryCategory:'行业分类',cuserid:'创建人编号',cdate:'创建日期',cusername:'创建人姓名',phoneNo:'联系电话',emaill:'邮件'}
**/
//普通查询 条件之间and关系
export const listBranch = params => { return axios.get(`${base}/mdp/sys/branch/list`, { params: params }); };
//模糊查询管理端机构表(机构下面若干部门) 条件之间or关系
//export const listBranchKey = params => { return axios.get(`${base}/mdp/sys/branch/listKey`, { params: params }); };
//删除一条管理端机构表(机构下面若干部门) params={id:'机构编号 主键'}
export const delBranch = params => { return axios.post(`${base}/mdp/sys/branch/del`,params); };
//批量删除管理端机构表(机构下面若干部门) params=[{id:'机构编号 主键'}]
export const batchDelBranch = params => { return axios.post(`${base}/mdp/sys/branch/batchDel`, params); };
//修改一条管理端机构表(机构下面若干部门)记录
export const editBranch = params => { return axios.post(`${base}/mdp/sys/branch/edit`, params); };
//新增一条管理端机构表(机构下面若干部门)
export const addBranch = params => { return axios.post(`${base}/mdp/sys/branch/add`, params); };

39
src/api/mdp/sys/code.js

@ -0,0 +1,39 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getSysBasePath();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listCode = params => { return axios.get(`${base}/sys/code/list`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
export const listCodeKey = params => { return axios.get(`${base}/sys/code/listKey`, { params: params }); };
//删除一个
export const delCode = params => { return axios.post(`${base}/sys/code/del`,params); };
//批量删除
export const batchDelCode = params => { return axios.post(`${base}/sys/code/batchDel`, params); };
//修改一个
export const editCode = params => { return axios.post(`${base}/sys/code/edit`, params); };
//新增一个
export const addCode = params => { return axios.post(`${base}/sys/code/add`, params); };
//查询下拉选项目 参数为数组型参数 如 selectOptions( { fieldNames:['sex','age','student'],code:'all' } ),code为数据分类
export const selectOptions = params => { return axios.get(`${base}/sys/code/selectOptions`, { params:params }); };
/**
* 根据一级分类列表查询所有的二级分类
* @param codes 分类编码 列表 ['JCBM_TPL','SystemParas']
* @return 返回如下格式的mapsecondCodeRow为主键,dtcodeId为编码dtcodeName中文描述
* {
* JCBM_TPL:[{secondCodeRow:'xxxx',dtcodeId:1,dtcodeName:},{secondCodeRow:'xxxx',dtcodeid:1,dtcodeName:}],
* SystemParas:[{secondCodeRow:'xxxx',dtcodeId:3,dtcodeName:其它},{secondCodeRow:'xxxx',dtcodeid:2,dtcodeName:其它2}]
* }
*/
export const selectSeconds = params => { return axios.get(`${base}/sys/code/selectSeconds`, { params:params }); };

35
src/api/mdp/sys/codeDetail.js

@ -0,0 +1,35 @@
import axios from 'axios';
import config from '../../../common/config.js';
let base = "/"+config.getSysContextName();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listCodeDetail = params => { return axios.get(`${base}/sys/codeDetail/list`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
export const listCodeDetailKey = params => { return axios.get(`${base}/sys/codeDetail/listKey`, { params: params }); };
//删除一个
export const delCodeDetail = params => { return axios.post(`${base}/sys/codeDetail/del`,params); };
//批量删除
export const batchDelCodeDetail = params => { return axios.post(`${base}/sys/codeDetail/batchDel`, params); };
//修改一个
export const editCodeDetail = params => { return axios.post(`${base}/sys/codeDetail/edit`, params); };
//新增一个
export const addCodeDetail = params => { return axios.post(`${base}/sys/codeDetail/add`, params); };
export const upDownCodeDetail = params => { return axios.post(`${base}/sys/codeDetail/upDown`, params); };
export const uploadFileToRemote=(request)=>{
let formData=new FormData();
formData.append('file',request.file);
return axios.post(request.action,formData);
}

27
src/api/mdp/sys/codeSecond.js

@ -0,0 +1,27 @@
import axios from 'axios';
import config from '../../../common/config.js';
let base = "/"+config.getSysContextName();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listCodeSecond = params => { return axios.get(`${base}/sys/codeSecond/list`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listCodeSecondKey = params => { return axios.get(`${base}/sys/codeSecond/listKey`, { params: params }); };
//删除一个
export const delCodeSecond = params => { return axios.post(`${base}/sys/codeSecond/del`,params); };
//批量删除
export const batchDelCodeSecond = params => { return axios.post(`${base}/sys/codeSecond/batchDel`, params); };
//修改一个
export const editCodeSecond = params => { return axios.post(`${base}/sys/codeSecond/edit`, params); };
//新增一个
export const addCodeSecond = params => { return axios.post(`${base}/sys/codeSecond/add`, params); };

28
src/api/mdp/sys/dept.js

@ -0,0 +1,28 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getSysBasePath();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listDept = params => { return axios.get(`${base}/sys/dept/list`, { params: params }); };
//普通查询
export const listTreeDept = params => { return axios.get(`${base}/sys/dept/list/tree`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
export const listDeptKey = params => { return axios.get(`${base}/sys/dept/listKey`, { params: params }); };
//删除一个
export const delDept = params => { return axios.post(`${base}/sys/dept/del`,params); };
//批量删除
export const batchDelDept = params => { return axios.post(`${base}/sys/dept/batchDel`, params); };
//修改一个
export const editDept = params => { return axios.post(`${base}/sys/dept/edit`, params); };
//新增一个
export const addDept = params => { return axios.post(`${base}/sys/dept/add`, params); };

25
src/api/mdp/sys/deptExtinfo.js

@ -0,0 +1,25 @@
import axios from 'axios';
import config from '../../../common/config.js';
let base = "/"+config.getSysContextName();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listDeptExtinfo = params => { return axios.get(`${base}/sys/deptExtinfo/list`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listDeptExtinfoKey = params => { return axios.get(`${base}/sys/deptExtinfo/listKey`, { params: params }); };
//删除一个
//export const delDeptExtinfo = params => { return axios.post(`${base}/sys/deptExtinfo/del`,params); };
//批量删除
//export const batchDelDeptExtinfo = params => { return axios.post(`${base}/sys/deptExtinfo/batchDel`, params); };
//修改一个
//export const editDeptExtinfo = params => { return axios.post(`${base}/sys/deptExtinfo/edit`, params); };
//新增一个
//export const addDeptExtinfo = params => { return axios.post(`${base}/sys/deptExtinfo/add`, params); };

25
src/api/mdp/sys/deptMech.js

@ -0,0 +1,25 @@
import axios from 'axios';
import config from '../../../common/config.js';
let base = "/"+config.getSysContextName();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listDeptMch = params => { return axios.get(`${base}/sys/deptMch/list`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listDeptMchKey = params => { return axios.get(`${base}/sys/deptMch/listKey`, { params: params }); };
//删除一个
//export const delDeptMch = params => { return axios.post(`${base}/sys/deptMch/del`,params); };
//批量删除
//export const batchDelDeptMch = params => { return axios.post(`${base}/sys/deptMch/batchDel`, params); };
//修改一个
//export const editDeptMch = params => { return axios.post(`${base}/sys/deptMch/edit`, params); };
//新增一个
//export const addDeptMch = params => { return axios.post(`${base}/sys/deptMch/add`, params); };

28
src/api/mdp/sys/operDataTrail.js

@ -0,0 +1,28 @@
import axios from 'axios';
import config from '../../../common/config.js';
let base = "/"+config.getSysContextName();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listOperDataTrail = params => { return axios.get(`${base}/sys/operDataTrail/list`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listOperDataTrailKey = params => { return axios.get(`${base}/sys/operDataTrail/listKey`, { params: params }); };
//删除一个
export const delOperDataTrail = params => { return axios.post(`${base}/sys/operDataTrail/del`,params); };
//批量删除
export const batchDelOperDataTrail = params => { return axios.post(`${base}/sys/operDataTrail/batchDel`, params); };
//修改一个
export const editOperDataTrail = params => { return axios.post(`${base}/sys/operDataTrail/edit`, params); };
//新增一个
export const addOperDataTrail = params => { return axios.post(`${base}/sys/operDataTrail/add`, params); };
//修改一个
export const operEnd = params => { return axios.post(`${base}/sys/operDataTrail/edit/end`, params); };

33
src/api/mdp/sys/post/post.js

@ -0,0 +1,33 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getSysBasePath();
/**
* sys_post
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'主键 主键',postName:'岗位名称',remark:'备注',branchId:'归属机构号',cdate:'创建日期'}
**/
//普通查询 条件之间and关系
export const listPost = params => { return axios.get(`${base}/mdp/sys/post/post/list`, { params: params }); };
//查询未添加到部门的岗位
export const listPostNotInDeptid = params => { return axios.get(`${base}/mdp/sys/post/post/list/notInDeptid`, { params: params }); };
//模糊查询sys_post 条件之间or关系
//export const listPostKey = params => { return axios.get(`${base}/mdp/sys/post/post/listKey`, { params: params }); };
//删除一条sys_post params={id:'主键 主键'}
export const delPost = params => { return axios.post(`${base}/mdp/sys/post/post/del`,params); };
//批量删除sys_post params=[{id:'主键 主键'}]
export const batchDelPost = params => { return axios.post(`${base}/mdp/sys/post/post/batchDel`, params); };
//修改一条sys_post记录
export const editPost = params => { return axios.post(`${base}/mdp/sys/post/post/edit`, params); };
//新增一条sys_post
export const addPost = params => { return axios.post(`${base}/mdp/sys/post/post/add`, params); };

25
src/api/mdp/sys/qx.js

@ -0,0 +1,25 @@
import axios from 'axios';
import config from '../../../common/config.js';
let base = "/"+config.getSysContextName();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listQx = params => { return axios.get(`${base}/sys/qx/list`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listQxKey = params => { return axios.get(`${base}/sys/qx/listKey`, { params: params }); };
//删除一个
export const delQx = params => { return axios.post(`${base}/sys/qx/del`,params); };
//批量删除
export const batchDelQx = params => { return axios.post(`${base}/sys/qx/batchDel`, params); };
//修改一个
export const editQx = params => { return axios.post(`${base}/sys/qx/edit`, params); };
//新增一个
export const addQx = params => { return axios.post(`${base}/sys/qx/add`, params); };

29
src/api/mdp/sys/role.js

@ -0,0 +1,29 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getSysBasePath();
/**
* 角色管理
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={roleid:'角色编号 主键',rolename:'角色名',remark:'备注',roletype:'角色类型',rolebeg:'开始时间',roleend:'结束时间',crdate:'创建日期',enabled:'是否启用',deptid:'机构编号',sortOrder:'角色排序',branchId:'云用户机构编号'}
**/
//普通查询 条件之间and关系
export const listRole = params => { return axios.get(`${base}/mdp/sys/role/list`, { params: params }); };
//模糊查询角色管理 条件之间or关系
//export const listRoleKey = params => { return axios.get(`${base}/mdp/sys/role/listKey`, { params: params }); };
//删除一条角色管理 params={roleid:'角色编号 主键'}
export const delRole = params => { return axios.post(`${base}/mdp/sys/role/del`,params); };
//批量删除角色管理 params=[{roleid:'角色编号 主键'}]
export const batchDelRole = params => { return axios.post(`${base}/mdp/sys/role/batchDel`, params); };
//修改一条角色管理记录
export const editRole = params => { return axios.post(`${base}/mdp/sys/role/edit`, params); };
//新增一条角色管理
export const addRole = params => { return axios.post(`${base}/mdp/sys/role/add`, params); };

28
src/api/mdp/sys/roleQx.js

@ -0,0 +1,28 @@
import axios from 'axios';
import config from '../../../common/config.js';
let base = "/"+config.getSysContextName();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listRoleQx = params => { return axios.get(`${base}/sys/roleQx/list`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listRoleQxKey = params => { return axios.get(`${base}/sys/roleQx/listKey`, { params: params }); };
//删除一个
//export const delRoleQx = params => { return axios.post(`${base}/sys/roleQx/del`,params); };
//批量删除
//export const batchDelRoleQx = params => { return axios.post(`${base}/sys/roleQx/batchDel`, params); };
//批量更新角色权限
export const batchEditRoleQx = params => { return axios.post(`${base}/sys/roleQx/batchEdit`, params); };
//修改一个
//export const editRoleQx = params => { return axios.post(`${base}/sys/roleQx/edit`, params); };
//新增一个
//export const addRoleQx = params => { return axios.post(`${base}/sys/roleQx/add`, params); };

24
src/api/mdp/sys/thirdPartyAccount.js

@ -0,0 +1,24 @@
import axios from 'axios';
import config from '../../../common/config.js';
let base = "/"+config.getSysContextName();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listThirdPartyAccount = params => { return axios.get(`${base}/sys/thirdPartyAccount/list`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listThirdPartyAccountKey = params => { return axios.get(`${base}/sys/thirdPartyAccount/listKey`, { params: params }); };
//删除一个
//export const delThirdPartyAccount = params => { return axios.post(`${base}/sys/thirdPartyAccount/del`,params); };
//批量删除
//export const batchDelThirdPartyAccount = params => { return axios.post(`${base}/sys/thirdPartyAccount/batchDel`, params); };
//修改一个
//export const editThirdPartyAccount = params => { return axios.post(`${base}/sys/thirdPartyAccount/edit`, params); };
//新增一个
//export const addThirdPartyAccount = params => { return axios.post(`${base}/sys/thirdPartyAccount/add`, params); };

33
src/api/mdp/sys/user.js

@ -0,0 +1,33 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getSysBasePath();
/**
* 用户表
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={userid:'内部用户编号 主键',unionid:'全局唯一编号',displayUserid:'登录展示使用用户编号',locked:'是否被锁定0否1是',startdate:'启用日期',nickname:'昵称',username:'用户名称',phoneno:'移动电话号码',password:'密码',salt:'盐值',fgOne:'指纹1',fgTwo:'指纹2',fgThr:'指纹3',idCardNo:'身份证号码',pwdtype:'密码类型1指纹2密码',headimgurl:'头像地址',country:'国家',city:'城市',province:'省份',address:'详细地址',sex:'性别',enddate:'到期日期',districtId:'区县编号',email:'邮箱',userId:'user_id',userAccount:'user_account',userPwd:'user_pwd',userName:'user_name',userDesc:'user_desc'}
**/
//普通查询 条件之间and关系
export const listUser = params => { return axios.get(`${base}/mdp/sys/user/list`, { params: params }); };
export const listUserNames = params => { return axios.get(`${base}/mdp/sys/user/listUserNames`, { params: params }); };
export const selectlistKey= params => { return axios.get(`${base}/mdp/sys/user/selectlistKey`, { params: params }); };
//模糊查询用户表 条件之间or关系
//export const listUserKey = params => { return axios.get(`${base}/mdp/sys/user/listKey`, { params: params }); };
export const addUser = params => { return axios.post(`${base}/mdp/sys/user/add`,params); };
//删除一条用户表 params={userid:'内部用户编号 主键'}
export const delUser = params => { return axios.post(`${base}/mdp/sys/user/del`,params); };
//批量删除用户表 params=[{userid:'内部用户编号 主键'}]
export const batchDelUser = params => { return axios.post(`${base}/mdp/sys/user/batchDel`, params); };
//修改一条用户表记录
export const editUser = params => { return axios.post(`${base}/mdp/sys/user/edit`, params); };
//重置管理人员帮别人重置密码
export const resetPasswordByAdmin = params => { return axios.post(`${base}/safe/user/password/reset/byAdmin`, params); };

25
src/api/mdp/sys/userExtinfo.js

@ -0,0 +1,25 @@
import axios from 'axios';
import config from '../../../common/config.js';
let base = "/"+config.getSysContextName();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listUserExtinfo = params => { return axios.get(`${base}/sys/userExtinfo/list`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listUserExtinfoKey = params => { return axios.get(`${base}/sys/userExtinfo/listKey`, { params: params }); };
//删除一个
//export const delUserExtinfo = params => { return axios.post(`${base}/sys/userExtinfo/del`,params); };
//批量删除
//export const batchDelUserExtinfo = params => { return axios.post(`${base}/sys/userExtinfo/batchDel`, params); };
//修改一个
//export const editUserExtinfo = params => { return axios.post(`${base}/sys/userExtinfo/edit`, params); };
//新增一个
//export const addUserExtinfo = params => { return axios.post(`${base}/sys/userExtinfo/add`, params); };

31
src/api/mdp/sys/userRole.js

@ -0,0 +1,31 @@
import axios from 'axios';
import config from '../../../common/config.js';
let base = "/"+config.getSysContextName();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listUserRole = params => { return axios.get(`${base}/sys/userRole/list`, { params: params }); };
//普通查询
export const listUserInfosByRoleid = params => { return axios.get(`${base}/sys/userRole/list/users`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listUserRoleKey = params => { return axios.get(`${base}/sys/userRole/listKey`, { params: params }); };
//删除一个
//export const delUserRole = params => { return axios.post(`${base}/sys/userRole/del`,params); };
//批量删除
//export const batchDelUserRole = params => { return axios.post(`${base}/sys/userRole/batchDel`, params); };
//批量删除
export const batchEditUserRole = params => { return axios.post(`${base}/sys/userRole/batchEdit`, params); };
//修改一个
//export const editUserRole = params => { return axios.post(`${base}/sys/userRole/edit`, params); };
//新增一个
//export const addUserRole = params => { return axios.post(`${base}/sys/userRole/add`, params); };

30
src/api/mdp/workflow/biz/bizModel.js

@ -0,0 +1,30 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getWorkflowBasePath();
/**
* mdp_biz_model
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'主键 主键',bizName:'业务名称',bizKey:'业务编码',modelKey:'模型编码',modelName:'模型名称',branchId:'机构编号'}
**/
//普通查询 条件之间and关系
export const listBizModel = params => { return axios.get(`${base}/mdp/workflow/biz/bizModel/list`, { params: params }); };
//模糊查询mdp_biz_model 条件之间or关系
//export const listBizModelKey = params => { return axios.get(`${base}/mdp/workflow/biz/bizModel/listKey`, { params: params }); };
//删除一条mdp_biz_model params={id:'主键 主键'}
export const delBizModel = params => { return axios.post(`${base}/mdp/workflow/biz/bizModel/del`,params); };
//批量删除mdp_biz_model params=[{id:'主键 主键'}]
export const batchDelBizModel = params => { return axios.post(`${base}/mdp/workflow/biz/bizModel/batchDel`, params); };
//修改一条mdp_biz_model记录
export const editBizModel = params => { return axios.post(`${base}/mdp/workflow/biz/bizModel/edit`, params); };
//新增一条mdp_biz_model
export const addBizModel = params => { return axios.post(`${base}/mdp/workflow/biz/bizModel/add`, params); };

31
src/api/mdp/workflow/de/model.js

@ -0,0 +1,31 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getWorkflowBasePath();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listModel = params => { return axios.get(`${base}/mdp/workflow/de/model/list`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listModelKey = params => { return axios.get(`${base}/mdp/workflow/de/model/listKey`, { params: params }); };
//删除一个
export const delModel = params => { return axios.post(`${base}/mdp/workflow/de/model/del`,params); };
//批量删除
export const batchDelModel = params => { return axios.post(`${base}/mdp/workflow/de/model/batchDel`, params); };
//修改一个
export const editModel = params => { return axios.post(`${base}/mdp/workflow/de/model/edit`, params); };
//修改一个
export const deployModel = params => { return axios.post(`${base}/mdp/workflow/de/model/deploy`, params); };
//修改一个
export const unDeployModel = params => { return axios.post(`${base}/mdp/workflow/de/model/unDeploy`, params); };
//新增一个
export const addModel = params => { return axios.post(`${base}/mdp/workflow/de/model/add`, params); };

25
src/api/mdp/workflow/hi/comment.js

@ -0,0 +1,25 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getWorkflowBasePath();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listComment = params => { return axios.get(`${base}/mdp/workflow/hi/comment/list`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listCommentKey = params => { return axios.get(`${base}/mdp/workflow/hi/comment/listKey`, { params: params }); };
//删除一个
export const delComment = params => { return axios.post(`${base}/mdp/workflow/hi/comment/del`,params); };
//批量删除
export const batchDelComment = params => { return axios.post(`${base}/mdp/workflow/hi/comment/batchDel`, params); };
//修改一个
export const editComment = params => { return axios.post(`${base}/mdp/workflow/hi/comment/edit`, params); };
//新增一个
export const addComment = params => { return axios.post(`${base}/mdp/workflow/hi/comment/add`, params); };

25
src/api/mdp/workflow/hi/procinst.js

@ -0,0 +1,25 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getWorkflowBasePath();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listProcinst = params => { return axios.get(`${base}/mdp/workflow/hi/procinst/list`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listProcinstKey = params => { return axios.get(`${base}/mdp/workflow/hi/procinst/listKey`, { params: params }); };
//删除一个
export const delProcinst = params => { return axios.post(`${base}/mdp/workflow/hi/procinst/del`,params); };
//批量删除
export const batchDelProcinst = params => { return axios.post(`${base}/mdp/workflow/hi/procinst/batchDel`, params); };
//修改一个
export const editProcinst = params => { return axios.post(`${base}/mdp/workflow/hi/procinst/edit`, params); };
//新增一个
export const addProcinst = params => { return axios.post(`${base}/mdp/workflow/hi/procinst/add`, params); };

29
src/api/mdp/workflow/re/actAssignee.js

@ -0,0 +1,29 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getWorkflowBasePath();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listActAssignee = params => { return axios.get(`${base}/mdp/workflow/re/actAssignee/list`, { params: params }); };
//普通查询模型中的所有节点的执行人列表,需要procDefId
export const getBpmnActAssignees = params => { return axios.get(`${base}/mdp/workflow/re/actAssignee/getBpmnActAssignees`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listActAssigneeKey = params => { return axios.get(`${base}/mdp/workflow/re/actAssignee/listKey`, { params: params }); };
//删除一个
export const delActAssignee = params => { return axios.post(`${base}/mdp/workflow/re/actAssignee/del`,params); };
//批量删除
export const batchDelActAssignee = params => { return axios.post(`${base}/mdp/workflow/re/actAssignee/batchDel`, params); };
//修改一个
export const editActAssignee = params => { return axios.post(`${base}/mdp/workflow/re/actAssignee/edit`, params); };
//新增一个
export const addActAssignee = params => { return axios.post(`${base}/mdp/workflow/re/actAssignee/add`, params); };

25
src/api/mdp/workflow/re/deployment.js

@ -0,0 +1,25 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getWorkflowBasePath();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listDeployment = params => { return axios.get(`${base}/mdp/workflow/re/deployment/list`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listDeploymentKey = params => { return axios.get(`${base}/mdp/workflow/re/deployment/listKey`, { params: params }); };
//删除一个
export const delDeployment = params => { return axios.post(`${base}/mdp/workflow/re/deployment/del`,params); };
//批量删除
export const batchDelDeployment = params => { return axios.post(`${base}/mdp/workflow/re/deployment/batchDel`, params); };
//修改一个
export const editDeployment = params => { return axios.post(`${base}/mdp/workflow/re/deployment/edit`, params); };
//新增一个
export const addDeployment = params => { return axios.post(`${base}/mdp/workflow/re/deployment/add`, params); };

34
src/api/mdp/workflow/re/procdef.js

@ -0,0 +1,34 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getWorkflowBasePath();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listProcdef = params => { return axios.get(`${base}/mdp/workflow/re/procdef/list`, { params: params }); };
//普通查询
export const listCategorys = params => { return axios.get(`${base}/mdp/workflow/re/procdef/categorys`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listProcdefKey = params => { return axios.get(`${base}/mdp/workflow/re/procdef/listKey`, { params: params }); };
//删除一个
export const delProcdef = params => { return axios.post(`${base}/mdp/workflow/re/procdef/del`,params); };
//批量删除
export const batchDelProcdef = params => { return axios.post(`${base}/mdp/workflow/re/procdef/batchDel`, params); };
//修改一个
export const editProcdef = params => { return axios.post(`${base}/mdp/workflow/re/procdef/edit`, params); };
//修改一个
export const suspendProcdef = params => { return axios.post(`${base}/mdp/workflow/re/procdef/suspend`, params); };
//修改一个
export const activateProcdef = params => { return axios.post(`${base}/mdp/workflow/re/procdef/activate`, params); };
//新增一个
export const addProcdef = params => { return axios.post(`${base}/mdp/workflow/re/procdef/add`, params); };

30
src/api/mdp/workflow/re/procdefParames.js

@ -0,0 +1,30 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getWorkflowBasePath();
/**
* mdp_re_procdef_parames
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'主键 主键',isRefForm:'是否关联自定义表单',monitors:'监控人多个',sponsors:'主办人多个默认为发起人',formId:'表单编号',procDefId:'流程定义编号',userid:'创建人',lastDate:'最后更新时间',mainContext:'流程正文',mainTitle:'流程标题',bizUrl:'业务功能跳转',bizName:'业务功能名称',categoryId:'所属分类编号',branchId:'云用户机构编号',formShowType:'智能表单展示方式form/table',fp:'备用字段1',sp:'备用字段2',tp:'备用字段3',pconfig:'5个备用字段',fo:'备用字段4',fi:'备用字段5',tagNames:'标签名称逗号分隔',tagIds:'标签编号逗号分隔'}
**/
//普通查询 条件之间and关系
export const listProcdefParames = params => { return axios.get(`${base}/mdp/workflow/re/procdefParames/list`, { params: params }); };
//模糊查询mdp_re_procdef_parames 条件之间or关系
//export const listProcdefParamesKey = params => { return axios.get(`${base}/mdp/workflow/re/procdefParames/listKey`, { params: params }); };
//删除一条mdp_re_procdef_parames params={id:'主键 主键'}
export const delProcdefParames = params => { return axios.post(`${base}/mdp/workflow/re/procdefParames/del`,params); };
//批量删除mdp_re_procdef_parames params=[{id:'主键 主键'}]
export const batchDelProcdefParames = params => { return axios.post(`${base}/mdp/workflow/re/procdefParames/batchDel`, params); };
//修改一条mdp_re_procdef_parames记录
export const editProcdefParames = params => { return axios.post(`${base}/mdp/workflow/re/procdefParames/edit`, params); };
//新增一条mdp_re_procdef_parames
export const addProcdefParames = params => { return axios.post(`${base}/mdp/workflow/re/procdefParames/add`, params); };

34
src/api/mdp/workflow/re/procdefParamesTemplate.js

@ -0,0 +1,34 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getWorkflowBasePath();
/**
* mdp_re_procdef_parames_template
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'主键 主键',isRefForm:'是否关联自定义表单',monitors:'监控人多个',sponsors:'主办人多个默认为发起人',formId:'表单编号',procDefId:'流程定义编号',userid:'创建人',lastDate:'最后更新时间',mainContext:'流程正文',mainTitle:'流程标题',bizUrl:'业务功能跳转',bizName:'业务功能名称',categoryId:'所属分类编号',branchId:'云用户机构编号',formShowType:'智能表单展示方式form/table',fp:'备用字段1',sp:'备用字段2',tp:'备用字段3',pconfig:'5个备用字段',fo:'备用字段4',fi:'备用字段5',tagNames:'标签名称逗号分隔',tagIds:'标签编号逗号分隔',mainQx:'1-是否控制节点权限-2是否有正文-3是否发起人外其它人可修改正文-4是否控制附件权限',modelKey:'模型key,来自act_de_model.key_'}
**/
//普通查询 条件之间and关系
export const listProcdefParamesTemplate = params => { return axios.get(`${base}/mdp/workflow/re/procdefParamesTemplate/list`, { params: params }); };
//模糊查询mdp_re_procdef_parames_template 条件之间or关系
//export const listProcdefParamesTemplateKey = params => { return axios.get(`${base}/mdp/workflow/re/procdefParamesTemplate/listKey`, { params: params }); };
//删除一条mdp_re_procdef_parames_template params={id:'主键 主键'}
export const delProcdefParamesTemplate = params => { return axios.post(`${base}/mdp/workflow/re/procdefParamesTemplate/del`,params); };
//批量删除mdp_re_procdef_parames_template params=[{id:'主键 主键'}]
export const batchDelProcdefParamesTemplate = params => { return axios.post(`${base}/mdp/workflow/re/procdefParamesTemplate/batchDel`, params); };
//修改一条mdp_re_procdef_parames_template记录
export const editProcdefParamesTemplate = params => { return axios.post(`${base}/mdp/workflow/re/procdefParamesTemplate/edit`, params); };
//新增一条mdp_re_procdef_parames_template
export const addProcdefParamesTemplate = params => { return axios.post(`${base}/mdp/workflow/re/procdefParamesTemplate/add`, params); };
//新增或者修改模板
export const addOrUpdateTemplate = params => { return axios.post(`${base}/mdp/workflow/re/procdefParamesTemplate/addOrUpdate`, params); };

34
src/api/mdp/workflow/re/procdefTag.js

@ -0,0 +1,34 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getWorkflowBasePath();
/**
* mdp_re_procdef_tag
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'id 主键',procInstId:'流程实例编号',tagId:'标签(arc.arc_tag表的id)',addUserid:'谁给我打的标签',addTime:'添加时间',state:'0无效1有效',procDefId:'流程定义编号',tagName:'tag_name'}
**/
//普通查询 条件之间and关系
export const listProcdefTag = params => { return axios.get(`${base}/mdp/workflow/re/procdefTag/list`, { params: params }); };
//模糊查询mdp_re_procdef_tag 条件之间or关系
//export const listProcdefTagKey = params => { return axios.get(`${base}/mdp/workflow/re/procdefTag/listKey`, { params: params }); };
//删除一条mdp_re_procdef_tag params={id:'id 主键'}
export const delProcdefTag = params => { return axios.post(`${base}/mdp/workflow/re/procdefTag/del`,params); };
//批量删除mdp_re_procdef_tag params=[{id:'id 主键'}]
export const batchDelProcdefTag = params => { return axios.post(`${base}/mdp/workflow/re/procdefTag/batchDel`, params); };
//修改一条mdp_re_procdef_tag记录
export const editProcdefTag = params => { return axios.post(`${base}/mdp/workflow/re/procdefTag/edit`, params); };
//新增一条mdp_re_procdef_tag
export const addProcdefTag = params => { return axios.post(`${base}/mdp/workflow/re/procdefTag/add`, params); };
// params=[{procDefId:'',branchId:'',userid:'',tags:[{tagId:'',tagName:''}]}]
export const batchInsertOrDeleteTags = params => { return axios.post(`${base}/mdp/workflow/re/procdefTag/batchInsertOrDeleteTags`, params); };

20
src/api/mdp/workflow/ru/execution.js

@ -0,0 +1,20 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getWorkflowBasePath();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listExecution = params => { return axios.get(`${base}/mdp/workflow/ru/execution/list`, { params: params }); };
//启动流程
export const startProc = params => { return axios.post(`${base}/mdp/workflow/ru/execution/start`, params); };
//激活流程
export const activiteExecution = params => { return axios.post(`${base}/mdp/workflow/ru/execution/activite`, params); };
//挂起流程
export const suspendExecution = params => { return axios.post(`${base}/mdp/workflow/ru/execution/suspend`, params); };
//删除流程
export const delExecution = params => { return axios.post(`${base}/mdp/workflow/ru/execution/del`, params); };

30
src/api/mdp/workflow/ru/procinstFormData.js

@ -0,0 +1,30 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getWorkflowBasePath();
/**
* mdp_ru_procinst_form_data
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'主键 主键',procInstId:'流程实例编号',formDataId:'表单数据编号'}
**/
//普通查询 条件之间and关系
export const listProcinstFormData = params => { return axios.get(`${base}/mdp/workflow/ru/procinstFormData/list`, { params: params }); };
//模糊查询mdp_ru_procinst_form_data 条件之间or关系
//export const listProcinstFormDataKey = params => { return axios.get(`${base}/mdp/workflow/ru/procinstFormData/listKey`, { params: params }); };
//删除一条mdp_ru_procinst_form_data params={id:'主键 主键'}
export const delProcinstFormData = params => { return axios.post(`${base}/mdp/workflow/ru/procinstFormData/del`,params); };
//批量删除mdp_ru_procinst_form_data params=[{id:'主键 主键'}]
export const batchDelProcinstFormData = params => { return axios.post(`${base}/mdp/workflow/ru/procinstFormData/batchDel`, params); };
//修改一条mdp_ru_procinst_form_data记录
export const editProcinstFormData = params => { return axios.post(`${base}/mdp/workflow/ru/procinstFormData/edit`, params); };
//新增一条mdp_ru_procinst_form_data
export const addProcinstFormData = params => { return axios.post(`${base}/mdp/workflow/ru/procinstFormData/add`, params); };

33
src/api/mdp/workflow/ru/procinstParames.js

@ -0,0 +1,33 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getWorkflowBasePath();
/**
* mdp_ru_procinst_parames
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'主键 主键',isRefForm:'是否关联自定义表单',monitors:'监控人多个',sponsors:'主办人多个默认为发起人',procInstId:'流程实例编号',formId:'表单编号',procDefId:'流程定义编号',userid:'创建人',startDate:'发起时间',isTemplate:'是否存为模板',mainContext:'流程正文',mainTitle:'流程标题',deptid:'发起部门',bizUrl:'业务功能跳转',bizName:'流程分类编号',categoryId:'流程分类编号',branchId:'云用户机构编号',lastUserid:'最后更新用户编号',lastTime:'最后更新时间',flowState:'审批状态0未开始1审批中2审批结束',formShowType:'智能表单数据展现方式form/table',startUsername:'发起人姓名',startDeptName:'发起部门名称',fp:'备用字段1',sp:'备用字段2',tp:'备用字段3',pconfig:'5个备用字段',fo:'备用字段4',fi:'备用字段5',tagNames:'标签名称逗号分隔',tagIds:'标签编号逗号分隔'}
**/
//普通查询 条件之间and关系
export const listProcinstParames = params => { return axios.get(`${base}/mdp/workflow/ru/procinstParames/list`, { params: params }); };
//模糊查询mdp_ru_procinst_parames 条件之间or关系
//export const listProcinstParamesKey = params => { return axios.get(`${base}/mdp/workflow/ru/procinstParames/listKey`, { params: params }); };
//删除一条mdp_ru_procinst_parames params={id:'主键 主键'}
export const delProcinstParames = params => { return axios.post(`${base}/mdp/workflow/ru/procinstParames/del`,params); };
//批量删除mdp_ru_procinst_parames params=[{id:'主键 主键'}]
export const batchDelProcinstParames = params => { return axios.post(`${base}/mdp/workflow/ru/procinstParames/batchDel`, params); };
//修改一条mdp_ru_procinst_parames记录
export const editProcinstParames = params => { return axios.post(`${base}/mdp/workflow/ru/procinstParames/edit`, params); };
//新增一条mdp_ru_procinst_parames
export const addProcinstParames = params => { return axios.post(`${base}/mdp/workflow/ru/procinstParames/add`, params); };
//单独更新计划完成时间
export const editPlanFinishTime = params => { return axios.post(`${base}/mdp/workflow/ru/procinstParames/editPlanFinishTime`, params); };

34
src/api/mdp/workflow/ru/procinstTag.js

@ -0,0 +1,34 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getWorkflowBasePath();
/**
* mdp_ru_procinst_tag
*1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询新增修改的参数格式 params={id:'id 主键',procDefId:'流程编号',tag:'标签(arc.arc_tag表的id)',addUserid:'谁给我打的标签',addTime:'添加时间',state:'0无效1有效',tagName:'tag_name'}
**/
//普通查询 条件之间and关系
export const listProcinstTag = params => { return axios.get(`${base}/mdp/workflow/ru/procinstTag/list`, { params: params }); };
//模糊查询mdp_ru_procinst_tag 条件之间or关系
//export const listProcinstTagKey = params => { return axios.get(`${base}/mdp/workflow/ru/procinstTag/listKey`, { params: params }); };
//删除一条mdp_ru_procinst_tag params={id:'id 主键'}
export const delProcinstTag = params => { return axios.post(`${base}/mdp/workflow/ru/procinstTag/del`,params); };
//批量删除mdp_ru_procinst_tag params=[{id:'id 主键'}]
export const batchDelProcinstTag = params => { return axios.post(`${base}/mdp/workflow/ru/procinstTag/batchDel`, params); };
//修改一条mdp_ru_procinst_tag记录
export const editProcinstTag = params => { return axios.post(`${base}/mdp/workflow/ru/procinstTag/edit`, params); };
//新增一条mdp_ru_procinst_tag
export const addProcinstTag = params => { return axios.post(`${base}/mdp/workflow/ru/procinstTag/add`, params); };
// params=[{procInstId:'',procDefId:'',branchId:'',userid:'',tags:[{tagId:'',tagName:''}]}]
export const batchInsertOrDeleteTags = params => { return axios.post(`${base}/mdp/workflow/ru/procinstTag/batchInsertOrDeleteTags`, params); };

67
src/api/mdp/workflow/ru/task.js

@ -0,0 +1,67 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getWorkflowBasePath();
//默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:1,pageSize:10,total:0},后台都会自动按分页查询 其它 api用到再打开,没用到的api请注释掉,
//普通查询
export const listAssigneeToAnyTasks = params => { return axios.get(`${base}/mdp/workflow/ru/task/listAssigneeToAnyTasks`, { params: params }); };
//普通查询
export const listAssigneeToMeTasks = params => { return axios.get(`${base}/mdp/workflow/ru/task/listAssigneeToMeTasks`, { params: params }); };
//普通查询
export const listMyCandidateUserTasks = params => { return axios.get(`${base}/mdp/workflow/ru/task/listMyCandidateUserTasks`, { params: params }); };
//普通查询
export const listAnyCandidateUserTasks = params => { return axios.get(`${base}/mdp/workflow/ru/task/listAnyCandidateUserTasks`, { params: params }); };
//普通查询
export const listMyCandidateGroupTasks = params => { return axios.get(`${base}/mdp/workflow/ru/task/listMyCandidateGroupTasks`, { params: params }); };
//普通查询
export const listAnyCandidateGroupTasks = params => { return axios.get(`${base}/mdp/workflow/ru/task/listAnyCandidateGroupTasks`, { params: params }); };
//关键字模糊查询 {字段1:v1,字段2:v1,字段3:v1},字段驼峰命名,条件之间默认为or关系
//export const listTaskKey = params => { return axios.get(`${base}/mdp/workflow/ru/task/listKey`, { params: params }); };
//删除一个
export const delTask = params => { return axios.post(`${base}/mdp/workflow/ru/task/del`,params); };
//批量删除
export const batchDelTask = params => { return axios.post(`${base}/mdp/workflow/ru/task/batchDel`, params); };
//修改一个
export const editTask = params => { return axios.post(`${base}/mdp/workflow/ru/task/edit`, params); };
//新增一个
export const addTask = params => { return axios.post(`${base}/mdp/workflow/ru/task/add`, params); };
//完成一个任务 action=complete/resolve/delegate/calim
export const completeTask = params => { return axios.post(`${base}/mdp/workflow/ru/task/complete`, params); };
// 添加办理意见,但是不提交任务
export const addComment = params => { return axios.post(`${base}/mdp/workflow/ru/task/addComment`, params); };
/**
* 新增候选人/部门/岗位 {branchId:'',taskId:'',procInstId:'',userids:[userid],deptids:[deptid],postids:[postid]}
* */
export const addCandidate = params => { return axios.post(`${base}/mdp/workflow/ru/task/addCandidate`, params); };
/**
* 删除候选人/部门/岗位 {taskId:'',procInstId:'',userids:[userid],deptids:[deptid],postids:[postid]}
* */
export const delCandidate = params => { return axios.post(`${base}/mdp/workflow/ru/task/delCandidate`, params); };
/**
* 查询候选个人
* */
export const listCandidateUsers = params => { return axios.get(`${base}/mdp/workflow/ru/task/listCandidateUsers`, { params: params }); };
/**
* 查询候选组实际指部门
* */
export const listCandidateDepts = params => { return axios.get(`${base}/mdp/workflow/ru/task/listCandidateDepts`, { params: params }); };
/**
* 查询候选岗位
* */
export const listCandidatePosts = params => { return axios.get(`${base}/mdp/workflow/ru/task/listCandidatePosts`, { params: params }); };

8
src/api/qiniu.js

@ -0,0 +1,8 @@
import request from '@/utils/request'
export function getToken() {
return request({
url: '/qiniu/upload/token', // 假地址 自行替换
method: 'get'
})
}

9
src/api/remoteSearch.js

@ -0,0 +1,9 @@
import request from '@/utils/request'
export function userSearch(name) {
return request({
url: '/search/user',
method: 'get',
params: { name }
})
}

15
src/api/sms/sms.js

@ -0,0 +1,15 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getSmsBasePath();
/**
* 发送短信验证码验证短信验证码接口
**/
//发送短信验证码
export const sendSmsCode = params => { return axios.post(`${base}/sms/sendSmsCode`, params); };
//验证短信验证码
export const validateSmsCode = params => { return axios.post(`${base}/sms/validateSmsCode`, params); };

9
src/api/transaction.js

@ -0,0 +1,9 @@
import request from '@/utils/request'
export function fetchList(query) {
return request({
url: '/transaction/list',
method: 'get',
params: query
})
}

BIN
src/assets/401_images/401.gif

After

Width: 313  |  Height: 428  |  Size: 160 KiB

BIN
src/assets/404_images/404.png

After

Width: 1014  |  Height: 556  |  Size: 96 KiB

BIN
src/assets/404_images/404_cloud.png

After

Width: 152  |  Height: 138  |  Size: 4.7 KiB

BIN
src/assets/custom-theme/fonts/element-icons.ttf

BIN
src/assets/custom-theme/fonts/element-icons.woff

1
src/assets/custom-theme/index.css
File diff suppressed because it is too large
View File

199
src/assets/echarts-macarons.js

@ -0,0 +1,199 @@
/* eslint-disable */
(function (root, factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
define(['exports', 'echarts'], factory);
} else if (typeof exports === 'object' && typeof exports.nodeName !== 'string') {
// CommonJS
factory(exports, require('echarts'));
} else {
// Browser globals
factory({}, root.echarts);
}
}(this, function (exports, echarts) {
var log = function (msg) {
if (typeof console !== 'undefined') {
console && console.error && console.error(msg);
}
};
if (!echarts) {
log('ECharts is not Loaded');
return;
}
var colorPalette = [
'#2ec7c9','#b6a2de','#5ab1ef','#ffb980','#d87a80',
'#8d98b3','#e5cf0d','#97b552','#95706d','#dc69aa',
'#07a2a4','#9a7fd1','#588dd5','#f5994e','#c05050',
'#59678c','#c9ab00','#7eb00a','#6f5553','#c14089'
];
var theme = {
color: colorPalette,
title: {
textStyle: {
fontWeight: 'normal',
color: '#008acd'
}
},
visualMap: {
itemWidth: 15,
color: ['#5ab1ef','#e0ffff']
},
toolbox: {
iconStyle: {
normal: {
borderColor: colorPalette[0]
}
}
},
tooltip: {
backgroundColor: 'rgba(50,50,50,0.5)',
axisPointer : {
type : 'line',
lineStyle : {
color: '#008acd'
},
crossStyle: {
color: '#008acd'
},
shadowStyle : {
color: 'rgba(200,200,200,0.2)'
}
}
},
dataZoom: {
dataBackgroundColor: '#efefff',
fillerColor: 'rgba(182,162,222,0.2)',
handleColor: '#008acd'
},
grid: {
borderColor: '#eee'
},
categoryAxis: {
axisLine: {
lineStyle: {
color: '#008acd'
}
},
splitLine: {
lineStyle: {
color: ['#eee']
}
}
},
valueAxis: {
axisLine: {
lineStyle: {
color: '#008acd'
}
},
splitArea : {
show : true,
areaStyle : {
color: ['rgba(250,250,250,0.1)','rgba(200,200,200,0.1)']
}
},
splitLine: {
lineStyle: {
color: ['#eee']
}
}
},
timeline : {
lineStyle : {
color : '#008acd'
},
controlStyle : {
normal : { color : '#008acd'},
emphasis : { color : '#008acd'}
},
symbol : 'emptyCircle',
symbolSize : 3
},
line: {
smooth : true,
symbol: 'emptyCircle',
symbolSize: 3
},
candlestick: {
itemStyle: {
normal: {
color: '#d87a80',
color0: '#2ec7c9',
lineStyle: {
color: '#d87a80',
color0: '#2ec7c9'
}
}
}
},
scatter: {
symbol: 'circle',
symbolSize: 4
},
map: {
label: {
normal: {
textStyle: {
color: '#d87a80'
}
}
},
itemStyle: {
normal: {
borderColor: '#eee',
areaColor: '#ddd'
},
emphasis: {
areaColor: '#fe994e'
}
}
},
graph: {
color: colorPalette
},
gauge : {
axisLine: {
lineStyle: {
color: [[0.2, '#2ec7c9'],[0.8, '#5ab1ef'],[1, '#d87a80']],
width: 10
}
},
axisTick: {
splitNumber: 10,
length :15,
lineStyle: {
color: 'auto'
}
},
splitLine: {
length :22,
lineStyle: {
color: 'auto'
}
},
pointer : {
width : 5
}
}
};
echarts.registerTheme('macarons', theme);
}));

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

Loading…
Cancel
Save