update 用户管理-添加手写章

This commit is contained in:
赵霄
2024-02-05 14:11:24 +08:00
parent 213828de68
commit 0190a14ac8
4 changed files with 132 additions and 15 deletions
+3
View File
@@ -20,6 +20,8 @@ const checkOnlyUser = (params) => getAction('/sys/user/checkOnlyUser', params)
const changePassword = (params) => postAction('/sys/user/changePassword', params) const changePassword = (params) => postAction('/sys/user/changePassword', params)
// 单点登录获取用户信息 // 单点登录获取用户信息
const getSSOUserInfo = (params) => postAction('/iam/loginByOauth2', params) const getSSOUserInfo = (params) => postAction('/iam/loginByOauth2', params)
// 上传手写章
const uploadHandStamp = (params) => postAction('/sys/user/uploadHandStamp', params)
// 权限管理 // 权限管理
const addPermission = (params) => postAction('/sys/permission/add', params) const addPermission = (params) => postAction('/sys/permission/add', params)
@@ -221,6 +223,7 @@ export {
getEnterpriseLevelMapList, getEnterpriseLevelMapList,
getSSOUserInfo, getSSOUserInfo,
uploadHandStamp,
addAsmsInterface, addAsmsInterface,
editAsmsInterface, editAsmsInterface,
+2 -1
View File
@@ -259,7 +259,8 @@ module.exports = {
enterMailboxCorrect: '请输入正确格式的邮箱', enterMailboxCorrect: '请输入正确格式的邮箱',
userExists: '用户名已存在', userExists: '用户名已存在',
workNoExists: '工号已存在', workNoExists: '工号已存在',
handStamp: '手写章' handStamp: '手写章',
uploadHandStamp:'上传手写章'
}, },
// 高级查询 // 高级查询
superQuery: { superQuery: {
+19 -3
View File
@@ -173,6 +173,8 @@
</template> </template>
<template v-slot:action="{text, record}" v-else> <template v-slot:action="{text, record}" v-else>
<a href="javascript:" @click="handleDetail(record)">{{ $t('details') }}</a> <a href="javascript:" @click="handleDetail(record)">{{ $t('details') }}</a>
<a-divider type="vertical" v-has="'user:uploadHandStamp'" />
<a @click="handleUploadHandStamp(record)" v-has="'user:uploadHandStamp'">{{ $t('user.uploadHandStamp') }}</a>
</template> </template>
</j-table> </j-table>
</div> </div>
@@ -186,9 +188,13 @@
<user-recycle-bin-modal :visible.sync="recycleBinVisible" @ok="modalFormOk" /> <user-recycle-bin-modal :visible.sync="recycleBinVisible" @ok="modalFormOk" />
<!-- 角色配置 --> <!-- 角色配置 -->
<!-- <j-modal title="角色配置" :width='650'>--> <!-- <j-modal title="角色配置" :width='650'>-->
<role-assignment ref="roleAssignmentModal" :selectedRowKeysArray='selectedRowKeys' @ok="modalFormOk" @rolevisible='rolevisibleMethods'></role-assignment> <role-assignment ref="roleAssignmentModal"
:selectedRowKeysArray='selectedRowKeys'
@ok="modalFormOk"
@rolevisible='rolevisibleMethods'></role-assignment>
<!-- </j-modal>--> <!-- </j-modal>-->
<upload-hand-stamp-modal ref="uploadHandStampModal" @ok="modalFormOk" />
</a-card> </a-card>
</template> </template>
@@ -204,6 +210,7 @@ import JInput from '@/components/jero/JInput'
import UserRecycleBinModal from './modules/UserRecycleBinModal' import UserRecycleBinModal from './modules/UserRecycleBinModal'
import JTable from '@/components/jero/JTable' import JTable from '@/components/jero/JTable'
import JSearchSelectTag from '@/components/dict/JSearchSelectTag' import JSearchSelectTag from '@/components/dict/JSearchSelectTag'
import UploadHandStampModal from './modules/UploadHandStampModal'
export default { export default {
name: 'UserList', name: 'UserList',
@@ -215,12 +222,13 @@ export default {
JInput, JInput,
UserRecycleBinModal, UserRecycleBinModal,
JTable, JTable,
JSearchSelectTag JSearchSelectTag,
UploadHandStampModal
}, },
data () { data () {
return { return {
// 是否开发环境(线上需隐藏按钮) // 是否开发环境(线上需隐藏按钮)
isDev: process.env.VUE_APP_TAG_FLAG === '0', isDev: process.env.VUE_APP_TAG_FLAG !== '0',
description: this.$t('user.freezePasManagementPage'), description: this.$t('user.freezePasManagementPage'),
queryParam: {}, queryParam: {},
recycleBinVisible: false, recycleBinVisible: false,
@@ -446,6 +454,13 @@ export default {
rolevisibleMethods () { rolevisibleMethods () {
this.onClearSelected() this.onClearSelected()
this.selectedRowKeys = [] this.selectedRowKeys = []
},
/**
* 上传手写章
* @param record
*/
handleUploadHandStamp (record) {
this.$refs.uploadHandStampModal.edit(record)
} }
} }
@@ -453,6 +468,7 @@ export default {
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
@import '~@assets/less/common.less'; @import '~@assets/less/common.less';
/deep/ .table-page-search-wrapper .ant-form-inline .ant-form-item > .ant-form-item-label { /deep/ .table-page-search-wrapper .ant-form-inline .ant-form-item > .ant-form-item-label {
min-width: 80px; min-width: 80px;
} }
@@ -0,0 +1,97 @@
<template>
<j-modal
:title="$t('user.uploadHandStamp')"
:width="width"
:visible="visible"
:maskClosable="false"
:confirmLoading="confirmLoading"
@ok="handleOk"
@cancel="handleCancel">
<a-spin :spinning="confirmLoading">
<a-form :form="form">
<!--手写章-->
<a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('user.handStamp')">
<j-image-upload class="avatar-uploader"
:text="$t('upload')"
v-decorator="['avatar', validatorRules.avatar]"
:number=1
accept='.png,.PNG,.jpg,.JPG'></j-image-upload>
</a-form-item>
</a-form>
</a-spin>
</j-modal>
</template>
<script>
import { uploadHandStamp } from '../../../api/api'
export default {
name: 'UploadHandStampModal',
data () {
return {
title: this.$t('operation'),
width: 400,
visible: false,
confirmLoading: false,
model: {},
form: this.$form.createForm(this),
labelCol: {
xs: { span: 24 },
sm: { span: 6 }
},
wrapperCol: {
xs: { span: 24 },
sm: { span: 18 }
},
validatorRules: {
// 手写章
avatar: {
rules: [{ required: true, message: this.$t('uploadFile.pleaseUpload') + this.$t('user.handStamp') }],
validateTrigger: 'change'
}
}
}
},
methods: {
edit (record) {
this.visible = true
this.model = Object.assign({}, record)
this.$nextTick(() => {
this.form.setFieldsValue(this.model)
})
},
handleOk () {
this.form.validateFields((errors, values) => {
if (!errors) {
const formData = Object.assign({ id: this.model.id }, values)
this.confirmLoading = true
uploadHandStamp(formData).then(res => {
if (res.success) {
this.$message.success(res.message)
this.close()
that.$emit('ok')
} else {
this.$message.warning(res.message)
}
}).finally(() => {
this.confirmLoading = false
})
}
})
},
handleCancel () {
this.close()
},
close () {
this.visible = false
this.model = {}
this.form.resetFields()
}
}
}
</script>
<style scoped lang="less">
</style>