|
@@ -1,21 +1,21 @@
|
|
|
-import {NButton, NDataTable, NFormItem, NInput, NModal, NPageHeader, NSelect, NSpace, useDialog, useMessage} from 'naive-ui'
|
|
|
+import {NButton, NDataTable, NFormItem, NInput, NModal, NPageHeader, NSelect, NSpace, NTag, useDialog, useMessage} from 'naive-ui'
|
|
|
import {defineComponent, onMounted, reactive, ref} from 'vue'
|
|
|
import {useRoute, useRouter} from 'vue-router'
|
|
|
import {useTabsViewStore} from '@/store/modules/tabsView'
|
|
|
import SaveForm from "@components/save-form";
|
|
|
import Pagination from "@components/pagination";
|
|
|
-import SmsConfigEdit from "@views/message/message-config/sms/modal/sms-config-edit";
|
|
|
-import {appSendConfigPage, smsConfigDetail} from "@views/music-library/api";
|
|
|
+import {smsAppConfigPage, smsAppConfigRemove, smsAppConfigStatus, smsConfigDetail, smsConfigRemove, smsConfigStatus} from "@views/music-library/api";
|
|
|
import deepClone from "@/utils/deep.clone";
|
|
|
import SmsConfigAppEdit from "@views/message/message-config/sms/modal/sms-config-app-edit";
|
|
|
+import {sysApplicationPage} from "@views/menu-manage/api";
|
|
|
|
|
|
export default defineComponent({
|
|
|
name: 'sms-config-app',
|
|
|
setup(props, ctx) {
|
|
|
- const route = useRoute()
|
|
|
- const router = useRouter()
|
|
|
const dialog = useDialog()
|
|
|
+ const route = useRoute()
|
|
|
const message = useMessage()
|
|
|
+ const router = useRouter()
|
|
|
const state = reactive({
|
|
|
loading: false,
|
|
|
appId: null as any,
|
|
@@ -34,6 +34,8 @@ export default defineComponent({
|
|
|
showEdit: false,
|
|
|
editMode: 'add',
|
|
|
editRowData: {} as any,
|
|
|
+ appData: [] as any,
|
|
|
+ appMap: new Map(),
|
|
|
})
|
|
|
const tabsViewStore = useTabsViewStore()
|
|
|
const gotoBack = () => {
|
|
@@ -44,15 +46,29 @@ export default defineComponent({
|
|
|
}
|
|
|
|
|
|
onMounted(async () => {
|
|
|
- state.smsConfigId = route.query.id;
|
|
|
- console.log('1111111111', state.smsConfigId)
|
|
|
- if (state.smsConfigId) {
|
|
|
+ state.smsConfigId = route.query;
|
|
|
+ if (!state.smsConfigId) {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ {
|
|
|
const {data} = await smsConfigDetail(state.smsConfigId)
|
|
|
if (data) {
|
|
|
state.name = data.name
|
|
|
}
|
|
|
- getList()
|
|
|
}
|
|
|
+
|
|
|
+ // 应用
|
|
|
+ {
|
|
|
+ state.appData = []
|
|
|
+ const {data} = await sysApplicationPage({page: 1, rows: 999})
|
|
|
+ if (data && data.rows) {
|
|
|
+ data.rows.forEach((item: any) => {
|
|
|
+ state.appData.push({label: item.appName, value: item.appKey})
|
|
|
+ state.appMap.set(item.appKey, item.appName);
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+ getList()
|
|
|
})
|
|
|
|
|
|
const saveForm = ref()
|
|
@@ -74,9 +90,10 @@ export default defineComponent({
|
|
|
}
|
|
|
try {
|
|
|
state.loading = true
|
|
|
- const {data} = await appSendConfigPage({
|
|
|
+ const {data} = await smsAppConfigPage({
|
|
|
...state.pagination,
|
|
|
...state.searchForm,
|
|
|
+ sysConfigId: state.smsConfigId
|
|
|
})
|
|
|
state.pagination.pageTotal = Number(data.total)
|
|
|
state.dataList = data.rows || []
|
|
@@ -86,6 +103,44 @@ export default defineComponent({
|
|
|
}
|
|
|
|
|
|
|
|
|
+ const onChangeStatus = (row: any) => {
|
|
|
+ const statusStr = row.status ? '停用' : '启用'
|
|
|
+ dialog.warning({
|
|
|
+ title: '提示',
|
|
|
+ content: `是否${statusStr}?`,
|
|
|
+ positiveText: '确定',
|
|
|
+ negativeText: '取消',
|
|
|
+ onPositiveClick: async () => {
|
|
|
+ try {
|
|
|
+ await smsAppConfigStatus({
|
|
|
+ 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 smsAppConfigRemove(row.id)
|
|
|
+ getList()
|
|
|
+ message.success('删除成功')
|
|
|
+ } catch {
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
const columns = (): any => {
|
|
|
return [
|
|
|
{
|
|
@@ -94,15 +149,24 @@ export default defineComponent({
|
|
|
},
|
|
|
{
|
|
|
title: '应用',
|
|
|
- key: 'name'
|
|
|
+ key: 'appKey',
|
|
|
+ render(row: any) {
|
|
|
+ return (state.appMap.get(row.appKey)
|
|
|
+ )
|
|
|
+ }
|
|
|
},
|
|
|
{
|
|
|
title: '签名',
|
|
|
- key: 'accessUrl'
|
|
|
+ key: 'sign'
|
|
|
},
|
|
|
{
|
|
|
title: '状态',
|
|
|
- key: 'status'
|
|
|
+ key: 'status',
|
|
|
+ render(row: any) {
|
|
|
+ return (
|
|
|
+ <NTag type={row.status ? 'primary' : 'default'}>{row.status ? '启用' : '停用'}</NTag>
|
|
|
+ )
|
|
|
+ }
|
|
|
},
|
|
|
{
|
|
|
title: '操作',
|
|
@@ -116,8 +180,7 @@ export default defineComponent({
|
|
|
size="small"
|
|
|
text
|
|
|
onClick={() => {
|
|
|
-
|
|
|
-
|
|
|
+ onChangeStatus(row)
|
|
|
}}
|
|
|
>
|
|
|
{row.status ? '停用' : '启用'}
|
|
@@ -140,7 +203,7 @@ export default defineComponent({
|
|
|
text
|
|
|
disabled={!!row.status}
|
|
|
onClick={() => {
|
|
|
-
|
|
|
+ onRmove(row.id)
|
|
|
}}
|
|
|
>
|
|
|
删除
|
|
@@ -164,7 +227,7 @@ export default defineComponent({
|
|
|
ref={saveForm}
|
|
|
model={state.searchForm}
|
|
|
onSubmit={onSubmit}
|
|
|
- saveKey="sms-config"
|
|
|
+ saveKey="sms-config-app"
|
|
|
onSetModel={(val: any) => (state.searchForm = val)}
|
|
|
>
|
|
|
<NFormItem label="关键字" path="keyword">
|
|
@@ -232,7 +295,7 @@ export default defineComponent({
|
|
|
v-model:pageTotal={state.pagination.pageTotal}
|
|
|
onList={getList}
|
|
|
sync
|
|
|
- saveKey="sms-config"
|
|
|
+ saveKey="sms-config-app"
|
|
|
></Pagination>
|
|
|
</div>
|
|
|
<NModal
|
|
@@ -246,7 +309,9 @@ export default defineComponent({
|
|
|
<SmsConfigAppEdit
|
|
|
editMode={state.editMode}
|
|
|
rowData={state.editRowData}
|
|
|
- style={{width: '700px'}}
|
|
|
+ appData={state.appData}
|
|
|
+ style={{width: '450'}}
|
|
|
+ smsConfigId={state.smsConfigId}
|
|
|
onClose={() => (state.showEdit = false)}
|
|
|
onGetList={() => {
|
|
|
state.pagination.page = 1
|