用户注册

远程订阅设置心跳
登录页面获取医院列表
This commit is contained in:
zhaoyz 2024-03-25 11:03:42 +08:00
parent b2ae2c432e
commit 6d90fdfea3
4 changed files with 60 additions and 21 deletions

View File

@ -4,6 +4,7 @@ import {HOST} from "@/utils/request";
import {ElMessage} from "element-plus"; import {ElMessage} from "element-plus";
const FORM_CONTENT_TYPE = 'application/x-www-form-urlencoded'; const FORM_CONTENT_TYPE = 'application/x-www-form-urlencoded';
const registerUrl = "/admin/register/user"
export const login = (data: any) => { export const login = (data: any) => {
return new Promise(resolve => { return new Promise(resolve => {
@ -36,4 +37,11 @@ export const login = (data: any) => {
} }
}) })
}) })
}; };
export const register = (data: any) => {
return new Promise(resolve => {
console.log(data)
resolve(true)
})
}

18
src/api/hospital.ts Normal file
View File

@ -0,0 +1,18 @@
import axios from "axios";
const getHospitalListUrl = "/api/admin/hospital/getHospitalList"
const FORM_CONTENT_TYPE = 'application/x-www-form-urlencoded'
export const getHospitalList = () => {
return new Promise(resolve => {
axios.request({
url: getHospitalListUrl,
method: 'post',
headers: {
'Content-Type': FORM_CONTENT_TYPE,
},
}).then(res => {
resolve(res.data);
})
})
}

View File

@ -79,8 +79,8 @@
</div> </div>
<el-form ref="registerFormRef" :model="registerParams" :rules="registerRules" label-width="100"> <el-form ref="registerFormRef" :model="registerParams" :rules="registerRules" label-width="100">
<el-form-item label="用户名" prop="account"> <el-form-item label="用户名" prop="username">
<el-input v-model="registerParams.account" placeholder="请输入用户名"></el-input> <el-input v-model="registerParams.username" placeholder="请输入用户名"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="密码" prop="password"> <el-form-item label="密码" prop="password">
<el-input v-model="registerParams.password" type="password" show-password <el-input v-model="registerParams.password" type="password" show-password
@ -138,6 +138,7 @@ import {HOST, post} from "@/utils/request";
import SliderVerify from "@/components/SliderVerify/index.vue"; import SliderVerify from "@/components/SliderVerify/index.vue";
import * as loginApi from "@/api/acl/login"; import * as loginApi from "@/api/acl/login";
import {Session} from "@/utils/storage"; import {Session} from "@/utils/storage";
import * as hospitalApi from "@/api/hospital";
// //
@ -207,7 +208,7 @@ const loginRules = reactive({
] ]
}) })
const registerRules = reactive({ const registerRules = reactive({
account: [ username: [
{required: true, validator: validatorUserName, trigger: 'change'}, {required: true, validator: validatorUserName, trigger: 'change'},
], ],
password: [ password: [
@ -249,7 +250,7 @@ const loginParams = ref({
sendText: '获取短信验证码' sendText: '获取短信验证码'
}) })
const registerParams = ref({ const registerParams = ref({
account: '', username: '',
password: '', password: '',
name: '', name: '',
phone: '', phone: '',
@ -265,6 +266,13 @@ const sliderVConf = ref({
const captchaImgUrl = ref('') const captchaImgUrl = ref('')
const sliderImgUrl = ref('') const sliderImgUrl = ref('')
let randomStr = ""
onMounted(() => {
hospitalApi.getHospitalList().then(data => {
console.log(data)
});
})
const selectHospital = (e: string) => { const selectHospital = (e: string) => {
// console.log(e) // console.log(e)
@ -272,20 +280,22 @@ const selectHospital = (e: string) => {
const register = async () => { const register = async () => {
await registerFormRef.value.validate((valid: any, fields: any) => { await registerFormRef.value.validate((valid: any, fields: any) => {
if (valid) { if (valid) {
ElMessageBox.confirm( loginApi.register({...registerParams.value, randomStr}).then(data => {
'注册成功,是否登录?', ElMessageBox.confirm(
{ '注册成功,是否登录?',
confirmButtonText: '确定', {
cancelButtonText: '取消', confirmButtonText: '确定',
type: 'success', cancelButtonText: '取消',
draggable: true type: 'success',
} draggable: true
).then(() => { }
loginParams.value.account = registerFormRef.value.account ).then(() => {
loginParams.value.name = registerFormRef.value.name loginParams.value.account = registerFormRef.value.account
currentHospital.value = registerFormRef.value.hospital loginParams.value.name = registerFormRef.value.name
isShowRegister.value = false; currentHospital.value = registerFormRef.value.hospital
}).catch(() => { isShowRegister.value = false;
}).catch(() => {
})
}) })
} else { } else {
// console.log('error submit!', fields) // console.log('error submit!', fields)
@ -364,7 +374,7 @@ function getCaptchaCode() {
} }
function refreshImg() { function refreshImg() {
const randomStr = v4() randomStr = v4()
captchaImgUrl.value = '/api/admin/code/textImage?randomStr=' + randomStr captchaImgUrl.value = '/api/admin/code/textImage?randomStr=' + randomStr
} }

View File

@ -150,7 +150,10 @@ const surgeryClient = new Client({
brokerURL: 'ws://localhost:5173/socket.io/admin/rax/SurgeryData', brokerURL: 'ws://localhost:5173/socket.io/admin/rax/SurgeryData',
connectHeaders: { connectHeaders: {
token: Session.get('token') token: Session.get('token')
} },
reconnectDelay: 5000,
heartbeatIncoming: 60000,
heartbeatOutgoing: 60000
}) })
surgeryClient.activate() surgeryClient.activate()