You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
69 lines
1.9 KiB
69 lines
1.9 KiB
<template>
|
|
<div style="padding: 40px;">
|
|
<el-form ref="settingForm" :model="form" label-width="80px">
|
|
<el-form-item label="oa访问地址" required prop="adminWebUri">
|
|
<el-input v-model="form.oaUri"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="后台访问地址" required prop="adminWebUri">
|
|
<el-input v-model="form.adminWebUri"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="后台api" required prop="api">
|
|
<el-input v-model="form.api" @change="apiChange"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="文件上传地址" required prop="uploadApi">
|
|
<el-input v-model="form.uploadApi"></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="通知开启">
|
|
<el-switch v-model="form.isNotice"></el-switch>
|
|
</el-form-item>
|
|
<el-form-item>
|
|
<el-button type="primary" @click="saving">保存</el-button>
|
|
<el-button @click="reset">重置</el-button>
|
|
</el-form-item>
|
|
</el-form>
|
|
</div>
|
|
</template>
|
|
|
|
<script setup>
|
|
import { Notification } from "element-ui"
|
|
import { ipcRenderer } from 'electron';
|
|
import { ref } from 'vue'
|
|
import { useRouter } from "@/hooks/use-router"
|
|
|
|
const settingForm = ref()
|
|
const form = ref({
|
|
oaUri: "",
|
|
adminWebUri: '',
|
|
api: '',
|
|
uploadApi: '',
|
|
isNotice: ''
|
|
})
|
|
|
|
form.value = JSON.parse(JSON.stringify(window.DEFAULTSETTING))
|
|
console.log(form.value)
|
|
const reset = () => {
|
|
form.value = JSON.parse(JSON.stringify(window.DEFAULTSETTING))
|
|
}
|
|
const apiChange = e => {
|
|
if (e) {
|
|
form.value.uploadApi = e + 'api/admin/upload-file'
|
|
}
|
|
}
|
|
const saving = () => {
|
|
settingForm.value.validate(valid => {
|
|
if (valid) {
|
|
ipcRenderer.invoke("write-default-setting",JSON.stringify(form.value)).then(res => {
|
|
Notification({
|
|
title: "提示",
|
|
message: "配置生效需重启应用!",
|
|
duration: 3000
|
|
})
|
|
})
|
|
}
|
|
})
|
|
}
|
|
</script>
|
|
|
|
<style scoped lang="scss">
|
|
</style>
|