import {defineComponent, onMounted, reactive, ref} from 'vue' import SaveForm from '@components/save-form' import {DataTableRowKey, NButton, NDataTable, NDatePicker, NFormItem, NInput, NModal, NSelect, NSpace, NTag, useDialog, useMessage} from 'naive-ui' import Pagination from '@components/pagination' import {getMapValueByKey, getSelectDataFromObj} from '@/utils/objectUtil' import {appKey, clientType, messageSenderFunctionModule, messageSenderMode} from '@/utils/constant' import { musicSheetApplicationExtendCategoryList, musicSheetApplicationExtendStatus, musicSheetRemove, musicSheetStatusList, smsConfigPage, smsConfigRemove, smsConfigStatus, sysMessageConfigPage } from '@views/music-library/api' import {subjectPage, sysApplicationPage} from '@views/system-manage/api' import {filterTimes, getTimes} from "@/utils/dateUtil"; import MusicPreView from "@views/music-library/music-sheet/modal/musicPreView"; import SmsConfigEdit from "@views/message/message-config/sms/modal/sms-config-edit"; import deepClone from "@/utils/deep.clone"; import {useRouter} from "vue-router"; import TheTooltip from "@components/TheTooltip"; import {getOwnerName} from "@views/music-library/musicUtil"; export default defineComponent({ name: 'sms-config', setup(props) { const router = useRouter() const dialog = useDialog() const message = useMessage() const state = reactive({ loading: false, appId: null as any, pagination: { page: 1, rows: 10, pageTotal: 0 }, searchForm: { keyword: null, //关键字 status: null // 状态 }, dataList: [], showEdit: false, editMode: 'add', editRowData: {} as any, }) onMounted(async () => { getList() }) const saveForm = ref() const onSearch = () => { saveForm.value?.submit() } const onBtnReset = () => { saveForm.value?.reset() } const onSubmit = () => { state.pagination.page = 1 getList() } const checkedRowKeysRef = ref([]) const handleCheck = (rowKeys: DataTableRowKey[]) => { checkedRowKeysRef.value = rowKeys } const getList = async () => { try { state.loading = true const {data} = await smsConfigPage({ ...state.pagination, ...state.searchForm, }) state.pagination.pageTotal = Number(data.total) state.dataList = data.rows || [] // state.dataList = [] } catch { } state.loading = false } const onChangeStatus = (row: any) => { const statusStr = row.status ? '停用' : '启用' dialog.warning({ title: '提示', content: `是否${statusStr}?`, positiveText: '确定', negativeText: '取消', onPositiveClick: async () => { try { await smsConfigStatus({ id: row.id, status: !row.status }) getList() message.success(`${statusStr}成功`) } catch { } } }) } const onRmove = (row: any): void => { dialog.warning({ title: '提示', content: `删除"${row.name}",是否继续?`, positiveText: '确定', negativeText: '取消', onPositiveClick: async () => { try { await smsConfigRemove(row.id) getList() message.success('删除成功') } catch { } } }) } const columns = (): any => { return [ { title: '编号', key: 'id', }, { title: '平台名称', key: 'name' }, { title: '平台标识', key: 'sender' }, { title: '接入地址', key: 'accessUrl' }, { title: '接入账号', key: 'account' }, { title: '接入密码', key: 'password' }, { title: '拓展参数', key: 'extendData', render: (row: any) => { return } }, { title: '状态', key: 'status', render(row: any) { return ( {row.status ? '启用' : '停用'} ) } }, { title: '操作', key: 'operation', fixed: 'right', render(row: any) { return ( { router.push({ path: '/message/messageConfigApp', query: row.id }) }} > 应用详情 onChangeStatus(row)} > {row.status ? '停用' : '启用'} { state.showEdit = true state.editRowData = deepClone(row) state.editMode = 'edit' }} > 修改 onRmove(row)} > 删除 ) } } ] } return () => { return (
(state.searchForm = val)} > 搜索 重置 { state.showEdit = true state.editMode = 'add' }} > 新增短信平台
row.id} scrollX={'1400'} >
(state.showEdit = false)} onGetList={() => { state.pagination.page = 1 getList() }} />
) } } })