This commit is contained in:
X1627315083
2024-08-14 16:02:55 +08:00
parent eb958d10c8
commit 97ac7e9dfa
16 changed files with 1301 additions and 64 deletions

View File

@@ -28,8 +28,8 @@
<!-- <img class="detial_img" :src="designItemDetail.designItemUrl"> -->
<div v-show="imgDesignImg" class="detail_modal_body">
<div class="detail_modal_body_nav">
<div v-for="item,index in designItemDetail?.clothes" v-show="item.id" :class="{active:item.clothesOpen}" @click="clothesOpen(index)">
<div class="detail_modal_body_nav" :style="[(driver__.index == 35|| driver__.index == 36)?'transform: translate(-50%,0%)':'']">
<div v-for="item,index in designItemDetail?.clothes" v-show="item.id" :class="{active:item.clothesOpen,Guide_1_19:(index == 0 && (driver__.index == 35|| driver__.index == 36))}" @click="clothesOpen(index)">
<img :src="item?.path" alt="">
<i v-show="deleteShow" class="fi fi-br-cross" @click.stop="setDelete(index)"></i>
</div>
@@ -541,7 +541,7 @@ export default defineComponent({
if(this.driver__.driver){
nextTick().then(()=>{
// driverObj__.moveNext();
driverObj__.moveTo(41);
driverObj__.moveTo(36);
})
}
}

View File

@@ -752,14 +752,14 @@ export default defineComponent({
// path:imgData?.url,
// designType: imgData?.designType
// }]
// if(this.driver__.driver){
// nextTick().then(()=>{
// driverObj__.moveNext();
// })
// }
imgData.path = imgData.url
DesignDetailEnd.printsList.push(imgData)
if(this.driver__.driver){
nextTick().then(()=>{
driverObj__.moveNext();
})
}
// console.log(this.current.printObject,imgData);
}else if(this.selectCode == 'DesignElements'){
imgData.path = imgData.url

View File

@@ -726,7 +726,9 @@ export default defineComponent({
// this.openType.habit = false
nextTick().then(()=>{
// driverObj__.moveTo(2);
driverObj__.moveNext();
setTimeout(() => {
driverObj__.moveNext();
}, 300);
this.openType.model = false
// driverObj__.moveNext();

View File

@@ -90,7 +90,7 @@
<span>{{ $t('ColorboardUpload.UploadImage') }}</span>
</div>
<div class="upload_centetn">
<div class="upload_item Guide_1_10">
<div class="upload_item">
<div class="upload_file_item upload_file_item_show">
<i v-show="fileList.length == 0" class="fi fi-rr-square-plus"></i>
<div v-show="fileList.length > 0" class="upload_file_item upload_file_item_upload" v-for="(file) in fileList" :key="file">
@@ -102,7 +102,7 @@
<div class="delete_file_block" @click="deleteFile(index)">Delete</div>
</div>
</div>
<div class="upload_file_item_scale">
<div class="upload_file_item_scale" :style="[(driver__.driver && (driver__.index == 19 || driver__.index == 18))?'display :flex;':'']">
<a-upload
:title="$t('ColorboardUpload.uploadTitle')"
:capture="null"
@@ -112,6 +112,7 @@
@change="fileUploadChange"
:before-upload="beforeUpload"
accept=".jpg,.png,.jpeg,.bmp"
class=" Guide_1_10"
>
<div class="upload_tip_block">
<i class="fi fi-br-upload"></i>
@@ -123,8 +124,8 @@
</div>
</div>
</div>
<div class="upload_color">
<div v-for="color,index in selectColorList" :key="color" @click="setUplpadColor(color)" class="upload_color_item" :class="[ index == 0?'Guide_1_11':'',index == 1?'Guide_1_11_2':'']">
<div class="upload_color" :style="[driver__.driver?' overflow: hidden !important;':'']">
<div v-for="color,index in selectColorList" :key="color" @click="setUplpadColor(color)" class="upload_color_item" :class="[ index == 0?'Guide_1_11':'',index == 1?'Guide_1_11_2':'',]">
<div class="upload_color_item_bg" :style="{'background-color':`rgba(${color.rgba.r},${color.rgba.g},${color.rgba.b},${color.rgba.a})`}">
</div>
<!-- <div class="upload_color_item_text">{{ pantongNameList[index] }}</div> -->
@@ -454,6 +455,11 @@ export default defineComponent({
file.status = 'done'
this.fileList[0] = file
this.getImgColor()
// nextTick().then(()=>{
// if(this.driver__.driver){
// driverObj__.moveNext()
// }
// })
};
// 转化为base64S
reader.readAsDataURL(fileData)

View File

@@ -1,7 +1,7 @@
<template>
<div class="generate">
<div v-if="type_.type2 == 'Printboard' && scene.value == 'Pattern'" class="generate_checkbox Guide_1_2_2" :class="[driver__.driver?'hideEvents':'']">
<generalMenu :dataList="printModelList" @setprintModel="setprintModel" :item="printModel" :driver__="driver__.driver" :driverClass="{class1: 'Guide_1_2_4',class2:'Guide_1_2_5'}"></generalMenu>
<div v-if="type_.type2 == 'Printboard' && scene.value == 'Pattern'" class="generate_checkbox" >
<generalMenu :dataList="printModelList" @setprintModel="setprintModel" :item="printModel" :driver__="driver__.driver" :driverClass="{class1: 'Guide_1_2_4'}"></generalMenu>
<!-- <generalMenu :dataList="sceneList" @setprintModel="setSceneList" :item="scene"></generalMenu> -->
<!-- <div v-if="type_.type2 == 'Printboard'" class="printModel">
<div @click.stop="PrintModel" class="Guide_1_2_4" :class="[driver__.driver?'showEvents':'']">{{ printModel.name }}</div>
@@ -13,7 +13,7 @@
</div> -->
</div>
<div class="input_border" >
<div class="input_box Guide_1_5" :class="[inputShow?'active':'',]">
<div class="input_box Guide_1_5" :class="[inputShow?'active':'',type_.type2 =='Sketchboard'?'Guide_1_9_2':'']">
<div class="input_box_btnBox">
<div class="upload_item">
<div
@@ -55,7 +55,7 @@
@keydown.enter="getgenerate()"
@click="inputFocus()"
/>
<i class="fi fi-br-upload" :title="$t('Generate.uploadTitle')" v-show="!isTextarea && upload.level1Type !== 'Moodboard' && scene?.value != 'Slogan' && scene?.value != 'Logo'">
<i class="fi fi-br-upload" :class="{ Guide_1_2_6:type_.type2 == 'Printboard'}" :title="$t('Generate.uploadTitle')" v-show="!isTextarea && upload.level1Type !== 'Moodboard' && scene?.value != 'Slogan' && scene?.value != 'Logo'">
<a-upload
class="search_upImg"
:capture="null"
@@ -87,7 +87,7 @@
v-model="searchPictureName"
></textarea>
<!-- <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" :class="{Guide_1_2_8:type_.type2 == 'Printboard'}" @click.stop="getgenerate">
{{ $t('Generate.Generate') }}
<!-- <div v-show="isGenerate"><a-spin size="large" /></div> -->
</div>
@@ -100,7 +100,7 @@
<span class="inputShowText" ref="inputShowText"></span>
</div>
<div class="search_keyword" v-if="workspace?.allKeywordsByStyle" v-show="isInputFocus" @click.stop="">
<div class="search_keyword_center">
<div class="search_keyword_center" >
<div class="search_keyword_center_left">
<div v-if="type_.type2 == 'Printboard'" v-for="item in styleRecommend" @click.stop="cliSetKeyword(item)" class="search_keyword_center_item"> {{item}} </div>
<div v-for="item in workspace?.allKeywordsByStyle?.[type_.type2]" @click.stop="cliSetKeyword(item)" class="search_keyword_center_item"> {{item}} </div>
@@ -139,7 +139,7 @@
</div>
</div>
</div> -->
<div class="generage_img Guide_1_6" :style="[isGenerate?'overflow:hidden':'']">
<div class="generage_img Guide_1_6" :class="{Guide_1_13_2:type_.type2 == 'Sketchboard',Guide_1_2_9:type_.type2 == 'Printboard'}" :style="[isGenerate?'overflow:hidden':'']">
<div
class="generage_img_item"
v-for="(item, index) in fileList"
@@ -148,7 +148,7 @@
:class="[item.status != 'Success'?'hideEvents':'',item?.checked?'active':'']"
>
<img v-lazy="item.imgUrl" @click.stop="generageAdd(item)">
<sketchCategory v-if="type_.type2 == 'Sketchboard' || type_.type2 == 'Printboard'" :isSpread="type_.type2 == 'Printboard'" :disignTypeList="sketchCatecoryList" :generateList="fileList" :item="item" :driver__="driver__.driver" :driverClass="{class1: 'Guide_1_13',class2:'Guide_1_13_1'}"></sketchCategory>
<sketchCategory v-if="type_.type2 == 'Sketchboard' || type_.type2 == 'Printboard'" :isSpread="type_.type2 == 'Printboard'" :disignTypeList="sketchCatecoryList" :generateList="fileList" :item="item" :driver__="driver__.driver" :driverClass="{class1: type_.type2 == 'Sketchboard'?'Guide_1_13':'',class2:type_.type2 == 'Sketchboard'?'Guide_1_13_1':''}"></sketchCategory>
<div
class="delete_like_file_block left1"
:class="[driver__.driver?'hideEvents':'',]"
@@ -386,7 +386,8 @@ export default defineComponent({
this.store.commit("addGenerateMaterialFils", data);
// console.log(this.fileList);
let moodboard = this.store.state.UploadFilesModule.moodboardGenerateFiles
if(moodboard.length >= 2 && this.driver__.driver){
let sketch = this.store.state.UploadFilesModule.sketchGenerateFiles
if((moodboard.length >= 2 || sketch.length >= 2) && this.driver__.driver){
driverObj__.moveNext()
}
},
@@ -542,12 +543,14 @@ export default defineComponent({
if((data.length == 0)|| (rv.filter((item:any)=>item.status == 'Invalid').length ==data.length)){
if(rv.filter((item:any)=>item.status == 'Invalid').length ==dataNum){
message.info(this.t('Generate.effectPoor'));
}else{
nextTick().then(()=>{
if(this.driver__.driver){
driverObj__.moveNext()
}
})
}
nextTick().then(()=>{
if(this.driver__.driver){
driverObj__.moveNext()
}
})
this.store.dispatch('getCredits')
clearInterval(this.generateTime)
clearInterval(this.remGenerateTime)

View File

@@ -266,7 +266,6 @@ export default defineComponent({
cropperFileData:{name:'',uid:''}, //裁剪的原始文件数据
currentFileNum:0, //当前上传的文件数
isUpload:false,
captionGeneration:'',
printboardList:computed(()=>{
return useStore().state.UploadFilesModule.printboard
}),
@@ -284,10 +283,12 @@ export default defineComponent({
this.workspace = computed(()=>{
return this.store?.state?.Workspace?.workspace
})
let Generate:any = this.$refs.Generate
if(this.driver__.driver){
this.captionGeneration = 'Elegant floral print for high-fashion attire'
Generate.searchPictureName = 'Elegant floral print for high-fashion attire'
}else{
this.captionGeneration = ''
Generate.searchPictureName = ''
}
},
methods:{

View File

@@ -136,7 +136,7 @@
</div>
<div class="modal_accomplish">
<div class="modal_img">
<div v-for="item,index in sketchboardList" :key="item" class="modal_imgItem Guide_1_2_9" :class="[driver__.driver?'showEvents':'']" >
<div v-for="item,index in sketchboardList" :key="item" class="modal_imgItem" :class="[driver__.driver?'showEvents':'']" >
<img v-lazy="item.imgUrl">
<sketchCategory :disignTypeList="sketchCatecoryList" :generateList="sketchboardList" :isSpread="true" :item="item" :driver__="driver__.driver"></sketchCategory>
<!-- 在sketch 和print暂时关闭like -->
@@ -246,7 +246,6 @@ export default defineComponent({
},
token: "",
uploadUrl: "",
captionGeneration:'',
workspaceCom:{},
isTextarea:false,
isInputFocus:false,
@@ -330,10 +329,11 @@ export default defineComponent({
this.workspaceCom = computed(()=>{
return this.store?.state?.Workspace?.workspace
})
let Generate:any = this.$refs.Generate
if(this.driver__.driver){
this.captionGeneration = 'A detailed sketch of an elegant blouse with a high neck, flowing sleeves, and lace trim, highlighting texture and style.'
Generate.searchPictureName = 'A detailed sketch of an elegant blouse with a high neck, flowing sleeves, and lace trim, highlighting texture and style.'
}else{
this.captionGeneration = ''
Generate.searchPictureName = ''
}
},
methods: {
@@ -443,13 +443,6 @@ export default defineComponent({
}
return (isJpgOrPng && isLt2M) || Upload.LIST_IGNORE;
},
cliSetKeyword(value:any){
let str = ''
if(this.captionGeneration[this.captionGeneration.length-1] != ',' && this.captionGeneration.length != 0){
str = ','
}
this.captionGeneration += str + value
},
deleteFile(item: any) {
if(item?.type_?.type1 == 'generate' || item?.type_?.type1 == 'material'){
item.jsContent1 = this.t('uploadFile.jsContent1',{maxImg:20})

View File

@@ -21,9 +21,9 @@
</div>
<div
class="category_list"
:class="driverClass.class2"
v-show="item.categoryShow"
v-if="!isSpread"
:class="[driver__?'showEvents':'',driverClass.class2]"
>
<div
:class="[
@@ -88,14 +88,14 @@ export default defineComponent({
setup(props:any,{emit}){
let data = ''
let showFileCategory = (file:any)=> {
if(props.isSpread)return
file.categoryShow = true;
nextTick().then(()=>{
if(props.driver__){
driverObj__.moveNext()
}
})
if(props.isSpread)return
file.categoryShow = true;
document.addEventListener("click", hiddenFileCategory);
}
let hiddenFileCategory = () => {
@@ -115,6 +115,7 @@ export default defineComponent({
setSketchLibrary(props.item)
}
if(props.driver__){
driverObj__.moveNext()
}
// this.store.commit("sketchGenerateFiles", this.fileList);

View File

@@ -566,12 +566,12 @@ export default {
guide11:"点击此处布局您的情绪版。",
guide12:"点击此处生成印花图片。",
guide13:"点击此处生成印花图片。",
guide14:"我们为生成图片提供三个输入选项:仅图片、仅文本和图片文本。",
guide15:"选择此选项,我们将使用您上传的图片和输入的文本生成四张印花图片。",
guide16:"在此处选择生成模型;不同的模型将以不同的风格生成图片。",
// guide14:"我们为生成图片提供三个输入选项:仅图片、仅文本和图片文本。",
// guide15:"选择此选项,我们将使用您上传的图片和输入的文本生成四张印花图片。",
// guide16:"在此处选择生成模型;不同的模型将以不同的风格生成图片。",
guide17:"在此处选择生成模型;不同的模型将以不同的风格生成图片。",
guide18:"在此处上传输入图片。",
guide19:"点击此图片进行选择。",
// guide19:"点击此图片进行选择。",
guide20:"输入关于您希望创建的印花的关键词,然后点击<strong>生成</strong>按钮。",
guide21:"选择您最喜欢的生成印花。",
guide22:"点击此处进行下一步。",
@@ -581,7 +581,7 @@ export default {
guide26:"从这些颜色块中选择您想要的颜色。",
guide27:"点击此处进行下一步。",
guide28:"点击此处生成服装草图。",
guide29:"使用仅文本选项进行生成。",
// guide29:"使用仅文本选项进行生成。",
guide30:"输入关于您希望创建的草图的关键词,然后点击<strong>生成</strong>按钮。",
guide31:"点击此处为生成的草图选择一个类别。",
guide32:"为草图选择正确的类别。",

View File

@@ -567,8 +567,8 @@ export default {
guide11:"Click here to layout your moodboard.",
guide12:"Click here for next step.",
guide13:"Click here to generate print images.",
guide14:"We provide three input options for generating images: Image Only, Text Only, and Text-Image.",
guide15:"Select this option and we will generate four print images using both the picture you upload and the text you enter.",
// guide14:"We provide three input options for generating images: Image Only, Text Only, and Text-Image.",
// guide15:"Select this option and we will generate four print images using both the picture you upload and the text you enter.",
guide16:"Choose a generation model here; different models will generate images in various styles.",
guide17:"Choose a generation model here; different models will generate images in various styles.",
guide18:"Upload the input picture here.",

View File

@@ -74,12 +74,12 @@ function createDriver(){
{ element: '.Guide_1_8', popover: { title: '', description: i18n.guide12 } },
//以上moodboard
{ element: '.Guide_1_2_1', popover: { title: '', description: i18n.guide13 } },
{ element: '.Guide_1_2_2', popover: { title: '', description: i18n.guide14 } },
{ element: '.Guide_1_2_3', popover: { title: '', description: i18n.guide15 } },
// { element: '.Guide_1_2_2', popover: { title: '', description: i18n.guide14 } },
// { element: '.Guide_1_2_3', popover: { title: '', description: i18n.guide15 } },
{ element: '.Guide_1_2_4', popover: { title: '', description: i18n.guide16 } },
{ element: '.Guide_1_2_5', popover: { title: '', description: i18n.guide17 } },
// { element: '.Guide_1_2_5', popover: { title: '', description: i18n.guide17 } },
{ element: '.Guide_1_2_6', popover: { title: '', description: i18n.guide18 } },
{ element: '.Guide_1_2_7', popover: { title: '', description: i18n.guide19 } },
// { element: '.Guide_1_2_7', popover: { title: '', description: i18n.guide19 } },
{ element: '.Guide_1_2_8', popover: { title: '', description: i18n.guide20 } },
{ element: '.Guide_1_2_9', popover: { title: '', description: i18n.guide21 } },
{ element: '.Guide_1_8', popover: { title: '', description: i18n.guide22 } },
@@ -89,7 +89,7 @@ function createDriver(){
{ element: '.Guide_1_11_2', popover: { title: '', description: i18n.guide26 } },
{ element: '.Guide_1_8', popover: { title: '', description: i18n.guide27 } },
{ element: '.Guide_1_9', popover: { title: '', description: i18n.guide28 } },
{ element: '.Guide_1_9_1', popover: { title: '', description: i18n.guide29 } },
// { element: '.Guide_1_9_1', popover: { title: '', description: i18n.guide29 } },
{ element: '.Guide_1_9_2', popover: { title: '', description: i18n.guide30 } },
{ element: '.Guide_1_13', popover: { title: '', description: i18n.guide31 } },
{ element: '.Guide_1_13_1', popover: { title: '', description: i18n.guide32 } },
@@ -119,7 +119,7 @@ function createDriver(){
showButtons:false,
stagePadding:10,//切口到元素的距离
stageRadius:5,//切口圆弧度
allowKeyboardControl:false,//控制是否可以键盘控制下一步
allowKeyboardControl:true,//控制是否可以键盘控制下一步
disableActiveInteraction:false,//是否禁用显示元素的交互
overlayOpacity:.4,
overlay: true,
@@ -137,9 +137,10 @@ function createDriver(){
driver : true,
stepsLenth:stepsLenth,
}
console.log(options.state.activeIndex);
store?.commit("setGuide", data);
if(options.state.activeIndex == 0 ||
options.state.activeIndex == 39
options.state.activeIndex == 34
){
popover.wrapper.style.display = 'none'
}else{
@@ -150,7 +151,7 @@ function createDriver(){
// options.config.stagePadding = 10
}else if(options.state.activeIndex == 6 || options.state.activeIndex == 7){
popover.wrapper.style.transform = 'translateY(4rem)'
}else if(options.state.activeIndex == 46){
}else if(options.state.activeIndex == 41){
popover.wrapper.style.transform = 'translateY(-6rem)'
}else{
popover.wrapper.style.transform = 'initial'
@@ -228,7 +229,7 @@ function removeDiv(element){
}
const openGuide = () =>{
return//暂时关闭
return
let isTest = JSON.parse(getCookie('isTest'))
let isBeginner = JSON.parse(getCookie('isBeginner'))
// console.log(isBeginner);

View File

@@ -85,7 +85,7 @@
design, index
) in designCollectionList" :key="design?.designItemId">
<div class="content_img_flex"
:class="[driver__.driver?driver__.index == 37?'hideEvents':'':'']"
:class="[driver__.driver?driver__.index == 32?'hideEvents':'':'']"
@click="
designDetail(
design,
@@ -96,7 +96,7 @@
">
<img class="content_img" :src="design.designOutfitUrl" />
</div>
<div class="icon iconfont icon-jushoucang icon_like" :class="[driver__.driver?index == 0?driver__.index == 37?'Guide_active showEvents':'hideEvents':'hideEvents':'']" @click.stop="
<div class="icon iconfont icon-jushoucang icon_like" :class="[driver__.driver?index == 0?driver__.index == 32?'Guide_active showEvents':'hideEvents':'hideEvents':'']" @click.stop="
likeDesignCollection(
design,
index

View File

@@ -99,6 +99,7 @@ import { ElCascader } from 'element-plus'
import { useI18n } from 'vue-i18n';
import setLabel from '@/component/LibraryPage/setLabel.vue';
import searchLabel from '@/component/LibraryPage/searchLabel.vue';
import { useStore } from "vuex";
export default defineComponent({
components: {
@@ -110,6 +111,7 @@ export default defineComponent({
searchLabel,
},
setup() {
const store = useStore();
let rangePickerValue:any = ref([])
let renameData:any = ref({}) //修改名字选中的数据
let isShowMark:any = ref(false)
@@ -171,6 +173,7 @@ export default defineComponent({
}
provide('type',type)
return {
store,
rangePickerValue,
columns,
collectionList,
@@ -310,6 +313,19 @@ export default defineComponent({
(rv: any) => {
message.success(this.t('HistoryPage.jsContent1'))
this.collectionList.splice(index,1)
// let userGroupId: any = computed(() => {
// return
// });
if(record.id == this.store.state.HomeStoreModule.userGroupId){
this.store.commit('deleteUserGroupId')
this.store.commit("setLikeDesignCollectionList", []);
this.store.commit("clearAllData");
this.store.commit("clearAllCollection");
this.store.commit("setAllBoardDataChoose",{});
this.store.commit("clearShowSketchboard",{});
}
console.log(this.store.state.HomeStoreModule.userGroupId,record);
}
);
}