diff --git a/src/component/Detail/DesignDetail.vue b/src/component/Detail/DesignDetail.vue index 6f72c68c..a9d5bf58 100644 --- a/src/component/Detail/DesignDetail.vue +++ b/src/component/Detail/DesignDetail.vue @@ -336,16 +336,17 @@ export default defineComponent({ }) if(detailDom.detailRight?.privewDetail)await (detailDom.detailRight as any).privewDetail() if(detailDom.canvasBox && (detailData.currentDetailType != 'sketch' || detailData.isEditPattern.value == 'canvasEditor')){ - let otherData = await updateOtherLayers(detailData.isEditPattern.value == 'canvasEditor'?'all':'single') - await detailDom.canvasBox.updateOtherLayers(otherData) + if(detailData.isEditPattern.value !== 'editSketch'){ + let otherData = await updateOtherLayers(detailData.isEditPattern.value == 'canvasEditor'?'all':'single') + await detailDom.canvasBox.updateOtherLayers(otherData) + } await detailDom.canvasBox.privewDetail() await uploadElement() } for(let i = 0;i0 && (detailData.currentDetailType == 'print' || detailData.isEditPattern.value == 'canvasEditor')) && isCurrent)?{prints:newData.print}:list[i].printObject?list[i].printObject:{prints:[]}, priority, // scale:[ // 0.5, // 0.35822305 // ], scale:[scale[0]?scale[0]:1,scale[1]?scale[1]:1], - type:(newData && detailData.currentDetailType == 'sketch' && isCurrent && !detailData.isEditPattern.value)?newData.level2Type || newData.categoryValue:list[i].type, + type:(newData?.sketch && detailData.currentDetailType == 'sketch' && isCurrent && !detailData.isEditPattern.value)?newData?.sketch.level2Type || newData?.sketch.categoryValue:list[i].type, sketchString:list[i].sketchString?list[i].sketchString:'', - trims:((newData && detailData.currentDetailType == 'element' && isCurrent) || detailData.isEditPattern.value == 'canvasEditor')?{prints:newData}:list[i].trims?.prints?list[i].trims:{prints:[]}, - accessory:(newData && detailData.currentDetailType == 'accessory' && isCurrent && !detailData.isEditPattern.value)?{prints:newData}:list[i].trims?.prints?list[i].trims:{prints:[]}, + trims:((newData?.element?.length>0 && (detailData.currentDetailType == 'element' || detailData.isEditPattern.value == 'canvasEditor')) && isCurrent)?{prints:newData.element}:list[i].trims?.prints?list[i].trims:{prints:[]}, } - console.log(JSON.parse(JSON.stringify(data))) - // if(!data.partialDesign.partialDesignMinioPath){ - // data.partialDesign.partialDesignMinioPath = data.path - // } printObjectToJSON(data.printObject.prints) printObjectToJSON(data.trims.prints) if((detailData.isEditPattern.value && list[i].color?.gradient) || (!detailData.isEditPattern.value && (list[i].newDetail?.color?.gradient || list[i].color?.gradient))){ @@ -456,6 +457,7 @@ export default defineComponent({ let el:any = document.querySelector('.molepositon .perview_img') let scale = 0 await new Promise(async (resolve, reject) => { + if(!detailData.frontBack.body.path)resolve(true) const img = new Image(); img.src = detailData.frontBack.body.path; img.onload = () => { @@ -531,7 +533,7 @@ export default defineComponent({ detailData.loadingShow = true if((detailData.currentDetailType == 'models' && !detailData.isEditPattern.value) || (detailData.currentDetailType == 'sketch' && !detailData.isEditPattern.value) || detailData.isEditPattern.value == 'editSketch'){ await getSubmitData('preview') - if(detailData.currentDetailType == 'models' && !detailData.isEditPattern.value)return + if(detailData.currentDetailType == 'models')return detailData.loadingShow = false await getSketchSize() detailDom.canvasBox.changeSketchUpdateFrontBack = async ()=>{ await detailDom.canvasBox.privewDetail() @@ -548,8 +550,8 @@ export default defineComponent({ } await detailDom.canvasBox.privewDetail() await upDateFrontBackSketch() - saveCanvasJSONToSession() await uploadSelectDetail() + saveCanvasJSONToSession() detailData.loadingShow = false } } @@ -639,12 +641,13 @@ export default defineComponent({ } const updateOtherLayers = async (str:any='all',type:any='noFirst')=>{//更新到画布图层 let otherData:any = {} - if(detailDom.detailRight?.privewDetail)await (detailDom.detailRight as any).privewDetail() + console.log('detailData.selectDetail.newDetail',detailData.selectDetail) if(str == 'all'){ + await uploadSelectDetail() otherData = { - color: type == 'first'? detailData.selectDetail.color:detailData.selectDetail.newDetail?.color, - printObject: type == 'first'? detailData.selectDetail.printObject || null:{prints:detailData.selectDetail.newDetail?.print}, - trims: type == 'first'? detailData.selectDetail.trims || null:{prints:detailData.selectDetail.newDetail?.element}, + color: detailData.selectDetail.color, + printObject: detailData.selectDetail.printObject || null, + trims: detailData.selectDetail.trims || null, } }else if(str == 'single'){ otherData = { @@ -665,6 +668,7 @@ export default defineComponent({ } } if(detailData.currentDetailType == 'print'){ + if(detailDom.detailRight?.privewDetail)await (detailDom.detailRight as any).privewDetail() otherData.printObject = {prints:detailData.selectDetail.newDetail?.print || []} } if(detailData.currentDetailType == 'element'){ @@ -687,11 +691,15 @@ export default defineComponent({ str:'print' } store.commit('DesignDetail/setNewDetail',printValue) - if(allInfo.color?.color?.rgba){ - let canvasColor = allInfo.color.color; - let colorData:any = await getColorName(allInfo.color.color?.rgba) + if(allInfo.color?.color?.rgba || allInfo.color?.color?.gradient){ let value:any = { - data:{ + str:'color', + data:{}, + } + let canvasColor = allInfo.color.color; + if(allInfo.color?.color?.rgba){ + let colorData:any = await getColorName(allInfo.color.color?.rgba) + value.data = { hsv:{ h:colorData.h, s:colorData.s, @@ -701,8 +709,7 @@ export default defineComponent({ tcx:colorData.tcx, rgba:canvasColor.rgba, hex:rgbaToHex([canvasColor.rgba.r,canvasColor.rgba.g,canvasColor.rgba.b]), - }, - str:'color' + } } if(canvasColor.gradient){ value.data.gradient = canvasColor.gradient @@ -725,19 +732,21 @@ export default defineComponent({ // await detailDom.canvasBox.saveCanvas() const allInfo = await (detailDom.canvasBox as any).getCanvasElement() let color:any = {} - if(allInfo.color?.color?.rgba){ + if(allInfo.color?.color?.rgba || allInfo.color?.color?.gradient){ let canvasColor = allInfo.color.color; - let colorData:any = await getColorName(allInfo.color.color?.rgba) - color = { - hsv:{ - h:colorData.h, - s:colorData.s, - v:colorData.v, - }, - name:colorData.name, - tcx:colorData.tcx, - rgba:canvasColor.rgba, - hex:rgbaToHex([canvasColor.rgba.r,canvasColor.rgba.g,canvasColor.rgba.b]), + if(canvasColor?.rgba?.r){ + let colorData:any = await getColorName(allInfo.color.color?.rgba) + color = { + hsv:{ + h:colorData.h, + s:colorData.s, + v:colorData.v, + }, + name:colorData.name, + tcx:colorData.tcx, + rgba:canvasColor.rgba, + hex:rgbaToHex([canvasColor.rgba.r,canvasColor.rgba.g,canvasColor.rgba.b]), + } } if(canvasColor.gradient){ color.gradient = canvasColor.gradient @@ -746,7 +755,7 @@ export default defineComponent({ detailData.detailLeftColorKey++ } } - if(detailData.isEditPattern.value !== 'canvasEditor'){ + if(detailData.isEditPattern.value == 'canvasEditor'){ delete detailData.selectDetail.newDetail detailData.selectDetail.trims.prints = allInfo.trims || [] detailData.selectDetail.printObject.prints = allInfo.prints || [] diff --git a/src/component/Detail/detailLeft/colorBox/index.vue b/src/component/Detail/detailLeft/colorBox/index.vue index 382330b5..f313d303 100644 --- a/src/component/Detail/detailLeft/colorBox/index.vue +++ b/src/component/Detail/detailLeft/colorBox/index.vue @@ -140,10 +140,10 @@ export default defineComponent({ let color = colorData.allBoardData.colorBoards?.[index] if(!color?.rgba && color?.rgbValue)color.rgba = color.rgbValue if( - colorData.allBoardData.colorBoards?.[index] && + (colorData.allBoardData.colorBoards?.[index] && colorData.selectDetail.color.rgba?.r == color?.rgba?.r && colorData.selectDetail.color.rgba?.g == color?.rgba?.g && - colorData.selectDetail.color.rgba?.b == color?.rgba?.b || + colorData.selectDetail.color.rgba?.b == color?.rgba?.b) || (JSON.stringify(colorData.selectDetail.color.gradient) == JSON.stringify(color?.gradient) && colorData.selectDetail.color.gradient) ){ console.log(123) diff --git a/src/component/Detail/detailRight/editPrintElement.vue b/src/component/Detail/detailRight/editPrintElement.vue index 1fbefccb..fe2c678b 100644 --- a/src/component/Detail/detailRight/editPrintElement.vue +++ b/src/component/Detail/detailRight/editPrintElement.vue @@ -314,6 +314,7 @@ export default defineComponent({ str:props.type, id:id, } + console.log('data',value) store.commit('DesignDetail/setNewDetail',value) } const sort = (list:any)=>{ @@ -473,6 +474,7 @@ export default defineComponent({ setPosition() },{immediate: true,}) watch(()=>editPrintElementData.stateOverallSingle,(newVal)=>{ + previewDetailPrintData() let arr:any = editPrintElementData.selectDetail.newDetail?.print || editPrintElementData.selectDetail.printObject.prints if(props.type == 'element'){ arr = editPrintElementData.selectDetail.newDetail?.element || editPrintElementData.selectDetail.trims.prints @@ -482,9 +484,8 @@ export default defineComponent({ } if(arr.length > 0){ editPrintElementData.imgDomIndex = 0 - editPrintElementData.printStyleList[props.type][newVal] = [] - // editPrintElementData.printStyleList[props.type].single = [] - // editPrintElementData.printStyleList[props.type].overall = [] + editPrintElementData.printStyleList[props.type].single = [] + editPrintElementData.printStyleList[props.type].overall = [] arr.forEach((item:any,index:number) => { getItemPosition(item) }); diff --git a/src/component/Detail/detailRight/overallSetting/RepeatSetting.vue b/src/component/Detail/detailRight/overallSetting/RepeatSetting.vue index 9de7bd8c..05a30feb 100644 --- a/src/component/Detail/detailRight/overallSetting/RepeatSetting.vue +++ b/src/component/Detail/detailRight/overallSetting/RepeatSetting.vue @@ -1,6 +1,5 @@