perf: 邮箱设置改为系统设置,普通用户无需配置发件邮箱

This commit is contained in:
xiaojunnuo
2024-10-11 02:54:42 +08:00
parent f23c4af2ad
commit 4244569211
16 changed files with 130 additions and 86 deletions
@@ -1,26 +0,0 @@
import { request } from "/@/api/service";
const apiPrefix = "/user/settings";
export const SettingKeys = {
Email: "email"
};
export async function SettingsGet(key: string) {
return await request({
url: apiPrefix + "/get",
method: "post",
params: {
key
}
});
}
export async function SettingsSave(key: string, setting: any) {
await request({
url: apiPrefix + "/save",
method: "post",
data: {
key,
setting: JSON.stringify(setting)
}
});
}
@@ -1,4 +1,4 @@
import { request } from "/@/api/service";
import { request } from "/src/api/service";
const apiPrefix = "/basic/email";
export async function TestSend(receiver: string) {
@@ -4,7 +4,8 @@ const apiPrefix = "/sys/settings";
export const SettingKeys = {
SysPublic: "sys.public",
SysPrivate: "sys.private"
SysPrivate: "sys.private",
SysEmail: "sys.email"
};
export async function SettingsGet(key: string) {
return await request({
@@ -27,6 +28,13 @@ export async function SettingsSave(key: string, setting: any) {
});
}
export async function EmailSettingsGet() {
await request({
url: apiPrefix + "/getEmailSettings",
method: "post"
});
}
export async function PublicSettingsSave(setting: any) {
await request({
url: apiPrefix + "/savePublicSettings",
@@ -82,7 +82,7 @@ import * as api from "./api";
import { SettingKeys } from "./api";
import * as emailApi from "./api.email";
import { notification } from "ant-design-vue";
import { useSettingStore } from "/@/store/modules/settings";
import { useSettingStore } from "/src/store/modules/settings";
defineOptions({
name: "EmailSetting"
@@ -114,19 +114,15 @@ const formState = reactive<Partial<FormState>>({
});
async function load() {
const data: any = await api.SettingsGet(SettingKeys.Email);
if (!data?.setting) {
return;
}
const setting = JSON.parse(data.setting);
Object.assign(formState, setting);
const data: any = await api.EmailSettingsGet();
_.merge(formState, data);
}
load();
const onFinish = async (form: any) => {
console.log("Success:", form);
await api.SettingsSave(SettingKeys.Email, form);
await api.SettingsSave(SettingKeys.SysEmail, form);
notification.success({
message: "保存成功"
});
@@ -137,7 +133,7 @@ const onFinishFailed = (errorInfo: any) => {
};
async function onUsePlusChanged() {
await api.SettingsSave(SettingKeys.Email, formState);
await api.SettingsSave(SettingKeys.SysEmail, formState);
}
interface TestFormState {