mirror of
https://gitee.com/xiaonuobase/snowy.git
synced 2025-12-25 23:56:20 +08:00
【优化】优化剩余页面在小屏幕下的展示效果
This commit is contained in:
parent
a47d5379bc
commit
f8df4d7e8f
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<a-card :title="title" :bordered="false" :loading="apiLoading">
|
||||
<a-row>
|
||||
<a-col :span="6">
|
||||
<a-col :xs="12" :sm="12" :md="12" :lg="6" :xl="6">
|
||||
<a-statistic :value="dataSource.userCount">
|
||||
<template #title>
|
||||
<user-outlined style="color: #1890ff" />
|
||||
@ -9,7 +9,7 @@
|
||||
</template>
|
||||
</a-statistic>
|
||||
</a-col>
|
||||
<a-col :span="6">
|
||||
<a-col :xs="12" :sm="12" :md="12" :lg="6" :xl="6">
|
||||
<a-statistic :value="dataSource.orgCount">
|
||||
<template #title>
|
||||
<cluster-outlined style="color: rgba(229, 159, 18, 0.35)" />
|
||||
@ -17,7 +17,7 @@
|
||||
</template>
|
||||
</a-statistic>
|
||||
</a-col>
|
||||
<a-col :span="6">
|
||||
<a-col :xs="12" :sm="12" :md="12" :lg="6" :xl="6">
|
||||
<a-statistic :value="dataSource.positionCount">
|
||||
<template #title>
|
||||
<apartment-outlined style="color: rgba(245, 6, 6, 0.2)" />
|
||||
@ -25,7 +25,7 @@
|
||||
</template>
|
||||
</a-statistic>
|
||||
</a-col>
|
||||
<a-col :span="6">
|
||||
<a-col :xs="12" :sm="12" :md="12" :lg="6" :xl="6">
|
||||
<a-statistic :value="dataSource.roleCount">
|
||||
<template #title>
|
||||
<deployment-unit-outlined style="color: #09c755" />
|
||||
|
||||
@ -12,7 +12,7 @@
|
||||
</a-statistic>
|
||||
</a-col>
|
||||
-->
|
||||
<a-col :span="5">
|
||||
<a-col :xs="12" :sm="12" :md="12" :lg="4" :xl="4">
|
||||
<a-statistic :value="dataSource.sysDictCount">
|
||||
<template #title>
|
||||
<read-outlined style="color: #4b4b4b" />
|
||||
@ -20,7 +20,7 @@
|
||||
</template>
|
||||
</a-statistic>
|
||||
</a-col>
|
||||
<a-col :span="5">
|
||||
<a-col :xs="12" :sm="12" :md="12" :lg="4" :xl="4">
|
||||
<a-statistic :value="dataSource.bizDictCount">
|
||||
<template #title>
|
||||
<read-outlined style="color: #353779" />
|
||||
@ -28,7 +28,7 @@
|
||||
</template>
|
||||
</a-statistic>
|
||||
</a-col>
|
||||
<a-col :span="5">
|
||||
<a-col :xs="12" :sm="12" :md="12" :lg="4" :xl="4">
|
||||
<a-statistic :value="dataSource.backUserSessionCount">
|
||||
<template #title>
|
||||
<usergroup-delete-outlined style="color: #3ceecd" />
|
||||
@ -36,7 +36,7 @@
|
||||
</template>
|
||||
</a-statistic>
|
||||
</a-col>
|
||||
<a-col :span="5">
|
||||
<a-col :xs="12" :sm="12" :md="12" :lg="4" :xl="4">
|
||||
<a-statistic :value="dataSource.clientUserSessionCount">
|
||||
<template #title>
|
||||
<UserSwitchOutlined style="color: rgba(229, 159, 18, 0.35)" />
|
||||
@ -44,7 +44,7 @@
|
||||
</template>
|
||||
</a-statistic>
|
||||
</a-col>
|
||||
<a-col :span="4">
|
||||
<a-col :xs="12" :sm="12" :md="12" :lg="4" :xl="4">
|
||||
<a-statistic :value="dataSource.thirdUserCount">
|
||||
<template #title>
|
||||
<team-outlined style="color: #1890ff" />
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
<a-card :bordered="false">
|
||||
<div class="xn-card-line">
|
||||
<div class="xn-flex">
|
||||
<a-avatar class="xn-wh60" :src="userInfo.avatar" :size="{ xs: 24, sm: 32, md: 40, lg: 64, xl: 80, xxl: 100 }" />
|
||||
<a-avatar class="xn-wh60" :src="userInfo.avatar" :size="{ xs: 80, sm: 80, md: 80, lg: 80, xl: 80 }" />
|
||||
<div class="snowy-index-card-left-one-username">
|
||||
<span>{{ userInfo.name }}</span>
|
||||
<span>{{ userInfo.orgName }} | {{ userInfo.positionName }}</span>
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
<template>
|
||||
<xn-form-container :visible="visible" :width="700" title="电子签名" @close="handleClear" @ok="handleOk">
|
||||
<a-row :gutter="5">
|
||||
<a-col :span="15">
|
||||
<div class="xn-bdr236">
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="12" :xl="12">
|
||||
<div class="imgBox">
|
||||
<vue-esign
|
||||
ref="esignRef"
|
||||
v-model:bgColor="bgColor"
|
||||
@ -15,32 +15,36 @@
|
||||
/>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="9">
|
||||
<div class="xn-h90wat">
|
||||
<img v-if="resultImg" :src="resultImg" class="xn-bdr236 xn-h90w100" />
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="12" :xl="12">
|
||||
<div class="imgBox">
|
||||
<img v-if="resultImg" :src="resultImg"/>
|
||||
<a-empty v-else />
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<div class="xn-mt10">
|
||||
<a-space>
|
||||
<a-form>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-form-item label="画笔粗细:">
|
||||
<a-input-number v-model:value="lineWidth" :min="1" :max="20" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-form-item>
|
||||
<div class="xn-pr50">是否裁剪:<a-checkbox v-model:checked="isCrop"></a-checkbox></div>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-form>
|
||||
<a-button type="primary" @click="handleGenerate">预览</a-button>
|
||||
<a-button @click="handleReset">清屏</a-button>
|
||||
</a-space>
|
||||
<a-form>
|
||||
<a-row :gutter="16">
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<a-form-item label="画笔粗细:">
|
||||
<a-input-number v-model:value="lineWidth" :min="1" :max="20" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<a-form-item label="是否裁剪:">
|
||||
<a-checkbox v-model:checked="isCrop"></a-checkbox>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<a-form-item>
|
||||
<a-space>
|
||||
<a-button type="primary" @click="handleGenerate">预览</a-button>
|
||||
<a-button @click="handleReset">清屏</a-button>
|
||||
</a-space>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-form>
|
||||
</div>
|
||||
<template #footer>
|
||||
<a-button class="xn-mr8" @click="handleClear">取消</a-button>
|
||||
@ -100,24 +104,17 @@
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.xn-h90w100 {
|
||||
height: 90px;
|
||||
.imgBox {
|
||||
height: 160px;
|
||||
width: 100%;
|
||||
border: 1px solid rgb(236 236 236);
|
||||
margin-top: 10px;
|
||||
}
|
||||
.imgBox img {
|
||||
height: 160px;
|
||||
width: 100%;
|
||||
}
|
||||
.xn-mt10 {
|
||||
margin-top: 10px;
|
||||
}
|
||||
.xn-h90wat {
|
||||
height: 90px;
|
||||
width: auto;
|
||||
}
|
||||
.xn-bdr236 {
|
||||
border: 1px solid rgb(236 236 236);
|
||||
}
|
||||
.ant-form-item {
|
||||
margin-bottom: 0px !important;
|
||||
}
|
||||
.xn-pr50 {
|
||||
padding-right: 50px;
|
||||
}
|
||||
</style>
|
||||
|
||||
@ -56,58 +56,77 @@
|
||||
@change="changeTopHeaderThemeColorSpread"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<a-divider />
|
||||
<a-form ref="formRef" class="text-right">
|
||||
<a-form-item label="模块坞" v-if="!moduleUnfoldDisabled">
|
||||
<a-switch
|
||||
:checked="moduleUnfoldOpen"
|
||||
@change="toggleState('moduleUnfoldOpen')"
|
||||
:disabled="moduleUnfoldDisabled"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item label="固定宽度" v-if="layout == layoutEnum.TOP">
|
||||
<a-switch :checked="fixedWidth" @change="toggleState('fixedWidth')" />
|
||||
</a-form-item>
|
||||
<a-form-item label="面包屑">
|
||||
<a-switch :checked="breadcrumbOpen" @change="toggleState('breadcrumbOpen')" />
|
||||
</a-form-item>
|
||||
<a-form-item label="多标签">
|
||||
<a-switch :checked="layoutTagsOpen" @change="toggleState('layoutTagsOpen')" />
|
||||
</a-form-item>
|
||||
<a-form-item label="折叠菜单" v-if="!menuIsCollapseDisabled">
|
||||
<a-switch
|
||||
:checked="menuIsCollapse"
|
||||
@change="toggleState('menuIsCollapse')"
|
||||
:disabled="menuIsCollapseDisabled"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item label="菜单排他展开" v-if="!sideUniqueOpenDisabled">
|
||||
<a-switch
|
||||
:checked="sideUniqueOpen"
|
||||
@change="toggleState('sideUniqueOpen')"
|
||||
:disabled="sideUniqueOpenDisabled"
|
||||
/>
|
||||
</a-form-item>
|
||||
<a-form-item label="登录用户水印">
|
||||
<a-switch :checked="loginUserWatermarkOpen" @change="toggleState('loginUserWatermarkOpen')" />
|
||||
</a-form-item>
|
||||
<a-form-item label="页脚版权信息">
|
||||
<a-switch :checked="footerCopyrightOpen" @change="toggleState('footerCopyrightOpen')" />
|
||||
</a-form-item>
|
||||
<a-form-item label="圆角风格">
|
||||
<a-switch :checked="roundedCornerStyleOpen" @change="toggleState('roundedCornerStyleOpen')" />
|
||||
</a-form-item>
|
||||
<a-form-item label="表单风格">
|
||||
<a-select
|
||||
:value="formStyle"
|
||||
class="!w-[80px]"
|
||||
size="small"
|
||||
:options="xnFormStyleOptions"
|
||||
@change="formStyleChange"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-form>
|
||||
<div class="mb-4 layout-slide" v-if="!moduleUnfoldDisabled">
|
||||
<h4 class="setting-item-title">模块坞:</h4>
|
||||
<a-switch
|
||||
:checked="moduleUnfoldOpen"
|
||||
@change="toggleState('moduleUnfoldOpen')"
|
||||
:disabled="moduleUnfoldDisabled"
|
||||
/>
|
||||
</div>
|
||||
<div class="mb-4 layout-slide" v-if="layout === layoutEnum.TOP">
|
||||
<h4 class="setting-item-title">固定宽度:</h4>
|
||||
<a-switch :checked="fixedWidth"
|
||||
@change="toggleState('fixedWidth')"
|
||||
/>
|
||||
</div>
|
||||
<div class="mb-4 layout-slide">
|
||||
<h4 class="setting-item-title">面包屑:</h4>
|
||||
<a-switch :checked="breadcrumbOpen"
|
||||
@change="toggleState('breadcrumbOpen')"
|
||||
/>
|
||||
</div>
|
||||
<div class="mb-4 layout-slide">
|
||||
<h4 class="setting-item-title">多标签:</h4>
|
||||
<a-switch :checked="layoutTagsOpen"
|
||||
@change="toggleState('layoutTagsOpen')"
|
||||
/>
|
||||
</div>
|
||||
<div class="mb-4 layout-slide" v-if="!menuIsCollapseDisabled">
|
||||
<h4 class="setting-item-title">折叠菜单:</h4>
|
||||
<a-switch
|
||||
:checked="menuIsCollapse"
|
||||
@change="toggleState('menuIsCollapse')"
|
||||
:disabled="menuIsCollapseDisabled"
|
||||
/>
|
||||
</div>
|
||||
<div class="mb-4 layout-slide" v-if="!sideUniqueOpenDisabled">
|
||||
<h4 class="setting-item-title">菜单排他展开:</h4>
|
||||
<a-switch
|
||||
:checked="sideUniqueOpen"
|
||||
@change="toggleState('sideUniqueOpen')"
|
||||
:disabled="sideUniqueOpenDisabled"
|
||||
/>
|
||||
</div>
|
||||
<div class="mb-4 layout-slide">
|
||||
<h4 class="setting-item-title">登录用户水印:</h4>
|
||||
<a-switch :checked="loginUserWatermarkOpen"
|
||||
@change="toggleState('loginUserWatermarkOpen')"
|
||||
/>
|
||||
</div>
|
||||
<div class="mb-4 layout-slide">
|
||||
<h4 class="setting-item-title">页脚版权信息:</h4>
|
||||
<a-switch :checked="footerCopyrightOpen"
|
||||
@change="toggleState('footerCopyrightOpen')"
|
||||
/>
|
||||
</div>
|
||||
<div class="mb-4 layout-slide">
|
||||
<h4 class="setting-item-title">圆角风格:</h4>
|
||||
<a-switch :checked="roundedCornerStyleOpen"
|
||||
@change="toggleState('roundedCornerStyleOpen')"
|
||||
/>
|
||||
</div>
|
||||
<div class="mb-4 layout-slide">
|
||||
<h4 class="setting-item-title">表单风格:</h4>
|
||||
<a-select
|
||||
:value="formStyle"
|
||||
class="!w-[80px]"
|
||||
size="small"
|
||||
:options="xnFormStyleOptions"
|
||||
@change="formStyleChange"
|
||||
/>
|
||||
</div>
|
||||
<a-alert
|
||||
message="以上配置可实时预览,开发者可在 config/index.js 中配置默认值,不建议在生产环境下开放布局设置"
|
||||
type="warning"
|
||||
|
||||
@ -84,9 +84,9 @@ export default {
|
||||
grantResource: '授权资源',
|
||||
grantPermission: '授权权限',
|
||||
exportUserInfo: '导出信息',
|
||||
placeholderUserOrg: '请选择组织',
|
||||
placeholderUserOrg: '请选择所属组织',
|
||||
placeholderNameAndSearchKey: '请输入姓名或关键词',
|
||||
placeholderUserStatus: '请选择状态',
|
||||
placeholderUserStatus: '请选择用户状态',
|
||||
popConfirmDeleteUser: '确定要删除吗?',
|
||||
popConfirmResatUserPwd: '确定要重置吗?'
|
||||
}
|
||||
|
||||
@ -14,12 +14,7 @@
|
||||
</a-col>
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="20" :xl="20">
|
||||
<a-card :bordered="false" class="xn-mb10">
|
||||
<a-form
|
||||
ref="searchFormRef"
|
||||
name="advanced_search"
|
||||
class="ant-advanced-search-form mb-3"
|
||||
:model="searchFormState"
|
||||
>
|
||||
<a-form ref="searchFormRef" :model="searchFormState">
|
||||
<a-row :gutter="10">
|
||||
<a-col :xs="24" :sm="8" :md="8" :lg="0" :xl="0">
|
||||
<a-form-item label="请选择上级字典:" name="parentId">
|
||||
|
||||
@ -1,32 +1,42 @@
|
||||
<template>
|
||||
<a-row :gutter="10">
|
||||
<!-- 轮播图(小屏情况显示) -->
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="0" :xl="0">
|
||||
<biz-slideshow-card :config="slideshowConfig" />
|
||||
</a-col>
|
||||
<!-- 左侧 -->
|
||||
<a-col :span="16">
|
||||
<a-col :xs="24" :sm="24" :md="16" :lg="16" :xl="16">
|
||||
<!-- 人员信息 -->
|
||||
<sys-user-info-card class="mb-2" />
|
||||
<a-row :gutter="10" class="mt-2">
|
||||
<a-col :span="24">
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<!-- 快捷方式 -->
|
||||
<biz-shortcut-card />
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="10" class="mt-2">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<!-- 通知公告 -->
|
||||
<biz-notice-card />
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<!-- 站内信息 -->
|
||||
<biz-mini-message-card />
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-col>
|
||||
<!-- 右侧 -->
|
||||
<a-col :span="8">
|
||||
<!-- 轮播图 -->
|
||||
<biz-slideshow-card :config="slideshowConfig" />
|
||||
<!-- 我的日程 -->
|
||||
<biz-schedule-card />
|
||||
<a-col :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
|
||||
<a-row :gutter="10">
|
||||
<a-col :xs="0" :sm="0" :md="0" :lg="24" :xl="24">
|
||||
<!-- 轮播图 -->
|
||||
<biz-slideshow-card :config="slideshowConfig" />
|
||||
</a-col>
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<!-- 我的日程 -->
|
||||
<biz-schedule-card />
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</template>
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
</a-descriptions-item>
|
||||
<a-descriptions-item label="内容"><div v-html="formData.content"></div></a-descriptions-item>
|
||||
</a-descriptions>
|
||||
<a-descriptions bordered :column="2" class="mt-2">
|
||||
<a-descriptions bordered :column="1" class="mt-2">
|
||||
<a-descriptions-item label="摘要">{{ formData.digest }}</a-descriptions-item>
|
||||
<a-descriptions-item label="备注"
|
||||
><span>{{ formData.remark }}</span></a-descriptions-item
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
>
|
||||
<a-form ref="formRef" :model="formData" :rules="formRules" layout="vertical">
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="19">
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<a-form-item label="标题:" name="title">
|
||||
<a-input v-model:value="formData.title" placeholder="请输入标题" allow-clear />
|
||||
</a-form-item>
|
||||
@ -23,17 +23,17 @@
|
||||
<a-radio-group v-model:value="formData.type" placeholder="请选择类型" :options="typeOptions" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="5">
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<a-form-item label="封面图:" name="image">
|
||||
<xn-upload v-model:value="formData.image" uploadMode="image" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<a-form-item label="内容:" name="content">
|
||||
<xn-editor v-model:value="formData.content" placeholder="请输入内容" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<a-form-item label="摘要:" name="digest">
|
||||
<a-textarea
|
||||
v-model:value="formData.digest"
|
||||
@ -44,12 +44,12 @@
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="18">
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<a-form-item label="发布位置:" name="place">
|
||||
<a-checkbox-group v-model:value="formData.place" placeholder="请选择发布位置" :options="placeOptions" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="6">
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<a-form-item label="排序:" name="sortCode">
|
||||
<a-input-number
|
||||
v-model:value="formData.sortCode"
|
||||
@ -59,7 +59,7 @@
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<a-form-item label="备注:" name="remark">
|
||||
<a-textarea
|
||||
v-model:value="formData.remark"
|
||||
|
||||
@ -17,12 +17,12 @@
|
||||
<a-form ref="searchFormRef" :model="searchFormState">
|
||||
<a-row :gutter="10">
|
||||
<a-col :xs="24" :sm="8" :md="8" :lg="0" :xl="0">
|
||||
<a-form-item label="上级组织:" name="parentId">
|
||||
<a-form-item label="上级机构:" name="parentId">
|
||||
<a-tree-select
|
||||
v-model:value="searchFormState.parentId"
|
||||
class="xn-wd"
|
||||
:dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
|
||||
placeholder="请选择上级组织"
|
||||
placeholder="请选择上级机构"
|
||||
allow-clear
|
||||
:tree-data="treeData"
|
||||
:field-names="{
|
||||
|
||||
@ -17,12 +17,12 @@
|
||||
<a-form ref="searchFormRef" :model="searchFormState">
|
||||
<a-row :gutter="10">
|
||||
<a-col :xs="24" :sm="8" :md="8" :lg="0" :xl="0">
|
||||
<a-form-item label="组织:" name="orgId">
|
||||
<a-form-item label="机构:" name="orgId">
|
||||
<a-tree-select
|
||||
v-model:value="searchFormState.orgId"
|
||||
class="xn-wd"
|
||||
:dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
|
||||
placeholder="请选择组织"
|
||||
placeholder="请选择机构"
|
||||
allow-clear
|
||||
:tree-data="treeData"
|
||||
:field-names="{
|
||||
|
||||
@ -11,56 +11,45 @@
|
||||
<a-tabs v-model:activeKey="activeTabsKey">
|
||||
<a-tab-pane key="1" tab="基础信息" force-render>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="账号:" name="account">
|
||||
<a-input v-model:value="formData.account" placeholder="请输入账号" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="姓名:" name="name">
|
||||
<a-input v-model:value="formData.name" placeholder="请输入姓名" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="性别:" name="gender">
|
||||
<a-radio-group v-model:value="formData.gender" :options="genderOptions"> </a-radio-group>
|
||||
<a-radio-group v-model:value="formData.gender" :options="genderOptions" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="昵称:" name="nickname">
|
||||
<a-input v-model:value="formData.nickname" placeholder="请输入昵称" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="手机号:" name="phone">
|
||||
<a-input v-model:value="formData.phone" placeholder="请输入手机" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="邮箱:" name="email">
|
||||
<a-input v-model:value="formData.email" placeholder="请输入邮箱" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-form-item label="出生日期:" name="birthday">
|
||||
<a-date-picker v-model:value="formData.birthday" value-format="YYYY-MM-DD" class="xn-wd" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="8">
|
||||
<a-form-item label="选择组织:" name="orgId">
|
||||
<a-col :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
|
||||
<a-form-item label="选择机构:" name="orgId">
|
||||
<a-tree-select
|
||||
v-model:value="formData.orgId"
|
||||
class="xn-wd"
|
||||
:dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
|
||||
placeholder="请选择组织"
|
||||
placeholder="请选择机构"
|
||||
allow-clear
|
||||
tree-default-expand-all
|
||||
:tree-data="treeData"
|
||||
@ -71,22 +60,22 @@
|
||||
value: 'id'
|
||||
}"
|
||||
@change="selePositionData(formData.orgId, 0)"
|
||||
></a-tree-select>
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="8">
|
||||
<a-form-item label="选择职位:" name="positionId">
|
||||
<a-col :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
|
||||
<a-form-item label="选择岗位:" name="positionId">
|
||||
<xn-page-select
|
||||
ref="xnPositionPageSelectRef"
|
||||
v-model:value="formData.positionId"
|
||||
placeholder="请选择职位"
|
||||
placeholder="请选择岗位"
|
||||
allow-clear
|
||||
:page-function="selectApiFunction.positionSelector"
|
||||
:echo-function="selectApiFunction.echoPosition"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="8">
|
||||
<a-col :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
|
||||
<a-form-item label="选择主管:" name="directorId">
|
||||
<xn-page-select
|
||||
ref="xnUserPageSelectRef"
|
||||
@ -100,17 +89,17 @@
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="8">
|
||||
<a-col :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
|
||||
<a-form-item label="员工编号:" name="empNo">
|
||||
<a-input v-model:value="formData.empNo" placeholder="请输入员工编号" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="8">
|
||||
<a-col :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
|
||||
<a-form-item label="职级:" name="positionLevel">
|
||||
<a-input v-model:value="formData.positionLevel" placeholder="请输入职级" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="8">
|
||||
<a-col :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
|
||||
<a-form-item label="入职日期:" name="entryDate">
|
||||
<a-date-picker v-model:value="formData.entryDate" value-format="YYYY-MM-DD" class="xn-wd" />
|
||||
</a-form-item>
|
||||
@ -118,11 +107,11 @@
|
||||
</a-row>
|
||||
|
||||
<a-form-item label="任职信息" name="positionJson">
|
||||
<a-row :gutter="10" class="form-row">
|
||||
<a-col :span="7" class="form-row-con"> 机构 </a-col>
|
||||
<a-col :span="7" class="form-row-con"> 职位 </a-col>
|
||||
<a-col :span="7" class="form-row-con"> 主管 </a-col>
|
||||
<a-col :span="3" class="form-row-con">
|
||||
<a-row :gutter="10" class="form-row mb-5">
|
||||
<a-col :span="7"> 机构 </a-col>
|
||||
<a-col :span="7"> 岗位 </a-col>
|
||||
<a-col :span="7"> 主管 </a-col>
|
||||
<a-col :span="3">
|
||||
<a-button type="primary" @click="addDomains()" size="small">
|
||||
<PlusOutlined />
|
||||
增加
|
||||
@ -130,8 +119,8 @@
|
||||
</a-col>
|
||||
</a-row>
|
||||
<div :key="positionInfo" v-for="(positionInfo, index) in formData.positionJson">
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="7">
|
||||
<a-row :gutter="10">
|
||||
<a-col :xs="24" :sm="24" :md="7" :lg="7" :xl="7">
|
||||
<a-form-item
|
||||
:name="['positionJson', index, 'orgId']"
|
||||
:rules="{ required: true, message: '请选择机构' }"
|
||||
@ -147,10 +136,10 @@
|
||||
:tree-default-expanded-keys="treeDefaultExpandedKeys"
|
||||
:field-names="{ children: 'children', label: 'name', value: 'id' }"
|
||||
@select="childOrgSelect(positionInfo, 0, index)"
|
||||
></a-tree-select>
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="7">
|
||||
<a-col :xs="24" :sm="24" :md="7" :lg="7" :xl="7">
|
||||
<a-form-item
|
||||
:name="['positionJson', index, 'positionId']"
|
||||
:rules="{ required: true, message: '请选择岗位' }"
|
||||
@ -165,7 +154,7 @@
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="7">
|
||||
<a-col :xs="24" :sm="24" :md="7" :lg="7" :xl="7">
|
||||
<a-form-item :name="['positionJson', index, 'directorId']">
|
||||
<xn-page-select
|
||||
ref="xnChildUserPageSelectRef"
|
||||
@ -177,8 +166,13 @@
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="3" class="xn-mt4">
|
||||
<a-button size="small" type="primary" danger ghost @click="delDomains(index)">移除</a-button>
|
||||
<a-col :xs="24" :sm="24" :md="3" :lg="3" :xl="3">
|
||||
<a-form-item>
|
||||
<a-button type="primary" danger ghost @click="delDomains(index)" size="small">
|
||||
<DeleteOutlined />
|
||||
移除
|
||||
</a-button>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</div>
|
||||
@ -186,19 +180,27 @@
|
||||
</a-tab-pane>
|
||||
<a-tab-pane key="2" tab="更多信息" force-render>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-form-item label="民族:" name="nation">
|
||||
<a-select v-model:value="formData.nation" placeholder="请选择民族" :options="nationOptions"> </a-select>
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="出生日期:" name="birthday">
|
||||
<a-date-picker v-model:value="formData.birthday" value-format="YYYY-MM-DD" class="xn-wd" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="民族:" name="nation">
|
||||
<a-select v-model:value="formData.nation" placeholder="请选择民族" :options="nationOptions" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="籍贯:" name="nativePlace">
|
||||
<a-input v-model:value="formData.nativePlace" placeholder="请输入籍贯" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="家庭电话:" name="homeTel">
|
||||
<a-input v-model:value="formData.homeTel" placeholder="请输入家庭电话" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<a-form-item label="家庭住址:" name="homeAddress">
|
||||
<a-textarea
|
||||
v-model:value="formData.homeAddress"
|
||||
@ -208,101 +210,75 @@
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-form-item label="通信地址:" name="mailingAddress">
|
||||
<a-textarea
|
||||
v-model:value="formData.mailingAddress"
|
||||
placeholder="请输入通信地址"
|
||||
:auto-size="{ minRows: 2, maxRows: 5 }"
|
||||
allow-clear
|
||||
<!-- <a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="通信地址:" name="mailingAddress">
|
||||
<a-textarea
|
||||
v-model:value="formData.mailingAddress"
|
||||
placeholder="请输入通信地址"
|
||||
:auto-size="{ minRows: 2, maxRows: 5 }"
|
||||
allow-clear
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>-->
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="证件类型:" name="idCardType">
|
||||
<a-select
|
||||
v-model:value="formData.idCardType"
|
||||
placeholder="请选择证件类型"
|
||||
:options="idcardTypeOptions"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-form-item label="证件类型:" name="idCardType">
|
||||
<a-select v-model:value="formData.idCardType" placeholder="请选择证件类型" :options="idcardTypeOptions">
|
||||
</a-select>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="证件号码:" name="idCardNumber">
|
||||
<a-input v-model:value="formData.idCardNumber" placeholder="请输入证件号码" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="文化程度:" name="cultureLevel">
|
||||
<a-select
|
||||
v-model:value="formData.cultureLevel"
|
||||
placeholder="请选择文化程度"
|
||||
:options="cultureLevelOptions"
|
||||
>
|
||||
</a-select>
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="政治面貌:" name="politicalOutlook">
|
||||
<a-input v-model:value="formData.politicalOutlook" placeholder="请输入政治面貌" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="毕业学校:" name="college">
|
||||
<a-input v-model:value="formData.college" placeholder="请输入毕业学校" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="学历:" name="education">
|
||||
<a-input v-model:value="formData.education" placeholder="请输入学历" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="学制:" name="eduLength">
|
||||
<a-input v-model:value="formData.eduLength" placeholder="请输入学制" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="学位:" name="degree">
|
||||
<a-input v-model:value="formData.degree" placeholder="请输入学位" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-form-item label="家庭电话:" name="homeTel">
|
||||
<a-input v-model:value="formData.homeTel" placeholder="请输入家庭电话" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-form-item label="办公电话:" name="officeTel">
|
||||
<a-input v-model:value="formData.officeTel" placeholder="请输入办公电话" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="紧急联系人:" name="emergencyContact">
|
||||
<a-input v-model:value="formData.emergencyContact" placeholder="请输入紧急联系人" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="紧急联系电话:" name="emergencyPhone">
|
||||
<a-input v-model:value="formData.emergencyPhone" placeholder="请输入紧急联系电话" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<a-form-item label="紧急联系人地址:" name="emergencyAddress">
|
||||
<a-textarea
|
||||
v-model:value="formData.emergencyAddress"
|
||||
@ -353,7 +329,7 @@
|
||||
}
|
||||
if (orgId) {
|
||||
formData.value.orgId = orgId
|
||||
// 通过机构再查询职位、主管
|
||||
// 通过机构再查询岗位、主管
|
||||
nextTick(() => {
|
||||
selePositionData(orgId)
|
||||
})
|
||||
@ -417,10 +393,10 @@
|
||||
account: [required('请输入账号')],
|
||||
name: [required('请输入姓名')],
|
||||
sex: [required('请选择性别')],
|
||||
orgId: [required('请选择组织')],
|
||||
orgId: [required('请选择机构')],
|
||||
positionId: [required('请选择岗位')]
|
||||
}
|
||||
// 机构选择后查询对应的职位
|
||||
// 机构选择后查询对应的岗位
|
||||
const selePositionData = (orgId, type) => {
|
||||
if (orgId) {
|
||||
const xnPositionPageSelectParam = {
|
||||
@ -428,7 +404,7 @@
|
||||
}
|
||||
xnPositionPageSelectRef.value.onPage(xnPositionPageSelectParam)
|
||||
xnUserPageSelectRef.value.onPage()
|
||||
// 此类型代表选择的时候重置后面的职位
|
||||
// 此类型代表选择的时候重置后面的岗位
|
||||
if (type === 0) {
|
||||
formData.value.positionId = undefined
|
||||
formData.value.directorId = undefined
|
||||
@ -472,7 +448,7 @@
|
||||
})
|
||||
}
|
||||
}
|
||||
// 附属职位信息增行
|
||||
// 附属岗位信息增行
|
||||
const addDomains = () => {
|
||||
if (formData.value.positionJson === null) {
|
||||
formData.value.positionJson = []
|
||||
@ -549,12 +525,7 @@
|
||||
<style scoped lang="less">
|
||||
.form-row {
|
||||
background-color: var(--item-hover-bg);
|
||||
margin-left: 0 !important;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.form-row-con {
|
||||
padding-bottom: 5px;
|
||||
padding-top: 5px;
|
||||
padding-left: 15px;
|
||||
padding: 4px;
|
||||
}
|
||||
</style>
|
||||
|
||||
@ -17,12 +17,12 @@
|
||||
<a-form ref="searchFormRef" :model="searchFormState">
|
||||
<a-row :gutter="10">
|
||||
<a-col :xs="24" :sm="8" :md="8" :lg="0" :xl="0">
|
||||
<a-form-item :label="$t('user.userOrg')" name="orgId">
|
||||
<a-form-item label="所属机构" name="orgId">
|
||||
<a-tree-select
|
||||
v-model:value="searchFormState.orgId"
|
||||
class="xn-wd"
|
||||
:dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
|
||||
:placeholder="$t('user.placeholderUserOrg')"
|
||||
placeholder="请选择所属机构"
|
||||
allow-clear
|
||||
:tree-data="treeData"
|
||||
:field-names="{
|
||||
@ -36,18 +36,18 @@
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xs="24" :sm="8" :md="8" :lg="8" :xl="8">
|
||||
<a-form-item name="searchKey" :label="$t('common.searchKey')">
|
||||
<a-form-item name="searchKey" label="关键词">
|
||||
<a-input
|
||||
v-model:value="searchFormState.searchKey"
|
||||
:placeholder="$t('user.placeholderNameAndSearchKey')"
|
||||
placeholder="请输入姓名或关键词"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xs="24" :sm="8" :md="8" :lg="8" :xl="8">
|
||||
<a-form-item name="userStatus" :label="$t('user.userStatus')">
|
||||
<a-form-item name="userStatus" label="人员状态">
|
||||
<a-select
|
||||
v-model:value="searchFormState.userStatus"
|
||||
:placeholder="$t('user.placeholderUserStatus')"
|
||||
placeholder="请选择人员状态"
|
||||
:getPopupContainer="(trigger) => trigger.parentNode"
|
||||
>
|
||||
<a-select-option v-for="item in statusData" :key="item.value" :value="item.value">{{
|
||||
@ -61,11 +61,11 @@
|
||||
<a-space>
|
||||
<a-button type="primary" @click="tableRef.refresh(true)">
|
||||
<template #icon><SearchOutlined /></template>
|
||||
{{ $t('common.searchButton') }}
|
||||
查询
|
||||
</a-button>
|
||||
<a-button @click="reset">
|
||||
<template #icon><redo-outlined /></template>
|
||||
{{ $t('common.resetButton') }}
|
||||
重置
|
||||
</a-button>
|
||||
</a-space>
|
||||
</a-form-item>
|
||||
@ -94,15 +94,15 @@
|
||||
v-if="hasPerm('bizUserAdd')"
|
||||
>
|
||||
<template #icon><plus-outlined /></template>
|
||||
<span>{{ $t('common.addButton') }}{{ $t('model.user') }}</span>
|
||||
<span>增加人员</span>
|
||||
</a-button>
|
||||
<a-button @click="exportBatchUserVerify" v-if="hasPerm('bizUserBatchExport')">
|
||||
<template #icon><export-outlined /></template>
|
||||
{{ $t('user.batchExportButton') }}
|
||||
批量导出
|
||||
</a-button>
|
||||
<xn-batch-button
|
||||
v-if="hasPerm('bizUserBatchDelete')"
|
||||
:buttonName="$t('common.batchRemoveButton')"
|
||||
buttonName="批量删除"
|
||||
icon="DeleteOutlined"
|
||||
buttonDanger
|
||||
:selectedRowKeys="selectedRowKeys"
|
||||
@ -127,12 +127,12 @@
|
||||
<span v-else>{{ $TOOL.dictTypeData('COMMON_STATUS', record.userStatus) }}</span>
|
||||
</template>
|
||||
<template v-if="column.dataIndex === 'action'">
|
||||
<a @click="formRef.onOpen(record)" v-if="hasPerm('bizUserEdit')">{{ $t('common.editButton') }}</a>
|
||||
<a @click="formRef.onOpen(record)" v-if="hasPerm('bizUserEdit')">编辑</a>
|
||||
<a-divider type="vertical" v-if="hasPerm(['bizUserEdit', 'bizUserDelete'], 'and')" />
|
||||
<a-popconfirm :title="$t('user.popConfirmDeleteUser')" @confirm="removeUser(record)">
|
||||
<a-button type="link" danger size="small" v-if="hasPerm('bizUserDelete')">{{
|
||||
$t('common.removeButton')
|
||||
}}</a-button>
|
||||
<a-popconfirm title="确定要删除吗?" @confirm="removeUser(record)">
|
||||
<a-button type="link" danger size="small" v-if="hasPerm('bizUserDelete')">
|
||||
删除
|
||||
</a-button>
|
||||
</a-popconfirm>
|
||||
<a-divider
|
||||
type="vertical"
|
||||
@ -140,25 +140,25 @@
|
||||
/>
|
||||
<a-dropdown v-if="hasPerm(['bizUserGrantRole', 'bizUserPwdReset', 'bizUserExportUserInfo'])">
|
||||
<a class="ant-dropdown-link">
|
||||
{{ $t('common.more') }}
|
||||
更多
|
||||
<DownOutlined />
|
||||
</a>
|
||||
<template #overlay>
|
||||
<a-menu>
|
||||
<a-menu-item v-if="hasPerm('bizUserPwdReset')">
|
||||
<a-popconfirm
|
||||
:title="$t('user.popConfirmResatUserPwd')"
|
||||
title="确定要重置吗?"
|
||||
placement="topRight"
|
||||
@confirm="resetPassword(record)"
|
||||
>
|
||||
<a>{{ $t('user.resetPassword') }}</a>
|
||||
<a>重置密码</a>
|
||||
</a-popconfirm>
|
||||
</a-menu-item>
|
||||
<a-menu-item v-if="hasPerm('bizUserGrantRole')">
|
||||
<a @click="selectRole(record)">{{ $t('user.grantRole') }}</a>
|
||||
<a @click="selectRole(record)">授权角色</a>
|
||||
</a-menu-item>
|
||||
<a-menu-item v-if="hasPerm('bizUserExportUserInfo')">
|
||||
<a @click="exportUserInfo(record)">{{ $t('user.exportUserInfo') }}</a>
|
||||
<a @click="exportUserInfo(record)">导出信息</a>
|
||||
</a-menu-item>
|
||||
</a-menu>
|
||||
</template>
|
||||
|
||||
@ -31,7 +31,6 @@
|
||||
<xn-editor
|
||||
v-model="formData.content"
|
||||
placeholder="请输入邮件正文"
|
||||
:height="200"
|
||||
:file-upload-function="apiFunction.fileUploadApi"
|
||||
/>
|
||||
</a-form-item>
|
||||
|
||||
@ -27,7 +27,6 @@
|
||||
<xn-editor
|
||||
v-model="formData.content"
|
||||
placeholder="请输入邮件正文"
|
||||
:height="200"
|
||||
:file-upload-function="apiFunction.fileUploadApi"
|
||||
/>
|
||||
</a-form-item>
|
||||
|
||||
@ -31,7 +31,6 @@
|
||||
<xn-editor
|
||||
v-model="formData.content"
|
||||
placeholder="请输入邮件正文"
|
||||
:height="200"
|
||||
:file-upload-function="apiFunction.fileUploadApi"
|
||||
/>
|
||||
</a-form-item>
|
||||
|
||||
@ -1,6 +1,11 @@
|
||||
<template>
|
||||
<a-row :gutter="10">
|
||||
<a-col :span="16" :xs="24" :sm="24" :md="24" :lg="16" :xl="16">
|
||||
<!-- 轮播图(小屏情况显示) -->
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="0" :xl="0">
|
||||
<!-- 轮播图 -->
|
||||
<biz-slideshow-card :config="slideshowConfig" />
|
||||
</a-col>
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="16" :xl="16">
|
||||
<!-- 人员信息 -->
|
||||
<sys-user-info-card class="mb-2" />
|
||||
<!-- 业务数据 -->
|
||||
@ -9,22 +14,30 @@
|
||||
<sys-op-data-card class="mb-2" />
|
||||
<a-row :gutter="10">
|
||||
<!-- 访问记录 -->
|
||||
<a-col :span="12" :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<sys-vis-log-card class="mb-2" />
|
||||
</a-col>
|
||||
<!-- 操作记录 -->
|
||||
<a-col :span="12" :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<sys-op-log-card class="mb-2" />
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-col>
|
||||
<a-col :span="8" :xs="24" :sm="24" :md="24" :lg="8" :xl="8">
|
||||
<!-- 轮播图 -->
|
||||
<biz-slideshow-card :config="slideshowConfig" class="mb-2" />
|
||||
<!-- 基础工具 -->
|
||||
<sys-tool-data-card class="mb-2" />
|
||||
<!-- 周访问量 -->
|
||||
<sys-vis-chart-data-card />
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="8" :xl="8">
|
||||
<a-row :gutter="10">
|
||||
<a-col :xs="0" :sm="0" :md="0" :lg="24" :xl="24">
|
||||
<!-- 轮播图 -->
|
||||
<biz-slideshow-card :config="slideshowConfig" />
|
||||
</a-col>
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<!-- 基础工具 -->
|
||||
<sys-tool-data-card class="mb-2" />
|
||||
</a-col>
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<!-- 周访问量 -->
|
||||
<sys-vis-chart-data-card />
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</template>
|
||||
|
||||
@ -20,7 +20,7 @@
|
||||
>
|
||||
</a-radio-group>
|
||||
|
||||
<a-table size="middle" :columns="columns" :data-source="loadDatas" :pagination="false" bordered>
|
||||
<a-table size="middle" :columns="columns" :data-source="loadDatas" :pagination="false" bordered :scroll="{ x: 'max-content' }">
|
||||
<template #bodyCell="{ column, record }">
|
||||
<template v-if="column.dataIndex === 'parentName'">
|
||||
<a-checkbox :checked="record.parentCheck" @update:checked="(val) => changeParent(record, val)">
|
||||
@ -70,6 +70,7 @@
|
||||
key: 'parentName',
|
||||
title: '一级目录',
|
||||
dataIndex: 'parentName',
|
||||
fixed: 'left',
|
||||
customCell: (row, index) => {
|
||||
const parentName = row.parentName
|
||||
const indexArr = firstShowMap.value[parentName]
|
||||
|
||||
@ -21,6 +21,7 @@
|
||||
:row-key="(record) => record.api"
|
||||
:pagination="pagination"
|
||||
@change="handleTableChange"
|
||||
:scroll="{ x: 'max-content' }"
|
||||
bordered
|
||||
>
|
||||
<template #headerCell="{ column }">
|
||||
@ -167,6 +168,7 @@
|
||||
key: 'prefix',
|
||||
title: '接口前缀',
|
||||
dataIndex: 'prefix',
|
||||
fixed: 'left',
|
||||
width: 140,
|
||||
customCell: (row, index) => {
|
||||
const indexArr = firstShowMap.value[row.prefix]
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
>
|
||||
</a-radio-group>
|
||||
|
||||
<a-table size="middle" :columns="columns" :data-source="loadDatas" :pagination="false" bordered>
|
||||
<a-table size="middle" :columns="columns" :data-source="loadDatas" :pagination="false" bordered :scroll="{ x: 'max-content' }">
|
||||
<template #bodyCell="{ column, record }">
|
||||
<template v-if="column.dataIndex === 'parentName'">
|
||||
<a-checkbox :checked="record.parentCheck" @update:checked="(val) => changeParent(record, val)">
|
||||
@ -73,6 +73,7 @@
|
||||
key: 'parentName',
|
||||
title: '一级目录',
|
||||
dataIndex: 'parentName',
|
||||
fixed: 'left',
|
||||
customCell: (row, index) => {
|
||||
const parentName = row.parentName
|
||||
const indexArr = firstShowMap.value[parentName]
|
||||
|
||||
@ -11,50 +11,39 @@
|
||||
<a-tabs v-model:activeKey="activeTabsKey">
|
||||
<a-tab-pane key="1" tab="基础信息" force-render>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="账号:" name="account">
|
||||
<a-input v-model:value="formData.account" placeholder="请输入账号" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="姓名:" name="name">
|
||||
<a-input v-model:value="formData.name" placeholder="请输入姓名" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="性别:" name="gender">
|
||||
<a-radio-group v-model:value="formData.gender" :options="genderOptions" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="昵称:" name="nickname">
|
||||
<a-input v-model:value="formData.nickname" placeholder="请输入昵称" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="手机号:" name="phone">
|
||||
<a-input v-model:value="formData.phone" placeholder="请输入手机" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="邮箱:" name="email">
|
||||
<a-input v-model:value="formData.email" placeholder="请输入邮箱" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-form-item label="出生日期:" name="birthday">
|
||||
<a-date-picker v-model:value="formData.birthday" value-format="YYYY-MM-DD" class="xn-wd" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="8">
|
||||
<a-col :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
|
||||
<a-form-item label="选择组织:" name="orgId">
|
||||
<a-tree-select
|
||||
v-model:value="formData.orgId"
|
||||
@ -74,7 +63,7 @@
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="8">
|
||||
<a-col :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
|
||||
<a-form-item label="选择职位:" name="positionId">
|
||||
<xn-page-select
|
||||
ref="xnPositionPageSelectRef"
|
||||
@ -86,7 +75,7 @@
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="8">
|
||||
<a-col :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
|
||||
<a-form-item label="选择主管:" name="directorId">
|
||||
<xn-page-select
|
||||
ref="xnUserPageSelectRef"
|
||||
@ -100,17 +89,17 @@
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="8">
|
||||
<a-col :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
|
||||
<a-form-item label="员工编号:" name="empNo">
|
||||
<a-input v-model:value="formData.empNo" placeholder="请输入员工编号" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="8">
|
||||
<a-col :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
|
||||
<a-form-item label="职级:" name="positionLevel">
|
||||
<a-input v-model:value="formData.positionLevel" placeholder="请输入职级" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="8">
|
||||
<a-col :xs="24" :sm="24" :md="8" :lg="8" :xl="8">
|
||||
<a-form-item label="入职日期:" name="entryDate">
|
||||
<a-date-picker v-model:value="formData.entryDate" value-format="YYYY-MM-DD" class="xn-wd" />
|
||||
</a-form-item>
|
||||
@ -118,11 +107,11 @@
|
||||
</a-row>
|
||||
|
||||
<a-form-item label="任职信息" name="positionJson">
|
||||
<a-row :gutter="10" class="form-row">
|
||||
<a-col :span="7" class="form-row-con"> 机构 </a-col>
|
||||
<a-col :span="7" class="form-row-con"> 职位 </a-col>
|
||||
<a-col :span="7" class="form-row-con"> 主管 </a-col>
|
||||
<a-col :span="3" class="form-row-con">
|
||||
<a-row :gutter="10" class="form-row mb-5">
|
||||
<a-col :span="7"> 机构 </a-col>
|
||||
<a-col :span="7"> 职位 </a-col>
|
||||
<a-col :span="7"> 主管 </a-col>
|
||||
<a-col :span="3">
|
||||
<a-button type="primary" @click="addDomains()" size="small">
|
||||
<PlusOutlined />
|
||||
增加
|
||||
@ -130,75 +119,88 @@
|
||||
</a-col>
|
||||
</a-row>
|
||||
<div :key="positionInfo" v-for="(positionInfo, index) in formData.positionJson">
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="7">
|
||||
<a-form-item
|
||||
:name="['positionJson', index, 'orgId']"
|
||||
:rules="{ required: true, message: '请选择组织' }"
|
||||
>
|
||||
<a-tree-select
|
||||
v-model:value="positionInfo.orgId"
|
||||
class="xn-wd"
|
||||
:dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
|
||||
placeholder="请选择组织"
|
||||
allow-clear
|
||||
tree-default-expand-all
|
||||
:tree-data="treeData"
|
||||
:tree-default-expanded-keys="treeDefaultExpandedKeys"
|
||||
:field-names="{ children: 'children', label: 'name', value: 'id' }"
|
||||
@select="childOrgSelect(positionInfo, 0, index)"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="7">
|
||||
<a-form-item
|
||||
:name="['positionJson', index, 'positionId']"
|
||||
:rules="{ required: true, message: '请选择职位' }"
|
||||
>
|
||||
<xn-page-select
|
||||
ref="xnChildPositionPageSelectRef"
|
||||
v-model:value="positionInfo.positionId"
|
||||
placeholder="请选择职位"
|
||||
allow-clear
|
||||
:page-function="selectApiFunction.childPositionSelector"
|
||||
:echo-function="selectApiFunction.echoPosition"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="7">
|
||||
<a-form-item :name="['positionJson', index, 'directorId']">
|
||||
<xn-page-select
|
||||
ref="xnChildUserPageSelectRef"
|
||||
v-model:value="positionInfo.directorId"
|
||||
placeholder="请选择主管"
|
||||
allow-clear
|
||||
:page-function="selectApiFunction.childUserSelector"
|
||||
:echo-function="selectApiFunction.echoUser"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="3" class="xn-mt4">
|
||||
<a-button size="small" type="primary" danger ghost @click="delDomains(index)">移除</a-button>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="10">
|
||||
<a-col :xs="24" :sm="24" :md="7" :lg="7" :xl="7">
|
||||
<a-form-item
|
||||
:name="['positionJson', index, 'orgId']"
|
||||
:rules="{ required: true, message: '请选择组织' }"
|
||||
>
|
||||
<a-tree-select
|
||||
v-model:value="positionInfo.orgId"
|
||||
class="xn-wd"
|
||||
:dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
|
||||
placeholder="请选择组织"
|
||||
allow-clear
|
||||
tree-default-expand-all
|
||||
:tree-data="treeData"
|
||||
:tree-default-expanded-keys="treeDefaultExpandedKeys"
|
||||
:field-names="{ children: 'children', label: 'name', value: 'id' }"
|
||||
@select="childOrgSelect(positionInfo, 0, index)"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xs="24" :sm="24" :md="7" :lg="7" :xl="7">
|
||||
<a-form-item
|
||||
:name="['positionJson', index, 'positionId']"
|
||||
:rules="{ required: true, message: '请选择职位' }"
|
||||
>
|
||||
<xn-page-select
|
||||
ref="xnChildPositionPageSelectRef"
|
||||
v-model:value="positionInfo.positionId"
|
||||
placeholder="请选择职位"
|
||||
allow-clear
|
||||
:page-function="selectApiFunction.childPositionSelector"
|
||||
:echo-function="selectApiFunction.echoPosition"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xs="24" :sm="24" :md="7" :lg="7" :xl="7">
|
||||
<a-form-item :name="['positionJson', index, 'directorId']">
|
||||
<xn-page-select
|
||||
ref="xnChildUserPageSelectRef"
|
||||
v-model:value="positionInfo.directorId"
|
||||
placeholder="请选择主管"
|
||||
allow-clear
|
||||
:page-function="selectApiFunction.childUserSelector"
|
||||
:echo-function="selectApiFunction.echoUser"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xs="24" :sm="24" :md="3" :lg="3" :xl="3">
|
||||
<a-form-item>
|
||||
<a-button type="primary" danger ghost @click="delDomains(index)" size="small">
|
||||
<DeleteOutlined />
|
||||
移除
|
||||
</a-button>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</div>
|
||||
</a-form-item>
|
||||
</a-tab-pane>
|
||||
<a-tab-pane key="2" tab="更多信息" force-render>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="出生日期:" name="birthday">
|
||||
<a-date-picker v-model:value="formData.birthday" value-format="YYYY-MM-DD" class="xn-wd" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="民族:" name="nation">
|
||||
<a-select v-model:value="formData.nation" placeholder="请选择民族" :options="nationOptions" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="籍贯:" name="nativePlace">
|
||||
<a-input v-model:value="formData.nativePlace" placeholder="请输入籍贯" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="家庭电话:" name="homeTel">
|
||||
<a-input v-model:value="formData.homeTel" placeholder="请输入家庭电话" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<a-form-item label="家庭住址:" name="homeAddress">
|
||||
<a-textarea
|
||||
v-model:value="formData.homeAddress"
|
||||
@ -208,7 +210,7 @@
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<!-- <a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="通信地址:" name="mailingAddress">
|
||||
<a-textarea
|
||||
v-model:value="formData.mailingAddress"
|
||||
@ -217,10 +219,8 @@
|
||||
allow-clear
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
</a-col>-->
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="证件类型:" name="idCardType">
|
||||
<a-select
|
||||
v-model:value="formData.idCardType"
|
||||
@ -229,14 +229,12 @@
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="证件号码:" name="idCardNumber">
|
||||
<a-input v-model:value="formData.idCardNumber" placeholder="请输入证件号码" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="文化程度:" name="cultureLevel">
|
||||
<a-select
|
||||
v-model:value="formData.cultureLevel"
|
||||
@ -245,66 +243,42 @@
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="政治面貌:" name="politicalOutlook">
|
||||
<a-input v-model:value="formData.politicalOutlook" placeholder="请输入政治面貌" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="毕业学校:" name="college">
|
||||
<a-input v-model:value="formData.college" placeholder="请输入毕业学校" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="学历:" name="education">
|
||||
<a-input v-model:value="formData.education" placeholder="请输入学历" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="学制:" name="eduLength">
|
||||
<a-input v-model:value="formData.eduLength" placeholder="请输入学制" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="学位:" name="degree">
|
||||
<a-input v-model:value="formData.degree" placeholder="请输入学位" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-form-item label="家庭电话:" name="homeTel">
|
||||
<a-input v-model:value="formData.homeTel" placeholder="请输入家庭电话" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-form-item label="办公电话:" name="officeTel">
|
||||
<a-input v-model:value="formData.officeTel" placeholder="请输入办公电话" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="紧急联系人:" name="emergencyContact">
|
||||
<a-input v-model:value="formData.emergencyContact" placeholder="请输入紧急联系人" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="紧急联系电话:" name="emergencyPhone">
|
||||
<a-input v-model:value="formData.emergencyPhone" placeholder="请输入紧急联系电话" allow-clear />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
|
||||
<a-row :gutter="16">
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24">
|
||||
<a-form-item label="紧急联系人地址:" name="emergencyAddress">
|
||||
<a-textarea
|
||||
v-model:value="formData.emergencyAddress"
|
||||
@ -552,12 +526,7 @@
|
||||
<style scoped lang="less">
|
||||
.form-row {
|
||||
background-color: var(--item-hover-bg);
|
||||
margin-left: 0 !important;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.form-row-con {
|
||||
padding-bottom: 5px;
|
||||
padding-top: 5px;
|
||||
padding-left: 15px;
|
||||
padding: 4px;
|
||||
}
|
||||
</style>
|
||||
|
||||
@ -22,6 +22,7 @@
|
||||
:row-key="(record) => record.api"
|
||||
:pagination="pagination"
|
||||
@change="handleTableChange"
|
||||
:scroll="{ x: 'max-content' }"
|
||||
>
|
||||
<template #headerCell="{ column }">
|
||||
<template v-if="column.key === 'prefix'">
|
||||
@ -168,6 +169,7 @@
|
||||
key: 'prefix',
|
||||
title: '接口前缀',
|
||||
dataIndex: 'prefix',
|
||||
fixed: 'left',
|
||||
width: 140,
|
||||
customCell: (row, index) => {
|
||||
const indexArr = firstShowMap.value[row.prefix]
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
>
|
||||
</a-radio-group>
|
||||
|
||||
<a-table size="middle" :columns="columns" :data-source="loadDatas" :pagination="false" bordered>
|
||||
<a-table size="middle" :columns="columns" :data-source="loadDatas" :pagination="false" bordered :scroll="{ x: 'max-content' }">
|
||||
<template #bodyCell="{ column, record }">
|
||||
<template v-if="column.dataIndex === 'parentName'">
|
||||
<a-checkbox :checked="record.parentCheck" @update:checked="(val) => changeParent(record, val)">
|
||||
@ -74,6 +74,7 @@
|
||||
key: 'parentName',
|
||||
title: '一级目录',
|
||||
dataIndex: 'parentName',
|
||||
fixed: 'left',
|
||||
customCell: (row, index) => {
|
||||
const parentName = row.parentName
|
||||
const indexArr = firstShowMap.value[parentName]
|
||||
|
||||
@ -11,10 +11,10 @@
|
||||
</template>
|
||||
</a-alert>
|
||||
<a-row :gutter="8">
|
||||
<a-col :span="8">
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="8" :xl="8">
|
||||
<img style="width: 100%;vertical-align: middle" :src="otpInfo.otpInfoBase64" />
|
||||
</a-col>
|
||||
<a-col :span="16">
|
||||
<a-col :xs="24" :sm="24" :md="24" :lg="16" :xl="16">
|
||||
<a-descriptions :column="1" size="middle" bordered class="mb-2">
|
||||
<a-descriptions-item label="发行者">{{otpInfo.otpInfo.issuer}}</a-descriptions-item>
|
||||
<a-descriptions-item label="账号">{{otpInfo.otpInfo.account}}</a-descriptions-item>
|
||||
@ -56,21 +56,21 @@
|
||||
// 表单数据
|
||||
const formState = ref({})
|
||||
const submitLoading = ref(false)
|
||||
const otpInfo = ref()
|
||||
const otpInfo = ref({otpInfo: {}, otpInfoBase64: ''})
|
||||
const bindType = ref()
|
||||
// 打开抽屉
|
||||
const onOpen = (type) => {
|
||||
const onOpen = async (type) => {
|
||||
visible.value = true
|
||||
bindType.value = type
|
||||
// 获得动态口令信息
|
||||
userCenterApi.userCenterGetOtpInfo().then((data) => {
|
||||
await userCenterApi.userCenterGetOtpInfo().then((data) => {
|
||||
otpInfo.value = data
|
||||
})
|
||||
}
|
||||
// 关闭抽屉
|
||||
const onClose = () => {
|
||||
visible.value = false
|
||||
otpInfo.value = {}
|
||||
otpInfo.value = {otpInfo: {}, otpInfoBase64: ''}
|
||||
formState.value = {}
|
||||
formRef.value.resetFields()
|
||||
}
|
||||
|
||||
@ -1,15 +1,15 @@
|
||||
<template>
|
||||
<a-row :gutter="10">
|
||||
<a-col :span="4">
|
||||
<a-col :span="6">
|
||||
<a-menu id="userMessage" v-model:selected-keys="selectedKeys" mode="inline" @click="handleClick">
|
||||
<a-menu-item :key="messageCategory.value" v-for="messageCategory in messageCategoryList">{{
|
||||
messageCategory.label
|
||||
}}</a-menu-item>
|
||||
</a-menu>
|
||||
</a-col>
|
||||
<a-col :span="20">
|
||||
<a-col :span="18">
|
||||
<div class="xn-mt-16">
|
||||
<s-table ref="tableRef" :columns="columns" :data="loadData" bordered :row-key="(record) => record.id">
|
||||
<s-table ref="tableRef" :columns="columns" :data="loadData" bordered :row-key="(record) => record.id" :scroll="{ x: 'max-content' }">
|
||||
<template #bodyCell="{ column, record }">
|
||||
<template v-if="column.dataIndex === 'subject'">
|
||||
<ellipsis :length="40" tooltip>
|
||||
@ -61,6 +61,7 @@
|
||||
{
|
||||
title: '操作',
|
||||
dataIndex: 'action',
|
||||
fixed: 'right',
|
||||
width: '100px'
|
||||
}
|
||||
]
|
||||
|
||||
@ -15,7 +15,7 @@
|
||||
<a-row :gutter="16">
|
||||
<% for(var i = 0; i < configList.~size; i++) { %>
|
||||
<% if(!configList[i].needTableId && configList[i].whetherAddUpdate) { %>
|
||||
<a-col :span="12">
|
||||
<a-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<a-form-item label="${configList[i].fieldRemark}:" name="${configList[i].fieldNameCamelCase}">
|
||||
<% if(configList[i].effectType == 'input') { %>
|
||||
<a-input v-model:value="formData.${configList[i].fieldNameCamelCase}" placeholder="请输入${configList[i].fieldRemark}" allow-clear />
|
||||
|
||||
@ -8,12 +8,12 @@
|
||||
<% } %>
|
||||
<a-card :bordered="false" style="width: 100%">
|
||||
<% if (searchCount > 0) { %>
|
||||
<a-form ref="searchFormRef" name="advanced_search" :model="searchFormState" class="ant-advanced-search-form">
|
||||
<a-form ref="searchFormRef" :model="searchFormState">
|
||||
<a-row :gutter="24">
|
||||
<% for(var i = 0; i < configList.~size; i++) { %>
|
||||
<% if(!configList[i].needTableId && configList[i].needPage) { row ++; %>
|
||||
<% if(row <= 3) { %>
|
||||
<a-col :span="6">
|
||||
<a-col :xs="24" :sm="6" :md="6" :lg="6" :xl="6">
|
||||
<% if(configList[i].effectType == 'input' || configList[i].effectType == 'textarea') { %>
|
||||
<a-form-item label="${configList[i].fieldRemark}" name="${configList[i].fieldNameCamelCase}">
|
||||
<a-input v-model:value="searchFormState.${configList[i].fieldNameCamelCase}" placeholder="请输入${configList[i].fieldRemark}" />
|
||||
@ -37,7 +37,7 @@
|
||||
<% } %>
|
||||
</a-col>
|
||||
<% } else { %>
|
||||
<a-col :span="6" v-show="advanced">
|
||||
<a-col :xs="24" :sm="6" :md="6" :lg="6" :xl="6" v-show="advanced">
|
||||
<% if(configList[i].effectType == 'input' || configList[i].effectType == 'textarea') { %>
|
||||
<a-form-item label="${configList[i].fieldRemark}" name="${configList[i].fieldNameCamelCase}">
|
||||
<a-input v-model:value="searchFormState.${configList[i].fieldNameCamelCase}" placeholder="请输入${configList[i].fieldRemark}" />
|
||||
@ -63,17 +63,27 @@
|
||||
<% } %>
|
||||
<% } %>
|
||||
<% } %>
|
||||
<a-col :span="6">
|
||||
<a-button type="primary" @click="tableRef.refresh()">查询</a-button>
|
||||
<a-button style="margin: 0 8px" @click="reset">重置</a-button>
|
||||
<% if(searchCount > 3) { %>
|
||||
<a @click="toggleAdvanced" style="margin-left: 8px">
|
||||
{{ advanced ? '收起' : '展开' }}
|
||||
<component :is="advanced ? 'up-outlined' : 'down-outlined'"/>
|
||||
</a>
|
||||
<% }%>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-col :xs="24" :sm="6" :md="6" :lg="6" :xl="6">
|
||||
<a-form-item>
|
||||
<a-space>
|
||||
<a-button type="primary" @click="tableRef.refresh(true)">
|
||||
<template #icon><SearchOutlined /></template>
|
||||
查询
|
||||
</a-button>
|
||||
<a-button @click="reset">
|
||||
<template #icon><redo-outlined /></template>
|
||||
重置
|
||||
</a-button>
|
||||
<% if(searchCount > 3) { %>
|
||||
<a @click="toggleAdvanced" style="margin-left: 8px">
|
||||
{{ advanced ? '收起' : '展开' }}
|
||||
<component :is="advanced ? 'up-outlined' : 'down-outlined'"/>
|
||||
</a>
|
||||
<% }%>
|
||||
</a-space>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-form>
|
||||
<% } %>
|
||||
<s-table
|
||||
@ -85,6 +95,7 @@
|
||||
:row-key="(record) => record.${dbTableKeyCamelCase}"
|
||||
:tool-config="toolConfig"
|
||||
:row-selection="options.rowSelection"
|
||||
:scroll="{ x: 'max-content' }"
|
||||
>
|
||||
<template #operator class="table-operator">
|
||||
<a-space>
|
||||
@ -167,7 +178,7 @@
|
||||
import { cloneDeep } from 'lodash-es'
|
||||
import Form from './form.vue'
|
||||
import ImportModel from './importModel.vue'
|
||||
import downloadUtil from '@/utils/downloadUtil'
|
||||
import downloadUtil from '@/utils/downloadUtil'
|
||||
import ${classNameFirstLower}Api from '@/api/${moduleName}/${classNameFirstLower}Api'
|
||||
<% if (searchCount > 0) { %>
|
||||
const searchFormState = ref({})
|
||||
@ -203,6 +214,7 @@
|
||||
title: '操作',
|
||||
dataIndex: 'action',
|
||||
align: 'center',
|
||||
fixed: 'right',
|
||||
width: 150
|
||||
})
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user