xy 1 year ago
parent 6971cc0b9e
commit 784b18d6a5

@ -1,9 +1,12 @@
<template> <template>
<div> <div>
<vxe-modal <vxe-modal
:width="840" :width="defaultModalSize.width"
:height="600" :height="defaultModalSize.height"
show-zoom show-zoom
resize
transfer
esc-closable
:fullscreen="$store.getters.device === 'mobile'" :fullscreen="$store.getters.device === 'mobile'"
:z-index="zIndex" :z-index="zIndex"
v-model="showModal" v-model="showModal"
@ -23,10 +26,12 @@
<script> <script>
import { PopupManager } from "element-ui/lib/utils/popup"; import { PopupManager } from "element-ui/lib/utils/popup";
import {defaultModalSize} from "@/settings";
export default { export default {
data() { data() {
return { return {
defaultModalSize,
zIndex: PopupManager.nextZIndex(), zIndex: PopupManager.nextZIndex(),
showModal:false, showModal:false,
codeUri: "", codeUri: "",

@ -34,9 +34,10 @@ if (process.env.NODE_ENV === 'production') {
Vue.use(ElementUI) Vue.use(ElementUI)
// vxe-table // vxe-table
import { VxeUI, VxeUpload } from 'vxe-pc-ui' import { VxeUI, VxeUpload, VxeDatePicker } from 'vxe-pc-ui'
import 'vxe-pc-ui/lib/style.css' import 'vxe-pc-ui/lib/style.css'
Vue.use(VxeUpload) Vue.use(VxeUpload)
Vue.use(VxeDatePicker)
import VxeTable from 'vxe-table' import VxeTable from 'vxe-table'
import "vxe-table/styles/index.scss" import "vxe-table/styles/index.scss"
import VXETablePluginExportXLSX from 'vxe-table-plugin-export-xlsx' import VXETablePluginExportXLSX from 'vxe-table-plugin-export-xlsx'

@ -14,4 +14,10 @@ module.exports = {
*/ */
sidebarLogo: false, sidebarLogo: false,
uploadSize: 1024 * 1024 * 20, uploadSize: 1024 * 1024 * 20,
defaultModalSize: {
width: '76vw',
height: '80vh',
sWidth: '64vw',
sHeight: '72vh',
}
} }

@ -7,7 +7,7 @@ import { uploadSize } from "@/settings";
import axios from 'axios'; import axios from 'axios';
import { flowList } from "@/api/flow"; import { flowList } from "@/api/flow";
/** /**
* @param {String} device 'desktop' or 'mobile' * @param {String} device 'desktop' | 'mobile'
* @param {Object} info field参数 * @param {Object} info field参数
* @param {CreateElement} h * @param {CreateElement} h
* @param {Object} row 子表单的row * @param {Object} row 子表单的row
@ -949,6 +949,7 @@ export default function formBuilder(device, info, h, row, pWrite = false,pReadab
value: row ? row[info.name] : this.form[info.name], value: row ? row[info.name] : this.form[info.name],
clearable: true, clearable: true,
placeholder: info.help_text, placeholder: info.help_text,
rules: this.rules[info.name]
}, },
attrs: { attrs: {
placeholder: info.help_text, placeholder: info.help_text,
@ -971,6 +972,7 @@ export default function formBuilder(device, info, h, row, pWrite = false,pReadab
value: row ? row[info.name] : this.form[info.name], value: row ? row[info.name] : this.form[info.name],
clearable: true, clearable: true,
placeholder: info.help_text, placeholder: info.help_text,
rules: this.rules[info.name]
}, },
attrs: { attrs: {
placeholder: info.help_text, placeholder: info.help_text,
@ -994,6 +996,7 @@ export default function formBuilder(device, info, h, row, pWrite = false,pReadab
value: row ? row[info.name] : this.form[info.name], value: row ? row[info.name] : this.form[info.name],
clearable: true, clearable: true,
placeholder: info.help_text, placeholder: info.help_text,
rules: this.rules[info.name]
}, },
attrs: { attrs: {
placeholder: info.help_text, placeholder: info.help_text,
@ -1017,6 +1020,8 @@ export default function formBuilder(device, info, h, row, pWrite = false,pReadab
value: row ? row[info.name] : this.form[info.name], value: row ? row[info.name] : this.form[info.name],
clearable: true, clearable: true,
placeholder: info.help_text, placeholder: info.help_text,
rules: this.rules[info.name],
required: !!this.rules[info.name]?.find(j => j.required)
}, },
on: { on: {
click: (_) => { click: (_) => {
@ -1042,6 +1047,7 @@ export default function formBuilder(device, info, h, row, pWrite = false,pReadab
value: typeof findSelect === "object" ? findSelect.name : findSelect, value: typeof findSelect === "object" ? findSelect.name : findSelect,
clearable: true, clearable: true,
placeholder: info.help_text, placeholder: info.help_text,
rules: this.rules[info.name]
}, },
on: { on: {
click: (_) => { click: (_) => {
@ -1072,6 +1078,7 @@ export default function formBuilder(device, info, h, row, pWrite = false,pReadab
value: (findChoice instanceof Array) ? (findChoice.map(i => typeof i === "object" ? i.name : i).toString()) : (typeof findChoice === "object" ? findChoice.name : findChoice), value: (findChoice instanceof Array) ? (findChoice.map(i => typeof i === "object" ? i.name : i).toString()) : (typeof findChoice === "object" ? findChoice.name : findChoice),
clearable: true, clearable: true,
placeholder: info.help_text, placeholder: info.help_text,
rules: this.rules[info.name]
}, },
on: { on: {
click: (_) => { click: (_) => {
@ -1092,6 +1099,7 @@ export default function formBuilder(device, info, h, row, pWrite = false,pReadab
formItem = h('van-cell',{ formItem = h('van-cell',{
props: { props: {
title: info.label, title: info.label,
rules: this.rules[info.name]
} }
},[ },[
h( h(
@ -1236,6 +1244,7 @@ export default function formBuilder(device, info, h, row, pWrite = false,pReadab
value: typeof findFlow === "object" ? (findFlow.name || findFlow.title) : findFlow, value: typeof findFlow === "object" ? (findFlow.name || findFlow.title) : findFlow,
clearable: true, clearable: true,
placeholder: info.help_text, placeholder: info.help_text,
rules: this.rules[info.name]
}, },
on: { on: {
click: (_) => { click: (_) => {
@ -1306,6 +1315,7 @@ export default function formBuilder(device, info, h, row, pWrite = false,pReadab
h( h(
"van-form", "van-form",
{ {
ref: "vanForm",
props: { props: {
"scroll-to-error": true, "scroll-to-error": true,
}, },

@ -5,9 +5,13 @@
show-footer show-footer
title="值班管理" title="值班管理"
show-confirm-button show-confirm-button
:width="600" :width="defaultModalSize.width"
:height="400" :height="defaultModalSize.height"
esc-closable esc-closable
transfer
show-zoom
resize
:z-index="zIndex"
:fullscreen="$store.getters.device === 'mobile'" :fullscreen="$store.getters.device === 'mobile'"
@input="e => $emit('update:isShow',e)" @input="e => $emit('update:isShow',e)"
> >
@ -48,6 +52,9 @@
<script> <script>
import UserPicker from "@/components/UserPicker/index.vue"; import UserPicker from "@/components/UserPicker/index.vue";
import { save } from '@/api/onDutySchedules' import { save } from '@/api/onDutySchedules'
import {defaultModalSize} from "@/settings";
import { PopupManager } from "element-ui/lib/utils/popup";
export default { export default {
components: { components: {
UserPicker UserPicker
@ -61,6 +68,8 @@ export default {
}, },
data() { data() {
return { return {
zIndex: PopupManager.nextZIndex(),
defaultModalSize,
loading: false, loading: false,
form: { form: {
date: '', date: '',
@ -99,6 +108,13 @@ export default {
} }
}) })
} }
},
watch: {
isShow(newVal) {
if(newVal) {
this.zIndex = PopupManager.nextZIndex()
}
}
} }
} }
</script> </script>

@ -6,8 +6,11 @@
show-footer show-footer
title="公共文件柜栏目" title="公共文件柜栏目"
show-confirm-button show-confirm-button
:width="600" resize
:height="400" show-zoom
transfer
:width="defaultModalSize.sWidth"
:height="defaultModalSize.sHeight"
:fullscreen="$store.getters.device === 'mobile'" :fullscreen="$store.getters.device === 'mobile'"
esc-closable esc-closable
@input="e => $emit('update:isShow',e)" @input="e => $emit('update:isShow',e)"
@ -53,6 +56,7 @@
import UserPicker from "@/components/UserPicker/index.vue"; import UserPicker from "@/components/UserPicker/index.vue";
import { menuSave } from '@/api/document' import { menuSave } from '@/api/document'
import { PopupManager } from "element-ui/lib/utils/popup"; import { PopupManager } from "element-ui/lib/utils/popup";
import {defaultModalSize} from "@/settings";
export default { export default {
components: { components: {
UserPicker UserPicker
@ -70,6 +74,7 @@ export default {
}, },
data() { data() {
return { return {
defaultModalSize,
zIndex: PopupManager.nextZIndex(), zIndex: PopupManager.nextZIndex(),
loading: false, loading: false,
form: { form: {

@ -3,10 +3,14 @@
<vxe-modal <vxe-modal
:value="isShow" :value="isShow"
show-footer show-footer
transfer
:z-index="zIndex"
resize
show-zoom
title="会议室" title="会议室"
show-confirm-button show-confirm-button
:width="600" :width="defaultModalSize.sWidth"
:height="400" :height="defaultModalSize.sHeight"
esc-closable esc-closable
:fullscreen="$store.getters.device === 'mobile'" :fullscreen="$store.getters.device === 'mobile'"
@input="e => $emit('update:isShow',e)" @input="e => $emit('update:isShow',e)"
@ -29,6 +33,9 @@
<script> <script>
import { save } from '@/api/meetingRoom' import { save } from '@/api/meetingRoom'
import { defaultModalSize } from "@/settings";
import { PopupManager } from 'element-ui/lib/utils/popup'
export default { export default {
props: { props: {
isShow: { isShow: {
@ -39,7 +46,9 @@ export default {
}, },
data() { data() {
return { return {
defaultModalSize,
loading: false, loading: false,
zIndex: PopupManager.nextZIndex(),
form: { form: {
name: '', name: '',
myindex: 0 myindex: 0
@ -66,6 +75,13 @@ export default {
} }
}) })
} }
},
watch: {
isShow(newVal) {
if (newVal) {
this.zIndex = PopupManager.nextZIndex()
}
}
} }
} }
</script> </script>

@ -5,8 +5,12 @@
show-footer show-footer
title="特殊日期" title="特殊日期"
show-confirm-button show-confirm-button
:width="600" transfer
:height="400" show-zoom
resize
:z-index="zIndex"
:width="defaultModalSize.sWidth"
:height="defaultModalSize.sHeight"
esc-closable esc-closable
:fullscreen="$store.getters.device === 'mobile'" :fullscreen="$store.getters.device === 'mobile'"
@input="e => $emit('update:isShow',e)" @input="e => $emit('update:isShow',e)"
@ -35,6 +39,9 @@
<script> <script>
import { save } from '@/api/specialDays' import { save } from '@/api/specialDays'
import {defaultModalSize} from "@/settings";
import { PopupManager } from 'element-ui/lib/utils/popup'
export default { export default {
props: { props: {
isShow: { isShow: {
@ -45,6 +52,8 @@ export default {
}, },
data() { data() {
return { return {
defaultModalSize,
zIndex: PopupManager.nextZIndex(),
loading: false, loading: false,
form: { form: {
date: '', date: '',
@ -80,6 +89,13 @@ export default {
} }
}) })
} }
},
watch: {
isShow(newVal) {
if (newVal) {
this.zIndex = PopupManager.nextZIndex()
}
}
} }
} }
</script> </script>

@ -1,13 +1,17 @@
<template> <template>
<div> <div>
<vxe-modal <vxe-modal
:z-index="zIndex"
:value="isShow" :value="isShow"
show-footer show-footer
title="车辆证照管理" title="车辆证照管理"
show-confirm-button show-confirm-button
:width="840" :width="defaultModalSize.width"
:height="660" :height="defaultModalSize.height"
esc-closable esc-closable
transfer
show-zoom
resize
:fullscreen="$store.getters.device === 'mobile'" :fullscreen="$store.getters.device === 'mobile'"
@input="e => $emit('update:isShow',e)" @input="e => $emit('update:isShow',e)"
> >
@ -67,6 +71,9 @@
<script> <script>
import { getToken } from '@/utils/auth' import { getToken } from '@/utils/auth'
import { save } from '@/api/vehicleCertificate' import { save } from '@/api/vehicleCertificate'
import {defaultModalSize} from "@/settings";
import { PopupManager } from "element-ui/lib/utils/popup";
export default { export default {
props: { props: {
isShow: { isShow: {
@ -83,6 +90,8 @@ export default {
return { return {
fileList: [], fileList: [],
action: process.env.VUE_APP_UPLOAD_API, action: process.env.VUE_APP_UPLOAD_API,
defaultModalSize,
zIndex: PopupManager.nextZIndex(),
loading: false, loading: false,
form: { form: {
@ -138,6 +147,13 @@ export default {
} }
}) })
} }
},
watch: {
isShow(newVal) {
if(newVal) {
this.zIndex = PopupManager.nextZIndex()
}
}
} }
} }
</script> </script>

@ -29,8 +29,11 @@
:z-index="zIndex" :z-index="zIndex"
title="打卡详情" title="打卡详情"
show-confirm-button show-confirm-button
:width="680" transfer
:height="540" show-zoom
resize
:width="defaultModalSize.sWidth"
:height="defaultModalSize.sHeight"
esc-closable esc-closable
:fullscreen="$store.getters.device === 'mobile'" :fullscreen="$store.getters.device === 'mobile'"
> >
@ -116,11 +119,13 @@
<script> <script>
import { index } from '@/api/attendance' import { index } from '@/api/attendance'
import { PopupManager } from "element-ui/lib/utils/popup"; import { PopupManager } from "element-ui/lib/utils/popup";
import {defaultModalSize} from "@/settings";
export default { export default {
data() { data() {
return { return {
isShow: false, isShow: false,
defaultModalSize,
zIndex: PopupManager.nextZIndex(), zIndex: PopupManager.nextZIndex(),
day: new Date(), day: new Date(),

@ -42,9 +42,12 @@
:z-index="zIndex" :z-index="zIndex"
title="外勤打卡" title="外勤打卡"
show-confirm-button show-confirm-button
:width="560" :width="defaultModalSize.sWidth"
:height="440" :height="defaultModalSize.sHeight"
esc-closable esc-closable
transfer
show-zoom
resize
:fullscreen="$store.getters.device === 'mobile'" :fullscreen="$store.getters.device === 'mobile'"
> >
<div style="line-height: 3;color: #333;font-weight: 600;">打卡照片</div> <div style="line-height: 3;color: #333;font-weight: 600;">打卡照片</div>
@ -72,7 +75,7 @@ import MonthStatics from './components/MonthStatics'
import axios from "axios"; import axios from "axios";
import * as uni from "@/assets/uni.webview.1.5.6"; import * as uni from "@/assets/uni.webview.1.5.6";
import { PopupManager } from "element-ui/lib/utils/popup"; import { PopupManager } from "element-ui/lib/utils/popup";
import { uploadSize } from "@/settings" import {defaultModalSize, uploadSize} from "@/settings"
export default { export default {
components: { components: {
MonthStatics MonthStatics
@ -86,6 +89,7 @@ export default {
action: process.env.VUE_APP_UPLOAD_API, action: process.env.VUE_APP_UPLOAD_API,
fileList: [], fileList: [],
isShow: false, isShow: false,
defaultModalSize,
zIndex: PopupManager.nextZIndex(), zIndex: PopupManager.nextZIndex(),
imageId: '', imageId: '',
remark: '', remark: '',

@ -5,9 +5,10 @@
show-footer show-footer
title="特殊日期" title="特殊日期"
show-confirm-button show-confirm-button
:width="600" :width="defaultModalSize.sWidth"
:height="400" :height="defaultModalSize.sHeight"
esc-closable esc-closable
transfer
:fullscreen="$store.getters.device === 'mobile'" :fullscreen="$store.getters.device === 'mobile'"
@input="e => $emit('update:isShow',e)" @input="e => $emit('update:isShow',e)"
> >
@ -35,6 +36,7 @@
<script> <script>
import { save } from '@/api/config' import { save } from '@/api/config'
import {defaultModalSize} from "@/settings";
export default { export default {
props: { props: {
isShow: { isShow: {
@ -45,6 +47,7 @@ export default {
}, },
data() { data() {
return { return {
defaultModalSize,
loading: false, loading: false,
form: { form: {
name: '', name: '',

@ -259,10 +259,11 @@
:z-index="zIndex" :z-index="zIndex"
transfer transfer
show-zoom show-zoom
resize
:fullscreen="$store.getters.device === 'mobile'" :fullscreen="$store.getters.device === 'mobile'"
title="办理" title="办理"
width="86vw" :width="defaultModalSize.width"
height="80vh" :height="defaultModalSize.height"
esc-closable esc-closable
> >
<iframe <iframe
@ -284,6 +285,7 @@ import { flow } from "@/api/flow";
import { index as configIndex } from "@/api/config"; import { index as configIndex } from "@/api/config";
import { index } from "@/api/attendance"; import { index } from "@/api/attendance";
import {isExternal} from "@/utils/validate"; import {isExternal} from "@/utils/validate";
import {defaultModalSize} from "@/settings";
export default { export default {
name: "Dashboard", name: "Dashboard",
components: { components: {
@ -291,6 +293,7 @@ export default {
}, },
data() { data() {
return { return {
defaultModalSize,
modalUrl: "", modalUrl: "",
zIndex: PopupManager.nextZIndex(), zIndex: PopupManager.nextZIndex(),
isShowModal: false, isShowModal: false,

@ -6,8 +6,11 @@
show-footer show-footer
title="公共文件柜" title="公共文件柜"
show-confirm-button show-confirm-button
:width="600" transfer
:height="400" show-zoom
resize
:width="defaultModalSize.width"
:height="defaultModalSize.height"
:fullscreen="$store.getters.device === 'mobile'" :fullscreen="$store.getters.device === 'mobile'"
esc-closable esc-closable
@input="e => $emit('update:isShow',e)" @input="e => $emit('update:isShow',e)"
@ -62,7 +65,7 @@
import { getToken } from '@/utils/auth' import { getToken } from '@/utils/auth'
import { save } from '@/api/document' import { save } from '@/api/document'
import { PopupManager } from "element-ui/lib/utils/popup"; import { PopupManager } from "element-ui/lib/utils/popup";
import { uploadSize } from "@/settings" import {defaultModalSize, uploadSize} from "@/settings"
import { formatFileSize } from "@/utils" import { formatFileSize } from "@/utils"
export default { export default {
props: { props: {
@ -86,6 +89,7 @@ export default {
action: process.env.VUE_APP_UPLOAD_API, action: process.env.VUE_APP_UPLOAD_API,
fileList: [], fileList: [],
defaultModalSize,
zIndex: PopupManager.nextZIndex(), zIndex: PopupManager.nextZIndex(),
loading: false, loading: false,
form: { form: {

@ -4,6 +4,7 @@ import formBuilder from "@/utils/formBuilder";
import {PopupManager} from "element-ui/lib/utils/popup"; import {PopupManager} from "element-ui/lib/utils/popup";
import request from '@/utils/request' import request from '@/utils/request'
import moment from "moment/moment"; import moment from "moment/moment";
import {defaultModalSize} from "@/settings";
export default { export default {
props: { props: {
@ -57,6 +58,7 @@ export default {
data() { data() {
return { return {
// modal // modal
defaultModalSize,
zIndex: PopupManager.nextZIndex(), zIndex: PopupManager.nextZIndex(),
isShowModal: false, isShowModal: false,
modalRender: () => {}, modalRender: () => {},
@ -187,7 +189,7 @@ export default {
for (let i = 0;i < subFormName.length;i++) { for (let i = 0;i < subFormName.length;i++) {
let $subForm = this.$refs[`subForm-${subFormName[i]}`] let $subForm = this.$refs[`subForm-${subFormName[i]}`]
if ($subForm) { if ($subForm) {
const errMap = await this.$refs[`subForm-${subFormName[i]}`].validate() const errMap = await this.$refs[`subForm-${subFormName[i]}`].validate(true)
if (errMap) { if (errMap) {
throw new Error(errMap) throw new Error(errMap)
} }
@ -263,8 +265,11 @@ export default {
props: { props: {
zIndex: this.zIndex, zIndex: this.zIndex,
value: this.isShowModal, value: this.isShowModal,
height: 640, height: defaultModalSize.height,
width: 860, width: defaultModalSize.width,
resize: true,
transfer: true,
"show-zoom": true,
"esc-closable": true, "esc-closable": true,
}, },
on: { on: {

@ -102,7 +102,13 @@ export default {
} }
}, },
methods: { methods: {
request request,
async validate() {
const $vanForm = this.$refs['vanForm']
if ($vanForm) {
await $vanForm.validate()
}
},
}, },
computed: {}, computed: {},
watch: { watch: {
@ -276,7 +282,8 @@ export default {
props: { props: {
zIndex: this.zIndex, zIndex: this.zIndex,
value: this.isShowModal, value: this.isShowModal,
fullscreen: true fullscreen: true,
transfer: true
}, },
on: { on: {
input: e => { input: e => {

@ -8,8 +8,10 @@
show-zoom show-zoom
:fullscreen="$store.getters.device === 'mobile'" :fullscreen="$store.getters.device === 'mobile'"
show-confirm-button show-confirm-button
:width="640" transfer
:height="540" resize
:width="defaultModalSize.sWidth"
:height="defaultModalSize.sHeight"
@input="e => $emit('update:visible',e)" @input="e => $emit('update:visible',e)"
> >
<div> <div>
@ -108,6 +110,7 @@
<script> <script>
import { getNextNode, getNextNodeUsers, assign, preShare } from "@/api/flow"; import { getNextNode, getNextNodeUsers, assign, preShare } from "@/api/flow";
import { PopupManager } from 'element-ui/lib/utils/popup' import { PopupManager } from 'element-ui/lib/utils/popup'
import {defaultModalSize} from "@/settings";
export default { export default {
props: { props: {
@ -127,6 +130,7 @@ export default {
isIndeterminate: false, isIndeterminate: false,
checkAll: false, checkAll: false,
defaultModalSize,
zIndex: PopupManager.nextZIndex(), zIndex: PopupManager.nextZIndex(),
form: { form: {
cc_users: [], cc_users: [],

@ -5,10 +5,13 @@
:z-index="zIndex" :z-index="zIndex"
title="转办" title="转办"
show-zoom show-zoom
transfer
resize
esc-closable
:fullscreen="$store.getters.device === 'mobile'" :fullscreen="$store.getters.device === 'mobile'"
show-confirm-button show-confirm-button
:width="760" :width="defaultModalSize.width"
:height="540" :height="defaultModalSize.height"
@input="e => $emit('update:isShow',e)"> @input="e => $emit('update:isShow',e)">
<div> <div>
<div> <div>
@ -45,6 +48,7 @@
<script> <script>
import { preForward, forward } from '@/api/flow' import { preForward, forward } from '@/api/flow'
import { PopupManager } from 'element-ui/lib/utils/popup' import { PopupManager } from 'element-ui/lib/utils/popup'
import {defaultModalSize} from "@/settings";
export default { export default {
props: { props: {
@ -57,6 +61,7 @@ export default {
}, },
data() { data() {
return { return {
defaultModalSize,
zIndex: PopupManager.nextZIndex(), zIndex: PopupManager.nextZIndex(),
form: { form: {
id: "", id: "",

@ -5,10 +5,12 @@
:z-index="zIndex" :z-index="zIndex"
title="退回" title="退回"
show-zoom show-zoom
resize
transfer
:fullscreen="$store.getters.device === 'mobile'" :fullscreen="$store.getters.device === 'mobile'"
show-confirm-button show-confirm-button
:width="760" :width="defaultModalSize.sWidth"
:height="540" :height="defaultModalSize.sHeight"
@input="e => $emit('update:isShow',e)"> @input="e => $emit('update:isShow',e)">
<div> <div>
@ -41,7 +43,7 @@
<script> <script>
import { flowLogs, rollback } from '@/api/flow' import { flowLogs, rollback } from '@/api/flow'
import { PopupManager } from 'element-ui/lib/utils/popup' import { PopupManager } from 'element-ui/lib/utils/popup'
import { defaultModalSize } from '@/settings'
export default { export default {
props: { props: {
isShow: { isShow: {
@ -53,6 +55,7 @@ export default {
}, },
data() { data() {
return { return {
defaultModalSize,
zIndex: PopupManager.nextZIndex(), zIndex: PopupManager.nextZIndex(),
form: { form: {
id: "", id: "",

@ -6,8 +6,10 @@
title="抄送" title="抄送"
show-zoom show-zoom
show-confirm-button show-confirm-button
:width="800" transfer
:height="600" resize
:width="defaultModalSize.width"
:height="defaultModalSize.height"
@input="e => $emit('update:isShow',e)"> @input="e => $emit('update:isShow',e)">
<div> <div>
<el-tag effect="dark">{{ flow.custom_model ? flow.custom_model.name : ''}}流水号{{ flow.id }}抄送</el-tag> <el-tag effect="dark">{{ flow.custom_model ? flow.custom_model.name : ''}}流水号{{ flow.id }}抄送</el-tag>
@ -38,6 +40,7 @@
<script> <script>
import { preShare, share } from '@/api/flow' import { preShare, share } from '@/api/flow'
import { PopupManager } from 'element-ui/lib/utils/popup' import { PopupManager } from 'element-ui/lib/utils/popup'
import {defaultModalSize} from "@/settings";
export default { export default {
props: { props: {
@ -50,6 +53,7 @@ export default {
}, },
data() { data() {
return { return {
defaultModalSize,
zIndex: PopupManager.nextZIndex(), zIndex: PopupManager.nextZIndex(),
config: { config: {
cc_users: [] cc_users: []

@ -21,6 +21,7 @@
v-for="step in config.logs" v-for="step in config.logs"
:title="step.node.name" :title="step.node.name"
:status="step.status !== -1 ? 'success' : 'error'" :status="step.status !== -1 ? 'success' : 'error'"
icon="el-icon-circle-check"
></el-step> ></el-step>
</template> </template>
<el-step <el-step
@ -29,12 +30,16 @@
icon="el-icon-edit" icon="el-icon-edit"
></el-step> ></el-step>
<el-step <el-step
v-for="nextNode in node.nextNodes"
:key="nextNode.id"
:title="nextNode.name"
icon="el-icon-right" icon="el-icon-right"
status="wait" status="wait"
></el-step> >
<template #title>
<div style="max-width: 180px;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;">
<span v-for="(nextNode, index) in ((node.nextNodes && node.nextNodes instanceof Array) ? node.nextNodes : [])">{{ index === 0 ? '' : ',' }}{{ nextNode.name }}</span>
</div>
<div v-if="node.nextNodes">{{ node.nextNodes.length }}</div>
</template>
</el-step>
</el-steps> </el-steps>
<el-divider></el-divider> <el-divider></el-divider>
@ -445,6 +450,8 @@ export default {
} }
}, },
trigger: "blur", trigger: "blur",
pattern: validation.get(rule),
message: `${field.label}必须为${validationName.get(rule)}`,
}; };
} }
}); });
@ -473,6 +480,8 @@ export default {
}) })
}, },
trigger: "blur", trigger: "blur",
pattern: validation.get(rule),
message: `${field.label}必须为${validationName.get(rule)}`,
}; };
} }
}); });
@ -700,6 +709,13 @@ export default {
} }
copyForm = deepCopy(this.$refs["desktopForm"].form); copyForm = deepCopy(this.$refs["desktopForm"].form);
} else { } else {
try {
await this.$refs['mobileForm'].validate()
} catch (err) {
console.warn(err)
this.$message.warning('数据校验失败')
return
}
copyForm = deepCopy(this.$refs["mobileForm"].form); copyForm = deepCopy(this.$refs["mobileForm"].form);
} }
const uploadHandler = (form) => { const uploadHandler = (form) => {
@ -811,9 +827,9 @@ export default {
return this.config?.currentNode || {}; return this.config?.currentNode || {};
}, },
scriptContent() { scriptContent() {
if (this.config?.customModel?.view_js && this.$route.query.flow_id) { if (this.config?.customModel?.view_js && this.$route.query.flow_id && /\/detail/.test(this.$route.path)) {
return this.config?.customModel?.view_js; return this.config?.customModel?.view_js;
} else if (this.config?.customModel?.js && !this.$route.query.flow_id) { } else if (this.config?.customModel?.js) {
return this.config?.customModel?.js; return this.config?.customModel?.js;
} }
}, },
@ -853,8 +869,9 @@ export default {
::v-deep .el-step__icon.is-icon { ::v-deep .el-step__icon.is-icon {
border-radius: 100%; border-radius: 100%;
box-shadow: 2px 0 8px 0 rgba(29, 35, 41, 0.05); box-shadow: 2px 0 8px 0 rgba(29, 35, 41, 0.05);
width: 40px; width: 36px;
height: 40px; height: 36px;
border: solid 2px;
} }
::v-deep .el-step.is-center .el-step__line { ::v-deep .el-step.is-center .el-step__line {
top: 50%; top: 50%;
@ -886,6 +903,11 @@ export default {
margin: 4px 6px; margin: 4px 6px;
} }
} }
::v-deep .el-steps--horizontal {
display: flex;
flex-wrap: wrap;
}
} }
</style> </style>
<style lang="scss"> <style lang="scss">

@ -109,7 +109,6 @@
title="流水号" title="流水号"
></vxe-column> ></vxe-column>
<vxe-column <vxe-column
v-if="$route.params.type === 'all'"
width="80" width="80"
title="发起人" title="发起人"
align="center" align="center"

@ -50,7 +50,7 @@
<script> <script>
import * as echarts from 'echarts' import * as echarts from 'echarts'
import { statistics } from '@/api/flow' import { statistics } from '@/api/flow'
import { index } from '@/api/department' import { departmentListNoAuth } from '@/api/common'
import { debounce } from '@/utils' import { debounce } from '@/utils'
export default { export default {
@ -305,7 +305,7 @@ export default {
}, },
async getDepartments() { async getDepartments() {
try { try {
this.departments = await index() this.departments = await departmentListNoAuth()
} catch (e) { } catch (e) {
console.error(e) console.error(e)
} }

@ -6,9 +6,12 @@
:z-index="zIndex" :z-index="zIndex"
title="会议使用审核" title="会议使用审核"
show-confirm-button show-confirm-button
:width="640" :width="defaultModalSize.width"
:height="580" :height="defaultModalSize.height"
esc-closable esc-closable
transfer
show-zoom
resize
:fullscreen="$store.getters.device === 'mobile'" :fullscreen="$store.getters.device === 'mobile'"
@input="(e) => $emit('update:isShow', e)" @input="(e) => $emit('update:isShow', e)"
> >
@ -121,7 +124,7 @@ import { getToken } from "@/utils/auth";
import { save } from "@/api/meeting"; import { save } from "@/api/meeting";
import { PopupManager } from "element-ui/lib/utils/popup"; import { PopupManager } from "element-ui/lib/utils/popup";
import { userListNoAuth as index } from '@/api/common'; import { userListNoAuth as index } from '@/api/common';
import { uploadSize } from "@/settings"; import {defaultModalSize, uploadSize} from "@/settings";
import { formatFileSize } from "@/utils" import { formatFileSize } from "@/utils"
export default { export default {
props: { props: {
@ -144,6 +147,7 @@ export default {
return { return {
uploadSize, uploadSize,
users: [], users: [],
defaultModalSize,
zIndex: PopupManager.nextZIndex(), zIndex: PopupManager.nextZIndex(),
loading: false, loading: false,
form: { form: {

@ -6,9 +6,12 @@
:z-index="zIndex" :z-index="zIndex"
title="发布通知或提醒" title="发布通知或提醒"
show-confirm-button show-confirm-button
:width="740" :width="defaultModalSize.width"
:height="620" :height="defaultModalSize.height"
esc-closable esc-closable
transfer
show-zoom
resize
:fullscreen="$store.getters.device === 'mobile'" :fullscreen="$store.getters.device === 'mobile'"
@input="(e) => $emit('update:isShow', e)" @input="(e) => $emit('update:isShow', e)"
> >
@ -111,6 +114,7 @@ import { getToken } from "@/utils/auth";
import { save, show } from "@/api/notice"; import { save, show } from "@/api/notice";
import { PopupManager } from "element-ui/lib/utils/popup"; import { PopupManager } from "element-ui/lib/utils/popup";
import { userListNoAuth as index } from "@/api/common"; import { userListNoAuth as index } from "@/api/common";
import {defaultModalSize} from "@/settings";
export default { export default {
props: { props: {
isShow: { isShow: {
@ -124,6 +128,7 @@ export default {
type: 'add', type: 'add',
id: '', id: '',
users: [], users: [],
defaultModalSize,
zIndex: PopupManager.nextZIndex(), zIndex: PopupManager.nextZIndex(),
loading: false, loading: false,
form: { form: {

@ -5,9 +5,12 @@
show-footer show-footer
title="车船管理" title="车船管理"
show-confirm-button show-confirm-button
:width="840" :width="defaultModalSize.width"
:height="620" :height="defaultModalSize.height"
esc-closable esc-closable
transfer
show-zoom
resize
@input="e => $emit('update:isShow',e)" @input="e => $emit('update:isShow',e)"
> >
<el-form ref="elForm" :model="form" :rules="rules" label-position="top" label-width="100"> <el-form ref="elForm" :model="form" :rules="rules" label-position="top" label-width="100">
@ -84,6 +87,7 @@
<script> <script>
import { getToken } from '@/utils/auth' import { getToken } from '@/utils/auth'
import { save } from '@/api/vehicle' import { save } from '@/api/vehicle'
import {defaultModalSize} from "@/settings";
export default { export default {
props: { props: {
departments: { departments: {
@ -98,6 +102,7 @@ export default {
}, },
data() { data() {
return { return {
defaultModalSize,
action: process.env.VUE_APP_UPLOAD_API, action: process.env.VUE_APP_UPLOAD_API,
fileList: [], fileList: [],
loading: false, loading: false,

Loading…
Cancel
Save