From 27a476e32c30c0d3a6319ff20c1e8586ad47d804 Mon Sep 17 00:00:00 2001
From: zhouwx <1175765986@qq.com>
Date: 星期五, 12 十二月 2025 09:41:42 +0800
Subject: [PATCH] 修改
---
src/layout/components/Register/index.vue | 435 +++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 328 insertions(+), 107 deletions(-)
diff --git a/src/layout/components/Register/index.vue b/src/layout/components/Register/index.vue
index 9732e21..afdc9b3 100644
--- a/src/layout/components/Register/index.vue
+++ b/src/layout/components/Register/index.vue
@@ -2,7 +2,7 @@
<el-dialog v-model="dialogVisible" width="75%" top="50vh" align-center @close="closeDialog">
<template #header>
<div style="display:flex;font-size: 1.2rem;font-weight: bolder">
- 机构注册
+ {{state.title}}
<div style="font-size: 0.9rem;display:flex;align-items: center;font-weight: normal;margin-left: 6px"><Warning style="color:#EF4444;width: 0.9rem; height: 0.9rem;margin-right: 2px" />请认真填写注册信息,带 <span style="color:#EF4444;vertical-align: middle">*</span> 为必填项</div>
</div>
</template>
@@ -11,7 +11,8 @@
<el-col :span="8">
<el-form-item prop="agency.name" label="机构名称">
<el-input
- v-model="registerForm.agency.name"
+ :disabled="isAbleEdit"
+ v-model.trim="registerForm.agency.name"
size="large"
placeholder="请输入机构名称"
>
@@ -21,7 +22,8 @@
<el-col :span="8">
<el-form-item prop="agency.creditCode" label="社会信用代码">
<el-input
- v-model="registerForm.agency.creditCode"
+ :disabled="isAbleEdit"
+ v-model.trim="registerForm.agency.creditCode"
size="large"
placeholder="请输入社会信用代码"
>
@@ -31,8 +33,8 @@
<el-col :span="8">
<el-form-item prop="agency.attribute" label="机构属性">
<el-radio-group v-model="registerForm.agency.attribute" style="width: 50%" @change="changeAttr()">
- <el-radio :label="0" size="large">疆内</el-radio>
- <el-radio :label="1" size="large">疆外</el-radio>
+ <el-radio :label="0" size="large" border>疆内</el-radio>
+ <el-radio :label="1" size="large" border>疆外</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
@@ -53,7 +55,7 @@
<el-col :span="12">
<el-form-item prop="agency.address" label="实际经营地址">
<el-input
- v-model="registerForm.agency.address"
+ v-model.trim="registerForm.agency.address"
size="large"
placeholder="请输入实际经营地址"
/>
@@ -64,7 +66,7 @@
<el-col :span="12">
<el-form-item prop="agency.legalPerson" label="法定代表人">
<el-input
- v-model="registerForm.agency.legalPerson"
+ v-model.trim="registerForm.agency.legalPerson"
size="large"
placeholder="请输入法定代表人"
/>
@@ -73,7 +75,7 @@
<el-col :span="12">
<el-form-item prop="agency.legalPhone" label="法人电话">
<el-input
- v-model="registerForm.agency.legalPhone"
+ v-model.trim="registerForm.agency.legalPhone"
size="large"
placeholder="请输入法人电话"
/>
@@ -84,7 +86,7 @@
<el-col :span="12">
<el-form-item prop="agency.manager" label="机构负责人">
<el-input
- v-model="registerForm.agency.manager"
+ v-model.trim="registerForm.agency.manager"
size="large"
placeholder="请输入机构负责人"
/>
@@ -93,7 +95,7 @@
<el-col :span="12">
<el-form-item prop="agency.managerPhone" label="负责人电话">
<el-input
- v-model="registerForm.agency.managerPhone"
+ v-model.trim="registerForm.agency.managerPhone"
size="large"
placeholder="请输入负责人电话"
/>
@@ -104,16 +106,16 @@
<el-col :span="8">
<el-form-item prop="agency.certNumber" label="资质证书编号">
<el-input
- v-model="registerForm.agency.certNumber"
+ v-model.trim="registerForm.agency.certNumber"
size="large"
- placeholder="请输入机构负责人"
+ placeholder="请输入资质证书编号"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item prop="agency.issueDate" label="发证日期">
<el-date-picker
- v-model="registerForm.agency.issueDate"
+ v-model.trim="registerForm.agency.issueDate"
type="date"
placeholder="请选择发证日期"
value-format="YYYY-MM-DD 00:00:00"
@@ -125,7 +127,7 @@
<el-col :span="8">
<el-form-item prop="agency.validDate" label="有效日期">
<el-date-picker
- v-model="registerForm.agency.validDate"
+ v-model.trim="registerForm.agency.validDate"
type="date"
placeholder="请选择有效日期"
value-format="YYYY-MM-DD 00:00:00"
@@ -137,9 +139,21 @@
</el-row>
<el-row :gutter="30">
<el-col :span="8">
+ <el-form-item prop="agency.certPath" label="资质证书">
+ <el-upload accept="image/*" :action="state.uploadUrl" :headers="state.header" method="post" :on-success="(res, uploadFile)=>handleAvatarSuccess(res, uploadFile,'证书')" :on-exceed="showTip" :on-preview="handlePictureCardPreview" :limit='state.imgLimit' v-model:file-list="state.certList" list-type="picture-card" :before-upload="picSize" :on-remove="(file, uploadFiles)=>handleRemove(file, uploadFiles,'证书')" >
+ <el-icon><Plus /></el-icon>
+ <template #tip>
+ <div class="el-upload__tip">上传jpg/png图片尺寸小于5M,最多可上传1张</div>
+ </template>
+ </el-upload>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="30">
+ <el-col :span="8">
<el-form-item prop="agency.assetValue" label="固定资产总值">
<el-input
- v-model="registerForm.agency.assetValue"
+ v-model.trim="registerForm.agency.assetValue"
type="number"
size="large"
placeholder="请输入固定资产总值"
@@ -150,7 +164,7 @@
<el-form-item prop="agency.workArea" label="工作场所建筑面积">
<el-input
type="number"
- v-model="registerForm.agency.workArea"
+ v-model.trim="registerForm.agency.workArea"
size="large"
placeholder="请输入工作场所建筑面积"
><template #append>㎡</template></el-input>
@@ -160,7 +174,7 @@
<el-form-item prop="agency.archiveArea" label="档案室面积">
<el-input
type="number"
- v-model="registerForm.agency.archiveArea"
+ v-model.trim="registerForm.agency.archiveArea"
size="large"
placeholder="请输入档案室面积"
><template #append>㎡</template></el-input>
@@ -171,7 +185,7 @@
<el-col :span="8">
<el-form-item prop="agency.regAddress" label="注册地址">
<el-input
- v-model="registerForm.agency.regAddress"
+ v-model.trim="registerForm.agency.regAddress"
size="large"
placeholder="请输入注册地址"
/>
@@ -179,7 +193,7 @@
</el-col>
<el-col :span="8">
<el-form-item prop="agency.business" label="申请的法定安全评价业务范围">
- <el-select v-model="registerForm.agency.business" placeholder="请选择业务范围" multiple size="large" style="width: 100%">
+ <el-select :disabled="isAbleEdit" v-model="registerForm.agency.business" placeholder="请选择业务范围" multiple size="large" style="width: 100%">
<el-option
v-for="item in state.busList"
:key="item.id"
@@ -191,8 +205,8 @@
</el-col>
</el-row>
<el-row :gutter="30">
- <el-col :span="8">
- <el-form-item prop="agency.reportPath" label="加盖公章的《机构信息上报表》">
+ <el-col :span="24">
+ <el-form-item prop="agency.reportPath" label="加盖公章的《机构信息上报表》(请上传加盖公章的营业执照)">
<!-- <el-upload-->
<!-- v-model:file-list="state.fileList"-->
<!-- class="upload-demo"-->
@@ -211,12 +225,13 @@
<!-- </div>-->
<!-- </template>-->
<!-- </el-upload>-->
- <el-upload accept="image/*" :action="state.uploadUrl" :headers="state.header" method="post" :on-success="handleAvatarSuccess" :on-exceed="showTip" :on-preview="handlePictureCardPreview" :limit='state.imgLimit' v-model:file-list="state.fileList" list-type="picture-card" :before-upload="picSize" :on-remove="handleRemove" :before-remove="beforeRemove">
+ <el-upload accept="image/*" :action="state.uploadUrl" :headers="state.header" method="post" :on-success="(res, uploadFile)=>handleAvatarSuccess(res, uploadFile,'上报表')" :on-exceed="showTip" :on-preview="handlePictureCardPreview" :limit='state.imgLimit' v-model:file-list="state.fileList" list-type="picture-card" :before-upload="picSize" :on-remove="(file, uploadFiles)=>handleRemove(file, uploadFiles,'上报表')" >
<el-icon><Plus /></el-icon>
<template #tip>
<div class="el-upload__tip">上传jpg/png图片尺寸小于5M,最多可上传1张</div>
</template>
</el-upload>
+
</el-form-item>
</el-col>
</el-row>
@@ -224,7 +239,8 @@
<el-col :span="12">
<el-form-item prop="username" label="登录用户名(字母+数字,长度在5-16之间)">
<el-input
- v-model="registerForm.username"
+ :disabled="state.title == '编辑'"
+ v-model.trim="registerForm.username"
size="large"
placeholder="请输入登录用户名"
/>
@@ -233,18 +249,18 @@
<el-col :span="12">
<el-form-item prop="phone" label="用户电话">
<el-input
- v-model="registerForm.phone"
+ v-model.trim="registerForm.phone"
size="large"
placeholder="请输入用户电话"
/>
</el-form-item>
</el-col>
</el-row>
- <el-row :gutter="30">
+ <el-row :gutter="30" v-if="state.title == '新增/注册'">
<el-col :span="12">
- <el-form-item prop="password" label="密码">
+ <el-form-item prop="password" label="密码(字母+数字+特殊字符,长度在6-16之间)">
<el-input
- v-model="registerForm.password"
+ v-model.trim="registerForm.password"
type="password"
size="large"
placeholder="请输入密码"
@@ -255,7 +271,7 @@
<el-col :span="12">
<el-form-item prop="confirmPassword" label="确认密码">
<el-input
- v-model="registerForm.confirmPassword"
+ v-model.trim="registerForm.confirmPassword"
type="password"
size="large"
auto-complete="off"
@@ -273,9 +289,16 @@
type="primary"
style="width:40%;margin: 0 auto"
@click.prevent="handleRegister"
+ v-preReClick
>
- <span v-if="!loading">注 册</span>
- <span v-else>注 册 中...</span>
+ <div v-if="state.title == '新增/注册'">
+ <span v-if="!loading">注 册</span>
+ <span v-else>注 册 中...</span>
+ </div>
+ <div v-else>
+ <span v-if="!loading">确定</span>
+ <span v-else>编 辑 中...</span>
+ </div>
</el-button>
</el-form-item>
</el-form>
@@ -286,43 +309,18 @@
</template>
<script setup>
-import {ref, watch, defineExpose, onMounted, reactive} from "vue"
+import {ref, watch, defineExpose, onMounted, reactive, toRefs, watchEffect} from "vue"
import {ElMessage, ElMessageBox} from "element-plus"
-import { register,delPic,getDict } from "@/api/login"
+import {register, delPic, getDict, checkUserName, checkPhone, editAgency} from "@/api/login"
import { getRegionTree } from "@/api/area"
import { getToken } from "@/utils/auth";
import {verifyPhone, verifyUsername, verifyPwd} from "../../../utils/validate";
let { proxy } = getCurrentInstance()
import { Base64 } from 'js-base64'
-const registerForm = ref({
- agency:{
- name: "",
- creditCode: "",
- attribute: 0,
- area: [],
- province: '',
- city: '',
- district: '',
- address: '',
- legalPerson: '',
- legalPhone: '',
- manager: '',
- managerPhone: '',
- certNumber: '',
- issueDate: '',
- validDate: '',
- assetValue: '',
- workArea: '',
- archiveArea: '',
- regAddress: '',
- business: '',
- reportPath: '',
- },
- username: '',
- phone: '',
- password: '',
- confirmPassword: ''
-});
+import {getAgencyById} from "../../../api/sysUsers";
+import Cookies from "js-cookie";
+import {getInstitutionDetail} from "@/api/backManage/insitution";
+const emit = defineEmits(["getList"]);
const props = {
expandTrigger: 'hover',
@@ -331,21 +329,57 @@
}
const state = reactive({
+ title: '',
areaList: [],
busList: [],
fileList: [],
+ certList: [],
imgLimit: 1,
uploadUrl: import.meta.env.VITE_APP_BASE_API + '/system/common/uploadFile',
header: {
Authorization: 'Bearer ' + getToken()
},
dialogImageUrl: '',
- dialogImg: false
+ dialogImg: false,
+ isView: false,
+ registerForm:{
+ agency:{
+ name: "",
+ creditCode: "",
+ attribute: 0,
+ area: [],
+ province: '',
+ city: '',
+ district: '',
+ address: '',
+ legalPerson: '',
+ legalPhone: '',
+ manager: '',
+ managerPhone: '',
+ certNumber: '',
+ issueDate: '',
+ validDate: '',
+ assetValue: '',
+ workArea: '',
+ archiveArea: '',
+ regAddress: '',
+ business: '',
+ reportPath: '',
+ certPath: ''
+ },
+ username: '',
+ phone: '',
+ password: '',
+ confirmPassword: ''
+ }
})
+const isSuper = ref(false);
-
+const {registerForm} = toRefs(state);
+const startUsername = ref('');
+const startPhone = ref('');
const equalToPassword = (rule, value, callback) => {
- if (registerForm.value.password !== value) {
+ if (state.registerForm.password !== value) {
callback(new Error("两次输入的密码不一致"));
} else {
callback();
@@ -364,14 +398,66 @@
}
}
+const validateUserPhone = (rule, value, callback)=>{
+ if(value === ''){
+ callback(new Error('请输入手机号'))
+ }else if(state.title == '编辑' && value == startPhone.value){
+ callback()
+ } else{
+ if(!verifyPhone(value)){
+ callback(new Error('手机号格式有误'))
+ }else{
+ let param = {}
+ if(state.title=='新增/注册') {
+ param = {
+ phone:value,
+ identity: 1
+ }
+ }else if(state.title=='编辑'){
+ param = {
+ phone:value,
+ identity: 1,
+ id: state.registerForm.id
+ }
+ }
+ checkPhone(param).then((res)=>{
+ if(res.data == false){
+ callback(new Error('该手机号已被绑定用户,请更换其他手机号'))
+ }else{
+ callback()
+ }
+ })
+ }
+ }
+}
+
const validateUsername = (rule, value, callback)=>{
if(value === ''){
callback(new Error('请输入登录时用户名'))
+ }else if(state.title == '编辑' && value == startUsername.value){
+ callback()
}else{
if(!verifyUsername(value)){
- callback(new Error('用户名须使用字母+数字,长度在5-16之间'))
+ callback(new Error('用户名须使用字母或数字,长度在5-16之间'))
}else{
- callback()
+ let param = {}
+ if(state.title=='新增/注册') {
+ param = {
+ username:value
+ }
+ }else if(state.title=='编辑'){
+ param = {
+ username:value,
+ id: state.registerForm.id
+ }
+ }
+ checkUserName(param).then((res)=>{
+ if(res.data == false){
+ callback(new Error('用户名已被占用,请更换其他用户名'))
+ }else{
+ callback()
+ }
+ })
}
}
}
@@ -381,7 +467,7 @@
callback(new Error('请输入密码'))
}else{
if(!verifyPwd(value)){
- callback(new Error('密码须包含字母、数字、特殊字符(不包括下划线),长度在6-16之间'))
+ callback(new Error('密码须包含字母、数字、特殊字符,长度在6-16之间'))
}else{
callback()
}
@@ -407,8 +493,9 @@
"agency.regAddress": [{required: true, trigger: "blur", message: "请输入注册地址"}],
"agency.business": [{required: true, trigger: "blur", message: "请选择申请的法定安全评价业务范围"}],
"agency.reportPath": [{required: true, trigger: "blur", message: "请上传加盖公章的《机构信息上报表》"}],
+ "agency.certPath": [{required: true, trigger: "blur", message: "请上传资质证书"}],
username: [{ required: true, trigger: "blur", validator: validateUsername }],
- phone: [{ required: true, trigger: "blur", validator: validatePhone }],
+ phone: [{ required: true, trigger: "blur", validator: validateUserPhone }],
password: [{ required: true, trigger: "blur", validator: validatePwd }],
confirmPassword: [
{ required: true, trigger: "blur", message: "请再次确认密码" },
@@ -421,19 +508,90 @@
const registerRef = ref(null)
onMounted(()=>{
+ if(getToken()){
+ const userInfo = JSON.parse(Cookies.get('userInfo'))
+ if(userInfo.identity == 0){isSuper.value = true}
+ }
+
getBusiness()
- getArea()
+ getArea()
+ // watchEffect(() => {
+ // // 在副作用中调用 getArea()
+ // getArea();
+ // });
})
+const isAbleEdit = ref(false);
+const isReject = ref(false);
+const openDialog=(type, value)=>{
+ state.title = type === 'add' ? '新增/注册' : (type ==='edit' || type ==='reject') ? '编辑' : '查看' ;
+ getArea()
+ if(type === 'edit' || type == 'view' || type ==='reject') {
+ state.registerForm.id = value.id
+ state.registerForm.username = value.username
+ state.registerForm.phone = value.phone
+ startUsername.value = value.username
+ startPhone.value = value.phone
+ state.registerForm.agency.id = value.agencyId
+ if( isSuper.value){
+ isAbleEdit.value = false
+ }else{
+ isAbleEdit.value = true
+ }
+ getAgencyById({agencyId: value.agencyId}).then((res)=>{
+ if(res.code == 200){
+ const info = JSON.parse(JSON.stringify(res.data))
+ for(let i in state.registerForm.agency){
+ if(validKey(i,info)){
+ state.registerForm.agency[i] = info[i]
+ }
+ }
+ getArea()
+ state.registerForm.phone = info.user.phone
+ startPhone.value = info.user.phone
+ state.registerForm.agency.business = info.business.split(',').map(Number)
+ if(state.registerForm.agency.attribute === 0){
+ state.registerForm.agency.area = [info.city,info.district].filter(item => { return item && item.trim() })
+ }else {
+ state.registerForm.agency.area = [info.province,info.city,info.district].filter(item => { return item && item.trim() })
+ }
+ if(res.data.reportPath) {
+ const imgUrl = import.meta.env.VITE_APP_BASE_API + "/" + res.data.reportPath
+ state.fileList = imgUrl ? imgUrl.split(',').map(url => {return {url} }) : []
+ }
+ if(res.data.certPath) {
+ const imgUrl = import.meta.env.VITE_APP_BASE_API + "/" + res.data.certPath
+ state.certList = imgUrl ? imgUrl.split(',').map(url => {return {url} }) : []
+ }
+
+
+ }else{
+ ElMessage.warning(res.message)
+ }
+ })
+ if(type == 'view'){
+ state.isView = true
+ }
+ if(type === 'reject'){
+ isReject.value = true;
+ }
+ }
+ dialogVisible.value = true
+ console.log('state.registerForm',state.registerForm)
+}
+
+const validKey=(key,obj)=>{
+ return key in obj
+}
const handleChange = (value) => {
- if(registerForm.value.agency.attribute == 0){
- registerForm.value.agency.province = '新疆维吾尔自治区'
- registerForm.value.agency.city = value[0]?value[0]:''
- registerForm.value.agency.district = value[1]?value[1]:''
+ if(state.registerForm.agency.attribute == 0){
+ state.registerForm.agency.province = '新疆维吾尔自治区'
+ state.registerForm.agency.city = value[0]?value[0]:''
+ state.registerForm.agency.district = value[1]?value[1]:''
}else{
- registerForm.value.agency.province = value[0]?value[0]:''
- registerForm.value.agency.city = value[1]?value[1]:''
- registerForm.value.agency.district = value[2]?value[2]:''
+ state.registerForm.agency.province = value[0]?value[0]:''
+ state.registerForm.agency.city = value[1]?value[1]:''
+ state.registerForm.agency.district = value[2]?value[2]:''
}
}
@@ -447,7 +605,7 @@
}
const getArea = async ()=>{
- const type = registerForm.value.agency.attribute
+ const type = state.registerForm.agency.attribute
const res = await getRegionTree({name: '',parentId: null,regionType: type})
if(res.code == 200){
state.areaList = res.data
@@ -457,6 +615,10 @@
}
const changeAttr=()=>{
+ state.registerForm.agency.area = []
+ state.registerForm.agency.province = ''
+ state.registerForm.agency.city = ''
+ state.registerForm.agency.district = ''
getArea()
}
@@ -484,9 +646,15 @@
};
-const handleAvatarSuccess = (res, uploadFile) => {
+const handleAvatarSuccess = (res, uploadFile,type) => {
if(res.code == 200){
- registerForm.value.agency.reportPath = res.data.path
+ console.log("type",type)
+ if(type === '上报表'){
+ state.registerForm.agency.reportPath = res.data.path
+ }else {
+ state.registerForm.agency.certPath = res.data.path
+ }
+
}else{
ElMessage({
type: 'warning',
@@ -495,8 +663,17 @@
}
}
-const handleRemove = async (file, uploadFiles) => {
- const res = await delPic({path: registerForm.value.agency.reportPath})
+const handleRemove = async (file, uploadFiles,type) => {
+ if(file && file.status == 'success'){
+
+
+ let path = '';
+ if(type === '上报表'){
+ path = state.registerForm.agency.reportPath;
+ }else {
+ path = state.registerForm.agency.certPath;
+ }
+ const res = await delPic({path: path})
if(res.code == 200){
ElMessage({
type: 'success',
@@ -508,50 +685,94 @@
message: res.message
})
}
+ }
}
function handleRegister() {
proxy.$refs.registerRef.validate(valid => {
if (valid) {
loading.value = true;
- const {confirmPassword, ...data} = registerForm.value
- data.password = Base64.encode(data.password)
- data.agency.business = data.agency.business.join(',')
- delete data.agency.area
- register(data).then(res => {
- if(res.code == 200){
- const username = registerForm.value.username
- ElMessageBox.alert("<font color='red'>恭喜,您的账号 " + username + " 注册成功!</font>", "系统提示", {
- dangerouslyUseHTMLString: true,
- type: "success",
- }).then(() => {
- dialogVisible.value = false
- proxy.$refs.registerRef.resetFields()
- proxy.$refs.registerRef.clearValidate()
- state.fileList = []
- // router.push("/homePage")
- }).catch(() => {})
- }else{
- ElMessage({
- type: 'warning',
- message: res.message
+ if(state.title == '新增/注册'){
+ const {confirmPassword,id, ...data} = JSON.parse(JSON.stringify(state.registerForm))
+ data.password = Base64.encode(data.password)
+ data.agency.business = data.agency.business.join(',')
+ delete data.agency.area
+ delete data.agency.id
+ register(data).then(res => {
+ if(res.code == 200){
+ const username = state.registerForm.username
+ ElMessageBox.alert("<font color='red'>恭喜,您的账号 " + username + " 注册成功!</font>", "系统提示", {
+ dangerouslyUseHTMLString: true,
+ type: "success",
+ }).then(() => {
+ emit("getList")
+
+ dialogVisible.value = false
+ state.registerForm.agency.attribute = 0
+ proxy.$refs.registerRef.resetFields()
+ proxy.$refs.registerRef.clearValidate()
+ state.fileList = []
+ state.certList = []
+ loading.value = false
+ // router.push("/homePage")
+ }).catch(() => {})
+ }else{
+ ElMessage({
+ type: 'warning',
+ message: res.message
+ })
+ }
+ }).catch(() => {
+ loading.value = false
+ })
+ }else {
+ const {confirmPassword, ...data} = JSON.parse(JSON.stringify(state.registerForm))
+ data.password = Base64.encode(data.password)
+ data.agency.business = data.agency.business.join(',')
+ if(isReject.value) {
+ data.state = 1;
+ }
+ // delete data.agency.area
+ console.log('data',data)
+ editAgency(data).then(res => {
+ if(res.code == 200){
+ ElMessage({
+ type: 'success',
+ message: '编辑成功'
+ })
+
+ dialogVisible.value = false
+ state.registerForm.agency.attribute = 0
+ proxy.$refs.registerRef.resetFields()
+ proxy.$refs.registerRef.clearValidate()
+ state.fileList = []
+ state.certList = []
+ loading.value = false
+ emit("getList")
+ }else{
+ ElMessage({
+ type: 'warning',
+ message: res.message
+ })
+ }
+ }).catch(() => {
+ loading.value = false
})
- }
- }).catch(() => {
- loading.value = false
- })
+ }
}
});
}
const closeDialog = ()=>{
+ state.registerForm.agency.attribute = 0
proxy.$refs.registerRef.resetFields()
proxy.$refs.registerRef.clearValidate()
state.fileList = []
+ state.certList = []
}
defineExpose({
- dialogVisible,
+ openDialog
})
</script>
--
Gitblit v1.9.2