| | |
| | | component: '/project/ch/home/Home.vue', |
| | | redirect: null, |
| | | }, |
| | | |
| | | { |
| | | name: 'Scenario', |
| | | isKeepAlive: true, |
| | | isAffix: false, |
| | | path: '/Scenario', |
| | | component: '/project/ch/home/Scenario.vue', |
| | | redirect: null, |
| | | } |
| | | |
| | | ]; |
| | |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="aside_center"></div> |
| | | <div class="aside_center"> |
| | | <asideNew /> |
| | | </div> |
| | | <div class="aside_bottom"> |
| | | <asideTitle /> |
| | | </div> |
| | |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | | import asideNew from './component/waterLeftAside/asideNew.vue'; |
| | | import asideTitle from './component/waterLeftAside/asideTitle.vue'; |
| | | import waterBottom from './component/waterRight/bottom.vue'; |
| | | import waterCenter from './component/waterRight/center.vue'; |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template>123</template> |
| | | |
| | | <script setup lang="ts"></script> |
| | | <style scoped lang="scss"></style> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <div class="w100 h100 flex items-center flex-column box-border pr-1"> |
| | | <div class="w100 box-border px-[18px] py-0"> |
| | | <el-button |
| | | icon="ele-Plus" |
| | | color="#1c86ff" |
| | | class="flex items-center box-border mb-3 justify-center add_room cursor-pointer w-[124px] h-[32.88px] rounded-s-md text-white opacity-100" |
| | | > |
| | | æ°å»ºè天室 |
| | | </el-button> |
| | | </div> |
| | | <div |
| | | class="w-[210.98px] h-[34px] rounded-t-lg bg-[#2b2c30] box-border mb-3 relative opacity-100 shadow-lg shadow-[[#0e0e0f]-500/50" |
| | | > |
| | | <div class="relative w100 h100"> |
| | | <el-input v-model="state.searchInput" placeholder="æç´¢" class="set-input"> |
| | | <template #prefix> |
| | | <el-icon @click="selectDateChange"><search /></el-icon> |
| | | </template> |
| | | </el-input> |
| | | </div> |
| | | <div class="absolute top-[100%] w-[84px] z-[1001] left-0" v-show="state.isShowDate"> |
| | | <div class="w100 bg-[#fff] px-[0px] py-[5px]" v-for="item in state.selectDateOption" :key="item.value"> |
| | | <div class="w100 relative h-[28px] flex items-center justify-center cursor-pointer">{{ item.label }}</div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | | import { Search } from '@element-plus/icons-vue'; |
| | | import { reactive } from 'vue'; |
| | | let state = reactive({ |
| | | searchInput: '', |
| | | selectDateOption: [ |
| | | { |
| | | label: 'å
¨é¨', |
| | | value: 0, |
| | | }, |
| | | { |
| | | label: 'ä¸å¨å
', |
| | | value: 1, |
| | | }, |
| | | { |
| | | label: '䏿å
', |
| | | value: 2, |
| | | }, |
| | | { |
| | | label: '䏿å', |
| | | value: 3, |
| | | }, |
| | | ], |
| | | isShowDate: false, |
| | | }); |
| | | const selectDateChange = () => { |
| | | state.isShowDate = !state.isShowDate; |
| | | }; |
| | | </script> |
| | | <style scoped lang="scss"> |
| | | .set-input { |
| | | :deep(.el-input__wrapper) { |
| | | width: 100%; |
| | | height: 100%; |
| | | font-size: 12px; |
| | | font-weight: 400; |
| | | letter-spacing: 0; |
| | | color: #e5e5e5; |
| | | border-radius: 6px; |
| | | border: 1px solid transparent; |
| | | box-sizing: border-box; |
| | | line-height: 34px; |
| | | // padding-left: 31px; |
| | | padding-right: 10px; |
| | | background-color: transparent; |
| | | cursor: pointer; |
| | | transition: color 0.2s ease-in-out; |
| | | box-shadow: unset; |
| | | } |
| | | } |
| | | </style> |
| | |
| | | <template> |
| | | <div class="w100 h100"> |
| | | <div class="aisde-title"> |
| | | <div class="flex items-center set-li" v-for="(item, index) in state.asideTitleList" :key="index"> |
| | | <div |
| | | class="flex items-center set-li" |
| | | v-for="(item, index) in state.asideTitleList" |
| | | :key="index" |
| | | @click="handleClick(item.id)" |
| | | :class="{ 'set-li-active': state.currentActive === item.id }" |
| | | > |
| | | <img :src="item.icon" alt="" class="pl-2.5 pr-2.5 w-4 h-4" style="box-sizing: content-box" /> |
| | | <span class="font-medium text-sm text-white tracking-wide">{{ item.title }}</span> |
| | | </div> |
| | |
| | | |
| | | <script setup lang="ts"> |
| | | import { reactive } from 'vue'; |
| | | import { gotoRoute } from '/@/utils/route'; |
| | | let state = reactive({ |
| | | asideTitleList: [ |
| | | { |
| | | id: '1', |
| | | id: 1, |
| | | icon: '/static/images/wave/AsideIcon.png', |
| | | title: 'åºç¨åºæ¯', |
| | | }, |
| | | { |
| | | id: '2', |
| | | id: 2, |
| | | icon: '/static/images/wave/AsideIcon.png', |
| | | title: '帮å©ä¸å¿', |
| | | }, |
| | | { |
| | | id: '3', |
| | | id: 3, |
| | | icon: '/static/images/wave/AsideIcon.png', |
| | | title: '个人设置', |
| | | }, |
| | | { |
| | | id: '4', |
| | | id: 4, |
| | | icon: '/static/images/wave/AsideIcon.png', |
| | | title: 'å
³äºæ°´å¡AI', |
| | | }, |
| | | ], |
| | | currentActive: 0, |
| | | }); |
| | | const handleClick = (id) => { |
| | | state.currentActive = id; |
| | | if (id == 1) { |
| | | gotoRoute({ name: 'Scenario' }); |
| | | } |
| | | }; |
| | | </script> |
| | | <style scoped lang="scss"> |
| | | .aisde-title { |
| | |
| | | -ms-flex-align: center; |
| | | align-items: center; |
| | | cursor: pointer; |
| | | &:hover { |
| | | width: 214px; |
| | | height: 30px; |
| | | background-color: #3b3d40; |
| | | border-radius: 6px; |
| | | } |
| | | .set-li-active { |
| | | width: 214px; |
| | | height: 30px; |
| | | background-color: #3b3d40; |
| | | |
| | | border-radius: 6px; |
| | | span { |
| | | background: linear-gradient(90deg, #84fdd4 0, #2a82e4); |
| | | background-clip: text; |
| | | -webkit-background-clip: text; |
| | | -webkit-text-fill-color: transparent; |
| | | } |
| | | } |
| | | .user_login { |
| | |
| | | { |
| | | ID: 1, |
| | | Icon: 'biaodan', |
| | | Title: '解读æåçååº', |
| | | Title: 'è¡ä¸ç¥è¯åº', |
| | | Content: 'å¼ ä¸æäºæåä¸å·´æ,æåå¯¹å¼ ä¸è¯´:"ä½ æ¯ä¸æ¯æ²¡åé¥",æå说è¿å¥è¯å«ä¹æ¯?', |
| | | }, |
| | | { |
| | | ID: 2, |
| | | Icon: 'putong', |
| | | Title: 'è§£éåªåä¸å
å·çåºå«', |
| | | Title: 'ç产è°åº¦', |
| | | Content: 'æä¹è§£éåªååå
å·çåºå«?', |
| | | }, |
| | | { |
| | | ID: 3, |
| | | Icon: 'zhongduancanshuchaxun', |
| | | Title: 'å
¶ä»é®é¢', |
| | | Title: '水产ç产', |
| | | Content: '请æç´¢ä½ æ³ç¥éçé®é¢', |
| | | }, |
| | | { |
| | | ID: 4, |
| | | Icon: 'tuichuquanping', |
| | | Title: 'ç»å®å®åææåå
æ¶µçåå', |
| | | Title: '管ç½è¿è¡', |
| | | Content: '请以è¯ç»ä¸çå
¸æ
ç»ç·å®å®ååï¼å§é¡¾ï¼ååè¦æ±3个åï¼ç»5个åå便鿩ã', |
| | | }, |
| | | ], |
| | |
| | | <div class="flex item-center"> |
| | | <span>æé®ç¤ºä¾</span> |
| | | <span class="split"></span> |
| | | <span class="change cursor-pointer">é«çº§ç¤ºä¾ ></span> |
| | | <span class="change cursor-pointer" @click="advanceExampleClick">é«çº§ç¤ºä¾ ></span> |
| | | </div> |
| | | <div class="cursor-pointer"> |
| | | <span class="mr-1 changeBatch">æ¢ä¸æ¹</span> |
| | |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <el-drawer v-model="state.isShowAdvanceExample" direction="rtl" size="30%"> |
| | | <div class="box-border w100 bg-[#e0e7fb] relative flex items-center justify-center" style="padding: 30px 20px 26px"> |
| | | <!-- <el-tabs v-model="state.activeName" type="card" @tab-click="handleClick" class="set-tabs"> |
| | | <el-tab-pane label="æé®ç¤ºä¾" name="questionExample">æé®ç¤ºä¾</el-tab-pane> |
| | | <el-tab-pane label="æä»¤æ¨¡æ¿" name="instructionTemplate">æä»¤æ¨¡æ¿</el-tab-pane> |
| | | </el-tabs> --> |
| | | <div |
| | | class="box-border flex w-[203px] h-[32px] rounded-md items-center justify-between cursor-pointer relative border border-solid border-[#2c2d33]" |
| | | > |
| | | <!-- <div class="w-[108px] h100 rounded-[5px] bg-transparent absolute left-0 transition-all"></div> --> |
| | | |
| | | <div |
| | | class="tabbar-item" |
| | | :class="state.activeName === item.ID ? 'set-tabbar-active' : ''" |
| | | @click="handleTabClick(item)" |
| | | v-for="item in state.tabNameList" |
| | | :key="item.ID" |
| | | > |
| | | {{ item.Name }} |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </el-drawer> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | Content: '请以è¯ç»ä¸çå
¸æ
ç»ç·å®å®ååï¼å§é¡¾ï¼ååè¦æ±3个åï¼ç»5个åå便鿩ã', |
| | | }, |
| | | ], |
| | | tabNameList: [ |
| | | { ID: 1, Name: 'æé®ç¤ºä¾' }, |
| | | { ID: 2, Name: 'æä»¤æ¨¡æ¿' }, |
| | | ], |
| | | exampleIndex: 0, |
| | | isShowAdvanceExample: false, |
| | | activeName: 1, |
| | | }); |
| | | const changeExample = (item) => { |
| | | state.exampleIndex = item.ID; |
| | | }; |
| | | //é«çº§ç¤ºä¾ |
| | | const advanceExampleClick = () => { |
| | | state.isShowAdvanceExample = true; |
| | | }; |
| | | const handleTabClick = (item) => { |
| | | console.log(item.ID); |
| | | state.activeName = item.ID; |
| | | }; |
| | | </script> |
| | | <style scoped lang="scss"> |
| | |
| | | } |
| | | } |
| | | } |
| | | .tabbar-item { |
| | | width: 108px; |
| | | height: 30px; |
| | | font-size: 13px; |
| | | font-weight: 400; |
| | | line-height: 30px; |
| | | text-align: center; |
| | | cursor: pointer; |
| | | // position: absolute; |
| | | -o-transition: color 0.2s; |
| | | transition: color 0.2s; |
| | | &:nth-child(3) { |
| | | top: 0; |
| | | left: 0; |
| | | } |
| | | } |
| | | .tabbar-item-active { |
| | | color: #fff; |
| | | } |
| | | .set-tabbar-active { |
| | | left: 95px; |
| | | color: #fff; |
| | | background-color: #000; |
| | | } |
| | | </style> |
| | |
| | | <template> |
| | | <div class="flex items-center"> |
| | | <img src="/static/images/logo/logo-mini.svg" alt="logo" class="layout-logo-medium-img" /> |
| | | <p class="set-waterTitle"><strong>æ°´å¡ AI</strong>æ±èå
¨ç AI ç²¾é«</p> |
| | | <p class="set-waterTitle"><strong>WI æ°´å¡æºè½ä¸å®¶</strong>æºæ
§æ°´å¡å©æ</p> |
| | | </div> |
| | | <div class="flex items-center pc-roleList"> |
| | | <div v-for="(item, index) in state.roleList" :key="index" class="flex items-center pl-6" @click="handleClick(item)"> |
| | |
| | | <el-input v-model="state.inputAnswer" placeholder="å¨è¿éè¾å
¥æ¨çé®é¢å¼å§åAI对è¯" class="set-inputAnswer" /> |
| | | </div> |
| | | <div class="h100 flex items-center"> |
| | | <div class="upload_img"> |
| | | <div class="upload_img space-y"> |
| | | <div class="imgbox cursor-pointer flex items-center"> |
| | | <el-button title="AIçå¾" class="cursor-pointer" link style="margin-left: unset"> |
| | | <img src="/static/images/wave/LookImg.png" class="set-img-icon box-border" /> |