Merge remote-tracking branch 'origin/develop' into dev_vite

This commit is contained in:
X1627315083
2025-06-20 11:40:00 +08:00
21 changed files with 3154 additions and 3171 deletions

View File

@@ -9,7 +9,7 @@
<div class="chatBox">
<div class="chattingRecords" v-show="chatList.length > 0 && isChattingRecords">
<div class="itemBox" ref="chatBox">
<div class="item" v-for="item in chatList" :class="{user:item.role == 'user'}">
<div class="item" v-for="item,index in chatList" :class="{user:item.role == 'user'}">
<div class="textBox">
<div class="icon">
<img src="@/assets/images/icon/favicon.png" alt="">
@@ -29,7 +29,11 @@
</div>
</div>
<div class="imgBox">
<img v-if="item.content?.img?.length > 0" v-for="imgItem in item.content?.img" :src="imgItem.minioUrl" alt="">
<!-- <span v-show="item.content?.img?.length > 0">
{{ item.content?.img }}
</span> -->
<img v-if="item.content?.img?.length > 0" v-for="imgItem,imgIndex in item.content?.img" :src="imgItem.minioUrl" alt="" @error="imgError(imgItem,index,imgIndex,$event)">
</div>
<div class="colorBox">
<div v-if="item.content?.color?.length > 0" class="item" v-for="colorItem in item.content?.color">
@@ -76,6 +80,7 @@
import { defineComponent,computed,ref,inject,nextTick,createVNode,toRefs, reactive, watch} from 'vue'
import { ExclamationCircleOutlined } from '@ant-design/icons-vue';
import { Https } from "@/tool/https";
import {getMinioUrl} from '@/tool/util'
import { useStore } from "vuex";
import { Modal,message,Upload,CascaderProps } from 'ant-design-vue';
import { useI18n } from 'vue-i18n'
@@ -157,7 +162,7 @@ export default defineComponent({
}else if(eventData.type == 'think'){
data.chatList[data.chatList.length-1].content.think+=eventData.content
}else if(eventData.type == "tools_response"){
let nameList = ['moodboard','printboard','sketchboard','generate_color_code']
let nameList = ['moodboard','printboard','sketchboard','generate_color_code','search_sketch_img']
let nameData = {
moodboard:'moodBoard',
printboard:'printBoard',
@@ -171,14 +176,17 @@ export default defineComponent({
getData = 'colorBoard'
}else{
data.chatList[data.chatList.length-1].content.img = JSON.parse(JSON.parse(event.data).content).receiveCollectionElementList
getData = nameData[eventData.tools_name]
if(eventData.tools_name == 'search_sketch_img'){
getData = 'sketchBoard'
}else{
getData = nameData[eventData.tools_name]
}
}
data.chatList.push({content:{message:''},role:'system'})
}else if(eventData.tools_name == 'design_control_signal'){
emit('chatChange',{type:eventData.tools_name,design:true})
}
emit('chatChange',{type:eventData.type,module:getData})
}
//emit('chatChange',{type:JSON.parse(event.data).status})
};
@@ -306,6 +314,19 @@ export default defineComponent({
const deleteFile = (item:any,index:number)=>{
data.filList.splice(index,1)
}
const imgError = (item:any,index:number,imgIndex:number,event:any)=>{
if(!item?.loadNum) item.loadNum = 0
if(item?.loadNum >= 1)return
let value = {
path:getMinioUrl(item.minioUrl)
}
Https.axiosGet(Https.httpUrls.refreshMinioUrl,{params:value}).then((rv:any)=>{
event.target.src = rv
item.loadNum += 1
data.chatList[index].content.img[imgIndex].monioUrl = rv
})
}
return{
...toRefs(dataDom),
...toRefs(data),
@@ -314,6 +335,7 @@ export default defineComponent({
openChattingRecords,
handleFileUpload,
deleteFile,
imgError,
}
},
provide() {