|
@@ -47,6 +47,18 @@
|
|
|
(record.lived !== true && getCheckRole(['super', 'plat_admin'])),
|
|
(record.lived !== true && getCheckRole(['super', 'plat_admin'])),
|
|
|
onClick: generateDefaultLiveRoom.bind(null, record),
|
|
onClick: generateDefaultLiveRoom.bind(null, record),
|
|
|
},
|
|
},
|
|
|
|
|
+ {
|
|
|
|
|
+ color: 'warning',
|
|
|
|
|
+ label: '虚实同步',
|
|
|
|
|
+ ifShow: true,
|
|
|
|
|
+ onClick: syncReality.bind(null, record),
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ color: 'error',
|
|
|
|
|
+ label: '分享',
|
|
|
|
|
+ ifShow: true,
|
|
|
|
|
+ onClick: openShareModalFn.bind(null, record),
|
|
|
|
|
+ },
|
|
|
]
|
|
]
|
|
|
: []
|
|
: []
|
|
|
"
|
|
"
|
|
@@ -55,6 +67,7 @@
|
|
|
</BasicTable>
|
|
</BasicTable>
|
|
|
<DownloadModal @register="registerDownloadModal" />
|
|
<DownloadModal @register="registerDownloadModal" />
|
|
|
<EditorModal @register="registerEditorModal" @reload="reload" />
|
|
<EditorModal @register="registerEditorModal" @reload="reload" />
|
|
|
|
|
+ <ShareModal @register="registerShareModal" @reload="reload" />
|
|
|
</div>
|
|
</div>
|
|
|
</template>
|
|
</template>
|
|
|
<script lang="ts">
|
|
<script lang="ts">
|
|
@@ -77,6 +90,7 @@
|
|
|
// generateSceneEditTokenApi,
|
|
// generateSceneEditTokenApi,
|
|
|
downloadSceneDataAPi,
|
|
downloadSceneDataAPi,
|
|
|
generateDefaultLiveRoomApi,
|
|
generateDefaultLiveRoomApi,
|
|
|
|
|
+ generateRealityApi,
|
|
|
} from '/@/api/scene/list';
|
|
} from '/@/api/scene/list';
|
|
|
import { useI18n } from '/@/hooks/web/useI18n';
|
|
import { useI18n } from '/@/hooks/web/useI18n';
|
|
|
import {
|
|
import {
|
|
@@ -89,14 +103,16 @@
|
|
|
import { useUserStore } from '/@/store/modules/user';
|
|
import { useUserStore } from '/@/store/modules/user';
|
|
|
import DownloadModal from './downloadModal.vue';
|
|
import DownloadModal from './downloadModal.vue';
|
|
|
import EditorModal from './editorModal.vue';
|
|
import EditorModal from './editorModal.vue';
|
|
|
|
|
+ import ShareModal from './shareModal.vue';
|
|
|
|
|
|
|
|
export default defineComponent({
|
|
export default defineComponent({
|
|
|
- components: { BasicTable, TableAction, TableImg, DownloadModal, EditorModal },
|
|
|
|
|
|
|
+ components: { BasicTable, TableAction, TableImg, DownloadModal, EditorModal, ShareModal },
|
|
|
emits: ['register'],
|
|
emits: ['register'],
|
|
|
setup() {
|
|
setup() {
|
|
|
const { createMessage } = useMessage();
|
|
const { createMessage } = useMessage();
|
|
|
const [registerDownloadModal, { openModal: openDownloadModal }] = useModal();
|
|
const [registerDownloadModal, { openModal: openDownloadModal }] = useModal();
|
|
|
const [registerEditorModal, { openModal: openEditorModal }] = useModal();
|
|
const [registerEditorModal, { openModal: openEditorModal }] = useModal();
|
|
|
|
|
+ const [registerShareModal, { openModal: openShareModal }] = useModal();
|
|
|
const { t } = useI18n();
|
|
const { t } = useI18n();
|
|
|
const userStore = useUserStore();
|
|
const userStore = useUserStore();
|
|
|
const { getCheckRole, getEquity } = userStore;
|
|
const { getCheckRole, getEquity } = userStore;
|
|
@@ -305,6 +321,19 @@
|
|
|
reload();
|
|
reload();
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+ async function syncReality(record: Recordable) {
|
|
|
|
|
+ let res = await generateRealityApi({
|
|
|
|
|
+ sceneNum: record.num,
|
|
|
|
|
+ });
|
|
|
|
|
+ if (res) {
|
|
|
|
|
+ createMessage.success(t('common.optSuccess'));
|
|
|
|
|
+ reload();
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ function openShareModalFn(record: Recordable) {
|
|
|
|
|
+ openShareModal(true, record);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
return {
|
|
return {
|
|
|
registerTable,
|
|
registerTable,
|
|
|
createMessage,
|
|
createMessage,
|
|
@@ -319,7 +348,15 @@
|
|
|
openSceneEditorModal,
|
|
openSceneEditorModal,
|
|
|
getEquity,
|
|
getEquity,
|
|
|
getCheckRole,
|
|
getCheckRole,
|
|
|
|
|
+ syncReality,
|
|
|
|
|
+ registerShareModal,
|
|
|
|
|
+ openShareModalFn,
|
|
|
};
|
|
};
|
|
|
},
|
|
},
|
|
|
});
|
|
});
|
|
|
</script>
|
|
</script>
|
|
|
|
|
+<style>
|
|
|
|
|
+ .vben-basic-table-action {
|
|
|
|
|
+ flex-wrap: wrap;
|
|
|
|
|
+ }
|
|
|
|
|
+</style>
|