import {defineComponent, onMounted, reactive, ref} from "vue"; import {NButton, NForm, NFormItem, NFormItemGi, NGrid, NInput, NSpace, useMessage} from "naive-ui"; import {musicSheetApplicationExtendUpdate, smsConfigSave, smsConfigUpdate} from "@views/music-library/api"; export default defineComponent({ name: 'sms-config-edit', props: { editMode: { type: String, required: true }, rowData: { type: Object, required: false }, }, emits: ['close', 'getList'], setup(props, {slots, attrs, emit}) { const message = useMessage() const btnLoading = ref(false) const forms = reactive({ name: null, accessUrl: null, account: null, password: null, extendData: null, }) const formsRef = ref() const state = reactive({ rowData: null as any, musicSheetCategories: [] as any, }) onMounted(async () => { state.rowData = props.rowData if (props.editMode == 'edit' && props.rowData) { forms.name = state.rowData.platformName forms.accessUrl = state.rowData.accessUrl forms.account = state.rowData.accessAccount forms.password = state.rowData.accessPassword forms.extendData = state.rowData.accessExtParam } }) const onSubmit = async () => { formsRef.value.validate(async (error: any) => { if (error) return false btnLoading.value = true try { let res; if (props.editMode == 'add') { res = await smsConfigSave( { ...forms, } ) as any; } else { res = await smsConfigUpdate( { ...forms, id: state.rowData.id } ) as any; } if (res && res.code === 200) { emit('close') emit('getList') } } catch (error) { } btnLoading.value = false }) } return () => { return (
emit('close')}>取消 保存
) } } })