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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -140,7 +140,16 @@
<div class="input_border"> <div class="input_border">
<div class="Guide_1_9_2 input_box" :class="[inputShow?'active':'',driver__.driver?'showEvents':'']"> <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"> <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> <span ref="inputShowText"></span>
</div> </div>
<!-- <div> <!-- <div>
@@ -149,9 +158,9 @@
</div> --> </div> -->
</div> </div>
<div class="modal_img" :style="[loadingShow?'overflow:hidden':'']"> <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':'']"> <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-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-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> <sketchCategory :disignTypeList="sketchCatecoryList" :generateList="generateList" :item="item" :driver__="driver__.driver" :driverClass="{class1: 'Guide_1_13',class2:'Guide_1_13_1'}"></sketchCategory>
<div <div
class="delete_like_file_block" class="delete_like_file_block"
@@ -227,6 +236,7 @@ export default defineComponent({
let isTest = ref() let isTest = ref()
let userInfo:any = {} let userInfo:any = {}
let generateTime:any = ref() let generateTime:any = ref()
let generateProceedList = ref([])
let remGenerate:any = ref(false) let remGenerate:any = ref(false)
let remGenerateTime:any = ref() let remGenerateTime:any = ref()
let isUseGenerate = ref(false) let isUseGenerate = ref(false)
@@ -256,6 +266,7 @@ export default defineComponent({
userInfo, userInfo,
generateTime, generateTime,
remGenerate, remGenerate,
generateProceedList,
remGenerateTime, remGenerateTime,
useGenerate, useGenerate,
isUseGenerate, isUseGenerate,
@@ -705,58 +716,58 @@ export default defineComponent({
return return
} }
} }
rv.uniqueId.forEach((item:any) => { // rv.uniqueId.forEach((item:any) => {
let arr:any = {} // let arr:any = {}
arr.taskId = item // arr.taskId = item
arr.status = 'execution' // arr.status = 'execution'
this.generateList.unshift(arr) // this.generateList.unshift(arr)
}); // });
this.setGenerate() this.setGenerate(rv.uniqueId)
this.remGenerateTime = setTimeout(()=>{
this.remGenerate = true
},10000)
} }
).catch(res=>{ ).catch(res=>{
this.isGenerate = false this.isGenerate = false
}); });
}, },
setGenerate(){ setGenerate(dataList:any){
let generage:any = this.$refs.Generate let generage:any = this.$refs.Generate
let sketchCatecoryList = this.sketchCatecoryList let sketchCatecoryList = this.sketchCatecoryList
let categoryValue:any let categoryValue:any
let data = dataList
this.remGenerateTime = setTimeout(()=>{
this.remGenerate = true
},10000)
generage.sketchboardList.forEach((item:any) => { generage.sketchboardList.forEach((item:any) => {
if(item.checked){ if(item.checked){
categoryValue = item.categoryValue categoryValue = item.categoryValue
} }
}); });
this.generateTime = setInterval(()=>{ 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( Https.axiosPost(Https.httpUrls.generateResult, data).then(
(rv) => { (rv) => {
if(this.isGenerate){//防止取消后有正在执行的获取状态 if(this.isGenerate){//防止取消后有正在执行的获取状态
let arr:any = [] this.generateProceedList = rv.filter((item:any)=>item.status != 'Success' && item.status != 'Fail' && item.status != 'Invalid')
arr = rv.filter((item:any)=>item.status != 'Success' && item.status != 'Fail' && item.status != 'Invalid')
rv.forEach((element:any) => { rv.forEach((element:any) => {
this.generateList.forEach((item:any,index:any) => { if(element.status === 'Success'){
if(item.taskId == element.taskId && element.status == 'Success'){ element.imgUrl = element.url
this.generateList[index] = element element.id_ = GO.id++
element.imgUrl = element.url this.sketchCatecoryList.forEach((itemCategory:any) => {
element.id_ = GO.id++ if(itemCategory.value == element.category){
this.sketchCatecoryList.forEach((itemCategory:any) => { element.categoryValue = itemCategory?.name
if(itemCategory.value == element.category){ element.category = itemCategory?.value
element.categoryValue = itemCategory?.name }
element.category = itemCategory?.value });
} this.generateList.unshift(element)
}); data = data.filter((item:any) => item !== element.taskId);
} }
});
}); });
// this.generateList = rv; // 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')); message.info(this.t('Generate.effectPoor'));
// (this.$refs.inputShowText as any).innerHTML = 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(()=>{ nextTick().then(()=>{
if(this.driver__.driver){ if(this.driver__.driver){
driverObj__.moveNext() driverObj__.moveNext()
@@ -771,7 +782,6 @@ export default defineComponent({
} }
} }
).catch(res=>{ ).catch(res=>{
this.generateList = this.generateList.filter((item:any)=>item.status == 'Success')
clearInterval(this.generateTime) clearInterval(this.generateTime)
clearInterval(this.remGenerateTime) clearInterval(this.remGenerateTime)
this.isGenerate = false this.isGenerate = false
@@ -779,17 +789,16 @@ export default defineComponent({
},1000) },1000)
}, },
removeGenerate(){ 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.isGenerate = false
this.remGenerate = false
clearInterval(this.generateTime) clearInterval(this.generateTime)
if(arr){ if(this.generateProceedList){
let str = arr.map((obj:any) => obj.taskId).join(','); let str = this.generateProceedList.map((obj:any) => obj.taskId).join(',');
let data = {uniqueId:str,userId:this?.userInfo?.userId,timeZone:Intl.DateTimeFormat().resolvedOptions().timeZone} let data = {uniqueId:str,userId:this?.userInfo?.userId,timeZone:Intl.DateTimeFormat().resolvedOptions().timeZone}
Https.axiosGet(Https.httpUrls.generateStopWaiting, {params:data}).then( Https.axiosGet(Https.httpUrls.generateStopWaiting, {params:data}).then(
(rv) => { (rv) => {
this.generateProceedList = []
} }
).catch(res=>{ ).catch(res=>{
}); });

View File

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