Files
aida_front/src/store/homeStore/homeStore.ts

280 lines
7.1 KiB
TypeScript
Raw Normal View History

2023-01-06 16:00:15 +08:00
import {Module} from 'vuex'
import {RootState} from '../index'
interface DesignDetail{
designCollectionList:any,
likeDesignCollectionList:any,
2024-12-31 11:40:40 +08:00
deleteDesignCollectionList:any,
2023-01-06 16:00:15 +08:00
userGroupId:any,
designCollectionId:any,
templateId:any,
templateImgUrl:any,
designId:any,
2023-12-04 11:48:17 +08:00
showSketchList:any,
2025-04-01 15:25:15 +08:00
toProductImageList:any,// 产品图片
relightList:any,// 灯光列表
2025-06-18 11:05:23 +08:00
uploadElement:any,// 上传元素 toproduct、relight、pose
2025-04-01 15:25:15 +08:00
poseTransfer:any,// 姿态转换
deReconstruction:any,// 拼贴
patternMaking3D:any,//3d
canvasData:any,// 拼贴canvas
2023-01-06 16:00:15 +08:00
}
const HomeStoreModule : Module<DesignDetail,RootState> = {
state:{
designCollectionList:[],
likeDesignCollectionList:[],
2024-12-31 11:40:40 +08:00
deleteDesignCollectionList:[],
2023-01-06 16:00:15 +08:00
userGroupId:'',
designCollectionId:'',
templateId:'',
templateImgUrl:'',
designId:'',
2023-12-04 11:48:17 +08:00
showSketchList:[],
2025-07-19 14:04:48 +08:00
toProductImageList:{
list:[],
likedList:[],
},
relightList:{
list:[],
likedList:[],
},
2025-06-18 11:05:23 +08:00
uploadElement:[],
poseTransfer:{
list:[],
likedList:[],
},
2025-04-01 15:25:15 +08:00
deReconstruction:[{
isLike:false,
url:'',
category:'123',
categoryValue:'23',
categoryShow:false
}],
2025-07-19 14:04:48 +08:00
deReconstructionUploadImages:[],
2025-04-23 16:20:53 +08:00
patternMaking3D:{
2025-06-18 11:05:23 +08:00
collectionElementId:null,
2025-06-09 10:25:54 +08:00
threeDSimpleId:null,
2025-04-23 16:20:53 +08:00
printMinioUrl:null,
2025-06-09 10:25:54 +08:00
url:'',
2025-04-23 16:20:53 +08:00
x:null,
y:null,
},
// patternMaking3D:null,
2025-04-01 15:25:15 +08:00
canvasData:{
deReconstruction:null,
canvas:null
}
2023-01-06 16:00:15 +08:00
},
mutations:{
2023-12-04 11:48:17 +08:00
setshowSketchList(state,data){
state.showSketchList = data
},
2023-01-06 16:00:15 +08:00
setDesignCollectionList(state,data){
state.designCollectionList = data
},
setLikeDesignCollectionList(state,data){
2025-04-09 14:09:19 +08:00
data = data || []
2023-01-06 16:00:15 +08:00
state.likeDesignCollectionList = data
2025-04-01 15:25:15 +08:00
},
setRelightList(state,data){
if(data.str == 'add'){
2025-07-19 14:04:48 +08:00
if(data.list){
state.relightList.list.unshift(...data.list)
}
if(data.likedList){
state.relightList.likedList.unshift(...data.likedList)
}
2025-04-01 15:25:15 +08:00
}else{
2025-07-19 14:04:48 +08:00
if(data.list){
state.relightList.list.splice(data.index,1)
}else if(data.likedList){
state.relightList.likedList.splice(data.index,1)
}
2025-04-01 15:25:15 +08:00
}
},
2025-06-18 11:05:23 +08:00
setUploadElement(state,data){
if(data?.isGetModule){
state.uploadElement = []
}
2025-06-18 11:05:23 +08:00
if(data.str == 'add'){
state.uploadElement.unshift(...data.list)
}else{
state.uploadElement.splice(data.index,1)
}
},
2025-04-01 15:25:15 +08:00
setPoseTransfer(state,data){
if(data.str == 'add'){
2025-06-18 11:05:23 +08:00
if(data.list){
data.list.forEach((item:any) => {
item.url = item.firstFrameUrl
});
state.poseTransfer.list.unshift(...data.list)
}
if(data.likedList){
data.likedList.forEach((item:any) => {
item.url = item.firstFrameUrl
});
state.poseTransfer.likedList.unshift(...data.likedList)
}
2025-04-01 15:25:15 +08:00
}else{
2025-06-18 11:05:23 +08:00
if(data.list){
state.poseTransfer.list.splice(data.index,1)
}else if(data.likedList){
state.poseTransfer.likedList.splice(data.index,1)
}
2025-04-01 15:25:15 +08:00
}
},
2025-07-19 14:04:48 +08:00
toolsClear(state){
2025-11-11 13:38:36 +08:00
console.log('toolsClear')
2025-07-19 14:04:48 +08:00
state.relightList.likedList = []
state.uploadElement = []
state.toProductImageList.likedList = []
state.poseTransfer.likedList = []
},
2025-04-01 15:25:15 +08:00
setDeReconstruction(state,data){
if(data.str == 'add'){
state.deReconstruction = []
let obj = {
...data.list[0],
}
state.deReconstruction.unshift(obj)
}else{
state.deReconstruction.splice(data.index,1)
}
2025-07-19 14:04:48 +08:00
},
setDeReconstructionUploadImages(state,data){
if(data.str == 'add'){
state.deReconstructionUploadImages.unshift(...data.list)
}else{
state.deReconstructionUploadImages.splice(data.index,1)
}
2025-04-01 15:25:15 +08:00
},
setPatternMaking3D(state,data){
2025-04-23 16:20:53 +08:00
for (const key in data) {
if(data[key] == undefined)continue
if(key == 'x' || key == 'y'){
state.patternMaking3D[key] = Number(data[key].toFixed(3))
}else{
state.patternMaking3D[key] = data[key]
}
// state.patternMaking3D[key] = data[key]
}
2025-04-01 15:25:15 +08:00
},
setCanvasData(state,data){
state.canvasData[data.type] = data.file
},
setToProductImage(state,data){
if(data.str == 'add'){
2025-07-19 14:04:48 +08:00
if(data.list){
state.toProductImageList.list.unshift(...data.list)
}
if(data.likedList){
state.toProductImageList.likedList.unshift(...data.likedList)
}
2025-04-01 15:25:15 +08:00
}else{
2025-07-19 14:04:48 +08:00
if(data.list){
state.toProductImageList.list.splice(data.index,1)
}else if(data.likedList){
state.toProductImageList.likedList.splice(data.index,1)
}
2025-04-01 15:25:15 +08:00
}
2024-12-31 11:40:40 +08:00
},
setDeleteDesignCollectionList(state,data){
let obj = state.designCollectionList.splice(data,1)
2025-01-17 17:16:01 +08:00
// state.deleteDesignCollectionList.unshift(...obj)
2024-12-31 11:40:40 +08:00
},
cancelDeleteDesignCollectionList(state,data){
let obj = state.deleteDesignCollectionList.splice(data,1)
state.designCollectionList.unshift(...obj)
2023-01-06 16:00:15 +08:00
},
setSingleDesignCollectionList(state,data){
state.designCollectionList[data.index] = data.design
},
setSingleLikeDesignCollectionList(state,data){
state.likeDesignCollectionList[data.index] = data.design
},
addDesignCollectionList(state,data){
2025-04-23 09:39:24 +08:00
state.designCollectionList.unshift(...data)
2023-01-06 16:00:15 +08:00
},
addLikeDesignCollectionList(state,data){
2024-12-11 16:26:36 +08:00
state.likeDesignCollectionList.unshift(data)
2023-01-06 16:00:15 +08:00
},
deleteDesignCollectionList(state,index){
state.designCollectionList.splice(index,1)
},
deleteLikeDesignCollectionList(state,index){
state.likeDesignCollectionList.splice(index,1)
},
setUserGroupId(state,data){
state.userGroupId = data
},
deleteUserGroupId(state){
state.userGroupId = ''
},
setDesignCollectionId(state,data){
state.designCollectionId = data
},
deleteDesignCollectionId(state,data){
state.designCollectionId = ''
},
setDesignId(state,data){
state.designId = data
},
deleteDesignId(state){
state.designId = ''
},
clearAllCollection(state){
2025-11-11 13:38:36 +08:00
console.log('clearAll')
2023-01-06 16:00:15 +08:00
state.designCollectionList=[]
state.likeDesignCollectionList = []
state.designCollectionId = ''
2024-12-31 11:40:40 +08:00
state.deleteDesignCollectionList = []
2025-07-19 14:04:48 +08:00
state.relightList = {
list:[],
likedList:[],
}
2025-06-18 11:05:23 +08:00
state.uploadElement = []
2025-07-19 14:04:48 +08:00
state.toProductImageList = {
list:[],
likedList:[],
}
2025-06-18 11:05:23 +08:00
state.poseTransfer = {
list:[],
likedList:[],
}
2025-04-01 15:25:15 +08:00
state.deReconstruction = null
2025-07-19 14:04:48 +08:00
state.deReconstructionUploadImages = []
2025-04-23 16:20:53 +08:00
state.patternMaking3D = {
2025-06-18 11:05:23 +08:00
collectionElementId:null,
2025-06-09 10:25:54 +08:00
threeDSimpleId:null,
2025-04-23 16:20:53 +08:00
printMinioUrl:null,
2025-06-09 10:25:54 +08:00
url:null,
2025-04-23 16:20:53 +08:00
x:null,
y:null,
}
2025-04-01 15:25:15 +08:00
state.canvasData = {
deReconstruction:null,
canvas:null
}
state.showSketchList = []
2023-01-06 16:00:15 +08:00
},
setTemplateData(state,data){
state.templateId=data.id
state.templateImgUrl = data.url
},
clearTemplateData(state){
state.templateId= ''
state.templateImgUrl = ''
},
2024-08-13 09:36:13 +08:00
2023-01-06 16:00:15 +08:00
},
actions:{
}
}
export default HomeStoreModule