@@ -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() {
diff --git a/src/component/home/design/collection.vue b/src/component/home/design/collection.vue
index cab84381..503e3d93 100644
--- a/src/component/home/design/collection.vue
+++ b/src/component/home/design/collection.vue
@@ -94,7 +94,7 @@ export default defineComponent({
openType:'',
collectionStep:1,
selectObject:computed(()=>store.state.Workspace.probjects),//选择的项目
- createProbject:inject('createProbject') as any
+ createProbject:inject('createProbject',()=>{}) as any
})
let driver__:any = computed(()=>{
diff --git a/src/component/home/design/collection/ColorboardUpload.vue b/src/component/home/design/collection/ColorboardUpload.vue
index 8bd4f40c..c56cc87e 100644
--- a/src/component/home/design/collection/ColorboardUpload.vue
+++ b/src/component/home/design/collection/ColorboardUpload.vue
@@ -806,8 +806,18 @@ export default defineComponent({
this.setColorboardList(colorList)
},
setPrintImg(){
- let printImgListData = JSON.parse(JSON.stringify(this.store?.state?.UploadFilesModule.printboard))
- let moodImgListData = JSON.parse(JSON.stringify(this.store?.state?.UploadFilesModule.moodboard))
+ let printImgListData = []
+ if(this.store?.state?.UploadFilesModule.printboard == 0){
+ printImgListData = JSON.parse(JSON.stringify(this.store?.state?.UploadFilesModule.allBoardData.printboardFiles))
+ }else{
+ printImgListData = JSON.parse(JSON.stringify(this.store?.state?.UploadFilesModule.printboard))
+ }
+ let moodImgListData = []
+ if(this.store?.state?.UploadFilesModule.printboard == 0){
+ moodImgListData = JSON.parse(JSON.stringify(this.store?.state?.UploadFilesModule.allBoardData.moodboardFiles))
+ }else{
+ moodImgListData = JSON.parse(JSON.stringify(this.store?.state?.UploadFilesModule.moodboard))
+ }
let imgListData = [...moodImgListData,...printImgListData]
if(imgListData?.length==0){
message.info(this.t('ColorboardUpload.jsContent6'))
@@ -821,7 +831,7 @@ export default defineComponent({
setImgGetColor(data){
data.status = 'await'
this.fileList[0] = data
- fetch(data.imgUrl)
+ fetch(data.imgUrl || data.url)
.then(response => response.blob())
.then(blob => {
const reader = new FileReader();
diff --git a/src/component/home/design/editDesignType/index.vue b/src/component/home/design/editDesignType/index.vue
index 423fdc72..7f683818 100644
--- a/src/component/home/design/editDesignType/index.vue
+++ b/src/component/home/design/editDesignType/index.vue
@@ -506,7 +506,8 @@ setup(props:any,{emit}) {
status:productimg.generateSuccess.status,
listType:productimg.generateSuccess.listType,
isIndex:productimg.generateSuccess.isIndex,
- userLikeSortId:productimg.generateSuccess.userLikeSortId
+ userLikeSortId:productimg.generateSuccess.userLikeSortId,
+ parentId:productimg.generateSuccess.parentId
}
emit('addGenerateImg',data)
@@ -588,14 +589,16 @@ methods: {
}
// this.
+ console.log(list[index])
this.generateSuccess.userLikeSortId = list[index].userLikeSortId
+ this.generateSuccess.parentId = list[index].parentId
this.generateSuccess.productimgIsProductimg = !!this.generateSuccess.productimgIsProductimg
this.generateSuccess.productimgRemProductimg = !!this.generateSuccess.productimgRemProductimg
this.generateSuccess.isShowMark = !!this.generateSuccess.isShowMark
this.generateSuccess.remPrductimgTime = this.generateSuccess.remPrductimgTime?this.generateSuccess.remPrductimgTime:null
this.generateSuccess.prductimgTime = this.generateSuccess.prductimgTime?this.generateSuccess.prductimgTime:null
this.scaleImage = true
- if(this.poseList.length == 0){
+ if(this.poseList.length == 0 && list[index].type == 'PoseTransfer'){
this.getPoseList()
}
// if(status == 'edit'){
@@ -623,7 +626,11 @@ methods: {
}else{
this.speedList = this.speedTypeList.toPorductImg
}
- this.speedData = JSON.parse(JSON.stringify(this.speedList[0]))
+ if(this.scaleImageList[index].resultType == "Relight"){
+ this.speedData = JSON.parse(JSON.stringify(this.speedList[1]))
+ }else{
+ this.speedData = JSON.parse(JSON.stringify(this.speedList[0]))
+ }
// if(this.scaleImageList[index]?.resultType == 'ToProductImage')this.scaleImageList[index].sourceUrl = this.scaleImageList[index].imgUrl
this.scaleImageIndex = index
if(dialogueIndex)this.robotAssits = dialogueIndex
diff --git a/src/component/home/design/index.vue b/src/component/home/design/index.vue
index 19e6ed81..c8b486c5 100644
--- a/src/component/home/design/index.vue
+++ b/src/component/home/design/index.vue
@@ -37,9 +37,20 @@
-
{{ $t('HomeView.Design') }}
+
+
@@ -250,6 +262,7 @@
}"
@setGenerateAwait="setGenerateAwait"
:isProductimg="true">
+
@@ -275,6 +288,7 @@ import { useI18n } from "vue-i18n";
import { getMousePosition } from "@/tool/mdEvent";
import { removeClass } from "element-plus/es/utils";
import collectionModal from './collection.vue'
+import designTools from './tools.vue'
const FileSaver = require("file-saver");
export default defineComponent({
@@ -287,6 +301,7 @@ export default defineComponent({
generalCanvas,
DesignDetailcopy,
editDesignType,
+ designTools,
},
emits:['setTask'],
activated() {
@@ -383,7 +398,50 @@ export default defineComponent({
collectionModal:null as any,
editDesignType:null as any,
designBtn:null as any,
+ designTools:null as any,
})
+ //可使用的tools类型
+ let speed = reactive({
+ speedList:[
+ {
+ label:'To Product Image',
+ value:'toProduct',
+
+ },{
+ label:'Transfer Pose',
+ value:'poseTransfer',
+ },{
+ label:'Relight',
+ value:'relight',
+ },
+ ],
+ speedState:false,
+ speedData:{
+ label:'To Product Image',
+ value:'toProduct',
+ },
+ })
+ const openSpeed = ()=>{
+ speed.speedState = !speed.speedState
+ if(speed.speedState){
+ document.addEventListener('click',openSpeed)
+ }else{
+ document.removeEventListener('click',openSpeed)
+ }
+ }
+ const setSpeed = (item:any)=>{
+ speed.speedState = false
+ speed.speedData = item
+ }
+ const openEditTools = ()=>{
+ dataDom.designTools.init(speed.speedData.value,likeDesignCollectionList.value)
+ }
+ const editToolsSuccess = ()=>{
+ nextTick().then(()=>{
+ designData.isUnfold = true
+ uploadLikeDom()
+ })
+ }
const designData = reactive({
openEditBtnId:-1,
selectEditBtn:null as any,
@@ -404,7 +462,6 @@ export default defineComponent({
selectDesign:null as any,//当前选择的design
isUnfold:false,
selectLikeDesign:[] as any,
-
//类型
resultTypeList:[
{
@@ -791,7 +848,7 @@ export default defineComponent({
userGroupId:data.userGroupId || data.id,
firstFrameUrl:data.firstFrameUrl,
gifUrl:data.gifUrl,
- userLikeSortId:data.userLikeSortId,
+ parentId:data.parentId || data.userLikeSortId,
}
let list = []
if(data.listType == 'disLike'){
@@ -837,7 +894,7 @@ export default defineComponent({
let data = {
toProductImageResultId:[(design.designItemId || design.id)],
projectId: store.state.Workspace.probjects.id,
- collectionSortParentId:designData?.selectDesign?.userLikeSortId || design.parentId,
+ collectionSortParentId:designData?.selectDesign?.parentId || design.parentId,
} as any
let params = {} as any
if(type == 'ToProductImage' || type == 'Relight'){
@@ -853,14 +910,14 @@ export default defineComponent({
likeOrDislike:'like',
transformedId:design.id,
projectId:store.state.Workspace.probjects.id,
- collectionSortParentId:designData?.selectDesign?.userLikeSortId || design.parentId,
+ collectionSortParentId:design.parentId || designData?.selectDesign?.userLikeSortId,
}
}else{
params = {
likeOrDislike:'dislike',
transformedId:design.id,
projectId:store.state.Workspace.probjects.id,
- collectionSortParentId:designData?.selectDesign?.userLikeSortId || design.parentId,
+ collectionSortParentId:design.parentId || designData?.selectDesign?.userLikeSortId,
}
}
}else{
@@ -883,13 +940,14 @@ export default defineComponent({
}else{
likeDesignCollectionList.value.forEach((item:any)=>{
if(item.resultType == 'Design' && item.userLikeSortId == designData.selectDesign.userLikeSortId){
- item.childList = item.childList.filter((item:any)=>{
- return item.id != design.id
+ item.childList = item.childList.filter((childItem:any)=>{
+ return childItem.id != design.id
})
}
})
}
nextTick().then(()=>{
+ designData.isUnfold = true
uploadLikeDom()
})
@@ -1093,6 +1151,13 @@ export default defineComponent({
...toRefs(collItemSize),
...toRefs(designData),
...toRefs(dataDom),
+ //编辑tools相关
+ ...toRefs(speed),
+ openSpeed,
+ setSpeed,
+ openEditTools,
+ editToolsSuccess,
+
likeItemDom,
collItemDom,
domHidden,
@@ -1215,6 +1280,8 @@ export default defineComponent({
this.setShowHide('recycleDomHidden')
})
}
+ this.isUnfold = true
+ this.setUnfold()
},
directives:{
mousewheel:{
diff --git a/src/component/home/design/tools.vue b/src/component/home/design/tools.vue
new file mode 100644
index 00000000..e3c29262
--- /dev/null
+++ b/src/component/home/design/tools.vue
@@ -0,0 +1,181 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/component/home/index.vue b/src/component/home/index.vue
index 6cbb6e98..994eee55 100644
--- a/src/component/home/index.vue
+++ b/src/component/home/index.vue
@@ -450,6 +450,7 @@ export default defineComponent({
let queue = [] as any
let start = false
const chatChange = (value:any)=>{
+
if(value.type == 'design_control_signal' && dataDom.design){
queue.push(
{
diff --git a/src/component/home/newProject/index.vue b/src/component/home/newProject/index.vue
index c05a27b7..4ed989ed 100644
--- a/src/component/home/newProject/index.vue
+++ b/src/component/home/newProject/index.vue
@@ -126,8 +126,10 @@ export default defineComponent({
}
const addChatContent = (item:any)=>{
if((data.textarea.value?.length + item.length) > 10000)return
- data.chatContent += item
- data.textarea.value += item
+ // data.chatContent += item
+ // data.textarea.value += item
+ data.chatContent = item
+ data.textarea.value = item
}
const sendChat = ()=>{
if(!data.chatContent)return
@@ -215,7 +217,8 @@ export default defineComponent({
data.chatOrSetting = str
}
const setProject = (item:any)=>{
- router.push(`home?history=${item.id}`)
+ emit('newProject',item)
+ // router.push(`home?history=${item.id}`)
}
onMounted(()=>{
store.commit('createProbject')
diff --git a/src/component/home/tools/patternMaking3D/index.vue b/src/component/home/tools/patternMaking3D/index.vue
index 9f78c9be..dfc9041b 100644
--- a/src/component/home/tools/patternMaking3D/index.vue
+++ b/src/component/home/tools/patternMaking3D/index.vue
@@ -67,7 +67,7 @@
3D view
Img view