This commit is contained in:
X1627315083
2025-07-24 09:26:27 +08:00
parent 53b4a15b92
commit 1dfb5a9d8f
12 changed files with 190 additions and 53 deletions

View File

@@ -17,7 +17,7 @@ const imageData = [
name: "风景照片", name: "风景照片",
type: "风景", type: "风景",
imgList: [ imgList: [
{ url: "/src/assets/work/1.PNG", name: "山景" }, { url: "https://www.minio-api.aida.com.hk/aida-users/83/printboard/7a0cccfc-1e3c-4c38-af65-d6179f21a267.png?response-content-type=image%2Fpng&response-content-disposition=inline&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=admin%2F20250723%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20250723T025046Z&X-Amz-Expires=86400&X-Amz-SignedHeaders=host&X-Amz-Signature=3612d6c168207bebdae2fa7c7c2c86ea0f48358b99b8b41dec9e2ff15e197e15", name: "山景" },
{ url: "/src/assets/work/2.PNG", name: "海景" }, { url: "/src/assets/work/2.PNG", name: "海景" },
], ],
}, },
@@ -264,7 +264,8 @@ body {
} }
.app-container { .app-container {
height: 100vh; height: 100%;
// height: 100vh;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
} }

View File

@@ -201,7 +201,7 @@
<a-spin size="large" /> <a-spin size="large" />
</div> </div>
</div> </div>
<scaleImage ref="scaleImage" :isCanvas="type_.type2 == 'Sketchboard'" :sex="workspace.sex"></scaleImage> <scaleImage ref="scaleImage" :imgType="type_.type2" :sex="workspace.sex"></scaleImage>
<createSlogan ref="createSlogan" @setSloganData="setSloganData"></createSlogan> <createSlogan ref="createSlogan" @setSloganData="setSloganData"></createSlogan>
<UpgradePlan ref="UpgradePlan"></UpgradePlan> <UpgradePlan ref="UpgradePlan"></UpgradePlan>
</div> </div>

View File

@@ -135,7 +135,7 @@
</div> </div>
<div class="scaleImage_content_imgBox" :class="{active:isComparison}"> <div class="scaleImage_content_imgBox" :class="{active:isComparison}">
<img v-if="isComparison" :src="scaleImageList[scaleImageIndex]?.sourceUrl"> <img v-if="isComparison" :src="scaleImageList[scaleImageIndex]?.sourceUrl">
<generalMiniCanvas v-if="isCanvas" :imgUrl="scaleImageList[scaleImageIndex]?.imgUrl || scaleImageList[scaleImageIndex]?.url" @submitBase64Data="submitBase64Data"></generalMiniCanvas> <generalMiniCanvas v-if="false" :imgUrl="scaleImageList[scaleImageIndex]?.imgUrl || scaleImageList[scaleImageIndex]?.url" @submitBase64Data="submitBase64Data"></generalMiniCanvas>
<img v-else :style="{'max-width':maxWidth}" :src="scaleImageList[scaleImageIndex]?.imgUrl || scaleImageList[scaleImageIndex]?.url"> <img v-else :style="{'max-width':maxWidth}" :src="scaleImageList[scaleImageIndex]?.imgUrl || scaleImageList[scaleImageIndex]?.url">
<!-- <div class="img_operate_block" v-if="isLike"> <!-- <div class="img_operate_block" v-if="isLike">
@@ -187,9 +187,9 @@ export default defineComponent({
upload:'', upload:'',
}, },
}, },
isCanvas:{ imgType:{
type:Boolean, type:String,
default:false, default:'',
}, },
sex:{ sex:{
type:String, type:String,
@@ -445,6 +445,8 @@ export default defineComponent({
"gender": props.sex, "gender": props.sex,
"originalId":scaleImageList.value[scaleImageIndex.value]?.id, "originalId":scaleImageList.value[scaleImageIndex.value]?.id,
"isOverride":isOverlay, "isOverride":isOverlay,
originalIdSource:props.imgType,
type:props.imgType,
} }
Https.axiosPost(Https.httpUrls.modifySketch, data).then( Https.axiosPost(Https.httpUrls.modifySketch, data).then(
(rv) => { (rv) => {
@@ -601,7 +603,7 @@ export default defineComponent({
setImageIndex(index:any){ setImageIndex(index:any){
if(this.isNext)return if(this.isNext)return
let this_ = this let this_ = this
if(this.isCanvas){ if(this.imgType == 'Printboard' || this.imgType == 'Sketchboard'){
this.isNext = true this.isNext = true
new Promise((resolve,reject)=>{ new Promise((resolve,reject)=>{
Modal.confirm({ Modal.confirm({

View File

@@ -45,7 +45,7 @@
<div class="collectionBox"> <div class="collectionBox">
<MoodboardUpload ref="moodBoard" v-show="openType == 'moodBoard' || collectionStep == 1"></MoodboardUpload> <MoodboardUpload ref="moodBoard" v-show="openType == 'moodBoard' || collectionStep == 1"></MoodboardUpload>
<PrintboardUpload ref="printBoard" v-show="openType == 'printBoard' || collectionStep == 2"></PrintboardUpload> <PrintboardUpload ref="printBoard" v-show="openType == 'printBoard' || collectionStep == 2"></PrintboardUpload>
<ColorboardUpload ref="colorBoard" v-show="openType == 'colorBoard' || collectionStep == 3"></ColorboardUpload> <ColorboardUpload ref="colorBoard" v-show="openType == 'colorBoard' || collectionStep == 3" :collectionStep="collectionStep"></ColorboardUpload>
<mannequin ref="mannequin" v-show="openType == 'mannequin' || collectionStep == 4"></mannequin> <mannequin ref="mannequin" v-show="openType == 'mannequin' || collectionStep == 4"></mannequin>
<SketchboardUpload ref="sketchBoard" v-show="openType == 'sketchBoard' || collectionStep == 5"></SketchboardUpload> <SketchboardUpload ref="sketchBoard" v-show="openType == 'sketchBoard' || collectionStep == 5"></SketchboardUpload>
</div> </div>

View File

@@ -254,6 +254,7 @@ export default defineComponent({
collectionStep:{ collectionStep:{
handler(newVal,oldVal){ handler(newVal,oldVal){
if(newVal != 3)return if(newVal != 3)return
nextTick(()=>{
const backIcon = document.createElement('div'); const backIcon = document.createElement('div');
if(backIcon.classList.contains('vc-sketch-color-wrap'))return if(backIcon.classList.contains('vc-sketch-color-wrap'))return
backIcon.classList.add('vc-sketch-color-wrap') backIcon.classList.add('vc-sketch-color-wrap')
@@ -276,7 +277,9 @@ export default defineComponent({
message.info(this.t('ColorboardUpload.jsContent1')) message.info(this.t('ColorboardUpload.jsContent1'))
} }
}) })
} })
},
immediate: true,
}, },
selectColor:{ selectColor:{
handler(newVal,oldVal){ handler(newVal,oldVal){

View File

@@ -152,7 +152,7 @@
</label> </label>
</div> </div>
<div class="moreBox" @click.stop> <div class="moreBox" @click.stop>
<more level1Type="Printboard" :moreList="['edit','down','enlargement','delete']" :item="item" :index="index" @deleteFile="deleteFile" @scaleImage="scaleImage"></more> <more level1Type="Printboard" :moreList="['edit','down','enlargement','delete']" :list="printboardList" :item="item" :index="index" @deleteFile="deleteFile" @scaleImage="scaleImage"></more>
</div> </div>
</div> </div>
</div> </div>
@@ -927,14 +927,26 @@ export default defineComponent({
position: relative; position: relative;
cursor: pointer; cursor: pointer;
text-align: center; text-align: center;
&:hover{
.moreBox,.pin_block{
opacity: 1;
}
:deep(.operate_file_block){
opacity: 1;
}
}
:deep(.operate_file_block){
opacity: 0;
transition: all 0.2s ease-in-out;
}
.moreBox{ .moreBox{
position: absolute; position: absolute;
right: 1rem; right: 1rem;
top: 1rem; top: 1rem;
// opacity: 0; opacity: 0;
width: 3rem; width: 3rem;
height: 3rem; height: 3rem;
transition: all 0.3s ease-in-out; transition: all 0.2s ease-in-out;
} }
&.modal_imgItem:nth-child(even) { &.modal_imgItem:nth-child(even) {
} }
@@ -953,6 +965,8 @@ export default defineComponent({
border-radius: 3rem; border-radius: 3rem;
background: rgba(0,0,0,.7); background: rgba(0,0,0,.7);
color: #fff; color: #fff;
opacity: 0;
transition: all 0.2s ease-in-out;
>label{ >label{
width: 100%; width: 100%;
height: 100%; height: 100%;
@@ -978,8 +992,10 @@ export default defineComponent({
} }
} }
span{ span{
font-size: 1.4rem; font-size: 1.2rem;
font-weight: 600; font-weight: 600;
text-overflow: ellipsis;
white-space: nowrap;
} }
} }
&.active{ &.active{

View File

@@ -879,14 +879,26 @@ export default defineComponent({
position: relative; position: relative;
cursor: pointer; cursor: pointer;
text-align: center; text-align: center;
&:hover{
.moreBox,.pin_block{
opacity: 1;
}
:deep(.operate_file_block){
opacity: 1;
}
}
:deep(.operate_file_block){
opacity: 0;
transition: all 0.2s ease-in-out;
}
.moreBox{ .moreBox{
position: absolute; position: absolute;
right: 1rem; right: 1rem;
top: 1rem; top: 1rem;
// opacity: 0; opacity: 0;
width: 3rem; width: 3rem;
height: 3rem; height: 3rem;
transition: all 0.3s ease-in-out; transition: all 0.2s ease-in-out;
} }
&.modal_imgItem:nth-child(even) { &.modal_imgItem:nth-child(even) {
margin-right: 0; margin-right: 0;
@@ -909,6 +921,8 @@ export default defineComponent({
border-radius: 3rem; border-radius: 3rem;
background: rgba(0,0,0,.7); background: rgba(0,0,0,.7);
color: #fff; color: #fff;
opacity: 0;
transition: all 0.2s ease-in-out;
>label{ >label{
width: 100%; width: 100%;
height: 100%; height: 100%;

View File

@@ -3,7 +3,8 @@
<i class="fi fi-br-menu-dots-vertical" @click.stop="openList"></i> <i class="fi fi-br-menu-dots-vertical" @click.stop="openList"></i>
<div class="more_box" v-show="show"> <div class="more_box" v-show="show">
<div class="item" v-if="moreList.includes('edit')" @click.stop="setMore('edit')"> <div class="item" v-if="moreList.includes('edit')" @click.stop="setMore('edit')">
<i class="fi fi-rr-edit"></i> <!-- <i class="fi fi-rr-edit"></i> -->
<i class="fi fi-br-pen-swirl"></i>
<div class="text">{{ $t('more.edit') }}</div> <div class="text">{{ $t('more.edit') }}</div>
</div> </div>
<div class="item" v-if="moreList.includes('enlargement')" @click.stop="setMore('enlargement')"> <div class="item" v-if="moreList.includes('enlargement')" @click.stop="setMore('enlargement')">
@@ -30,6 +31,7 @@ import { Https } from "@/tool/https";
import { useStore } from "vuex"; import { useStore } from "vuex";
import { useI18n } from 'vue-i18n' import { useI18n } from 'vue-i18n'
import { downloadIamge } from "@/tool/util"; import { downloadIamge } from "@/tool/util";
import { Modal } from "ant-design-vue";
import modalCanvas from "@/component/modules/generalModalCanvas.vue"; import modalCanvas from "@/component/modules/generalModalCanvas.vue";
export default defineComponent({ export default defineComponent({
@@ -38,6 +40,7 @@ export default defineComponent({
}, },
props:{ props:{
moreList:{type:Array,default:()=>[]}, moreList:{type:Array,default:()=>[]},
list:{type:Array,default:()=>[]},
item:{type:Object,default:()=>{}}, item:{type:Object,default:()=>{}},
index:{type:Number,default:0}, index:{type:Number,default:0},
level1Type:{type:String,default:''}, level1Type:{type:String,default:''},
@@ -45,6 +48,7 @@ export default defineComponent({
emits:['deleteFile','scaleImage'], emits:['deleteFile','scaleImage'],
setup(props,{emit}) { setup(props,{emit}) {
const store = useStore(); const store = useStore();
const {t} = useI18n()
const data = reactive({ const data = reactive({
show:false show:false
}) })
@@ -73,9 +77,50 @@ export default defineComponent({
} }
setShow() setShow()
} }
const saveBase64Img = (rv)=>{ const saveBase64Img = async (rv)=>{
console.log(rv) let isOverlay = false
console.log(props.item) await new Promise<void>((resolve, reject) => {
Modal.confirm({
title: t('scaleImage.overlayOrNot'),
icon: createVNode(ExclamationCircleOutlined),
okText: 'Yes',
cancelText: 'No',
mask:false,
centered:true,
onOk() {
resolve()
isOverlay = true
},
onCancel(){
isOverlay = false
resolve()
}
});
})
let data = {
"base64": rv,
"category": props.item.categoryValue,
"gender": store.state.Workspace.probjects.sex,
"originalId":props.item.resData.id,
"isOverride":isOverlay,
originalIdSource:props.item.resData.designType,
type:props.level1Type,
}
Https.axiosPost(Https.httpUrls.modifySketch, data).then(
(rv) => {
rv.imgUrl = rv.url
rv.status = 'Success'
rv.resData = {
id:rv.id,
designType:props.item.resData.designType,
}
rv.category = props.item?.category
rv.categoryValue = props.item?.categoryValue
isOverlay?(props.list[props.index] = rv):(props.list.unshift(rv))
}
).catch(res=>{
});
} }
return{ return{
...toRefs(dataDom), ...toRefs(dataDom),

View File

@@ -58,6 +58,8 @@
<ExistsImageList :list="canvasSelectList" @select="handleImageSelect" /> <ExistsImageList :list="canvasSelectList" @select="handleImageSelect" />
</template> </template>
</editCanvas> </editCanvas>
<!-- <canvasAA ></canvasAA> -->
</div> </div>
<div class="btn"> <div class="btn">
<div class="gallery_btn" @click="saveCanvas">Save</div> <div class="gallery_btn" @click="saveCanvas">Save</div>
@@ -86,10 +88,12 @@ import editCanvas from "@/component/Canvas/CanvasEditor/index.vue";
import ExistsImageList from "@/component/Canvas/ExistsImageList/index.vue"; import ExistsImageList from "@/component/Canvas/ExistsImageList/index.vue";
import JSZip, { forEach } from "jszip"; import JSZip, { forEach } from "jszip";
import publish from "@/component/WorksPage/publish.vue"; import publish from "@/component/WorksPage/publish.vue";
import canvasAA from '@/component/Canvas/canvasExample.vue'
export default defineComponent({ export default defineComponent({
components:{ components:{
toProductRelight,poseTransfer,editCanvas,ExistsImageList,publish toProductRelight,poseTransfer,editCanvas,ExistsImageList,publish,canvasAA
}, },
props:{ props:{
source:{ source:{
@@ -268,6 +272,7 @@ export default defineComponent({
const saveCanvas = ()=>{ const saveCanvas = ()=>{
let canvasJSON = dataDom.editCanvas.getJSON() let canvasJSON = dataDom.editCanvas.getJSON()
let canvasData = JSON.parse(canvasJSON) let canvasData = JSON.parse(canvasJSON)
if(!canvasData)return if(!canvasData)return
canvasData.canvas.objects.forEach((objectsItem:any) => { canvasData.canvas.objects.forEach((objectsItem:any) => {
if(objectsItem.type == 'image')objectsItem.minioUrl = getMinioUrl(objectsItem.src) if(objectsItem.type == 'image')objectsItem.minioUrl = getMinioUrl(objectsItem.src)
@@ -306,7 +311,7 @@ export default defineComponent({
let nameTail = imgItem.url?.split(".").pop().split("?").shift(); let nameTail = imgItem.url?.split(".").pop().split("?").shift();
img.push({ img.push({
imgUrl:imgItem.url, imgUrl:imgItem.url,
name:`${item.type}${index}.${nameTail}` name:`${item.type}${index}.${nameTail?nameTail:'png'}`
}) })
}) })
} }
@@ -373,9 +378,7 @@ export default defineComponent({
} }
const share = async ()=>{ const share = async ()=>{
var imageDataURL = ''; var imageDataURL = '';
await dataDom.editCanvas.exportImage({isContainBg:true,isContainFixed:false}).then((rv:any)=>{ imageDataURL = await dataDom.editCanvas.exportImage({isContainBg:true,isContainFixed:false})
imageDataURL = rv
})
console.log(imageDataURL) console.log(imageDataURL)
let value = { let value = {
imgUrl:imageDataURL, imgUrl:imageDataURL,

View File

@@ -101,7 +101,6 @@ axios.interceptors.response.use((res) =>{
} }
}, function(error) { }, function(error) {
if(error?.response?.status === 401 && router.currentRoute._value.name != 'setIdentification'){//如果是记录浏览器页面就不跳转login if(error?.response?.status === 401 && router.currentRoute._value.name != 'setIdentification'){//如果是记录浏览器页面就不跳转login
return
clonAllCookie() clonAllCookie()
if(!isLoginTime){ if(!isLoginTime){
isLoginTime = true isLoginTime = true

View File

@@ -225,6 +225,9 @@
<div class="img_operate_block" :title="t('LibraryPage.Delete')" @click.stop="deleteSinglePic(img,index)"> <div class="img_operate_block" :title="t('LibraryPage.Delete')" @click.stop="deleteSinglePic(img,index)">
<span class="icon iconfont icon-shanchu operate_icon"></span> <span class="icon iconfont icon-shanchu operate_icon"></span>
</div> </div>
<div v-if="selectCode == 'Sketchboard' || selectCode == 'Printboard'" class="img_operate_block" @click.stop="editImg(img,index)">
<i class="fi fi-br-pen-swirl"></i>
</div>
</div> </div>
</div> </div>
</div> </div>
@@ -464,6 +467,7 @@
<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':'']"
:draggable="!isGenerate[selectCode]" @dragstart="startDrag($event,index)" @dragover.prevent @drop="drop($event,index)"> :draggable="!isGenerate[selectCode]" @dragstart="startDrag($event,index)" @dragover.prevent @drop="drop($event,index)">
<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-if="img?.imgUrl" :class="['content_img', ['Moodboard','Printboard'].indexOf(selectCode) > -1 ? 'board_content_img' :'']" v-lazy="img.imgUrl"> <img v-if="img?.imgUrl" :class="['content_img', ['Moodboard','Printboard'].indexOf(selectCode) > -1 ? 'board_content_img' :'']" v-lazy="img.imgUrl">
<div v-else class="loading"> <div v-else class="loading">
@@ -483,6 +487,10 @@
<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>
<i v-else class="fi fi-sr-heart operate_icon" :adminLike="!!img.like" @click.stop="likeFile(img,'noLike')"></i> <i v-else class="fi fi-sr-heart operate_icon" :adminLike="!!img.like" @click.stop="likeFile(img,'noLike')"></i>
</div> </div>
<div v-if="selectCode == 'Sketchboard' || selectCode == 'Printboard'" class="img_operate_block" @click.stop="editImg(img,index)">
<i class="fi fi-br-pen-swirl"></i>
</div>
</div> </div>
</div> </div>
<sketchCategory v-show="selectCode == 'Sketchboard' && img?.imgUrl" :disignTypeList="designTypeList[selectCode]" :generateList="generateList['Sketchboard']" :item="img"></sketchCategory> <sketchCategory v-show="selectCode == 'Sketchboard' && img?.imgUrl" :disignTypeList="designTypeList[selectCode]" :generateList="generateList['Sketchboard']" :item="img"></sketchCategory>
@@ -502,13 +510,15 @@
</div> </div>
</div> </div>
<searchLabel ref="searchLabel"></searchLabel> <searchLabel ref="searchLabel"></searchLabel>
<scaleImage ref="scaleImage" :isCanvas="selectCode == 'Sketchboard'" :sex="workspace.sex"></scaleImage> <scaleImage ref="scaleImage" :imgType="selectCode" :sex="workspace.sex"></scaleImage>
<!-- <ModelPlacement ref="ModelPlacement" @submitModelPlacement="getLibraryList"></ModelPlacement> --> <!-- <ModelPlacement ref="ModelPlacement" @submitModelPlacement="getLibraryList"></ModelPlacement> -->
<setLabel ref="setLabel"></setLabel> <setLabel ref="setLabel"></setLabel>
<createSlogan ref="createSlogan" @setSloganData="setSloganData"></createSlogan> <createSlogan ref="createSlogan" @setSloganData="setSloganData"></createSlogan>
<UpgradePlan ref="UpgradePlan"></UpgradePlan> <UpgradePlan ref="UpgradePlan"></UpgradePlan>
<createBrand ref="createBrand" @submitBrandAdd="getBrandDNAList"></createBrand> <createBrand ref="createBrand" @submitBrandAdd="getBrandDNAList"></createBrand>
<modalCanvas ref="modalCanvas" @setSloganData="saveBase64Img"></modalCanvas>
<!-- <RobotAssist></RobotAssist> --> <!-- <RobotAssist></RobotAssist> -->
</div> </div>
@@ -521,6 +531,7 @@ import setLabel from '@/component/LibraryPage/setLabel.vue';
import brandDetail from '@/component/LibraryPage/brandDetail.vue'; import brandDetail from '@/component/LibraryPage/brandDetail.vue';
import createBrand from '@/component/LibraryPage/createBrand.vue'; import createBrand from '@/component/LibraryPage/createBrand.vue';
import searchLabel from '@/component/LibraryPage/searchLabel.vue'; import searchLabel from '@/component/LibraryPage/searchLabel.vue';
import modalCanvas from "@/component/modules/generalModalCanvas.vue";
// import RobotAssist from "@/component/HomePage/RobotAssist.vue"; // import RobotAssist from "@/component/HomePage/RobotAssist.vue";
import { Modal,message,Upload,CascaderProps } from 'ant-design-vue'; import { Modal,message,Upload,CascaderProps } from 'ant-design-vue';
@@ -552,6 +563,7 @@ export default defineComponent({
generalMenu, generalMenu,
UpgradePlan, UpgradePlan,
mannequinEdit, mannequinEdit,
modalCanvas,
}, },
props:{ props:{
}, },
@@ -595,12 +607,14 @@ export default defineComponent({
const dataDom = reactive({ const dataDom = reactive({
createBrand:null as any, createBrand:null as any,
brandDetail:null as any, brandDetail:null as any,
modalCanvas:null as any,
}) })
const pageData = reactive({ const pageData = reactive({
isBrandDetail:false, isBrandDetail:false,
brandDNAList:[] as any, brandDNAList:[] as any,
ageGroup:'', ageGroup:'',
ageGroupList:computed(()=>store.state.UserHabit.ageGroup), ageGroupList:computed(()=>store.state.UserHabit.ageGroup),
editIndex:-1,
}) })
let designTypeList:any = ref({ let designTypeList:any = ref({
Sketchboard:positionType, Sketchboard:positionType,
@@ -845,7 +859,42 @@ export default defineComponent({
const addBrand = ()=>{ const addBrand = ()=>{
dataDom.createBrand.openAddBrand() dataDom.createBrand.openAddBrand()
} }
const editImg = (item:any,index:number)=>{
console.log(item)
pageData.editIndex = index
dataDom.modalCanvas.init(item,'')
// imgList
}
const saveBase64Img = (rv)=>{
let item = imgList.value[pageData.editIndex]
if(uploadGenerate.value !='Upload'){
item = generateList.value[selectCode.value]
item.designType = 'Generate'
item.level1Type = selectCode.value
return
}
let data = {
"base64": rv,
"category": item.level2Type,
"gender": sex.value,
"originalId":item.id,
"isOverride":true,
originalIdSource:item.designType,
type:item.level1Type,
}
Https.axiosPost(Https.httpUrls.modifySketch, data).then(
(rv) => {
// rv.imgUrl = rv.url
// rv.status = 'Success'
// rv.designType = item.designType
// rv.category = props.categoryValue
// rv.categoryValue = props.item?.categoryValue
// props.list[props.index] = rv
item.url = rv.url
}
).catch(res=>{
});
}
return { return {
...toRefs(dataDom), ...toRefs(dataDom),
...toRefs(pageData), ...toRefs(pageData),
@@ -907,6 +956,8 @@ export default defineComponent({
setSpeed, setSpeed,
openBrandDetail, openBrandDetail,
addBrand, addBrand,
editImg,
saveBase64Img,
} }
}, },
data(this_) { data(this_) {

View File

@@ -25,7 +25,7 @@
AiDA, a first-to-market technology that empowers fashion designers, based on their creative inspirations, to work with AI to create original designs. AiDA, a first-to-market technology that empowers fashion designers, based on their creative inspirations, to work with AI to create original designs.
</div> </div>
</div> </div>
<div class="loginBox"> <div class="loginBox" :class="{'active':loginType}">
<div class="selectType" v-show="!loginType"> <div class="selectType" v-show="!loginType">
<div class="text">Continue with one of these:</div> <div class="text">Continue with one of these:</div>
<div class="typeList"> <div class="typeList">
@@ -33,11 +33,11 @@
Individual Individual
</div> </div>
<div class="gallery_btn" @click="setLoginType('school')"> <div class="gallery_btn" @click="setLoginType('school')">
Enterprise
</div>
<div class="gallery_btn" @click="setLoginType('enterprise')">
Academic Academic
</div> </div>
<!-- <div class="gallery_btn" @click="setLoginType('enterprise')">
Enterprise
</div> -->
</div> </div>
</div> </div>
<div class="login" v-show="loginType"> <div class="login" v-show="loginType">
@@ -220,6 +220,9 @@ export default defineComponent({
> .loginBox { > .loginBox {
width: 44rem; width: 44rem;
margin-top: 7rem; margin-top: 7rem;
&.active{
width: 53rem;
}
> .selectType { > .selectType {
width: 100%; width: 100%;
text-align: center; text-align: center;