发布 0.1.0:通知渠道、告警规则与多项体验修复
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<script setup lang="ts">
|
||||
import { NButton, NDynamicTags, NPopconfirm, NSpin, NSwitch, useMessage } from 'naive-ui'
|
||||
import { NButton, NDynamicTags, NPopconfirm, NSpin, NSwitch } from 'naive-ui'
|
||||
import { computed, ref, watch } from 'vue'
|
||||
|
||||
import {
|
||||
@@ -22,14 +22,15 @@ import StatusBadge from '@/components/StatusBadge.vue'
|
||||
import PolicyEditModal from '@/components/tenant/PolicyEditModal.vue'
|
||||
import { useAsync } from '@/composables/useAsync'
|
||||
import type { PasswordPolicy } from '@/types/api'
|
||||
import { useToast } from '@/composables/useToast'
|
||||
|
||||
const props = defineProps<{ cfgId: number }>()
|
||||
const props = defineProps<{ cfgId: number; domainId?: string }>()
|
||||
|
||||
const message = useMessage()
|
||||
const message = useToast()
|
||||
|
||||
const policies = useAsync(() => listPasswordPolicies(props.cfgId))
|
||||
const recipients = useAsync(() => getNotificationRecipients(props.cfgId))
|
||||
const identity = useAsync(() => getIdentitySetting(props.cfgId))
|
||||
const policies = useAsync(() => listPasswordPolicies(props.cfgId, props.domainId))
|
||||
const recipients = useAsync(() => getNotificationRecipients(props.cfgId, props.domainId))
|
||||
const identity = useAsync(() => getIdentitySetting(props.cfgId, props.domainId))
|
||||
const webhook = useAsync(() => getLogWebhook(props.cfgId))
|
||||
const relay = useAsync(() => getLogRelay(props.cfgId))
|
||||
const savingIdentity = ref(false)
|
||||
@@ -114,7 +115,7 @@ watch(
|
||||
async function saveRecipients() {
|
||||
saving.value = true
|
||||
try {
|
||||
await updateNotificationRecipients(props.cfgId, emails.value)
|
||||
await updateNotificationRecipients(props.cfgId, emails.value, props.domainId)
|
||||
message.success(emails.value.length ? '通知收件人已保存' : '已关闭 test mode,恢复默认发送')
|
||||
void recipients.run()
|
||||
} catch (e) {
|
||||
@@ -127,7 +128,7 @@ async function saveRecipients() {
|
||||
async function toggleEmailRequired(v: boolean) {
|
||||
savingIdentity.value = true
|
||||
try {
|
||||
await updateIdentitySetting(props.cfgId, v)
|
||||
await updateIdentitySetting(props.cfgId, v, props.domainId)
|
||||
message.success(v ? '已开启:添加用户 / JIT 预配必须提供邮箱' : '已关闭:邮箱变为可选')
|
||||
void identity.run()
|
||||
} catch (e) {
|
||||
@@ -402,6 +403,7 @@ function policyDesc(p: PasswordPolicy): string {
|
||||
<PolicyEditModal
|
||||
v-model:show="showPolicyEdit"
|
||||
:cfg-id="cfgId"
|
||||
:domain-id="domainId"
|
||||
:policy="editingPolicy"
|
||||
@updated="policies.run()"
|
||||
/>
|
||||
|
||||
Reference in New Issue
Block a user