Merge branch 'test' of http://47.103.154.90:83/r/WI/Web.V1.0 into test
| | |
| | | ref="waterCenterRef" |
| | | @updateChatInput="updateChatInput" |
| | | /> |
| | | <waterBottom /> |
| | | <waterBottom @tagListClick="tagListClick" /> |
| | | </div> |
| | | |
| | | <CustomDrawer v-model:isShow="state.isShowAdvanceExample" ref="customDrawerRef" @updateChatInput="updateChatInput" /> |
| | |
| | | customDrawerRef.value.getTableData(); |
| | | } |
| | | }; |
| | | const tagListClick = (tag) => { |
| | | waterCenterRef.value.tagListClick(tag); |
| | | }; |
| | | </script> |
| | | <style scoped lang="scss"> |
| | | .pc-chat_room { |
| | |
| | | :class="{ main_item_active: item.group_id === activeSectionAId }" |
| | | @click="changeScenarios(item)" |
| | | > |
| | | <div :class="['myiconfont icon-' + item.Icon]"></div> |
| | | <div :class="['ywifont ywicon-' + item.Icon]"></div> |
| | | <div class="right"> |
| | | <h4>{{ item.group_name }}</h4> |
| | | <p>{{ item.group_title }}</p> |
| | |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | | import { computed, onMounted, reactive } from 'vue'; |
| | | import { computed, onMounted, reactive, ref } from 'vue'; |
| | | import { getSectionList } from '/@/api/ai/chat'; |
| | | import router from '/@/router'; |
| | | import { activeRoomId, activeSectionAId, sectionAList, setRoomConfig } from '/@/stores/chatRoom'; |
| | | import { activeSectionAId, sectionAList } from '/@/stores/chatRoom'; |
| | | import { OptClassificationMap, classificationEnum } from '/@/views/types/metrics'; |
| | | let state = reactive({ |
| | | applicationScenarios: [], |
| | |
| | | }>(); |
| | | const changeScenarios = async (item) => { |
| | | activeSectionAId.value = item.group_id; |
| | | setRoomConfig(activeRoomId.value, 'isAnswerByLLM', false); |
| | | emits('tagListClick', item); |
| | | // setRoomConfig(activeRoomId.value, 'isAnswerByLLM', false); |
| | | }; |
| | | const iconList = ref([ |
| | | 'duoweidu', |
| | | 'zhibiao', |
| | | 'shujuzhongxin', |
| | | 'shujuguanli', |
| | | 'wendang', |
| | | 'grid', |
| | | 'liebiao', |
| | | 'wentifankui', |
| | | 'cedian', |
| | | 'shuzhuangtu', |
| | | 'bengzhan', |
| | | 'gerenxinxi_o', |
| | | 'bengzhan1', |
| | | 'yingyongzhongxin', |
| | | ]); |
| | | const getIconByIndex = (index) => { |
| | | const iconCount = iconList.value.length; |
| | | return iconList.value[index % iconCount]; |
| | | }; |
| | | const getMainSectionList = async () => { |
| | | const res = await getSectionList(); |
| | | let result = []; |
| | | const iconList = [ |
| | | 'biaodan', |
| | | 'putong', |
| | | 'zhongduancanshuchaxun', |
| | | 'shidu', |
| | | 'fuwenbenkuang', |
| | | 'fuwenben', |
| | | 'jiliandongxuanzeqi', |
| | | 'jinridaiban', |
| | | 'gongju', |
| | | 'tuodong', |
| | | 'xingqiu', |
| | | 'fuhao-yingwen', |
| | | 'tupianyulan', |
| | | 'siweidaotu', |
| | | 'fuwenben', |
| | | 'xuanzeqi', |
| | | 'zhongyingwenyuyan', |
| | | ]; |
| | | res.groups.forEach((sectionItem, index) => { |
| | | sectionItem.Icon = iconList[index]; |
| | | if ( |
| | | sectionItem.group_type != OptClassificationMap[classificationEnum.Office] && |
| | | sectionItem.group_type != OptClassificationMap[classificationEnum.Knowledge] |
| | | ) { |
| | | sectionItem.Icon = getIconByIndex(index); |
| | | result.push(sectionItem); |
| | | } |
| | | }); |
| | |
| | | </div> |
| | | </div> |
| | | <div class="main"> |
| | | <el-carousel height="80" :interval="5000" indicator-position="none"> |
| | | <el-carousel height="80" :interval="6000" indicator-position="none"> |
| | | <el-carousel-item v-for="group in batchSourceData" :key="group" class="set-carousel-item"> |
| | | <div |
| | | class="main_item flex items-center cursor-pointer" |
| | |
| | | const getSelectListSample = async () => { |
| | | const res = await getSelectSample({}); |
| | | state.exampleRandomContent = res.samples; |
| | | |
| | | const array = []; |
| | | res.samples.forEach((sample, index) => { |
| | | sample.Icon = '/static/images/wave/ChatImg.png'; |
| | |
| | | const advanceExampleClick = () => { |
| | | emits('advanceExampleClick', true); |
| | | }; |
| | | |
| | | const tagListClick = (group_item) => { |
| | | const curGroupID = group_item.p_group_id; |
| | | const curID = group_item.group_id; |
| | | const exampleContent = exampleList.value; |
| | | let curGroupIDs = []; |
| | | if (!curGroupID) { |
| | | curGroupIDs.push(curID); |
| | | } else { |
| | | exampleContent.forEach((item) => { |
| | | curGroupIDs.push(item.group_id); |
| | | }); |
| | | } |
| | | let result = []; |
| | | curGroupIDs.forEach((curItem) => { |
| | | exampleContent.forEach((sample) => { |
| | | if (curItem == sample.group_id) result.push(sample); |
| | | }); |
| | | }); |
| | | batchChange(); |
| | | }; |
| | | //随机生成颜色 |
| | | const randomHexColor = () => { |
| | | return `#${Math.floor(Math.random() * 16777215) |
| | |
| | | }; |
| | | defineExpose({ |
| | | getSelectListSample, |
| | | tagListClick, |
| | | }); |
| | | </script> |
| | | <style scoped lang="scss"> |