初始化项目

This commit is contained in:
qqkj
2020-12-14 23:02:25 +08:00
parent c97cf5deb4
commit 5042f1611d
1153 changed files with 105584 additions and 0 deletions

12
.babelrc Normal file
View File

@@ -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 Normal file
View File

@@ -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

8
.eslintignore Normal file
View File

@@ -0,0 +1,8 @@
build/*.js
config/*.js
src/assets
/node_modules/
/static/
/zTree_v3/
/*.js/
/dist/

199
.eslintrc.js Normal file
View File

@@ -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']
}
}

10
.postcssrc.js Normal file
View File

@@ -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 Normal file
View File

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

21
LICENSE Normal file
View File

@@ -0,0 +1,21 @@
MIT License
Copyright (c) 2018-present chenyc
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.

168
README.zh-CN.md Normal file
View File

@@ -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 Normal file
View File

@@ -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 Normal file
View File

@@ -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 Normal file
View File

@@ -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 Normal file
View File

@@ -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 Normal file
View File

@@ -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 Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

102
build/utils.js Normal file
View File

@@ -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')
})
}
}

23
build/vue-loader.conf.js Normal file
View File

@@ -0,0 +1,23 @@
'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'
},
hotReload: false
}

102
build/webpack.base.conf.js Normal file
View File

@@ -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 Normal file
View File

@@ -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)
}
})
})

181
build/webpack.prod.conf.js Normal file
View File

@@ -0,0 +1,181 @@
'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,
cache: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

7
config/dev.env.js Normal file
View File

@@ -0,0 +1,7 @@
module.exports = {
NODE_ENV: '"development"',
ENV_CONFIG: '"dev"',//环境版本号 如npm run build:${ENV_CONFIG},建议与spring.profiles.active=${ENV_CONFIG}一一对应
VERSION: '"m1"',//产品版本号nginx中通过此版本号导航到不同的静态资源目录请求路径中用法如下静态页面url=${DOMAIN}/${CONTEXT}/${VERSION}/#/{router.path}?${queryString}
CONTEXT:'"xm"',//对应spring中的server.context-path
BASE_API: '"api"'//api访问的统一入口,最后形成的apiUrl=${BASE_API}/${VERSION}/${spring.application.name}/${CONTEXT}/${ctrlUrl}
}

108
config/index.js Normal file
View File

@@ -0,0 +1,108 @@
'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: {
/**
'/api/m1/xm': {
target: 'http://localhost:7067',
changeOrigin: true,
pathRewrite: {
'^/api/m1/xm': '/xm'
}
},
'/api/m1/workflow': {
target: 'http://localhost:7080',
changeOrigin: true,
pathRewrite: {
'^/api/m1/workflow': '/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: 8067, // 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
}
}

7
config/m1prod.env.js Normal file
View File

@@ -0,0 +1,7 @@
module.exports = {
NODE_ENV: '"production"',
ENV_CONFIG: '"m1prod"',//环境版本号 如npm run build:${ENV_CONFIG},建议与spring.profiles.active=${ENV_CONFIG}一一对应
VERSION: '"m1"',//产品版本号nginx中通过此版本号导航到不同的静态资源目录请求路径中用法如下静态页面url=${DOMAIN}/${CONTEXT}/${VERSION}/#/{router.path}?${queryString}
CONTEXT:'"xm"',//对应spring中的server.context-path
BASE_API: '"api"'//api访问的统一入口,最后形成的apiUrl=${BASE_API}/${VERSION}/${spring.application.name}/${CONTEXT}/${ctrlUrl}
}

5
config/prod.env.js Normal file
View File

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

5
config/sit.env.js Normal file
View File

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

34
copy/copy.js Normal file
View File

@@ -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 Normal file
View File

@@ -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','../oa-starter/src/main/resources/static');

BIN
favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

14
index.html Normal file
View File

@@ -0,0 +1,14 @@
<!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>项目管理系统</title>
</head>
<body>
<div id="app"></div>
<!-- built files will be auto injected -->
</body>
</html>

128
package.json Normal file
View File

@@ -0,0 +1,128 @@
{
"name": "xm-ui-web",
"version": "1.0.0",
"description": "xm-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": {
"@jiaminghi/data-view": "^2.10.0",
"axios": "0.17.1",
"clipboard": "1.7.1",
"codemirror": "5.32.0",
"dayjs": "^1.8.29",
"decimal.js": "^10.2.0",
"dropzone": "5.2.0",
"echarts": "^3.8.5",
"element-ui": "^2.13.0",
"file-saver": "^2.0.1",
"font-awesome": "4.7.0",
"gantt-elastic": "^1.0.11",
"gantt-elastic-header": "^0.1.11",
"highlight.js": "^9.12.0",
"html2canvas": "^1.0.0-alpha.9",
"i": "^0.3.6",
"js-cookie": "2.2.0",
"js-md5": "^0.7.3",
"jsonlint": "1.6.2",
"jszip": "3.2.1",
"less": "^3.12.2",
"less-loader": "^4.1.0",
"mockjs": "1.0.1-beta3",
"moment": "^2.24.0",
"normalize.css": "7.0.0",
"nprogress": "0.2.0",
"object-assign": "^4.1.1",
"qrcodejs2": "0.0.2",
"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-contextmenujs": "^1.3.10",
"vue-count-to": "1.0.13",
"vue-cropper": "^0.2.9",
"vue-gantt-schedule-timeline-calendar": "^1.0.33",
"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",
"wl-gantt": "^1.0.4",
"xlsx": "^0.14.5"
},
"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"
]
}

12
src/App.vue Normal file
View File

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

40
src/api/article.js Normal file
View File

@@ -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 Normal file
View File

@@ -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); };

125
src/api/itemOption.js Normal file
View File

@@ -0,0 +1,125 @@
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 => {
var date=new Date();
var dateStr=date.getFullYear()+"-"+date.getMonth()+"-"+date.getDay()
var result={
data:{
tips:{
isOk:true,
},
data:{
}
}
}
var noExistsParams=params.filter(i=>{
var key=i.categoryId+"-"+i.itemCode+"-"+dateStr;
var options = localStorage.getItem(key);
if(options){
result.data.data[i.itemCode]=JSON.parse(options)
return false
}return true;
});
return new Promise((resolve,reject) => {
if(noExistsParams.length>0){
axios.post(`${base}/mdp/common/itemOption/list/byItemCode`, noExistsParams ).then(res=>{
var tips = res.data.tips;
if(tips.isOk){
var data=res.data.data;
noExistsParams.forEach(k=>{
var key=k.categoryId+"-"+k.itemCode+"-"+dateStr;
localStorage.setItem(key, JSON.stringify(data[k.itemCode]));
result.data.data[k.itemCode]= data[k.itemCode]
})
}else{
result.data.tips=tips;
}
resolve(result);
}).catch(e=>reject(e));
}else{
resolve(result);
}
});
};
export const listOptionByItemIds = params => {
var date=new Date();
var dateStr=date.getFullYear()+"-"+date.getMonth()+"-"+date.getDay()
var result={
data:{
tips:{
isOk:true,
},
data:{
}
}
}
var noExistsParams=params.filter(i=>{
var key=i+"-"+dateStr;
var options = localStorage.getItem(key);
if(options){
var optionsJson=JSON.parse(options);
result.data.data[i]=optionsJson
return false
}return true;
});
return new Promise((resolve,reject) => {
if(noExistsParams.length>0){
axios.post(`${base}/mdp/common/itemOption/listItemOptionByItemIds`, noExistsParams ).then(res=>{
var tips = res.data.tips;
if(tips.isOk){
var data=res.data.data;
noExistsParams.forEach(k=>{
var key= k+"-"+dateStr;
localStorage.setItem(key, JSON.stringify(data[k]));
result.data.data[k]= data[k]
})
}else{
result.data.tips=tips;
}
resolve(result);
}).catch(e=>reject(e));
}else{
resolve(result);
}
});
};
//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); };

55
src/api/login.js Normal file
View File

@@ -0,0 +1,55 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base=config.getSysBasePath();
export function loginByUsername(username, password) {
const data = {
displayUserid: username,
password: password,
loginType:'password'
}
return axios({
url: base+'/common/login',
method: 'post',
data
})
}
export function loginByPhoneno(phoneno, smsCode,isAdmin) {
const data = {
phoneno: phoneno,
smsCode: smsCode,
loginType:'sms',
isAdmin:true
}
return axios({
url: base+'/common/login',
method: 'post',
data
})
}
export function logout() {
/**
return axios({
url: base+'/logout',
method: 'post'
})
*/
}
export function getUserInfo(params) {
return axios({
url: base+'/sys/pub/login/user/info/all',
method: 'get',
params: params
})
}
export function createShortToken(params) {
return axios.post( base+'/sys/pub/login/createShortToken', params )
}
export function switchDept(params) {
return axios.post( base+'/sys/pub/login/user/switch', params )
}

View File

@@ -0,0 +1,46 @@
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:'主键 主键',tagNames:'标签名多个,分割',deptid:'创建部门',userid:'创建人',isShare:'是否共享',url:'访问路径',archiveAbstract:'摘要',archiveContext:'内容',archiveTitle:'标题',archivingUserid:'归档人',isFromArchiving:'是否来自归档',archivingDate:'归档日期',createDate:'创建日期',authorUserid:'作者编号',authorName:'作者名称',canDel:'是否可删除',canEdit:'是否可修改',canRead:'是否可读',bizKey:'业务编号',encryptType:'加密方式0不加密1私钥2公钥',canComment:'开放评论',status:'0草稿1发布2取消发布',isStorageDir:'是否存到硬盘',branchId:'机构编号'}
**/
//普通查询 条件之间and关系
export const listArchive = params => { return axios.get(`${base}/mdp/arc/archive/list`, { params: params }); };
export const getOneArchive = params => { return axios.get(`${base}/mdp/arc/archive/one`, { params: params }); };
//模糊查询档案信息表 条件之间or关系
//export const listArchiveKey = params => { return axios.get(`${base}/mdp/arc/archive/listKey`, { params: params }); };
//删除一条档案信息表 params={id:'主键 主键'}
export const delArchive = params => { return axios.post(`${base}/mdp/arc/archive/del`,params); };
//批量删除档案信息表 params=[{id:'主键 主键'}]
export const batchDelArchive = params => { return axios.post(`${base}/mdp/arc/archive/batchDel`, params); };
//修改一条档案信息表记录
export const editArchive = params => { return axios.post(`${base}/mdp/arc/archive/edit`, params); };
//新增一条档案信息表
export const addArchive = params => { return axios.post(`${base}/mdp/arc/archive/add`, params); };
//打开评论
export const openComment = params => { return axios.post(`${base}/mdp/arc/archive/comment/open`, params); };
//关闭评论
export const closeComment = params => { return axios.post(`${base}/mdp/arc/archive/comment/close`, params); };
//发布
export const publish = params => { return axios.post(`${base}/mdp/arc/archive/publish`, params); };
//取消发布
export const unPublish = params => { return axios.post(`${base}/mdp/arc/archive/unpublish`, params); };
//新增一个
export const addWorkflowArchive = params => { return axios.post(`${base}/mdp/arc/archive/add/workflow`, params); };

View File

@@ -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); };

View File

@@ -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 Normal file
View File

@@ -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); };

View File

@@ -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 Normal file
View File

@@ -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); };

View File

@@ -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); };

View File

@@ -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); };

View File

@@ -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); };

View File

@@ -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); };

View File

@@ -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); };

View File

@@ -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); };

View File

@@ -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); };

View File

@@ -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); };

View File

@@ -0,0 +1,36 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getImBasePath();
/**
* 群组定义
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'群组主键 主键',groupName:'组名',categoryId:'组类别',cuserid:'创建人编号',cusername:'创建人姓名',cdate:'创建日期',bizStatus:'业务状态0已提出1咨询中2已结束',gstatus:'群状态0初始1有效2已解散3全体禁言',resStatus:'响应状态I正在响应S退出响应O超时未响应F结束响应',locationId:'门店编号',shopId:'商户编号',branchId:'归属机构号',onlineUsers:'在线人数',deptid:'归属部门',allowJoin:'是否允许加入0不允许1允许',needAudit:'是否需要审核0不需要1需要',headimgurl:'群头像地址',allowSpeechTime:'下次允许发言时间',isPrichat:'是否为私聊群0否1是两人人对话有第三人加入自动升级为普通群'}
**/
//普通查询 条件之间and关系
export const listImGroup = params => { return axios.get(`${base}/mdp/im/group/imGroup/list`, { params: params }); };
//查询我所在的群组
export const listMyChannelGroups = params => { return axios.get(`${base}/mdp/im/group/imGroup/listMyChannelGroups`, { params: params }); };
/**查询一个组及其所有成员 */
export const queryGroupAndUsers = params => { return axios.get(`${base}/mdp/im/group/imGroup/queryGroupAndUsers`, { params: params }); };
//模糊查询群组定义 条件之间or关系
//export const listImGroupKey = params => { return axios.get(`${base}/mdp/im/group/imGroup/listKey`, { params: params }); };
//删除一条群组定义 params={id:'群组主键 主键'}
export const delImGroup = params => { return axios.post(`${base}/mdp/im/group/imGroup/del`,params); };
//批量删除群组定义 params=[{id:'群组主键 主键'}]
export const batchDelImGroup = params => { return axios.post(`${base}/mdp/im/group/imGroup/batchDel`, params); };
//修改一条群组定义记录
export const editImGroup = params => { return axios.post(`${base}/mdp/im/group/imGroup/edit`, params); };
//新增一条群组定义
export const addImGroup = params => { return axios.post(`${base}/mdp/im/group/imGroup/add`, params); };

7
src/api/mdp/im/imPush.js Normal file
View File

@@ -0,0 +1,7 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getImBasePath();
export const publishMessage = params => { return axios.post(`${base}/mdp/im/push/publishMessage`, params); };

View File

@@ -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 Normal file
View File

@@ -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); };

View File

@@ -0,0 +1,127 @@
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 => {
var date=new Date();
var dateStr=date.getFullYear()+"-"+date.getMonth()+"-"+date.getDay()
var result={
data:{
tips:{
isOk:true,
},
data:{
}
}
}
var noExistsParams=params.filter(i=>{
var key=i.categoryId+"-"+i.itemCode+"-"+dateStr;
var options = localStorage.getItem(key);
if(options){
result.data.data[i.itemCode]=JSON.parse(options)
return false
}return true;
});
return new Promise((resolve,reject) => {
if(noExistsParams.length>0){
axios.post(`${base}/mdp/common/itemOption/list/byItemCode`, noExistsParams ).then(res=>{
var tips = res.data.tips;
if(tips.isOk){
var data=res.data.data;
noExistsParams.forEach(k=>{
var key=k.categoryId+"-"+k.itemCode+"-"+dateStr;
localStorage.setItem(key, JSON.stringify(data[k.itemCode]));
result.data.data[k.itemCode]= data[k.itemCode]
})
}else{
result.data.tips=tips;
}
resolve(result);
}).catch(e=>reject(e));
}else{
resolve(result);
}
});
};
export const listOptionByItemIds = params => {
var date=new Date();
var dateStr=date.getFullYear()+"-"+date.getMonth()+"-"+date.getDay()
var result={
data:{
tips:{
isOk:true,
},
data:{
}
}
}
var noExistsParams=params.filter(i=>{
var key=i+"-"+dateStr;
var options = localStorage.getItem(key);
if(options){
var optionsJson=JSON.parse(options);
result.data.data[i]=optionsJson
return false
}return true;
});
return new Promise((resolve,reject) => {
if(noExistsParams.length>0){
axios.post(`${base}/mdp/common/itemOption/listItemOptionByItemIds`, noExistsParams ).then(res=>{
var tips = res.data.tips;
if(tips.isOk){
var data=res.data.data;
noExistsParams.forEach(k=>{
var key= k+"-"+dateStr;
localStorage.setItem(key, JSON.stringify(data[k]));
result.data.data[k]= data[k]
})
}else{
result.data.tips=tips;
}
resolve(result);
}).catch(e=>reject(e));
}else{
resolve(result);
}
});
};
//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); };
//刷新缓存
export const refresh = params => { return axios.post(`${base}/mdp/common/itemOption/refresh`, params); };

View File

@@ -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); };

View File

@@ -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 Normal file
View File

@@ -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); };

28
src/api/mdp/sys/dept.js Normal file
View File

@@ -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); };

View File

@@ -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:'主键 主键',deptid:'部门编号',postId:'岗位编号',ldate:'最后更新时间'}
**/
//普通查询 条件之间and关系
export const listDeptPost = params => { return axios.get(`${base}/mdp/sys/post/deptPost/list`, { params: params }); };
//模糊查询部门岗位关系表 条件之间or关系
//export const listDeptPostKey = params => { return axios.get(`${base}/mdp/sys/post/deptPost/listKey`, { params: params }); };
//删除一条部门岗位关系表 params={id:'主键 主键'}
export const delDeptPost = params => { return axios.post(`${base}/mdp/sys/post/deptPost/del`,params); };
//批量删除部门岗位关系表 params=[{id:'主键 主键'}]
export const batchDelDeptPost = params => { return axios.post(`${base}/mdp/sys/post/deptPost/batchDel`, params); };
//批量添加岗位到部门
export const batchAddDeptPost = params => { return axios.post(`${base}/mdp/sys/post/deptPost/batchAdd`, params); };
//修改一条部门岗位关系表记录
export const editDeptPost = params => { return axios.post(`${base}/mdp/sys/post/deptPost/edit`, params); };
//新增一条部门岗位关系表
export const addDeptPost = params => { return axios.post(`${base}/mdp/sys/post/deptPost/add`, params); };

View File

@@ -0,0 +1,40 @@
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:'主键 主键',postId:'岗位编号',deptid:'部门编号',userid:'用户编号',startDate:'开始任职时间',endDate:'结束任职时间',actEndDate:'实际结束任职时间',enabled:'状态0-无效1-有效',lastDate:'最后更新时间'}
**/
//普通查询 条件之间and关系
export const listDeptPostUser = params => { return axios.get(`${base}/mdp/sys/post/deptPostUser/list`, { params: params }); };
//普通查询 条件之间and关系
export const listDeptPostUserWithDeptPosts = params => { return axios.get(`${base}/mdp/sys/post/deptPostUser/list/withDeptPosts`, { params: params }); };
//人员岗位菜单快捷查询
export const listDeptPostUserMenus = params => { return axios.get(`${base}/mdp/sys/post/deptPostUser/list/menus`, { params: params }); };
//人员岗位角色快捷查询
export const listDeptPostUserRoles = params => { return axios.get(`${base}/mdp/sys/post/deptPostUser/list/roles`, { params: params }); };
//模糊查询部门岗位用户关系表(根据部门岗位关系,岗位用户关系自动冗余) 条件之间or关系
//export const listDeptPostUserKey = params => { return axios.get(`${base}/mdp/sys/post/deptPostUser/listKey`, { params: params }); };
//删除一条部门岗位用户关系表(根据部门岗位关系,岗位用户关系自动冗余) params={id:'主键 主键'}
export const delDeptPostUser = params => { return axios.post(`${base}/mdp/sys/post/deptPostUser/del`,params); };
//批量删除部门岗位用户关系表(根据部门岗位关系,岗位用户关系自动冗余) params=[{id:'主键 主键'}]
export const batchDelDeptPostUser = params => { return axios.post(`${base}/mdp/sys/post/deptPostUser/batchDel`, params); };
//修改一条部门岗位用户关系表(根据部门岗位关系,岗位用户关系自动冗余)记录
export const editDeptPostUser = params => { return axios.post(`${base}/mdp/sys/post/deptPostUser/edit`, params); };
//新增一条部门岗位用户关系表(根据部门岗位关系,岗位用户关系自动冗余)
export const addDeptPostUser = params => { return axios.post(`${base}/mdp/sys/post/deptPostUser/add`, params); };

View File

@@ -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); };

29
src/api/mdp/sys/role.js Normal file
View File

@@ -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); };

33
src/api/mdp/sys/user.js Normal file
View File

@@ -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); };

View File

@@ -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:'主键 主键',userid:'用户编号',deptid:'部门编号',enabled:'是否启用',seq:'顺序号',branchId:'云机构编号'}
**/
//普通查询 条件之间and关系
export const listUserDept = params => { return axios.get(`${base}/mdp/sys/userDept/list`, { params: params }); };
//模糊查询用户部门关系表 条件之间or关系
//export const listUserDeptKey = params => { return axios.get(`${base}/mdp/sys/userDept/listKey`, { params: params }); };
//删除一条用户部门关系表 params={id:'主键 主键'}
export const delUserDept = params => { return axios.post(`${base}/mdp/sys/userDept/del`,params); };
//批量删除用户部门关系表 params=[{id:'主键 主键'}]
export const batchDelUserDept = params => { return axios.post(`${base}/mdp/sys/userDept/batchDel`, params); };
//批量删除用户部门关系表 params={branchId:'',userid:'',dpetids:[]}
export const batchEditUserDept = params => { return axios.post(`${base}/mdp/sys/userDept/batchEdit`, params); };
//修改一条用户部门关系表记录
export const editUserDept = params => { return axios.post(`${base}/mdp/sys/userDept/edit`, params); };
//新增一条用户部门关系表
export const addUserDept = params => { return axios.post(`${base}/mdp/sys/userDept/add`, params); };

View File

@@ -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); };

View File

@@ -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); };

View File

@@ -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); };

View File

@@ -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); };

View File

@@ -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); };

View File

@@ -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); };

View File

@@ -0,0 +1,32 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getWorkflowBasePath();
/**
* mdp_re_procdef_node_info
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'主键 主键',actId:'节点编号',actName:'流程节点名称',procDefId:'流程定义编号',isMultiple:'是否多选',branchId:'云用户机构编号',showNextAssignees:'是否默认打开手选下一步执行人',candidate:'是否候选',candidateType:'候选类型user/group/post/complex用户/部门/岗位/综合',instanceCount:'多实例个数',groupIds:'候选组编号列表以逗号分隔如部门_dept_deptid1,_dept_deptid2,_post_postid1,_post_postid2',qxCode:'权限码',outUrl:'跳转链接及参数使用普通的url进行内置${userid}当前用,${startUserid}流程启动人,${deptid}流程启动部门,${procDefId}流程定义编号,${procInstId}流程实例编号,${taskId}流程任务编号,${actId}流程节点编号,${taskName}为任务名称,${mainTitle}为流程名称',formFieldsJson:'表单字段定义存为json',submitName:'提交按钮名字',formId:'表单编号',addTime:'新增时间',lastUpdateTime:'最后更新时间'}
**/
//普通查询 条件之间and关系
export const listProcdefNodeInfo = params => { return axios.get(`${base}/mdp/workflow/re/procdefNodeInfo/list`, { params: params }); };
//模糊查询mdp_re_procdef_node_info 条件之间or关系
//export const listProcdefNodeInfoKey = params => { return axios.get(`${base}/mdp/workflow/re/procdefNodeInfo/listKey`, { params: params }); };
//删除一条mdp_re_procdef_node_info params={id:'主键 主键'}
export const delProcdefNodeInfo = params => { return axios.post(`${base}/mdp/workflow/re/procdefNodeInfo/del`,params); };
//批量删除mdp_re_procdef_node_info params=[{id:'主键 主键'}]
export const batchDelProcdefNodeInfo = params => { return axios.post(`${base}/mdp/workflow/re/procdefNodeInfo/batchDel`, params); };
//修改一条mdp_re_procdef_node_info记录
export const editProcdefNodeInfo = params => { return axios.post(`${base}/mdp/workflow/re/procdefNodeInfo/edit`, params); };
//新增一条mdp_re_procdef_node_info
export const addProcdefNodeInfo = params => { return axios.post(`${base}/mdp/workflow/re/procdefNodeInfo/add`, params); };
export const getBpmnActAssignees = params => { return axios.get(`${base}/mdp/workflow/re/procdefNodeInfo/getBpmnActAssignees`, { params: params }); };

View File

@@ -0,0 +1,30 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getWorkflowBasePath();
/**
* mdp_re_procdef_node_user
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'主键 主键',nodeId:'node_info中的id',userid:'用户编号',username:'用户名称',ctime:'新增时间'}
**/
//普通查询 条件之间and关系
export const listProcdefNodeUser = params => { return axios.get(`${base}/mdp/workflow/re/procdefNodeUser/list`, { params: params }); };
//模糊查询mdp_re_procdef_node_user 条件之间or关系
//export const listProcdefNodeUserKey = params => { return axios.get(`${base}/mdp/workflow/re/procdefNodeUser/listKey`, { params: params }); };
//删除一条mdp_re_procdef_node_user params={id:'主键 主键'}
export const delProcdefNodeUser = params => { return axios.post(`${base}/mdp/workflow/re/procdefNodeUser/del`,params); };
//批量删除mdp_re_procdef_node_user params=[{id:'主键 主键'}]
export const batchDelProcdefNodeUser = params => { return axios.post(`${base}/mdp/workflow/re/procdefNodeUser/batchDel`, params); };
//修改一条mdp_re_procdef_node_user记录
export const editProcdefNodeUser = params => { return axios.post(`${base}/mdp/workflow/re/procdefNodeUser/edit`, params); };
//新增一条mdp_re_procdef_node_user
export const addProcdefNodeUser = params => { return axios.post(`${base}/mdp/workflow/re/procdefNodeUser/add`, params); };

View File

@@ -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); };

View File

@@ -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); };

View File

@@ -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); };

View File

@@ -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); };

View File

@@ -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); };

View File

@@ -0,0 +1,33 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getWorkflowBasePath();
/**
* mdp_ru_procinst_node_info
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'主键 主键',actId:'节点编号',actName:'流程节点名称',procDefId:'流程定义编号',isMultiple:'是否多选',branchId:'云用户机构编号',showNextAssignees:'是否默认打开手选下一步执行人',candidate:'是否候选',candidateType:'候选类型user/group/post/complex用户/部门/岗位/综合',instanceCount:'多实例个数',groupIds:'候选组编号列表以逗号分隔如部门_dept_deptid1,_dept_deptid2,_post_postid1,_post_postid2',qxCode:'权限码',outUrl:'跳转链接及参数使用普通的url进行内置${userid}当前用,${startUserid}流程启动人,${deptid}流程启动部门,${procDefId}流程定义编号,${procInstId}流程实例编号,${taskId}流程任务编号,${actId}流程节点编号,${taskName}为任务名称,${mainTitle}为流程名称',procInstId:'实例编号',formFieldsJson:'表单字段定义存为json',submitName:'提交按钮名字',formId:'表单编号',addTime:'新增时间',lastUpdateTime:'最后更新时间'}
**/
//普通查询 条件之间and关系
export const listProcinstNodeInfo = params => { return axios.get(`${base}/mdp/workflow/ru/procinstNodeInfo/list`, { params: params }); };
//模糊查询mdp_ru_procinst_node_info 条件之间or关系
//export const listProcinstNodeInfoKey = params => { return axios.get(`${base}/mdp/workflow/ru/procinstNodeInfo/listKey`, { params: params }); };
//删除一条mdp_ru_procinst_node_info params={id:'主键 主键'}
export const delProcinstNodeInfo = params => { return axios.post(`${base}/mdp/workflow/ru/procinstNodeInfo/del`,params); };
//批量删除mdp_ru_procinst_node_info params=[{id:'主键 主键'}]
export const batchDelProcinstNodeInfo = params => { return axios.post(`${base}/mdp/workflow/ru/procinstNodeInfo/batchDel`, params); };
//修改一条mdp_ru_procinst_node_info记录
export const editProcinstNodeInfo = params => { return axios.post(`${base}/mdp/workflow/ru/procinstNodeInfo/edit`, params); };
//新增一条mdp_ru_procinst_node_info
export const addProcinstNodeInfo = params => { return axios.post(`${base}/mdp/workflow/ru/procinstNodeInfo/add`, params); };
export const getNodeInfos = params => { return axios.get(`${base}/mdp/workflow/ru/procinstNodeInfo/getNodeInfos`, { params: params }); };

View File

@@ -0,0 +1,30 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getWorkflowBasePath();
/**
* mdp_ru_procinst_node_user
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'主键 主键',nodeId:'node_info中的id',userid:'用户编号',username:'用户名称',ctime:'新增时间'}
**/
//普通查询 条件之间and关系
export const listProcinstNodeUser = params => { return axios.get(`${base}/mdp/workflow/ru/procinstNodeUser/list`, { params: params }); };
//模糊查询mdp_ru_procinst_node_user 条件之间or关系
//export const listProcinstNodeUserKey = params => { return axios.get(`${base}/mdp/workflow/ru/procinstNodeUser/listKey`, { params: params }); };
//删除一条mdp_ru_procinst_node_user params={id:'主键 主键'}
export const delProcinstNodeUser = params => { return axios.post(`${base}/mdp/workflow/ru/procinstNodeUser/del`,params); };
//批量删除mdp_ru_procinst_node_user params=[{id:'主键 主键'}]
export const batchDelProcinstNodeUser = params => { return axios.post(`${base}/mdp/workflow/ru/procinstNodeUser/batchDel`, params); };
//修改一条mdp_ru_procinst_node_user记录
export const editProcinstNodeUser = params => { return axios.post(`${base}/mdp/workflow/ru/procinstNodeUser/edit`, params); };
//新增一条mdp_ru_procinst_node_user
export const addProcinstNodeUser = params => { return axios.post(`${base}/mdp/workflow/ru/procinstNodeUser/add`, params); };

View File

@@ -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); };

View File

@@ -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); };

View File

@@ -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 Normal file
View File

@@ -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 Normal file
View File

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

9
src/api/transaction.js Normal file
View File

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

View File

@@ -0,0 +1,34 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getOaBasePath();
/**
* hr_skill
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'技能编号 主键',skillName:'技能名',branchId:'机构号',categoryId:'技能分组',isPub:'是否公共0否1是',skillRemarks:'技能描述'}
**/
//普通查询 条件之间and关系
export const listHrSkill = params => { return axios.get(`${base}/oa/hr/skill/hrSkill/list`, { params: params }); };
//模糊查询hr_skill 条件之间or关系
//export const listHrSkillKey = params => { return axios.get(`${base}/oa/hr.skill/hrSkill/listKey`, { params: params }); };
//删除一条hr_skill params={id:'技能编号 主键'}
export const delHrSkill = params => { return axios.post(`${base}/oa/hr/skill/hrSkill/del`,params); };
//批量删除hr_skill params=[{id:'技能编号 主键'}]
export const batchDelHrSkill = params => { return axios.post(`${base}/oa/hr/skill/hrSkill/batchDel`, params); };
//修改一条hr_skill记录
export const editHrSkill = params => { return axios.post(`${base}/oa/hr/skill/hrSkill/edit`, params); };
//新增一条hr_skill
export const addHrSkill = params => { return axios.post(`${base}/oa/hr/skill/hrSkill/add`, params); };
export const getAllHrSkill = params => { return axios.get(`${base}/oa/hr/skill/hrSkill/getAllHrSkill`, { params: params }); };
export const delHrSkillCategory= params => { return axios.post(`${base}/oa/hr/skill/hrSkill/delHrSkillCategory`, params); };

View File

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

36
src/api/xm/core/tag.js Normal file
View File

@@ -0,0 +1,36 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getCoreBasePath();
/**
* 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}/xm/core/xmGroup/list`, { params: params }); };
//模糊查询arc_tag 条件之间or关系
//export const listTagKey = params => { return axios.get(`${base}/xm/core/xmAttachment/listKey`, { params: params }); };
//删除一条arc_tag params={id:'标签编号 主键'}
export const delTag = params => { return axios.post(`${base}/xm/core/xmAttachment/del`,params); };
//批量删除arc_tag params=[{id:'标签编号 主键'}]
export const batchDelTag = params => { return axios.post(`${base}/xm/core/xmAttachment/batchDel`, params); };
//修改一条arc_tag记录
export const editTag = params => { return axios.post(`${base}/xm/core/xmAttachment/edit`, params); };
//新增一条arc_tag
export const addTag = params => { return axios.post(`${base}/xm/core/xmAttachment/add`, params); };
export const getAllTag = params => { return axios.get(`${base}/xm/core/xmAttachment/getAllTag`, { params: params }); };
//新增一条arc_tag
export const deleteTagCategory= params => { return axios.post(`${base}/xm/core/xmAttachment/deleteTagCategory`, params); };

View File

@@ -0,0 +1,30 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getCoreBasePath();
/**
* xm_attachment
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'主键 主键',originType:'附件来源类型0任务1问题2文档',originId:'来源id',name:'附件名字',addr:'附件地址',type:'附件类型',remark:'备注说明'}
**/
//普通查询 条件之间and关系
export const listXmAttachment = params => { return axios.get(`${base}/xm/core/xmAttachment/list`, { params: params }); };
//模糊查询xm_attachment 条件之间or关系
//export const listXmAttachmentKey = params => { return axios.get(`${base}/xm/core/xmAttachment/listKey`, { params: params }); };
//删除一条xm_attachment params={id:'主键 主键'}
export const delXmAttachment = params => { return axios.post(`${base}/xm/core/xmAttachment/del`,params); };
//批量删除xm_attachment params=[{id:'主键 主键'}]
export const batchDelXmAttachment = params => { return axios.post(`${base}/xm/core/xmAttachment/batchDel`, params); };
//修改一条xm_attachment记录
export const editXmAttachment = params => { return axios.post(`${base}/xm/core/xmAttachment/edit`, params); };
//新增一条xm_attachment
export const addXmAttachment = params => { return axios.post(`${base}/xm/core/xmAttachment/add`, params); };

View File

@@ -0,0 +1,33 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getCoreBasePath();
/**
* 机构内所有项目指标汇总
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'主键 主键',bizDate:'统计日期yyyy-mm-dd类型',totalFileCnt:'文件数据',totalBugCnt:'bug数目',totalTaskCnt:'任务数',totalBudgetNouserAmount:'项目总非人力预算-来自项目表',totalStaffCnt:'总参与人数',calcTime:'统计执行日期',calcStatus:'0-暂时的1稳定的暂时的可以被覆盖稳定的不允许覆盖',totalCostNouserAmount:'项目总非人力成本',totalClosedBugCnt:'已关闭bug总数',totalResolvedBugCnt:'已解决bug总数',totalCompleteTaskCnt:'已完成任务总数-来自任务表',totalPhaseCnt:'项目阶段计划数',totalCompletePhaseCnt:'项目阶段计划已完成数',totalNeedPayAmount:'待付款总金额',totalFinishPayAmount:'已付款总金额',totalNeedColAmount:'待收款总金额',totalFinishColAmount:'已收款总金额',totalCostUserAmount:'项目总人力成本',totalBudgetInnerUserAmount:'项目总内部人力预算-来自项目表',totalPlanWorkload:'项目总预算工作量-来自项目表',totalRiskCnt:'项目风险总数',totalCompleteRiskCnt:'已完成风险总数',branchId:'机构编号',branchName:'机构名称',totalBudgetOutUserAmount:'项目总外购人力预算-来自项目表',totalCompleteWorkload:'已完成工作量-来自计划中实际完成工作量',totalCostInnerUserAmount:'项目总内部人力成本金额',totalCostOutUserAmount:'项目总外购人力成本金额',totalProgress:'项目进度0~100之间来自任务表',totalActiveBugCnt:'激活的bug总数',totalConfirmedBugCnt:'已解决bug总数',projectStatus:'项目状态0-初始1-立项中2-执行中3-已结项4-暂停',totalActWorkload:'实际总工作量,来自任务表',totalActOutWorkload:'实际外购总工作量,来自任务表',totalActInnerWorkload:'实际内部总工作量,来自任务表',totalTaskBudgetCostAt:'已经分配到任务的总预算',totalTaskOutCnt:'外购任务数,来自任务表',totalNeedPayCnt:'待付款笔数',totalFinishPayCnt:'完成付款总比数',totalFinishPayUserCnt:'已付款总人数',totalNeedPayUserCnt:'待付款总人数',totalPlanInnerUserWorkload:'内部人力总工作量-应该大于或等于阶段计划内部人力总成本',totalPlanOutUserWorkload:'外购人力总工作量-应该大于或等于阶段计划外购人力总成本',testCases:'测试案例总数',execCases:'测试中案例总数',designCases:'设计中案例总数',finishCases:'完成案例总数',iterationCnt:'迭代数',productCnt:'产品数',menuCnt:'故事数'}
**/
//普通查询 条件之间and关系
export const listXmBranchState = params => { return axios.get(`${base}/xm/core/xmBranchState/list`, { params: params }); };
//模糊查询机构内所有项目指标汇总 条件之间or关系
//export const listXmBranchStateKey = params => { return axios.get(`${base}/xm/core/xmBranchState/listKey`, { params: params }); };
//删除一条机构内所有项目指标汇总 params={id:'主键 主键'}
export const delXmBranchState = params => { return axios.post(`${base}/xm/core/xmBranchState/del`,params); };
//批量删除机构内所有项目指标汇总 params=[{id:'主键 主键'}]
export const batchDelXmBranchState = params => { return axios.post(`${base}/xm/core/xmBranchState/batchDel`, params); };
//修改一条机构内所有项目指标汇总记录
export const editXmBranchState = params => { return axios.post(`${base}/xm/core/xmBranchState/edit`, params); };
//新增一条机构内所有项目指标汇总
export const addXmBranchState = params => { return axios.post(`${base}/xm/core/xmBranchState/add`, params); };
export const loadProjectStateToXmBranchState = params => { return axios.post(`${base}/xm/core/xmBranchState/loadProjectStateToXmBranchState`,params); };

View File

@@ -0,0 +1,30 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getCoreBasePath();
/**
* 按机构编号任务类型汇总
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'主键 主键',taskType:'任务类型',planWorkload:'工作量',planAmount:'预算金额',actWorkload:'实际完成工作量',actAmount:'实际完成金额',branchId:'机构编号',bizDate:'业务日期yyyy-MM-dd型',calcTime:'计算日期',planOutUserAt:'外购资金预算',planInnerUserAt:'内购资金预算',actOutUserAt:'实际外购成本',actInnerUserAt:'实际内购成本',planOutUserWorkload:'计划外购工作量',planInnerUserWorkload:'计划内购工作量',actOutUserWorkload:'实际外购工作量',actInnerUserWorkload:'实际内购工作量',planNouserAt:'计划非人力成本',actNouserAt:'实际非人力成本',branchName:'机构名称'}
**/
//普通查询 条件之间and关系
export const listXmBranchTaskTypeState = params => { return axios.get(`${base}/xm/core/xmBranchTaskTypeState/list`, { params: params }); };
//模糊查询按机构编号任务类型汇总 条件之间or关系
//export const listXmBranchTaskTypeStateKey = params => { return axios.get(`${base}/xm/core/xmBranchTaskTypeState/listKey`, { params: params }); };
//删除一条按机构编号任务类型汇总 params={id:'主键 主键'}
export const delXmBranchTaskTypeState = params => { return axios.post(`${base}/xm/core/xmBranchTaskTypeState/del`,params); };
//批量删除按机构编号任务类型汇总 params=[{id:'主键 主键'}]
export const batchDelXmBranchTaskTypeState = params => { return axios.post(`${base}/xm/core/xmBranchTaskTypeState/batchDel`, params); };
//修改一条按机构编号任务类型汇总记录
export const editXmBranchTaskTypeState = params => { return axios.post(`${base}/xm/core/xmBranchTaskTypeState/edit`, params); };
//新增一条按机构编号任务类型汇总
export const addXmBranchTaskTypeState = params => { return axios.post(`${base}/xm/core/xmBranchTaskTypeState/add`, params); };

View File

@@ -0,0 +1,30 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getCoreBasePath();
/**
* xm_env_list
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'主键 主键',remark:'备注说明',ipAddress:'内网ip地址',port:'内网访问端口',branchId:'归属机构',accessUserid:'访问用户编号',accessPassword:'访问密码',effect:'作用说明',accessUrl:'访问链接',supplier:'供应商',webIpAddress:'外网ip地址',webPort:'外网端口',otherRemark:'其它说明',createUserid:'添加人员',createUsername:'添加人员姓名',createTime:'添加时间',envState:'状态0不可用1已启用2已过期',startTime:'有效日期开始',endTime:'有效日期结束',feeAmount:'费用',feeRule:'计费规则'}
**/
//普通查询 条件之间and关系
export const listXmEnvList = params => { return axios.get(`${base}/xm/core/xmEnvList/list`, { params: params }); };
//模糊查询xm_env_list 条件之间or关系
//export const listXmEnvListKey = params => { return axios.get(`${base}/xm/core/xmEnvList/listKey`, { params: params }); };
//删除一条xm_env_list params={id:'主键 主键'}
export const delXmEnvList = params => { return axios.post(`${base}/xm/core/xmEnvList/del`,params); };
//批量删除xm_env_list params=[{id:'主键 主键'}]
export const batchDelXmEnvList = params => { return axios.post(`${base}/xm/core/xmEnvList/batchDel`, params); };
//修改一条xm_env_list记录
export const editXmEnvList = params => { return axios.post(`${base}/xm/core/xmEnvList/edit`, params); };
//新增一条xm_env_list
export const addXmEnvList = params => { return axios.post(`${base}/xm/core/xmEnvList/add`, params); };

View File

@@ -0,0 +1,30 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getCoreBasePath();
/**
* 功能表
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'评论编号 主键',taskId:'功能编号',taskName:'功能名称',projectId:'归属产品编号',remark:'备注',pid:'上级评论编号',cuserid:'评论人编号',cusername:'评论人名称',ctime:'评论时间',cbranchId:'评论人所属机构',adopt:'是否采纳0否1采纳',adoptUserid:'采纳人编号',adoptUsername:'采纳人名称',adoptTime:'采纳时间',closed:'关闭该评论0否1是',puserid:'上级用户编号',pusername:'上级姓名',premark:'上级备注',notifyUserids:'本评论需要同步给的人列表,逗号分隔',notifyChannels:'发送通知渠道inner-email/wxpub/sms/im/out-email等逗号分割',notifyUsernames:'通知用户姓名逗号分隔',cuserHeadImg:'发言人头像地址',replyType:'回复方式1引用2回复'}
**/
//普通查询 条件之间and关系
export const listXmExchange = params => { return axios.get(`${base}/xm/core/xmExchange/list`, { params: params }); };
//模糊查询功能表 条件之间or关系
//export const listXmExchangeKey = params => { return axios.get(`${base}/xm/core/xmExchange/listKey`, { params: params }); };
//删除一条功能表 params={id:'评论编号 主键'}
export const delXmExchange = params => { return axios.post(`${base}/xm/core/xmExchange/del`,params); };
//批量删除功能表 params=[{id:'评论编号 主键'}]
export const batchDelXmExchange = params => { return axios.post(`${base}/xm/core/xmExchange/batchDel`, params); };
//修改一条功能表记录
export const editXmExchange = params => { return axios.post(`${base}/xm/core/xmExchange/edit`, params); };
//新增一条功能表
export const addXmExchange = params => { return axios.post(`${base}/xm/core/xmExchange/add`, params); };

30
src/api/xm/core/xmFile.js Normal file
View File

@@ -0,0 +1,30 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getCoreBasePath();
/**
* xm_file
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'文档编号 主键',name:'文件名称',projectId:'项目编号',projectName:'项目名称',description:'文件说明',createUserid:'任务创建人编号',createUsername:'任务创建人',createTime:'创建时间'}
**/
//普通查询 条件之间and关系
export const listXmFile = params => { return axios.get(`${base}/xm/core/xmFile/list`, { params: params }); };
//模糊查询xm_file 条件之间or关系
//export const listXmFileKey = params => { return axios.get(`${base}/xm/core/xmFile/listKey`, { params: params }); };
//删除一条xm_file params={id:'文档编号 主键'}
export const delXmFile = params => { return axios.post(`${base}/xm/core/xmFile/del`,params); };
//批量删除xm_file params=[{id:'文档编号 主键'}]
export const batchDelXmFile = params => { return axios.post(`${base}/xm/core/xmFile/batchDel`, params); };
//修改一条xm_file记录
export const editXmFile = params => { return axios.post(`${base}/xm/core/xmFile/edit`, params); };
//新增一条xm_file
export const addXmFile = params => { return axios.post(`${base}/xm/core/xmFile/add`, params); };

View File

@@ -0,0 +1,35 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getCoreBasePath();
/**
* 迭代定义
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'迭代编码 主键',branchId:'机构编号',iterationName:'迭代名称',startTime:'开始时间',endTime:'结束时间',onlineTime:'上线时间',pid:'上级迭代',adminUserid:'负责人',adminUsername:'负责人姓名',ctime:'创建时间',budgetCost:'预算成本',budgetWorkload:'预算工作量',distBudgetCost:'已分配到任务的预算从任务表汇总而来',distBudgetWorkload:'已分配到任务的预算工作量从任务表汇总而来',actCost:'实际成本从任务表汇总而来',actWorkload:'实际工作量从任务表汇总而来',actStaffNum:'实际投入人员数'}
**/
//普通查询 条件之间and关系
export const listXmIteration = params => { return axios.get(`${base}/xm/core/xmIteration/list`, { params: params }); };
export const listXmIterationWithState = params => { return axios.get(`${base}/xm/core/xmIteration/listWithState`, { params: params }); };
//模糊查询迭代定义 条件之间or关系
//export const listXmIterationKey = params => { return axios.get(`${base}/xm/core/xmIteration/listKey`, { params: params }); };
//删除一条迭代定义 params={id:'迭代编码 主键'}
export const delXmIteration = params => { return axios.post(`${base}/xm/core/xmIteration/del`,params); };
//批量删除迭代定义 params=[{id:'迭代编码 主键'}]
export const batchDelXmIteration = params => { return axios.post(`${base}/xm/core/xmIteration/batchDel`, params); };
//修改一条迭代定义记录
export const editXmIteration = params => { return axios.post(`${base}/xm/core/xmIteration/edit`, params); };
//新增一条迭代定义
export const addXmIteration = params => { return axios.post(`${base}/xm/core/xmIteration/add`, params); };
export const loadTasksToXmIterationState = params => { return axios.post(`${base}/xm/core/xmIteration/loadTasksToXmIterationState`, params); };

View File

@@ -0,0 +1,32 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getCoreBasePath();
/**
* 迭代定义
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'主键 主键',iterationId:'对应的迭代编号',menuId:'故事编号',productId:'产品编号',ctime:'关联时间',relStatus:'关联状态0不再关联1正常关联'}
**/
//普通查询 条件之间and关系
export const listXmIterationMenu = params => { return axios.get(`${base}/xm/core/xmIterationMenu/list`, { params: params }); };
//模糊查询迭代定义 条件之间or关系
//export const listXmIterationMenuKey = params => { return axios.get(`${base}/xm/core/xmIterationMenu/listKey`, { params: params }); };
//删除一条迭代定义 params={id:'主键 主键'}
export const delXmIterationMenu = params => { return axios.post(`${base}/xm/core/xmIterationMenu/del`,params); };
//批量删除迭代定义 params=[{id:'主键 主键'}]
export const batchDelXmIterationMenu = params => { return axios.post(`${base}/xm/core/xmIterationMenu/batchDel`, params); };
//修改一条迭代定义记录
export const editXmIterationMenu = params => { return axios.post(`${base}/xm/core/xmIterationMenu/edit`, params); };
//新增一条迭代定义
export const addXmIterationMenu = params => { return axios.post(`${base}/xm/core/xmIterationMenu/add`, params); };
export const batchAddXmIterationMenu = params => { return axios.post(`${base}/xm/core/xmIterationMenu/batchAdd`, params); };

View File

@@ -0,0 +1,34 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getCoreBasePath();
/**
* 迭代定义
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'迭代编码 主键',distBudgetCost:'已分配到任务的预算从任务表汇总而来',distBudgetWorkload:'已分配到任务的预算工作量从任务表汇总而来',actCost:'实际成本从任务表汇总而来',actWorkload:'实际工作量从任务表汇总而来',actStaffNum:'实际投入人员数',finishRate:'进度',testCases:'测试案例总数',execCases:'测试中案例总数',designCases:'设计中案例总数',finishCases:'完成案例总数',projectCnt:'关联项目数',productCnt:'关联产品数',menuCnt:'关联故事数',taskCnt:'关联任务数',finishTaskCnt:'已完成的任务数',calcTime:'计算日期',iterationName:'迭代名称',budgetCost:'预算成本',budgetWorkload:'预算工作量',iterationId:'迭代编号'}
**/
//普通查询 条件之间and关系
export const listXmIterationState = params => { return axios.get(`${base}/xm/core/xmIterationState/list`, { params: params }); };
//模糊查询迭代定义 条件之间or关系
//export const listXmIterationStateKey = params => { return axios.get(`${base}/xm/core/xmIterationState/listKey`, { params: params }); };
//删除一条迭代定义 params={id:'迭代编码 主键'}
export const delXmIterationState = params => { return axios.post(`${base}/xm/core/xmIterationState/del`,params); };
//批量删除迭代定义 params=[{id:'迭代编码 主键'}]
export const batchDelXmIterationState = params => { return axios.post(`${base}/xm/core/xmIterationState/batchDel`, params); };
//修改一条迭代定义记录
export const editXmIterationState = params => { return axios.post(`${base}/xm/core/xmIterationState/edit`, params); };
//新增一条迭代定义
export const addXmIterationState = params => { return axios.post(`${base}/xm/core/xmIterationState/add`, params); };
export const loadTasksToXmIterationState= params => { return axios.post(`${base}/xm/core/xmIterationState/loadTasksToXmIterationState`, params); };

42
src/api/xm/core/xmMenu.js Normal file
View File

@@ -0,0 +1,42 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getCoreBasePath();
/**
* 功能表
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={menuId:'功能编号 主键',menuName:'功能名称',pmenuId:'上级功能',productId:'归属产品编号',remark:'备注',status:'状态0初始1设计中2开发中3测试中4uat测试2已上线3已下线4已删除',online:'是否已上线',demandUrl:'需求链接',codeUrl:'代码链接',designUrl:'设计链接',docUrl:'文档链接',helpUrl:'帮助文档链接',operDocUrl:'操作手册链接'}
**/
//普通查询 条件之间and关系
export const listXmMenu = params => { return axios.get(`${base}/xm/core/xmMenu/list`, { params: params }); };
//普通查询 条件之间and关系
export const listXmMenuWithPlan = params => { return axios.get(`${base}/xm/core/xmMenu/listWithPlan`, { params: params }); };
export const listXmMenuWithState = params => { return axios.get(`${base}/xm/core/xmMenu/listWithState`, { params: params }); };
//模糊查询功能表 条件之间or关系
//export const listXmMenuKey = params => { return axios.get(`${base}/xm/core/xmMenu/listKey`, { params: params }); };
//删除一条功能表 params={menuId:'功能编号 主键'}
export const delXmMenu = params => { return axios.post(`${base}/xm/core/xmMenu/del`,params); };
//批量删除功能表 params=[{menuId:'功能编号 主键'}]
export const batchDelXmMenu = params => { return axios.post(`${base}/xm/core/xmMenu/batchDel`, params); };
//修改一条功能表记录
export const editXmMenu = params => { return axios.post(`${base}/xm/core/xmMenu/edit`, params); };
//新增一条功能表
export const addXmMenu = params => { return axios.post(`${base}/xm/core/xmMenu/add`, params); };
export const batchAddXmMenu = params => { return axios.post(`${base}/xm/core/xmMenu/batchAdd`, params); };
export const batchEditXmMenu = params => { return axios.post(`${base}/xm/core/xmMenu/batchEdit`, params); };

View File

@@ -0,0 +1,30 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getCoreBasePath();
/**
* 功能表
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'评论编号 主键',menuId:'功能编号',menuName:'功能名称',productId:'归属产品编号',remark:'备注',pid:'上级评论编号',cuserid:'评论人编号',cusername:'评论人名称',ctime:'评论时间',cbranchId:'评论人所属机构',adopt:'是否采纳0否1采纳',adoptUserid:'采纳人编号',adoptUsername:'采纳人名称',adoptTime:'采纳时间',closed:'关闭该评论0否1是',puserid:'上级用户编号',pusername:'上级姓名',premark:'上级备注',notifyUserids:'本评论需要同步给的人列表,逗号分隔',notifyChannels:'发送通知渠道inner-email/wxpub/sms/im/out-email等逗号分割',notifyUsernames:'通知用户姓名逗号分隔',cuserHeadImg:'发言人头像地址',replyType:'回复方式1引用2回复'}
**/
//普通查询 条件之间and关系
export const listXmMenuExchange = params => { return axios.get(`${base}/xm/core/xmMenuExchange/list`, { params: params }); };
//模糊查询功能表 条件之间or关系
//export const listXmMenuExchangeKey = params => { return axios.get(`${base}/xm/core/xmMenuExchange/listKey`, { params: params }); };
//删除一条功能表 params={id:'评论编号 主键'}
export const delXmMenuExchange = params => { return axios.post(`${base}/xm/core/xmMenuExchange/del`,params); };
//批量删除功能表 params=[{id:'评论编号 主键'}]
export const batchDelXmMenuExchange = params => { return axios.post(`${base}/xm/core/xmMenuExchange/batchDel`, params); };
//修改一条功能表记录
export const editXmMenuExchange = params => { return axios.post(`${base}/xm/core/xmMenuExchange/edit`, params); };
//新增一条功能表
export const addXmMenuExchange = params => { return axios.post(`${base}/xm/core/xmMenuExchange/add`, params); };

View File

@@ -0,0 +1,36 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getCoreBasePath();
/**
* 功能计划表,无需前端维护,所有数据由汇总统计得出
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'主键 主键',projectId:'项目编号',projectName:'项目名称',menuId:'功能编号',planStartTime:'开始时间',planEndTime:'结束时间',actStartTime:'实际开始时间',actEndTime:'实际结束时间',planWorkload:'计划工作量,根据关联任务汇总',actWorkload:'实际工作量,根据关联任务汇总',planCostAmount:'计划成本,根据关联任务汇总',actCostAmount:'实际成本金额根据关联任务汇总',finishRate:'总体完成比例0-1之间,根据taskType进行汇总',demandRate:'需求完成率0-1之间,根据taskType进行汇总',designRate:'设计完成率0-1之间,根据taskType进行汇总',devRate:'开发完成率0-1之间,根据taskType进行汇总',uatRate:'uat测试完成率0-1之间,根据taskType进行汇总',sitRate:'sit测试完成率0-1之间,根据taskType进行汇总',onlineStatus:'上线状态0未上线1上线成功',onlineTime:'上线时间',planStatus:'计划状态0初始1正常2暂停3延误4结束5关闭',chargeUserid:'负责人编号',chargeUsername:'负责人姓名',menuStatus:'状态0初始1设计中2开发中3测试中4uat测试2已上线3已下线4已删除',ctime:'创建时间',ltime:'更新时间',cuserid:'创建人编号',cusername:'创建人姓名',calcTime:'汇总时间',menuName:'菜单名字'}
**/
//普通查询 条件之间and关系
export const listXmMenuPlan = params => { return axios.get(`${base}/xm/core/xmMenuPlan/list`, { params: params }); };
//模糊查询功能计划表,无需前端维护,所有数据由汇总统计得出 条件之间or关系
//export const listXmMenuPlanKey = params => { return axios.get(`${base}/xm/core/xmMenuPlan/listKey`, { params: params }); };
//删除一条功能计划表,无需前端维护,所有数据由汇总统计得出 params={id:'主键 主键'}
export const delXmMenuPlan = params => { return axios.post(`${base}/xm/core/xmMenuPlan/del`,params); };
//批量删除功能计划表,无需前端维护,所有数据由汇总统计得出 params=[{id:'主键 主键'}]
export const batchDelXmMenuPlan = params => { return axios.post(`${base}/xm/core/xmMenuPlan/batchDel`, params); };
//修改一条功能计划表,无需前端维护,所有数据由汇总统计得出记录
export const editXmMenuPlan = params => { return axios.post(`${base}/xm/core/xmMenuPlan/edit`, params); };
//新增一条功能计划表,无需前端维护,所有数据由汇总统计得出
export const addXmMenuPlan = params => { return axios.post(`${base}/xm/core/xmMenuPlan/add`, params); };
export const batchAddPlanFromTasks = params => { return axios.post(`${base}/xm/core/xmMenuPlan/batchAddPlanFromTasks`, params); };
export const batchUpdatePlanFromTasks = params => { return axios.post(`${base}/xm/core/xmMenuPlan/batchUpdatePlanFromTasks`, params); };
export const batchEditXmMenuPlan = params => { return axios.post(`${base}/xm/core/xmMenuPlan/batchEdit`, params); };
export const loadTasksToXmMenuPlan = params => { return axios.post(`${base}/xm/core/xmMenuPlan/loadTasksToXmMenuPlan`, params); };

View File

@@ -0,0 +1,32 @@
import axios from '@/utils/request'
import config from '@/common/config'
let base = config.getCoreBasePath();
/**
* 功能状态表,无需前端维护,所有数据由汇总统计得出
*1 默认只开放普通查询,所有查询,只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录【数如果是0后台会自动计算总记录数非0不会自动计算】},后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
*2 查询、新增、修改的参数格式 params={id:'主键 主键',menuId:'功能编号',planStartTime:'开始时间',planEndTime:'结束时间',actStartTime:'实际开始时间',actEndTime:'实际结束时间',planWorkload:'计划工作量,根据关联任务汇总',actWorkload:'实际工作量,根据关联任务汇总',planCostAmount:'计划成本,根据关联任务汇总',actCostAmount:'实际成本金额根据关联任务汇总',finishRate:'总体完成比例0-100之间,根据taskType进行汇总',demandRate:'需求完成率0-100之间,根据taskType进行汇总',designRate:'设计完成率0-100之间,根据taskType进行汇总',devRate:'开发完成率0-100之间,根据taskType进行汇总',uatRate:'uat测试完成率0-100之间,根据taskType进行汇总',sitRate:'sit测试完成率0-100之间,根据taskType进行汇总',onlineStatus:'上线状态0未上线1上线成功',onlineTime:'上线时间',planStatus:'计划状态0初始1正常2暂停3延误4结束5关闭',chargeUserid:'负责人编号',chargeUsername:'负责人姓名',menuStatus:'状态0初始1设计中2开发中3测试中4uat测试2已上线3已下线4已删除',ctime:'创建时间',ltime:'更新时间',cuserid:'创建人编号',cusername:'创建人姓名',calcTime:'汇总时间',menuName:'菜单名字',planWorkhours:'工时数',planWorkerCnt:'总人数',closedBugs:'总关闭bugs',activeBugs:'激活bugs',confirmedBugs:'已确认bugs总数',resolvedBugs:'已解决bugs总数',productId:'产品编号',productName:'产品名称',testCases:'测试案例总数',execCases:'测试中案例总数',designCases:'设计中案例总数',finishCases:'完成案例总数',projectCnt:'关联项目数',iterationCnt:'关联迭代数',taskCnt:'任务数',finishTaskCnt:'完成的任务数'}
**/
//普通查询 条件之间and关系
export const listXmMenuState = params => { return axios.get(`${base}/xm/core/xmMenuState/list`, { params: params }); };
//模糊查询功能状态表,无需前端维护,所有数据由汇总统计得出 条件之间or关系
//export const listXmMenuStateKey = params => { return axios.get(`${base}/xm/core/xmMenuState/listKey`, { params: params }); };
//删除一条功能状态表,无需前端维护,所有数据由汇总统计得出 params={id:'主键 主键'}
export const delXmMenuState = params => { return axios.post(`${base}/xm/core/xmMenuState/del`,params); };
//批量删除功能状态表,无需前端维护,所有数据由汇总统计得出 params=[{id:'主键 主键'}]
export const batchDelXmMenuState = params => { return axios.post(`${base}/xm/core/xmMenuState/batchDel`, params); };
//修改一条功能状态表,无需前端维护,所有数据由汇总统计得出记录
export const editXmMenuState = params => { return axios.post(`${base}/xm/core/xmMenuState/edit`, params); };
//新增一条功能状态表,无需前端维护,所有数据由汇总统计得出
export const addXmMenuState = params => { return axios.post(`${base}/xm/core/xmMenuState/add`, params); };
export const loadTasksToXmMenuState = params => { return axios.post(`${base}/xm/core/xmMenuState/loadTasksToXmMenuState`, params); };

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