| | |
| | | export const selectListFormManage = (): AxiosPromise<FormManageVO[]> => { |
| | | return request({ |
| | | url: '/workflow/formManage/list/selectList', |
| | | method: 'get', |
| | | method: 'get' |
| | | }); |
| | | }; |
| | | |
| | |
| | | */ |
| | | export const getInfo = (id: string): AxiosPromise<ModelForm> => { |
| | | return request({ |
| | | url: '/workflow/model/getInfo/'+id, |
| | | url: '/workflow/model/getInfo/' + id, |
| | | method: 'get' |
| | | }); |
| | | }; |
| | |
| | | method: 'post', |
| | | data: data |
| | | }); |
| | | }; |
| | | }; |
| | |
| | | export interface ModelForm { |
| | | id: string, |
| | | id: string; |
| | | name: string; |
| | | key: string; |
| | | categoryCode: string; |
| | | xml:string, |
| | | svg:string, |
| | | xml: string; |
| | | svg: string; |
| | | description: string; |
| | | } |
| | | |
| | |
| | | * 表单管理 |
| | | */ |
| | | wfFormManageVo: FormManageVO; |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | |
| | | let real_src_list = props.src.split(','); |
| | | let srcList: string[] = []; |
| | | real_src_list.forEach((item: string) => { |
| | | if(item.trim() === '') { |
| | | if (item.trim() === '') { |
| | | return; |
| | | } |
| | | return srcList.push(item); |
| | |
| | | openDialog, |
| | | closeDialog |
| | | }; |
| | | }; |
| | | }; |
| | |
| | | <router-view v-slot="{ Component, route }"> |
| | | <transition :enter-active-class="animante" mode="out-in"> |
| | | <div> |
| | | <keep-alive :include="tagsViewStore.cachedViews" v-if="!route.meta.noCache"> |
| | | <component v-if="!route.meta.link" :is="Component" :key="route.path" /> |
| | | <keep-alive v-if="!route.meta.noCache" :include="tagsViewStore.cachedViews"> |
| | | <component :is="Component" v-if="!route.meta.link" :key="route.path" /> |
| | | </keep-alive> |
| | | <component v-if="!route.meta.link && route.meta.noCache" :is="Component" :key="route.path" /> |
| | | <component :is="Component" v-if="!route.meta.link && route.meta.noCache" :key="route.path" /> |
| | | </div> |
| | | </transition> |
| | | </router-view> |
| | |
| | | const state = route.query.state as string; |
| | | const source = route.query.source as string; |
| | | const stateJson = JSON.parse(atob(state)); |
| | | const tenantId = stateJson.tenantId as string ? stateJson.tenantId as string : '000000'; |
| | | const tenantId = (stateJson.tenantId as string) ? (stateJson.tenantId as string) : '000000'; |
| | | const domain = stateJson.domain as string; |
| | | |
| | | const processResponse = async (res: any) => { |
| | |
| | | next(); |
| | | } else { |
| | | const redirect = encodeURIComponent(to.fullPath || '/'); |
| | | next(`/login?redirect=${redirect}`) // 否则全部重定向到登录页 |
| | | next(`/login?redirect=${redirect}`); // 否则全部重定向到登录页 |
| | | NProgress.done(); |
| | | } |
| | | } |
| | |
| | | <el-input v-model="queryParams.userName" placeholder="请输入用户名称" clearable @keyup.enter="handleQuery" /> |
| | | </el-form-item> |
| | | <el-form-item label="状态" prop="status"> |
| | | <el-select v-model="queryParams.status" placeholder="登录状态" clearable > |
| | | <el-select v-model="queryParams.status" placeholder="登录状态" clearable> |
| | | <el-option v-for="dict in sys_common_status" :key="dict.value" :label="dict.label" :value="dict.value" /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | <el-input v-model="queryParams.operName" placeholder="请输入操作人员" clearable @keyup.enter="handleQuery" /> |
| | | </el-form-item> |
| | | <el-form-item label="类型" prop="businessType"> |
| | | <el-select v-model="queryParams.businessType" placeholder="操作类型" clearable > |
| | | <el-select v-model="queryParams.businessType" placeholder="操作类型" clearable> |
| | | <el-option v-for="dict in sys_oper_type" :key="dict.value" :label="dict.label" :value="dict.value" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="状态" prop="status"> |
| | | <el-select v-model="queryParams.status" placeholder="操作状态" clearable > |
| | | <el-select v-model="queryParams.status" placeholder="操作状态" clearable> |
| | | <el-option v-for="dict in sys_common_status" :key="dict.value" :label="dict.label" :value="dict.value" /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | <el-input v-model="queryParams.clientSecret" placeholder="请输入客户端秘钥" clearable @keyup.enter="handleQuery" /> |
| | | </el-form-item> |
| | | <el-form-item label="状态" prop="status"> |
| | | <el-select v-model="queryParams.status" placeholder="状态" clearable > |
| | | <el-select v-model="queryParams.status" placeholder="状态" clearable> |
| | | <el-option v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.label" :value="dict.value" /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | <el-input v-model="queryParams.configKey" placeholder="请输入参数键名" clearable @keyup.enter="handleQuery" /> |
| | | </el-form-item> |
| | | <el-form-item label="系统内置" prop="configType"> |
| | | <el-select v-model="queryParams.configType" placeholder="系统内置" clearable > |
| | | <el-select v-model="queryParams.configType" placeholder="系统内置" clearable> |
| | | <el-option v-for="dict in sys_yes_no" :key="dict.value" :label="dict.label" :value="dict.value" /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | <el-input v-model="queryParams.deptCategory" placeholder="请输入类别编码" clearable style="width: 240px" @keyup.enter="handleQuery" /> |
| | | </el-form-item> |
| | | <el-form-item label="状态" prop="status"> |
| | | <el-select v-model="queryParams.status" placeholder="部门状态" clearable > |
| | | <el-select v-model="queryParams.status" placeholder="部门状态" clearable> |
| | | <el-option v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.label" :value="dict.value" /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | <el-input v-model="queryParams.menuName" placeholder="请输入菜单名称" clearable @keyup.enter="handleQuery" /> |
| | | </el-form-item> |
| | | <el-form-item label="状态" prop="status"> |
| | | <el-select v-model="queryParams.status" placeholder="菜单状态" clearable > |
| | | <el-select v-model="queryParams.status" placeholder="菜单状态" clearable> |
| | | <el-option v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.label" :value="dict.value" /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | <el-form-item label="文件后缀" prop="fileSuffix"> |
| | | <el-input v-model="queryParams.fileSuffix" placeholder="请输入文件后缀" clearable @keyup.enter="handleQuery" /> |
| | | </el-form-item> |
| | | <el-form-item label="创建时间" style="width: 308px;"> |
| | | <el-form-item label="创建时间" style="width: 308px"> |
| | | <el-date-picker |
| | | v-model="dateRangeCreateTime" |
| | | value-format="YYYY-MM-DD HH:mm:ss" |
| | |
| | | showTable.value = true; |
| | | }; |
| | | function checkFileSuffix(fileSuffix: string | string[]) { |
| | | const arr = [".png", ".jpg", ".jpeg"]; |
| | | const arr = ['.png', '.jpg', '.jpeg']; |
| | | const suffixArray = Array.isArray(fileSuffix) ? fileSuffix : [fileSuffix]; |
| | | return suffixArray.some(suffix => arr.includes(suffix.toLowerCase())); |
| | | return suffixArray.some((suffix) => arr.includes(suffix.toLowerCase())); |
| | | } |
| | | /** 取消按钮 */ |
| | | function cancel() { |
| | |
| | | <el-input v-model="queryParams.roleKey" placeholder="请输入权限字符" clearable @keyup.enter="handleQuery" /> |
| | | </el-form-item> |
| | | <el-form-item label="状态" prop="status"> |
| | | <el-select v-model="queryParams.status" placeholder="角色状态" clearable > |
| | | <el-select v-model="queryParams.status" placeholder="角色状态" clearable> |
| | | <el-option v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.label" :value="dict.value" /> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| | | <template #default="scope"> |
| | | <el-tooltip content="删除" placement="top"> |
| | | <el-button link type="primary" icon="Delete" @click="handldDelOnline(scope.row)"> |
| | | </el-button> |
| | | <el-button link type="primary" icon="Delete" @click="handldDelOnline(scope.row)"> </el-button> |
| | | </el-tooltip> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | }) |
| | | .catch(() => {}); |
| | | }; |
| | | |
| | | </script> |
| | |
| | | message: '长度在 6 到 20 个字符', |
| | | trigger: 'blur' |
| | | }, |
| | | { pattern: /^[^<>"'|\\]+$/, message: "不能包含非法字符:< > \" ' \\\ |", trigger: "blur" } |
| | | { pattern: /^[^<>"'|\\]+$/, message: '不能包含非法字符:< > " \' \\\ |', trigger: 'blur' } |
| | | ], |
| | | confirmPassword: [ |
| | | { required: true, message: '确认密码不能为空', trigger: 'blur' }, |
| | |
| | | <script lang="ts" setup> |
| | | import { authUnlock, authBinding } from '@/api/system/social/auth'; |
| | | import { propTypes } from '@/utils/propTypes'; |
| | | import useUserStore from "@/store/modules/user"; |
| | | import useUserStore from '@/store/modules/user'; |
| | | |
| | | const { proxy } = getCurrentInstance() as ComponentInternalInstance; |
| | | |