添加注册,修复加载动画,以及cid日志详情

This commit is contained in:
junleea 2024-07-08 10:38:05 +08:00
parent fe0bb06f8d
commit 6331268a01
5 changed files with 82 additions and 83 deletions

View File

@ -22,7 +22,7 @@ export const loginService = (loginData) => {
export const registerService = (registerData) => {
const params = new URLSearchParams();
for (let key in loginData) {
for (let key in registerData) {
params.append(key, registerData[key])
}
return request.post('/user/register', params)

View File

@ -17,6 +17,11 @@ request.interceptors.response.use(
router.push("/login")
return
}
if(result.data.code == 7){
alert("该用户已存在,请重新输入!");
return null
}
if(result.data.code == 1){
alert("请求失败,请稍后重试!");
}else{

View File

@ -22,6 +22,12 @@ export default {
},
addDialogVisible: false,
updateDialogVisible: false,
updateForm: {
create_time: "",
script: "",
end: "",
error: "",
},
};
},
@ -92,12 +98,10 @@ export default {
},
async updateButtonCID(index) {
var id = this.tableData[index].ID;
this.updateForm.name = this.tableData[index].Name;
this.updateForm.url = this.tableData[index].Url;
this.updateForm.create_time = this.tableData[index].CreatedAt;
this.updateForm.script = this.tableData[index].Script;
this.updateForm.cidtoken = this.tableData[index].Token;
this.updateForm.id = id;
this.updateDialogVisible= true;
this.updateForm.end = this.tableData[index].Log;
this.updateForm.error = this.tableData[index].Error;
},
async addCID() {
this.addDialogVisible = false;
@ -212,52 +216,11 @@ export default {
>刷新</el-button
>
</el-form-item>
<el-form-item>
<el-dialog
v-model="addDialogVisible"
title="添加集成项目"
width="50%"
:before-close="handleClose"
>
<!-- 内容主体区域 -->
<el-form
ref="addFormRef"
:model="addForm"
:rules="addFormRules"
label-width="70px"
>
<el-form-item label="项目名称" prop="device_name">
<el-input
v-model="addForm.name"
autocomplete="on"
style="width: 400px"
></el-input>
</el-form-item>
<el-form-item label="仓库地址" prop="device_ip">
<el-input v-model="addForm.url" style="width: 400px" autocomplete="on"></el-input>
</el-form-item>
<el-form-item label="脚本内容" prop="device_status">
<el-input type="textarea" v-model="addForm.script" style="width: 400px" :autosize="{ minRows: 4, maxRows: 8 }" />
</el-form-item>
</el-form>
<!-- 底部区域 -->
<template #footer>
<span class="dialog-footer">
<el-button @click="addDialogVisible = false"
>取消</el-button
>
<el-button type="primary" @click="addCID()"
>确定</el-button
>
</span>
</template>
</el-dialog>
</el-form-item>
<el-form-item>
<el-dialog
v-model="updateDialogVisible"
title="修改集成项目"
title="查看集成项目日志"
width="50%"
:before-close="handleClose"
>
@ -268,32 +231,28 @@ export default {
:rules="updateFormRules"
label-width="70px"
>
<el-form-item label="项目名称" prop="device_name">
<el-form-item label="创建时间" prop="create_time">
<el-input
v-model="updateForm.name"
v-model="updateForm.create_time"
autocomplete="on"
style="width: 400px"
></el-input>
</el-form-item>
<el-form-item label="仓库地址" prop="device_ip">
<el-input v-model="updateForm.url" style="width: 400px" autocomplete="on"></el-input>
</el-form-item>
<el-form-item label="脚本内容" prop="device_status">
<el-form-item label="脚本内容" prop="script">
<el-input type="textarea" v-model="updateForm.script" style="width: 400px" :autosize="{ minRows: 4, maxRows: 8 }" />
</el-form-item>
<el-form-item label="外部回调Token" prop="device_status">
<el-input v-model="updateForm.cidtoken" style="width: 400px" />
回调地址https://gep.ljsea.xyz/cid/callback?token={{updateForm.cidtoken}}&id={{updateForm.id}}
<el-form-item label="执行结果" prop="end">
<el-input type="textarea" v-model="updateForm.end" style="width: 400px" :autosize="{ minRows: 4, maxRows: 8 }" />
</el-form-item>
<el-form-item label="错误内容" prop="error">
<el-input type="textarea" v-model="updateForm.error" style="width: 400px" :autosize="{ minRows: 4, maxRows: 8 }" />
</el-form-item>
</el-form>
<!-- 底部区域 -->
<template #footer>
<span class="dialog-footer">
<el-button @click="updateDialogVisible = false"
>取消</el-button
>
<el-button type="primary" @click="updateCID()"
>确定</el-button
>关闭</el-button
>
</span>
</template>

View File

@ -159,6 +159,7 @@ export default {
data.expire
);
this.session = data.im_session;
this.loading=false
//
this.stopInterval();
this.connectWebSocket();
@ -285,7 +286,7 @@ export default {
this.socket = new WebSocket(socketUrl);
//
this.socket.onopen = function () {
this.loading = false;
this.loading=false
confirm("连接成功");
};
this.socket.onerror = (error) => {
@ -324,7 +325,7 @@ export default {
//console.log("to_user_id:", this.to_user_id, this.to_user_name);
this.startInterval();
setTimeout(() => this.loading=false, 3000);
//setTimeout(() => this.loading=false, 3000);
//this.connectWebSocket();
},

View File

@ -78,7 +78,9 @@
></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary" auto-insert-space>注册</el-button>
<el-button type="primary" @click="onRegister" auto-insert-space
>注册</el-button
>
</el-form-item>
<el-form-item class="flex">
<el-link @click="isLogin = true"> 返回 </el-link>
@ -86,13 +88,13 @@
</el-form>
</el-row>
<div>
<div>二维码状态: {{qr_status}} </div>
<div>二维码状态: {{ qr_status }}</div>
<canvas ref="qrCodeCanvas"></canvas>
</div>
</template>
<script setup>
import { ref, onMounted, inject,onUnmounted } from "vue";
import { ref, onMounted, inject, onUnmounted } from "vue";
import axios from "axios";
import {
getQRService,
@ -206,6 +208,34 @@ const login = async () => {
router.push("/videoList");
};
//
const onRegister = async () => {
//
if (registerData.value.password !== registerData.value.repassword) {
alert("两次密码不一致");
return;
}
//
let email = registerData.value.email;
let reg = /^(\w-*\.*)+@(\w-?)+(\.\w{2,})+$/;
if (!reg.test(email)) {
alert("邮箱格式不正确");
return;
}
let result = await registerService(register);
if (result !== null) {
globalData.token = result.data;
localStorage.setItem("token", result.data.token);
localStorage.setItem("userId", result.data.id);
localStorage.setItem("username", result.data.username);
let now = new Date();
localStorage.setItem("end_time", now.setDate(now.getHours() + 12)); //
//token.value= result.data;
router.push("/videoList");
}
};
const generateQRCode = () => {
//
const data = uuid;
@ -240,7 +270,11 @@ const generateQRCode = () => {
const getUUID = async () => {
try {
const response = await getUUIDService({ device: "windows" ,"address": localStorage.getItem("address"),"ip": localStorage.getItem("ip")});
const response = await getUUIDService({
device: "windows",
address: localStorage.getItem("address"),
ip: localStorage.getItem("ip"),
});
uuid = response.data.toString();
let uid = uuid.toString();
//await creatQrCode(uid);
@ -255,7 +289,7 @@ const getQRStatus = async () => {
if (result.code === 0) {
if (result.data === "0") {
} else if (result.data === "1") {
qr_status.value="等待确认";
qr_status.value = "等待确认";
} else {
globalData.token = result.data;
localStorage.setItem("token", result.data.token);