diff --git a/src/api/modules/process.js b/src/api/modules/process.js new file mode 100644 index 0000000..a2b2a69 --- /dev/null +++ b/src/api/modules/process.js @@ -0,0 +1,21 @@ +import { instance as request } from '@/utils/request' + +export default { + getRoleAndUserByOrgIdPage (data) { + return request({ + url: '/api/sys/user/list', + method: 'get', + params: data + }) + }, + + // 获取审批历史 + getHistory (data) { + return request({ + url: '/api/lawss/activiti/get_list_by_instance', + method: 'get', + params: data + }) + }, + // +} diff --git a/src/api/modules/processCenter.js b/src/api/modules/processCenter.js index 156c7ec..d002cb5 100644 --- a/src/api/modules/processCenter.js +++ b/src/api/modules/processCenter.js @@ -1,19 +1,19 @@ import { instance as request } from '@/utils/request' -export default{ - //查询 - search(data){ - return request({ - url: '', - method: 'POST', - data - }) - }, - //重置 - reset(data){ - return request({ - url: '', - method: 'POST', - data - }) - } -} \ No newline at end of file +export default { + // 查询 + search (data) { + return request({ + url: '', + method: 'POST', + data + }) + }, + // 重置 + reset (data) { + return request({ + url: '', + method: 'POST', + data + }) + } +} diff --git a/src/assets/css/common.scss b/src/assets/css/common.scss new file mode 100644 index 0000000..3434b9c --- /dev/null +++ b/src/assets/css/common.scss @@ -0,0 +1,47 @@ +.tag-btns { + padding-right: 15px; +} +.search-area { + padding: 0; + + .el-form-item__label { + line-height: 35px; + } + + .el-form-item__content { + line-height: 35px; + + .el-input__inner { + height: 25px; + line-height: 35px; + } + } +} +.search-new { + //width: 100%; + background: #FFF; + padding: 10px 10px 0; + + .el-button + .el-button { + margin-left: 10px; + } + + .el-form--inline .el-form-item { + display: flex; + margin-right: 0; + + input.el-input__inner { + width: 100%; + } + + .el-form-item__content { + //width: 100%; + flex: 1; + + .el-select, + .el-range-editor { + width: 100% !important; + } + } + } +} diff --git a/src/assets/css/process.scss b/src/assets/css/process.scss new file mode 100644 index 0000000..21c5f67 --- /dev/null +++ b/src/assets/css/process.scss @@ -0,0 +1,61 @@ +//流程样式 +.process{ + background-color: #fff; + width:100%; + height: 100%; + padding: 10px 20px; + overflow: auto; +} +.process_box{ + padding: 10px 30px; + border: 1px solid #e8f6fe; +} +.procedure{ + +} +.content{ + margin-top: 25px; + width:100%; + padding: 10px 30px; + border: 1px solid rgb(242,242,242); +} +.base_title{ + display: inline-block; + font-size: 18px; + font-weight: 700; + color: #555; + line-height: 40px; + border-bottom: 3px solid #409eff; + margin-bottom: 20px; +} +.pagination{ + margin-top: 20px; +} + +// 表单的样式 +.label-input-form{ + padding-right: 80px; + .el-form-item.el-form-item__label{ + line-height: 40px; + font-size: 15px; + color:#555 !important; + } + .el-form-item.el-input__inner,.el-form-item { + + line-height: 40px; + font-size: 15px; + } + .el-select{ + width: 100%; + } + .add-form-item{ + .el-input{ + width: 100%; + } + .el-input__inner{ + height: 40px; + line-height: 40px; + } + } +} + diff --git a/src/components/OrgTable.vue b/src/components/OrgTable.vue new file mode 100644 index 0000000..8191732 --- /dev/null +++ b/src/components/OrgTable.vue @@ -0,0 +1,904 @@ + + + + + + diff --git a/src/components/ProcessApprovalHistory.vue b/src/components/ProcessApprovalHistory.vue new file mode 100644 index 0000000..c34fed5 --- /dev/null +++ b/src/components/ProcessApprovalHistory.vue @@ -0,0 +1,194 @@ + + + + + diff --git a/src/components/ProcessChooseTree.vue b/src/components/ProcessChooseTree.vue new file mode 100644 index 0000000..042656c --- /dev/null +++ b/src/components/ProcessChooseTree.vue @@ -0,0 +1,768 @@ + + + + + + diff --git a/src/components/ProcessFooter.vue b/src/components/ProcessFooter.vue new file mode 100644 index 0000000..3176087 --- /dev/null +++ b/src/components/ProcessFooter.vue @@ -0,0 +1,402 @@ + + + + + + diff --git a/src/components/ProcessHeader.vue b/src/components/ProcessHeader.vue new file mode 100644 index 0000000..78b0ebe --- /dev/null +++ b/src/components/ProcessHeader.vue @@ -0,0 +1,62 @@ + + + + + + diff --git a/src/main.js b/src/main.js index 38216db..26b2d10 100644 --- a/src/main.js +++ b/src/main.js @@ -2,7 +2,9 @@ import Vue from 'vue' import App from './App.vue' import router from './router' import store from './store' - +// 流程公共样式 +import './assets/css/process.scss' +import './assets/css/common.scss' import config from '@/utils/config' // VXETable import 'xe-utils' @@ -10,6 +12,7 @@ import VXETable from 'vxe-table' import 'vxe-table/lib/style.css' // ElementUI import ElementUI from 'element-ui' + import './assets/css/element-variables.scss' // ECharts import 'echarts' @@ -27,6 +30,7 @@ import '@/utils/waterMark' import JSEncrypt from '../src/assets/js/jsencrypt.min.js' // 富文本引用 import VueQuillEditor from 'vue-quill-editor' + // require styles 引入样式 import 'quill/dist/quill.core.css' import 'quill/dist/quill.snow.css' diff --git a/src/router/modules/permission.js b/src/router/modules/permission.js new file mode 100644 index 0000000..e3560a3 --- /dev/null +++ b/src/router/modules/permission.js @@ -0,0 +1,35 @@ +const routes = [ + { + path: '/permission', + name: '', + component: () => import('../../views/Layout.vue'), + children: [ + { + path: 'step1', + name: 'urlIndex', + component: () => import('../../views/permissionApplication/launch'), + meta: { + crumb: ['权限申请'] + } + }, + { + path: 'step2', + name: 'urlIndex', + component: () => import('../../views/permissionApplication/examine'), + meta: { + crumb: ['权限申请'] + } + }, + { + path: 'step3', + name: 'urlIndex', + component: () => import('../../views/permissionApplication/examine'), + meta: { + crumb: ['权限申请'] + } + } + ] + } +] + +export default routes diff --git a/src/router/modules/userCenter.js b/src/router/modules/userCenter.js index 8228bc0..0fe81fc 100644 --- a/src/router/modules/userCenter.js +++ b/src/router/modules/userCenter.js @@ -12,8 +12,16 @@ const routes = [ component: () => import('../../views/userCenter/processCenter.vue'), meta: { crumb: ['流程中心'] - }, - + } + }, + // 流程配置 + { + path: 'processConfig', + name: 'processConfig', + component: () => import('../../views/userCenter/processConfig/index.vue'), + meta: { + crumb: ['流程配置'] + } }, { path:'monitorViews', @@ -23,6 +31,5 @@ const routes = [ ] } ] - + export default routes - \ No newline at end of file diff --git a/src/utils/Enum/enum.js b/src/utils/Enum/enum.js new file mode 100644 index 0000000..9511358 --- /dev/null +++ b/src/utils/Enum/enum.js @@ -0,0 +1,7 @@ +// 定义枚举 +import Esenum from './index.js' +// 权限申请 +export const PERMISSION = new Esenum([ + { label: '预览', value: 0 }, + { label: '预览+下载', value: 2 } +]) diff --git a/src/utils/Enum/index.js b/src/utils/Enum/index.js new file mode 100644 index 0000000..e58e16b --- /dev/null +++ b/src/utils/Enum/index.js @@ -0,0 +1,103 @@ +export default class EsEunm { + constructor (obj) { + if (!obj) { + return + } + Object.keys(obj).forEach(key => { + const item = obj[key] + this.addAll(key, item) + }) + return this + } + + /** + * 添加枚举 + * @param key + * @param item + */ + addAll (key, item) { + this[key] = item + } + + /** + * 获取到所有的枚举值列表 + * @return {Array} list集合 + */ + getItemList () { + const optionList = [] + for (const key in this) { + const item = this[key] + const option = {} + Object.assign(option, item) + option.key = key + optionList.push(option) + } + optionList.sort((a, b) => { + const value1 = a.index + const value2 = b.index + return value1 - value2 + }) + return optionList + } + + /** + * 过滤掉不需要的值 + * @params {Array,String} val 需要过滤掉的枚举对象的name值 + * @return {Array} list集合 + */ + getFilterItemList (val = []) { + let filterList = [] + let valueArr = [] // 接受参数的整理 + if (Array.isArray(val)) { + valueArr = val + } else { + valueArr.push(val) + } + const optionList = this.getItemList() // 得到的是list + filterList = optionList.filter(item => { + if (valueArr.includes(item.name)) { + return false + } + return true + }) + return filterList + } + + /** + * 根据name获取到index + * @params {String} name 枚举的name值 + * @return {Number} name对应的index值 + */ + nameOfIndex (uname) { + if (!uname) { + return null + } + let index = '' + const optionList = this.getItemList() + optionList.forEach(item => { + if (uname.toString() === item.name.toString()) { + index = +item.index + } + }) + return index + } + + /** + * 根据index获取到name + * @params {Number} index 枚举的index值 + * @return {String} index对应的name值 + */ + indexOfName (index) { + if (index == undefined) { + return null + } + let uname = '' + const optionList = this.getItemList() + optionList.forEach(item => { + if (item.index !== undefined && item.index !== null && item.index == index) { + uname = item.name + } + }) + return uname + } +} diff --git a/src/views/Report/ReportList.vue b/src/views/Report/ReportList.vue index c55fc05..02338c7 100644 --- a/src/views/Report/ReportList.vue +++ b/src/views/Report/ReportList.vue @@ -27,7 +27,7 @@ - + 查询 重置 @@ -92,29 +92,34 @@ --> - - + + + + 权限申请 +
- - - - - - - - - - + + + + + + + + + + + @@ -154,7 +159,7 @@ - + - - - + + +
@@ -299,6 +304,8 @@ export default { } ], + content: '', + checkIds: [] } }, watch: { @@ -311,6 +318,24 @@ export default { if (!value) return true; return data.label.indexOf(value) !== -1; }, + selectAllEvent ({ checked }) { + const records = this.$refs.xTable.getCheckboxRecords() + this.checkIds = records.map(item => { + return item.id + }) + }, + selectChangeEvent ({ checked }) { + const records = this.$refs.xTable.getCheckboxRecords() + this.checkIds = records.map(item => { + return item.id + }) + }, + permissionApp () { + this.$router.push({ + path: '/permission/step1', + query: { id: 'AEHJB8YNJ3', ids: this.checkIds.toString() } + }) + }, init () { this.labelList() this.reportDateList() @@ -440,15 +465,6 @@ export default { diff --git a/src/views/permissionApplication/components/reportDialog.vue b/src/views/permissionApplication/components/reportDialog.vue new file mode 100644 index 0000000..d1b9a4b --- /dev/null +++ b/src/views/permissionApplication/components/reportDialog.vue @@ -0,0 +1,301 @@ + + + + + diff --git a/src/views/permissionApplication/components/reportTable.vue b/src/views/permissionApplication/components/reportTable.vue new file mode 100644 index 0000000..c2b569e --- /dev/null +++ b/src/views/permissionApplication/components/reportTable.vue @@ -0,0 +1,213 @@ + + + + + diff --git a/src/views/permissionApplication/examine.vue b/src/views/permissionApplication/examine.vue new file mode 100644 index 0000000..6d7af25 --- /dev/null +++ b/src/views/permissionApplication/examine.vue @@ -0,0 +1,172 @@ + + + + + diff --git a/src/views/permissionApplication/launch.vue b/src/views/permissionApplication/launch.vue new file mode 100644 index 0000000..dbc93c0 --- /dev/null +++ b/src/views/permissionApplication/launch.vue @@ -0,0 +1,251 @@ + + + + + diff --git a/src/views/userCenter/processCenter.vue b/src/views/userCenter/processCenter.vue index c02843b..43a4a6e 100644 --- a/src/views/userCenter/processCenter.vue +++ b/src/views/userCenter/processCenter.vue @@ -6,11 +6,11 @@
流程编号:
- +
流程名称:
- +
查询 @@ -91,14 +91,14 @@ import tabs from '../userCenter/processCenter/tabs.vue' display: flex; align-items: center; } - + } .tabs{ margin: 20px 0 0 13px; } - + } ::v-deep .el-input{ width: 200px; } - \ No newline at end of file + diff --git a/src/views/userCenter/processConfig/components/EditProcess.vue b/src/views/userCenter/processConfig/components/EditProcess.vue new file mode 100644 index 0000000..caf9a22 --- /dev/null +++ b/src/views/userCenter/processConfig/components/EditProcess.vue @@ -0,0 +1,125 @@ + + + + + diff --git a/src/views/userCenter/processConfig/components/EditProcessClassification.vue b/src/views/userCenter/processConfig/components/EditProcessClassification.vue new file mode 100644 index 0000000..2d191c7 --- /dev/null +++ b/src/views/userCenter/processConfig/components/EditProcessClassification.vue @@ -0,0 +1,103 @@ + + + + + diff --git a/src/views/userCenter/processConfig/index.vue b/src/views/userCenter/processConfig/index.vue new file mode 100644 index 0000000..38fd951 --- /dev/null +++ b/src/views/userCenter/processConfig/index.vue @@ -0,0 +1,540 @@ + + + + + diff --git a/vue.config.js b/vue.config.js index b3dabd8..41d24d5 100644 --- a/vue.config.js +++ b/vue.config.js @@ -1,5 +1,6 @@ const webpack = require('webpack') module.exports = { + lintOnSave: false, // publicPath: '/mi', outputDir: 'dist', // 运行时生成的生产环境构建文件的目录(默认''dist'',构建之前会被清除) assetsDir: 'static', // 放置生成的静态资源(s、css、img、fonts)的(相对于 outputDir 的)目录(默认'') @@ -12,12 +13,12 @@ module.exports = { proxy: { // 配置跨域 '/api': { - target: 'http://10.94.1.164:7060', // 服务器 + target: 'http://localhost:7060', // 服务器 changeOrigin: true }, // 请求静态图片配置项 '/api/home/pic': { - target: 'http://10.94.1.164:7061', // 图片请求的nginx网址 + target: 'http://localhost:7061', // 图片请求的nginx网址 changeOrigin: true }