generate新增参数

This commit is contained in:
wxd
2024-12-01 17:22:20 +08:00
parent 6c393d5bf7
commit 4d34f2d53f
6 changed files with 225 additions and 23 deletions

View File

@@ -6,7 +6,7 @@ NODE_ENV = 'development'
VUE_APP_BASE_URL = 'https://develop.api.aida.com.hk'
# VUE_APP_BASE_URL = 'https://www.api.aida.com.hk'
# 佩佩
VUE_APP_BASE_URL = 'http://192.168.1.4:5567'
# VUE_APP_BASE_URL = 'http://192.168.1.4:5567'
# 海波
# VUE_APP_BASE_URL = 'http://192.168.1.9:5567'

View File

@@ -1843,6 +1843,71 @@ textarea:focus {
top: 0rem;
border: 1px solid #dcdfe6;
}
.collection_modal_body .input_border .generage_btn_box,
.design_detail_modal_component .input_border .generage_btn_box,
.library_page .input_border .generage_btn_box,
.productImg_modal .input_border .generage_btn_box,
.accountEdit_page .input_border .generage_btn_box,
.generalMenu_printModel_upload .input_border .generage_btn_box {
position: relative;
display: flex;
align-items: center;
}
.collection_modal_body .input_border .generage_btn_box .icon-xiala,
.design_detail_modal_component .input_border .generage_btn_box .icon-xiala,
.library_page .input_border .generage_btn_box .icon-xiala,
.productImg_modal .input_border .generage_btn_box .icon-xiala,
.accountEdit_page .input_border .generage_btn_box .icon-xiala,
.generalMenu_printModel_upload .input_border .generage_btn_box .icon-xiala {
margin-left: 1rem;
transition: all 0.3s;
cursor: pointer;
}
.collection_modal_body .input_border .generage_btn_box .icon-xiala.active,
.design_detail_modal_component .input_border .generage_btn_box .icon-xiala.active,
.library_page .input_border .generage_btn_box .icon-xiala.active,
.productImg_modal .input_border .generage_btn_box .icon-xiala.active,
.accountEdit_page .input_border .generage_btn_box .icon-xiala.active,
.generalMenu_printModel_upload .input_border .generage_btn_box .icon-xiala.active {
transform: rotate(180deg);
}
.collection_modal_body .input_border .generage_btn_box .content,
.design_detail_modal_component .input_border .generage_btn_box .content,
.library_page .input_border .generage_btn_box .content,
.productImg_modal .input_border .generage_btn_box .content,
.accountEdit_page .input_border .generage_btn_box .content,
.generalMenu_printModel_upload .input_border .generage_btn_box .content {
position: absolute;
top: 100%;
width: calc(100% - 2rem);
left: 2rem;
text-align: center;
border-radius: calc(1rem*1.2);
overflow: hidden;
z-index: 3;
margin-top: 0.2rem;
}
.collection_modal_body .input_border .generage_btn_box .content > div,
.design_detail_modal_component .input_border .generage_btn_box .content > div,
.library_page .input_border .generage_btn_box .content > div,
.productImg_modal .input_border .generage_btn_box .content > div,
.accountEdit_page .input_border .generage_btn_box .content > div,
.generalMenu_printModel_upload .input_border .generage_btn_box .content > div {
background: #cccccc;
line-height: 2;
cursor: pointer;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.collection_modal_body .input_border .generage_btn_box .content > div:hover,
.design_detail_modal_component .input_border .generage_btn_box .content > div:hover,
.library_page .input_border .generage_btn_box .content > div:hover,
.productImg_modal .input_border .generage_btn_box .content > div:hover,
.accountEdit_page .input_border .generage_btn_box .content > div:hover,
.generalMenu_printModel_upload .input_border .generage_btn_box .content > div:hover {
background: #999999;
}
.collection_modal_body .input_border .generage_btn,
.design_detail_modal_component .input_border .generage_btn,
.library_page .input_border .generage_btn,
@@ -1850,6 +1915,7 @@ textarea:focus {
.accountEdit_page .input_border .generage_btn,
.generalMenu_printModel_upload .input_border .generage_btn {
margin-left: 2rem;
display: flex;
}
.collection_modal_body .upload_item,
.design_detail_modal_component .upload_item,

View File

@@ -1794,9 +1794,45 @@ textarea:focus{
// color: red;
// width: 100%;
// }
.generage_btn_box{
position: relative;
display: flex;
align-items: center;
.icon-xiala{
margin-left: 1rem;
transition: all .3s;
cursor: pointer;
&.active{
transform: rotate(180deg);
}
}
.content{
position: absolute;
top: 100%;
width: calc(100% - 2rem);
left: 2rem;
text-align: center;
border-radius: calc(1rem* 1.2);
overflow: hidden;
z-index: 3;
margin-top: .2rem;
>div{
background: #cccccc;
line-height: 2;
cursor: pointer;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
>div:hover{
background: #999999;
}
}
}
.generage_btn{
// margin: 0 auto;
margin-left: 2rem;
display: flex;
}
}

View File

@@ -126,8 +126,23 @@
@click.stop=""
v-model="searchPictureName"
></textarea>
<div v-show="!isGenerate" class="generage_btn started_btn" :class="{Guide_1_2_8:type_.type2 == 'Printboard'}" @click.stop="getgenerate">
{{ $t('Generate.Generate') }}
<div class="generage_btn_box" v-show="!isGenerate">
<div class="generage_btn started_btn">
<span :class="{Guide_1_2_8:type_.type2 == 'Printboard'}" @click.stop="getgenerate">
{{ $t('Generate.Generate') }}
<span v-show="
type_.type2 == 'Moodboard' ||
(type_.type2 == 'Printboard' && scene?.value == 'Pattern') ||
(type_.type2 == 'Sketchboard' && scene?.value == 'generate')">{{ speedData.label }}</span>
</span>
<div class="icon iconfont icon-xiala" v-show="
type_.type2 == 'Moodboard' ||
(type_.type2 == 'Printboard' && scene?.value == 'Pattern') ||
(type_.type2 == 'Sketchboard' && scene?.value == 'generate')" :class="{active:speedState}" @click.stop="openSpeed"></div>
</div>
<div class="content" v-show="speedState">
<div v-for="item in speedList" :key="item.value" @click="setSpeed(item)" :title="item.title">{{ item.label }}</div>
</div>
</div>
<div v-show="isGenerate && !remGenerate" class="generage_btn started_btn" :class="{Guide_1_2_8:type_.type2 == 'Printboard'}" @click="getgenerate">
<i class="fi fi-br-loading"></i>
@@ -181,7 +196,7 @@
<script lang="ts">
import { LoadingOutlined } from "@ant-design/icons-vue";
import { message, Upload, Modal } from "ant-design-vue";
import { defineComponent, computed, createVNode, h, ref,watch, nextTick, inject } from "vue";
import { defineComponent, computed, reactive, createVNode, h, ref,watch, nextTick, inject, toRefs } from "vue";
import { Https } from "@/tool/https";
import { useStore } from "vuex";
import GO from "@/tool/GO";
@@ -242,6 +257,37 @@ export default defineComponent({
let generateLevel2Type = ''
let isSloganHint:any = ref(' ')
let loadingShow =ref(false)
let speed = reactive({
speedList:[
{
title:'Picture quality is average, speed is fast',
label:'Fast',
value:'fast',
},{
title:'Picture quality is high, speed is slow',
label:'High',
value:'high',
},
],
speedState:false,
speedData:{
title:'Picture quality is average, speed is fast',
label:'Fast',
value:'fast',
},
})
const openSpeed = ()=>{
speed.speedState = !speed.speedState
if(speed.speedState){
document.addEventListener('click',openSpeed)
}else{
document.removeEventListener('click',openSpeed)
}
}
const setSpeed = (item:any)=>{
speed.speedData = item
}
return {
searchPictureName,
searchPictureSeed,
@@ -272,6 +318,9 @@ export default defineComponent({
generateLevel2Type,
isSloganHint,
loadingShow,
...toRefs(speed),
openSpeed,
setSpeed,
};
},
data(prop) {
@@ -537,7 +586,7 @@ export default defineComponent({
seed:this.searchPictureSeed,
userId:this?.userInfo?.userId,
timeZone:Intl.DateTimeFormat().resolvedOptions().timeZone,
version:1,//为1就是Print
version:this.speedData.value,//为1就是Print
isTestUser:this.driver__.driver?false:this.isTest,
gender:this.workspace.sexEnum.value,
sloganBase64:base64,
@@ -584,6 +633,8 @@ export default defineComponent({
state = false
Https.axiosPost(Https.httpUrls.generateResult, data).then(
(rv) => {
console.log(data);
state = true
if(this.isGenerate){//防止取消后有正在执行的获取状态
this.generateProceedList = rv.filter((item:any)=>item.status != 'Success' && item.status != 'Fail' && item.status != 'Invalid')

View File

@@ -11,8 +11,8 @@ const routes: Array<RouteRecordRaw> = [
{
path: "/",
// redirect重定向
// redirect: "/Square"
redirect: "/upgrade"
redirect: "/Square"
// redirect: "/upgrade"
},
{
@@ -321,17 +321,17 @@ router.beforeEach((to:any, from, next) => {
let upgradeList = ['/feedbackSurvey','/feedbackSurveyCN','emailVerify']//指定页面系统维护也可以访问
// 系统维护
const toName = to.name === 'upgrade';
if(upgradeList.indexOf(to.path) > -1){
next();
}else{
if (toName) {
next();
} else {
next({ name: 'upgrade' });
}
}
return
// const toName = to.name === 'upgrade';
// if(upgradeList.indexOf(to.path) > -1){
// next();
// }else{
// if (toName) {
// next();
// } else {
// next({ name: 'upgrade' });
// }
// }
// return
// 检查路由是否存在
// 机房用户
let herfData = window.location.search.substring(1)

View File

@@ -341,9 +341,23 @@
@click.stop=""
v-model="captionGeneration"
></textarea>
<div v-show="!isGenerate[selectCode]" class="generage_btn started_btn" @click.stop="getgenerate">
{{ $t('LibraryPage.Generate') }}
<!-- <div v-show="isGenerate"><a-spin size="large" /></div> -->
<div class="generage_btn_box" v-show="!isGenerate[selectCode]">
<div class="generage_btn started_btn">
<span :class="{Guide_1_2_8:selectCode == 'Printboard'}" @click.stop="getgenerate">
{{ $t('LibraryPage.Generate') }}
<span v-show="
selectCode == 'Moodboard' ||
(selectCode == 'Printboard' && scene?.value == 'Pattern') ||
(selectCode == 'Sketchboard' && scene?.value == 'generate')">{{ speedData.label }}</span>
</span>
<div class="icon iconfont icon-xiala" v-show="
selectCode == 'Moodboard' ||
(selectCode == 'Printboard' && scene?.value == 'Pattern') ||
(selectCode == 'Sketchboard' && scene?.value == 'generate')" :class="{active:speedState}" @click.stop="openSpeed"></div>
</div>
<div class="content" v-show="speedState">
<div v-for="item in speedList" :key="item.value" @click="setSpeed(item)" :title="item.title">{{ item.label }}</div>
</div>
</div>
<div v-show="isGenerate[selectCode] && !remGenerate[selectCode]" class="generage_btn started_btn" @click.stop="getgenerate">
<i class="fi fi-br-loading"></i>
@@ -418,7 +432,7 @@
</template>
<script lang="ts">
import { LoadingOutlined } from "@ant-design/icons-vue";
import { defineComponent,h ,ref,createVNode,nextTick,watch,provide,computed} from 'vue'
import { defineComponent,h ,ref,createVNode,nextTick,watch,provide,computed,reactive,toRefs} from 'vue'
// import HeaderComponent from "@/component/HomePage/Header.vue";
import ModelPlacement from '@/component/LibraryPage/ModelPlacement.vue';
// import ModelPlacement from '@/component/LibraryPage/ModelPlacementUpdata.vue';
@@ -598,6 +612,37 @@ export default defineComponent({
let generateLevel2:any = {}
let isSloganHint:any = ref('')
let printModelList:any = ref([])
let speed = reactive({
speedList:[
{
title:'Picture quality is average, speed is fast',
label:'Fast',
value:'fast',
},{
title:'Picture quality is high, speed is slow',
label:'High',
value:'high',
},
],
speedState:false,
speedData:{
title:'Picture quality is average, speed is fast',
label:'Fast',
value:'fast',
},
})
const openSpeed = ()=>{
speed.speedState = !speed.speedState
if(speed.speedState){
document.addEventListener('click',openSpeed)
}else{
document.removeEventListener('click',openSpeed)
}
}
const setSpeed = (item:any)=>{
speed.speedData = item
}
let getSex = () =>{
sex.value = store.state.UserHabit.sex.value[0].value
getPosition()
@@ -738,6 +783,9 @@ export default defineComponent({
getLibraryList,
getClass,
printModelList,
...toRefs(speed),
openSpeed,
setSpeed,
}
},
data(this_) {
@@ -1940,10 +1988,11 @@ export default defineComponent({
.input_border{
padding-bottom: 0;
background: rgba(0, 0, 0, 0);
width: 50rem;
width: 55rem;
.input_box_btnBox{
background: #fff;
align-items: center;
width:65%;
.search_input{
height: 3rem;
}