commit:同步2.2版本

This commit is contained in:
Jerry
2022-01-23 21:00:54 +08:00
parent ff7e52eedb
commit 35ac62e4d2
1201 changed files with 16301 additions and 161770 deletions

View File

@@ -1 +1,2 @@
/src/views/workflow/package/* /src/views/workflow/package/*
/src/components/Verifition/*

View File

@@ -32,7 +32,8 @@
"vuedraggable": "^2.24.3", "vuedraggable": "^2.24.3",
"xml-js": "^1.6.11", "xml-js": "^1.6.11",
"highlight.js": "^10.5.0", "highlight.js": "^10.5.0",
"bpmn-js-token-simulation": "^0.10.0" "bpmn-js-token-simulation": "^0.10.0",
"crypto-js": "^4.1.1"
}, },
"devDependencies": { "devDependencies": {
"@vue/cli-plugin-babel": "~4.2.0", "@vue/cli-plugin-babel": "~4.2.0",

View File

@@ -249,4 +249,8 @@ export default class SystemController {
static deleteSysLoginUser (sender, params, axiosOption, httpOption) { static deleteSysLoginUser (sender, params, axiosOption, httpOption) {
return sender.doUrl('admin/upms/loginUser/delete', 'post', params, axiosOption, httpOption); return sender.doUrl('admin/upms/loginUser/delete', 'post', params, axiosOption, httpOption);
} }
// 上传用户头像URL
static changeHeadImageUrl () {
return 'admin/upms/login/changeHeadImage';
}
} }

View File

@@ -107,8 +107,28 @@ export default class FlowOperationController {
static rejectRuntimeTask (sender, params, axiosOption, httpOption) { static rejectRuntimeTask (sender, params, axiosOption, httpOption) {
return sender.doUrl('/admin/flow/flowOperation/rejectRuntimeTask', 'post', params, axiosOption, httpOption); return sender.doUrl('/admin/flow/flowOperation/rejectRuntimeTask', 'post', params, axiosOption, httpOption);
} }
// 驳回到起点
static rejectToStartUserTask (sender, params, axiosOption, httpOption) {
return sender.doUrl('/admin/flow/flowOperation/rejectToStartUserTask', 'post', params, axiosOption, httpOption);
}
// 撤销 // 撤销
static revokeHistoricTask (sender, params, axiosOption, httpOption) { static revokeHistoricTask (sender, params, axiosOption, httpOption) {
return sender.doUrl('/admin/flow/flowOperation/revokeHistoricTask', 'post', params, axiosOption, httpOption); return sender.doUrl('/admin/flow/flowOperation/revokeHistoricTask', 'post', params, axiosOption, httpOption);
} }
// 抄送消息列表
static listCopyMessage (sender, params, axiosOption, httpOption) {
return sender.doUrl('/admin/flow/flowMessage/listCopyMessage', 'post', params, axiosOption, httpOption);
}
// 消息个数
static getMessageCount (sender, params, axiosOption, httpOption) {
return sender.doUrl('/admin/flow/flowMessage/getMessageCount', 'get', params, axiosOption, httpOption);
}
// 在线表单流程抄送消息数据
static viewOnlineCopyBusinessData (sender, params, axiosOption, httpOption) {
return sender.doUrl('/admin/flow/flowOnlineOperation/viewCopyBusinessData', 'get', params, axiosOption, httpOption);
}
// 静态表单流程抄送消息数据
static viewCopyBusinessData (sender, params, axiosOption, httpOption) {
return sender.doUrl('/admin/flow/flowOperation/viewCopyBusinessData', 'get', params, axiosOption, httpOption);
}
} }

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

@@ -130,6 +130,10 @@ body .layer-advance-dialog .layui-layer-content {
} }
} }
.el-button + .btn-import {
margin-left: 10px!important;
}
/** /**
* 过滤组件样式 * 过滤组件样式
**/ **/
@@ -230,6 +234,22 @@ body .layer-advance-dialog .layui-layer-content {
} }
} }
.el-form-item.el-form-item--mini {
min-height: 29px;
}
.el-form-item.el-form-item--small {
min-height: 32px;
}
.el-form-item.el-form-item--medium {
min-height: 36px;
}
.el-form-item.el-form-item--default {
min-height: 40px;
}
.el-aside { .el-aside {
overflow: visible; overflow: visible;
} }
@@ -472,6 +492,12 @@ body .layer-advance-dialog .layui-layer-content {
.user-dropdown-item { .user-dropdown-item {
font-size: 12px; font-size: 12px;
color: $--color-text-primary; color: $--color-text-primary;
.el-badge {
margin-top: -8px;
margin-left: 10px;
height: 20px;
}
} }
.hamburger-container { .hamburger-container {

View File

@@ -212,6 +212,7 @@ export default {
watch: { watch: {
value: { value: {
handler: function (val, oldVal) { handler: function (val, oldVal) {
this.userInput = val;
if (!this.valueEquals(val, oldVal) && this.validateEvent) { if (!this.valueEquals(val, oldVal) && this.validateEvent) {
this.dispatch('ElFormItem', 'el.form.change', val); this.dispatch('ElFormItem', 'el.form.change', val);
} }

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,268 @@
<template>
<div
style="position: relative"
>
<div class="verify-img-out">
<div
class="verify-img-panel"
:style="{'width': setSize.imgWidth,
'height': setSize.imgHeight,
'background-size' : setSize.imgWidth + ' '+ setSize.imgHeight,
'margin-bottom': vSpace + 'px'}"
>
<div v-show="showRefresh" class="verify-refresh" style="z-index:3" @click="refresh">
<i class="iconfont icon-refresh" />
</div>
<img
ref="canvas"
:src="pointBackImgBase?('data:image/png;base64,'+pointBackImgBase):defaultImg"
alt=""
style="width:100%;height:100%;display:block"
@click="bindingClick?canvasClick($event):undefined"
>
<div
v-for="(tempPoint, index) in tempPoints"
:key="index"
class="point-area"
:style="{
'background-color':'#1abd6c',
color:'#fff',
'z-index':9999,
width:'20px',
height:'20px',
'text-align':'center',
'line-height':'20px',
'border-radius': '50%',
position:'absolute',
top:parseInt(tempPoint.y-10) + 'px',
left:parseInt(tempPoint.x-10) + 'px'
}"
>
{{ index + 1 }}
</div>
</div>
</div>
<!-- 'height': this.barSize.height, -->
<div
class="verify-bar-area"
:style="{'width': setSize.imgWidth,
'color': this.barAreaColor,
'border-color': this.barAreaBorderColor,
'line-height':this.barSize.height}"
>
<span class="verify-msg">{{ text }}</span>
</div>
</div>
</template>
<script type="text/babel">
/**
* VerifyPoints
* @description 点选
* */
import { resetSize, _code_chars, _code_color1, _code_color2 } from './../utils/util'
import { aesEncrypt } from './../utils/ase'
import { reqGet, reqCheck } from './../api/index'
export default {
name: 'VerifyPoints',
props: {
// 弹出式pop固定fixed
mode: {
type: String,
default: 'fixed'
},
captchaType: {
type: String,
},
// 间隔
vSpace: {
type: Number,
default: 5
},
imgSize: {
type: Object,
default() {
return {
width: '310px',
height: '155px'
}
}
},
barSize: {
type: Object,
default() {
return {
width: '310px',
height: '40px'
}
}
},
defaultImg: {
type: String,
default: ''
}
},
data() {
return {
secretKey: '', // 后端返回的ase加密秘钥
checkNum: 3, // 默认需要点击的字数
fontPos: [], // 选中的坐标信息
checkPosArr: [], // 用户点击的坐标
num: 1, // 点击的记数
pointBackImgBase: '', // 后端获取到的背景图片
poinTextList: [], // 后端返回的点击字体顺序
backToken: '', // 后端返回的token值
setSize: {
imgHeight: 0,
imgWidth: 0,
barHeight: 0,
barWidth: 0
},
tempPoints: [],
text: '',
barAreaColor: undefined,
barAreaBorderColor: undefined,
showRefresh: true,
bindingClick: true
}
},
computed: {
resetSize() {
return resetSize
}
},
watch: {
// type变化则全面刷新
type: {
immediate: true,
handler() {
this.init()
}
}
},
mounted() {
// 禁止拖拽
this.$el.onselectstart = function() {
return false
}
},
methods: {
init() {
// 加载页面
this.fontPos.splice(0, this.fontPos.length)
this.checkPosArr.splice(0, this.checkPosArr.length)
this.num = 1
this.getPictrue()
this.$nextTick(() => {
this.setSize = this.resetSize(this) // 重新设置宽度高度
this.$parent.$emit('ready', this)
})
},
canvasClick(e) {
this.checkPosArr.push(this.getMousePos(this.$refs.canvas, e))
if (this.num == this.checkNum) {
this.num = this.createPoint(this.getMousePos(this.$refs.canvas, e))
// 按比例转换坐标值
this.checkPosArr = this.pointTransfrom(this.checkPosArr, this.setSize)
// 等创建坐标执行完
setTimeout(() => {
// var flag = this.comparePos(this.fontPos, this.checkPosArr);
// 发送后端请求
var captchaVerification = this.secretKey ? aesEncrypt(this.backToken + '---' + JSON.stringify(this.checkPosArr), this.secretKey) : this.backToken + '---' + JSON.stringify(this.checkPosArr)
const data = {
captchaType: this.captchaType,
'pointJson': this.secretKey ? aesEncrypt(JSON.stringify(this.checkPosArr), this.secretKey) : JSON.stringify(this.checkPosArr),
'token': this.backToken
}
reqCheck(data).then(res => {
if (res.repCode == '0000') {
this.barAreaColor = '#4cae4c'
this.barAreaBorderColor = '#5cb85c'
this.text = '验证成功'
this.bindingClick = false
if (this.mode == 'pop') {
setTimeout(() => {
this.$parent.clickShow = false
this.refresh()
}, 1500)
}
this.$parent.$emit('success', { captchaVerification })
} else {
this.$parent.$emit('error', this)
this.barAreaColor = '#d9534f'
this.barAreaBorderColor = '#d9534f'
this.text = '验证失败'
setTimeout(() => {
this.refresh()
}, 700)
}
})
}, 400)
}
if (this.num < this.checkNum) {
this.num = this.createPoint(this.getMousePos(this.$refs.canvas, e))
}
},
// 获取坐标
getMousePos: function(obj, e) {
var x = e.offsetX
var y = e.offsetY
return { x, y }
},
// 创建坐标点
createPoint: function(pos) {
this.tempPoints.push(Object.assign({}, pos))
return ++this.num
},
refresh: function() {
this.tempPoints.splice(0, this.tempPoints.length)
this.barAreaColor = '#000'
this.barAreaBorderColor = '#ddd'
this.bindingClick = true
this.fontPos.splice(0, this.fontPos.length)
this.checkPosArr.splice(0, this.checkPosArr.length)
this.num = 1
this.getPictrue()
this.text = '验证失败'
this.showRefresh = true
},
// 请求背景图片和验证图片
getPictrue() {
const data = {
captchaType: this.captchaType,
clientUid: localStorage.getItem('point'),
ts: Date.now(), // 现在的时间戳
}
reqGet(data).then(res => {
if (res.repCode == '0000') {
this.pointBackImgBase = res.repData.originalImageBase64
this.backToken = res.repData.token
this.secretKey = res.repData.secretKey
this.poinTextList = res.repData.wordList
this.text = '请依次点击【' + this.poinTextList.join(',') + '】'
} else {
this.text = res.repMsg
}
// 判断接口请求次数是否失效
if (res.repCode == '6201') {
this.pointBackImgBase = null
}
})
},
// 坐标转换函数
pointTransfrom(pointArr, imgSize) {
var newPointArr = pointArr.map(p => {
const x = Math.round(310 * p.x / parseInt(imgSize.imgWidth))
const y = Math.round(155 * p.y / parseInt(imgSize.imgHeight))
return { x, y }
})
// console.log(newPointArr,"newPointArr");
return newPointArr
}
},
}
</script>

View File

@@ -0,0 +1,381 @@
<template>
<div style="position: relative;">
<div
v-if="type === '2'"
class="verify-img-out"
:style="{height: (parseInt(setSize.imgHeight) + vSpace) + 'px'}"
>
<div
class="verify-img-panel"
:style="{
width: setSize.imgWidth,
height: setSize.imgHeight
}"
>
<img :src="backImgBase?('data:image/png;base64,'+backImgBase):defaultImg" alt="" style="width:100%;height:100%;display:block">
<div v-show="showRefresh" class="verify-refresh" @click="refresh"><i class="iconfont icon-refresh" />
</div>
<transition name="tips">
<span v-if="tipWords" class="verify-tips" :class="passFlag ?'suc-bg':'err-bg'">{{ tipWords }}</span>
</transition>
</div>
</div>
<!-- 公共部分 -->
<div
class="verify-bar-area"
:style="{
width: setSize.imgWidth,
height: barSize.height,
'line-height':barSize.height
}"
>
<span class="verify-msg" v-text="text" />
<div
class="verify-left-bar"
:style="{width: (leftBarWidth!==undefined)?leftBarWidth: barSize.height, height: barSize.height, 'border-color': leftBarBorderColor, transaction: transitionWidth}"
>
<span class="verify-msg" v-text="finishText" />
<div
class="verify-move-block"
:style="{width: barSize.height, height: barSize.height, 'background-color': moveBlockBackgroundColor, left: moveBlockLeft, transition: transitionLeft}"
@touchstart="start"
@mousedown="start"
>
<i
:class="['verify-icon iconfont', iconClass]"
:style="{color: iconColor}"
/>
<div
v-if="type === '2'"
class="verify-sub-block"
:style="{'width':Math.floor(parseInt(setSize.imgWidth)*47/310)+ 'px',
'height': setSize.imgHeight,
'top':'-' + (parseInt(setSize.imgHeight) + vSpace) + 'px',
'background-size': setSize.imgWidth + ' ' + setSize.imgHeight,
}"
>
<img :src="'data:image/png;base64,'+blockBackImgBase" alt="" style="width:100%;height:100%;display:block">
</div>
</div>
</div>
</div>
</div>
</template>
<script type="text/babel">
/**
* VerifySlide
* @description 滑块
*/
import { aesEncrypt } from './../utils/ase'
import { resetSize } from './../utils/util'
import { reqGet, reqCheck } from './../api/index'
// "captchaType":"blockPuzzle",
export default {
name: 'VerifySlide',
props: {
captchaType: {
type: String,
},
type: {
type: String,
default: '1'
},
// 弹出式pop固定fixed
mode: {
type: String,
default: 'fixed'
},
vSpace: {
type: Number,
default: 5
},
explain: {
type: String,
default: '向右滑动完成验证'
},
imgSize: {
type: Object,
default() {
return {
width: '310px',
height: '155px'
}
}
},
blockSize: {
type: Object,
default() {
return {
width: '50px',
height: '50px'
}
}
},
barSize: {
type: Object,
default() {
return {
width: '310px',
height: '40px'
}
}
},
defaultImg: {
type: String,
default: ''
}
},
data() {
return {
secretKey: '', // 后端返回的加密秘钥 字段
passFlag: '', // 是否通过的标识
backImgBase: '', // 验证码背景图片
blockBackImgBase: '', // 验证滑块的背景图片
backToken: '', // 后端返回的唯一token值
startMoveTime: '', // 移动开始的时间
endMovetime: '', // 移动结束的时间
tipsBackColor: '', // 提示词的背景颜色
tipWords: '',
text: '',
finishText: '',
setSize: {
imgHeight: 0,
imgWidth: 0,
barHeight: 0,
barWidth: 0
},
top: 0,
left: 0,
moveBlockLeft: undefined,
leftBarWidth: undefined,
// 移动中样式
moveBlockBackgroundColor: undefined,
leftBarBorderColor: '#ddd',
iconColor: undefined,
iconClass: 'icon-right',
status: false, // 鼠标状态
isEnd: false, // 是够验证完成
showRefresh: true,
transitionLeft: '',
transitionWidth: ''
}
},
computed: {
barArea() {
return this.$el.querySelector('.verify-bar-area')
},
resetSize() {
return resetSize
}
},
watch: {
// type变化则全面刷新
type: {
immediate: true,
handler() {
this.init()
}
}
},
mounted() {
// 禁止拖拽
this.$el.onselectstart = function() {
return false
}
console.log(this.defaultImg)
},
methods: {
init() {
this.text = this.explain
this.getPictrue()
this.$nextTick(() => {
const setSize = this.resetSize(this) // 重新设置宽度高度
for (const key in setSize) {
this.$set(this.setSize, key, setSize[key])
}
this.$parent.$emit('ready', this)
})
var _this = this
window.removeEventListener('touchmove', function(e) {
_this.move(e)
})
window.removeEventListener('mousemove', function(e) {
_this.move(e)
})
// 鼠标松开
window.removeEventListener('touchend', function() {
_this.end()
})
window.removeEventListener('mouseup', function() {
_this.end()
})
window.addEventListener('touchmove', function(e) {
_this.move(e)
})
window.addEventListener('mousemove', function(e) {
_this.move(e)
})
// 鼠标松开
window.addEventListener('touchend', function() {
_this.end()
})
window.addEventListener('mouseup', function() {
_this.end()
})
},
// 鼠标按下
start: function(e) {
e = e || window.event
if (!e.touches) { // 兼容PC端
var x = e.clientX
} else { // 兼容移动端
var x = e.touches[0].pageX
}
this.startLeft = Math.floor(x - this.barArea.getBoundingClientRect().left)
this.startMoveTime = +new Date() // 开始滑动的时间
if (this.isEnd == false) {
this.text = ''
this.moveBlockBackgroundColor = '#337ab7'
this.leftBarBorderColor = '#337AB7'
this.iconColor = '#fff'
e.stopPropagation()
this.status = true
}
},
// 鼠标移动
move: function(e) {
e = e || window.event
if (this.status && this.isEnd == false) {
if (!e.touches) { // 兼容PC端
var x = e.clientX
} else { // 兼容移动端
var x = e.touches[0].pageX
}
var bar_area_left = this.barArea.getBoundingClientRect().left
var move_block_left = x - bar_area_left // 小方块相对于父元素的left值
if (move_block_left >= this.barArea.offsetWidth - parseInt(parseInt(this.blockSize.width) / 2) - 2) {
move_block_left = this.barArea.offsetWidth - parseInt(parseInt(this.blockSize.width) / 2) - 2
}
if (move_block_left <= 0) {
move_block_left = parseInt(parseInt(this.blockSize.width) / 2)
}
// 拖动后小方块的left值
this.moveBlockLeft = (move_block_left - this.startLeft) + 'px'
this.leftBarWidth = (move_block_left - this.startLeft) + 'px'
}
},
// 鼠标松开
end: function() {
this.endMovetime = +new Date()
var _this = this
// 判断是否重合
if (this.status && this.isEnd == false) {
var moveLeftDistance = parseInt((this.moveBlockLeft || '').replace('px', ''))
moveLeftDistance = moveLeftDistance * 310 / parseInt(this.setSize.imgWidth)
const data = {
captchaType: this.captchaType,
'pointJson': this.secretKey ? aesEncrypt(JSON.stringify({ x: moveLeftDistance, y: 5.0 }), this.secretKey) : JSON.stringify({ x: moveLeftDistance, y: 5.0 }),
'token': this.backToken
}
reqCheck(data).then(res => {
if (res.repCode == '0000') {
this.moveBlockBackgroundColor = '#5cb85c'
this.leftBarBorderColor = '#5cb85c'
this.iconColor = '#fff'
this.iconClass = 'icon-check'
this.showRefresh = false
this.isEnd = true
if (this.mode == 'pop') {
setTimeout(() => {
this.$parent.clickShow = false
this.refresh()
}, 1500)
}
this.passFlag = true
this.tipWords = `${((this.endMovetime - this.startMoveTime) / 1000).toFixed(2)}s验证成功`
var captchaVerification = this.secretKey ? aesEncrypt(this.backToken + '---' + JSON.stringify({ x: moveLeftDistance, y: 5.0 }), this.secretKey) : this.backToken + '---' + JSON.stringify({ x: moveLeftDistance, y: 5.0 })
setTimeout(() => {
this.tipWords = ''
this.$parent.closeBox()
this.$parent.$emit('success', { captchaVerification })
}, 1000)
} else {
this.moveBlockBackgroundColor = '#d9534f'
this.leftBarBorderColor = '#d9534f'
this.iconColor = '#fff'
this.iconClass = 'icon-close'
this.passFlag = false
setTimeout(function() {
_this.refresh()
}, 1000)
this.$parent.$emit('error', this)
this.tipWords = '验证失败'
setTimeout(() => {
this.tipWords = ''
}, 1000)
}
})
this.status = false
}
},
refresh: function() {
this.showRefresh = true
this.finishText = ''
this.transitionLeft = 'left .3s'
this.moveBlockLeft = 0
this.leftBarWidth = undefined
this.transitionWidth = 'width .3s'
this.leftBarBorderColor = '#ddd'
this.moveBlockBackgroundColor = '#fff'
this.iconColor = '#000'
this.iconClass = 'icon-right'
this.isEnd = false
this.getPictrue()
setTimeout(() => {
this.transitionWidth = ''
this.transitionLeft = ''
this.text = this.explain
}, 300)
},
// 请求背景图片和验证图片
getPictrue() {
const data = {
captchaType: this.captchaType,
clientUid: localStorage.getItem('slider'),
ts: Date.now(), // 现在的时间戳
}
reqGet(data).then(res => {
if (res.repCode == '0000') {
this.backImgBase = res.repData.originalImageBase64
this.blockBackImgBase = res.repData.jigsawImageBase64
this.backToken = res.repData.token
this.secretKey = res.repData.secretKey
} else {
this.tipWords = res.repMsg
}
// 判断接口请求次数是否失效
if (res.repCode == '6201') {
this.backImgBase = null
this.blockBackImgBase = null
}
})
},
},
}
</script>

View File

@@ -0,0 +1,25 @@
/**
* 此处可直接引用自己项目封装好的 axios 配合后端联调
*/
import request from './../utils/axios' // 组件内部封装的axios
// import request from "@/api/axios.js" //调用项目封装的axios
// 获取验证图片 以及token
export function reqGet(data) {
return request({
url: '/captcha/get',
method: 'post',
data
})
}
// 滑动或者点选验证
export function reqCheck(data) {
return request({
url: '/captcha/check',
method: 'post',
data
})
}

View File

@@ -0,0 +1,11 @@
import CryptoJS from 'crypto-js'
/**
* @word 要加密的内容
* @keyWord String 服务器随机返回的关键字
* */
export function aesEncrypt(word, keyWord = 'XwKsGlMcdPMEhR1B') {
var key = CryptoJS.enc.Utf8.parse(keyWord)
var srcs = CryptoJS.enc.Utf8.parse(word)
var encrypted = CryptoJS.AES.encrypt(srcs, key, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 })
return encrypted.toString()
}

View File

@@ -0,0 +1,31 @@
import axios from 'axios'
import projectConfig from '@/core/config';
axios.defaults.baseURL = projectConfig.baseUrl
const service = axios.create({
timeout: 40000,
headers: {
'X-Requested-With': 'XMLHttpRequest',
'Content-Type': 'application/json; charset=UTF-8'
},
})
service.interceptors.request.use(
config => {
return config
},
error => {
Promise.reject(error)
}
)
// response interceptor
service.interceptors.response.use(
response => {
const res = response.data
return res
},
error => {
}
)
export default service

View File

@@ -0,0 +1,36 @@
export function resetSize(vm) {
var img_width, img_height, bar_width, bar_height // 图片的宽度、高度,移动条的宽度、高度
var parentWidth = vm.$el.parentNode.offsetWidth || window.offsetWidth
var parentHeight = vm.$el.parentNode.offsetHeight || window.offsetHeight
if (vm.imgSize.width.indexOf('%') != -1) {
img_width = parseInt(this.imgSize.width) / 100 * parentWidth + 'px'
} else {
img_width = this.imgSize.width
}
if (vm.imgSize.height.indexOf('%') != -1) {
img_height = parseInt(this.imgSize.height) / 100 * parentHeight + 'px'
} else {
img_height = this.imgSize.height
}
if (vm.barSize.width.indexOf('%') != -1) {
bar_width = parseInt(this.barSize.width) / 100 * parentWidth + 'px'
} else {
bar_width = this.barSize.width
}
if (vm.barSize.height.indexOf('%') != -1) {
bar_height = parseInt(this.barSize.height) / 100 * parentHeight + 'px'
} else {
bar_height = this.barSize.height
}
return { imgWidth: img_width, imgHeight: img_height, barWidth: bar_width, barHeight: bar_height }
}
export const _code_chars = [1, 2, 3, 4, 5, 6, 7, 8, 9, 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']
export const _code_color1 = ['#fffff0', '#f0ffff', '#f0fff0', '#fff0f0']
export const _code_color2 = ['#FF0033', '#006699', '#993366', '#FF9900', '#66CC66', '#FF33CC']

View File

@@ -119,7 +119,47 @@ const fetchDownload = function (url, params, fileName) {
}); });
}); });
} }
/**
* 上传文件
* @param {*} url 请求的url
* @param {*} params 请求参数
*/
const fetchUpload = function (url, params) {
return new Promise((resolve, reject) => {
request({
url: requestUrl(url),
method: 'post',
data: params,
headers: {
'Content-Type': 'multipart/form-data'
},
transformRequest: [
function (data) {
let formData = new FormData();
Object.keys(data).map(key => {
formData.append(key, data[key]);
});
return formData;
}
]
}).then(res => {
if (res.data && res.data.success) {
resolve(res.data);
} else {
Message.error({
showClose: true,
message: res.data.errorMessage ? res.data.errorMessage : '数据请求失败'
});
}
}).catch(e => {
Message.error({
showClose: true,
message: e.errorMessage ? e.errorMessage : '网络请求错误'
});
reject(e);
});
});
}
// url调用节流Set // url调用节流Set
const ajaxThrottleSet = new Set(); const ajaxThrottleSet = new Set();
/** /**
@@ -191,6 +231,7 @@ const doUrl = function (url, type, params, axiosOption, options) {
} }
}; };
Vue.prototype.upload = fetchUpload;
Vue.prototype.download = fetchDownload; Vue.prototype.download = fetchDownload;
Vue.prototype.doUrl = doUrl; Vue.prototype.doUrl = doUrl;
Vue.prototype.loadingManager = loadingManager; Vue.prototype.loadingManager = loadingManager;

View File

@@ -100,6 +100,9 @@ const globalMixin = {
...mapMutations(['setLoadingStatus']) ...mapMutations(['setLoadingStatus'])
}, },
computed: { computed: {
defaultFormItemSize () {
return 'mini';
},
...mapGetters(['getUserInfo']) ...mapGetters(['getUserInfo'])
}, },
watch: { watch: {

View File

@@ -191,6 +191,7 @@ const statsDateRangeMixin = {
*/ */
formatDateByStatsType (date, statsType = 'day', format = 'yyyy-MM-dd') { formatDateByStatsType (date, statsType = 'day', format = 'yyyy-MM-dd') {
if (date == null) return undefined; if (date == null) return undefined;
if (statsType == null) return date;
statsType = allowStatsType.indexOf(statsType) === -1 ? 'day' : statsType; statsType = allowStatsType.indexOf(statsType) === -1 ? 'day' : statsType;
if (statsType === 'datetime') format = 'yyyy-MM-dd HH:mm:ss'; if (statsType === 'datetime') format = 'yyyy-MM-dd HH:mm:ss';

View File

@@ -44,7 +44,7 @@ const routers = [
{path: 'formOnlinePage', component: _import('onlineForm/formOnlinePage/index'), name: 'formOnlinePage', props: getProps, meta: {title: '在线表单管理'}}, {path: 'formOnlinePage', component: _import('onlineForm/formOnlinePage/index'), name: 'formOnlinePage', props: getProps, meta: {title: '在线表单管理'}},
{path: 'onlineForm', component: _import('onlineForm/index'), name: 'onlineForm', props: getProps, meta: {title: '在线表单'}}, {path: 'onlineForm', component: _import('onlineForm/index'), name: 'onlineForm', props: getProps, meta: {title: '在线表单'}},
// 工作流模块路由配置 // 工作流模块路由配置
{path: 'formMessage', component: _import('workflow/formMessage/index'), name: 'formMessage', meta: {title: '催办消息'}}, {path: 'formMessage', component: _import('workflow/formMessage/index'), name: 'formMessage', props: getProps, meta: {title: '催办消息'}},
{path: 'formFlowCategory', component: _import('workflow/flowCategory/formFlowCategory'), name: 'formFlowCategory', props: getProps, meta: {title: '流程分类管理'}}, {path: 'formFlowCategory', component: _import('workflow/flowCategory/formFlowCategory'), name: 'formFlowCategory', props: getProps, meta: {title: '流程分类管理'}},
{path: 'formFlowEntry', component: _import('workflow/flowEntry/formFlowEntry'), name: 'formFlowEntry', props: getProps, meta: {title: '流程设计'}}, {path: 'formFlowEntry', component: _import('workflow/flowEntry/formFlowEntry'), name: 'formFlowEntry', props: getProps, meta: {title: '流程设计'}},
{path: 'formAllInstance', component: _import('workflow/taskManager/formAllInstance'), name: 'formAllInstance', props: getProps, meta: {title: '流程实例'}}, {path: 'formAllInstance', component: _import('workflow/taskManager/formAllInstance'), name: 'formAllInstance', props: getProps, meta: {title: '流程实例'}},

View File

@@ -67,6 +67,11 @@ const SysFlowTaskOperationType = new DictionaryBase('任务操作类型', [
name: '驳回', name: '驳回',
symbol: 'REJECT' symbol: 'REJECT'
}, },
{
id: 'rejectToStart',
name: '驳回到起点',
symbol: 'REJECT_TO_START'
},
{ {
id: 'revoke', id: 'revoke',
name: '撤销', name: '撤销',
@@ -182,6 +187,55 @@ const SysFlowWorkOrderStatus = new DictionaryBase('工单状态', [
]); ]);
Vue.prototype.SysFlowWorkOrderStatus = SysFlowWorkOrderStatus; Vue.prototype.SysFlowWorkOrderStatus = SysFlowWorkOrderStatus;
const SysFlowCopyForType = new DictionaryBase('抄送类型', [
{
id: 'user',
name: '抄送人',
symbol: 'USER'
},
{
id: 'dept',
name: '抄送部门',
symbol: 'DEPT'
},
{
id: 'role',
name: '抄送角色',
symbol: 'ROLE'
},
{
id: 'deptPostLeader',
name: '审批人部门领导',
symbol: 'SELF_DEPT_LEADER'
},
{
id: 'upDeptPostLeader',
name: '审批人上级部门领导',
symbol: 'UP_DEPT_LEADER'
},
{
id: 'allDeptPost',
name: '抄送岗位',
symbol: 'POST'
},
{
id: 'selfDeptPost',
name: '审批人部门岗位',
symbol: 'SELF_DEPT_POST'
},
{
id: 'upDeptPost',
name: '审批人上级部门岗位',
symbol: 'UP_DEPT_POST'
},
{
id: 'deptPost',
name: '指定部门岗位',
symbol: 'DEPT_POST'
}
]);
Vue.prototype.SysFlowCopyForType = SysFlowCopyForType;
export { export {
SysFlowEntryPublishedStatus, SysFlowEntryPublishedStatus,
SysFlowEntryBindFormType, SysFlowEntryBindFormType,
@@ -189,5 +243,6 @@ export {
SysFlowTaskOperationType, SysFlowTaskOperationType,
SysFlowTaskType, SysFlowTaskType,
SysFlowVariableType, SysFlowVariableType,
SysFlowWorkOrderStatus SysFlowWorkOrderStatus,
SysFlowCopyForType
} }

View File

@@ -1,23 +1,15 @@
import { FlowOperationController } from '@/api/flowController.js'; import { FlowOperationController } from '@/api/flowController.js';
// 催办消息下拉个数
const MESSAGE_SHOW_COUNT = 10;
// 催办消息轮询间隔 // 催办消息轮询间隔
const MESSAGE_TIMER_INTERVAL = 10000; const MESSAGE_TIMER_INTERVAL = 1000 * 60 * 5;
// 获得消息列表数据 // 获得消息列表数据
function loadMessage (context, owner) { function loadMessage (context, owner) {
let params = { FlowOperationController.getMessageCount(owner, {}, null, {
pageParam: {
pageSize: MESSAGE_SHOW_COUNT,
pageNum: 1
}
}
FlowOperationController.listRemindingTask(owner, params, null, {
showMask: false, showMask: false,
showError: false showError: false
}).then(res => { }).then(res => {
context.commit('setMessageList', res.data); context.commit('setMessageCount', res.data);
}).catch(e => { }).catch(e => {
console.error(e); console.error(e);
}); });

View File

@@ -83,7 +83,7 @@ export default {
getCurrentColumnId: (state) => { getCurrentColumnId: (state) => {
return state.currentColumnId; return state.currentColumnId;
}, },
getMessageList: (state) => { getMessageCount: (state) => {
return state.messageList; return state.messageCount;
} }
} }

View File

@@ -158,10 +158,14 @@ export default {
if (setObjectToSessionStorage('currentColumnId', columnId)) state.currentColumnId = columnId; if (setObjectToSessionStorage('currentColumnId', columnId)) state.currentColumnId = columnId;
if (setObjectToSessionStorage('currentMenuId', null)) state.currentMenuId = null; if (setObjectToSessionStorage('currentMenuId', null)) state.currentMenuId = null;
}, },
setHeadImage: (state, imageHeaderUrl) => {
if (state.userInfo) state.userInfo.headImageUrl = imageHeaderUrl;
},
setMessageTimer: (state, timerHandler) => { setMessageTimer: (state, timerHandler) => {
state.messageTimer = timerHandler; state.messageTimer = timerHandler;
}, },
setMessageList: (state, messageList) => { setMessageCount: (state, messageCount) => {
state.messageList = messageList; if (messageCount) messageCount.totalCount = messageCount.copyMessageCount + messageCount.remindingMessageCount;
state.messageCount = messageCount;
} }
} }

View File

@@ -28,5 +28,5 @@ export default {
currentColumnId: getObjectFromSessionStorage('currentColumnId', undefined), currentColumnId: getObjectFromSessionStorage('currentColumnId', undefined),
// 消息列表 // 消息列表
messageTimeer: null, messageTimeer: null,
messageList: [] messageCount: []
} }

View File

@@ -27,6 +27,22 @@ function initUserInfo (userInfo) {
userInfo.permCodeSet = new Set(userInfo.permCodeList); userInfo.permCodeSet = new Set(userInfo.permCodeList);
} }
if (userInfo != null && userInfo.headImageUrl != null && userInfo.headImageUrl !== '') {
try {
userInfo.headImageUrl = JSON.parse(userInfo.headImageUrl);
if (Array.isArray(userInfo.headImageUrl)) {
userInfo.headImageUrl = userInfo.headImageUrl[0];
} else {
userInfo.headImageUrl = null;
}
} catch (e) {
console.error('解析头像数据失败!', e);
userInfo.headImageUrl = null;
}
} else {
if (userInfo) userInfo.headImageUrl = null;
}
return userInfo; return userInfo;
} }

View File

@@ -83,7 +83,7 @@ export function nameTranslate (name, type) {
* @param {String} childKey 子节点字段名 * @param {String} childKey 子节点字段名
*/ */
function findNode (node, id, list, idKey = 'id', childKey = 'children') { function findNode (node, id, list, idKey = 'id', childKey = 'children') {
if (Array.isArray(list)) list.push(node[idKey]); if (Array.isArray(list)) list.push(node);
if (node[idKey] === id) { if (node[idKey] === id) {
return node; return node;
} }
@@ -104,7 +104,7 @@ function findNode (node, id, list, idKey = 'id', childKey = 'children') {
* @param {*} idKey 主键字段名 * @param {*} idKey 主键字段名
* @param {*} childKey 子节点字段名 * @param {*} childKey 子节点字段名
*/ */
export function findTreeNodePath (treeRoot, id, idKey = 'id', childKey = 'children') { export function findTreeNodeObjectPath (treeRoot, id, idKey = 'id', childKey = 'children') {
let tempList = []; let tempList = [];
for (let i = 0; i < treeRoot.length; i++) { for (let i = 0; i < treeRoot.length; i++) {
if (findNode(treeRoot[i], id, tempList, idKey, childKey)) { if (findNode(treeRoot[i], id, tempList, idKey, childKey)) {
@@ -114,6 +114,11 @@ export function findTreeNodePath (treeRoot, id, idKey = 'id', childKey = 'childr
return []; return [];
} }
export function findTreeNodePath (treeRoot, id, idKey = 'id', childKey = 'children') {
return (this.findTreeNodeObjectPath(treeRoot, id, idKey, childKey) || []).map(item => item[idKey]);
}
/** /**
* 通过id从树中查找节点 * 通过id从树中查找节点
* @param {Array} treeRoot 根节点数组 * @param {Array} treeRoot 根节点数组

View File

@@ -0,0 +1,76 @@
<template>
<div class="form-single-fragment" style="position: relative;">
<el-form ref="formModifyPassword" class="full-width-input" style="width: 100%;"
label-width="80px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="用户头像">
<el-upload
class="upload-image-item" name="uploadFile" :headers="getUploadHeaders"
:action="headImageUploadUrl"
:show-file-list="false" accept=".jpg,.png,.jpeg"
:on-success="onHeadImageUploadSuccess"
:on-error="onUploadError" :on-exceed="onUploadLimit"
>
<img v-if="getHeadImageUrl()" class="upload-image-show" :src="getHeadImageUrl()">
<i v-else class="el-icon-plus upload-image-item" />
</el-upload>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</template>
<script>
import { mapGetters, mapMutations } from 'vuex';
import { SystemController } from '@/api';
/* eslint-disable-next-line */
import { uploadMixin, statsDateRangeMixin } from '@/core/mixins';
export default {
name: 'formModifyHeadImage',
mixins: [uploadMixin, statsDateRangeMixin],
data () {
return {
}
},
methods: {
/**
* 课程图片上传成功
*/
onHeadImageUploadSuccess (response, file, fileList) {
console.log(response, file);
if (response.success) {
this.setHeadImage(response.data);
} else {
this.$message.error(response.message);
}
},
onUploadError (e, file, fileList) {
this.$message.error('文件上传失败');
},
onUploadLimit (files, fileList) {
this.$message.error('已经超出最大上传个数限制');
},
getHeadImageUrl () {
if (this.getUserInfo && this.getUserInfo.headImageUrl != null && this.getUserInfo.headImageUrl !== '') {
let temp = this.getUploadFileUrl(this.getUserInfo.headImageUrl, { filename: this.getUserInfo.headImageUrl.filename });
return temp;
} else {
return null;
}
},
...mapMutations(['setHeadImage'])
},
computed: {
headImageUploadUrl () {
return this.getUploadActionUrl(SystemController.changeHeadImageUrl());
},
...mapGetters(['getUserInfo'])
}
}
</script>
<style>
</style>

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="formModifyPassword" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;" <el-form ref="formModifyPassword" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;"
label-width="120px" size="mini" label-position="right" @submit.native.prevent> label-width="120px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="旧密码" prop="oldPassword"> <el-form-item label="旧密码" prop="oldPassword">
@@ -26,11 +26,11 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-row class="no-scroll flex-box" type="flex" justify="end"> <el-row class="no-scroll flex-box" type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="onCancel(false)"> @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" @click="onSave()"> <el-button type="primary" :size="defaultFormItemSize" @click="onSave()">
保存 保存
</el-button> </el-button>
</el-row> </el-row>

View File

@@ -12,34 +12,36 @@
</el-menu> </el-menu>
</div> </div>
<div class="header-menu" style="flex-grow: 1;"> <div class="header-menu" style="flex-grow: 1;">
<el-popover class="message" style="margin-right: 20px;" width="300" placement="bottom-end" :offset="20" popper-class="message-popover"> <el-dropdown trigger="click" style="margin-right: 10px;" @command="handleMessage">
<el-badge slot="reference" is-dot :hidden="(getMessageList || {}).dataList == null || (getMessageList || {}).dataList.length <= 0" <el-badge is-dot :hidden="(getMessageCount || {}).totalCount == null || (getMessageCount || {}).totalCount <= 0"
style="height: 180x; line-height: 18px; cursor: pointer;"> style="height: 180x; line-height: 18px; cursor: pointer;">
<i class="el-icon-bell" style="font-size: 18px;" /> <i class="el-icon-bell" style="font-size: 18px;" />
</el-badge> </el-badge>
<el-table :data="(getMessageList || {}).dataList" size="mini" empty-text="暂无消息" :show-header="false"> <el-dropdown-menu slot="dropdown" style="min-width: 130px;">
<el-table-column label="流程名称" prop="processDefinitionName" /> <el-dropdown-item class="user-dropdown-item" command="remindingMessage">
<el-table-column width="80px"> 催办消息
<template slot-scope="scope"> <el-badge :value="(getMessageCount || {}).remindingMessageCount"
<el-button size="mini" type="text" @click="onSubmit(scope.row)">办理</el-button> :hidden="(getMessageCount || {}).remindingMessageCount == null || (getMessageCount || {}).remindingMessageCount <= 0"
</template> />
</el-table-column> </el-dropdown-item>
</el-table> <el-dropdown-item class="user-dropdown-item" command="copyMessage">
<el-button v-if="getMessageList && (getMessageList.dataList || []).length < getMessageList.totalCount" 抄送消息
size="small" type="text" style="width: 100%;" <el-badge :value="(getMessageCount || {}).copyMessageCount"
@click="onMoreMessageClick"> :hidden="(getMessageCount || {}).copyMessageCount == null || (getMessageCount || {}).copyMessageCount <= 0"
查看更多 />
</el-button> </el-dropdown-item>
</el-popover> </el-dropdown-menu>
</el-dropdown>
<el-dropdown class="user-dropdown" trigger="click" @command="handleCommand"> <el-dropdown class="user-dropdown" trigger="click" @command="handleCommand">
<span class="el-dropdown-link">{{(getUserInfo || {}).showName}}<i class="el-icon-arrow-down el-icon--right"></i> <span class="el-dropdown-link">{{(getUserInfo || {}).showName}}<i class="el-icon-arrow-down el-icon--right"></i>
</span> </span>
<el-dropdown-menu slot="dropdown"> <el-dropdown-menu slot="dropdown">
<el-dropdown-item class="user-dropdown-item" command="modifyPassword">修改密码</el-dropdown-item> <el-dropdown-item class="user-dropdown-item" command="modifyPassword">修改密码</el-dropdown-item>
<el-dropdown-item class="user-dropdown-item" command="modifyHeadImage">修改头像</el-dropdown-item>
<el-dropdown-item class="user-dropdown-item" command="logout">退出登录</el-dropdown-item> <el-dropdown-item class="user-dropdown-item" command="logout">退出登录</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
<img :src="header" class="header-img" /> <img :src="getHeadImageUrl ? getHeadImageUrl : header" class="header-img" />
</div> </div>
</el-header> </el-header>
<el-main :style="{'padding-bottom': '15px', 'padding-top': (getMultiTags ? '0px' : '15px')}"> <el-main :style="{'padding-bottom': '15px', 'padding-top': (getMultiTags ? '0px' : '15px')}">
@@ -60,11 +62,13 @@
import '@/staticDict/onlineStaticDict.js'; import '@/staticDict/onlineStaticDict.js';
import SideBar from './components/sidebar/sidebar.vue'; import SideBar from './components/sidebar/sidebar.vue';
import { mapGetters, mapMutations, mapActions } from 'vuex'; import { mapGetters, mapMutations, mapActions } from 'vuex';
/* eslint-disable-next-line */
import { uploadMixin, statsDateRangeMixin } from '@/core/mixins';
import Breadcrumb from './components/breadcrumb'; import Breadcrumb from './components/breadcrumb';
import TagPanel from './components/tags/tagPanel.vue'; import TagPanel from './components/tags/tagPanel.vue';
import formModifyPassword from './components/formModifyPassword/index.vue'; import formModifyPassword from './components/formModifyPassword/index.vue';
import formModifyHeadImage from './components/formModifyHeadImage/index.vue';
import { SystemController } from '@/api'; import { SystemController } from '@/api';
import { FlowOperationController } from '@/api/flowController.js';
import { getToken, setToken } from '@/utils'; import { getToken, setToken } from '@/utils';
export default { export default {
@@ -78,6 +82,7 @@ export default {
'breadcrumb': Breadcrumb, 'breadcrumb': Breadcrumb,
'tag-panel': TagPanel 'tag-panel': TagPanel
}, },
mixins: [uploadMixin, statsDateRangeMixin],
methods: { methods: {
toggleSideBar () { toggleSideBar () {
this.setCollapse(!this.getCollapse); this.setCollapse(!this.getCollapse);
@@ -125,47 +130,22 @@ export default {
this.$dialog.show('修改密码', formModifyPassword, { this.$dialog.show('修改密码', formModifyPassword, {
area: ['500px'] area: ['500px']
}, {}).catch(e => {}); }, {}).catch(e => {});
} else if (command === 'modifyHeadImage') {
this.$dialog.show('修改头像', formModifyHeadImage, {
area: ['500px']
}, {}).catch(e => {});
} }
}, },
// 办理催办任务 handleMessage (type) {
onSubmit (row) { this.onMoreMessageClick(type);
console.log(row);
let params = {
processInstanceId: row.processInstanceId,
processDefinitionId: row.processDefinitionId,
taskId: row.taskId
}
FlowOperationController.viewRuntimeTaskInfo(this, params).then(res => {
if (res.data) {
this.$router.push({
name: res.data.routerName || 'handlerFlowTask',
query: {
isRuntime: true,
taskId: row.taskId,
processDefinitionKey: row.processDefinitionKey,
processInstanceId: row.processInstanceId,
processDefinitionId: row.processDefinitionId,
formId: res.data.formId,
routerName: res.data.routerName,
readOnly: res.data.readOnly,
taskName: row.taskName,
flowEntryName: row.processDefinitionName,
processInstanceInitiator: row.processInstanceInitiator,
// 过滤掉加签和撤销操作,只有在已完成任务里可以操作
operationList: (res.data.operationList || []).filter(item => {
return item.type !== this.SysFlowTaskOperationType.CO_SIGN && item.type !== this.SysFlowTaskOperationType.REVOKE;
}),
variableList: res.data.variableList
}
});
}
}).catch(e => {});
}, },
// 更多催办消息 // 更多催办消息
onMoreMessageClick () { onMoreMessageClick (type) {
this.$router.push({ this.$router.push({
name: 'formMessage' name: 'formMessage',
query: {
type: type
}
}); });
}, },
...mapMutations([ ...mapMutations([
@@ -199,6 +179,14 @@ export default {
{'min-height': this.getMainContextHeight + 'px'} {'min-height': this.getMainContextHeight + 'px'}
] ]
}, },
getHeadImageUrl () {
if (this.getUserInfo && this.getUserInfo.headImageUrl != null && this.getUserInfo.headImageUrl !== '') {
let temp = this.getUploadFileUrl(this.getUserInfo.headImageUrl, { filename: this.getUserInfo.headImageUrl.filename });
return temp;
} else {
return null;
}
},
...mapGetters([ ...mapGetters([
'getMultiTags', 'getMultiTags',
'getClientHeight', 'getClientHeight',
@@ -210,7 +198,7 @@ export default {
'getCurrentColumnId', 'getCurrentColumnId',
'getColumnList', 'getColumnList',
'getMenuItem', 'getMenuItem',
'getMessageList', 'getMessageCount',
'getMainContextHeight' 'getMainContextHeight'
]) ])
}, },

View File

@@ -24,6 +24,13 @@
</el-form> </el-form>
</div> </div>
</div> </div>
<Verify
ref="verify"
@success="onVerifySuccess"
:mode="'pop'"
captchaType="blockPuzzle"
:imgSize="{ width: '330px', height: '155px' }"
/>
</div> </div>
</template> </template>
@@ -32,8 +39,12 @@ import { SystemController } from '@/api';
import { mapMutations } from 'vuex'; import { mapMutations } from 'vuex';
import projectConfig from '@/core/config'; import projectConfig from '@/core/config';
import { encrypt, setToken } from '@/utils'; import { encrypt, setToken } from '@/utils';
import Verify from '@/components/Verifition/Verify.vue';
export default { export default {
components: {
Verify
},
data () { data () {
return { return {
bkImg: require('@/assets/img/login.png'), bkImg: require('@/assets/img/login.png'),
@@ -57,9 +68,15 @@ export default {
dataFormSubmit () { dataFormSubmit () {
this.$refs['dataForm'].validate(valid => { this.$refs['dataForm'].validate(valid => {
if (valid) { if (valid) {
this.$refs.verify.show();
}
});
},
login (verifyParams) {
let params = { let params = {
loginName: this.dataForm.mobilePhone, loginName: this.dataForm.mobilePhone,
password: encrypt(this.dataForm.password) password: encrypt(this.dataForm.password),
captchaVerification: (verifyParams || {}).captchaVerification
}; };
SystemController.login(this, params, null, {showMask: false}).then(data => { SystemController.login(this, params, null, {showMask: false}).then(data => {
@@ -71,8 +88,9 @@ export default {
this.setCurrentMenuId(null); this.setCurrentMenuId(null);
this.$router.replace({ name: 'main' }); this.$router.replace({ name: 'main' });
}).catch(e => {}); }).catch(e => {});
} },
}); onVerifySuccess (verifyParams) {
this.login(verifyParams);
}, },
...mapMutations(['setUserInfo', 'setMenuList', 'setCurrentMenuId']) ...mapMutations(['setUserInfo', 'setMenuList', 'setCurrentMenuId'])
}, },

View File

@@ -1,5 +1,5 @@
<template> <template>
<el-form-item :label="widgetConfig.showName + ''" :prop="widgetConfig.variableName"> <el-form-item :label="widgetConfig.showName + ''" :prop="'formFilter.' + widgetConfig.column.columnName">
<el-input v-if="widgetConfig.widgetType === SysCustomWidgetType.Input" <el-input v-if="widgetConfig.widgetType === SysCustomWidgetType.Input"
class="filter-item" clearable class="filter-item" clearable
:type="widgetConfig.type" :type="widgetConfig.type"

View File

@@ -7,7 +7,7 @@
{{widgetConfig.showName}} {{widgetConfig.showName}}
</div> </div>
<div> <div>
<el-button size="mini" <el-button :size="defaultFormItemSize"
v-for="operation in getTableOperation(false)" :key="operation.id" v-for="operation in getTableOperation(false)" :key="operation.id"
:plain="operation.plain" :plain="operation.plain"
:type="operation.btnType" :type="operation.btnType"
@@ -18,7 +18,7 @@
</el-row> </el-row>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-table size="mini" header-cell-class-name="table-header-gray" ref="tableImpl" <el-table :size="defaultFormItemSize" header-cell-class-name="table-header-gray" ref="tableImpl"
:style="{height: (widgetConfig.tableInfo.height != null && widgetConfig.tableInfo.height !== '') ? widgetConfig.tableInfo.height + 'px' : undefined}" :style="{height: (widgetConfig.tableInfo.height != null && widgetConfig.tableInfo.height !== '') ? widgetConfig.tableInfo.height + 'px' : undefined}"
:height="(widgetConfig.tableInfo.height != null && widgetConfig.tableInfo.height !== '') ? widgetConfig.tableInfo.height + 'px' : undefined" :height="(widgetConfig.tableInfo.height != null && widgetConfig.tableInfo.height !== '') ? widgetConfig.tableInfo.height + 'px' : undefined"
:data="tableWidget.dataList" :row-key="primaryColumnName" :data="tableWidget.dataList" :row-key="primaryColumnName"
@@ -32,7 +32,7 @@
:sortable="tableColumn.sortable ? 'custom' : false" :sortable="tableColumn.sortable ? 'custom' : false"
> >
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="scope.row[tableColumn.dataFieldName] ? 'success' : 'danger'"> <el-tag :size="defaultFormItemSize" :type="scope.row[tableColumn.dataFieldName] ? 'success' : 'danger'">
{{scope.row[tableColumn.dataFieldName] ? '是' : '否'}} {{scope.row[tableColumn.dataFieldName] ? '是' : '否'}}
</el-tag> </el-tag>
</template> </template>
@@ -84,7 +84,7 @@
</template> </template>
</el-table-column> </el-table-column>
</template> </template>
<el-table-column v-if="formType === SysOnlineFormType.WORK_ORDER" label="当前任务" prop="(runtimeTaskInfo || {}).taskName" /> <el-table-column v-if="formType === SysOnlineFormType.WORK_ORDER" label="当前任务" prop="runtimeTaskInfo.taskName" />
<el-table-column v-if="formType === SysOnlineFormType.WORK_ORDER" label="流程创建时间" width="180px" prop="createTime" /> <el-table-column v-if="formType === SysOnlineFormType.WORK_ORDER" label="流程创建时间" width="180px" prop="createTime" />
<el-table-column v-if="formType === SysOnlineFormType.WORK_ORDER" label="流程状态" width="100px" prop="flowStatus" /> <el-table-column v-if="formType === SysOnlineFormType.WORK_ORDER" label="流程状态" width="100px" prop="flowStatus" />
<el-table-column <el-table-column
@@ -94,27 +94,27 @@
<template slot-scope="scope"> <template slot-scope="scope">
<el-button v-for="operation in getTableOperation(true)" :key="operation.id" <el-button v-for="operation in getTableOperation(true)" :key="operation.id"
:class="operation.btnClass" :class="operation.btnClass"
type="text" size="mini" type="text" :size="defaultFormItemSize"
@click.stop="onOperationClick(operation, scope.row)" @click.stop="onOperationClick(operation, scope.row)"
> >
{{operation.name}} {{operation.name}}
</el-button> </el-button>
<el-button type="text" size="mini" <el-button type="text" :size="defaultFormItemSize"
v-if="formType === SysOnlineFormType.WORK_ORDER && (scope.row.initTaskInfo || {}).taskKey !== (scope.row.runtimeTaskInfo || {}).taskKey" v-if="formType === SysOnlineFormType.WORK_ORDER && (scope.row.initTaskInfo || {}).taskKey !== (scope.row.runtimeTaskInfo || {}).taskKey"
@click.stop="onViewWorkOrder(scope.row)"> @click.stop="onViewWorkOrder(scope.row)">
详情 详情
</el-button> </el-button>
<el-button type="text" size="mini" <el-button type="text" :size="defaultFormItemSize"
v-if="formType === SysOnlineFormType.WORK_ORDER && (scope.row.initTaskInfo || {}).taskKey === (scope.row.runtimeTaskInfo || {}).taskKey" v-if="formType === SysOnlineFormType.WORK_ORDER && (scope.row.initTaskInfo || {}).taskKey === (scope.row.runtimeTaskInfo || {}).taskKey"
@click.stop="onHandlerWorkOrder(scope.row)"> @click.stop="onHandlerWorkOrder(scope.row)">
办理 办理
</el-button> </el-button>
<el-button type="text" size="mini" <el-button type="text" :size="defaultFormItemSize"
v-if="formType === SysOnlineFormType.WORK_ORDER" v-if="formType === SysOnlineFormType.WORK_ORDER"
@click.stop="onHandlerRemindClick(scope.row)"> @click.stop="onHandlerRemindClick(scope.row)">
催办 催办
</el-button> </el-button>
<el-button type="text" size="mini" class="table-btn error" <el-button type="text" :size="defaultFormItemSize" class="table-btn error"
v-if="formType === SysOnlineFormType.WORK_ORDER" v-if="formType === SysOnlineFormType.WORK_ORDER"
@click.stop="onCancelWorkOrder(scope.row)"> @click.stop="onCancelWorkOrder(scope.row)">
撤销 撤销

View File

@@ -31,7 +31,7 @@
</template> </template>
<!-- 上传文件 --> <!-- 上传文件 -->
<template v-else-if="!widgetConfig.isImage"> <template v-else-if="!widgetConfig.isImage">
<el-button size="mini" type="primary">点击上传</el-button> <el-button :size="defaultFormItemSize" type="primary">点击上传</el-button>
</template> </template>
</el-upload> </el-upload>
<template v-else> <template v-else>

View File

@@ -12,7 +12,8 @@
> >
{{value}} {{value}}
</span> </span>
<span v-else-if="widgetConfig.widgetType === SysCustomWidgetType.Select">{{getDictValue(value)}}</span> <span v-else-if="widgetConfig.widgetType === SysCustomWidgetType.Select">{{dropdownShowName}}</span>
<span v-else-if="widgetConfig.widgetType === SysCustomWidgetType.Cascader">{{dropdownShowName}}</span>
<div v-else-if="widgetConfig.widgetType === SysCustomWidgetType.RichEditor" v-html="value" /> <div v-else-if="widgetConfig.widgetType === SysCustomWidgetType.RichEditor" v-html="value" />
<span v-else-if="widgetConfig.widgetType === SysCustomWidgetType.Switch">{{value ? '是' : '否'}}</span> <span v-else-if="widgetConfig.widgetType === SysCustomWidgetType.Switch">{{value ? '是' : '否'}}</span>
</el-form-item> </el-form-item>
@@ -107,7 +108,7 @@
<script> <script>
import { DropdownWidget } from '@/utils/widget.js'; import { DropdownWidget } from '@/utils/widget.js';
import { getDictDataList } from '../utils'; import { getDictDataList } from '../utils';
import { findItemFromList, findTreeNodePath } from '@/utils'; import { findItemFromList, findTreeNodePath, findTreeNodeObjectPath } from '@/utils';
import CustomText from './customText.vue'; import CustomText from './customText.vue';
import CustomImage from './customImage.vue'; import CustomImage from './customImage.vue';
@@ -213,12 +214,39 @@ export default {
getDictValue (id) { getDictValue (id) {
if (this.dropdownWidget && Array.isArray(this.dropdownWidget.dropdownList)) { if (this.dropdownWidget && Array.isArray(this.dropdownWidget.dropdownList)) {
return (findItemFromList(this.dropdownWidget.dropdownList, id, 'id') || {}).name; return (findItemFromList(this.dropdownWidget.dropdownList, id, 'id') || {}).name;
} else {
return '';
} }
return id;
},
getTreeDictValue (id) {
console.log(this.dropdownWidget.dropdownList);
if (this.dropdownWidget && Array.isArray(this.dropdownWidget.dropdownList)) {
let nodePath = findTreeNodeObjectPath(this.dropdownWidget.dropdownList, id, 'id');
console.log(nodePath);
if (Array.isArray(nodePath)) {
return nodePath.map(item => item.name).join(' / ');
}
}
return id;
}
},
computed: {
dropdownShowName () {
console.log((this.dropdownWidget || {}).dropdownList, this.value);
if (this.dropdownWidget && Array.isArray(this.dropdownWidget.dropdownList)) {
if (this.widgetConfig.widgetType === this.SysCustomWidgetType.Select) {
return this.getDictValue(this.value);
} else if (this.widgetConfig.widgetType === this.SysCustomWidgetType.Cascader) {
return this.getTreeDictValue(this.value);
}
}
return this.value;
} }
}, },
mounted () { mounted () {
this.onVisibleChange();
} }
} }
</script> </script>

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="form" :model="formData" class="full-width-input" :rules="rules" <el-form ref="form" :model="formData" class="full-width-input" :rules="rules"
label-width="100px" size="mini" label-position="right" @submit.native.prevent> label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="参数名称"> <el-form-item label="参数名称">
@@ -47,11 +47,11 @@
</el-col> </el-col>
<el-col :span="24" style="margin-top: 15px;"> <el-col :span="24" style="margin-top: 15px;">
<el-row class="no-scroll flex-box" type="flex" justify="end"> <el-row class="no-scroll flex-box" type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="onCancel(false)"> @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" <el-button type="primary" :size="defaultFormItemSize"
@click="onSubmit()"> @click="onSubmit()">
保存 保存
</el-button> </el-button>

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="form" :model="formData" class="full-width-input" :rules="rules" <el-form ref="form" :model="formData" class="full-width-input" :rules="rules"
label-width="100px" size="mini" label-position="right" @submit.native.prevent> label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="表单参数" prop="objectFieldName"> <el-form-item label="表单参数" prop="objectFieldName">
@@ -14,11 +14,11 @@
</el-col> </el-col>
<el-col :span="24" style="margin-top: 15px;"> <el-col :span="24" style="margin-top: 15px;">
<el-row class="no-scroll flex-box" type="flex" justify="end"> <el-row class="no-scroll flex-box" type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="onCancel(false)"> @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" <el-button type="primary" :size="defaultFormItemSize"
@click="onSubmit()"> @click="onSubmit()">
保存 保存
</el-button> </el-button>

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="form" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;" <el-form ref="form" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;"
label-width="120px" size="mini" label-position="right" @submit.native.prevent> label-width="120px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="过滤数据表" prop="tableId"> <el-form-item label="过滤数据表" prop="tableId">
@@ -14,7 +14,7 @@
<span>{{table.tableName}}</span> <span>{{table.tableName}}</span>
<el-tag <el-tag
:type="table.relationType == null ? 'success' : 'parimary'" :type="table.relationType == null ? 'success' : 'parimary'"
style="margin-left: 30px;" size="mini" effect="dark" > style="margin-left: 30px;" :size="defaultFormItemSize" effect="dark" >
{{(table.relationType == null || index === 0) ? '主表' : '一对一关联'}} {{(table.relationType == null || index === 0) ? '主表' : '一对一关联'}}
</el-tag> </el-tag>
</el-row> </el-row>
@@ -72,11 +72,11 @@
</el-col> </el-col>
<el-col :span="24" style="margin-top: 15px;"> <el-col :span="24" style="margin-top: 15px;">
<el-row class="no-scroll flex-box" type="flex" justify="end"> <el-row class="no-scroll flex-box" type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="onCancel(false)"> @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" <el-button type="primary" :size="defaultFormItemSize"
@click="onSubmit()"> @click="onSubmit()">
保存 保存
</el-button> </el-button>

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="form" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;" <el-form ref="form" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;"
label-width="100px" size="mini" label-position="right" @submit.native.prevent> label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="字段数据表" prop="tableId"> <el-form-item label="字段数据表" prop="tableId">
@@ -14,7 +14,7 @@
<span>{{table.tableName}}</span> <span>{{table.tableName}}</span>
<el-tag <el-tag
:type="table.relationType == null ? 'success' : 'parimary'" :type="table.relationType == null ? 'success' : 'parimary'"
style="margin-left: 30px;" size="mini" effect="dark" > style="margin-left: 30px;" :size="defaultFormItemSize" effect="dark" >
{{(table.relationType == null || index === 0) ? '主表' : '一对一关联'}} {{(table.relationType == null || index === 0) ? '主表' : '一对一关联'}}
</el-tag> </el-tag>
</el-row> </el-row>
@@ -56,11 +56,11 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-row class="no-scroll flex-box" type="flex" justify="end"> <el-row class="no-scroll flex-box" type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="onCancel(false)"> @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" <el-button type="primary" :size="defaultFormItemSize"
@click="onSubmit()"> @click="onSubmit()">
保存 保存
</el-button> </el-button>

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="form" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;" <el-form ref="form" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;"
label-width="100px" size="mini" label-position="right" @submit.native.prevent> label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="操作名称" prop="name"> <el-form-item label="操作名称" prop="name">
@@ -44,11 +44,11 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-row class="no-scroll flex-box" type="flex" justify="end"> <el-row class="no-scroll flex-box" type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="onCancel(false)"> @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" <el-button type="primary" :size="defaultFormItemSize"
@click="onSubmit()"> @click="onSubmit()">
保存 保存
</el-button> </el-button>

View File

@@ -24,7 +24,7 @@
<span :title="table.tag.datasourceName || table.tag.relationName"> <span :title="table.tag.datasourceName || table.tag.relationName">
{{table.tag.datasourceName || table.tag.relationName}} {{table.tag.datasourceName || table.tag.relationName}}
</span> </span>
<el-tag v-if="getMasterTable !== table" size="mini" style="margin-left: 5px;" effect="dark" :type="getTableTagType(table.relationType)">{{getTableRelationName(table.relationType)}}</el-tag> <el-tag v-if="getMasterTable !== table" :size="defaultFormItemSize" style="margin-left: 5px;" effect="dark" :type="getTableTagType(table.relationType)">{{getTableRelationName(table.relationType)}}</el-tag>
</div> </div>
<Draggable class="card-item-box" draggable=".card-item" :list="getTableColumnList(table)" <Draggable class="card-item-box" draggable=".card-item" :list="getTableColumnList(table)"
:group="{ name: 'componentsGroup', pull: 'clone', put: false }" :group="{ name: 'componentsGroup', pull: 'clone', put: false }"
@@ -67,7 +67,7 @@
<div @click="onFormClick" :style="{'min-height': height - 50 + 'px'}"> <div @click="onFormClick" :style="{'min-height': height - 50 + 'px'}">
<template v-if="formConfig.formType === SysOnlineFormType.QUERY || formConfig.formType === SysOnlineFormType.WORK_ORDER"> <template v-if="formConfig.formType === SysOnlineFormType.QUERY || formConfig.formType === SysOnlineFormType.WORK_ORDER">
<div style="position: relative;"> <div style="position: relative;">
<el-form :label-width="formConfig.labelWidth + 'px'" size="mini" :label-position="formConfig.labelPosition" @submit.native.prevent> <el-form :label-width="formConfig.labelWidth + 'px'" :size="defaultFormItemSize" :label-position="formConfig.labelPosition" @submit.native.prevent>
<DraggableFilterBox :list="formWidgetList" :itemWidth="formConfig.labelWidth + 272" <DraggableFilterBox :list="formWidgetList" :itemWidth="formConfig.labelWidth + 272"
:style="{'min-height': '50px'}" style="padding: 20px 20px 0px 20px; overflow: hidden; display: flex; justify-content: space-between;" :style="{'min-height': '50px'}" style="padding: 20px 20px 0px 20px; overflow: hidden; display: flex; justify-content: space-between;"
> >
@@ -79,10 +79,10 @@
@delete="onWidgetDeleteClick" @delete="onWidgetDeleteClick"
/> />
<div slot="operator" style="padding: 13px 10px;" v-if="Array.isArray(formWidgetList) && formWidgetList.length > 0"> <div slot="operator" style="padding: 13px 10px;" v-if="Array.isArray(formWidgetList) && formWidgetList.length > 0">
<el-button type="primary" :plain="true" size="mini">查询</el-button> <el-button type="primary" :plain="true" :size="defaultFormItemSize">查询</el-button>
</div> </div>
<div slot="operator" style="padding: 13px 10px;" v-for="operation in getTableOperation(false)" :key="operation.id"> <div slot="operator" style="padding: 13px 10px;" v-for="operation in getTableOperation(false)" :key="operation.id">
<el-button size="mini" <el-button :size="defaultFormItemSize"
:plain="operation.plain" :plain="operation.plain"
:type="operation.btnType" :type="operation.btnType"
@click.stop=""> @click.stop="">
@@ -100,10 +100,10 @@
format="yyyy-MM-dd" value-format="yyyy-MM-dd HH:mm:ss" /> format="yyyy-MM-dd" value-format="yyyy-MM-dd HH:mm:ss" />
</el-form-item> </el-form-item>
<div slot="operator" style="padding: 13px 10px;"> <div slot="operator" style="padding: 13px 10px;">
<el-button type="primary" :plain="true" size="mini">查询</el-button> <el-button type="primary" :plain="true" :size="defaultFormItemSize">查询</el-button>
</div> </div>
<div slot="operator" style="padding: 13px 10px;"> <div slot="operator" style="padding: 13px 10px;">
<el-button type="primary" size="mini">新建</el-button> <el-button type="primary" :size="defaultFormItemSize">新建</el-button>
</div> </div>
</template> </template>
</DraggableFilterBox> </DraggableFilterBox>
@@ -120,7 +120,7 @@
</div> </div>
</template> </template>
<el-row v-else :gutter="formConfig.gutter"> <el-row v-else :gutter="formConfig.gutter">
<el-form class="full-width-input" size="mini" :label-width="formConfig.labelWidth + 'px'" :label-position="formConfig.labelPosition"> <el-form class="full-width-input" :size="defaultFormItemSize" :label-width="formConfig.labelWidth + 'px'" :label-position="formConfig.labelPosition">
<Draggable draggable=".draggable-item" :list="formWidgetList" group="componentsGroup" <Draggable draggable=".draggable-item" :list="formWidgetList" group="componentsGroup"
:style="{'min-height': height - 50 + 'px'}" style="padding: 20px; overflow: hidden;" :style="{'min-height': height - 50 + 'px'}" style="padding: 20px; overflow: hidden;"
> >
@@ -508,7 +508,7 @@
</el-table-column> </el-table-column>
<el-table-column label="操作类型" prop="type" width="90px"> <el-table-column label="操作类型" prop="type" width="90px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" effect="dark" :type="scope.row.rowOperation ? 'success' : 'warning'"> <el-tag :size="defaultFormItemSize" effect="dark" :type="scope.row.rowOperation ? 'success' : 'warning'">
{{scope.row.rowOperation ? '行内操作' : '表格操作'}} {{scope.row.rowOperation ? '行内操作' : '表格操作'}}
</el-tag> </el-tag>
</template> </template>
@@ -534,7 +534,7 @@
</el-table-column> </el-table-column>
<el-table-column label="参数名称" width="120px"> <el-table-column label="参数名称" width="120px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" effect="dark" :type="scope.row.table.relationType == null ? 'success' : 'primary'"> <el-tag :size="defaultFormItemSize" effect="dark" :type="scope.row.table.relationType == null ? 'success' : 'primary'">
{{scope.row.column.columnName}} {{scope.row.column.columnName}}
</el-tag> </el-tag>
</template> </template>
@@ -583,8 +583,8 @@
<el-table-column label="参数名" prop="columnName" /> <el-table-column label="参数名" prop="columnName" />
<el-table-column label="参数类型" width="100px"> <el-table-column label="参数类型" width="100px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag v-if="scope.row.primaryKey" size="mini" type="warning">主键</el-tag> <el-tag v-if="scope.row.primaryKey" :size="defaultFormItemSize" type="warning">主键</el-tag>
<el-tag v-if="scope.row.slaveColumn" size="mini" type="primary">关联字段</el-tag> <el-tag v-if="scope.row.slaveColumn" :size="defaultFormItemSize" type="primary">关联字段</el-tag>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@@ -698,6 +698,10 @@ export default {
}).catch(e => {}); }).catch(e => {});
}, },
onPreview () { onPreview () {
if (this.formConfig.formType === this.SysOnlineFormType.WORK_ORDER || this.formConfig.formType === this.SysOnlineFormType.FLOW) {
this.$message.warning('流程页面表单不能预览!');
return;
}
this.onSave().then(res => { this.onSave().then(res => {
let dialogPos = { let dialogPos = {
area: this.formConfig.formType === this.SysOnlineFormType.QUERY ? ['70vw', '80vh'] : this.formConfig.width + 'px', area: this.formConfig.formType === this.SysOnlineFormType.QUERY ? ['70vw', '80vh'] : this.formConfig.width + 'px',

View File

@@ -1,7 +1,7 @@
<template> <template>
<el-popover trigger="click" width="300px" @show="onInit" v-model="isShow"> <el-popover trigger="click" width="300px" @show="onInit" v-model="isShow">
<el-form ref="dictData" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;" <el-form ref="dictData" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;"
label-width="100px" size="mini" label-position="right" @submit.native.prevent> label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-form-item label="字典键类型"> <el-form-item label="字典键类型">
<el-radio-group v-model="formData.type"> <el-radio-group v-model="formData.type">
<el-radio-button label="Integer">整数</el-radio-button> <el-radio-button label="Integer">整数</el-radio-button>
@@ -19,10 +19,10 @@
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-row type="flex" justify="end"> <el-row type="flex" justify="end">
<el-button size="mini" type="primary" :plain="true" @click="onCancel">取消</el-button> <el-button :size="defaultFormItemSize" type="primary" :plain="true" @click="onCancel">取消</el-button>
<el-button size="mini" type="primary" @click="onSubmit">保存</el-button> <el-button :size="defaultFormItemSize" type="primary" @click="onSubmit">保存</el-button>
</el-row> </el-row>
<el-button class="table-btn" :class="{'success': value != null}" slot="reference" size="mini" type="text">{{btnText}}</el-button> <el-button class="table-btn" :class="{'success': value != null}" slot="reference" :size="defaultFormItemSize" type="text">{{btnText}}</el-button>
</el-popover> </el-popover>
</template> </template>

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="formEditOnlineFormDict" :model="formOnlineDict" class="full-width-input" :rules="rules" style="width: 100%;" <el-form ref="formEditOnlineFormDict" :model="formOnlineDict" class="full-width-input" :rules="rules" style="width: 100%;"
label-width="150px" size="mini" label-position="right" @submit.native.prevent> label-width="150px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="字典名称" prop="dictName"> <el-form-item label="字典名称" prop="dictName">
@@ -58,7 +58,7 @@
<el-input class="input-item" v-model="formOnlineDict.dictListUrl" <el-input class="input-item" v-model="formOnlineDict.dictListUrl"
:clearable="true" placeholder="输入字典获取url" :clearable="true" placeholder="输入字典获取url"
@change="clearDictInfo"> @change="clearDictInfo">
<el-button slot="append" size="mini" @click="onGetDictData(true)">获取数据</el-button> <el-button slot="append" :size="defaultFormItemSize" @click="onGetDictData(true)">获取数据</el-button>
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@@ -146,7 +146,7 @@
</el-col> </el-col>
<!-- 字典数据 --> <!-- 字典数据 -->
<el-col :span="24" v-if="formOnlineDict.dictType === SysOnlineDictType.STATIC || formOnlineDict.dictType === SysOnlineDictType.CUSTOM"> <el-col :span="24" v-if="formOnlineDict.dictType === SysOnlineDictType.STATIC || formOnlineDict.dictType === SysOnlineDictType.CUSTOM">
<el-table :data="dictData" size="mini" header-cell-class-name="table-header-gray" height="300px"> <el-table :data="dictData" :size="defaultFormItemSize" header-cell-class-name="table-header-gray" height="300px">
<el-table-column label="字典键数据" prop="id" /> <el-table-column label="字典键数据" prop="id" />
<el-table-column label="字典值数据" prop="name" /> <el-table-column label="字典值数据" prop="name" />
<el-table-column label="操作" width="100px" fixed="right" align="right" <el-table-column label="操作" width="100px" fixed="right" align="right"
@@ -165,11 +165,11 @@
</el-col> </el-col>
<el-col :span="24" style="margin-top: 15px;"> <el-col :span="24" style="margin-top: 15px;">
<el-row class="no-scroll flex-box" type="flex" justify="end"> <el-row class="no-scroll flex-box" type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="onCancel(false)"> @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" <el-button type="primary" :size="defaultFormItemSize"
@click="onSaveClick()"> @click="onSaveClick()">
保存 保存
</el-button> </el-button>

View File

@@ -1,13 +1,14 @@
<template> <template>
<div style="position: relative;"> <div style="position: relative;">
<el-form label-width="100px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="formOnlineDict" :model="formOnlineDict" label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="字典名称"> <el-form-item label="字典名称" prop="formFilter.dictName">
<el-input class="filter-item" v-model="formOnlineDict.formFilter.dictName" <el-input class="filter-item" v-model="formOnlineDict.formFilter.dictName"
:clearable="true" placeholder="字典名称" /> :clearable="true" placeholder="字典名称" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshOnlineDict(true)">查询</el-button> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onReset">重置</el-button>
<el-button slot="operator" type="primary" size="mini" <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshOnlineDict(true)">查询</el-button>
<el-button slot="operator" type="primary" :size="defaultFormItemSize"
@click="onFormCreateDictClick()"> @click="onFormCreateDictClick()">
新建 新建
</el-button> </el-button>
@@ -15,30 +16,30 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table ref="class" :data="formOnlineDict.dict.impl.dataList" size="mini" @sort-change="formOnlineDict.dict.impl.onSortChange" <el-table ref="class" :data="formOnlineDict.dict.impl.dataList" :size="defaultFormItemSize" @sort-change="formOnlineDict.dict.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" :index="formOnlineDict.dict.impl.getTableIndex" /> <el-table-column label="序号" header-align="center" align="center" type="index" width="55px" :index="formOnlineDict.dict.impl.getTableIndex" />
<el-table-column label="字典名称" prop="dictName" /> <el-table-column label="字典名称" prop="dictName" />
<el-table-column label="字典类型" prop="dictTypeDictMap.name"> <el-table-column label="字典类型" prop="dictTypeDictMap.name">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="getDictTypeTagType(scope.row.dictType)"> <el-tag :size="defaultFormItemSize" :type="getDictTypeTagType(scope.row.dictType)">
{{scope.row.dictTypeDictMap.name}} {{scope.row.dictTypeDictMap.name}}
</el-tag> </el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="是否树字典"> <el-table-column label="是否树字典">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="scope.row.treeFlag ? 'success' : 'danger'"> <el-tag :size="defaultFormItemSize" :type="scope.row.treeFlag ? 'success' : 'danger'">
{{scope.row.treeFlag ? '是' : '否'}} {{scope.row.treeFlag ? '是' : '否'}}
</el-tag> </el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" fixed="right" width="150px"> <el-table-column label="操作" fixed="right" width="150px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button class="table-btn success" @click.stop="onFormEditDictClick(scope.row)" type="text" size="mini"> <el-button class="table-btn success" @click.stop="onFormEditDictClick(scope.row)" type="text" :size="defaultFormItemSize">
编辑 编辑
</el-button> </el-button>
<el-button class="table-btn delete" @click.stop="onFormDeleteDictClick(scope.row)" type="text" size="mini"> <el-button class="table-btn delete" @click.stop="onFormDeleteDictClick(scope.row)" type="text" :size="defaultFormItemSize">
删除 删除
</el-button> </el-button>
</template> </template>
@@ -92,6 +93,10 @@ export default {
} }
}, },
methods: { methods: {
onReset () {
this.$refs.formOnlineDict.resetFields();
this.refreshOnlineDict(true);
},
getDictTypeTagType (type) { getDictTypeTagType (type) {
switch (type) { switch (type) {
case this.SysOnlineDictType.TABLE: return 'success'; case this.SysOnlineDictType.TABLE: return 'success';

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="form" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;" <el-form ref="form" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;"
label-width="100px" size="mini" label-position="right" @submit.native.prevent> label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="表单编码" prop="formCode"> <el-form-item label="表单编码" prop="formCode">
@@ -38,7 +38,7 @@
<el-option v-for="item in getValidTableList" :key="item.tableId" :value="item.tableId" :label="item.tableName"> <el-option v-for="item in getValidTableList" :key="item.tableId" :value="item.tableId" :label="item.tableName">
<el-row type="flex" justify="space-between" align="middle"> <el-row type="flex" justify="space-between" align="middle">
<span>{{item.tableName}}</span> <span>{{item.tableName}}</span>
<el-tag size="mini" :type="getDatasourceTableTagType(item.relationType)" effect="dark" <el-tag :size="defaultFormItemSize" :type="getDatasourceTableTagType(item.relationType)" effect="dark"
style="margin-left: 30px;" style="margin-left: 30px;"
> >
{{getDatasourceTableTagName(item.relationType)}} {{getDatasourceTableTagName(item.relationType)}}
@@ -50,11 +50,11 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-row class="no-scroll flex-box" type="flex" justify="end"> <el-row class="no-scroll flex-box" type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="onCancel(false)"> @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" <el-button type="primary" :size="defaultFormItemSize"
@click="onSubmit()"> @click="onSubmit()">
保存 保存
</el-button> </el-button>

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="formEditOnlinePageDatasource" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;" <el-form ref="formEditOnlinePageDatasource" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;"
label-width="100px" size="mini" label-position="right" @submit.native.prevent> label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="数据源名称" prop="datasourceName"> <el-form-item label="数据源名称" prop="datasourceName">
@@ -32,11 +32,11 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-row class="no-scroll flex-box" type="flex" justify="end"> <el-row class="no-scroll flex-box" type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="onCancel(false)"> @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" <el-button type="primary" :size="defaultFormItemSize"
@click="onSubmit()"> @click="onSubmit()">
保存 保存
</el-button> </el-button>

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="formEditOnlinePageDatasourceRelation" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;" <el-form ref="formEditOnlinePageDatasourceRelation" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;"
label-width="120px" size="mini" label-position="right" @submit.native.prevent> label-width="120px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="关联名称" prop="relationName"> <el-form-item label="关联名称" prop="relationName">
@@ -70,11 +70,11 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-row class="no-scroll flex-box" type="flex" justify="end"> <el-row class="no-scroll flex-box" type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="onCancel(false)"> @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" <el-button type="primary" :size="defaultFormItemSize"
@click="onSubmit()"> @click="onSubmit()">
保存 保存
</el-button> </el-button>

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="form" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;" <el-form ref="form" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;"
label-width="100px" size="mini" label-position="right" @submit.native.prevent> label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="数据表" prop="tableId"> <el-form-item label="数据表" prop="tableId">
@@ -47,11 +47,11 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-row class="no-scroll flex-box" type="flex" justify="end"> <el-row class="no-scroll flex-box" type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="onCancel(false)"> @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" <el-button type="primary" :size="defaultFormItemSize"
@click="onSubmit()"> @click="onSubmit()">
保存 保存
</el-button> </el-button>

View File

@@ -1,20 +1,21 @@
<template> <template>
<div style="position: relative;"> <div style="position: relative;">
<el-form label-width="75px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="formOnlinePage" :model="formOnlinePage" label-width="75px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="表单类型"> <el-form-item label="表单类型" prop="formFilter.pageType">
<el-select class="filter-item" v-model="formOnlinePage.formFilter.pageType" <el-select class="filter-item" v-model="formOnlinePage.formFilter.pageType"
placeholder="表单类型" :clearable="true"> placeholder="表单类型" :clearable="true">
<el-option v-for="item in SysOnlinePageType.getList()" <el-option v-for="item in SysOnlinePageType.getList()"
:key="item.id" :value="item.id" :label="item.name" /> :key="item.id" :value="item.id" :label="item.name" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="表单名称"> <el-form-item label="表单名称" prop="formFilter.pageName">
<el-input class="filter-item" v-model="formOnlinePage.formFilter.pageName" <el-input class="filter-item" v-model="formOnlinePage.formFilter.pageName"
:clearable="true" placeholder="表单名称" /> :clearable="true" placeholder="表单名称" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshOnlinePage(true)">查询</el-button> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onReset">重置</el-button>
<el-button slot="operator" type="primary" size="mini" <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshOnlinePage(true)">查询</el-button>
<el-button slot="operator" type="primary" :size="defaultFormItemSize"
@click="onCreateOnlinePage()"> @click="onCreateOnlinePage()">
新建 新建
</el-button> </el-button>
@@ -22,21 +23,21 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table ref="class" :data="pageListWidget.dataList" size="mini" @sort-change="pageListWidget.onSortChange" <el-table ref="class" :data="pageListWidget.dataList" :size="defaultFormItemSize" @sort-change="pageListWidget.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" :index="pageListWidget.getTableIndex" /> <el-table-column label="序号" header-align="center" align="center" type="index" width="55px" :index="pageListWidget.getTableIndex" />
<el-table-column label="页面名称" prop="pageName" /> <el-table-column label="页面名称" prop="pageName" />
<el-table-column label="页面代码" prop="pageCode" /> <el-table-column label="页面代码" prop="pageCode" />
<el-table-column label="页面类型"> <el-table-column label="页面类型">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="scope.row.pageType === SysOnlinePageType.BIZ ? 'success' : 'primary'"> <el-tag :size="defaultFormItemSize" :type="scope.row.pageType === SysOnlinePageType.BIZ ? 'success' : 'primary'">
{{SysOnlinePageType.getValue(scope.row.pageType)}} {{SysOnlinePageType.getValue(scope.row.pageType)}}
</el-tag> </el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="页面状态" prop="statusDictMap.name"> <el-table-column label="页面状态" prop="statusDictMap.name">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="getPageStatusTagType(scope.row.status)"> <el-tag :size="defaultFormItemSize" :type="getPageStatusTagType(scope.row.status)">
{{SysOnlinePageStatus.getValue(scope.row.status)}} {{SysOnlinePageStatus.getValue(scope.row.status)}}
</el-tag> </el-tag>
</template> </template>
@@ -54,6 +55,19 @@
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-col :span="24">
<el-row type="flex" justify="end" style="margin-top: 10px;">
<el-pagination
:total="pageListWidget.totalCount"
:current-page="pageListWidget.currentPage"
:page-size="pageListWidget.pageSize"
:page-sizes="[10, 20, 50, 100]"
layout="total, prev, pager, next, sizes"
@current-change="pageListWidget.onCurrentPageChange"
@size-change="pageListWidget.onPageSizeChange">
</el-pagination>
</el-row>
</el-col>
</el-col> </el-col>
</el-row> </el-row>
<OnlinePageSetting v-if="showPageSetting" :pageId="(currentPage || {}).pageId" @close="onCloseSetting" /> <OnlinePageSetting v-if="showPageSetting" :pageId="(currentPage || {}).pageId" @close="onCloseSetting" />
@@ -98,6 +112,10 @@ export default {
} }
}, },
methods: { methods: {
onReset () {
this.$refs.formOnlinePage.resetFields();
this.refreshOnlinePage(true);
},
getPageStatusTagType (status) { getPageStatusTagType (status) {
switch (status) { switch (status) {
case this.SysOnlinePageStatus.BASIC: return 'warning'; case this.SysOnlinePageStatus.BASIC: return 'warning';

View File

@@ -60,7 +60,7 @@
<el-table-column label="数据表名" prop="tableName" /> <el-table-column label="数据表名" prop="tableName" />
<el-table-column label="关联类型" prop="relationType"> <el-table-column label="关联类型" prop="relationType">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="getDatasourceTableTagType(scope.row.relationType)" effect="dark"> <el-tag :size="defaultFormItemSize" :type="getDatasourceTableTagType(scope.row.relationType)" effect="dark">
{{getDatasourceTableTagName(scope.row.relationType)}} {{getDatasourceTableTagName(scope.row.relationType)}}
</el-tag> </el-tag>
</template> </template>
@@ -69,7 +69,7 @@
<el-table-column label="从表关联字段" prop="slaveColumnName" /> <el-table-column label="从表关联字段" prop="slaveColumnName" />
<el-table-column label="级联删除" prop="cascadeDelete"> <el-table-column label="级联删除" prop="cascadeDelete">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag v-if="scope.row.relationType != null" size="mini" <el-tag v-if="scope.row.relationType != null" :size="defaultFormItemSize"
:type="scope.row.cascadeDelete ? 'success' : 'danger'" effect="dark"> :type="scope.row.cascadeDelete ? 'success' : 'danger'" effect="dark">
{{scope.row.cascadeDelete ? '是' : '否'}} {{scope.row.cascadeDelete ? '是' : '否'}}
</el-tag> </el-tag>
@@ -77,7 +77,7 @@
</el-table-column> </el-table-column>
<el-table-column label="是否左连接" prop="leftJoin"> <el-table-column label="是否左连接" prop="leftJoin">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag v-if="scope.row.relationType != null" size="mini" <el-tag v-if="scope.row.relationType != null" :size="defaultFormItemSize"
:type="scope.row.leftJoin ? 'success' : 'danger'" effect="dark"> :type="scope.row.leftJoin ? 'success' : 'danger'" effect="dark">
{{scope.row.leftJoin ? '是' : '否'}} {{scope.row.leftJoin ? '是' : '否'}}
</el-tag> </el-tag>
@@ -86,22 +86,22 @@
<el-table-column label="操作" width="250px" fixed="right"> <el-table-column label="操作" width="250px" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<!-- 数据源主表只有当没有任何关联的时候才可以编辑 --> <!-- 数据源主表只有当没有任何关联的时候才可以编辑 -->
<el-button class="table-btn success" size="mini" type="text" <el-button class="table-btn success" :size="defaultFormItemSize" type="text"
@click="onEditDatasourceTable(scope.row)" @click="onEditDatasourceTable(scope.row)"
:disabled="scope.row.relationType == null && Array.isArray(scope.row.relationList) && scope.row.relationList.length > 0" :disabled="scope.row.relationType == null && Array.isArray(scope.row.relationList) && scope.row.relationList.length > 0"
> >
编辑 编辑
</el-button> </el-button>
<el-button size="mini" type="text" <el-button :size="defaultFormItemSize" type="text"
@click="onEditTableColumn(scope.row)"> @click="onEditTableColumn(scope.row)">
字段管理 字段管理
</el-button> </el-button>
<el-button size="mini" type="text" <el-button :size="defaultFormItemSize" type="text"
:disabled="scope.row.relationType != null" :disabled="scope.row.relationType != null"
@click="onEditVirtualColumn(scope.row)"> @click="onEditVirtualColumn(scope.row)">
聚合计算 聚合计算
</el-button> </el-button>
<el-button class="table-btn delete" size="mini" type="text" <el-button class="table-btn delete" :size="defaultFormItemSize" type="text"
:disabled="scope.row.relationType == null && (!Array.isArray(scope.row.relationList) || scope.row.relationList.length <= 0)" :disabled="scope.row.relationType == null && (!Array.isArray(scope.row.relationList) || scope.row.relationList.length <= 0)"
@click="onDeleteDatasourceTable(scope.row)" @click="onDeleteDatasourceTable(scope.row)"
> >
@@ -141,7 +141,7 @@
<el-table-column label="表单名称" prop="formName" /> <el-table-column label="表单名称" prop="formName" />
<el-table-column label="表单类型" prop="formType"> <el-table-column label="表单类型" prop="formType">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" effect="dark" <el-tag :size="defaultFormItemSize" effect="dark"
:type="getFormTypeTag(scope.row.formType)" :type="getFormTypeTag(scope.row.formType)"
> >
{{SysOnlineFormType.getValue(scope.row.formType)}} {{SysOnlineFormType.getValue(scope.row.formType)}}
@@ -150,9 +150,9 @@
</el-table-column> </el-table-column>
<el-table-column label="操作" width="150px"> <el-table-column label="操作" width="150px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="text" @click="onDesignPageForm(scope.row)">页面布局</el-button> <el-button :size="defaultFormItemSize" type="text" @click="onDesignPageForm(scope.row)">页面布局</el-button>
<el-button class="table-btn success" size="mini" type="text" @click="onEditPageForm(scope.row)">编辑</el-button> <el-button class="table-btn success" :size="defaultFormItemSize" type="text" @click="onEditPageForm(scope.row)">编辑</el-button>
<el-button class="table-btn delete" size="mini" type="text" style="color: #F56C6C;" @click="onDeletePageForm(scope.row)">删除</el-button> <el-button class="table-btn delete" :size="defaultFormItemSize" type="text" style="color: #F56C6C;" @click="onDeletePageForm(scope.row)">删除</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>

View File

@@ -5,7 +5,7 @@
<div class="title"> <div class="title">
<span>{{tableName}}</span> <span>{{tableName}}</span>
<el-dropdown trigger="click" @command="onAddNewColumn"> <el-dropdown trigger="click" @command="onAddNewColumn">
<el-button class="table-btn success" size="mini" type="text" <el-button class="table-btn success" :size="defaultFormItemSize" type="text"
icon="el-icon-circle-plus-outline" :disabled="getNewColumnList.length <= 0" icon="el-icon-circle-plus-outline" :disabled="getNewColumnList.length <= 0"
> >
新增 新增
@@ -26,16 +26,16 @@
> >
<div> <div>
<span style="margin-right: 10px;">{{column.columnName}}</span> <span style="margin-right: 10px;">{{column.columnName}}</span>
<el-tag v-if="column.deletedFlag" size="mini" type="danger">已删除</el-tag> <el-tag v-if="column.deletedFlag" :size="defaultFormItemSize" type="danger">已删除</el-tag>
</div> </div>
<div class="refresh" style="margin-left: 10px;"> <div class="refresh" style="margin-left: 10px;">
<el-button class="table-btn success" size="mini" type="text" v-if="getNewColumnList.length <= 0" <el-button class="table-btn success" :size="defaultFormItemSize" type="text" v-if="getNewColumnList.length <= 0"
@click.stop="onRefreshOnlineColumn(column, column)" @click.stop="onRefreshOnlineColumn(column, column)"
> >
刷新 刷新
</el-button> </el-button>
<el-dropdown v-else trigger="click" @command="onRefreshNewColumn"> <el-dropdown v-else trigger="click" @command="onRefreshNewColumn">
<el-button class="table-btn success" size="mini" type="text" @click.stop="() => {}"> <el-button class="table-btn success" :size="defaultFormItemSize" type="text" @click.stop="() => {}">
刷新 刷新
</el-button> </el-button>
<el-dropdown-menu slot="dropdown"> <el-dropdown-menu slot="dropdown">
@@ -45,7 +45,7 @@
</el-dropdown-item> </el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
<el-button v-if="column.deletedFlag" class="table-btn delete" size="mini" type="text" style="margin-left: 10px;" <el-button v-if="column.deletedFlag" class="table-btn delete" :size="defaultFormItemSize" type="text" style="margin-left: 10px;"
@click.stop="onDeleteColumn(column)" @click.stop="onDeleteColumn(column)"
> >
删除 删除
@@ -69,13 +69,13 @@
<el-col class="attribute-item"> <el-col class="attribute-item">
<el-form-item label="字段名:"> <el-form-item label="字段名:">
<span :title="currentColumn.columnComment">{{currentColumn.columnName}}</span> <span :title="currentColumn.columnComment">{{currentColumn.columnName}}</span>
<el-tag size="mini" type="warning" v-if="currentColumn.primaryKey" style="margin-left: 20px;">主键</el-tag> <el-tag :size="defaultFormItemSize" type="warning" v-if="currentColumn.primaryKey" style="margin-left: 20px;">主键</el-tag>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col class="attribute-item"> <el-col class="attribute-item">
<el-form-item label="字段类型:"> <el-form-item label="字段类型:">
<span>{{currentColumn.fullColumnType}}</span> <span>{{currentColumn.fullColumnType}}</span>
<el-tag size="mini" type="success" effect="dark" style="margin-left: 10px;">{{currentColumn.tag.objectFieldType}}</el-tag> <el-tag :size="defaultFormItemSize" type="success" effect="dark" style="margin-left: 10px;">{{currentColumn.tag.objectFieldType}}</el-tag>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col class="attribute-item"> <el-col class="attribute-item">
@@ -140,7 +140,7 @@
</el-row> </el-row>
<el-row style="margin-top: 15px;"> <el-row style="margin-top: 15px;">
<el-col :span="24" style="border-top: 1px solid #EBEEF5;"> <el-col :span="24" style="border-top: 1px solid #EBEEF5;">
<el-table size="mini" :data="columnRuleList" :show-header="false" empty-text="请添加验证规则"> <el-table :size="defaultFormItemSize" :data="columnRuleList" :show-header="false" empty-text="请添加验证规则">
<el-table-column type="index" width="45px" /> <el-table-column type="index" width="45px" />
<el-table-column label="规则名称" prop="ruleName" width="150px" /> <el-table-column label="规则名称" prop="ruleName" width="150px" />
<el-table-column label="校验错误信息" prop="columnRuleInfo.message" /> <el-table-column label="校验错误信息" prop="columnRuleInfo.message" />

View File

@@ -4,7 +4,7 @@
<div class="table-column-list"> <div class="table-column-list">
<div class="title"> <div class="title">
<span>虚拟字段列表</span> <span>虚拟字段列表</span>
<el-button class="table-btn success" size="mini" type="text" <el-button class="table-btn success" :size="defaultFormItemSize" type="text"
icon="el-icon-circle-plus-outline" icon="el-icon-circle-plus-outline"
@click.stop="onAddNewVirtualColumn"> @click.stop="onAddNewVirtualColumn">
新增 新增
@@ -17,7 +17,7 @@
@click.stop="onActiveColumnClick(column)" @click.stop="onActiveColumnClick(column)"
> >
<span style="margin-right: 10px;">{{column.columnPrompt}}</span> <span style="margin-right: 10px;">{{column.columnPrompt}}</span>
<el-button class="table-btn delete" size="mini" type="text" style="margin-left: 10px;" <el-button class="table-btn delete" :size="defaultFormItemSize" type="text" style="margin-left: 10px;"
@click.stop="onDeleteColumn(column)" @click.stop="onDeleteColumn(column)"
> >
删除 删除
@@ -57,7 +57,7 @@
:value="item.relationId" :label="item.relationName"> :value="item.relationId" :label="item.relationName">
<div style="display: flex; justify-content: space-between; align-items: center"> <div style="display: flex; justify-content: space-between; align-items: center">
<span>{{item.relationName}}</span> <span>{{item.relationName}}</span>
<el-tag style="margin-left: 30px;" size="mini" <el-tag style="margin-left: 30px;" :size="defaultFormItemSize"
:type="getDatasourceTableTagType(item.relationType)"> :type="getDatasourceTableTagType(item.relationType)">
{{SysOnlineRelationType.getValue(item.relationType)}} {{SysOnlineRelationType.getValue(item.relationType)}}
</el-tag> </el-tag>
@@ -110,7 +110,7 @@
</el-row> </el-row>
<el-row style="margin-top: 15px;"> <el-row style="margin-top: 15px;">
<el-col :span="24" style="border-top: 1px solid #EBEEF5;"> <el-col :span="24" style="border-top: 1px solid #EBEEF5;">
<el-table size="mini" :data="virtualColumnFilterList" :show-header="false" empty-text="请添加过滤条件"> <el-table :size="defaultFormItemSize" :data="virtualColumnFilterList" :show-header="false" empty-text="请添加过滤条件">
<el-table-column label="操作" width="45px"> <el-table-column label="操作" width="45px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button class="table-btn delete" type="text" icon="el-icon-remove-outline" <el-button class="table-btn delete" type="text" icon="el-icon-remove-outline"
@@ -125,7 +125,7 @@
</el-table-column> </el-table-column>
<el-table-column label="所属表" width="100px"> <el-table-column label="所属表" width="100px">
<template> <template>
<el-tag size="mini" type="success">关联从表</el-tag> <el-tag :size="defaultFormItemSize" type="success">关联从表</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="过滤类型" width="100px"> <el-table-column label="过滤类型" width="100px">

View File

@@ -2,7 +2,7 @@
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<!-- 设置字段验证规则 --> <!-- 设置字段验证规则 -->
<el-form v-if="!isCreateRule" class="full-width-input" ref="form" :rules="rules" :model="formData" <el-form v-if="!isCreateRule" class="full-width-input" ref="form" :rules="rules" :model="formData"
label-width="100px" size="mini" label-position="right" @submit.native.prevent> label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="验证规则" prop="ruleId" key="ruleId"> <el-form-item label="验证规则" prop="ruleId" key="ruleId">
@@ -49,7 +49,7 @@
</el-form> </el-form>
<!-- 新建验证规则 --> <!-- 新建验证规则 -->
<el-form v-if="isCreateRule" class="full-width-input" ref="ruleData" :rules="rules" :model="ruleData" <el-form v-if="isCreateRule" class="full-width-input" ref="ruleData" :rules="rules" :model="ruleData"
label-width="100px" size="mini" label-position="right" @submit.native.prevent> label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="规则类型" prop="ruleType"> <el-form-item label="规则类型" prop="ruleType">
@@ -69,8 +69,8 @@
</el-row> </el-row>
</el-form> </el-form>
<el-row type="flex" justify="end"> <el-row type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" @click="onCancelClick">取消</el-button> <el-button type="primary" :size="defaultFormItemSize" :plain="true" @click="onCancelClick">取消</el-button>
<el-button type="primary" size="mini" @click="onSubmit">保存</el-button> <el-button type="primary" :size="defaultFormItemSize" @click="onSubmit">保存</el-button>
</el-row> </el-row>
</div> </div>
</template> </template>

View File

@@ -2,7 +2,7 @@
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-scrollbar class="custom-scroll" :style="{height: formConfig.height + 'px', 'min-height': '100px'}"> <el-scrollbar class="custom-scroll" :style="{height: formConfig.height + 'px', 'min-height': '100px'}">
<el-form ref="form" :model="formData" class="full-width-input" :rules="rules" <el-form ref="form" :model="formData" class="full-width-input" :rules="rules"
:label-width="formConfig.labelWidth + 'px'" size="mini" :label-width="formConfig.labelWidth + 'px'" :size="defaultFormItemSize"
:label-position="formConfig.labelPosition" :label-position="formConfig.labelPosition"
@submit.native.prevent> @submit.native.prevent>
<el-row :gutter="formConfig.gutter"> <el-row :gutter="formConfig.gutter">
@@ -62,12 +62,12 @@
</el-form> </el-form>
</el-scrollbar> </el-scrollbar>
<el-row v-if="formConfig.formType === SysOnlineFormType.FORM" type="flex" justify="end" style="margin-top: 15px;"> <el-row v-if="formConfig.formType === SysOnlineFormType.FORM" type="flex" justify="end" style="margin-top: 15px;">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
v-if="formConfig.formKind === SysOnlineFormKind.DIALOG" v-if="formConfig.formKind === SysOnlineFormKind.DIALOG"
@click="onCancel(false)"> @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" <el-button type="primary" :size="defaultFormItemSize"
@click="onSave()"> @click="onSave()">
保存 保存
</el-button> </el-button>

View File

@@ -1,6 +1,6 @@
<template> <template>
<div style="position: relative;"> <div style="position: relative;">
<el-form :label-width="formConfig.labelWidth + 'px'" size="mini" :label-position="formConfig.labelPosition" @submit.native.prevent> <el-form ref="filterForm" :model="formData" :label-width="formConfig.labelWidth + 'px'" :size="defaultFormItemSize" :label-position="formConfig.labelPosition" @submit.native.prevent>
<filter-box :item-width="formConfig.labelWidth + 250" v-if="!isLoading"> <filter-box :item-width="formConfig.labelWidth + 250" v-if="!isLoading">
<CustomFilterWidget v-for="widget in formConfig.formWidgetList" :key="widget.id" <CustomFilterWidget v-for="widget in formConfig.formWidgetList" :key="widget.id"
:ref="widget.variableName" :ref="widget.variableName"
@@ -9,11 +9,15 @@
v-model="formData.formFilter[widget.column.columnName]" v-model="formData.formFilter[widget.column.columnName]"
/> />
<el-button v-if="Array.isArray(formConfig.formWidgetList) && formConfig.formWidgetList.length > 0" <el-button v-if="Array.isArray(formConfig.formWidgetList) && formConfig.formWidgetList.length > 0"
slot="operator" type="primary" :plain="true" size="mini" @click="onSearch"> slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onReset">
重置
</el-button>
<el-button v-if="Array.isArray(formConfig.formWidgetList) && formConfig.formWidgetList.length > 0"
slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="onSearch">
查询 查询
</el-button> </el-button>
<el-button v-for="operation in getTableOperation(false)" :key="operation.id" <el-button v-for="operation in getTableOperation(false)" :key="operation.id"
slot="operator" size="mini" slot="operator" :size="defaultFormItemSize"
:plain="operation.plain" :plain="operation.plain"
:type="operation.btnType" :type="operation.btnType"
:disabled="!checkPermCodeExist(getPermCode(formConfig.formQueryTable, operation))" :disabled="!checkPermCodeExist(getPermCode(formConfig.formQueryTable, operation))"
@@ -93,6 +97,14 @@ export default {
} }
this.$refs[this.formConfig.formQueryTable.variableName].refresh(); this.$refs[this.formConfig.formQueryTable.variableName].refresh();
}, },
onReset () {
if (this.$refs.filterForm) {
this.$refs.filterForm.resetFields();
this.$nextTick(() => {
this.onSearch();
});
}
},
getDropdownParams (widget) { getDropdownParams (widget) {
if (Array.isArray(widget.dictParamList)) { if (Array.isArray(widget.dictParamList)) {
let params = {}; let params = {};

View File

@@ -1,26 +1,27 @@
<template> <template>
<div style="position: relative;"> <div style="position: relative;">
<el-form label-width="80px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="onlineWorkOrder" :model="formFilter" label-width="80px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="330"> <filter-box :item-width="330">
<el-form-item label="工单状态"> <el-form-item label="工单状态" prop="flowStatus">
<el-select class="filter-item" v-model="flowStatus" :clearable="true" <el-select class="filter-item" v-model="formFilter.flowStatus" :clearable="true"
placeholder="工单状态"> placeholder="工单状态">
<el-option v-for="item in SysFlowWorkOrderStatus.getList()" :key="item.id" <el-option v-for="item in SysFlowWorkOrderStatus.getList()" :key="item.id"
:label="item.name" :value="item.id" :label="item.name" :value="item.id"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="创建日期"> <el-form-item label="创建日期" prop="createTime">
<date-range class="filter-item" v-model="createTime" :clearable="true" :allowTypes="['day']" align="left" <date-range class="filter-item" v-model="formFilter.createTime" :clearable="true" :allowTypes="['day']" align="left"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"
format="yyyy-MM-dd" value-format="yyyy-MM-dd HH:mm:ss" /> format="yyyy-MM-dd" value-format="yyyy-MM-dd HH:mm:ss" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onReset">重置</el-button>
<el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize"
:disabled="processDefinitionKey == null" :disabled="processDefinitionKey == null"
@click="onSearch()"> @click="onSearch()">
查询 查询
</el-button> </el-button>
<el-button slot="operator" type="primary" size="mini" <el-button slot="operator" type="primary" :size="defaultFormItemSize"
:disabled="processDefinitionKey == null" :disabled="processDefinitionKey == null"
@click="onStartFlow()"> @click="onStartFlow()">
新建 新建
@@ -74,11 +75,17 @@ export default {
return { return {
processDefinitionKey: undefined, processDefinitionKey: undefined,
processDefinitionName: undefined, processDefinitionName: undefined,
formFilter: {
createTime: [], createTime: [],
flowStatus: undefined flowStatus: undefined
} }
}
}, },
methods: { methods: {
onReset () {
this.$refs.onlineWorkOrder.resetFields();
this.onSearch();
},
getTableQueryParams (widget) { getTableQueryParams (widget) {
let queryParams = []; let queryParams = [];
if (Array.isArray(widget.queryParamList)) { if (Array.isArray(widget.queryParamList)) {
@@ -109,7 +116,7 @@ export default {
params = { params = {
...params, ...params,
flowWorkOrderDtoFilter: { flowWorkOrderDtoFilter: {
flowStatus: this.flowStatus, flowStatus: this.formFilter.flowStatus,
createTimeStart: Array.isArray(this.createTime) ? this.createTime[0] : undefined, createTimeStart: Array.isArray(this.createTime) ? this.createTime[0] : undefined,
createTimeEnd: Array.isArray(this.createTime) ? this.createTime[1] : undefined createTimeEnd: Array.isArray(this.createTime) ? this.createTime[1] : undefined
} }
@@ -119,12 +126,12 @@ export default {
processDefinitionKey: this.processDefinitionKey processDefinitionKey: this.processDefinitionKey
}).then(res => { }).then(res => {
res.data.dataList = res.data.dataList.map(item => { res.data.dataList = res.data.dataList.map(item => {
let initTaskInfo = JSON.parse(item.initTaskInfo); let initTaskInfo = item.initTaskInfo == null ? {} : JSON.parse(item.initTaskInfo);
let runtimeTaskInfo = (Array.isArray(item.runtimeTaskInfoList) && item.runtimeTaskInfoList.length > 0) ? item.runtimeTaskInfoList[0] : {}; let runtimeTaskInfo = (Array.isArray(item.runtimeTaskInfoList) && item.runtimeTaskInfoList.length > 0) ? item.runtimeTaskInfoList[0] : {};
return { return {
...item, ...item,
flowStatus: this.SysFlowWorkOrderStatus.getValue(item.flowStatus), flowStatus: this.SysFlowWorkOrderStatus.getValue(item.flowStatus),
...Object.keys(item.masterData).reduce((retObj, key) => { ...Object.keys(item.masterData || {}).reduce((retObj, key) => {
retObj['masterTable__' + key] = item.masterData[key]; retObj['masterTable__' + key] = item.masterData[key];
return retObj; return retObj;
}, {}), }, {}),

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment"> <div class="form-single-fragment">
<el-form ref="form" :model="formData" class="full-width-input" :rules="rules" <el-form ref="form" :model="formData" class="full-width-input" :rules="rules"
:label-width="formConfig.labelWidth + 'px'" size="mini" :label-width="formConfig.labelWidth + 'px'" :size="defaultFormItemSize"
:label-position="formConfig.labelPosition" :label-position="formConfig.labelPosition"
@submit.native.prevent> @submit.native.prevent>
<el-row :gutter="formConfig.gutter"> <el-row :gutter="formConfig.gutter">
@@ -182,10 +182,14 @@ export default {
tempObj.slaveData[widget.relation.relationId] = tableData; tempObj.slaveData[widget.relation.relationId] = tableData;
} }
} else { } else {
tempObj.slaveData[widget.relation.relationId][widget.column.columnName] = that.formData[that.getWidgetFieldName(widget)]; let value = that.formData[that.getWidgetFieldName(widget)];
if (value != null && widget.column != null) {
if (tempObj.slaveData[widget.relation.relationId] == null) tempObj.slaveData[widget.relation.relationId] = {};
tempObj.slaveData[widget.relation.relationId][widget.column.columnName] = value;
if (tempObj.slaveData[widget.relation.relationId]['__slaveWidget__'] == null) tempObj.slaveData[widget.relation.relationId]['__slaveWidget__'] = widget; if (tempObj.slaveData[widget.relation.relationId]['__slaveWidget__'] == null) tempObj.slaveData[widget.relation.relationId]['__slaveWidget__'] = widget;
} }
} }
}
if (Array.isArray(widget.childWidgetList)) { if (Array.isArray(widget.childWidgetList)) {
widget.childWidgetList.forEach(subWidget => { widget.childWidgetList.forEach(subWidget => {

View File

@@ -16,17 +16,17 @@
</el-card> </el-card>
</el-aside> </el-aside>
<el-main style="margin-left: 15px; background-color: white; padding: 20px;"> <el-main style="margin-left: 15px; background-color: white; padding: 20px;">
<el-form label-width="120px" size="mini" label-position="left" @submit.native.prevent> <el-form label-width="120px" :size="defaultFormItemSize" label-position="left" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item v-if="dirtyCount > 0" label="失效缓存数量:"> <el-form-item v-if="dirtyCount > 0" label="失效缓存数量:">
<span style="color: #F56C6C;">{{dirtyCount}}</span> <span style="color: #F56C6C;">{{dirtyCount}}</span>
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" size="mini" :plain="true" <el-button slot="operator" type="primary" :size="defaultFormItemSize" :plain="true"
:disabled="!checkPermCodeExist('formSysDict:fragmentSysDict:reloadCache') || currentDict == null" :disabled="!checkPermCodeExist('formSysDict:fragmentSysDict:reloadCache') || currentDict == null"
@click="onRefreshCacheData"> @click="onRefreshCacheData">
同步缓存 同步缓存
</el-button> </el-button>
<el-button slot="operator" type="primary" size="mini" <el-button slot="operator" type="primary" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysDict:fragmentSysDict:add') || currentDict == null" :disabled="!checkPermCodeExist('formSysDict:fragmentSysDict:add') || currentDict == null"
@click="onAddDictData"> @click="onAddDictData">
添加数据 添加数据
@@ -35,14 +35,14 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="getCurrentDictData" size="mini" header-cell-class-name="table-header-gray" <el-table :data="getCurrentDictData" :size="defaultFormItemSize" header-cell-class-name="table-header-gray"
:row-style="tableRowStyle" :row-style="tableRowStyle"
:height="(getMainContextHeight - 90) + 'px'" row-key="id"> :height="(getMainContextHeight - 90) + 'px'" row-key="id">
<el-table-column label="ID" prop="id" /> <el-table-column label="ID" prop="id" />
<el-table-column label="字典名称" prop="name"> <el-table-column label="字典名称" prop="name">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{scope.row.name}}</span> <span>{{scope.row.name}}</span>
<el-tag v-if="scope.row.dirty" size="mini" effect="dark" type="warning" <el-tag v-if="scope.row.dirty" :size="defaultFormItemSize" effect="dark" type="warning"
style="margin-left: 15px;"> style="margin-left: 15px;">
缓存失效 缓存失效
</el-tag> </el-tag>
@@ -50,8 +50,8 @@
</el-table-column> </el-table-column>
<el-table-column label="操作" width="150px"> <el-table-column label="操作" width="150px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="text" size="mini" :disabled="!checkPermCodeExist('formSysDict:fragmentSysDict:update')" @click="onUpdateDictDataClick(scope.row)">编辑</el-button> <el-button type="text" :size="defaultFormItemSize" :disabled="!checkPermCodeExist('formSysDict:fragmentSysDict:update')" @click="onUpdateDictDataClick(scope.row)">编辑</el-button>
<el-button type="text" size="mini" :disabled="!checkPermCodeExist('formSysDict:fragmentSysDict:delete')" @click="onDeleteDictDataClick(scope.row)">删除</el-button> <el-button type="text" :size="defaultFormItemSize" :disabled="!checkPermCodeExist('formSysDict:fragmentSysDict:delete')" @click="onDeleteDictDataClick(scope.row)">删除</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>

View File

@@ -1,5 +1,5 @@
<template> <template>
<el-form ref="form" :model="formData" :rules="rules" label-width="80px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="form" :model="formData" :rules="rules" label-width="80px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-form-item v-if="dictInfo.treeFlag" label="父字典"> <el-form-item v-if="dictInfo.treeFlag" label="父字典">
<el-cascader style="width: 100%;" <el-cascader style="width: 100%;"
@@ -14,8 +14,8 @@
</el-form-item> </el-form-item>
</el-row> </el-row>
<el-row type="flex" justify="end" class="dialog-btn-layer"> <el-row type="flex" justify="end" class="dialog-btn-layer">
<el-button size="mini" @click="onCancel(false)" >取消</el-button> <el-button :size="defaultFormItemSize" @click="onCancel(false)" >取消</el-button>
<el-button type="primary" size="mini" @click="onSubmit">确定</el-button> <el-button type="primary" :size="defaultFormItemSize" @click="onSubmit">确定</el-button>
</el-row> </el-row>
</el-form> </el-form>
</template> </template>

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="formEditSysDataPerm" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;" <el-form ref="formEditSysDataPerm" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;"
label-width="120px" size="mini" label-position="right" @submit.native.prevent> label-width="120px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="12"> <el-col :span="12">
<el-form-item label="数据权限名称" prop="SysDataPerm.dataPermName"> <el-form-item label="数据权限名称" prop="SysDataPerm.dataPermName">
@@ -23,7 +23,7 @@
<el-card shadow="never"> <el-card shadow="never">
<div slot="header" class="card-header"> <div slot="header" class="card-header">
<span>部门列表</span> <span>部门列表</span>
<el-input size="mini" v-model="deptNameFilter" placeholder="输入部门名称过滤" style="width: 250px;" clearable suffix-icon="el-icon-search" /> <el-input :size="defaultFormItemSize" v-model="deptNameFilter" placeholder="输入部门名称过滤" style="width: 250px;" clearable suffix-icon="el-icon-search" />
</div> </div>
<el-scrollbar style="height: 250px;" wrap-class="scrollbar_dropdown__wrap"> <el-scrollbar style="height: 250px;" wrap-class="scrollbar_dropdown__wrap">
<el-tree ref="deptTree" :data="deptTree" show-checkbox node-key="id" default-expand-all <el-tree ref="deptTree" :data="deptTree" show-checkbox node-key="id" default-expand-all
@@ -34,10 +34,10 @@
</el-row> </el-row>
<el-col :span="24" style="margin-top: 20px;"> <el-col :span="24" style="margin-top: 20px;">
<el-row type="flex" justify="end"> <el-row type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" @click="onCancel(false)"> <el-button type="primary" :size="defaultFormItemSize" :plain="true" @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" @click="onUpdateClick()" <el-button type="primary" :size="defaultFormItemSize" @click="onUpdateClick()"
:disabled="!(checkPermCodeExist('formSysDataPerm:fragmentSysDataPerm:add') || checkPermCodeExist('formSysDataPerm:fragmentSysDataPerm:update'))"> :disabled="!(checkPermCodeExist('formSysDataPerm:fragmentSysDataPerm:add') || checkPermCodeExist('formSysDataPerm:fragmentSysDataPerm:update'))">
保存 保存
</el-button> </el-button>

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="formEditSysDept" :model="formData" :rules="rules" style="width: 100%;" <el-form ref="formEditSysDept" :model="formData" :rules="rules" style="width: 100%;"
label-width="100px" size="mini" label-position="right" @submit.native.prevent> label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="所属部门" prop="SysDept.parentId"> <el-form-item label="所属部门" prop="SysDept.parentId">
@@ -26,11 +26,11 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-row type="flex" justify="end"> <el-row type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="onCancel(false)"> @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" @click="onUpdateClick()" <el-button type="primary" :size="defaultFormItemSize" @click="onUpdateClick()"
:disabled="!(checkPermCodeExist('formSysDept:fragmentSysDept:update') || checkPermCodeExist('formSysDept:fragmentSysDept:add'))"> :disabled="!(checkPermCodeExist('formSysDept:fragmentSysDept:update') || checkPermCodeExist('formSysDept:fragmentSysDept:add'))">
保存 保存
</el-button> </el-button>

View File

@@ -1,5 +1,5 @@
<template> <template>
<el-form ref="form" :model="formData" :rules="rules" label-width="110px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="form" :model="formData" :rules="rules" label-width="110px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20" class="full-width-input"> <el-row :gutter="20" class="full-width-input">
<el-col :span="24" > <el-col :span="24" >
<el-form-item label="菜单名称" prop="menuName"> <el-form-item label="菜单名称" prop="menuName">
@@ -15,8 +15,8 @@
</el-row> </el-row>
<!-- 弹窗按钮 --> <!-- 弹窗按钮 -->
<el-row type="flex" justify="end" class="dialog-btn-layer mt20"> <el-row type="flex" justify="end" class="dialog-btn-layer mt20">
<el-button size="mini" @click="onCancel(false)" >取消</el-button> <el-button :size="defaultFormItemSize" @click="onCancel(false)" >取消</el-button>
<el-button type="primary" size="mini" @click="onSubmit">确定</el-button> <el-button type="primary" :size="defaultFormItemSize" @click="onSubmit">确定</el-button>
</el-row> </el-row>
</el-form> </el-form>
</template> </template>

View File

@@ -1,10 +1,10 @@
<template> <template>
<el-form ref="form" :model="formData" :rules="rules" label-width="110px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="form" :model="formData" :rules="rules" label-width="110px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20" class="full-width-input"> <el-row :gutter="20" class="full-width-input">
<el-col :span="12"> <el-col :span="12">
<el-form-item label="上级菜单"> <el-form-item label="上级菜单">
<el-cascader :options="menuTree" v-model="parentMenuPath" :props="menuProps" placeholder="选择父菜单" <el-cascader :options="menuTree" v-model="parentMenuPath" :props="menuProps" placeholder="选择父菜单"
:disabled="!canEditParent || isEdit" :clearable="true" :change-on-select="true" size="mini" :disabled="!canEditParent || isEdit" :clearable="true" :change-on-select="true" :size="defaultFormItemSize"
@change="onParentMenuChange" /> @change="onParentMenuChange" />
</el-form-item> </el-form-item>
</el-col> </el-col>
@@ -67,7 +67,7 @@
<el-card shadow="never"> <el-card shadow="never">
<div slot="header" class="card-header"> <div slot="header" class="card-header">
<span>权限字列表</span> <span>权限字列表</span>
<el-input size="mini" v-model="permCodeNameFilter" placeholder="输入权限字名称过滤" style="width: 250px;" clearable suffix-icon="el-icon-search" /> <el-input :size="defaultFormItemSize" v-model="permCodeNameFilter" placeholder="输入权限字名称过滤" style="width: 250px;" clearable suffix-icon="el-icon-search" />
</div> </div>
<el-scrollbar style="height: 210px;" wrap-class="scrollbar_dropdown__wrap"> <el-scrollbar style="height: 210px;" wrap-class="scrollbar_dropdown__wrap">
<el-tree ref="permCodeTree" :check-strictly="true" <el-tree ref="permCodeTree" :check-strictly="true"
@@ -80,8 +80,8 @@
</el-row> </el-row>
<!-- 弹窗按钮 --> <!-- 弹窗按钮 -->
<el-row type="flex" justify="end" class="dialog-btn-layer mt20"> <el-row type="flex" justify="end" class="dialog-btn-layer mt20">
<el-button size="mini" @click="onCancel(false)" >取消</el-button> <el-button :size="defaultFormItemSize" @click="onCancel(false)" >取消</el-button>
<el-button type="primary" size="mini" @click="onSubmit" <el-button type="primary" :size="defaultFormItemSize" @click="onSubmit"
:disabled="!(checkPermCodeExist('formSysMenu:fragmentSysMenu:add') || checkPermCodeExist('formSysMenu:fragmentSysMenu:update'))"> :disabled="!(checkPermCodeExist('formSysMenu:fragmentSysMenu:add') || checkPermCodeExist('formSysMenu:fragmentSysMenu:update'))">
确定 确定
</el-button> </el-button>

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="formCreatePerm" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;" <el-form ref="formCreatePerm" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;"
label-width="100px" size="mini" label-position="right" @submit.native.prevent> label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="权限名称" prop="SysPerm.permName"> <el-form-item label="权限名称" prop="SysPerm.permName">
@@ -12,7 +12,7 @@
<el-col :span="24"> <el-col :span="24">
<el-form-item label="所属模块" prop="SysPerm.moduleId"> <el-form-item label="所属模块" prop="SysPerm.moduleId">
<el-cascader class="input-item" :options="permModuleList" v-model="formData.SysPerm.moduleId" <el-cascader class="input-item" :options="permModuleList" v-model="formData.SysPerm.moduleId"
placeholder="选择所属模块" :clearable="true" size="mini" :props="{value: 'moduleId', label: 'moduleName'}" /> placeholder="选择所属模块" :clearable="true" :size="defaultFormItemSize" :props="{value: 'moduleId', label: 'moduleName'}" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
@@ -29,11 +29,11 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-row type="flex" justify="end"> <el-row type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="onCancel(false)"> @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" @click="onAddClick()" <el-button type="primary" :size="defaultFormItemSize" @click="onAddClick()"
:disabled="!(checkPermCodeExist('formSysPerm:fragmentSysPerm:updatePerm') || checkPermCodeExist('formSysPerm:fragmentSysPerm:addPerm'))"> :disabled="!(checkPermCodeExist('formSysPerm:fragmentSysPerm:updatePerm') || checkPermCodeExist('formSysPerm:fragmentSysPerm:addPerm'))">
保存 保存
</el-button> </el-button>

View File

@@ -1,10 +1,10 @@
<template> <template>
<el-form ref="form" :model="formData" :rules="rules" label-width="110px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="form" :model="formData" :rules="rules" label-width="110px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20" class="full-width-input"> <el-row :gutter="20" class="full-width-input">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="所属权限字"> <el-form-item label="所属权限字">
<el-cascader :options="permCodeTree" v-model="parentPermCodePath" :props="permCodeProps" filterable <el-cascader :options="permCodeTree" v-model="parentPermCodePath" :props="permCodeProps" filterable
:disabled="formData.permCodeId != null || formData.parenId == null" placeholder="选择父权限字" :clearable="true" :change-on-select="true" size="mini" /> :disabled="formData.permCodeId != null || formData.parenId == null" placeholder="选择父权限字" :clearable="true" :change-on-select="true" :size="defaultFormItemSize" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
@@ -34,7 +34,7 @@
<el-card shadow="never"> <el-card shadow="never">
<div slot="header" class="card-header"> <div slot="header" class="card-header">
<span>权限列表</span> <span>权限列表</span>
<el-input size="mini" v-model="permNameFilter" placeholder="输入权限名称过滤" style="width: 250px;" clearable suffix-icon="el-icon-search" /> <el-input :size="defaultFormItemSize" v-model="permNameFilter" placeholder="输入权限名称过滤" style="width: 250px;" clearable suffix-icon="el-icon-search" />
</div> </div>
<el-scrollbar style="height: 215px;" wrap-class="scrollbar_dropdown__wrap"> <el-scrollbar style="height: 215px;" wrap-class="scrollbar_dropdown__wrap">
<el-tree ref="permTree" :data="formData.permCodeType === SysPermCodeType.FORM ? [] : getPermTree" :props="treeProps" show-checkbox <el-tree ref="permTree" :data="formData.permCodeType === SysPermCodeType.FORM ? [] : getPermTree" :props="treeProps" show-checkbox
@@ -51,8 +51,8 @@
</el-row> </el-row>
<!-- 弹窗按钮 --> <!-- 弹窗按钮 -->
<el-row type="flex" justify="end" class="dialog-btn-layer mt20"> <el-row type="flex" justify="end" class="dialog-btn-layer mt20">
<el-button size="mini" @click="onCancel(false)" >取消</el-button> <el-button :size="defaultFormItemSize" @click="onCancel(false)" >取消</el-button>
<el-button type="primary" size="mini" @click="onSubmit" <el-button type="primary" :size="defaultFormItemSize" @click="onSubmit"
:disabled="!(checkPermCodeExist('formSysPermCode:fragmentSysPermCode:add') || checkPermCodeExist('formSysPermCode:fragmentSysPermCode:update'))"> :disabled="!(checkPermCodeExist('formSysPermCode:fragmentSysPermCode:add') || checkPermCodeExist('formSysPermCode:fragmentSysPermCode:update'))">
确定 确定
</el-button> </el-button>

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="formCreatePermModule" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;" <el-form ref="formCreatePermModule" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;"
label-width="120px" size="mini" label-position="right" @submit.native.prevent> label-width="120px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="模块名称" prop="SysPermModule.moduleName"> <el-form-item label="模块名称" prop="SysPermModule.moduleName">
@@ -12,7 +12,7 @@
<el-col :span="24"> <el-col :span="24">
<el-form-item label="模块类型"> <el-form-item label="模块类型">
<el-select class="input-item" v-model="formData.SysPermModule.moduleType" <el-select class="input-item" v-model="formData.SysPermModule.moduleType"
placeholder="模块类型" :clearable="true" size="mini" :disabled="isEdit"> placeholder="模块类型" :clearable="true" :size="defaultFormItemSize" :disabled="isEdit">
<el-option v-for="item in SysPermModuleType.getList()" :key="item.id" :value="item.id" :label="item.name" /> <el-option v-for="item in SysPermModuleType.getList()" :key="item.id" :value="item.id" :label="item.name" />
</el-select> </el-select>
</el-form-item> </el-form-item>
@@ -20,7 +20,7 @@
<el-col :span="24"> <el-col :span="24">
<el-form-item label="所属模块"> <el-form-item label="所属模块">
<el-cascader class="input-item" :options="getPermGroupTree" v-model="formData.SysPermModule.parentId" <el-cascader class="input-item" :options="getPermGroupTree" v-model="formData.SysPermModule.parentId"
placeholder="选择所属模块" :clearable="true" size="mini" placeholder="选择所属模块" :clearable="true" :size="defaultFormItemSize"
:props="{value: 'moduleId', label: 'moduleName', checkStrictly: true}" /> :props="{value: 'moduleId', label: 'moduleName', checkStrictly: true}" />
</el-form-item> </el-form-item>
</el-col> </el-col>
@@ -32,10 +32,10 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-row type="flex" justify="end"> <el-row type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" @click="onCancel(false)"> <el-button type="primary" :size="defaultFormItemSize" :plain="true" @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" @click="onAddClick()" <el-button type="primary" :size="defaultFormItemSize" @click="onAddClick()"
:disabled="!(checkPermCodeExist('formSysPerm:fragmentSysPerm:addPermModule') || checkPermCodeExist('formSysPerm:fragmentSysPerm:updatePermModule'))"> :disabled="!(checkPermCodeExist('formSysPerm:fragmentSysPerm:addPermModule') || checkPermCodeExist('formSysPerm:fragmentSysPerm:updatePermModule'))">
保存 保存
</el-button> </el-button>

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="fragmentEditPost" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;" <el-form ref="fragmentEditPost" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;"
label-width="100px" size="mini" label-position="right" @submit.native.prevent> label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="岗位名称" prop="SysPost.postName"> <el-form-item label="岗位名称" prop="SysPost.postName">
@@ -22,11 +22,11 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-row class="no-scroll flex-box" type="flex" justify="end"> <el-row class="no-scroll flex-box" type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="onCancel(false)"> @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" <el-button type="primary" :size="defaultFormItemSize"
:disabled="!(checkPermCodeExist('formSysPost:fragmentSysPost:add') || checkPermCodeExist('formSysPost:fragmentSysPost:update'))" :disabled="!(checkPermCodeExist('formSysPost:fragmentSysPost:add') || checkPermCodeExist('formSysPost:fragmentSysPost:update'))"
@click="onSaveClick()"> @click="onSaveClick()">
保存 保存

View File

@@ -1,5 +1,5 @@
<template> <template>
<el-form ref="form" :model="formData" :rules="rules" label-width="80px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="form" :model="formData" :rules="rules" label-width="80px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="角色名称" prop="roleName"> <el-form-item label="角色名称" prop="roleName">
@@ -14,7 +14,7 @@
<el-card shadow="never"> <el-card shadow="never">
<div slot="header" class="card-header"> <div slot="header" class="card-header">
<span>菜单权限</span> <span>菜单权限</span>
<el-input size="mini" v-model="menuNameFilter" placeholder="输入菜单名称过滤" style="width: 250px;" clearable suffix-icon="el-icon-search" /> <el-input :size="defaultFormItemSize" v-model="menuNameFilter" placeholder="输入菜单名称过滤" style="width: 250px;" clearable suffix-icon="el-icon-search" />
</div> </div>
<el-scrollbar style="height: 230px;" wrap-class="scrollbar_dropdown__wrap"> <el-scrollbar style="height: 230px;" wrap-class="scrollbar_dropdown__wrap">
<el-tree ref="authTree" :data="authData" :props="treeProps" :check-strictly="false" <el-tree ref="authTree" :data="authData" :props="treeProps" :check-strictly="false"
@@ -26,8 +26,8 @@
</el-row> </el-row>
<!-- 弹窗下发按钮栏必须设置class为dialog-btn-layer --> <!-- 弹窗下发按钮栏必须设置class为dialog-btn-layer -->
<el-row type="flex" justify="end" class="dialog-btn-layer" style="margin-top: 20px;"> <el-row type="flex" justify="end" class="dialog-btn-layer" style="margin-top: 20px;">
<el-button size="mini" @click="onCancel(false)" >取消</el-button> <el-button :size="defaultFormItemSize" @click="onCancel(false)" >取消</el-button>
<el-button type="primary" size="mini" @click="onSubmit" <el-button type="primary" :size="defaultFormItemSize" @click="onSubmit"
:disabled="!(checkPermCodeExist('formSysRole:fragmentSysRole:update') || checkPermCodeExist('formSysRole:fragmentSysRole:add'))"> :disabled="!(checkPermCodeExist('formSysRole:fragmentSysRole:update') || checkPermCodeExist('formSysRole:fragmentSysRole:add'))">
确定 确定
</el-button> </el-button>

View File

@@ -1,5 +1,5 @@
<template> <template>
<el-form ref="form" :model="formData" :rules="rules" label-width="110px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="form" :model="formData" :rules="rules" label-width="110px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20" class="full-width-input"> <el-row :gutter="20" class="full-width-input">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="登录名称" prop="loginName"> <el-form-item label="登录名称" prop="loginName">
@@ -56,8 +56,8 @@
</el-row> </el-row>
<!-- 弹窗下发按钮栏必须设置class为dialog-btn-layer --> <!-- 弹窗下发按钮栏必须设置class为dialog-btn-layer -->
<el-row type="flex" justify="end" class="dialog-btn-layer"> <el-row type="flex" justify="end" class="dialog-btn-layer">
<el-button size="mini" type="primary" :plain="true" @click="onCancel(false)" >取消</el-button> <el-button :size="defaultFormItemSize" type="primary" :plain="true" @click="onCancel(false)" >取消</el-button>
<el-button type="primary" size="mini" @click="onSubmit" <el-button type="primary" :size="defaultFormItemSize" @click="onSubmit"
:disabled="!(checkPermCodeExist('formSysUser:fragmentSysUser:update') || checkPermCodeExist('formSysUser:fragmentSysUser:add'))"> :disabled="!(checkPermCodeExist('formSysUser:fragmentSysUser:update') || checkPermCodeExist('formSysUser:fragmentSysUser:add'))">
确定 确定
</el-button> </el-button>

View File

@@ -1,19 +1,19 @@
<template> <template>
<div> <div>
<el-form label-width="75px" size="mini" label-position="right" @submit.native.prevent> <el-form label-width="75px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="关联URL"> <el-form-item label="关联URL">
<el-input class="filter-item" v-model="formMenuPerm.formFilter.url" <el-input class="filter-item" v-model="formMenuPerm.formFilter.url"
:clearable="true" placeholder="权限字名称" /> :clearable="true" placeholder="权限字名称" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" size="mini" :plain="true" @click="refreshFormMenuPerm(true)"> <el-button slot="operator" type="primary" :size="defaultFormItemSize" :plain="true" @click="refreshFormMenuPerm(true)">
查询 查询
</el-button> </el-button>
</filter-box> </filter-box>
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="getPermList" size="mini" height="459px" <el-table :data="getPermList" :size="defaultFormItemSize" height="459px"
@sort-change="formMenuPerm.SysPerm.impl.onSortChange" @sort-change="formMenuPerm.SysPerm.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="50px" :index="formMenuPerm.SysPerm.impl.getTableIndex" /> <el-table-column label="序号" header-align="center" align="center" type="index" width="50px" :index="formMenuPerm.SysPerm.impl.getTableIndex" />
@@ -21,7 +21,7 @@
</el-table-column> </el-table-column>
<el-table-column label="权限字类型" width="100px"> <el-table-column label="权限字类型" width="100px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="getPermCodeType(scope.row.permCodeType)"> <el-tag :size="defaultFormItemSize" :type="getPermCodeType(scope.row.permCodeType)">
{{SysPermCodeType.getValue(scope.row.permCodeType)}} {{SysPermCodeType.getValue(scope.row.permCodeType)}}
</el-tag> </el-tag>
</template> </template>

View File

@@ -1,26 +1,27 @@
<template> <template>
<div> <div>
<el-form label-width="75px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="formSetRoleUsers" :model="formSysUser" label-width="75px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="325"> <filter-box :item-width="325">
<el-form-item label="用户状态"> <el-form-item label="用户状态" prop="formFilter.sysUserStatus">
<el-select class="filter-item" v-model="formSysUser.formFilter.sysUserStatus" :clearable="true" <el-select class="filter-item" v-model="formSysUser.formFilter.sysUserStatus" :clearable="true"
placeholder="用户状态" :loading="formSysUser.sysUserStatus.impl.loading" placeholder="用户状态" :loading="formSysUser.sysUserStatus.impl.loading"
@visible-change="onSysUserStatusVisibleChange"> @visible-change="onSysUserStatusVisibleChange">
<el-option v-for="item in formSysUser.sysUserStatus.impl.dropdownList" :key="item.id" :value="item.id" :label="item.name" /> <el-option v-for="item in formSysUser.sysUserStatus.impl.dropdownList" :key="item.id" :value="item.id" :label="item.name" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="用户名"> <el-form-item label="用户名" prop="formFilter.sysUserLoginName">
<el-input class="filter-item" v-model="formSysUser.formFilter.sysUserLoginName" <el-input class="filter-item" v-model="formSysUser.formFilter.sysUserLoginName"
:clearable="true" placeholder="用户名" /> :clearable="true" placeholder="用户名" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFormSysUser(true)">查询</el-button> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onReset">重置</el-button>
<el-button slot="operator" size="mini" type="primary" :plain="false" @click="onSetUser" <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFormSysUser(true)">查询</el-button>
<el-button slot="operator" :size="defaultFormItemSize" type="primary" :plain="false" @click="onSetUser"
:disabled="selectUsers == null || selectUsers.length <= 0">授权人员</el-button> :disabled="selectUsers == null || selectUsers.length <= 0">授权人员</el-button>
</filter-box> </filter-box>
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="formSysUser.SysUser.impl.dataList" size="mini" row-key="userId" ref="userTable" <el-table :data="formSysUser.SysUser.impl.dataList" :size="defaultFormItemSize" row-key="userId" ref="userTable"
header-cell-class-name="table-header-gray" height="395px" @selection-change="onTableSelectionChange"> header-cell-class-name="table-header-gray" height="395px" @selection-change="onTableSelectionChange">
<el-table-column label="序号" header-align="center" align="center" type="index" width="50px" :index="formSysUser.SysUser.impl.getTableIndex" /> <el-table-column label="序号" header-align="center" align="center" type="index" width="50px" :index="formSysUser.SysUser.impl.getTableIndex" />
<el-table-column header-align="center" align="center" type="selection" width="50px" :reserve-selection="true" /> <el-table-column header-align="center" align="center" type="selection" width="50px" :reserve-selection="true" />
@@ -35,7 +36,7 @@
</el-table-column> </el-table-column>
<el-table-column label="状态"> <el-table-column label="状态">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag :type="getUserStatusType(scope.row.userStatus)" size="mini">{{SysUserStatus.getValue(scope.row.userStatus)}}</el-tag> <el-tag :type="getUserStatusType(scope.row.userStatus)" :size="defaultFormItemSize">{{SysUserStatus.getValue(scope.row.userStatus)}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@@ -146,6 +147,10 @@ export default {
onCancel () { onCancel () {
this.$router.go(-1); this.$router.go(-1);
}, },
onReset () {
this.$refs.formSetRoleUsers.resetFields();
this.refreshFormSysUser(true);
},
loadSysUserData (params) { loadSysUserData (params) {
params.roleId = this.roleId; params.roleId = this.roleId;
params.sysUserDtoFilter = { params.sysUserDtoFilter = {

View File

@@ -1,26 +1,27 @@
<template> <template>
<div> <div>
<el-form label-width="75px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="formSysUser" :model="formSysUser" label-width="75px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="325"> <filter-box :item-width="325">
<el-form-item label="用户状态"> <el-form-item label="用户状态" prop="formFilter.sysUserStatus">
<el-select class="filter-item" v-model="formSysUser.formFilter.sysUserStatus" :clearable="true" <el-select class="filter-item" v-model="formSysUser.formFilter.sysUserStatus" :clearable="true"
placeholder="用户状态" :loading="formSysUser.sysUserStatus.impl.loading" placeholder="用户状态" :loading="formSysUser.sysUserStatus.impl.loading"
@visible-change="onSysUserStatusVisibleChange"> @visible-change="onSysUserStatusVisibleChange">
<el-option v-for="item in formSysUser.sysUserStatus.impl.dropdownList" :key="item.id" :value="item.id" :label="item.name" /> <el-option v-for="item in formSysUser.sysUserStatus.impl.dropdownList" :key="item.id" :value="item.id" :label="item.name" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="用户名"> <el-form-item label="用户名" prop="formFilter.sysUserLoginName">
<el-input class="filter-item" v-model="formSysUser.formFilter.sysUserLoginName" <el-input class="filter-item" v-model="formSysUser.formFilter.sysUserLoginName"
:clearable="true" placeholder="用户名" /> :clearable="true" placeholder="用户名" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFormSysUser(true)">查询</el-button> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onReset">重置</el-button>
<el-button slot="operator" size="mini" type="primary" :plain="false" @click="onSetUser" <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFormSysUser(true)">查询</el-button>
<el-button slot="operator" :size="defaultFormItemSize" type="primary" :plain="false" @click="onSetUser"
:disabled="selectUsers == null || selectUsers.length <= 0">授权人员</el-button> :disabled="selectUsers == null || selectUsers.length <= 0">授权人员</el-button>
</filter-box> </filter-box>
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="formSysUser.SysUser.impl.dataList" size="mini" row-key="userId" ref="userTable" <el-table :data="formSysUser.SysUser.impl.dataList" :size="defaultFormItemSize" row-key="userId" ref="userTable"
header-cell-class-name="table-header-gray" height="395px" @selection-change="onTableSelectionChange"> header-cell-class-name="table-header-gray" height="395px" @selection-change="onTableSelectionChange">
<el-table-column label="序号" header-align="center" align="center" type="index" width="50px" :index="formSysUser.SysUser.impl.getTableIndex" /> <el-table-column label="序号" header-align="center" align="center" type="index" width="50px" :index="formSysUser.SysUser.impl.getTableIndex" />
<el-table-column header-align="center" align="center" type="selection" width="50px" :reserve-selection="true" /> <el-table-column header-align="center" align="center" type="selection" width="50px" :reserve-selection="true" />
@@ -35,7 +36,7 @@
</el-table-column> </el-table-column>
<el-table-column label="状态"> <el-table-column label="状态">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag :type="getUserStatusType(scope.row.userStatus)" size="mini">{{SysUserStatus.getValue(scope.row.userStatus)}}</el-tag> <el-tag :type="getUserStatusType(scope.row.userStatus)" :size="defaultFormItemSize">{{SysUserStatus.getValue(scope.row.userStatus)}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@@ -97,6 +98,10 @@ export default {
} }
}, },
methods: { methods: {
onReset () {
this.$refs.formSysUser.resetFields();
this.refreshFormSysUser(true);
},
/** /**
* 用户状态下拉数据获取函数 * 用户状态下拉数据获取函数
*/ */

View File

@@ -3,9 +3,9 @@
<el-tabs v-model="activeFragmentId" :before-leave="onFragmentChange"> <el-tabs v-model="activeFragmentId" :before-leave="onFragmentChange">
<el-tab-pane label="数据权限管理" name="fragmentSysDataPerm" style="width: 100%;" <el-tab-pane label="数据权限管理" name="fragmentSysDataPerm" style="width: 100%;"
v-if="checkPermCodeExist('formSysDataPerm:fragmentSysDataPerm')"> v-if="checkPermCodeExist('formSysDataPerm:fragmentSysDataPerm')">
<el-form label-width="100px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="fragmentSysDataPerm" :model="fragmentSysDataPerm" label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="过滤规则"> <el-form-item label="过滤规则" prop="formFilter.sysDatapermType">
<el-select class="filter-item" v-model="fragmentSysDataPerm.formFilter.sysDatapermType" :clearable="true" <el-select class="filter-item" v-model="fragmentSysDataPerm.formFilter.sysDatapermType" :clearable="true"
placeholder="过滤规则" :loading="fragmentSysDataPerm.sysDatapermType.impl.loading" placeholder="过滤规则" :loading="fragmentSysDataPerm.sysDatapermType.impl.loading"
@visible-change="onSysDatapermTypeVisibleChange" @visible-change="onSysDatapermTypeVisibleChange"
@@ -13,12 +13,13 @@
<el-option v-for="item in fragmentSysDataPerm.sysDatapermType.impl.dropdownList" :key="item.id" :value="item.id" :label="item.name" /> <el-option v-for="item in fragmentSysDataPerm.sysDatapermType.impl.dropdownList" :key="item.id" :value="item.id" :label="item.name" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="数据权限名称"> <el-form-item label="数据权限名称" prop="formFilter.sysDataPermName">
<el-input class="filter-item" v-model="fragmentSysDataPerm.formFilter.sysDataPermName" <el-input class="filter-item" v-model="fragmentSysDataPerm.formFilter.sysDataPermName"
:clearable="true" placeholder="数据权限名称" /> :clearable="true" placeholder="数据权限名称" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFragmentSysDataPerm(true)">查询</el-button> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onResetDataPerm">重置</el-button>
<el-button slot="operator" type="primary" size="mini" :disabled="!checkPermCodeExist('formSysDataPerm:fragmentSysDataPerm:add')" <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFragmentSysDataPerm(true)">查询</el-button>
<el-button slot="operator" type="primary" :size="defaultFormItemSize" :disabled="!checkPermCodeExist('formSysDataPerm:fragmentSysDataPerm:add')"
@click="onAddDataPermClick()"> @click="onAddDataPermClick()">
新建 新建
</el-button> </el-button>
@@ -26,7 +27,7 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="fragmentSysDataPerm.SysDataPerm.impl.dataList" size="mini" :height="getTableHeight + 'px'" <el-table :data="fragmentSysDataPerm.SysDataPerm.impl.dataList" :size="defaultFormItemSize" :height="getTableHeight + 'px'"
@sort-change="fragmentSysDataPerm.SysDataPerm.impl.onSortChange" @sort-change="fragmentSysDataPerm.SysDataPerm.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" <el-table-column label="序号" header-align="center" align="center" type="index" width="55px"
@@ -42,11 +43,11 @@
</el-table-column> </el-table-column>
<el-table-column label="操作" fixed="right"> <el-table-column label="操作" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click="onEditDataPermClick(scope.row)" type="text" size="mini" <el-button @click="onEditDataPermClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysDataPerm:fragmentSysDataPerm:update')"> :disabled="!checkPermCodeExist('formSysDataPerm:fragmentSysDataPerm:update')">
编辑 编辑
</el-button> </el-button>
<el-button @click="onDeleteClick(scope.row)" type="text" size="mini" <el-button @click="onDeleteClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysDataPerm:fragmentSysDataPerm:delete')"> :disabled="!checkPermCodeExist('formSysDataPerm:fragmentSysDataPerm:delete')">
删除 删除
</el-button> </el-button>
@@ -71,9 +72,9 @@
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="用户授权" name="fragmentSysDataPermUser" style="width: 100%;" <el-tab-pane label="用户授权" name="fragmentSysDataPermUser" style="width: 100%;"
v-if="checkPermCodeExist('formSysDataPerm:fragmentSysDataPermUser')"> v-if="checkPermCodeExist('formSysDataPerm:fragmentSysDataPermUser')">
<el-form label-width="75px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="fragmentSysDataPermUser" :model="fragmentSysDataPermUser" label-width="75px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="数据权限"> <el-form-item label="数据权限" prop="formFilter.dataPermId">
<el-select class="filter-item" v-model="fragmentSysDataPermUser.formFilter.dataPermId" clearable <el-select class="filter-item" v-model="fragmentSysDataPermUser.formFilter.dataPermId" clearable
placeholder="数据权限" :loading="fragmentSysDataPermUser.dataPermId.impl.loading" placeholder="数据权限" :loading="fragmentSysDataPermUser.dataPermId.impl.loading"
@visible-change="fragmentSysDataPermUser.dataPermId.impl.onVisibleChange" @visible-change="fragmentSysDataPermUser.dataPermId.impl.onVisibleChange"
@@ -82,14 +83,15 @@
:value="item.dataPermId" :label="item.dataPermName" /> :value="item.dataPermId" :label="item.dataPermName" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="用户名"> <el-form-item label="用户名" prop="formFilter.searchString">
<el-input class="filter-item" v-model="fragmentSysDataPermUser.formFilter.searchString" <el-input class="filter-item" v-model="fragmentSysDataPermUser.formFilter.searchString"
:clearable="true" placeholder="输入用户名 / 昵称查询" @change="refreshFragmentSysDataPermUser(true)" /> :clearable="true" placeholder="输入用户名 / 昵称查询" @change="refreshFragmentSysDataPermUser(true)" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFragmentSysDataPermUser(true)"> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onResetDataPermUser">重置</el-button>
<el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFragmentSysDataPermUser(true)">
查询 查询
</el-button> </el-button>
<el-button slot="operator" type="primary" size="mini" @click="onAddDataPermUserClick()" <el-button slot="operator" type="primary" :size="defaultFormItemSize" @click="onAddDataPermUserClick()"
:disabled="!checkPermCodeExist('formSysDataPerm:fragmentSysDataPermUser:addDataPermUser') || :disabled="!checkPermCodeExist('formSysDataPerm:fragmentSysDataPermUser:addDataPermUser') ||
fragmentSysDataPermUser.formFilter.dataPermId == null || fragmentSysDataPermUser.formFilter.dataPermId === ''"> fragmentSysDataPermUser.formFilter.dataPermId == null || fragmentSysDataPermUser.formFilter.dataPermId === ''">
添加用户 添加用户
@@ -98,7 +100,7 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="fragmentSysDataPermUser.SysDataPermUserList.impl.dataList" size="mini" :height="getTableHeight + 'px'" <el-table :data="fragmentSysDataPermUser.SysDataPermUserList.impl.dataList" :size="defaultFormItemSize" :height="getTableHeight + 'px'"
@sort-change="fragmentSysDataPermUser.SysDataPermUserList.impl.onSortChange" @sort-change="fragmentSysDataPermUser.SysDataPermUserList.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" <el-table-column label="序号" header-align="center" align="center" type="index" width="55px"
@@ -114,12 +116,12 @@
</el-table-column> </el-table-column>
<el-table-column label="状态"> <el-table-column label="状态">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag :type="getUserStatusType(scope.row.userStatus)" size="mini">{{SysUserStatus.getValue(scope.row.userStatus)}}</el-tag> <el-tag :type="getUserStatusType(scope.row.userStatus)" :size="defaultFormItemSize">{{SysUserStatus.getValue(scope.row.userStatus)}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" fixed="right" width="80px"> <el-table-column label="操作" fixed="right" width="80px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button class="btn-table-delete" type="text" size="mini" <el-button class="btn-table-delete" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysDataPerm:fragmentSysDataPermUser:deleteDataPermUser')" :disabled="!checkPermCodeExist('formSysDataPerm:fragmentSysDataPermUser:deleteDataPermUser')"
@click="onDeleteRow(scope.row)">移除</el-button> @click="onDeleteRow(scope.row)">移除</el-button>
</template> </template>
@@ -197,6 +199,14 @@ export default {
} }
}, },
methods: { methods: {
onResetDataPerm () {
this.$refs.fragmentSysDataPerm.resetFields();
this.refreshFragmentSysDataPerm(true);
},
onResetDataPermUser () {
this.$refs.fragmentSysDataPermUser.resetFields();
this.refreshFragmentSysDataPermUser(true);
},
/** /**
* 数据权限数据获取函数返回Primise * 数据权限数据获取函数返回Primise
*/ */

View File

@@ -1,13 +1,14 @@
<template> <template>
<div> <div>
<el-form label-width="75px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="formSysDept" :model="formSysDept" label-width="75px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="部门名称"> <el-form-item label="部门名称" prop="formFilter.deptName">
<el-input class="filter-item" v-model="formSysDept.formFilter.deptName" <el-input class="filter-item" v-model="formSysDept.formFilter.deptName"
:clearable="true" placeholder="部门名称" /> :clearable="true" placeholder="部门名称" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFormSysDept(true)">查询</el-button> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onReset">重置</el-button>
<el-button slot="operator" type="primary" size="mini" :disabled="!checkPermCodeExist('formSysDept:fragmentSysDept:add')" <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFormSysDept(true)">查询</el-button>
<el-button slot="operator" type="primary" :size="defaultFormItemSize" :disabled="!checkPermCodeExist('formSysDept:fragmentSysDept:add')"
@click="onCreateSysDeptClick()"> @click="onCreateSysDeptClick()">
新建 新建
</el-button> </el-button>
@@ -15,7 +16,7 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="formSysDept.SysDeptList.impl.dataList" size="mini" row-key="deptId" <el-table :data="formSysDept.SysDeptList.impl.dataList" :size="defaultFormItemSize" row-key="deptId"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="50px"> <el-table-column label="序号" header-align="center" align="center" type="index" width="50px">
</el-table-column> </el-table-column>
@@ -23,15 +24,15 @@
</el-table-column> </el-table-column>
<el-table-column label="操作" fixed="right" width="150px"> <el-table-column label="操作" fixed="right" width="150px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click="onEditSysDeptClick(scope.row)" type="text" size="mini" <el-button @click="onEditSysDeptClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysDept:fragmentSysDept:update')"> :disabled="!checkPermCodeExist('formSysDept:fragmentSysDept:update')">
编辑 编辑
</el-button> </el-button>
<el-button @click="onEditSysDeptPostClick(scope.row)" type="text" size="mini" <el-button @click="onEditSysDeptPostClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!(checkPermCodeExist('formSysDept:fragmentSysDept:editPost') || checkPermCodeExist('formSysDept:fragmentSysDept:viewPost'))"> :disabled="!(checkPermCodeExist('formSysDept:fragmentSysDept:editPost') || checkPermCodeExist('formSysDept:fragmentSysDept:viewPost'))">
岗位 岗位
</el-button> </el-button>
<el-button @click="onDeleteClick(scope.row)" type="text" size="mini" <el-button @click="onDeleteClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysDept:fragmentSysDept:delete')"> :disabled="!checkPermCodeExist('formSysDept:fragmentSysDept:delete')">
删除 删除
</el-button> </el-button>
@@ -75,6 +76,10 @@ export default {
} }
}, },
methods: { methods: {
onReset () {
this.$refs.formSysDept.resetFields();
this.refreshFormSysDept(true);
},
/** /**
* 部门列表数据获取函数返回Primise * 部门列表数据获取函数返回Primise
*/ */

View File

@@ -1,13 +1,14 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form label-width="100px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="formSetDeptPost" :model="formSetDeptPost" label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="岗位名称"> <el-form-item label="岗位名称" prop="formFilter.postName">
<el-input class="filter-item" v-model="formSetDeptPost.formFilter.postName" <el-input class="filter-item" v-model="formSetDeptPost.formFilter.postName"
:clearable="true" placeholder="岗位名称" /> :clearable="true" placeholder="岗位名称" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFormSetDeptPost(true)">查询</el-button> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onReset">重置</el-button>
<el-button slot="operator" type="primary" size="mini" <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFormSetDeptPost(true)">查询</el-button>
<el-button slot="operator" type="primary" :size="defaultFormItemSize"
:disabled="tableSelectRowList.length <= 0 || !checkPermCodeExist('formSysDept:fragmentSysDept:editPost')" :disabled="tableSelectRowList.length <= 0 || !checkPermCodeExist('formSysDept:fragmentSysDept:editPost')"
@click="onAddSysDeptPostClick()"> @click="onAddSysDeptPostClick()">
添加岗位 添加岗位
@@ -16,7 +17,7 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="formSetDeptPost.SysPost.impl.dataList" size="mini" @sort-change="formSetDeptPost.SysPost.impl.onSortChange" <el-table :data="formSetDeptPost.SysPost.impl.dataList" :size="defaultFormItemSize" @sort-change="formSetDeptPost.SysPost.impl.onSortChange"
@selection-change="onSysPostSelectionChange" header-cell-class-name="table-header-gray"> @selection-change="onSysPostSelectionChange" header-cell-class-name="table-header-gray">
<el-table-column label="序号" type="index" header-align="center" align="center" width="55px" :index="formSetDeptPost.SysPost.impl.getTableIndex" /> <el-table-column label="序号" type="index" header-align="center" align="center" width="55px" :index="formSetDeptPost.SysPost.impl.getTableIndex" />
<el-table-column type="selection" header-align="center" align="center" width="55px" /> <el-table-column type="selection" header-align="center" align="center" width="55px" />
@@ -26,7 +27,7 @@
</el-table-column> </el-table-column>
<el-table-column label="领导岗位" prop="leaderPost" sortable="custom"> <el-table-column label="领导岗位" prop="leaderPost" sortable="custom">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="scope.row.leaderPost ? 'success' : 'danger'"> <el-tag :size="defaultFormItemSize" :type="scope.row.leaderPost ? 'success' : 'danger'">
{{scope.row.leaderPost ? '是' : '否'}} {{scope.row.leaderPost ? '是' : '否'}}
</el-tag> </el-tag>
</template> </template>
@@ -86,6 +87,10 @@ export default {
} }
}, },
methods: { methods: {
onReset () {
this.$refs.formSetDeptPost.resetFields();
this.refreshFormSetDeptPost(true);
},
onCancel (isSuccess) { onCancel (isSuccess) {
if (this.observer != null) { if (this.observer != null) {
this.observer.cancel(isSuccess); this.observer.cancel(isSuccess);

View File

@@ -1,13 +1,14 @@
<template> <template>
<div style="position: relative;"> <div style="position: relative;">
<el-form label-width="100px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="formSysDeptPost" :model="formSysDeptPost" label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="岗位名称"> <el-form-item label="岗位名称" prop="formFilter.postName">
<el-input class="filter-item" v-model="formSysDeptPost.formFilter.postName" <el-input class="filter-item" v-model="formSysDeptPost.formFilter.postName"
:clearable="true" placeholder="岗位名称" /> :clearable="true" placeholder="岗位名称" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFormSysDeptPost(true)">查询</el-button> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onReset">重置</el-button>
<el-button slot="operator" type="primary" size="mini" :disabled="!checkPermCodeExist('formSysDept:fragmentSysDept:editPost')" <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFormSysDeptPost(true)">查询</el-button>
<el-button slot="operator" type="primary" :size="defaultFormItemSize" :disabled="!checkPermCodeExist('formSysDept:fragmentSysDept:editPost')"
@click="onFormSetDeptPostClick()"> @click="onFormSetDeptPostClick()">
岗位设置 岗位设置
</el-button> </el-button>
@@ -15,7 +16,7 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table ref="sysPost" :data="formSysDeptPost.SysPost.impl.dataList" size="mini" @sort-change="formSysDeptPost.SysPost.impl.onSortChange" <el-table ref="sysPost" :data="formSysDeptPost.SysPost.impl.dataList" :size="defaultFormItemSize" @sort-change="formSysDeptPost.SysPost.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" :index="formSysDeptPost.SysPost.impl.getTableIndex" /> <el-table-column label="序号" header-align="center" align="center" type="index" width="55px" :index="formSysDeptPost.SysPost.impl.getTableIndex" />
<el-table-column label="岗位名称" prop="postName"> <el-table-column label="岗位名称" prop="postName">
@@ -23,14 +24,14 @@
<el-table-column label="岗位别名" prop="sysDeptPost.postShowName"> <el-table-column label="岗位别名" prop="sysDeptPost.postShowName">
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="formSysDeptPost.SysPost.currentRow == null || formSysDeptPost.SysPost.currentRow.postId !== scope.row.postId">{{(scope.row.sysDeptPost || {}).postShowName}}</span> <span v-if="formSysDeptPost.SysPost.currentRow == null || formSysDeptPost.SysPost.currentRow.postId !== scope.row.postId">{{(scope.row.sysDeptPost || {}).postShowName}}</span>
<el-input v-else size="mini" v-model="formSysDeptPost.SysPost.currentRow.sysDeptPost.postShowName" /> <el-input v-else :size="defaultFormItemSize" v-model="formSysDeptPost.SysPost.currentRow.sysDeptPost.postShowName" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="岗位层级" prop="level" sortable="custom"> <el-table-column label="岗位层级" prop="level" sortable="custom">
</el-table-column> </el-table-column>
<el-table-column label="领导岗位" prop="leaderPost" sortable="custom"> <el-table-column label="领导岗位" prop="leaderPost" sortable="custom">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="scope.row.leaderPost ? 'success' : 'danger'"> <el-tag :size="defaultFormItemSize" :type="scope.row.leaderPost ? 'success' : 'danger'">
{{scope.row.leaderPost ? '是' : '否'}} {{scope.row.leaderPost ? '是' : '否'}}
</el-tag> </el-tag>
</template> </template>
@@ -38,21 +39,21 @@
<el-table-column label="操作" fixed="right"> <el-table-column label="操作" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button v-if="formSysDeptPost.SysPost.currentRow == null" <el-button v-if="formSysDeptPost.SysPost.currentRow == null"
@click.stop="onEditPostName(scope.row)" type="text" size="mini" @click.stop="onEditPostName(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysDept:fragmentSysDept:editPost')"> :disabled="!checkPermCodeExist('formSysDept:fragmentSysDept:editPost')">
修改别名 修改别名
</el-button> </el-button>
<el-button class="table-btn delete" v-if="formSysDeptPost.SysPost.currentRow == null" <el-button class="table-btn delete" v-if="formSysDeptPost.SysPost.currentRow == null"
@click.stop="onDeleteSysDeptPostClick(scope.row)" type="text" size="mini" @click.stop="onDeleteSysDeptPostClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysDept:fragmentSysDept:editPost')"> :disabled="!checkPermCodeExist('formSysDept:fragmentSysDept:editPost')">
移除 移除
</el-button> </el-button>
<el-button v-if="formSysDeptPost.SysPost.currentRow != null && formSysDeptPost.SysPost.currentRow.postId === scope.row.postId" <el-button v-if="formSysDeptPost.SysPost.currentRow != null && formSysDeptPost.SysPost.currentRow.postId === scope.row.postId"
@click.stop="onSavePostName(scope.row)" type="text" size="mini"> @click.stop="onSavePostName(scope.row)" type="text" :size="defaultFormItemSize">
保存 保存
</el-button> </el-button>
<el-button v-if="formSysDeptPost.SysPost.currentRow != null && formSysDeptPost.SysPost.currentRow.postId === scope.row.postId" <el-button v-if="formSysDeptPost.SysPost.currentRow != null && formSysDeptPost.SysPost.currentRow.postId === scope.row.postId"
@click.stop="onCancelSavePostName(scope.row)" type="text" size="mini"> @click.stop="onCancelSavePostName(scope.row)" type="text" :size="defaultFormItemSize">
取消 取消
</el-button> </el-button>
</template> </template>
@@ -123,6 +124,10 @@ export default {
this.refreshParentCachedPage = isSuccess; this.refreshParentCachedPage = isSuccess;
this.$router.go(-1); this.$router.go(-1);
}, },
onReset () {
this.$refs.formSysDeptPost.resetFields();
this.refreshFormSysDeptPost(true);
},
/** /**
* 部门岗位数据获取函数返回Promise * 部门岗位数据获取函数返回Promise
*/ */

View File

@@ -1,16 +1,17 @@
<template> <template>
<div style="position: relative;"> <div style="position: relative;">
<el-form label-width="100px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="formSysLoginUser" :model="formSysLoginUser" label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="登录名称"> <el-form-item label="登录名称" prop="formFilter.loginName">
<el-input class="filter-item" v-model="formSysLoginUser.formFilter.loginName" :clearable="true" /> <el-input class="filter-item" v-model="formSysLoginUser.formFilter.loginName" :clearable="true" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFormOperationType(true)">查询</el-button> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onReset">重置</el-button>
<el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFormOperationType(true)">查询</el-button>
</filter-box> </filter-box>
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table ref="teacher" :data="formSysLoginUser.loginUser.impl.dataList" size="mini" @sort-change="formSysLoginUser.loginUser.impl.onSortChange" <el-table ref="teacher" :data="formSysLoginUser.loginUser.impl.dataList" :size="defaultFormItemSize" @sort-change="formSysLoginUser.loginUser.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" :index="formSysLoginUser.loginUser.impl.getTableIndex" /> <el-table-column label="序号" header-align="center" align="center" type="index" width="55px" :index="formSysLoginUser.loginUser.impl.getTableIndex" />
<el-table-column label="登录名称" prop="loginName" /> <el-table-column label="登录名称" prop="loginName" />
@@ -19,7 +20,7 @@
<el-table-column label="登录时间" prop="loginTime" /> <el-table-column label="登录时间" prop="loginTime" />
<el-table-column label="操作" fixed="right" width="150px" > <el-table-column label="操作" fixed="right" width="150px" >
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click.stop="onDeleteLoginUserClick(scope.row)" type="text" size="mini"> <el-button @click.stop="onDeleteLoginUserClick(scope.row)" type="text" :size="defaultFormItemSize">
强退 强退
</el-button> </el-button>
</template> </template>
@@ -69,6 +70,10 @@ export default {
} }
}, },
methods: { methods: {
onReset () {
this.$refs.formSysLoginUser.resetFields();
this.refreshFormOperationType(true);
},
/** /**
* 登录用户数据数据获取函数返回Promise * 登录用户数据数据获取函数返回Promise
*/ */

View File

@@ -2,13 +2,13 @@
<div class="tab-dialog-box" style="position: relative;"> <div class="tab-dialog-box" style="position: relative;">
<el-tabs v-model="activeFragment"> <el-tabs v-model="activeFragment">
<el-tab-pane label="栏目管理" name="fragmentSysColumn" style="width: 100%;"> <el-tab-pane label="栏目管理" name="fragmentSysColumn" style="width: 100%;">
<el-form label-width="100px" size="mini" label-position="right" @submit.native.prevent> <el-form label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row type="flex" justify="end" style="margin-bottom: 18px;"> <el-row type="flex" justify="end" style="margin-bottom: 18px;">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="initFormData()"> @click="initFormData()">
刷新 刷新
</el-button> </el-button>
<el-button type="primary" size="mini" :disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:add')" <el-button type="primary" :size="defaultFormItemSize" :disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:add')"
@click="onCreateSysColumnClick()"> @click="onCreateSysColumnClick()">
新建 新建
</el-button> </el-button>
@@ -16,18 +16,18 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="columnList" size="mini" :height="getTabPaneHeight + 'px'" <el-table :data="columnList" :size="defaultFormItemSize" :height="getTabPaneHeight + 'px'"
header-cell-class-name="table-header-gray" row-key="menuId"> header-cell-class-name="table-header-gray" row-key="menuId">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" /> <el-table-column label="序号" header-align="center" align="center" type="index" width="55px" />
<el-table-column label="栏目名称" prop="columnName" /> <el-table-column label="栏目名称" prop="columnName" />
<el-table-column label="显示顺序" prop="showOrder" /> <el-table-column label="显示顺序" prop="showOrder" />
<el-table-column label="操作" width="200px"> <el-table-column label="操作" width="200px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click="onEditSysColumnClick(scope.row)" type="text" size="mini" <el-button @click="onEditSysColumnClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:update')"> :disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:update')">
编辑 编辑
</el-button> </el-button>
<el-button @click="onDeleteClick(scope.row)" type="text" size="mini" <el-button @click="onDeleteClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:delete')"> :disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:delete')">
删除 删除
</el-button> </el-button>
@@ -38,7 +38,7 @@
</el-row> </el-row>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="菜单管理" name="fragmentSysMenu" style="width: 100%;"> <el-tab-pane label="菜单管理" name="fragmentSysMenu" style="width: 100%;">
<el-form label-width="80px" size="mini" label-position="right" @submit.native.prevent> <el-form label-width="80px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="所属栏目" style="flex-grow: 1"> <el-form-item label="所属栏目" style="flex-grow: 1">
@@ -50,11 +50,11 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-row type="flex" justify="end"> <el-row type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="initFormData(true)"> @click="initFormData(true)">
刷新 刷新
</el-button> </el-button>
<el-button type="primary" size="mini" :disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:add')" <el-button type="primary" :size="defaultFormItemSize" :disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:add')"
@click="onCreateSysMenuClick()"> @click="onCreateSysMenuClick()">
新建 新建
</el-button> </el-button>
@@ -64,7 +64,7 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="currentMenuTree" size="mini" :height="getTabPaneHeight + 'px'" <el-table :data="currentMenuTree" :size="defaultFormItemSize" :height="getTabPaneHeight + 'px'"
header-cell-class-name="table-header-gray" row-key="menuId"> header-cell-class-name="table-header-gray" row-key="menuId">
<el-table-column label="菜单名称" prop="menuName" width="300px"> <el-table-column label="菜单名称" prop="menuName" width="300px">
</el-table-column> </el-table-column>
@@ -77,26 +77,26 @@
</el-table-column> </el-table-column>
<el-table-column label="菜单类型" prop="menuType" width="100px"> <el-table-column label="菜单类型" prop="menuType" width="100px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="getMenuType(scope.row)">{{SysMenuType.getValue(scope.row.menuType)}}</el-tag> <el-tag :size="defaultFormItemSize" :type="getMenuType(scope.row)">{{SysMenuType.getValue(scope.row.menuType)}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="菜单路由" prop="formRouterName" min-width="250px"> <el-table-column label="菜单路由" prop="formRouterName" min-width="250px">
</el-table-column> </el-table-column>
<el-table-column label="操作" width="200px"> <el-table-column label="操作" width="200px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click="onEditSysMenuClick(scope.row)" type="text" size="mini" <el-button @click="onEditSysMenuClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:update')"> :disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:update')">
编辑 编辑
</el-button> </el-button>
<el-button @click="onAddChildSysMenuClick(scope.row)" type="text" size="mini" <el-button @click="onAddChildSysMenuClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:add') || scope.row.menuType === SysMenuType.BUTTON"> :disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:add') || scope.row.menuType === SysMenuType.BUTTON">
添加 添加
</el-button> </el-button>
<el-button @click="onDeleteClick(scope.row)" type="text" size="mini" <el-button @click="onDeleteClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:delete')"> :disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:delete')">
删除 删除
</el-button> </el-button>
<el-button @click="onShowPermList(scope.row)" type="text" size="mini" <el-button @click="onShowPermList(scope.row)" type="text" :size="defaultFormItemSize"
v-if="checkPermCodeExist('formSysMenu:fragmentSysMenu:listSysMenuPermDetail')" v-if="checkPermCodeExist('formSysMenu:fragmentSysMenu:listSysMenuPermDetail')"
:disabled="scope.row.menuType === SysMenuType.DIRECTORY"> :disabled="scope.row.menuType === SysMenuType.DIRECTORY">
权限详情 权限详情

View File

@@ -2,18 +2,18 @@
<div class="tab-dialog-box" style="position: relative; margin-top: -15px;"> <div class="tab-dialog-box" style="position: relative; margin-top: -15px;">
<el-tabs v-model="activeFragmentId"> <el-tabs v-model="activeFragmentId">
<el-tab-pane label="权限资源" name="fragmentSysMenuPerm" style="width: 100%;"> <el-tab-pane label="权限资源" name="fragmentSysMenuPerm" style="width: 100%;">
<el-form label-width="100px" size="mini" label-position="left" @submit.native.prevent> <el-form label-width="100px" :size="defaultFormItemSize" label-position="left" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="URL"> <el-form-item label="URL">
<el-input class="filter-item" v-model="fragmentSysMenuPerm.formFilter.url" clearable <el-input class="filter-item" v-model="fragmentSysMenuPerm.formFilter.url" clearable
placeholder="" /> placeholder="" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshfragmentSysMenuPerm(true)">查询</el-button> <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshfragmentSysMenuPerm(true)">查询</el-button>
</filter-box> </filter-box>
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="fragmentSysMenuPerm.SysMenuPerm.impl.dataList" size="mini" :height="getTableHeight + 'px'" <el-table :data="fragmentSysMenuPerm.SysMenuPerm.impl.dataList" :size="defaultFormItemSize" :height="getTableHeight + 'px'"
@sort-change="fragmentSysMenuPerm.SysMenuPerm.impl.onSortChange" @sort-change="fragmentSysMenuPerm.SysMenuPerm.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" <el-table-column label="序号" header-align="center" align="center" type="index" width="55px"
@@ -22,7 +22,7 @@
</el-table-column> </el-table-column>
<el-table-column label="权限字类型" width="100px"> <el-table-column label="权限字类型" width="100px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="getPermCodeType(scope.row.permCodeType)"> <el-tag :size="defaultFormItemSize" :type="getPermCodeType(scope.row.permCodeType)">
{{SysPermCodeType.getValue(scope.row.permCodeType)}} {{SysPermCodeType.getValue(scope.row.permCodeType)}}
</el-tag> </el-tag>
</template> </template>
@@ -36,18 +36,18 @@
</el-row> </el-row>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="用户查询" name="fragmentSysMenuUser" style="width: 100%;"> <el-tab-pane label="用户查询" name="fragmentSysMenuUser" style="width: 100%;">
<el-form label-width="100px" size="mini" label-position="left" @submit.native.prevent> <el-form label-width="100px" :size="defaultFormItemSize" label-position="left" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="用户名"> <el-form-item label="用户名">
<el-input class="filter-item" v-model="fragmentSysMenuUser.formFilter.loginName" clearable <el-input class="filter-item" v-model="fragmentSysMenuUser.formFilter.loginName" clearable
placeholder="" /> placeholder="" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFragmentSysMenuUser(true)">查询</el-button> <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFragmentSysMenuUser(true)">查询</el-button>
</filter-box> </filter-box>
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="fragmentSysMenuUser.SysMenuUser.impl.dataList" size="mini" :height="getTableHeight + 'px'" <el-table :data="fragmentSysMenuUser.SysMenuUser.impl.dataList" :size="defaultFormItemSize" :height="getTableHeight + 'px'"
@sort-change="fragmentSysMenuUser.SysMenuUser.impl.onSortChange" @sort-change="fragmentSysMenuUser.SysMenuUser.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" <el-table-column label="序号" header-align="center" align="center" type="index" width="55px"

View File

@@ -1,12 +1,12 @@
<template> <template>
<div> <div>
<el-form label-width="100px" size="mini" label-position="right" @submit.native.prevent> <el-form label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-button slot="operator" type="primary" size="mini" :plain="true" <el-button slot="operator" type="primary" :size="defaultFormItemSize" :plain="true"
@click="refreshFormSysMenu(true)"> @click="refreshFormSysMenu(true)">
刷新 刷新
</el-button> </el-button>
<el-button slot="operator" type="primary" size="mini" :disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:add')" <el-button slot="operator" type="primary" :size="defaultFormItemSize" :disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:add')"
@click="onCreateSysMenuClick()"> @click="onCreateSysMenuClick()">
新建 新建
</el-button> </el-button>
@@ -14,7 +14,7 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="formSysMenu.SysMenu.impl.dataList" size="mini" <el-table :data="formSysMenu.SysMenu.impl.dataList" :size="defaultFormItemSize"
header-cell-class-name="table-header-gray" row-key="menuId"> header-cell-class-name="table-header-gray" row-key="menuId">
<el-table-column label="菜单名称" prop="menuName" width="300px"> <el-table-column label="菜单名称" prop="menuName" width="300px">
</el-table-column> </el-table-column>
@@ -27,26 +27,26 @@
</el-table-column> </el-table-column>
<el-table-column label="菜单类型" prop="menuType" width="100px"> <el-table-column label="菜单类型" prop="menuType" width="100px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="getMenuType(scope.row)">{{SysMenuType.getValue(scope.row.menuType)}}</el-tag> <el-tag :size="defaultFormItemSize" :type="getMenuType(scope.row)">{{SysMenuType.getValue(scope.row.menuType)}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="菜单路由" prop="formRouterName" min-width="250px"> <el-table-column label="菜单路由" prop="formRouterName" min-width="250px">
</el-table-column> </el-table-column>
<el-table-column label="操作" fixed="right" width="200px"> <el-table-column label="操作" fixed="right" width="200px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click="onEditSysMenuClick(scope.row)" type="text" size="mini" <el-button @click="onEditSysMenuClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:update') || (scope.row.onlineFormId != null && scope.row.menuType === SysMenuType.BUTTON)"> :disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:update') || (scope.row.onlineFormId != null && scope.row.menuType === SysMenuType.BUTTON)">
编辑 编辑
</el-button> </el-button>
<el-button @click="onAddChildSysMenuClick(scope.row)" type="text" size="mini" <el-button @click="onAddChildSysMenuClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:add') || scope.row.menuType === SysMenuType.BUTTON"> :disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:add') || scope.row.menuType === SysMenuType.BUTTON">
添加 添加
</el-button> </el-button>
<el-button @click="onDeleteClick(scope.row)" type="text" size="mini" <el-button @click="onDeleteClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:delete') || (scope.row.onlineFormId != null && scope.row.menuType === SysMenuType.BUTTON)"> :disabled="!checkPermCodeExist('formSysMenu:fragmentSysMenu:delete') || (scope.row.onlineFormId != null && scope.row.menuType === SysMenuType.BUTTON)">
删除 删除
</el-button> </el-button>
<el-button @click="onShowPermList(scope.row)" type="text" size="mini" <el-button @click="onShowPermList(scope.row)" type="text" :size="defaultFormItemSize"
v-if="checkPermCodeExist('formSysMenu:fragmentSysMenu:listSysMenuPermDetail')" v-if="checkPermCodeExist('formSysMenu:fragmentSysMenu:listSysMenuPermDetail')"
:disabled="scope.row.menuType === SysMenuType.DIRECTORY"> :disabled="scope.row.menuType === SysMenuType.DIRECTORY">
权限详情 权限详情

View File

@@ -2,18 +2,18 @@
<div class="tab-dialog-box" style="position: relative; margin-top: -15px;"> <div class="tab-dialog-box" style="position: relative; margin-top: -15px;">
<el-tabs v-model="activeFragmentId"> <el-tabs v-model="activeFragmentId">
<el-tab-pane label="用户查询" name="fragmentSysPermUser" style="width: 100%;"> <el-tab-pane label="用户查询" name="fragmentSysPermUser" style="width: 100%;">
<el-form label-width="100px" size="mini" label-position="left" @submit.native.prevent> <el-form label-width="100px" :size="defaultFormItemSize" label-position="left" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="用户名"> <el-form-item label="用户名">
<el-input class="filter-item" v-model="fragmentSysPermUser.formFilter.loginName" clearable <el-input class="filter-item" v-model="fragmentSysPermUser.formFilter.loginName" clearable
placeholder="" /> placeholder="" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFragmentSysPermUser(true)">查询</el-button> <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFragmentSysPermUser(true)">查询</el-button>
</filter-box> </filter-box>
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="fragmentSysPermUser.SysUser.impl.dataList" size="mini" :height="getTableHeight + 'px'" <el-table :data="fragmentSysPermUser.SysUser.impl.dataList" :size="defaultFormItemSize" :height="getTableHeight + 'px'"
@sort-change="fragmentSysPermUser.SysUser.impl.onSortChange" @sort-change="fragmentSysPermUser.SysUser.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" <el-table-column label="序号" header-align="center" align="center" type="index" width="55px"
@@ -27,18 +27,18 @@
</el-row> </el-row>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="角色查询" name="fragmentSysPermRole" style="width: 100%;"> <el-tab-pane label="角色查询" name="fragmentSysPermRole" style="width: 100%;">
<el-form label-width="100px" size="mini" label-position="left" @submit.native.prevent> <el-form label-width="100px" :size="defaultFormItemSize" label-position="left" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="角色名称"> <el-form-item label="角色名称">
<el-input class="filter-item" v-model="fragmentSysPermRole.formFilter.roleName" clearable <el-input class="filter-item" v-model="fragmentSysPermRole.formFilter.roleName" clearable
placeholder="" /> placeholder="" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFragmentSysPermRole(true)">查询</el-button> <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFragmentSysPermRole(true)">查询</el-button>
</filter-box> </filter-box>
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="fragmentSysPermRole.SysRole.impl.dataList" size="mini" :height="getTableHeight + 'px'" <el-table :data="fragmentSysPermRole.SysRole.impl.dataList" :size="defaultFormItemSize" :height="getTableHeight + 'px'"
@sort-change="fragmentSysPermRole.SysRole.impl.onSortChange" @sort-change="fragmentSysPermRole.SysRole.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" <el-table-column label="序号" header-align="center" align="center" type="index" width="55px"
@@ -50,7 +50,7 @@
</el-table-column> </el-table-column>
<el-table-column label="菜单类型" prop="permCodeType"> <el-table-column label="菜单类型" prop="permCodeType">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="getMenuType(scope.row)">{{SysMenuType.getValue(scope.row.menuType)}}</el-tag> <el-tag :size="defaultFormItemSize" :type="getMenuType(scope.row)">{{SysMenuType.getValue(scope.row.menuType)}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="角色名称" prop="roleName" /> <el-table-column label="角色名称" prop="roleName" />
@@ -60,18 +60,18 @@
</el-row> </el-row>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="菜单查询" name="fragmentSysPermMenu" style="width: 100%;"> <el-tab-pane label="菜单查询" name="fragmentSysPermMenu" style="width: 100%;">
<el-form label-width="100px" size="mini" label-position="left" @submit.native.prevent> <el-form label-width="100px" :size="defaultFormItemSize" label-position="left" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="菜单名称"> <el-form-item label="菜单名称">
<el-input class="filter-item" v-model="fragmentSysPermMenu.formFilter.menuName" clearable <el-input class="filter-item" v-model="fragmentSysPermMenu.formFilter.menuName" clearable
placeholder="" /> placeholder="" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFragmentSysPermMenu(true)">查询</el-button> <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFragmentSysPermMenu(true)">查询</el-button>
</filter-box> </filter-box>
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="fragmentSysPermMenu.SysMenu.impl.dataList" size="mini" :height="getTableHeight + 'px'" <el-table :data="fragmentSysPermMenu.SysMenu.impl.dataList" :size="defaultFormItemSize" :height="getTableHeight + 'px'"
@sort-change="fragmentSysPermMenu.SysMenu.impl.onSortChange" @sort-change="fragmentSysPermMenu.SysMenu.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" <el-table-column label="序号" header-align="center" align="center" type="index" width="55px"
@@ -83,7 +83,7 @@
</el-table-column> </el-table-column>
<el-table-column label="菜单类型" prop="menuType"> <el-table-column label="菜单类型" prop="menuType">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="getMenuType(scope.row)">{{SysMenuType.getValue(scope.row.menuType)}}</el-tag> <el-tag :size="defaultFormItemSize" :type="getMenuType(scope.row)">{{SysMenuType.getValue(scope.row.menuType)}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="权限字" prop="permCode" /> <el-table-column label="权限字" prop="permCode" />

View File

@@ -16,12 +16,12 @@
:highlight-current="true" @node-expand="onModuleNodeExpand" @node-collapse="onModuleNodeCollapse"> :highlight-current="true" @node-expand="onModuleNodeExpand" @node-collapse="onModuleNodeCollapse">
<div class="module-node-item" slot-scope="{ data }"> <div class="module-node-item" slot-scope="{ data }">
<div class="module-node-menu" :class="{group: data.moduleType === SysPermModuleType.GROUP}" v-if="!data.isAll"> <div class="module-node-menu" :class="{group: data.moduleType === SysPermModuleType.GROUP}" v-if="!data.isAll">
<el-button type="text" size="mini" @click.stop="onEditpermModuleClick(data)" icon="el-icon-edit-outline" <el-button type="text" :size="defaultFormItemSize" @click.stop="onEditpermModuleClick(data)" icon="el-icon-edit-outline"
:disabled="!checkPermCodeExist('formSysPerm:fragmentSysPerm:updatePermModule')"></el-button> :disabled="!checkPermCodeExist('formSysPerm:fragmentSysPerm:updatePermModule')"></el-button>
<el-button type="text" size="mini" v-show="data.moduleType === SysPermModuleType.GROUP" <el-button type="text" :size="defaultFormItemSize" v-show="data.moduleType === SysPermModuleType.GROUP"
:disabled="!checkPermCodeExist('formSysPerm:fragmentSysPerm:addPermModule')" icon="el-icon-circle-plus-outline" :disabled="!checkPermCodeExist('formSysPerm:fragmentSysPerm:addPermModule')" icon="el-icon-circle-plus-outline"
@click.stop="onAddChildPermModuleClick(data)"></el-button> @click.stop="onAddChildPermModuleClick(data)"></el-button>
<el-button type="text" size="mini" @click.stop="onDeleteModuleClick(data)" icon="el-icon-delete" <el-button type="text" :size="defaultFormItemSize" @click.stop="onDeleteModuleClick(data)" icon="el-icon-delete"
:disabled="!checkPermCodeExist('formSysPerm:fragmentSysPerm:deletePermModule')"></el-button> :disabled="!checkPermCodeExist('formSysPerm:fragmentSysPerm:deletePermModule')"></el-button>
</div> </div>
<div class="module-node-text" :class="{group: data.moduleType === SysPermModuleType.GROUP}"> <div class="module-node-text" :class="{group: data.moduleType === SysPermModuleType.GROUP}">
@@ -33,14 +33,15 @@
</el-card> </el-card>
</el-aside> </el-aside>
<el-main style="margin-left: 15px; background-color: white; padding: 20px;"> <el-main style="margin-left: 15px; background-color: white; padding: 20px;">
<el-form label-width="75px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="formPerm" :model="formPerm" label-width="75px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="关联URL"> <el-form-item label="关联URL" prop="formFilter.url">
<el-input class="filter-item" placeholder="URL模糊搜索" v-model="formPerm.formFilter.url" <el-input class="filter-item" placeholder="URL模糊搜索" v-model="formPerm.formFilter.url"
size="mini" clearable /> :size="defaultFormItemSize" clearable />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFormPerm(true)">查询</el-button> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onReset">重置</el-button>
<el-button slot="operator" type="primary" size="mini" :disabled="!checkPermCodeExist('formSysPerm:fragmentSysPerm:addPerm')" <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFormPerm(true)">查询</el-button>
<el-button slot="operator" type="primary" :size="defaultFormItemSize" :disabled="!checkPermCodeExist('formSysPerm:fragmentSysPerm:addPerm')"
@click="onCreatePermClick()"> @click="onCreatePermClick()">
新建 新建
</el-button> </el-button>
@@ -48,7 +49,7 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="formPerm.SysPerm.impl.dataList" size="mini" @sort-change="formPerm.SysPerm.impl.onSortChange" <el-table :data="formPerm.SysPerm.impl.dataList" :size="defaultFormItemSize" @sort-change="formPerm.SysPerm.impl.onSortChange"
header-cell-class-name="table-header-gray" :height="(getMainContextHeight - 132) + 'px'"> header-cell-class-name="table-header-gray" :height="(getMainContextHeight - 132) + 'px'">
<el-table-column label="序号" header-align="center" align="center" type="index" width="50px" :index="formPerm.SysPerm.impl.getTableIndex" /> <el-table-column label="序号" header-align="center" align="center" type="index" width="50px" :index="formPerm.SysPerm.impl.getTableIndex" />
<el-table-column label="权限名称" prop="permName" width="150px"> <el-table-column label="权限名称" prop="permName" width="150px">
@@ -59,15 +60,15 @@
</el-table-column> </el-table-column>
<el-table-column label="操作" fixed="right" width="150px"> <el-table-column label="操作" fixed="right" width="150px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click="onEditPermModuleClick(scope.row)" type="text" size="mini" <el-button @click="onEditPermModuleClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysPerm:fragmentSysPerm:updatePerm')"> :disabled="!checkPermCodeExist('formSysPerm:fragmentSysPerm:updatePerm')">
编辑 编辑
</el-button> </el-button>
<el-button @click="onDeleteClick(scope.row)" type="text" size="mini" <el-button @click="onDeleteClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysPerm:fragmentSysPerm:deletePerm')"> :disabled="!checkPermCodeExist('formSysPerm:fragmentSysPerm:deletePerm')">
删除 删除
</el-button> </el-button>
<el-button class="btn-table-primary" type="text" size="mini" <el-button class="btn-table-primary" type="text" :size="defaultFormItemSize"
v-if="checkPermCodeExist('formSysPerm:fragmentSysPerm:listSysPermPermDetail')" v-if="checkPermCodeExist('formSysPerm:fragmentSysPerm:listSysPermPermDetail')"
@click="onSysPermDetailClick(scope.row)"> @click="onSysPermDetailClick(scope.row)">
权限详情 权限详情
@@ -135,6 +136,10 @@ export default {
} }
}, },
methods: { methods: {
onReset () {
this.$refs.formPerm.resetFields();
this.refreshFormPerm(true);
},
/** /**
* 权限数据获取函数返回Primise * 权限数据获取函数返回Primise
*/ */

View File

@@ -2,18 +2,18 @@
<div class="tab-dialog-box" style="position: relative; margin-top: -15px;"> <div class="tab-dialog-box" style="position: relative; margin-top: -15px;">
<el-tabs v-model="activeFragmentId"> <el-tabs v-model="activeFragmentId">
<el-tab-pane label="用户查询" name="fragmentSysPermCodeUser" style="width: 100%;"> <el-tab-pane label="用户查询" name="fragmentSysPermCodeUser" style="width: 100%;">
<el-form label-width="100px" size="mini" label-position="left" @submit.native.prevent> <el-form label-width="100px" :size="defaultFormItemSize" label-position="left" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="用户名"> <el-form-item label="用户名">
<el-input class="filter-item" v-model="fragmentSysPermCodeUser.formFilter.loginName" clearable <el-input class="filter-item" v-model="fragmentSysPermCodeUser.formFilter.loginName" clearable
placeholder="" /> placeholder="" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFragmentSysPermCodeUser(true)">查询</el-button> <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFragmentSysPermCodeUser(true)">查询</el-button>
</filter-box> </filter-box>
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="fragmentSysPermCodeUser.SysUser.impl.dataList" size="mini" :height="getTableHeight + 'px'" <el-table :data="fragmentSysPermCodeUser.SysUser.impl.dataList" :size="defaultFormItemSize" :height="getTableHeight + 'px'"
@sort-change="fragmentSysPermCodeUser.SysUser.impl.onSortChange" @sort-change="fragmentSysPermCodeUser.SysUser.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" <el-table-column label="序号" header-align="center" align="center" type="index" width="55px"
@@ -28,7 +28,7 @@
</el-table-column> </el-table-column>
<el-table-column label="菜单类型" prop="permCodeType"> <el-table-column label="菜单类型" prop="permCodeType">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="getMenuType(scope.row)">{{SysMenuType.getValue(scope.row.menuType)}}</el-tag> <el-tag :size="defaultFormItemSize" :type="getMenuType(scope.row)">{{SysMenuType.getValue(scope.row.menuType)}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@@ -36,18 +36,18 @@
</el-row> </el-row>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="角色查询" name="fragmentSysPermCodeRole" style="width: 100%;"> <el-tab-pane label="角色查询" name="fragmentSysPermCodeRole" style="width: 100%;">
<el-form label-width="100px" size="mini" label-position="left" @submit.native.prevent> <el-form label-width="100px" :size="defaultFormItemSize" label-position="left" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="角色名称"> <el-form-item label="角色名称">
<el-input class="filter-item" v-model="fragmentSysPermCodeRole.formFilter.roleName" clearable <el-input class="filter-item" v-model="fragmentSysPermCodeRole.formFilter.roleName" clearable
placeholder="" /> placeholder="" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFragmentSysPermCodeRole(true)">查询</el-button> <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFragmentSysPermCodeRole(true)">查询</el-button>
</filter-box> </filter-box>
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="fragmentSysPermCodeRole.SysRole.impl.dataList" size="mini" :height="getTableHeight + 'px'" <el-table :data="fragmentSysPermCodeRole.SysRole.impl.dataList" :size="defaultFormItemSize" :height="getTableHeight + 'px'"
@sort-change="fragmentSysPermCodeRole.SysRole.impl.onSortChange" @sort-change="fragmentSysPermCodeRole.SysRole.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" <el-table-column label="序号" header-align="center" align="center" type="index" width="55px"
@@ -59,7 +59,7 @@
</el-table-column> </el-table-column>
<el-table-column label="菜单类型" prop="permCodeType"> <el-table-column label="菜单类型" prop="permCodeType">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="getMenuType(scope.row)">{{SysMenuType.getValue(scope.row.menuType)}}</el-tag> <el-tag :size="defaultFormItemSize" :type="getMenuType(scope.row)">{{SysMenuType.getValue(scope.row.menuType)}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="角色名称" prop="roleName" /> <el-table-column label="角色名称" prop="roleName" />

View File

@@ -1,15 +1,16 @@
<template> <template>
<div> <div>
<el-form label-width="100px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="formPermCode" :model="formPermCode" label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="权限字名称"> <el-form-item label="权限字名称" prop="formFilter.showName">
<el-input class="filter-item" v-model="formPermCode.formFilter.showName" <el-input class="filter-item" v-model="formPermCode.formFilter.showName"
:clearable="true" placeholder="权限字名称" /> :clearable="true" placeholder="权限字名称" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" size="mini" :plain="true" @click="refreshFormPermCode(true)"> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onReset">重置</el-button>
<el-button slot="operator" type="primary" :size="defaultFormItemSize" :plain="true" @click="refreshFormPermCode(true)">
查询 查询
</el-button> </el-button>
<el-button slot="operator" type="primary" size="mini" :disabled="!checkPermCodeExist('formSysPermCode:fragmentSysPermCode:add')" <el-button slot="operator" type="primary" :size="defaultFormItemSize" :disabled="!checkPermCodeExist('formSysPermCode:fragmentSysPermCode:add')"
@click="onCreatePermCodeClick()"> @click="onCreatePermCodeClick()">
新建 新建
</el-button> </el-button>
@@ -17,13 +18,13 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="getPermCodeList" size="mini" @sort-change="formPermCode.SysPermCode.impl.onSortChange" <el-table :data="getPermCodeList" :size="defaultFormItemSize" @sort-change="formPermCode.SysPermCode.impl.onSortChange"
row-key="permCodeId" header-cell-class-name="table-header-gray"> row-key="permCodeId" header-cell-class-name="table-header-gray">
<el-table-column label="权限字名称" prop="showName" width="250px"> <el-table-column label="权限字名称" prop="showName" width="250px">
</el-table-column> </el-table-column>
<el-table-column label="权限字类型" prop="permCodeType" width="150px"> <el-table-column label="权限字类型" prop="permCodeType" width="150px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="getPermCodeType(scope.row.permCodeType)">{{SysPermCodeType.getValue(scope.row.permCodeType)}}</el-tag> <el-tag :size="defaultFormItemSize" :type="getPermCodeType(scope.row.permCodeType)">{{SysPermCodeType.getValue(scope.row.permCodeType)}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="显示顺序" prop="showOrder" width="100px"> <el-table-column label="显示顺序" prop="showOrder" width="100px">
@@ -32,19 +33,19 @@
</el-table-column> </el-table-column>
<el-table-column label="操作" fixed="right" width="200px"> <el-table-column label="操作" fixed="right" width="200px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click="onEditPermCodeClick(scope.row)" type="text" size="mini" <el-button @click="onEditPermCodeClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysPermCode:fragmentSysPermCode:update')"> :disabled="!checkPermCodeExist('formSysPermCode:fragmentSysPermCode:update')">
编辑 编辑
</el-button> </el-button>
<el-button @click="onAddChildPermCodeClick(scope.row)" type="text" size="mini" <el-button @click="onAddChildPermCodeClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="scope.row.permCodeType === 2 || !checkPermCodeExist('formSysPermCode:fragmentSysPermCode:add')"> :disabled="scope.row.permCodeType === 2 || !checkPermCodeExist('formSysPermCode:fragmentSysPermCode:add')">
添加 添加
</el-button> </el-button>
<el-button @click="onDeleteClick(scope.row)" type="text" size="mini" <el-button @click="onDeleteClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysPermCode:fragmentSysPermCode:delete')"> :disabled="!checkPermCodeExist('formSysPermCode:fragmentSysPermCode:delete')">
删除 删除
</el-button> </el-button>
<el-button class="btn-table-primary" type="text" size="mini" <el-button class="btn-table-primary" type="text" :size="defaultFormItemSize"
v-if="checkPermCodeExist('formSysPermCode:fragmentSysPermCode:listSysPermCodePermDetail')" v-if="checkPermCodeExist('formSysPermCode:fragmentSysPermCode:listSysPermCodePermDetail')"
@click="onSysPermCodeDetailClick(scope.row)"> @click="onSysPermCodeDetailClick(scope.row)">
权限详情 权限详情
@@ -96,6 +97,10 @@ export default {
} }
}, },
methods: { methods: {
onReset () {
this.$refs.formPermCode.resetFields();
this.refreshFormPermCode(true);
},
getPermCodeType (permCodeType) { getPermCodeType (permCodeType) {
switch (permCodeType) { switch (permCodeType) {
case this.SysPermCodeType.FORM: return 'primary'; case this.SysPermCodeType.FORM: return 'primary';

View File

@@ -1,13 +1,14 @@
<template> <template>
<div style="position: relative;"> <div style="position: relative;">
<el-form label-width="100px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="formSysPost" :model="formSysPost" label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="岗位名称"> <el-form-item label="岗位名称" prop="formFilter.postName">
<el-input class="filter-item" v-model="formSysPost.formFilter.postName" <el-input class="filter-item" v-model="formSysPost.formFilter.postName"
:clearable="true" placeholder="岗位名称" /> :clearable="true" placeholder="岗位名称" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFormSysPost(true)">查询</el-button> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onReset">重置</el-button>
<el-button slot="operator" type="primary" size="mini" :disabled="!checkPermCodeExist('formSysPost:fragmentSysPost:add')" <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFormSysPost(true)">查询</el-button>
<el-button slot="operator" type="primary" :size="defaultFormItemSize" :disabled="!checkPermCodeExist('formSysPost:fragmentSysPost:add')"
@click="onFormAddPostClick()"> @click="onFormAddPostClick()">
新建 新建
</el-button> </el-button>
@@ -15,7 +16,7 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table ref="sysPost" :data="formSysPost.sysPost.impl.dataList" size="mini" @sort-change="formSysPost.sysPost.impl.onSortChange" <el-table ref="sysPost" :data="formSysPost.sysPost.impl.dataList" :size="defaultFormItemSize" @sort-change="formSysPost.sysPost.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" :index="formSysPost.sysPost.impl.getTableIndex" /> <el-table-column label="序号" header-align="center" align="center" type="index" width="55px" :index="formSysPost.sysPost.impl.getTableIndex" />
<el-table-column label="岗位名称" prop="postName"> <el-table-column label="岗位名称" prop="postName">
@@ -24,18 +25,18 @@
</el-table-column> </el-table-column>
<el-table-column label="领导岗位" prop="leaderPost" sortable="custom"> <el-table-column label="领导岗位" prop="leaderPost" sortable="custom">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="scope.row.leaderPost ? 'success' : 'danger'"> <el-tag :size="defaultFormItemSize" :type="scope.row.leaderPost ? 'success' : 'danger'">
{{scope.row.leaderPost ? '是' : '否'}} {{scope.row.leaderPost ? '是' : '否'}}
</el-tag> </el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" fixed="right"> <el-table-column label="操作" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click.stop="onFormEditPostClick(scope.row)" type="text" size="mini" <el-button @click.stop="onFormEditPostClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysPost:fragmentSysPost:update')"> :disabled="!checkPermCodeExist('formSysPost:fragmentSysPost:update')">
编辑 编辑
</el-button> </el-button>
<el-button class="table-btn delete" @click.stop="onDeleteClick(scope.row)" type="text" size="mini" <el-button class="table-btn delete" @click.stop="onDeleteClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysPost:fragmentSysPost:delete')"> :disabled="!checkPermCodeExist('formSysPost:fragmentSysPost:delete')">
删除 删除
</el-button> </el-button>
@@ -91,6 +92,10 @@ export default {
} }
}, },
methods: { methods: {
onReset () {
this.$refs.formSysPost.resetFields();
this.refreshFormSysPost(true);
},
/** /**
* 岗位管理数据获取函数返回Promise * 岗位管理数据获取函数返回Promise
*/ */

View File

@@ -1,19 +1,20 @@
<template> <template>
<div class="tab-dialog-box" style="position: relative; margin-top: -15px;"> <div class="tab-dialog-box" style="position: relative; margin-top: -15px;">
<el-tabs v-model="activeFragmentId"> <el-tabs v-model="activeFragmentId">
<el-tab-pane label="权限资源" name="fragmentSysRolePerm" style="width: 100%;"> <el-tab-pane ref="fragmentSysRolePerm" :model="fragmentSysRolePerm" label="权限资源" name="fragmentSysRolePerm" style="width: 100%;">
<el-form label-width="100px" size="mini" label-position="left" @submit.native.prevent> <el-form label-width="100px" :size="defaultFormItemSize" label-position="left" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="URL"> <el-form-item label="URL">
<el-input class="filter-item" v-model="fragmentSysRolePerm.formFilter.url" clearable <el-input class="filter-item" v-model="fragmentSysRolePerm.formFilter.url" clearable
placeholder="" /> placeholder="" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshfragmentSysRolePerm(true)">查询</el-button> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onResetPerm">重置</el-button>
<el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshfragmentSysRolePerm(true)">查询</el-button>
</filter-box> </filter-box>
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="fragmentSysRolePerm.SysRolePerm.impl.dataList" size="mini" :height="getTableHeight + 'px'" <el-table :data="fragmentSysRolePerm.SysRolePerm.impl.dataList" :size="defaultFormItemSize" :height="getTableHeight + 'px'"
@sort-change="fragmentSysRolePerm.SysRolePerm.impl.onSortChange" @sort-change="fragmentSysRolePerm.SysRolePerm.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" <el-table-column label="序号" header-align="center" align="center" type="index" width="55px"
@@ -30,18 +31,19 @@
</el-row> </el-row>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="权限字" name="fragmentSysRolePermCode" style="width: 100%;"> <el-tab-pane label="权限字" name="fragmentSysRolePermCode" style="width: 100%;">
<el-form label-width="100px" size="mini" label-position="left" @submit.native.prevent> <el-form ref="fragmentSysRolePermCode" :model="fragmentSysRolePermCode" label-width="100px" :size="defaultFormItemSize" label-position="left" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="权限字"> <el-form-item label="权限字" prop="formFilter.permCode">
<el-input class="filter-item" v-model="fragmentSysRolePermCode.formFilter.permCode" clearable <el-input class="filter-item" v-model="fragmentSysRolePermCode.formFilter.permCode" clearable
placeholder="" /> placeholder="" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshfragmentSysRolePermCode(true)">查询</el-button> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onResetPermCode">重置</el-button>
<el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshfragmentSysRolePermCode(true)">查询</el-button>
</filter-box> </filter-box>
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="fragmentSysRolePermCode.SysRolePermCode.impl.dataList" size="mini" :height="getTableHeight + 'px'" <el-table :data="fragmentSysRolePermCode.SysRolePermCode.impl.dataList" :size="defaultFormItemSize" :height="getTableHeight + 'px'"
@sort-change="fragmentSysRolePermCode.SysRolePermCode.impl.onSortChange" @sort-change="fragmentSysRolePermCode.SysRolePermCode.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" <el-table-column label="序号" header-align="center" align="center" type="index" width="55px"
@@ -54,7 +56,7 @@
<el-table-column label="权限字" prop="permCode" /> <el-table-column label="权限字" prop="permCode" />
<el-table-column label="权限字类型" prop="permCodeType"> <el-table-column label="权限字类型" prop="permCodeType">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="getPermCodeType(scope.row.permCodeType)">{{SysPermCodeType.getValue(scope.row.permCodeType)}}</el-tag> <el-tag :size="defaultFormItemSize" :type="getPermCodeType(scope.row.permCodeType)">{{SysPermCodeType.getValue(scope.row.permCodeType)}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@@ -109,6 +111,14 @@ export default {
} }
}, },
methods: { methods: {
onResetPerm () {
this.$refs.fragmentSysRolePerm.resetFields();
this.refreshfragmentSysRolePerm(true);
},
onResetPermCode () {
this.$refs.fragmentSysRolePermCode.resetFields();
this.refreshfragmentSysRolePermCode(true);
},
getMenuType (row) { getMenuType (row) {
if (row.menuType === 0) { if (row.menuType === 0) {
return 'primary' return 'primary'

View File

@@ -3,14 +3,15 @@
<el-tabs v-model="activeFragmentId" :before-leave="onFragmentChange"> <el-tabs v-model="activeFragmentId" :before-leave="onFragmentChange">
<el-tab-pane label="角色管理" name="fragmentSysRole" style="width: 100%;" <el-tab-pane label="角色管理" name="fragmentSysRole" style="width: 100%;"
v-if="checkPermCodeExist('formSysRole:fragmentSysRole')"> v-if="checkPermCodeExist('formSysRole:fragmentSysRole')">
<el-form label-width="75px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="fragmentSysRole" :model="fragmentSysRole" label-width="75px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="角色名称"> <el-form-item label="角色名称" prop="formFilter.sysRoleName">
<el-input class="filter-item" v-model="fragmentSysRole.formFilter.sysRoleName" <el-input class="filter-item" v-model="fragmentSysRole.formFilter.sysRoleName"
:clearable="true" placeholder="角色名称" /> :clearable="true" placeholder="角色名称" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFragmentSysRole(true)">查询</el-button> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onResetRole">重置</el-button>
<el-button slot="operator" type="primary" size="mini" :disabled="!checkPermCodeExist('formSysRole:fragmentSysRole:add')" <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFragmentSysRole(true)">查询</el-button>
<el-button slot="operator" type="primary" :size="defaultFormItemSize" :disabled="!checkPermCodeExist('formSysRole:fragmentSysRole:add')"
@click="onAddSysRoleClick()"> @click="onAddSysRoleClick()">
新建 新建
</el-button> </el-button>
@@ -18,7 +19,7 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="fragmentSysRole.SysRole.impl.dataList" size="mini" :height="getTableHeight + 'px'" <el-table :data="fragmentSysRole.SysRole.impl.dataList" :size="defaultFormItemSize" :height="getTableHeight + 'px'"
@sort-change="fragmentSysRole.SysRole.impl.onSortChange" @sort-change="fragmentSysRole.SysRole.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="50px" <el-table-column label="序号" header-align="center" align="center" type="index" width="50px"
@@ -27,15 +28,15 @@
</el-table-column> </el-table-column>
<el-table-column label="操作" fixed="right" width="150px"> <el-table-column label="操作" fixed="right" width="150px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button @click="onEditSysRoleClick(scope.row)" type="text" size="mini" <el-button @click="onEditSysRoleClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysRole:fragmentSysRole:update')"> :disabled="!checkPermCodeExist('formSysRole:fragmentSysRole:update')">
编辑 编辑
</el-button> </el-button>
<el-button @click="onDeleteClick(scope.row)" type="text" size="mini" <el-button @click="onDeleteClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysRole:fragmentSysRole:delete')"> :disabled="!checkPermCodeExist('formSysRole:fragmentSysRole:delete')">
删除 删除
</el-button> </el-button>
<el-button class="btn-table-primary" type="text" size="mini" <el-button class="btn-table-primary" type="text" :size="defaultFormItemSize"
v-if="checkPermCodeExist('formSysRole:fragmentSysRole:listSysRolePermDetail')" v-if="checkPermCodeExist('formSysRole:fragmentSysRole:listSysRolePermDetail')"
@click="onSysRolePermClick(scope.row)"> @click="onSysRolePermClick(scope.row)">
权限详情 权限详情
@@ -61,7 +62,7 @@
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="用户授权" name="fragmentSysRoleUser" style="width: 100%;" <el-tab-pane label="用户授权" name="fragmentSysRoleUser" style="width: 100%;"
v-if="checkPermCodeExist('formSysRole:fragmentSysRoleUser')"> v-if="checkPermCodeExist('formSysRole:fragmentSysRoleUser')">
<el-form label-width="75px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="fragmentSysRoleUser" :model="fragmentSysRoleUser" label-width="75px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="用户角色"> <el-form-item label="用户角色">
<el-select class="filter-item" v-model="fragmentSysRoleUser.formFilter.sysRoleId" clearable <el-select class="filter-item" v-model="fragmentSysRoleUser.formFilter.sysRoleId" clearable
@@ -71,14 +72,15 @@
<el-option v-for="item in fragmentSysRoleUser.sysRole.impl.dropdownList" :key="item.roleId" :value="item.roleId" :label="item.roleName" /> <el-option v-for="item in fragmentSysRoleUser.sysRole.impl.dropdownList" :key="item.roleId" :value="item.roleId" :label="item.roleName" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="用户名"> <el-form-item label="用户名" prop="formFilter.sysUserLoginName">
<el-input class="filter-item" v-model="fragmentSysRoleUser.formFilter.sysUserLoginName" <el-input class="filter-item" v-model="fragmentSysRoleUser.formFilter.sysUserLoginName"
:clearable="true" placeholder="输入用户名 / 昵称查询" @change="refreshFragmentSysRoleUser(true)" /> :clearable="true" placeholder="输入用户名 / 昵称查询" @change="refreshFragmentSysRoleUser(true)" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFragmentSysRoleUser(true)"> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onResetRoleUser">重置</el-button>
<el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFragmentSysRoleUser(true)">
查询 查询
</el-button> </el-button>
<el-button slot="operator" type="primary" size="mini" @click="onAddRow()" <el-button slot="operator" type="primary" :size="defaultFormItemSize" @click="onAddRow()"
:disabled="!checkPermCodeExist('formSysRole:fragmentSysRoleUser:addUserRole') || :disabled="!checkPermCodeExist('formSysRole:fragmentSysRoleUser:addUserRole') ||
fragmentSysRoleUser.formFilter.sysRoleId == null || fragmentSysRoleUser.formFilter.sysRoleId === ''"> fragmentSysRoleUser.formFilter.sysRoleId == null || fragmentSysRoleUser.formFilter.sysRoleId === ''">
添加用户 添加用户
@@ -87,7 +89,7 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="fragmentSysRoleUser.SysUser.impl.dataList" size="mini" :height="getTableHeight + 'px'" <el-table :data="fragmentSysRoleUser.SysUser.impl.dataList" :size="defaultFormItemSize" :height="getTableHeight + 'px'"
@sort-change="fragmentSysRoleUser.SysUser.impl.onSortChange" @sort-change="fragmentSysRoleUser.SysUser.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="50px" :index="fragmentSysRoleUser.SysUser.impl.getTableIndex" /> <el-table-column label="序号" header-align="center" align="center" type="index" width="50px" :index="fragmentSysRoleUser.SysUser.impl.getTableIndex" />
@@ -102,12 +104,12 @@
</el-table-column> </el-table-column>
<el-table-column label="状态"> <el-table-column label="状态">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag :type="getUserStatusType(scope.row.userStatus)" size="mini">{{SysUserStatus.getValue(scope.row.userStatus)}}</el-tag> <el-tag :type="getUserStatusType(scope.row.userStatus)" :size="defaultFormItemSize">{{SysUserStatus.getValue(scope.row.userStatus)}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" fixed="right" width="80px"> <el-table-column label="操作" fixed="right" width="80px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button class="btn-table-delete" type="text" size="mini" <el-button class="btn-table-delete" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formSysRole:fragmentSysRoleUser:deleteUserRole')" :disabled="!checkPermCodeExist('formSysRole:fragmentSysRoleUser:deleteUserRole')"
@click="onDeleteRow(scope.row)"> @click="onDeleteRow(scope.row)">
移除 移除
@@ -183,6 +185,14 @@ export default {
} }
}, },
methods: { methods: {
onResetRole () {
this.$refs.fragmentSysRole.resetFields();
this.refreshFragmentSysRole(true);
},
onResetRoleUser () {
this.$refs.fragmentSysRoleUser.resetFields();
this.refreshFragmentSysRoleUser(true);
},
/** /**
* 用户角色数据获取函数返回Primise * 用户角色数据获取函数返回Primise
*/ */

View File

@@ -2,18 +2,18 @@
<div class="tab-dialog-box" style="position: relative; margin-top: -15px;"> <div class="tab-dialog-box" style="position: relative; margin-top: -15px;">
<el-tabs v-model="activeFragmentId"> <el-tabs v-model="activeFragmentId">
<el-tab-pane label="权限资源" name="fragmentSysUserPerm" style="width: 100%;"> <el-tab-pane label="权限资源" name="fragmentSysUserPerm" style="width: 100%;">
<el-form label-width="100px" size="mini" label-position="left" @submit.native.prevent> <el-form label-width="100px" :size="defaultFormItemSize" label-position="left" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="URL"> <el-form-item label="URL">
<el-input class="filter-item" v-model="fragmentSysUserPerm.formFilter.url" clearable <el-input class="filter-item" v-model="fragmentSysUserPerm.formFilter.url" clearable
placeholder="" /> placeholder="" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFragmentSysUserPerm(true)">查询</el-button> <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFragmentSysUserPerm(true)">查询</el-button>
</filter-box> </filter-box>
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="fragmentSysUserPerm.SysUserPerm.impl.dataList" size="mini" :height="getTableHeight + 'px'" <el-table :data="fragmentSysUserPerm.SysUserPerm.impl.dataList" :size="defaultFormItemSize" :height="getTableHeight + 'px'"
@sort-change="fragmentSysUserPerm.SysUserPerm.impl.onSortChange" @sort-change="fragmentSysUserPerm.SysUserPerm.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" <el-table-column label="序号" header-align="center" align="center" type="index" width="55px"
@@ -31,18 +31,18 @@
</el-row> </el-row>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="权限字" name="fragmentSysUserPermCode" style="width: 100%;"> <el-tab-pane label="权限字" name="fragmentSysUserPermCode" style="width: 100%;">
<el-form label-width="100px" size="mini" label-position="left" @submit.native.prevent> <el-form label-width="100px" :size="defaultFormItemSize" label-position="left" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="权限字"> <el-form-item label="权限字">
<el-input class="filter-item" v-model="fragmentSysUserPermCode.formFilter.permCode" clearable <el-input class="filter-item" v-model="fragmentSysUserPermCode.formFilter.permCode" clearable
placeholder="" /> placeholder="" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFragmentSysUserPermCode(true)">查询</el-button> <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFragmentSysUserPermCode(true)">查询</el-button>
</filter-box> </filter-box>
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="fragmentSysUserPermCode.SysUserPermCode.impl.dataList" size="mini" :height="getTableHeight + 'px'" <el-table :data="fragmentSysUserPermCode.SysUserPermCode.impl.dataList" :size="defaultFormItemSize" :height="getTableHeight + 'px'"
@sort-change="fragmentSysUserPermCode.SysUserPermCode.impl.onSortChange" @sort-change="fragmentSysUserPermCode.SysUserPermCode.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" <el-table-column label="序号" header-align="center" align="center" type="index" width="55px"
@@ -56,7 +56,7 @@
<el-table-column label="权限字" prop="permCode" /> <el-table-column label="权限字" prop="permCode" />
<el-table-column label="权限字类型" prop="permCodeType"> <el-table-column label="权限字类型" prop="permCodeType">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="getPermCodeType(scope.row.permCodeType)">{{SysPermCodeType.getValue(scope.row.permCodeType)}}</el-tag> <el-tag :size="defaultFormItemSize" :type="getPermCodeType(scope.row.permCodeType)">{{SysPermCodeType.getValue(scope.row.permCodeType)}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@@ -64,18 +64,18 @@
</el-row> </el-row>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="菜单权限" name="fragmentSysUserMenu" style="width: 100%;"> <el-tab-pane label="菜单权限" name="fragmentSysUserMenu" style="width: 100%;">
<el-form label-width="100px" size="mini" label-position="left" @submit.native.prevent> <el-form label-width="100px" :size="defaultFormItemSize" label-position="left" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="菜单名称"> <el-form-item label="菜单名称">
<el-input class="filter-item" v-model="fragmentSysUserMenu.formFilter.menuName" clearable <el-input class="filter-item" v-model="fragmentSysUserMenu.formFilter.menuName" clearable
placeholder="" /> placeholder="" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFragmentSysUserMenu(true)">查询</el-button> <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFragmentSysUserMenu(true)">查询</el-button>
</filter-box> </filter-box>
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="fragmentSysUserMenu.SysUserMenu.impl.dataList" size="mini" :height="getTableHeight + 'px'" <el-table :data="fragmentSysUserMenu.SysUserMenu.impl.dataList" :size="defaultFormItemSize" :height="getTableHeight + 'px'"
@sort-change="fragmentSysUserMenu.SysUserMenu.impl.onSortChange" @sort-change="fragmentSysUserMenu.SysUserMenu.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" <el-table-column label="序号" header-align="center" align="center" type="index" width="55px"
@@ -88,7 +88,7 @@
</el-table-column> </el-table-column>
<el-table-column label="菜单类型" prop="menuType"> <el-table-column label="菜单类型" prop="menuType">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="getMenuType(scope.row)">{{SysMenuType.getValue(scope.row.menuType)}}</el-tag> <el-tag :size="defaultFormItemSize" :type="getMenuType(scope.row)">{{SysMenuType.getValue(scope.row.menuType)}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>

View File

@@ -1,8 +1,8 @@
<template> <template>
<div> <div>
<el-form label-width="75px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="formSysUser" :model="formSysUser" label-width="75px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="用户状态"> <el-form-item label="用户状态" prop="formFilter.sysUserStatus">
<el-select class="filter-item" v-model="formSysUser.formFilter.sysUserStatus" :clearable="true" <el-select class="filter-item" v-model="formSysUser.formFilter.sysUserStatus" :clearable="true"
placeholder="用户状态" :loading="formSysUser.sysUserStatus.impl.loading" placeholder="用户状态" :loading="formSysUser.sysUserStatus.impl.loading"
@visible-change="formSysUser.sysUserStatus.impl.onVisibleChange" @visible-change="formSysUser.sysUserStatus.impl.onVisibleChange"
@@ -10,12 +10,13 @@
<el-option v-for="item in formSysUser.sysUserStatus.impl.dropdownList" :key="item.id" :value="item.id" :label="item.name" /> <el-option v-for="item in formSysUser.sysUserStatus.impl.dropdownList" :key="item.id" :value="item.id" :label="item.name" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="登录名称"> <el-form-item label="登录名称" prop="formFilter.sysUserLoginName">
<el-input class="filter-item" v-model="formSysUser.formFilter.sysUserLoginName" <el-input class="filter-item" v-model="formSysUser.formFilter.sysUserLoginName"
:clearable="true" placeholder="登录名称" /> :clearable="true" placeholder="登录名称" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFormSysUser(true)">查询</el-button> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onReset">重置</el-button>
<el-button slot="operator" type="primary" size="mini" :disabled="!checkPermCodeExist('formSysUser:fragmentSysUser:add')" <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFormSysUser(true)">查询</el-button>
<el-button slot="operator" type="primary" :size="defaultFormItemSize" :disabled="!checkPermCodeExist('formSysUser:fragmentSysUser:add')"
@click="onAddRow()"> @click="onAddRow()">
新建 新建
</el-button> </el-button>
@@ -23,7 +24,7 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table :data="formSysUser.SysUser.impl.dataList" size="mini" @sort-change="formSysUser.SysUser.impl.onSortChange" <el-table :data="formSysUser.SysUser.impl.dataList" :size="defaultFormItemSize" @sort-change="formSysUser.SysUser.impl.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="50px" :index="formSysUser.SysUser.impl.getTableIndex" /> <el-table-column label="序号" header-align="center" align="center" type="index" width="50px" :index="formSysUser.SysUser.impl.getTableIndex" />
<el-table-column label="用户名" prop="loginName" sortable="custom"> <el-table-column label="用户名" prop="loginName" sortable="custom">
@@ -33,7 +34,7 @@
<el-table-column label="账号类型" prop="userTypeDictMap.name" /> <el-table-column label="账号类型" prop="userTypeDictMap.name" />
<el-table-column label="状态"> <el-table-column label="状态">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag :type="getUserStatusType(scope.row.userStatus)" size="mini">{{SysUserStatus.getValue(scope.row.userStatus)}}</el-tag> <el-tag :type="getUserStatusType(scope.row.userStatus)" :size="defaultFormItemSize">{{SysUserStatus.getValue(scope.row.userStatus)}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="创建时间"> <el-table-column label="创建时间">
@@ -43,22 +44,22 @@
</el-table-column> </el-table-column>
<el-table-column label="操作" fixed="right" width="220px"> <el-table-column label="操作" fixed="right" width="220px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button class="btn-table-edit" type="text" size="mini" @click="onEditRow(scope.row)" <el-button class="btn-table-edit" type="text" :size="defaultFormItemSize" @click="onEditRow(scope.row)"
:disabled="isAdmin(scope.row) || !checkPermCodeExist('formSysUser:fragmentSysUser:update')" :disabled="isAdmin(scope.row) || !checkPermCodeExist('formSysUser:fragmentSysUser:update')"
> >
编辑 编辑
</el-button> </el-button>
<el-button class="btn-table-delete" type="text" size="mini" @click="onDeleteRow(scope.row)" <el-button class="btn-table-delete" type="text" :size="defaultFormItemSize" @click="onDeleteRow(scope.row)"
:disabled="isAdmin(scope.row) || !checkPermCodeExist('formSysUser:fragmentSysUser:delete')" :disabled="isAdmin(scope.row) || !checkPermCodeExist('formSysUser:fragmentSysUser:delete')"
> >
删除 删除
</el-button> </el-button>
<el-button class="btn-table-delete" type="text" size="mini" @click="onResetPassword(scope.row)" <el-button class="btn-table-delete" type="text" :size="defaultFormItemSize" @click="onResetPassword(scope.row)"
:disabled="!checkPermCodeExist('formSysUser:fragmentSysUser:resetPassword')" :disabled="!checkPermCodeExist('formSysUser:fragmentSysUser:resetPassword')"
> >
重置密码 重置密码
</el-button> </el-button>
<el-button class="btn-table-primary" type="text" size="mini" <el-button class="btn-table-primary" type="text" :size="defaultFormItemSize"
v-if="checkPermCodeExist('formSysUser:fragmentSysUser:listSysUserPermDetail')" v-if="checkPermCodeExist('formSysUser:fragmentSysUser:listSysUserPermDetail')"
@click="onSysUserPermClick(scope.row)"> @click="onSysUserPermClick(scope.row)">
权限详情 权限详情
@@ -121,6 +122,10 @@ export default {
} }
}, },
methods: { methods: {
onReset () {
this.$refs.formSysUser.resetFields();
this.refreshFormSysUser(true);
},
isAdmin (row) { isAdmin (row) {
return (row.userType === this.SysUserType.ADMIN); return (row.userType === this.SysUserType.ADMIN);
}, },

View File

@@ -1,7 +1,7 @@
<template> <template>
<div> <div>
<div class="title"> <div class="title">
<p>浏览完每个功能过后自然会发现些与众不同然而这一切都<span> 橙单 </span>生成</p> <p>无论是专业版还是企业版的脚手架我们全部开源免费这一切都<span> 橙单 </span>为您生成</p>
</div> </div>
<el-row type="flex"> <el-row type="flex">
<div style="width: 100%;"> <div style="width: 100%;">
@@ -10,37 +10,37 @@
<el-collapse-item title="选择我们的 5 个理由" name="1"> <el-collapse-item title="选择我们的 5 个理由" name="1">
<ul class="item-list"> <ul class="item-list">
<li>是真正的生成器而非脚手架</li> <li>是真正的生成器而非脚手架</li>
<li>技术选型包名作者署名都由您钦定</li> <li>可生成卓越的架构和高质量的代码</li>
<li>手把手教的操作指南和教学视频</li> <li>生成后工程代码完全可读包名和作者署名都由您钦定</li>
<li>授权极为宽松生成后代码版权完全归属于您</li>
<li>详尽完善免费护眼的开发文档</li> <li>详尽完善免费护眼的开发文档</li>
<li>全网超合理超低价商业授权就是撸顿串的价格</li>
</ul> </ul>
</el-collapse-item> </el-collapse-item>
<el-collapse-item title="我们的技术选型" name="2"> <el-collapse-item title="我们的技术选型" name="2">
<ul class="item-list"> <ul class="item-list">
<li>Element (Vue) / Ant Design (React) / ECharts / AntV / Axios / Webpack</li> <li>Element (Vue) / Ant Design (React) / ECharts / AntV / Axios / Webpack</li>
<li>Spring Boot / Spring Cloud / Spring Cloud Alibaba + Mybatis + Jwt</li> <li>Spring Boot / Spring Cloud / Spring Cloud Alibaba + Mybatis + Jwt</li>
<li>Hutool + Guava + Caffeine + Lombok + MapStruct + 通用 Mapper</li> <li>Hutool + Guava + Caffeine + Lombok + MapStruct + Flowable + Activiti</li>
<li>Redis + Zookeeper + Nacos + Consul + Apollo + XXL-Job + Kafka + Seata</li> <li>Redis + Zookeeper + Nacos + Consul + XXL-Job + Quartz + Kafka + RocketMQ + Seata</li>
<li>ELK + PinPoint / SkyWalking + Grafana + Prometheus</li> <li>ELK + PinPoint / SkyWalking + Grafana + Prometheus</li>
</ul> </ul>
</el-collapse-item> </el-collapse-item>
<el-collapse-item title="可快速上手的高质量代码" name="3"> <el-collapse-item title="可快速上手的高质量代码" name="3">
<ul class="item-list"> <ul class="item-list">
<li>无任何二次封装只生成您最懂的代码</li> <li>完整的工作流支持</li>
<li>遵循阿里巴巴标准的代码规范</li> <li>完整的在线表单支持</li>
<li>主流技术栈恣意组合对面试大有裨益</li> <li>完整的静态表单支持</li>
<li>产品级代码强度层次清晰滴水不漏</li> <li>完整的多关联数据组装支持</li>
<li>15年架构师优化的每一处细节</li> <li>完整的中台化核心组件支持</li>
</ul> </ul>
</el-collapse-item> </el-collapse-item>
<el-collapse-item title="设计理念和未来目标" name="4"> <el-collapse-item title="设计理念和未来目标" name="4">
<ul class="item-list"> <ul class="item-list">
<li>全面实用的日志跟踪和服务监控体系</li> <li>全面且实用的日志跟踪链路跟踪和服务监控体系</li>
<li>前沿的单表组合式设计使系统拆分SO EASY</li> <li>前沿的单表组合式设计使系统拆分SO EASY</li>
<li>先代码后SQL的原则让服务扩充更具弹性</li> <li>先代码后SQL的原则让服务扩充更具弹性</li>
<li>统一的数据组装接口更高效的满足微服务的拆分与再合并</li> <li>统一的数据组装接口更高效的满足微服务的拆分与再合并</li>
<li>拥抱云原生架构更多可落地的实用功能正在开发之中</li> <li>支持实时与离线的数据同步更好的拥抱云原生架构</li>
</ul> </ul>
</el-collapse-item> </el-collapse-item>
</el-collapse> </el-collapse>
@@ -62,6 +62,11 @@
<a href="https://www.bilibili.com/video/BV1Wg4y1i7vP" target="_blank">https://www.bilibili.com/video/BV1Wg4y1i7vP</a> <a href="https://www.bilibili.com/video/BV1Wg4y1i7vP" target="_blank">https://www.bilibili.com/video/BV1Wg4y1i7vP</a>
</div> </div>
<el-divider></el-divider> <el-divider></el-divider>
<div class="item">
<span style="width: 120px;">更多演示</span>
<a href="http://demo.orangeforms.com/" target="_blank">http://demo.orangeforms.com/</a>
</div>
<el-divider></el-divider>
<div class="item"> <div class="item">
<span style="width: 120px;">操作指南</span> <span style="width: 120px;">操作指南</span>
<a href="http://www.orangeforms.com/orange-doc/" target="_blank">http://www.orangeforms.com/orange-doc/</a> <a href="http://www.orangeforms.com/orange-doc/" target="_blank">http://www.orangeforms.com/orange-doc/</a>
@@ -82,14 +87,14 @@
<span> <span>
QQ群 QQ群
<a target="_blank" style="margin-left: 5px;" <a target="_blank" style="margin-left: 5px;"
href="//shang.qq.com/wpa/qunwpa?idkey=590857a1b4c587e2be3d66b9a7e2015109772e777c6451c897dee393489b1661"> href="https://qm.qq.com/cgi-bin/qm/qr?k=cMMom9SdX1j57T_58WihLZ4TBrBpokrv&jump_from=webapi">
788581363 883176267
</a> </a>
</span> </span>
</div> </div>
<el-divider></el-divider> <el-divider></el-divider>
<div style="width: 100%; text-align: center; padding: 10px;"> <div style="width: 100%; text-align: center; padding: 10px;">
<img src="../../assets/img/orange-group1.png" /> <img src="../../assets/img/orange-group2.png" />
</div> </div>
</el-card> </el-card>
</el-row> </el-row>

View File

@@ -0,0 +1,223 @@
<template>
<div class="form-single-fragment" style="position: relative;">
<el-form ref="form" :model="formData" class="full-width-input" style="width: 100%;"
label-width="130px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="抄送类型" prop="type">
<el-select class="input-item" v-model="formData.type"
placeholder="抄送类型" @change="onCopyForTypeChange">
<el-option v-for="item in SysFlowCopyForType.getList()"
:key="item.id" :label="item.name" :value="item.id" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item v-if="formData.type === SysFlowCopyForType.USER" label="抄送人" prop="id">
<TagSelect v-model="formData.id">
<el-button slot="append" class="append-add" type="default" icon="el-icon-plus" @click="onSelectUser" />
</TagSelect>
</el-form-item>
<el-form-item v-if="formData.type === SysFlowCopyForType.ROLE" label="抄送角色" prop="id">
<el-select v-model="formData.id" placeholder="" :multiple="true">
<el-option v-for="role in roleList" :key="role.id" :label="role.name" :value="role.id" />
</el-select>
</el-form-item>
<el-form-item v-if="formData.type === SysFlowCopyForType.DEPT" label="抄送部门" prop="id">
<TagSelect v-model="selectDeptList">
<el-button slot="append" class="append-add" type="default" icon="el-icon-plus" @click="onSelectDept" />
</TagSelect>
</el-form-item>
<el-form-item v-if="[SysFlowCopyForType.POST, SysFlowCopyForType.SELF_DEPT_POST, SysFlowCopyForType.UP_DEPT_POST].indexOf(formData.type) !== -1"
:label="SysFlowCopyForType.getValue(formData.type)" prop="id">
<el-select v-model="formData.id" placeholder="" :multiple="true">
<el-option v-for="post in postList" :key="post.postId" :label="post.postName" :value="post.postId" />
</el-select>
</el-form-item>
<el-form-item v-if="formData.type === SysFlowCopyForType.DEPT_POST" label="抄送部门" prop="deptId">
<el-cascader v-model="deptId" :clearable="true"
:size="defaultFormItemSize" placeholder=""
:props="{value: 'id', label: 'name', checkStrictly: true}"
:options="deptList" @change="onDeptChange"
>
</el-cascader>
</el-form-item>
<el-form-item v-if="formData.type === SysFlowCopyForType.DEPT_POST" label="抄送岗位" prop="id">
<el-select v-model="formData.id" placeholder="" :multiple="true">
<el-option v-for="post in validDeptPostList" :key="post.deptPostId" :label="post.postShowName" :value="post.deptPostId" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-row type="flex" justify="end">
<el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="onCancel(false)">
取消
</el-button>
<el-button type="primary" :size="defaultFormItemSize" @click="onSubmit()">
保存
</el-button>
</el-row>
</el-col>
</el-row>
</el-form>
</div>
</template>
<script>
import { findItemFromList } from '@/utils';
import TagSelect from '@/views/workflow/components/TagSelect.vue';
import TaskUserSelect from '@/views/workflow/components/TaskUserSelect.vue';
import TaskGroupSelect from '@/views/workflow/components/TaskGroupSelect.vue';
export default {
props: {
deptList: {
type: Array,
required: true
},
postList: {
type: Array,
required: true
},
deptPostList: {
type: Array,
required: true
},
roleList: {
type: Array,
required: true
}
},
components: {
TagSelect
},
data () {
return {
deptId: undefined,
selectDeptList: [],
formData: {
type: this.SysFlowCopyForType.USER,
id: undefined
}
}
},
methods: {
onCancel (isSuccess, data) {
if (this.observer != null) {
this.observer.cancel(isSuccess, data);
}
},
onSubmit () {
if (this.formData.type === this.SysFlowCopyForType.DEPT_POST && (this.deptId == null || this.deptId === '')) {
this.$message.warning('请选择抄送部门');
return;
}
if ((this.formData.id == null || this.formData.id === '') &&
this.formData.type !== this.SysFlowCopyForType.SELF_DEPT_LEADER &&
this.formData.type !== this.SysFlowCopyForType.UP_DEPT_LEADER) {
this.$message.warning('请选择' + this.SysFlowCopyForType.getValue(this.formData.type));
return;
}
let tempId = null;
switch (this.formData.type) {
case this.SysFlowCopyForType.ROLE:
tempId = this.formData.id.join(',');
break;
case this.SysFlowCopyForType.USER:
case this.SysFlowCopyForType.DEPT:
tempId = this.formData.id;
break;
case this.SysFlowCopyForType.POST:
case this.SysFlowCopyForType.SELF_DEPT_POST:
case this.SysFlowCopyForType.UP_DEPT_POST:
case this.SysFlowCopyForType.DEPT_POST:
tempId = this.formData.id.join(',');
break;
default:
tempId = '';
break;
}
this.onCancel(true, {
type: this.formData.type,
id: tempId
});
},
onDeptChange (val) {
this.formData.id = undefined;
},
onCopyForTypeChange (val) {
this.formData.id = undefined;
this.deptId = undefined;
this.selectDeptList = [];
},
onSelectUser () {
let usedUserIdList = (this.formData.id == null || this.formData.id === '') ? [] : this.formData.id.split(',');
this.$dialog.show('添加抄送人', TaskUserSelect, {
area: ['1000px', '600px']
}, {
multiple: true,
usedUserIdList: usedUserIdList
}).then(res => {
let userList = [];
if (Array.isArray(res)) {
userList = res.map(item => item.loginName);
} else {
if (res && res.loginName !== '') {
userList = [res.loginName];
}
}
// 跟老的候选人合并
if (Array.isArray(usedUserIdList) && usedUserIdList.length > 0) {
userList.forEach(item => {
if (usedUserIdList.indexOf(item) === -1) {
usedUserIdList.push(item);
}
});
} else {
usedUserIdList = userList;
}
this.formData.id = usedUserIdList.join(',');
}).catch(e => {});
},
onSelectDept () {
let usedIdList = (this.formData.id == null || this.formData.id === '') ? [] : this.formData.id.split(',');
this.$dialog.show('选择部门', TaskGroupSelect, {
area: ['600px', '600px']
}, {
allGroupList: this.deptList,
usedIdList: usedIdList
}).then(res => {
if (Array.isArray(res)) {
if (!Array.isArray(this.selectDeptList)) this.selectDeptList = [];
res.forEach(item => {
if (findItemFromList(this.selectDeptList, item.id, 'id') == null) {
this.selectDeptList.push(item);
}
});
}
this.formData.id = Array.isArray(this.selectDeptList) ? this.selectDeptList.map(item => item.id).join(',') : '';
}).catch(e => {});
}
},
computed: {
validDeptPostList () {
let id = Array.isArray(this.deptId) ? this.deptId[this.deptId.length - 1] : undefined;
if (id == null) return [];
return this.deptPostList.filter(item => {
return item.deptId === id;
});
}
}
}
</script>
<style scoped>
.append-add {
border: none;
border-left: 1px solid #DCDFE6;
border-radius: 0px;
background: #F5F7FA;
}
</style>

View File

@@ -0,0 +1,280 @@
<template>
<el-col class="copy-select" :span="24">
<el-table :data="tableDataList" :show-header="false">
<el-table-column label="操作" width="45px">
<template slot-scope="scope">
<el-button class="table-btn delete" type="text" icon="el-icon-remove-outline"
@click="onDeleteCopyItem(scope.row)"
/>
</template>
</el-table-column>
<el-table-column label="抄送类型" width="150px">
<template slot-scope="scope">
<span>{{SysFlowCopyForType.getValue(scope.row.type)}}</span>
</template>
</el-table-column>
<el-table-column label="抄送对象">
<template slot-scope="scope">
<el-tag :size="defaultFormItemSize" type="primary" effect="dark"
v-for="item in scope.row.showNameList" :key="item.id"
closable @close="onCloseSubItem(scope.row, item)"
>
{{item.name}}
</el-tag>
</template>
</el-table-column>
</el-table>
<el-button class="full-line-btn" icon="el-icon-plus" @click="onEditCopyForItem()">添加抄送人</el-button>
</el-col>
</template>
<script>
import { treeDataTranslate } from '@/utils';
import { SysPostController, DictionaryController } from '@/api';
import addCopyForItem from './addCopyForItem.vue';
export default {
name: 'copyForSelect',
props: {
value: {
type: Array,
default: () => []
}
},
data () {
return {
isInit: false,
roleList: [],
roleMap: new Map(),
deptList: [],
deptMap: new Map(),
postList: [],
postMap: new Map(),
deptPostList: [],
deptPostMap: new Map()
}
},
methods: {
onDeleteCopyItem (row) {
this.$confirm('是否删除此抄送人?').then(res => {
let temp = (this.value || []).filter(item => {
return row.type !== item.type;
});
this.$emit('input', temp);
}).catch(e => {});
},
onCloseSubItem (row, item) {
this.$confirm('是否移除此抄送人?').then(res => {
let temp = (this.value || []).filter(copyItem => {
if (row.type === copyItem.type) {
if (copyItem.id == null || copyItem.id === '') return false;
let tempIdList = (copyItem.id || '').split(',');
tempIdList = tempIdList.filter(subItemId => {
return subItemId !== item.id;
});
if (tempIdList.length <= 0) {
return false;
} else {
copyItem.id = tempIdList.join(',');
return true;
}
} else {
return true;
}
});
this.$emit('input', temp);
}).catch(e => {});
},
onEditCopyForItem () {
this.$dialog.show('添加抄送人', addCopyForItem, {
area: '600px'
}, {
roleList: this.roleList,
deptList: this.deptList,
postList: this.postList,
deptPostList: this.deptPostList
}).then(res => {
let copyForType = res.type;
let bFind = false;
// 按照抄送类型更新
let temp = (this.value || []).map(copyItem => {
if (copyItem.type === copyForType) {
bFind = true;
let oldIdList = (copyItem.id || '').split(',');
let newIdList = (res.id || '').split(',');
// 合并新旧选项
let idList = oldIdList;
newIdList.forEach(id => {
if (idList.indexOf(id) === -1) idList.push(id);
});
return {
...copyItem,
id: idList.join(',')
};
} else {
return {
...copyItem
}
}
});
if (!bFind) {
temp.push({
...res
});
}
this.$emit('input', temp);
}).catch(e => {});
},
loadSysDeptList () {
return new Promise((resolve, reject) => {
DictionaryController.dictSysDept(this, {}).then(res => {
res.getList().forEach(item => {
this.deptMap.set(item.id, item);
});
this.deptList = treeDataTranslate(res.getList());
resolve();
}).catch(e => {
reject(e);
});
});
},
loadDeptPostList () {
return new Promise((resolve, reject) => {
DictionaryController.dictDeptPost(this, {}).then(res => {
res.forEach(item => {
this.deptPostMap.set(item.deptPostId, item);
});
this.deptPostList = res.sort((value1, value2) => {
return value1.level - value2.level;
});
resolve();
}).catch(e => {
reject(e);
});
});
},
loadSysPostList () {
this.postMap = new Map();
return new Promise((resolve, reject) => {
SysPostController.list(this, {}).then(res => {
this.postList = res.data.dataList;
this.postList.forEach(item => {
this.postMap.set(item.postId, item);
});
resolve();
}).catch(e => {
reject(e);
});
});
},
loadSysRoleList () {
return new Promise((resolve, reject) => {
DictionaryController.dictSysRole(this, {}).then(res => {
this.roleList = res.getList();
this.roleList.forEach(item => {
this.roleMap.set(item.id, item);
});
resolve();
}).catch(e => {
reject(e);
});
});
}
},
computed: {
tableDataList () {
if (this.isInit && Array.isArray(this.value)) {
return this.value.map(item => {
let showNameList = (item.id || '').split(',');
switch (item.type) {
case this.SysFlowCopyForType.USER:
showNameList = showNameList.map(id => {
return (id && id !== '') ? {
id: id,
name: id
} : undefined
}).filter(item => item != null);
break;
case this.SysFlowCopyForType.ROLE:
showNameList = showNameList.map(id => {
let role = this.roleMap.get(id);
return role ? {
id: id,
name: role.name
} : undefined
}).filter(item => item != null);
break;
case this.SysFlowCopyForType.DEPT:
showNameList = showNameList.map(id => {
let dept = this.deptMap.get(id);
return dept ? {
id: id,
name: dept.name
} : undefined
}).filter(item => item != null);
break;
case this.SysFlowCopyForType.SELF_DEPT_LEADER:
case this.SysFlowCopyForType.UP_DEPT_LEADER:
showNameList = [];
break;
case this.SysFlowCopyForType.POST:
case this.SysFlowCopyForType.SELF_DEPT_POST:
case this.SysFlowCopyForType.UP_DEPT_POST:
showNameList = showNameList.map(id => {
let post = this.postMap.get(id);
return post ? {
id: id,
name: post.postName
} : undefined
}).filter(item => item != null);
break;
case this.SysFlowCopyForType.DEPT_POST:
showNameList = showNameList.map(id => {
let deptPost = this.deptPostMap.get(id);
return deptPost ? {
id: id,
name: deptPost.deptName + ' / ' + deptPost.postShowName
} : undefined
}).filter(item => item != null);
break;
}
return {
...item,
showNameList
}
});
}
return [];
}
},
mounted () {
let httpCalls = [
this.loadSysDeptList(),
this.loadSysPostList(),
this.loadDeptPostList(),
this.loadSysRoleList()
];
Promise.all(httpCalls).then(res => {
this.isInit = true;
}).catch(e => {});
},
beforeDestroy () {
this.roleMap = null;
this.deptMap = null;
this.postMap = null;
this.deptPostMap = null;
}
}
</script>
<style scoped>
.full-line-btn {
width: 100%;
margin: 10px 0px;
border: 1px dashed #EBEEF5;
}
.copy-select >>> .el-tag {
margin-right: 10px;
}
</style>

View File

@@ -3,13 +3,14 @@
<div class="task-title"> <div class="task-title">
<div> <div>
<span class="text">{{flowInfo.flowEntryName}}</span> <span class="text">{{flowInfo.flowEntryName}}</span>
<el-tag v-if="flowInfo.taskName" effect="dark" size="mini" type="success">{{'当前节点' + flowInfo.taskName}}</el-tag> <el-tag v-if="flowInfo.taskName" effect="dark" :size="defaultFormItemSize" type="success">{{'当前节点' + flowInfo.taskName}}</el-tag>
<el-tag v-if="flowInfo.processInstanceInitiator" effect="dark" size="mini" type="info">{{'发起人' + flowInfo.processInstanceInitiator}}</el-tag> <el-tag v-if="flowInfo.processInstanceInitiator" effect="dark" :size="defaultFormItemSize" type="info">{{'发起人' + flowInfo.processInstanceInitiator}}</el-tag>
</div> </div>
</div> </div>
<el-row type="flex" justify="space-between" style="margin-bottom: 15px;"> <el-row type="flex" justify="space-between" style="margin-bottom: 15px;">
<el-radio-group size="small" v-model="currentPage" v-if="processInstanceId != null" style="min-width: 300px;"> <el-radio-group size="small" v-model="currentPage" style="min-width: 350px;">
<el-radio-button label="formInfo">表单信息</el-radio-button> <el-radio-button label="formInfo">表单信息</el-radio-button>
<el-radio-button v-if="processInstanceId == null || isRuntime || isRuntime === 'true'" label="copyInfo">抄送设置</el-radio-button>
<el-radio-button v-if="processInstanceId != null" label="flowProcess">流程图</el-radio-button> <el-radio-button v-if="processInstanceId != null" label="flowProcess">流程图</el-radio-button>
<el-radio-button v-if="processInstanceId != null" label="approveInfo">审批记录</el-radio-button> <el-radio-button v-if="processInstanceId != null" label="approveInfo">审批记录</el-radio-button>
</el-radio-group> </el-radio-group>
@@ -28,7 +29,7 @@
</el-row> </el-row>
<el-scrollbar class="custom-scroll" :style="{height: (getMainContextHeight - 140) + 'px'}"> <el-scrollbar class="custom-scroll" :style="{height: (getMainContextHeight - 140) + 'px'}">
<el-form ref="form" class="full-width-input" style="width: 100%;" <el-form ref="form" class="full-width-input" style="width: 100%;"
label-width="100px" size="mini" label-position="right" @submit.native.prevent> label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<!-- 表单信息 --> <!-- 表单信息 -->
<el-row v-show="currentPage === 'formInfo'" type="flex" :key="formKey"> <el-row v-show="currentPage === 'formInfo'" type="flex" :key="formKey">
<slot /> <slot />
@@ -36,14 +37,14 @@
<!-- 审批记录 --> <!-- 审批记录 -->
<el-row v-if="currentPage === 'approveInfo'" :gutter="20"> <el-row v-if="currentPage === 'approveInfo'" :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-table :data="flowTaskCommentList" size="mini" border header-cell-class-name="table-header-gray" :height="(getMainContextHeight - 150) + 'px'"> <el-table :data="flowTaskCommentList" :size="defaultFormItemSize" border header-cell-class-name="table-header-gray" :height="(getMainContextHeight - 150) + 'px'">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" /> <el-table-column label="序号" header-align="center" align="center" type="index" width="55px" />
<el-table-column label="流程环节" prop="taskName" width="200px" /> <el-table-column label="流程环节" prop="taskName" width="200px" />
<el-table-column label="执行人" prop="createUsername" width="200px" /> <el-table-column label="执行人" prop="createUsername" width="200px" />
<el-table-column label="操作" width="150px"> <el-table-column label="操作" width="150px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="getOperationTagType(scope.row.approvalType)" effect="dark">{{SysFlowTaskOperationType.getValue(scope.row.approvalType)}}</el-tag> <el-tag :size="defaultFormItemSize" :type="getOperationTagType(scope.row.approvalType)" effect="dark">{{SysFlowTaskOperationType.getValue(scope.row.approvalType)}}</el-tag>
<el-tag v-if="scope.row.delegateAssginee != null" size="mini" type="success" effect="plain" style="margin-left: 10px;">{{scope.row.delegateAssginee}}</el-tag> <el-tag v-if="scope.row.delegateAssginee != null" :size="defaultFormItemSize" type="success" effect="plain" style="margin-left: 10px;">{{scope.row.delegateAssginee}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="审批意见"> <el-table-column label="审批意见">
@@ -63,6 +64,12 @@
:allCommentList="flowTaskCommentList" :allCommentList="flowTaskCommentList"
/> />
</el-row> </el-row>
<!-- 抄送设置 -->
<el-row v-show="currentPage === 'copyInfo'">
<el-col :span="24" style="border-top: 1px solid #EBEEF5">
<CopyForSelect v-model="copyItemList" />
</el-col>
</el-row>
</el-form> </el-form>
</el-scrollbar> </el-scrollbar>
<label class="page-close-box"> <label class="page-close-box">
@@ -78,6 +85,7 @@ import { mapGetters } from 'vuex';
import { cachedPageChildMixin } from '@/core/mixins'; import { cachedPageChildMixin } from '@/core/mixins';
import { FlowOperationController } from '@/api/flowController.js'; import { FlowOperationController } from '@/api/flowController.js';
import ProcessViewer from '@/views/workflow/components/ProcessViewer.vue'; import ProcessViewer from '@/views/workflow/components/ProcessViewer.vue';
import CopyForSelect from '@/views/workflow/components/CopyForSelect/index.vue';
export default { export default {
name: 'handlerFowTask', name: 'handlerFowTask',
@@ -90,6 +98,9 @@ export default {
processDefinitionId: { processDefinitionId: {
type: String type: String
}, },
isRuntime: {
type: [Boolean, String]
},
// 流程名称 // 流程名称
flowEntryName: { flowEntryName: {
type: String type: String
@@ -108,7 +119,8 @@ export default {
} }
}, },
components: { components: {
ProcessViewer ProcessViewer,
CopyForSelect
}, },
mixins: [cachedPageChildMixin], mixins: [cachedPageChildMixin],
data () { data () {
@@ -122,7 +134,8 @@ export default {
flowEntryName: this.flowEntryName, flowEntryName: this.flowEntryName,
processInstanceInitiator: this.processInstanceInitiator processInstanceInitiator: this.processInstanceInitiator
}, },
flowTaskCommentList: [] flowTaskCommentList: [],
copyItemList: []
} }
}, },
methods: { methods: {
@@ -145,6 +158,7 @@ export default {
case this.SysFlowTaskOperationType.MULTI_REFUSE: case this.SysFlowTaskOperationType.MULTI_REFUSE:
return 'default'; return 'default';
case this.SysFlowTaskOperationType.REJECT: case this.SysFlowTaskOperationType.REJECT:
case this.SysFlowTaskOperationType.REJECT_TO_START:
case this.SysFlowTaskOperationType.REVOKE: case this.SysFlowTaskOperationType.REVOKE:
return 'danger'; return 'danger';
default: return 'default'; default: return 'default';
@@ -162,20 +176,18 @@ export default {
return 'warning'; return 'warning';
case this.SysFlowTaskOperationType.STOP: case this.SysFlowTaskOperationType.STOP:
case this.SysFlowTaskOperationType.REJECT: case this.SysFlowTaskOperationType.REJECT:
case this.SysFlowTaskOperationType.REJECT_TO_START:
case this.SysFlowTaskOperationType.REVOKE: case this.SysFlowTaskOperationType.REVOKE:
return 'danger'; return 'danger';
default: default:
return 'primary'; return 'primary';
} }
}, },
onStartFlow (operation) {
this.$emit('start', operation);
},
handlerOperation (operation) { handlerOperation (operation) {
if (this.processInstanceId == null) { if (this.processInstanceId == null) {
this.onStartFlow(operation); this.$emit('start', operation, this.copyItemList);
} else { } else {
this.$emit('submit', operation); this.$emit('submit', operation, this.copyItemList);
} }
}, },
getTaskHighlightData () { getTaskHighlightData () {

View File

@@ -11,15 +11,15 @@
</marker> </marker>
</defs> </defs>
<!-- 已完成节点悬浮弹窗 --> <!-- 已完成节点悬浮弹窗 -->
<el-dialog class="comment-dialog" :title="dlgTitle || '审批记录'" :visible.sync="dialogVisible"> <el-dialog class="comment-dialog" :title="dlgTitle || '审批记录'" :visible.sync="dialogVisible" :append-to-body="true">
<el-row> <el-row>
<el-table :data="taskCommentList" size="mini" border header-cell-class-name="table-header-gray" height="500px"> <el-table :data="taskCommentList" :size="defaultFormItemSize" border header-cell-class-name="table-header-gray" height="500px">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" /> <el-table-column label="序号" header-align="center" align="center" type="index" width="55px" />
<el-table-column label="执行人" prop="createUsername" width="150px" /> <el-table-column label="执行人" prop="createUsername" width="150px" />
<el-table-column label="操作" width="150px"> <el-table-column label="操作" width="150px">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="getOperationTagType(scope.row.approvalType)" effect="dark">{{SysFlowTaskOperationType.getValue(scope.row.approvalType)}}</el-tag> <el-tag :size="defaultFormItemSize" :type="getOperationTagType(scope.row.approvalType)" effect="dark">{{SysFlowTaskOperationType.getValue(scope.row.approvalType)}}</el-tag>
<el-tag v-if="scope.row.delegateAssginee != null" size="mini" type="success" effect="plain" style="margin-left: 10px;">{{scope.row.delegateAssginee}}</el-tag> <el-tag v-if="scope.row.delegateAssginee != null" :size="defaultFormItemSize" type="success" effect="plain" style="margin-left: 10px;">{{scope.row.delegateAssginee}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="审批意见"> <el-table-column label="审批意见">

View File

@@ -2,7 +2,7 @@
<div class="tag-select"> <div class="tag-select">
<div class="tag-box"> <div class="tag-box">
<el-tag v-for="item in selectValues" :key="item.id" effect="dark" <el-tag v-for="item in selectValues" :key="item.id" effect="dark"
style="margin-right: 5px;" type="primary" size="mini" closable style="margin-right: 5px;" type="primary" :size="defaultFormItemSize" closable
@close="onDeleteTag(item)" @close="onDeleteTag(item)"
> >
{{item.name}} {{item.name}}

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="formTaskCommit" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;" <el-form ref="formTaskCommit" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;"
label-width="100px" size="mini" label-position="right" @submit.native.prevent> label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24" <el-col :span="24"
v-if="operation.type !== SysFlowTaskOperationType.CO_SIGN && operation.type !== SysFlowTaskOperationType.MULTI_SIGN"> v-if="operation.type !== SysFlowTaskOperationType.CO_SIGN && operation.type !== SysFlowTaskOperationType.MULTI_SIGN">
@@ -18,11 +18,11 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-row class="no-scroll flex-box" type="flex" justify="end"> <el-row class="no-scroll flex-box" type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="onCancel(false)"> @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" @click="onSubmitClick()"> <el-button type="primary" :size="defaultFormItemSize" @click="onSubmitClick()">
提交 提交
</el-button> </el-button>
</el-row> </el-row>

View File

@@ -1,15 +1,15 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form label-width="100px" size="mini" label-position="right" @submit.native.prevent> <el-form label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row type="flex" justify="end"> <el-row type="flex" justify="end">
<el-button type="primary" size="mini" @click="onSubmit" :disabled="!canCommit"> <el-button type="primary" :size="defaultFormItemSize" @click="onSubmit" :disabled="!canCommit">
添加分组 添加分组
</el-button> </el-button>
</el-row> </el-row>
</el-form> </el-form>
<el-row style="margin-top: 18px;"> <el-row style="margin-top: 18px;">
<el-col :span="24"> <el-col :span="24">
<el-table :data="allGroupList" size="mini" height="452px" <el-table :data="allGroupList" :size="defaultFormItemSize" height="452px"
header-cell-class-name="table-header-gray" header-cell-class-name="table-header-gray"
row-key="id" :default-expand-all="true" row-key="id" :default-expand-all="true"
@selection-change="handleSelectionChange" @selection-change="handleSelectionChange"

View File

@@ -4,19 +4,19 @@
<el-card class="base-card" shadow="never" :body-style="{ padding: '0px' }" style="border: none;"> <el-card class="base-card" shadow="never" :body-style="{ padding: '0px' }" style="border: none;">
<div slot="header" class="base-card-header"> <div slot="header" class="base-card-header">
<el-row type="flex" align="middle"> <el-row type="flex" align="middle">
<el-radio-group v-model="formData.deptType" size="mini" @change="formData.deptId = undefined"> <el-radio-group v-model="formData.deptType" :size="defaultFormItemSize" @change="formData.deptId = undefined">
<el-radio-button label="allDeptPost">全部</el-radio-button> <el-radio-button label="allDeptPost">全部</el-radio-button>
<el-radio-button label="selfDeptPost">本部门</el-radio-button> <el-radio-button label="selfDeptPost">本部门</el-radio-button>
<el-radio-button label="upDeptPost">上级部门</el-radio-button> <el-radio-button label="upDeptPost">上级部门</el-radio-button>
<el-radio-button label="deptPost">指定部门</el-radio-button> <el-radio-button label="deptPost">指定部门</el-radio-button>
</el-radio-group> </el-radio-group>
<el-cascader v-model="formData.deptId" :clearable="true" <el-cascader v-model="formData.deptId" :clearable="true"
size="mini" placeholder="选择部门" v-show="formData.deptType === 'deptPost'" :size="defaultFormItemSize" placeholder="选择部门" v-show="formData.deptType === 'deptPost'"
:props="{value: 'id', label: 'name', checkStrictly: true}" :props="{value: 'id', label: 'name', checkStrictly: true}"
:options="deptList"> :options="deptList">
</el-cascader> </el-cascader>
<!-- <!--
<el-select v-model="formData.deptId" size="mini" placeholder="选择部门" v-show="formData.deptType === 'deptPost'" style="margin-left: 10px;"> <el-select v-model="formData.deptId" :size="defaultFormItemSize" placeholder="选择部门" v-show="formData.deptType === 'deptPost'" style="margin-left: 10px;">
<el-option v-for="item in deptList" :key="item.id" <el-option v-for="item in deptList" :key="item.id"
:label="item.name" :value="item.id" :label="item.name" :value="item.id"
/> />
@@ -24,7 +24,7 @@
--> -->
</el-row> </el-row>
<div class="base-card-operation"> <div class="base-card-operation">
<el-button type="primary" size="mini" <el-button type="primary" :size="defaultFormItemSize"
:disabled="selectPost.length <= 0" :disabled="selectPost.length <= 0"
@click="onAddPostClick()" @click="onAddPostClick()"
> >
@@ -32,7 +32,7 @@
</el-button> </el-button>
</div> </div>
</div> </div>
<el-table :data="getValidDeptPostList" size="mini" height="500px" <el-table :data="getValidDeptPostList" :size="defaultFormItemSize" height="500px"
header-cell-class-name="table-header-gray" header-cell-class-name="table-header-gray"
row-key="deptPostId" row-key="deptPostId"
@selection-change="handleSelectionChange" @selection-change="handleSelectionChange"
@@ -45,7 +45,7 @@
</el-table-column> </el-table-column>
<el-table-column label="领导岗位"> <el-table-column label="领导岗位">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag size="mini" :type="scope.row.leaderPost ? 'success' : 'danger'"> <el-tag :size="defaultFormItemSize" :type="scope.row.leaderPost ? 'success' : 'danger'">
{{scope.row.leaderPost ? '是' : '否'}} {{scope.row.leaderPost ? '是' : '否'}}
</el-tag> </el-tag>
</template> </template>

View File

@@ -1,6 +1,6 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form label-width="100px" size="mini" label-position="right" @submit.native.prevent> <el-form label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row type="flex" justify="space-between"> <el-row type="flex" justify="space-between">
<el-form-item label="登录名称"> <el-form-item label="登录名称">
<el-input class="filter-item" v-model="formSysUser.formFilter.sysUserLoginName" <el-input class="filter-item" v-model="formSysUser.formFilter.sysUserLoginName"
@@ -8,15 +8,15 @@
:clearable="true" placeholder="登录名称" /> :clearable="true" placeholder="登录名称" />
</el-form-item> </el-form-item>
<div> <div>
<el-input v-if="!multiple" size="mini" v-model="assignee" placeholder="自定义用户" style="width: 200px; margin: 0px 10px;"> <el-input v-if="!multiple" :size="defaultFormItemSize" v-model="assignee" placeholder="自定义用户" style="width: 200px; margin: 0px 10px;">
</el-input> </el-input>
<el-button type="primary" size="mini" @click="setStartUser"> <el-button type="primary" :size="defaultFormItemSize" @click="setStartUser">
流程发起人 流程发起人
</el-button> </el-button>
<el-button v-if="showAssignee" type="primary" size="mini" @click="useAppointedAssignee"> <el-button v-if="showAssignee" type="primary" :size="defaultFormItemSize" @click="useAppointedAssignee">
使用指定审批人 使用指定审批人
</el-button> </el-button>
<el-button type="primary" size="mini" @click="onSubmit" :disabled="!canCommit"> <el-button type="primary" :size="defaultFormItemSize" @click="onSubmit" :disabled="!canCommit">
添加用户 添加用户
</el-button> </el-button>
</div> </div>
@@ -25,7 +25,7 @@
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-radio-group class="radio-table" v-model="selectUserId" style="width: 100%;"> <el-radio-group class="radio-table" v-model="selectUserId" style="width: 100%;">
<el-table :data="formSysUser.sysUserWidget.dataList" size="mini" height="410px" <el-table :data="formSysUser.sysUserWidget.dataList" :size="defaultFormItemSize" height="410px"
header-cell-class-name="table-header-gray" header-cell-class-name="table-header-gray"
row-key="userId" row-key="userId"
@sort-change="formSysUser.sysUserWidget.onSortChange" @sort-change="formSysUser.sysUserWidget.onSortChange"

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="form-single-fragment" style="position: relative;"> <div class="form-single-fragment" style="position: relative;">
<el-form ref="formEditFlowCategory" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;" <el-form ref="formEditFlowCategory" :model="formData" class="full-width-input" :rules="rules" style="width: 100%;"
label-width="100px" size="mini" label-position="right" @submit.native.prevent> label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="分类名称" prop="FlowCategory.name"> <el-form-item label="分类名称" prop="FlowCategory.name">
@@ -23,11 +23,11 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-row class="no-scroll flex-box" type="flex" justify="end"> <el-row class="no-scroll flex-box" type="flex" justify="end">
<el-button type="primary" size="mini" :plain="true" <el-button type="primary" :size="defaultFormItemSize" :plain="true"
@click="onCancel(false)"> @click="onCancel(false)">
取消 取消
</el-button> </el-button>
<el-button type="primary" size="mini" @click="onSubmitClick()"> <el-button type="primary" :size="defaultFormItemSize" @click="onSubmitClick()">
保存 保存
</el-button> </el-button>
</el-row> </el-row>

View File

@@ -1,17 +1,18 @@
<template> <template>
<div style="position: relative;"> <div style="position: relative;">
<el-form label-width="100px" size="mini" label-position="right" @submit.native.prevent> <el-form ref="formFlowCategory" :model="formFlowCategory" label-width="100px" :size="defaultFormItemSize" label-position="right" @submit.native.prevent>
<filter-box :item-width="350"> <filter-box :item-width="350">
<el-form-item label="分类名称"> <el-form-item label="分类名称" prop="formFilter.name">
<el-input class="filter-item" v-model="formFlowCategory.formFilter.name" <el-input class="filter-item" v-model="formFlowCategory.formFilter.name"
:clearable="true" placeholder="流程分类名称" /> :clearable="true" placeholder="流程分类名称" />
</el-form-item> </el-form-item>
<el-form-item label="分类编码"> <el-form-item label="分类编码" prop="formFilter.code">
<el-input class="filter-item" v-model="formFlowCategory.formFilter.code" <el-input class="filter-item" v-model="formFlowCategory.formFilter.code"
:clearable="true" placeholder="分类编码" /> :clearable="true" placeholder="分类编码" />
</el-form-item> </el-form-item>
<el-button slot="operator" type="primary" :plain="true" size="mini" @click="refreshFormFlowCategory(true)">查询</el-button> <el-button slot="operator" type="default" :plain="true" :size="defaultFormItemSize" @click="onReset">重置</el-button>
<el-button slot="operator" type="primary" size="mini" :disabled="!checkPermCodeExist('formFlowCategory:formFlowCategory:add')" <el-button slot="operator" type="primary" :plain="true" :size="defaultFormItemSize" @click="refreshFormFlowCategory(true)">查询</el-button>
<el-button slot="operator" type="primary" :size="defaultFormItemSize" :disabled="!checkPermCodeExist('formFlowCategory:formFlowCategory:add')"
@click="onAddFlowCategoryClick()"> @click="onAddFlowCategoryClick()">
新建 新建
</el-button> </el-button>
@@ -19,7 +20,7 @@
</el-form> </el-form>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-table ref="flowCategory" :data="flowCategoryWidget.dataList" size="mini" @sort-change="flowCategoryWidget.onSortChange" <el-table ref="flowCategory" :data="flowCategoryWidget.dataList" :size="defaultFormItemSize" @sort-change="flowCategoryWidget.onSortChange"
header-cell-class-name="table-header-gray"> header-cell-class-name="table-header-gray">
<el-table-column label="序号" header-align="center" align="center" type="index" width="55px" :index="flowCategoryWidget.getTableIndex" /> <el-table-column label="序号" header-align="center" align="center" type="index" width="55px" :index="flowCategoryWidget.getTableIndex" />
<el-table-column label="流程分类名称" prop="name"> <el-table-column label="流程分类名称" prop="name">
@@ -35,11 +36,11 @@
</el-table-column> </el-table-column>
<el-table-column label="操作" fixed="right"> <el-table-column label="操作" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button class="table-btn success" @click.stop="onEditFlowCategoryClick(scope.row)" type="text" size="mini" <el-button class="table-btn success" @click.stop="onEditFlowCategoryClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formFlowCategory:formFlowCategory:update')"> :disabled="!checkPermCodeExist('formFlowCategory:formFlowCategory:update')">
编辑 编辑
</el-button> </el-button>
<el-button class="table-btn delete" @click.stop="onDeleteFlowCategoryClick(scope.row)" type="text" size="mini" <el-button class="table-btn delete" @click.stop="onDeleteFlowCategoryClick(scope.row)" type="text" :size="defaultFormItemSize"
:disabled="!checkPermCodeExist('formFlowCategory:formFlowCategory:delete')"> :disabled="!checkPermCodeExist('formFlowCategory:formFlowCategory:delete')">
删除 删除
</el-button> </el-button>
@@ -95,6 +96,10 @@ export default {
} }
}, },
methods: { methods: {
onReset () {
this.$refs.formFlowCategory.resetFields();
this.refreshFormFlowCategory(true);
},
/** /**
* FlowCategory数据获取函数返回Promise * FlowCategory数据获取函数返回Promise
*/ */

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