Browse Source

Merge branch 'ds' of http://39.101.133.168:8807/hongxilin/AIxiaocaishen into ds

hongxilin/hotfix-20250625101643-手机输入法弹出输入框上浮
dongqian 1 week ago
parent
commit
575be1ada2
  1. BIN
      src/assets/img/AIchat/夺宝奇兵logo.png
  2. BIN
      src/assets/img/AIchat/开启无限财富.png
  3. 1195
      src/views/AIchat.vue
  4. 6
      src/views/AiEmotion.vue
  5. 29
      src/views/homePage.vue

BIN
src/assets/img/AIchat/夺宝奇兵logo.png

After

Width: 185  |  Height: 101  |  Size: 30 KiB

BIN
src/assets/img/AIchat/开启无限财富.png

After

Width: 594  |  Height: 101  |  Size: 16 KiB

1195
src/views/AIchat.vue
File diff suppressed because it is too large
View File

6
src/views/AiEmotion.vue

@ -440,7 +440,7 @@ watch(currentStock, (newStock) => {
two: conclusion.two || '',
three: conclusion.three || '',
four: conclusion.four || '',
disclaimer: '该内容由AI内容生成,请注意甄别'
disclaimer: '该内容由AI生成,请注意甄别'
};
displayedTitles.value = {
one: 'L1: 情绪监控',
@ -651,7 +651,7 @@ function startTypewriterEffect(conclusion) {
});
//
const disclaimerText = '该内容由AI内容生成,请注意甄别';
const disclaimerText = '该内容由AI生成,请注意甄别';
//
const showDisclaimerTimer = setTimeout(() => {
@ -1109,7 +1109,7 @@ function setupIntersectionObserver() {
two: conclusion.two || '',
three: conclusion.three || '',
four: conclusion.four || '',
disclaimer: '该内容由AI内容生成,请注意甄别'
disclaimer: '该内容由AI生成,请注意甄别'
};
displayedTitles.value = {
one: 'L1: 情绪监控',

29
src/views/homePage.vue

@ -11,6 +11,7 @@ import { useAppBridge } from "../assets/js/useAppBridge.js";
import { useDataStore } from "@/store/dataList.js";
import { useChatStore } from "../store/chat";
import { useEmotionAudioStore } from "../store/emotionAudio";
import { useAudioStore } from "../store/audio";
import _ from "lodash";
import logo from "../assets/img/homePage/logo.png";
@ -44,19 +45,31 @@ const chatStore = useChatStore();
//
//
const emotionAudioStore = useEmotionAudioStore();
const isVoice = computed(() => emotionAudioStore.isVoiceEnabled);
const audioStore = useAudioStore();
// store
const getCurrentAudioStore = () => {
return activeTab.value === 'AiEmotion' ? emotionAudioStore : audioStore;
};
const isVoice = computed(() => {
const currentStore = getCurrentAudioStore();
return currentStore.isVoiceEnabled;
});
const toggleVoice = () => {
if (!emotionAudioStore.isVoiceEnabled) {
const currentStore = getCurrentAudioStore();
if (!currentStore.isVoiceEnabled) {
//
emotionAudioStore.toggleVoice();
currentStore.toggleVoice();
} else {
// /
if (emotionAudioStore.currentAudioUrl || emotionAudioStore.ttsUrl) {
if (currentStore.currentAudioUrl || currentStore.ttsUrl) {
// /
emotionAudioStore.togglePlayPause();
currentStore.togglePlayPause();
} else {
//
emotionAudioStore.toggleVoice();
currentStore.toggleVoice();
}
}
};
@ -605,8 +618,8 @@ onMounted(async () => {
<!-- AI情绪大模型按钮 -->
<img :src="activeTab === 'AiEmotion' ? emotionButton01 : emotionButton02
" @click="setActiveTab('AiEmotion', 1)" class="action-btn model-btn" alt="AI情绪大模型" />
<img v-if="emotionAudioStore.isVoiceEnabled && !emotionAudioStore.isPlaying" :src="voice" @click="toggleVoice" class="action-btn" />
<img v-else-if="emotionAudioStore.isVoiceEnabled && emotionAudioStore.isPlaying" :src="voice" @click="toggleVoice" class="action-btn" style="opacity: 0.7; animation: pulse 1.5s infinite;" />
<img v-if="getCurrentAudioStore().isVoiceEnabled && !getCurrentAudioStore().isPlaying" :src="voice" @click="toggleVoice" class="action-btn" />
<img v-else-if="getCurrentAudioStore().isVoiceEnabled && getCurrentAudioStore().isPlaying" :src="voice" @click="toggleVoice" class="action-btn" style="opacity: 0.7; animation: pulse 1.5s infinite;" />
<img v-else :src="voiceNoActive" @click="toggleVoice" class="action-btn" />
</div>
</div>

Loading…
Cancel
Save