布局修改 部分bug修复
This commit is contained in:
@@ -16,7 +16,7 @@
|
||||
>
|
||||
<div class="generalModel_btn">
|
||||
<div class="generalModel_closeIcon" @click.stop="cleardata()">
|
||||
<svg width="46" height="46" viewBox="0 0 46 46" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<svg width="100%" height="100%" viewBox="0 0 46 46" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="23" cy="23" r="23" fill="white" fill-opacity="0.3"/>
|
||||
<rect x="32.5063" y="12" width="3" height="29" rx="1.5" transform="rotate(45 32.5063 12)" fill="white"/>
|
||||
<rect x="34.6274" y="32.5059" width="3" height="29" rx="1.5" transform="rotate(135 34.6274 32.5059)" fill="white"/>
|
||||
|
||||
@@ -943,7 +943,7 @@ export default defineComponent({
|
||||
position: absolute;
|
||||
right: 1rem;
|
||||
top: 1rem;
|
||||
opacity: 0;
|
||||
// opacity: 0;
|
||||
width: 3rem;
|
||||
height: 3rem;
|
||||
transition: all 0.2s ease-in-out;
|
||||
|
||||
@@ -895,7 +895,7 @@ export default defineComponent({
|
||||
position: absolute;
|
||||
right: 1rem;
|
||||
top: 1rem;
|
||||
opacity: 0;
|
||||
// opacity: 0;
|
||||
width: 3rem;
|
||||
height: 3rem;
|
||||
transition: all 0.2s ease-in-out;
|
||||
|
||||
@@ -107,17 +107,26 @@ export default defineComponent({
|
||||
originalIdSource:props.item.resData.designType,
|
||||
type:props.level1Type,
|
||||
}
|
||||
console.log(data)
|
||||
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.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
|
||||
if(isOverlay){
|
||||
props.list[props.index].imgUrl = rv.url
|
||||
props.list[props.index].resData = {
|
||||
id:rv.id,
|
||||
designType:props.item.resData.designType,
|
||||
}
|
||||
}else{
|
||||
props.list.unshift(rv)
|
||||
}
|
||||
rv.category = props.item?.category
|
||||
rv.categoryValue = props.item?.categoryValue
|
||||
isOverlay?(props.list[props.index] = rv):(props.list.unshift(rv))
|
||||
}
|
||||
).catch(res=>{
|
||||
});
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
>
|
||||
<div class="generalModel_btn">
|
||||
<div class="generalModel_closeIcon" @click.stop="cancelDsign()">
|
||||
<svg width="46" height="46" viewBox="0 0 46 46" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<svg width="100%" height="100%" viewBox="0 0 46 46" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="23" cy="23" r="23" fill="white" fill-opacity="0.3"/>
|
||||
<rect x="32.5063" y="12" width="3" height="29" rx="1.5" transform="rotate(45 32.5063 12)" fill="white"/>
|
||||
<rect x="34.6274" y="32.5059" width="3" height="29" rx="1.5" transform="rotate(135 34.6274 32.5059)" fill="white"/>
|
||||
@@ -259,11 +259,11 @@ setup(props:any,{emit}) {
|
||||
poseTransfer:[
|
||||
{
|
||||
title:'',
|
||||
label:t('speedList.High'),
|
||||
label:t('speedList.toproductBasic'),
|
||||
value:'',
|
||||
},{
|
||||
title:'',
|
||||
label:t('speedList.wx'),
|
||||
label:t('speedList.toproductFlus'),
|
||||
value:'wx',
|
||||
},
|
||||
],
|
||||
@@ -316,6 +316,7 @@ setup(props:any,{emit}) {
|
||||
let remPrductimgTime:any = null
|
||||
let prductimgTime:any = null
|
||||
const getData = ()=>{
|
||||
console.log(productimg.scaleImageList[productimg.scaleImageIndex])
|
||||
let obj = null as any
|
||||
if(productimg.scaleImageList[productimg.scaleImageIndex]?.resultType == 'ToProductImage'){
|
||||
obj = {
|
||||
@@ -420,11 +421,17 @@ setup(props:any,{emit}) {
|
||||
})
|
||||
productimg.generateCourse = {
|
||||
...rv[0],
|
||||
prompt:productimg.productimgSearchName,
|
||||
parentId:productimg.selectGenerate?.parentId || productimg.selectGenerate.userLikeGroupId,
|
||||
modelName:speed.speedData.value,
|
||||
poseId:productimg.selectPose,
|
||||
userLikeSortId:productimg.selectGenerate?.parentId || productimg.selectGenerate.userLikeGroupId,
|
||||
sourceUrl:productimg.selectGenerate?.sourceUrl || productimg.selectGenerate?.productImage,
|
||||
status:null,
|
||||
oldId:productimg.openType == 'add'?null:productimg.selectGenerate.id,
|
||||
resultType:productimg.selectGenerate?.resultType,
|
||||
}
|
||||
generateProceedList = rv.map(user => user.taskId);
|
||||
setPrductimg(arr)
|
||||
productimg.isGenerate = true
|
||||
}
|
||||
@@ -477,7 +484,13 @@ setup(props:any,{emit}) {
|
||||
let isEnd = false
|
||||
if(rv[0].status == 'Success'){
|
||||
productimg.generateCourse.url = rv[0].url
|
||||
productimg.generateCourse.status = rv[0].status
|
||||
productimg.generateCourse.designOutfitUrl = rv[0].url
|
||||
if(rv[0]?.videoUrl){
|
||||
productimg.generateCourse.firstFrameUrl = rv[0].firstFrameUrl
|
||||
productimg.generateCourse.videoUrl = rv[0].videoUrl
|
||||
productimg.generateCourse.gifUrl = rv[0].gifUrl
|
||||
}
|
||||
isEnd = true
|
||||
clearInterval(remPrductimgTime)
|
||||
}else if(rv[0].status == 'Fail'){
|
||||
@@ -501,7 +514,7 @@ setup(props:any,{emit}) {
|
||||
productimg.productimgIsProductimg = false
|
||||
productimg.productimgRemProductimg= false
|
||||
});
|
||||
},productimg.scaleImageList[productimg.scaleImageIndex]?.resultType == 'PoseTransfer'?20000:1000)
|
||||
},productimg.scaleImageList[productimg.scaleImageIndex]?.resultType == 'PoseTransfer'?10000:1000)
|
||||
}
|
||||
let removeProductimg = ()=>{
|
||||
productimg.productimgIsProductimg = false
|
||||
@@ -532,8 +545,8 @@ setup(props:any,{emit}) {
|
||||
}
|
||||
}
|
||||
const setUserData = (item:any)=>{
|
||||
console.log(item)
|
||||
productimg.productimgSearchName = item.prompt
|
||||
productimg.productimgBrightenValue = item.brightenValue
|
||||
productimg.productimgSimilarity = 100 - item.imageStrength * 100
|
||||
productimg.productimgRelightDirection = item.direction
|
||||
if(item.poseId){
|
||||
@@ -602,10 +615,7 @@ setup(props:any,{emit}) {
|
||||
productimg.productimgRelightDirection = JSON.parse(JSON.stringify(props.productData.RelightDirection))
|
||||
|
||||
productimg.selectGenerate.parentId = list[index].parentId || list[index].userLikeSortId
|
||||
if(productimg.productimgSearchName){
|
||||
await nextTick()
|
||||
ifMaximumLength()
|
||||
}
|
||||
ifMaximumLength()
|
||||
if(productimg.poseList.length == 0 && list[index].resultType == 'PoseTransfer'){
|
||||
await getPoseList()
|
||||
}
|
||||
@@ -651,6 +661,9 @@ setup(props:any,{emit}) {
|
||||
productimg.selectPose = item.id
|
||||
}
|
||||
const cancelDsign = async ()=>{
|
||||
if(productimg.productimgIsProductimg){
|
||||
if(!productimg.productimgRemProductimg)return
|
||||
}
|
||||
if(productimg.isGenerate){
|
||||
if(productimg.productimgIsProductimg){
|
||||
clearInterval(prductimgTime)
|
||||
@@ -704,6 +717,7 @@ setup(props:any,{emit}) {
|
||||
const ifMaximumLength = async ()=>{
|
||||
await nextTick()
|
||||
let textarea = productimg.textarea;
|
||||
console.log(textarea)
|
||||
const scrollTop = textarea.scrollTop;
|
||||
// 2. 计算单行高度
|
||||
const lineHeight = parseInt(getComputedStyle(textarea).lineHeight) || 20; // 默认20px
|
||||
@@ -965,7 +979,8 @@ overflow: visible !important;
|
||||
overflow-x: auto;
|
||||
> .item{
|
||||
margin-right: 1rem;
|
||||
width: calc(100% / 1.2 - .5rem);
|
||||
width: 15rem;
|
||||
// width: calc(100% / 1.2 - .5rem);
|
||||
cursor: pointer;
|
||||
overflow: hidden;
|
||||
display: flex;
|
||||
|
||||
@@ -239,8 +239,8 @@
|
||||
) in designCollectionList" :key="design?.designItemId" :style="collStyle">
|
||||
<div class="content_img_flex"
|
||||
:class="[(driver__.driver && driver__.index == 32)?'hideEvents':'']"
|
||||
@mousedown.stop="designMousedown(getMousePosition($event,false),design.designItemId || design.id,'disLike')"
|
||||
@touchstart.passive="designMousedown(getMousePosition($event,true),design.designItemId || design.id,'disLike')"
|
||||
@mousedown.stop="designMousedown(getMousePosition($event,false),design,'disLike')"
|
||||
@touchstart.passive="designMousedown(getMousePosition($event,true),design,'disLike')"
|
||||
@click="
|
||||
designDetail(
|
||||
design,
|
||||
@@ -331,7 +331,7 @@ import { defineComponent, h, ref, computed, toRefs, createVNode,provide,nextTick
|
||||
import NewCollectionReview from "@/component/HomePage/NewCollectionReview.vue";
|
||||
import generalCanvas from "@/component/modules/generalCanvas.vue";
|
||||
import affiche from "@/component/HomePage/affiche.vue";
|
||||
import DesignDetailcopy from "@/component/DetailCopy/designDetail.vue";
|
||||
import DesignDetailcopy from "@/component/Detail/designDetail.vue";
|
||||
import html2canvas from "html2canvas";
|
||||
import { message,Modal } from "ant-design-vue";
|
||||
import { useStore } from "vuex";
|
||||
@@ -371,7 +371,7 @@ export default defineComponent({
|
||||
},
|
||||
props:['isState'],
|
||||
setup(props,{emit}) {
|
||||
const {t} = useI18n()
|
||||
const {t,locale} = useI18n()
|
||||
const store = useStore();
|
||||
const editDesignType = reactive({
|
||||
selectProbject:computed(()=>{
|
||||
@@ -500,10 +500,10 @@ export default defineComponent({
|
||||
speed.speedData = item
|
||||
}
|
||||
const openEditTools = ()=>{
|
||||
dataDom.designTools.init(speed.speedData.value,likeDesignCollectionList.value)
|
||||
dataDom.designTools.init(speed.speedData.value,likeDesignCollectionList.value,t,locale)
|
||||
}
|
||||
const openCanvas = ()=>{
|
||||
dataDom.designTools.init('editCanvas')
|
||||
dataDom.designTools.init('editCanvas','',t,locale)
|
||||
}
|
||||
const designData = reactive({
|
||||
openEditBtnId:-1,
|
||||
@@ -549,6 +549,7 @@ export default defineComponent({
|
||||
watch(()=>likeDesignCollectionList.value.length,(val)=>{
|
||||
if(val>0){
|
||||
uploadLikeDom()
|
||||
setPrductimgAll()
|
||||
}else{
|
||||
designData.selectLikeDesign = []
|
||||
|
||||
@@ -680,9 +681,12 @@ export default defineComponent({
|
||||
if(design.resultType != 'Design' || designData.isUnfold)return
|
||||
if(str != 'like' && showDesignMark.value) return
|
||||
}
|
||||
let Id = design.userLikeSortId || design.id
|
||||
let Id = design.userLikeSortId || design.id || design.designItemId
|
||||
console.log(design)
|
||||
let arr = str == 'like'? posiitonData.value.likeElList:posiitonData.value.generateElList
|
||||
console.log(arr)
|
||||
let item:any = arr.filter((item:any)=>item.userLikeSortId == Id)[0]
|
||||
console.log(item)
|
||||
item.el.style.zIndex = 2;
|
||||
item.el.style.transition = 'all 0s';
|
||||
let startX = e.clientX,
|
||||
@@ -897,6 +901,8 @@ export default defineComponent({
|
||||
clearInterval(prductimgTime.ToProductImage)
|
||||
clearInterval(prductimgTime.PoseTransfer)
|
||||
clearInterval(prductimgTime.Relight)
|
||||
arr[index].sort = arr[index].oldSort || arr[index].sort
|
||||
console.log(JSON.parse(JSON.stringify(arr[index])))
|
||||
dataDom.editDesignType.init(arr,index,null,status,listType)
|
||||
dataDom.editDesignType.isLike = false
|
||||
// dataDom.editDesignType.productimgRelightDirection = editDesignType.RelightDirection
|
||||
@@ -966,19 +972,16 @@ export default defineComponent({
|
||||
}
|
||||
})
|
||||
}else{
|
||||
console.log(design)
|
||||
likeDesignCollectionList.value.forEach((item:any)=>{
|
||||
if(item.resultType == 'Design' && item.userLikeSortId == designData.selectDesign.userLikeSortId){
|
||||
item.childList.forEach((childItem:any)=>{
|
||||
if(childItem.sort > design.oldSort){
|
||||
console.log(childItem)
|
||||
childItem.sort -= 1
|
||||
}
|
||||
})
|
||||
item.childList = item.childList.filter((childItem:any)=>{
|
||||
return childItem.id != design.id
|
||||
})
|
||||
console.log(item)
|
||||
}
|
||||
})
|
||||
}
|
||||
@@ -986,7 +989,6 @@ export default defineComponent({
|
||||
})
|
||||
|
||||
nextTick().then(()=>{
|
||||
console.log(111)
|
||||
designData.isUnfold = true
|
||||
uploadLikeDom()
|
||||
})
|
||||
@@ -1025,7 +1027,6 @@ export default defineComponent({
|
||||
|
||||
}
|
||||
const upDataSuccess = (element)=>{
|
||||
console.log(JSON.parse(JSON.stringify(likeDesignCollectionList.value)))
|
||||
if(designData.isUnfold){
|
||||
designData.selectLikeDesign.forEach((item:any,index:any) => {
|
||||
if(element.taskId == item.taskId){
|
||||
@@ -1041,13 +1042,11 @@ export default defineComponent({
|
||||
if(likeItem?.childList?.length > 0){
|
||||
likeItem.childList.forEach((childItem:any,index:any)=>{
|
||||
if(childItem.taskId == element.taskId){
|
||||
console.log(childItem)
|
||||
likeItem.childList[index].url = element.url
|
||||
likeItem.childList[index].status = element.status
|
||||
likeItem.childList[index].elementType = element.elementType
|
||||
likeItem.childList[index].elementId = element.elementId
|
||||
likeItem.childList[index].id = element.id
|
||||
console.log(likeItem.childList)
|
||||
}
|
||||
})
|
||||
}
|
||||
@@ -1060,7 +1059,6 @@ export default defineComponent({
|
||||
let list = likeDesignCollectionList.value
|
||||
if(list[likeIndex].childList.length == 0)return
|
||||
list[likeIndex].childList.forEach((likeItem:any,index:any)=>{
|
||||
console.log(likeItem)
|
||||
if(likeItem.sort >= generateCourseItem.sort){
|
||||
likeItem.sort += 1
|
||||
}
|
||||
@@ -1068,10 +1066,8 @@ export default defineComponent({
|
||||
}
|
||||
const generateLoad = async (data:any)=>{
|
||||
// return
|
||||
console.log(data)
|
||||
clearInterval(prductimgTime.ToProductImage)
|
||||
clearInterval(prductimgTime.PoseTransfer)
|
||||
clearInterval(prductimgTime.Relight)
|
||||
console.log(JSON.parse(JSON.stringify(data)))
|
||||
|
||||
let list = likeDesignCollectionList.value
|
||||
//添加元素
|
||||
if(data.addList){
|
||||
@@ -1080,6 +1076,7 @@ export default defineComponent({
|
||||
if(oldData?.resultType == "Design"){
|
||||
let index = list.findIndex((item:any)=>(item.userLikeSortId == generateCourseItem.parentId && item.resultType == "Design"))
|
||||
if(!list[index]?.childList)list[index].childList = []
|
||||
generateCourseItem.oldSort = generateCourseItem.sort
|
||||
generateCourseItem.sort = list[index]?.childList.length + 1
|
||||
if(data.status == 'add'){
|
||||
upDataSort(generateCourseItem,index)
|
||||
@@ -1095,8 +1092,11 @@ export default defineComponent({
|
||||
upDataSort(generateCourseItem,index)
|
||||
list[index]?.childList.push(generateCourseItem)
|
||||
}else{
|
||||
let childIndex = list[index].childList.findIndex((item:any)=>(item.id == generateCourseItem.id))
|
||||
list[index].childList[childIndex] = generateCourseItem
|
||||
upDataSuccess(generateCourseItem)
|
||||
// let childIndex = list[index].childList.findIndex((item:any)=>(item.id == generateCourseItem?.oldId || generateCourseItem?.id))
|
||||
// console.log(childIndex)
|
||||
// console.log(list[index].childList)
|
||||
// list[index].childList[childIndex] = generateCourseItem
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1108,13 +1108,11 @@ export default defineComponent({
|
||||
if(oldData?.resultType == "Design"){
|
||||
}else{
|
||||
let index = list.findIndex((item:any)=>(item.userLikeSortId == generateCourseItem.parentId))
|
||||
console.log(index)
|
||||
if(index != -1){
|
||||
if(!list[index]?.childList){
|
||||
list[index].childList = []
|
||||
}
|
||||
let childIndex = list[index].childList.findIndex((item:any)=>(item.id == generateCourseItem.id))
|
||||
console.log(list[index].childList,list[index].childList[childIndex])
|
||||
list[index].childList.forEach((childItem)=>{
|
||||
if(childItem.sort > list[index].childList[childIndex].sort){
|
||||
childItem.sort -= 1
|
||||
@@ -1129,25 +1127,34 @@ export default defineComponent({
|
||||
|
||||
await nextTick().then(()=>{
|
||||
designData.isUnfold = true
|
||||
console.log('111s')
|
||||
uploadLikeDom()
|
||||
})
|
||||
setPrductimgAll()
|
||||
}
|
||||
const setPrductimgAll = ()=>{
|
||||
clearInterval(prductimgTime.ToProductImage)
|
||||
clearInterval(prductimgTime.PoseTransfer)
|
||||
clearInterval(prductimgTime.Relight)
|
||||
let list = likeDesignCollectionList.value
|
||||
let toProductImage = []
|
||||
let poseTransfer = []
|
||||
let relight = []
|
||||
list.forEach((item:any)=>{
|
||||
if(!item?.childList)item.childList = []
|
||||
item.childList.forEach((childItem:any)=>{
|
||||
console.log(childItem)
|
||||
if(childItem.resultType == 'PoseTransfer'){
|
||||
if(!childItem.status && !childItem?.firstFrameUrl){
|
||||
if((!childItem.status || childItem.status != "Success") && !childItem?.firstFrameUrl){
|
||||
poseTransfer.push(childItem.taskId)
|
||||
}
|
||||
}else if(childItem.resultType == 'ToProductImage'){
|
||||
if(!childItem.status && (!childItem?.url || !childItem?.designOutfitUrl)){
|
||||
if((!childItem.status || childItem.status != "Success") && (!childItem?.url)){
|
||||
toProductImage.push(childItem.taskId)
|
||||
}
|
||||
}else if(childItem.resultType == 'Relight'){
|
||||
if(!childItem.status && (!childItem?.url || !childItem?.designOutfitUrl)){
|
||||
console.log(JSON.parse(JSON.stringify(childItem)))
|
||||
console.log((!childItem.status || childItem.status != "Success"), (!childItem?.url))
|
||||
if((!childItem.status || childItem.status != "Success") && (!childItem?.url)){
|
||||
relight.push(childItem.taskId)
|
||||
}
|
||||
}
|
||||
@@ -1220,7 +1227,7 @@ export default defineComponent({
|
||||
clearInterval(prductimgTime[type])
|
||||
setFail(data)
|
||||
});
|
||||
},type == 'PoseTransfer'?20000:3000)
|
||||
},type == 'PoseTransfer'?10000:3000)
|
||||
}
|
||||
const gifPlay = (e:any,item:any)=>{
|
||||
e.target.src = item.gif || item.gifUrl//使用gif图片
|
||||
@@ -1248,6 +1255,8 @@ export default defineComponent({
|
||||
item.oldSort = item.sort
|
||||
if(item?.childList?.length > 0){
|
||||
item.childList.forEach((childItem:any,childIndex:number)=>{
|
||||
|
||||
childItem.oldSort = childItem.sort
|
||||
childItem.oldSort = childItem.sort
|
||||
childItem.sort = childItem.sort + childLength + index
|
||||
// childItem.sort = childIndex + item.sort + childLength
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
<div class="generalModel_btn">
|
||||
<div class="generalModel_closeIcon" @click.stop="closeModal()">
|
||||
<!-- <i class="fi fi-rr-cross-small"></i> -->
|
||||
<svg width="46" height="46" viewBox="0 0 46 46" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<svg width="100%" height="100%" viewBox="0 0 46 46" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="23" cy="23" r="23" fill="white" fill-opacity="0.3"/>
|
||||
<rect x="32.5063" y="12" width="3" height="29" rx="1.5" transform="rotate(45 32.5063 12)" fill="#000"/>
|
||||
<rect x="34.6274" y="32.5059" width="3" height="29" rx="1.5" transform="rotate(135 34.6274 32.5059)" fill="#000"/>
|
||||
@@ -28,7 +28,7 @@
|
||||
<div class="operate_item" v-show="locationList.length == 6" @click="setProportion(true)">
|
||||
<!-- <div class="icon iconfont icon-fanhui1 operate_icon"></div> -->
|
||||
<i class="fi fi-rr-comment-image operate_icon"></i>
|
||||
<div class="operate_item_des">Proportion</div>
|
||||
<div class="operate_item_des">{{ $t('ModelPlacement.Proportion') }}</div>
|
||||
</div>
|
||||
<div class="operate_item" @click="setProportion(false)">
|
||||
<i class="fi fi-br-dot-circle operate_icon"></i>
|
||||
@@ -169,7 +169,7 @@
|
||||
</div>
|
||||
<div class="input_blok" v-show="brushProportion">
|
||||
<div class="label">
|
||||
<div class="text">Resize</div>
|
||||
<div class="text">{{ $t('ModelPlacement.Resize') }}</div>
|
||||
<!-- 伸缩 -->
|
||||
<a-slider class="slider" v-model:value="slider" :tooltipVisible="false" @change="sliderChange"/>
|
||||
<!-- <div class="gallery_btn" @click="stretchOK">完成</div> -->
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<!-- <div class="text">Style:</div>
|
||||
<div class="text" style="margin: 0 9rem 0 4rem;">{{ selectObject?.styleName }}</div>
|
||||
<div class="gallery_btn" style="line-height: 5rem;" @click="setStyle">{{ $t('Habit.Select') }}</div> -->
|
||||
<div class="text" v-show="systemUser">{{ $t('Model.Style:') }}</div>
|
||||
<div class="text" v-show="systemUser">{{ $t('Model.Style') }}:</div>
|
||||
<div class="generalModel_state" style="width: 20rem;" v-show="systemUser">
|
||||
<div class="generalModel_state_item" style="margin: 0; width: 100%;">
|
||||
<a-select
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
>
|
||||
<div class="generalModel_btn">
|
||||
<div class="generalModel_closeIcon" @click.stop="cleardata()">
|
||||
<svg width="46" height="46" viewBox="0 0 46 46" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<svg width="100%" height="100%" viewBox="0 0 46 46" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<circle cx="23" cy="23" r="23" fill="#000" fill-opacity="0.3"/>
|
||||
<rect x="32.5063" y="12" width="3" height="29" rx="1.5" transform="rotate(45 32.5063 12)" fill="white"/>
|
||||
<rect x="34.6274" y="32.5059" width="3" height="29" rx="1.5" transform="rotate(135 34.6274 32.5059)" fill="white"/>
|
||||
@@ -64,9 +64,9 @@
|
||||
|
||||
</div>
|
||||
<div class="btn">
|
||||
<div class="gallery_btn" @click="saveCanvas">Save</div>
|
||||
<div class="gallery_btn" @click="share">Share</div>
|
||||
<div class="gallery_btn" @click="exportElement">Export</div>
|
||||
<div class="gallery_btn" @click="saveCanvas">{{ $t('exportModel.Save') }}</div>
|
||||
<div class="gallery_btn" @click="share">{{ $t('exportModel.Share') }}</div>
|
||||
<div class="gallery_btn" @click="exportElement">{{ $t('exportModel.Export') }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -82,6 +82,7 @@ import { defineComponent,computed,ref,provide,nextTick,inject,toRefs, reactive,
|
||||
import { ExclamationCircleOutlined } from '@ant-design/icons-vue';
|
||||
import { Https } from "@/tool/https";
|
||||
import { useStore } from "vuex";
|
||||
import { Modal,message } from 'ant-design-vue';
|
||||
import { downloadIamge,getMinioUrl } from "@/tool/util";
|
||||
import { useI18n } from 'vue-i18n'
|
||||
import toProductRelight from '../tools/toProduct/index.vue'
|
||||
@@ -106,6 +107,8 @@ export default defineComponent({
|
||||
emits:['editToolsSuccess'],
|
||||
setup(props,{emit}) {
|
||||
const store = useStore();
|
||||
let locale = null as any;
|
||||
let t = null as any;
|
||||
const data = reactive({
|
||||
designTools:false,
|
||||
isShowMark:false,
|
||||
@@ -117,6 +120,9 @@ export default defineComponent({
|
||||
canvasSelectList:[] as any,
|
||||
canvasDetailData:null as any,
|
||||
unLikeList:[],
|
||||
locale:null as any,
|
||||
t:null as any,
|
||||
|
||||
})
|
||||
const dataDom = reactive({
|
||||
toProduct:null as any,
|
||||
@@ -125,13 +131,18 @@ export default defineComponent({
|
||||
editCanvas:null as any,
|
||||
publish:null as any,
|
||||
}) as any
|
||||
const init = (value:any,list:any)=>{
|
||||
const init = async (value:any,list:any,t:any,locale:any)=>{
|
||||
store.commit('toolsClear')
|
||||
data.t = t
|
||||
data.locale = locale.value
|
||||
data.designTools = true
|
||||
if(value == 'editCanvas')await getCanvasData('canvas')
|
||||
data.openType = value
|
||||
if(value == 'editCanvas'){
|
||||
getSelectCanvasImg()
|
||||
return
|
||||
nextTick(()=>{
|
||||
getSelectCanvasImg()
|
||||
return
|
||||
})
|
||||
}
|
||||
data.likeDesignList = list
|
||||
nextTick(()=>{
|
||||
@@ -179,7 +190,7 @@ export default defineComponent({
|
||||
console.log(likeData)
|
||||
store.commit("setPoseTransfer", likeData);
|
||||
}
|
||||
dataDom[value].openSetData(fileList)
|
||||
if(dataDom[value]?.openSetData)dataDom[value]?.openSetData(fileList)
|
||||
})
|
||||
}
|
||||
const unLike = (item)=>{
|
||||
@@ -194,9 +205,11 @@ export default defineComponent({
|
||||
}else if(data.openType == 'poseTransfer'){
|
||||
list = store.state.HomeStoreModule.poseTransfer.likedList
|
||||
}
|
||||
let generateCourse = list.filter((item)=>item.oldSort)
|
||||
generateCourse = generateCourse.map(item => {
|
||||
return item.oldSort ? { ...item, sort: item.oldSort } : item;
|
||||
let generateCourse = list.filter((item) => item.newLike)
|
||||
.map(item => {
|
||||
// 删除 newLike 字段
|
||||
const { newLike, ...rest } = item; // 解构赋值移除 newLike
|
||||
return item.oldSort ? { ...rest, sort: item.oldSort } : rest;
|
||||
});
|
||||
let emitData = {
|
||||
status:'add',
|
||||
@@ -215,15 +228,30 @@ export default defineComponent({
|
||||
|
||||
|
||||
//画布相关
|
||||
const getCanvasData = (str:any)=>{
|
||||
return new Promise((resolve, reject) => {
|
||||
let value = {
|
||||
module:str,
|
||||
projectId:data.selectObject.id,
|
||||
}
|
||||
Https.axiosPost(Https.httpUrls.exportSearch, value)
|
||||
.then((rv) => {
|
||||
store.commit("setCanvasData", {type:str,file:rv});
|
||||
resolve('')
|
||||
})
|
||||
.catch((rv) => {
|
||||
resolve(null)
|
||||
});
|
||||
})
|
||||
}
|
||||
const getSelectCanvasImg = ()=>{
|
||||
data.canvasSelectList = []
|
||||
let allCollection = store.state.UploadFilesModule.allBoardData
|
||||
console.log(allCollection)
|
||||
let allCollectionStr = [
|
||||
{value:'disposeMoodboard',name:'Entirety Moodboard'},
|
||||
{value:'moodboardFiles',name:'Moodboard'},
|
||||
{value:'printboardFiles',name:'Printboard'},
|
||||
{value:'sketchboardFiles',name:'Sketchboard'},
|
||||
{value:'disposeMoodboard',name:'Entirety Moodboard',nameCn:'整体情绪版'},
|
||||
{value:'moodboardFiles',name:'Moodboard',nameCn:'情绪版'},
|
||||
{value:'printboardFiles',name:'Printboard',nameCn:'印花板'},
|
||||
{value:'sketchboardFiles',name:'Sketchboard',nameCn:'整体情绪版'},
|
||||
]
|
||||
allCollectionStr.forEach((itemStr:any)=>{
|
||||
let list = [] as any
|
||||
@@ -232,7 +260,7 @@ export default defineComponent({
|
||||
})
|
||||
let obj = {
|
||||
value:itemStr.value,
|
||||
type:itemStr.name,
|
||||
type:data.locale == "ENGLISH"?itemStr.name:itemStr.nameCn,
|
||||
imgList:list,
|
||||
}
|
||||
if(list.length > 0){
|
||||
@@ -252,7 +280,7 @@ export default defineComponent({
|
||||
})
|
||||
let obj = {
|
||||
value:'design',
|
||||
type:'Design',
|
||||
type:data.locale == "ENGLISH"?'Design':'设计',
|
||||
imgList:list
|
||||
}
|
||||
if(list.length > 0){
|
||||
@@ -284,7 +312,6 @@ export default defineComponent({
|
||||
canvasData.canvas.objects.forEach((objectsItem:any) => {
|
||||
if(objectsItem.type == 'image')objectsItem.minioUrl = getMinioUrl(objectsItem.src)
|
||||
});
|
||||
console.log(canvasData)
|
||||
let blob = new Blob([JSON.stringify(canvasData)], { type: "application/json" });
|
||||
let formData = new FormData();
|
||||
formData.append("file", blob, "data.json");
|
||||
@@ -295,7 +322,7 @@ export default defineComponent({
|
||||
};
|
||||
Https.axiosPost(Https.httpUrls.exportSave, formData, config).then(
|
||||
(rv) => {
|
||||
console.log(rv)
|
||||
message.success(data.t('exportModel.jsContent7'))
|
||||
}
|
||||
);
|
||||
}
|
||||
@@ -485,7 +512,7 @@ export default defineComponent({
|
||||
.fullScreen{
|
||||
.generalModel_btn {
|
||||
.generalModel_closeIcon{
|
||||
transform: translate(-10%, 10%);
|
||||
transform: translate(-100%, 50%);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user