修改sketch或者切换sketch bug修复
This commit is contained in:
@@ -161,7 +161,7 @@ export default defineComponent({
|
||||
isEditPattern:{
|
||||
value:'' as any,
|
||||
},// 是否编辑图案
|
||||
canvasKey:0,
|
||||
canvasKey:computed(()=>store.state.DesignDetail.canvasKey),
|
||||
singleOveral:{
|
||||
value:'overall'
|
||||
},
|
||||
@@ -191,7 +191,7 @@ export default defineComponent({
|
||||
detailData.imgDomIndex = detailData.frontBack.front.findIndex((item:any)=>item.id == newValue.id)
|
||||
if(newValue?.path)await getSketchSize()
|
||||
if(newValue?.id && oldValue?.id && (newValue.id != oldValue.id)){
|
||||
detailData.canvasKey += 1
|
||||
store.commit('DesignDetail/changeCanvasKey')
|
||||
}
|
||||
// privewDetail(oldValue)
|
||||
},{immediate: true})
|
||||
@@ -336,9 +336,11 @@ export default defineComponent({
|
||||
detailData.selectDetail.sketchString = rv
|
||||
})
|
||||
if(detailDom.detailRight?.privewDetail)await (detailDom.detailRight as any).privewDetail()
|
||||
let otherData = await updateOtherLayers('single')
|
||||
await detailDom.canvasBox.updateOtherLayers(otherData)
|
||||
await detailDom.canvasBox.privewDetail()
|
||||
if(detailDom.canvasBox && (detailData.currentDetailType != 'sketch' || detailData.isEditPattern.value == 'canvasEditor')){
|
||||
let otherData = await updateOtherLayers('single')
|
||||
await detailDom.canvasBox.updateOtherLayers(otherData)
|
||||
await detailDom.canvasBox.privewDetail()
|
||||
}
|
||||
for(let i = 0;i<list.length;i++){
|
||||
detailData.selectDetail
|
||||
let {scale,offset,priority,transpose,rotate,maskUrl,maskMinioUrl} = await (detailDom.model as any).getSubmitData(list[i])
|
||||
@@ -358,7 +360,6 @@ export default defineComponent({
|
||||
(list[i].color?.rgba?.r?
|
||||
`${list[i].color.rgba.r} ${list[i].color.rgba.g} ${list[i].color.rgba.b}`:
|
||||
'')
|
||||
console.log(color,'==============================')
|
||||
if(detailData.currentDetailType == 'sketch' && newData){
|
||||
color = detailData.designDetail.clothes?.[0]?.color?.rgba?.r?`${detailData.designDetail.clothes?.[0].color.rgba.r} ${detailData.designDetail.clothes[0].color.rgba.g} ${detailData.designDetail.clothes[0].color.rgba.b}`:''
|
||||
detailData.selectDetail.maskUrl = ''
|
||||
@@ -417,45 +418,65 @@ export default defineComponent({
|
||||
}
|
||||
const getSubmitData = async (str:string)=>{
|
||||
// return
|
||||
let workspace = store.state.Workspace.probjects
|
||||
if(!detailData?.selectDetail?.path && !detailData?.selectDetail?.newDetail?.sketch?.minIOPath)return
|
||||
let clothes:any
|
||||
if(detailData.currentDetailType == 'models'){
|
||||
clothes = await setClothes(detailData.designDetail.clothes,str)
|
||||
}else{
|
||||
clothes = await setClothes([detailData.selectDetail],str)
|
||||
}
|
||||
let data = {
|
||||
designItemId:detailData.designDetail.designItemId,
|
||||
designSingleItemDTOList:clothes,
|
||||
isPreview:str == 'sub'?false:true,
|
||||
// ifSubmit:designItemDetail.isPreview,
|
||||
gender:workspace?.sex,
|
||||
sketchString:'',
|
||||
modelId:(detailData.currentDetailType == 'models' && detailData.designDetail.newModel)?detailData.designDetail.newModel.id:detailData.designDetail.oldModel?detailData.designDetail.oldModel.id:'',
|
||||
modelType:(detailData.currentDetailType == 'models' && detailData.designDetail.newModel)?detailData.designDetail.newModel.type:detailData.designDetail.oldModel?detailData.designDetail.oldModel.type:'',
|
||||
designType:detailData.selectDetail.id?'merge':'default',
|
||||
timeZone:Intl.DateTimeFormat().resolvedOptions().timeZone,
|
||||
processId:userDetail.value.userId,
|
||||
probjectId:store.state.Workspace.probjects.id,
|
||||
}
|
||||
detailData.loadingShow = true
|
||||
Https.axiosPost(Https.httpUrls.designSingle, data).then((rv)=>{
|
||||
let value = {
|
||||
currentType : JSON.parse(JSON.stringify(detailData.currentDetailType)),
|
||||
rv:rv,
|
||||
fun:setRevocation
|
||||
await new Promise<void>(async (resolve, reject) => {
|
||||
let workspace = store.state.Workspace.probjects
|
||||
if(!detailData?.selectDetail?.path && !detailData?.selectDetail?.newDetail?.sketch?.minIOPath)return
|
||||
let clothes:any
|
||||
if(detailData.currentDetailType == 'models'){
|
||||
clothes = await setClothes(detailData.designDetail.clothes,str)
|
||||
}else{
|
||||
clothes = await setClothes([detailData.selectDetail],str)
|
||||
}
|
||||
if(detailData?.designDetail?.newModel)detailData.designDetail.oldModel = JSON.parse(JSON.stringify(detailData.designDetail.newModel))
|
||||
// delete detailData.designDetail.newModel
|
||||
detailData.selectDetail.sketchString = null
|
||||
store.commit('DesignDetail/setPraeview',value)
|
||||
detailData.loadingShow = false
|
||||
canvasReload()
|
||||
// setRevocation()
|
||||
}).catch(res=>{
|
||||
detailData.loadingShow = false
|
||||
});
|
||||
let isDefault = detailData.selectDetail.sketchString || (!detailData.selectDetail.id || (detailData.selectDetail?.newDetail?.sketch && detailData.currentDetailType == 'sketch'))
|
||||
let data = {
|
||||
designItemId:detailData.designDetail.designItemId,
|
||||
designSingleItemDTOList:clothes,
|
||||
isPreview:str == 'sub'?false:true,
|
||||
// ifSubmit:designItemDetail.isPreview,
|
||||
gender:workspace?.sex,
|
||||
sketchString:'',
|
||||
modelId:(detailData.currentDetailType == 'models' && detailData.designDetail.newModel)?detailData.designDetail.newModel.id:detailData.designDetail.oldModel?detailData.designDetail.oldModel.id:'',
|
||||
modelType:(detailData.currentDetailType == 'models' && detailData.designDetail.newModel)?detailData.designDetail.newModel.type:detailData.designDetail.oldModel?detailData.designDetail.oldModel.type:'',
|
||||
designType:isDefault?'default':'merge',
|
||||
timeZone:Intl.DateTimeFormat().resolvedOptions().timeZone,
|
||||
processId:userDetail.value.userId,
|
||||
probjectId:store.state.Workspace.probjects.id,
|
||||
}
|
||||
await Https.axiosPost(Https.httpUrls.designSingle, data).then(async (rv)=>{
|
||||
let value = {
|
||||
currentType : JSON.parse(JSON.stringify(detailData.currentDetailType)),
|
||||
rv:rv,
|
||||
fun:setRevocation
|
||||
}
|
||||
if(detailData?.designDetail?.newModel)detailData.designDetail.oldModel = JSON.parse(JSON.stringify(detailData.designDetail.newModel))
|
||||
|
||||
// delete detailData.designDetail.newModel
|
||||
let el:any = document.querySelector('.molepositon .perview_img')
|
||||
let scale = 0
|
||||
await new Promise<void>(async (resolve, reject) => {
|
||||
const img = new Image();
|
||||
img.src = detailData.frontBack.body.path;
|
||||
img.onload = () => {
|
||||
scale = el.parentNode.offsetWidth / img.width;
|
||||
resolve(true)
|
||||
};
|
||||
})
|
||||
value.scale = scale
|
||||
store.commit('DesignDetail/setPraeview',value)
|
||||
store.commit('DesignDetail/changeCanvasKey')
|
||||
// console.log(detailData.selectDetail)
|
||||
// if(detailData.selectDetail.sketchString || (detailData.selectDetail?.newDetail?.sketch && detailData.currentDetailType == 'sketch')){
|
||||
// detailData.canvasKey += 1
|
||||
// }
|
||||
detailData.selectDetail.sketchString = null
|
||||
resolve(true)
|
||||
canvasReload()
|
||||
// setRevocation()
|
||||
}).catch(res=>{
|
||||
resolve(true)
|
||||
});
|
||||
})
|
||||
|
||||
}
|
||||
const submit = async ()=>{
|
||||
let workspace = store.state.Workspace.probjects
|
||||
@@ -505,9 +526,16 @@ export default defineComponent({
|
||||
});
|
||||
}
|
||||
const previwe = async ()=>{
|
||||
detailData.loadingShow = true
|
||||
if((detailData.currentDetailType == 'sketch' && !detailData.isEditPattern.value) || detailData.isEditPattern.value == 'editSketch'){
|
||||
let data = getSubmitData('preview')
|
||||
store.dispatch('DesignDetail/setSubmit',data)
|
||||
await getSubmitData('preview')
|
||||
await getSketchSize()
|
||||
detailDom.canvasBox.changeSketchUpdateFrontBack = async ()=>{
|
||||
await detailDom.canvasBox.privewDetail()
|
||||
detailDom?.model?.updateRect()
|
||||
await upDateFrontBackSketch()
|
||||
detailData.loadingShow = false
|
||||
}
|
||||
}else{
|
||||
//走画布合成图片并且直接分割
|
||||
if(detailData.isEditPattern.value !== 'canvasEditor'){
|
||||
@@ -516,6 +544,13 @@ export default defineComponent({
|
||||
await detailDom.canvasBox.updateOtherLayers(otherData)
|
||||
}
|
||||
await detailDom.canvasBox.privewDetail()
|
||||
await upDateFrontBackSketch()
|
||||
saveCanvasJSONToSession()
|
||||
detailData.loadingShow = false
|
||||
}
|
||||
}
|
||||
const upDateFrontBackSketch = async ()=>{//更新模特身上的分割图
|
||||
await new Promise<void>(async(resolve, reject) => {
|
||||
let img = new Image()
|
||||
img.onload = ()=>{
|
||||
let partialDesign = detailData.selectDetail.partialDesign.partialDesignBase64 || detailData.selectDetail.partialDesign.partialDesignPath
|
||||
@@ -534,11 +569,11 @@ export default defineComponent({
|
||||
front.imageUrl = rv.targetFrontUrl
|
||||
back.imageUrl = rv.targetBackUrl
|
||||
store.commit('DesignDetail/canvasPreviewUpdata',{type:detailData.isEditPattern.value?'all':detailData.currentDetailType,callBack:setRevocation})
|
||||
resolve()
|
||||
})
|
||||
}
|
||||
img.src = detailData.selectDetail.path
|
||||
saveCanvasJSONToSession()
|
||||
}
|
||||
})
|
||||
}
|
||||
const saveCanvasJSONToSession = ()=>{
|
||||
let canvasJSON = detailDom.canvasBox.getCanvasJSON()
|
||||
@@ -631,7 +666,6 @@ export default defineComponent({
|
||||
otherData.trims = detailData.selectDetail.newDetail?.element?.length>0?{prints:detailData.selectDetail.newDetail?.element}:detailData.selectDetail.trims || null
|
||||
}
|
||||
}
|
||||
console.log(JSON.parse(JSON.stringify(otherData)),'=======',JSON.parse(JSON.stringify(detailData.selectDetail)))
|
||||
return otherData
|
||||
}
|
||||
const uploadElement = async ()=>{//取出画布数据更新到detail
|
||||
@@ -674,7 +708,6 @@ export default defineComponent({
|
||||
if(canvasColor.gradient){
|
||||
value.data.gradient = canvasColor.gradient
|
||||
}
|
||||
console.log(value,'=======')
|
||||
store.commit('DesignDetail/setNewDetail',value)
|
||||
if(allInfo.color.color.gradient)detailData.selectDetail.color.gradient = allInfo.color.color.gradient
|
||||
if(detailData.currentDetailType == 'color'){
|
||||
@@ -687,7 +720,6 @@ export default defineComponent({
|
||||
if(detailData.isEditPattern.value){
|
||||
await detailDom.canvasBox.saveCanvas()
|
||||
}
|
||||
detailData.canvasKey += 1
|
||||
}
|
||||
const sketchSysToLibrary = ()=>{//系统sketch添加到library更新library
|
||||
coverRevocation()
|
||||
@@ -711,7 +743,7 @@ export default defineComponent({
|
||||
onBeforeUnmount(()=>{
|
||||
sessionStorage.removeItem('oppositeRevocation')
|
||||
sessionStorage.removeItem('revocation')
|
||||
store.commit('DesignDetail/clearDesignDetail')
|
||||
store.commit('DesignDetail/clearDetailData')
|
||||
|
||||
})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user