调整generate交互 调整details页面参数

This commit is contained in:
X1627315083
2024-04-29 15:12:27 +08:00
parent ad63a1611c
commit b5b13751b8
9 changed files with 206 additions and 182 deletions

View File

@@ -640,11 +640,17 @@ export default defineComponent({
let num = -1
// let zIndex = 10
designItemDetail.clothes.forEach((item:any,index:number) => {
if(item?.printObject?.prints[0]?.minIOPath){
item?.printObject?.prints?.forEach((element:any) => {
item.designType = "Library"
});
}
let clothesItem = {
color: `${item.color.r} ${item.color.g} ${item.color.b}`,
id:item.id,
path:item.minIOPath,
changed:item.changed?item.changed:false,
designType:item.designType?item.designType:"Library",
offset:item.layersObject?.[1]?.offset == null?[0,0]:item.layersObject[1].offset,
scale:item.layersObject?.[1]?.scale?item.layersObject[1].scale:1,
printObject:{
@@ -666,9 +672,11 @@ export default defineComponent({
this.store.commit("setDesignItemDetail", designItemDetail);
}
this.currentIndex = 0
let workspace = this.store.state.Workspace.workspace
let data = {
designItemId:designItemDetail.designItemId,
// designItemId:designItemDetail.designItemId,
gender:workspace?.sex,
designSingleItemDTOList:clothes,
isPreview:false,
ifSubmit:designItemDetail.isPreview,
@@ -681,7 +689,6 @@ export default defineComponent({
data.isPreview = false
delete data.ifSubmit
}
// this.store.commit('setDesignPreviewData',data)
return data
},
async setSubmit(str:any){
@@ -941,6 +948,8 @@ export default defineComponent({
data.designSingleItemDTOList[this.currentIndex] = {
color:`${this.current.color.r} ${this.current.color.g} ${this.current.color.b}`,
id:this.current.id?this.current.id:'',
changed:this.current.changed?this.current.changed:false,
path:this.current.minIOPath?this.current.minIOPath:'',
offset:this.current.layersObject?.[1]?.offset?this.current.layersObject[1].offset:[0,0],
priority:this.current.priority,
@@ -987,7 +996,7 @@ export default defineComponent({
(rv: any) => {
this.parentData.design.designItemUrl = rv.designItemUrl
this.$emit('finishRedesign',this.parentData)
this.closeModal('')
this.closefModal('')
this.loadingShow = false
}
).catch(res=>{

View File

@@ -610,10 +610,12 @@ export default defineComponent({
}else{
this.current.printObject.path = imgData?.url
this.current.printObject.id = imgData?.id
this.current.printObject.designType = imgData?.designType
this.current.printObject.minIOPath = imgData.minIOPath
this.current.printObject.prints = [{
minIOPath:imgData.minIOPath,
path:imgData?.url
path:imgData?.url,
designType: imgData?.designType
}]
if(this.driver__.driver){
nextTick().then(()=>{

View File

@@ -177,6 +177,7 @@ export default defineComponent({
this.sketchImg.path = v.url
this.sketchImg.minIOPath = v.minIOPath
this.sketchImg.type = v.level2Type
this.sketchImg.designType = v.designType
},
//印花
systemDesigner(num) {
@@ -255,6 +256,7 @@ export default defineComponent({
if(this.sketchImg.id){
if(this.sketchImg.id == this.sketchImg.id_){
arr[index].id = Number(this.sketchImg.id_+(randomNum+""))
arr[index].changed = true
if(this.hasDuplicateId(arr)){
this.sketchImg.id_ = this.sketchImg.id
this.soleId(arr,index)
@@ -288,7 +290,6 @@ export default defineComponent({
})
if(!this.current.id){
data.designSingleItemDTOList[index].priority = zIndex+=1
}
if(this.type_ == 1){
if(data.designSingleItemDTOList[index].path != this.sketchImg.minIOPath && this.sketchImg.id_){
@@ -310,6 +311,7 @@ export default defineComponent({
let color = `${this.$parent.selectColor.rgba.r} ${this.$parent.selectColor.rgba.g} ${this.$parent.selectColor.rgba.b}`
data.designSingleItemDTOList[index].color = color
}
data.designSingleItemDTOList[index].designType = this.sketchImg.designType?this.sketchImg.designType:"Library"
data.timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone
this.loadingShow = true
Https.axiosPost(Https.httpUrls.designSingle, data).then(
@@ -323,6 +325,7 @@ export default defineComponent({
designItemDetail.clothes[index].minIOPath = item.minIOPath
designItemDetail.clothes[index].path = item.path
designItemDetail.clothes[index].id = item.id
designItemDetail.clothes[index].changed = item.changed?item.changed:false
designItemDetail.clothes[index].type = item.type
designItemDetail.clothes[index].printObject = item.printObject
bor = true

View File

@@ -620,6 +620,7 @@ export default defineComponent({
location : location,
priority:arr[index].style.zIndex,
scale: scale,
designType:this.designOpenrtionList[index].designType,
path:this.designOpenrtionList[index].path,
minIOPath:this.designOpenrtionList[index].minIOPath,
}

View File

@@ -622,6 +622,7 @@ export default defineComponent({
location : location,
priority:arr[index].style.zIndex,
scale: scale,
designType:this.designOpenrtionList[index].designType,
path:this.designOpenrtionList[index].path,
minIOPath:this.designOpenrtionList[index].minIOPath,
}

View File

@@ -56,10 +56,14 @@
<!-- <div class="generage_btn started_btn" @click.stop="getgenerate">{{ $t('Generate.Generate') }}</div> -->
<div v-show="!isGenerate" class="generage_btn started_btn" @click.stop="getgenerate">
{{ $t('Generate.Generate') }}
<!-- <div v-show="isGenerate"><a-spin size="large" /></div> -->
</div>
<div v-show="isGenerate" class="generage_btn started_btn" @click.stop="getgenerate">
<div v-show="isGenerate && !remGenerate" class="generage_btn started_btn" @click.stop="getgenerate">
<i class="fi fi-br-loading"></i>
</div>
<div v-show="remGenerate" @click="removeGenerate" class="generage_btn started_btn">
{{$t('Generate.Close')}}
</div>
<span ref="inputShowText"></span>
</div>
@@ -130,8 +134,8 @@
@click="generageAdd(item)"
:class="[item.status != 'Success'?'hideEvents':'',item?.checked?'active':'']"
>
<img v-show="item.status != 'Success'" src="@/assets/images/homePage/loading.gif" alt="">
<img v-show="item.status == 'Success'" :src="item.imgUrl" @click.stop="generageAdd(item)">
<!-- <img v-show="item.status != 'Success'" src="@/assets/images/homePage/loading.gif" alt=""> -->
<img v-lazy="item.imgUrl" @click.stop="generageAdd(item)">
<div
class="delete_like_file_block"
:class="[driver__.driver?'hideEvents':'']"
@@ -230,6 +234,7 @@ export default defineComponent({
let userInfo:any = {}
let generateId:any = ref([])
let generateTime:any = ref()
let generateProceedList = ref([])
let remGenerate:any = ref(false)
let remGenerateTime:any = ref()
return {
@@ -267,6 +272,7 @@ export default defineComponent({
userInfo,
generateId,
generateTime,
generateProceedList,
remGenerate,
remGenerateTime,
};
@@ -532,16 +538,14 @@ export default defineComponent({
return
}
}
rv.uniqueId.forEach((item:any) => {
let arr:any = {}
arr.taskId = item
arr.status = 'execution'
this.fileList.unshift(arr)
});
this.setGenerate()
this.remGenerateTime = setTimeout(()=>{
this.remGenerate = true
},10000)
// rv.uniqueId.forEach((item:any) => {
// let arr:any = {}
// arr.taskId = item
// arr.status = 'execution'
// this.fileList.unshift(arr)
// });
this.setGenerate(rv.uniqueId)
}
).catch(res=>{
this.isGenerate = false
@@ -572,29 +576,28 @@ export default defineComponent({
// this.loadingShow = false
// });
},
setGenerate(){
setGenerate(dataList:any){
this.remGenerateTime = setTimeout(()=>{
this.remGenerate = true
},10000)
let data = dataList
this.generateTime = setInterval(()=>{
let data = this.fileList.filter((item:any)=>item.status != 'Success').map((obj:any) => obj.taskId);
Https.axiosPost(Https.httpUrls.generateResult, data).then(
(rv) => {
if(this.isGenerate){//防止取消后有正在执行的获取状态
let arr:any = []
arr = rv.filter((item:any)=>item.status != 'Success' && item.status != 'Fail' && item.status != 'Invalid')
this.generateProceedList = rv.filter((item:any)=>item.status != 'Success' && item.status != 'Fail' && item.status != 'Invalid')
rv.forEach((element:any) => {
this.fileList.forEach((item:any,index:any) => {
if(item.taskId == element.taskId && element.status == 'Success'){
element.imgUrl = element.url
element.id_ = GO.id++
this.fileList[index] = element
}
});
if(element.status == 'Success'){
element.imgUrl = element.url
element.id_ = GO.id++
this.fileList.unshift(element)
data = data.filter((item:any) => item !== element.taskId);
}
});
if(rv.length == 4 && rv.filter((item:any)=>item.status == 'Invalid').length == 4) {
// (this.$refs.inputShowText as any).innerHTML = this.t('Generate.effectPoor')
message.info(this.t('Generate.effectPoor'));
message.info(this.t('Generate.effectPoor'));
}
if(arr.length == 0){
if(rv.filter((item:any)=>item.status == 'Waiting').length == 0 && rv.filter((item:any)=>item.status == 'Executing').length == 0){
nextTick().then(()=>{
if(this.driver__.driver){
driverObj__.moveNext()
@@ -609,7 +612,6 @@ export default defineComponent({
}
}
).catch(res=>{
this.fileList = this.fileList.filter((item:any)=>item.status == 'Success')
clearInterval(this.generateTime)
clearInterval(this.remGenerateTime)
this.isGenerate = false
@@ -617,17 +619,16 @@ export default defineComponent({
},1000)
},
removeGenerate(){
let arr = this.fileList.filter((item:any)=>item.status != 'Success')
//取消操作
this.fileList = this.fileList.filter((item:any)=>item.status == 'Success')
this.isGenerate = false
this.remGenerate = false
clearInterval(this.generateTime)
if(arr){
let str = arr.map((obj:any) => obj.taskId).join(',');
if(this.generateProceedList){
let str = this.generateProceedList.map((obj:any) => obj.taskId).join(',');
let data = {uniqueId:str,userId:this?.userInfo?.userId,timeZone:Intl.DateTimeFormat().resolvedOptions().timeZone}
Https.axiosGet(Https.httpUrls.generateStopWaiting, {params:data}).then(
(rv) => {
this.generateProceedList = []
}
).catch(res=>{
});

View File

@@ -107,12 +107,19 @@
<div class="Guide_1_2_8 input_box" :class="[inputShow?'active':'',driver__.driver?'showEvents':'']">
<input class="search_input" @input="ifMaximumLength" @keydown.enter="getgenerate" :maxlength='inputShow?0:9999' :class="{forbidden:generateCheckbox}" :readonly="generateCheckbox" :placeholder="$t('PrintboardUpload.inputContent1')" v-model="captionGeneration">
<!-- <div class="generage_btn started_btn" @click.stop="getgenerate">{{ $t('PrintboardUpload.Generate') }}</div> -->
<!-- <div v-show="!isGenerate" class="generage_btn started_btn" @click.stop="getgenerate">
{{ $t('PrintboardUpload.Generate') }}
</div> -->
<div v-show="!isGenerate" class="generage_btn started_btn" @click.stop="getgenerate">
{{ $t('PrintboardUpload.Generate') }}
<!-- <div v-show="isGenerate"><a-spin size="large" /></div> -->
</div>
<div v-show="isGenerate" class="generage_btn started_btn" @click.stop="getgenerate">
<div v-show="isGenerate && !remGenerate" class="generage_btn started_btn" @click.stop="getgenerate">
<i class="fi fi-br-loading"></i>
</div>
<div v-show="remGenerate" @click="removeGenerate" class="generage_btn started_btn">
{{$t('Generate.Close')}}
</div>
<span ref="inputShowText"></span>
</div>
<!-- <div>
@@ -121,9 +128,9 @@
</div> -->
</div>
<div class="modal_img" :style="[loadingShow?'overflow:hidden':'']">
<div v-for="item,index in generateList" class="modal_imgItem Guide_1_2_9" :class="[item.status != 'Success'?'hideEvents':'',item?.checked?'active':'',driver__.driver?'showEvents':'']" >
<img v-show="item.status != 'Success'" src="@/assets/images/homePage/loading.gif" alt="">
<img v-show="item.status == 'Success'" :src="item.imgUrl" @click.stop="generageAdd(item)">
<div v-for="item,index in generateList" :key="item" class="modal_imgItem Guide_1_2_9" :class="[item.status != 'Success'?'hideEvents':'',item?.checked?'active':'',driver__.driver?'showEvents':'']" >
<!-- <img v-show="item.status != 'Success'" src="@/assets/images/homePage/loading.gif" alt=""> -->
<img v-lazy="item.imgUrl" @click.stop="generageAdd(item)">
<div
class="delete_like_file_block"
:class="[driver__.driver?'hideEvents':'']"
@@ -199,6 +206,7 @@ export default defineComponent({
let isTest = ref()
let userInfo:any = {}
let generateTime:any = ref()
let generateProceedList = ref([])
let remGenerate:any = ref(false)
let remGenerateTime:any = ref()
let isUseGenerate = ref(false)
@@ -225,6 +233,7 @@ export default defineComponent({
t,
isTest,
userInfo,
generateProceedList,
generateTime,
remGenerate,
remGenerateTime,
@@ -746,51 +755,46 @@ export default defineComponent({
return
}
}
rv.uniqueId.forEach((item:any) => {
let arr:any = {}
arr.taskId = item
arr.status = 'execution'
this.generateList.unshift(arr)
});
this.setGenerate()
this.remGenerateTime = setTimeout(()=>{
this.remGenerate = true
},10000)
// rv.uniqueId.forEach((item:any) => {
// let arr:any = {}
// arr.taskId = item
// arr.status = 'execution'
// this.generateList.unshift(arr)
// });
this.setGenerate(rv.uniqueId)
}
).catch(res=>{
this.isGenerate = false
});
},
setGenerate(){
setGenerate(dataList:any){
this.remGenerateTime = setTimeout(()=>{
this.remGenerate = true
},10000)
let data = dataList
this.generateTime = setInterval(()=>{
let data = this.generateList.filter((item:any)=>item.status != 'Success').map((obj:any) => obj.taskId);
Https.axiosPost(Https.httpUrls.generateResult, data).then(
(rv) => {
if(this.isGenerate){//防止取消后有正在执行的获取状态
let arr:any = []
arr = rv.filter((item:any)=>item.status != 'Success' && item.status != 'Fail')
this.generateProceedList = rv.filter((item:any)=>item.status != 'Success' && item.status != 'Fail' && item.status != 'Invalid')
rv.forEach((element:any) => {
this.generateList.forEach((item:any,index:any) => {
if(item.taskId == element.taskId && element.status == 'Success'){
element.imgUrl = element.url
element.id_ = GO.id++
this.generateList[index] = element
}
});
if(element.status == 'Success'){
element.imgUrl = element.url
element.id_ = GO.id++
this.generateList.unshift(element)
data = data.filter((item:any) => item !== element.taskId);
}
});
// this.generateList = rv;
if(rv.length == 4 && rv.filter((item:any)=>item.status == 'Invalid').length == 4) {
if(rv.filter((item:any)=>item.status == 'Invalid').length == 4) {
message.info(this.t('Generate.effectPoor'));
// (this.$refs.inputShowText as any).innerHTML = this.t('Generate.effectPoor')
}
if(arr.length == 0){
if(rv.filter((item:any)=>item.status == 'Waiting').length == 0 && rv.filter((item:any)=>item.status == 'Executing').length == 0){
nextTick().then(()=>{
if(this.driver__.driver){
driverObj__.moveNext()
}
})
this.fileList = this.fileList.filter((item:any)=>item.status == 'Success')
clearInterval(this.generateTime)
clearInterval(this.remGenerateTime)
this.isGenerate = false
@@ -800,7 +804,6 @@ export default defineComponent({
}
).catch(res=>{
this.fileList = this.fileList.filter((item:any)=>item.status == 'Success')
clearInterval(this.generateTime)
clearInterval(this.remGenerateTime)
this.isGenerate = false
@@ -808,17 +811,16 @@ export default defineComponent({
},1000)
},
removeGenerate(){
let arr = this.generateList.filter((item:any)=>item.status != 'Success')
//取消操作
this.generateList = this.generateList.filter((item:any)=>item.status == 'Success')
this.isGenerate = false
this.remGenerate = false
clearInterval(this.generateTime)
if(arr){
let str = arr.map((obj:any) => obj.taskId).join(',');
if(this.generateProceedList){
let str = this.generateProceedList.map((obj:any) => obj.taskId).join(',');
let data = {uniqueId:str,userId:this?.userInfo?.userId,timeZone:Intl.DateTimeFormat().resolvedOptions().timeZone}
Https.axiosGet(Https.httpUrls.generateStopWaiting, {params:data}).then(
(rv) => {
this.generateProceedList = []
}
).catch(res=>{
});

View File

@@ -140,7 +140,16 @@
<div class="input_border">
<div class="Guide_1_9_2 input_box" :class="[inputShow?'active':'',driver__.driver?'showEvents':'']">
<input class="search_input" @input="ifMaximumLength" @keydown.enter="getgenerate" :maxlength='inputShow?0:9999' :class="{forbidden:generateCheckbox}" :readonly="generateCheckbox" :placeholder="$t('PrintboardUpload.inputContent1')" v-model="captionGeneration">
<div class="generage_btn started_btn" @click.stop="getgenerate">{{ $t('PrintboardUpload.Generate') }}</div>
<!-- <div class="generage_btn started_btn" @click.stop="getgenerate">{{ $t('PrintboardUpload.Generate') }}</div> -->
<div v-show="!isGenerate" class="generage_btn started_btn" @click.stop="getgenerate">
{{ $t('LibraryPage.Generate') }}
</div>
<div v-show="isGenerate && !remGenerate" class="generage_btn started_btn" @click.stop="getgenerate">
<i class="fi fi-br-loading"></i>
</div>
<div v-show="remGenerate" @click="removeGenerate" class="generage_btn started_btn">
{{$t('Generate.Close')}}
</div>
<span ref="inputShowText"></span>
</div>
<!-- <div>
@@ -149,9 +158,9 @@
</div> -->
</div>
<div class="modal_img" :style="[loadingShow?'overflow:hidden':'']">
<div v-for="item,index in generateList" class="modal_imgItem Guide_1_13_2" :class="[item.status != 'Success'?'hideEvents':'',driver__.driver?'showEvents':'',item?.checked?'active':'']">
<img v-show="item.status != 'Success'" src="@/assets/images/homePage/loading.gif" alt="">
<img v-show="item.status == 'Success'" :src="item.imgUrl" @click.stop="generageAdd(item)">
<div v-for="item,index in generateList" class="modal_imgItem Guide_1_13_2" :class="[item.status != 'Success'?'hideEvents':'',driver__.driver?'showEvents':'',item?.checked?'active':'']" :key="item">
<!-- <img v-show="item.status != 'Success'" src="@/assets/images/homePage/loading.gif" alt=""> -->
<img v-lazy="item.imgUrl" @click.stop="generageAdd(item)">
<sketchCategory :disignTypeList="sketchCatecoryList" :generateList="generateList" :item="item" :driver__="driver__.driver" :driverClass="{class1: 'Guide_1_13',class2:'Guide_1_13_1'}"></sketchCategory>
<div
class="delete_like_file_block"
@@ -227,6 +236,7 @@ export default defineComponent({
let isTest = ref()
let userInfo:any = {}
let generateTime:any = ref()
let generateProceedList = ref([])
let remGenerate:any = ref(false)
let remGenerateTime:any = ref()
let isUseGenerate = ref(false)
@@ -256,6 +266,7 @@ export default defineComponent({
userInfo,
generateTime,
remGenerate,
generateProceedList,
remGenerateTime,
useGenerate,
isUseGenerate,
@@ -705,58 +716,58 @@ export default defineComponent({
return
}
}
rv.uniqueId.forEach((item:any) => {
let arr:any = {}
arr.taskId = item
arr.status = 'execution'
this.generateList.unshift(arr)
});
this.setGenerate()
this.remGenerateTime = setTimeout(()=>{
this.remGenerate = true
},10000)
// rv.uniqueId.forEach((item:any) => {
// let arr:any = {}
// arr.taskId = item
// arr.status = 'execution'
// this.generateList.unshift(arr)
// });
this.setGenerate(rv.uniqueId)
}
).catch(res=>{
this.isGenerate = false
});
},
setGenerate(){
setGenerate(dataList:any){
let generage:any = this.$refs.Generate
let sketchCatecoryList = this.sketchCatecoryList
let categoryValue:any
let data = dataList
this.remGenerateTime = setTimeout(()=>{
this.remGenerate = true
},10000)
generage.sketchboardList.forEach((item:any) => {
if(item.checked){
categoryValue = item.categoryValue
}
});
this.generateTime = setInterval(()=>{
let data = this.generateList.filter((item:any)=>item.status != 'Success').map((obj:any) => obj.taskId);
// let data = this.generateList.filter((item:any)=>item.status != 'Success').map((obj:any) => obj.taskId);
Https.axiosPost(Https.httpUrls.generateResult, data).then(
(rv) => {
if(this.isGenerate){//防止取消后有正在执行的获取状态
let arr:any = []
arr = rv.filter((item:any)=>item.status != 'Success' && item.status != 'Fail' && item.status != 'Invalid')
this.generateProceedList = rv.filter((item:any)=>item.status != 'Success' && item.status != 'Fail' && item.status != 'Invalid')
rv.forEach((element:any) => {
this.generateList.forEach((item:any,index:any) => {
if(item.taskId == element.taskId && element.status == 'Success'){
this.generateList[index] = element
element.imgUrl = element.url
element.id_ = GO.id++
this.sketchCatecoryList.forEach((itemCategory:any) => {
if(itemCategory.value == element.category){
element.categoryValue = itemCategory?.name
element.category = itemCategory?.value
}
});
}
});
if(element.status === 'Success'){
element.imgUrl = element.url
element.id_ = GO.id++
this.sketchCatecoryList.forEach((itemCategory:any) => {
if(itemCategory.value == element.category){
element.categoryValue = itemCategory?.name
element.category = itemCategory?.value
}
});
this.generateList.unshift(element)
data = data.filter((item:any) => item !== element.taskId);
}
});
// this.generateList = rv;
if(rv.length == 4 && rv.filter((item:any)=>item.status == 'Invalid').length == 4) {
if(rv.filter((item:any)=>item.status == 'Invalid').length == 4) {
message.info(this.t('Generate.effectPoor'));
// (this.$refs.inputShowText as any).innerHTML = this.t('Generate.effectPoor')
}
if(arr.length == 0){
if(rv.filter((item:any)=>item.status == 'Waiting').length == 0 && rv.filter((item:any)=>item.status == 'Executing').length == 0){
nextTick().then(()=>{
if(this.driver__.driver){
driverObj__.moveNext()
@@ -771,7 +782,6 @@ export default defineComponent({
}
}
).catch(res=>{
this.generateList = this.generateList.filter((item:any)=>item.status == 'Success')
clearInterval(this.generateTime)
clearInterval(this.remGenerateTime)
this.isGenerate = false
@@ -779,17 +789,16 @@ export default defineComponent({
},1000)
},
removeGenerate(){
let arr = this.generateList.filter((item:any)=>item.status != 'Success')
//取消操作
this.generateList = this.generateList.filter((item:any)=>item.status == 'Success')
this.isGenerate = false
this.remGenerate = false
clearInterval(this.generateTime)
if(arr){
let str = arr.map((obj:any) => obj.taskId).join(',');
if(this.generateProceedList){
let str = this.generateProceedList.map((obj:any) => obj.taskId).join(',');
let data = {uniqueId:str,userId:this?.userInfo?.userId,timeZone:Intl.DateTimeFormat().resolvedOptions().timeZone}
Https.axiosGet(Https.httpUrls.generateStopWaiting, {params:data}).then(
(rv) => {
this.generateProceedList = []
}
).catch(res=>{
});

View File

@@ -287,12 +287,12 @@
</div>
<div class="content_body_table scroll_style">
<div class="content_img_item" v-for="(img,index) in generateList[selectCode]" :key="img.id" :class="[img.status != 'Success'?'hideEvents':'']">
<div class="content_img_item" v-for="(img,index) in generateList[selectCode]" :key="img.id" :class="[img.status != 'Success'?'hideEvents':'']" v-show="img.status == 'Success'">
<div :class="['content_img_item_block', selectImgList.indexOf(img.id) > -1 ? 'select_item_img' :'']">
<img v-show="img.status != 'Success'" :class="['content_img', ['Moodboard','Printboard'].indexOf(selectCode) > -1 ? 'board_content_img' :'']" src="@/assets/images/homePage/loading.gif" alt="">
<img v-show="img.status == 'Success'" :class="['content_img', ['Moodboard','Printboard'].indexOf(selectCode) > -1 ? 'board_content_img' :'']" :src="img.imgUrl">
<!-- <img v-show="img.status != 'Success'" :class="['content_img', ['Moodboard','Printboard'].indexOf(selectCode) > -1 ? 'board_content_img' :'']" src="@/assets/images/homePage/loading.gif" alt=""> -->
<img :class="['content_img', ['Moodboard','Printboard'].indexOf(selectCode) > -1 ? 'board_content_img' :'']" v-lazy="img.imgUrl">
<div v-show="img.status == 'Success'" class="img_item_hover">
<div class="img_item_hover">
<div class="img_operate_content">
<div class="img_operate_block">
<i v-if="!img.like" class="fi fi-rr-heart operate_icon" @click.stop="likeFile(img,'like')"></i>
@@ -455,6 +455,7 @@ export default defineComponent({
Printboard:'',
Models:''
})
let generateProceedList = ref([])
let isGenerate:any = ref({
Sketchboard:false,
Moodboard:false,
@@ -462,12 +463,17 @@ export default defineComponent({
Models:false
})
let remGenerate:any = ref({
Sketchboard:false,
Moodboard:false,
Printboard:false,
Models:false
})
let remGenerateTime:any = ref({
Sketchboard:'',
Moodboard:'',
Printboard:'',
Models:''
})
let remGenerateTime:any = ref()
let getLibraryListInputTime:any = ref()
const options:any = ref([
]);
@@ -512,6 +518,7 @@ export default defineComponent({
isTest,
driver__,
generateTime,
generateProceedList,
isGenerate,
remGenerate,
remGenerateTime,
@@ -1076,20 +1083,15 @@ export default defineComponent({
}
},
getgenerate(){
clearInterval(this.remGenerateTime)
this.remGenerate[this.selectCode] = false
// if(this.isTest){//试用用户禁止使用
// message.info(
// this.t('isTest.available')
// );
// return
// }
if(this.isGenerate[this.selectCode]){
let selectCodeStr = JSON.parse(JSON.stringify(this.selectCode))
clearInterval(this.remGenerateTime[selectCodeStr])
this.remGenerate[selectCodeStr] = false
if(this.isGenerate[selectCodeStr]){
return
}
let arr = ["Painting Style","Illustration Style","Real Style"]
let generateType = this.checkbox.filter((v:any)=>v.type)[0].name
if(this.selectCode == 'Moodboard'){
if(selectCodeStr == 'Moodboard'){
generateType = this.checkbox[1].name
}
let generageImg = this.selectGenerateList.filter((v:any)=>v.checked)[0]
@@ -1097,14 +1099,14 @@ export default defineComponent({
generateType:generateType,
designType:'collection',
collectionElementId:generageImg?.id,
level1Type:this.selectCode,
level2Type:this.selectCode == 'Sketchboard'?this.designType.value:'',
level1Type:selectCodeStr,
level2Type:selectCodeStr == 'Sketchboard'?this.designType.value:'',
userId:(this?.userInfo as any).userId,
isTestUser:this.driver__.driver?false:this.isTest,
text:this.selectCode == 'Printboard'?`${arr[this.printModel.num-1]},${this.captionGeneration}`:this.captionGeneration,
text:selectCodeStr == 'Printboard'?`${arr[this.printModel.num-1]},${this.captionGeneration}`:this.captionGeneration,
timeZone:Intl.DateTimeFormat().resolvedOptions().timeZone,
version:1,//为1就是Print
gender:this.selectCode == 'Sketchboard'?this.sex.value:'',
gender:selectCodeStr == 'Sketchboard'?this.sex.value:'',
}
if(generateType == 'image'){
if(generageImg?.id){
@@ -1160,104 +1162,98 @@ export default defineComponent({
}
}
// this.isShowMark = true
this.isGenerate[this.selectCode] = true
this.isGenerate[selectCodeStr] = true
Https.axiosPost(Https.httpUrls.generatePrepare, data).then(
(rv) => {
if(data.isTestUser){
let str:any
if(this.selectCode == 'Moodboard'){
if(selectCodeStr == 'Moodboard'){
str = this.t('collectionModal.Moodboard')
}else if(this.selectCode == 'Printboard'){
}else if(selectCodeStr == 'Printboard'){
str = this.t('collectionModal.Printboard')
}else if(this.selectCode == 'Sketchboard'){
}else if(selectCodeStr == 'Sketchboard'){
str = this.t('collectionModal.Sketchboard')
}
if(rv.leftUsageCount >= 1){
message.warning(this.t('Generate.jsContent8',{num:rv.leftUsageCount,str:str}));
}else if(rv.leftUsageCount == 0){
message.warning(this.t('Generate.jsContent9',{str:str}));
this.isGenerate[this.selectCode] = false
this.isGenerate[selectCodeStr] = false
// this.isShowMark = false
return
}
}
rv.uniqueId.forEach((item:any) => {
let arr:any = {}
arr.taskId = item
arr.status = 'execution'
this.generateList[this.selectCode].unshift(arr)
});
this.setGenerate(this.selectCode)
this.remGenerateTime = setTimeout(()=>{
this.remGenerate[this.selectCode] = true
},10000)
// rv.uniqueId.forEach((item:any) => {
// let arr:any = {}
// arr.taskId = item
// arr.status = 'execution'
// this.generateList[selectCodeStr].unshift(arr)
// });
this.setGenerate(selectCodeStr,rv.uniqueId)
}
).catch(res=>{
// this.isShowMark = false
this.isGenerate[this.selectCode] = false
this.isGenerate[selectCodeStr] = false
});
},
setGenerate(str:any){
setGenerate(str:any,dataList:any){
this.remGenerateTime[str] = setTimeout(()=>{
this.remGenerate[str] = true
},10000)
let data = dataList
this.generateTime[str] = setInterval(()=>{
let data = this.generateList[str].filter((item:any)=>item.status != 'Success').map((obj:any) => obj.taskId);
// let data = this.generateList[str].filter((item:any)=>item.status != 'Success').map((obj:any) => obj.taskId);
Https.axiosPost(Https.httpUrls.generateResult, data).then(
(rv) => {
if(this.isGenerate[this.selectCode]){//防止取消后有正在执行的获取状态
let arr:any = []
arr = rv.filter((item:any)=>item.status != 'Success' && item.status != 'Fail' && item.status != 'Invalid')
if(this.isGenerate[str]){//防止取消后有正在执行的获取状态
this.generateProceedList = rv.filter((item:any)=>item.status != 'Success' && item.status != 'Fail' && item.status != 'Invalid')
rv.forEach((element:any) => {
this.generateList[str].forEach((item:any,index:any) => {
if(item.taskId == element.taskId && element.status == 'Success'){
element.imgUrl = element.url
this.generateList[str][index] = element
this.disignTypeList.forEach((itemCategory:any) => {
if(itemCategory.value == element.category){
element.categoryValue = itemCategory?.label
element.category = itemCategory?.value
}
});
}
});
if(element.status === 'Success'){
element.imgUrl = element.url
this.disignTypeList.forEach((itemCategory:any) => {
if(itemCategory.value == element.category){
element.categoryValue = itemCategory?.label
element.category = itemCategory?.value
}
});
this.generateList[str].unshift(element)
data = data.filter((item:any) => item !== element.taskId);
}
});
if(rv.length == 4 && rv.filter((item:any)=>item.status == 'Invalid').length == 4) {
// (this.$refs.inputShowText as any).innerHTML = this.t('Generate.effectPoor')
message.info(this.t('Generate.effectPoor'));
}
if(arr.length == 0){
if(data.length == 0){
this.generateList[str] = this.generateList[str].filter((item:any)=>item.status == 'Success')
clearInterval(this.generateTime[str])
clearInterval(this.remGenerateTime)
// this.isShowMark = false
this.remGenerate[this.selectCode] = false
this.isGenerate[this.selectCode] = false
clearInterval(this.remGenerateTime[str])
this.remGenerate[str] = false
this.isGenerate[str] = false
}else{
}
}
}
).catch(res=>{
this.generateList[str] = this.generateList[str].filter((item:any)=>item.status == 'Success')
clearInterval(this.generateTime[str])
clearInterval(this.remGenerateTime)
clearInterval(this.remGenerateTime[str])
// this.isShowMark = false
this.isGenerate[this.selectCode] = false
this.isGenerate[str] = false
});
},1000)
},
removeGenerate(){
let arr = this.generateList[this.selectCode].filter((item:any)=>item.status != 'Success')
this.generateList[this.selectCode] = this.generateList[this.selectCode].filter((item:any)=>item.status == 'Success')
// this.isShowMark = false
this.isGenerate[this.selectCode] = false
this.remGenerate[this.selectCode] = false
clearInterval(this.generateTime[this.selectCode])
if(arr){
let str = arr.map((obj:any) => obj.taskId).join(',');
if(this.generateProceedList){
let str = this.generateProceedList.map((obj:any) => obj.taskId).join(',');
let data = {uniqueId:str,userId:(this?.userInfo as any)?.userId,timeZone:Intl.DateTimeFormat().resolvedOptions().timeZone}
Https.axiosGet(Https.httpUrls.generateStopWaiting, {params:data}).then(
(rv) => {
this.generateProceedList = []
}
).catch(res=>{
});