修改印花合成图方式

This commit is contained in:
X1627315083
2024-01-03 10:50:22 +08:00
parent 620ffba706
commit 003d8da364
10 changed files with 79 additions and 60 deletions

View File

@@ -194,16 +194,15 @@ export default defineComponent({
}
},
computed:{
getPinLength(){
let selectLength:any = 0
for(let item of this.printBoards){
if(item.pin){
selectLength++
}
}
return selectLength
}
// getPinLength(){
// let selectLength:any = 0
// for(let item of this.printBoards){
// if(item.pin){
// selectLength++
// }
// }
// return selectLength
// }
},
watch:{
printBoards:{
@@ -563,13 +562,15 @@ export default defineComponent({
if(this.loadingShow){
return
}
//如果是通过moodboard随即图片生成
let generage:any = this.$refs.Generate
let generateType = generage.checkbox.filter((v:any)=>v.type)[0].name
if(generage.printModel.num == 'Generate'){
this.generatePrint()
return
}
//如果是通过moodboard随即图片生成
let generateType = generage.checkbox.filter((v:any)=>v.type)[0].name
let data = {
generateType:generateType,
designType:'',
@@ -584,6 +585,7 @@ export default defineComponent({
if(generateType == 'image'){
if(generage?.collectionElementid){
data.text = ''
}else{
message.info(
this.t('PrintboardUpload.jsContent4')
@@ -667,51 +669,54 @@ export default defineComponent({
return index
},
generatePrint(){
let data:any = {}
//随机获取图片id
let generage:any = this.$refs.Generate
let generateList = generage.sketchboardList
let isGenerateListChecked = generateList.filter((item:any) => item.checked)
if(!this.moodBoards.length){ //mood没有图片
let index1 = -1
let index2 = -2
if(!this.getPinLength){ //没pin住
index1 = this.randomRange(0, this.printBoards.length, -1)
index2 = this.randomRange(0, this.printBoards.length, index1)
}else if(this.getPinLength === 1){ //pin住1个
this.printBoards.forEach((element:any,index:number) => {
if(element.pin){
if(isGenerateListChecked.length == 0){ //没pin住
index1 = this.randomRange(0, generateList.length, -1)
index2 = this.randomRange(0, generateList.length, index1)
}else if(isGenerateListChecked.lengthh === 1){ //pin住1个
generateList.forEach((element:any,index:number) => {
if(element.checked){
index1 = index
}
});
index2 = this.randomRange(0, this.printBoards.length, index1)
index2 = this.randomRange(0, generateList.length, index1)
}else{ //pin住多个
let selectIndexList:any = []
this.printBoards.forEach((element:any,index:number) => {
generateList.forEach((element:any,index:number) => {
if(element.pin){
selectIndexList.push(index)
}
});
index1 = this.randomRange(0, selectIndexList.length, -1) //pin住的中随机选一个
index2 = this.randomRange(0, this.printBoards.length, selectIndexList[index1]) //除了选中的外再来一个
index2 = this.randomRange(0, generateList.length, selectIndexList[index1]) //除了选中的外再来一个
}
data = {
select1Id:this.printBoards[index1].id,
select2Id:this.printBoards[index2].id
select1Id:generateList[index1].id,
select2Id:generateList[index2].id
}
}else{
let index1 = this.randomRange(0, this.moodBoards.length, -1)
let index2 = -2
if(!this.getPinLength){ //没pin住
index2 = this.randomRange(0, this.printBoards.length, -1)
}else if(this.getPinLength === 1){ //pin住1个
this.printBoards.forEach((element:any,index:number) => {
if(isGenerateListChecked.length == 0){ //没pin住
index2 = this.randomRange(0, generateList.length, -1)
}else if(isGenerateListChecked.lengthh === 1){ //pin住1个
generateList.forEach((element:any,index:number) => {
if(element.pin){
index2 = index
}
});
}else{ //pin住多个
let selectIndexList:any = []
this.printBoards.forEach((element:any,index:number) => {
generateList.forEach((element:any,index:number) => {
if(element.pin){
selectIndexList.push(index)
}
@@ -720,7 +725,7 @@ export default defineComponent({
}
data = {
select1Id:this.moodBoards[index1].resData.id,
select2Id:this.printBoards[index2].id
select2Id:generateList[index2].id
}
}
data.timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone,