调整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

@@ -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=>{
});