| | |
| | | <div class="el-upload__tip">上传jpg/png图片尺寸小于5M,最多可上传1张</div> |
| | | </template> |
| | | </el-upload> |
| | | |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | <script setup> |
| | | import {ref, watch, defineExpose, onMounted, reactive, toRefs, watchEffect} from "vue" |
| | | import {ElMessage, ElMessageBox} from "element-plus" |
| | | import { register,delPic,getDict,checkUserName, checkPhone } 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' |
| | | import {getAgencyById} from "../../../api/sysUsers"; |
| | | const emit = defineEmits(["getList"]); |
| | | |
| | | const props = { |
| | | expandTrigger: 'hover', |
| | |
| | | } |
| | | }) |
| | | const {registerForm} = toRefs(state); |
| | | const startUsername = ref(''); |
| | | const startPhone = ref(''); |
| | | const equalToPassword = (rule, value, callback) => { |
| | | if (state.registerForm.password !== value) { |
| | | callback(new Error("两次输入的密码不一致")); |
| | |
| | | const validateUserPhone = (rule, value, callback)=>{ |
| | | if(value === ''){ |
| | | callback(new Error('请输入手机号')) |
| | | }else{ |
| | | }else if(state.title == '编辑' && value == startPhone.value){ |
| | | callback() |
| | | } else{ |
| | | if(!verifyPhone(value)){ |
| | | callback(new Error('手机号格式有误')) |
| | | }else{ |
| | |
| | | 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之间')) |
| | |
| | | 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 |
| | | getAgencyById({agencyId: value.agencyId}).then((res)=>{ |
| | | if(res.code == 200){ |
| | | const info = JSON.parse(JSON.stringify(res.data)) |
| | |
| | | } |
| | | } |
| | | 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} }) : [] |
| | | } |
| | | |
| | | }else{ |
| | | ElMessage.warning(res.message) |
| | | } |
| | |
| | | dangerouslyUseHTMLString: true, |
| | | type: "success", |
| | | }).then(() => { |
| | | emit("getList") |
| | | dialogVisible.value = false |
| | | proxy.$refs.registerRef.resetFields() |
| | | proxy.$refs.registerRef.clearValidate() |
| | |
| | | }).catch(() => { |
| | | loading.value = false |
| | | }) |
| | | }else { |
| | | const {confirmPassword, ...data} = state.registerForm |
| | | data.password = Base64.encode(data.password) |
| | | console.log('data',data) |
| | | data.agency.business = data.agency.business.join(',') |
| | | // delete data.agency.area |
| | | console.log('data',data) |
| | | editAgency(data).then(res => { |
| | | if(res.code == 200){ |
| | | ElMessage({ |
| | | type: 'success', |
| | | message: '编辑成功' |
| | | }) |
| | | emit("getList") |
| | | dialogVisible.value = false |
| | | proxy.$refs.registerRef.resetFields() |
| | | proxy.$refs.registerRef.clearValidate() |
| | | state.fileList = [] |
| | | loading.value = false |
| | | |
| | | }else{ |
| | | ElMessage({ |
| | | type: 'warning', |
| | | message: res.message |
| | | }) |
| | | } |
| | | }).catch(() => { |
| | | loading.value = false |
| | | }) |
| | | } |
| | | } |
| | | }); |