Merge branch 'dev_vite' of http://18.167.251.121:10003/aidlab/aida_front into dev_vite
This commit is contained in:
@@ -25,13 +25,15 @@
|
||||
<div class="molepositon imgDesignImg" :class="{active:imgDesignImg}">
|
||||
<div class="designOpenrtion_imgMask" style="width: 100%;height: 100%;">
|
||||
<div class="detail_modal_item_front">
|
||||
<img :src="designDetail.designItemUrl" alt="" style="object-fit: cover;">
|
||||
<img
|
||||
:style="{width:observerWH.width+'px',height:observerWH.height+'px'}"
|
||||
:src="designDetail.designItemUrl" alt="" style="object-fit: cover;">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script lang="ts">
|
||||
import { defineComponent,computed,inject,watch,nextTick,createVNode,toRefs, reactive} from 'vue'
|
||||
import { defineComponent,computed,inject,watch,nextTick,createVNode,toRefs, reactive, onUnmounted} from 'vue'
|
||||
// import setDesignItem from '@/component/Detail/setDesignItem2.vue'
|
||||
import { ExclamationCircleOutlined } from '@ant-design/icons-vue';
|
||||
import { Https } from "@/tool/https";
|
||||
@@ -60,6 +62,11 @@ export default defineComponent({
|
||||
isEditPattern:inject('isEditPattern') as any,
|
||||
singleOveral:inject('singleOveral') as any,
|
||||
detailBody:null as any,
|
||||
observer:null as any,
|
||||
observerWH:{
|
||||
width:0,
|
||||
height:0,
|
||||
},
|
||||
})
|
||||
const selectItem = reactive({
|
||||
selectDetail:computed(()=>store.state.DesignDetail.selectDetail),
|
||||
@@ -82,6 +89,21 @@ export default defineComponent({
|
||||
let dom = document.querySelector('.molepositon .perview_img') as any
|
||||
if(!detailData.frontBack?.body?.path || !dom)return
|
||||
img.onload = () => {
|
||||
//监听模特图片宽度设置整体图片宽度
|
||||
if (detailData.observer) {
|
||||
detailData.observer.disconnect()
|
||||
}
|
||||
detailData.observerWH.width = dom.width
|
||||
detailData.observerWH.height = dom.height
|
||||
detailData.observer = new ResizeObserver((entries) => {
|
||||
if(entries[0].contentRect.width == 0)return
|
||||
detailData.observerWH.width = Math.floor(entries[0].contentRect.width)
|
||||
detailData.observerWH.height = Math.floor(entries[0].contentRect.height)
|
||||
console.log(detailData.observerWH)
|
||||
})
|
||||
detailData.observer.observe(dom)
|
||||
|
||||
|
||||
if(detailData.designDetail.clothes.length == 0){
|
||||
store.commit('DesignDetail/addDesignColthes')
|
||||
emit('addSketch')
|
||||
@@ -401,6 +423,11 @@ export default defineComponent({
|
||||
};
|
||||
img.src = url;
|
||||
}
|
||||
onUnmounted(()=>{
|
||||
if (detailData.observer) {
|
||||
detailData.observer.disconnect()
|
||||
}
|
||||
})
|
||||
return{
|
||||
...toRefs(detailData),
|
||||
...toRefs(selectItem),
|
||||
@@ -416,6 +443,7 @@ export default defineComponent({
|
||||
updataPosition,
|
||||
}
|
||||
},
|
||||
|
||||
directives:{
|
||||
detailBody:{
|
||||
mounted (el,data:any) {
|
||||
|
||||
@@ -907,7 +907,7 @@ export default defineComponent({
|
||||
this.isGenerate = false
|
||||
clearInterval(this.remGenerateTime)
|
||||
this.remGenerate = false
|
||||
|
||||
this.fileList = this.fileList.filter((item: any) => item.status !== '')
|
||||
if (res.errCode === 2) {
|
||||
let this_ = this
|
||||
Modal.confirm({
|
||||
@@ -994,6 +994,7 @@ export default defineComponent({
|
||||
}
|
||||
})
|
||||
.catch(res => {
|
||||
this.fileList = this.fileList.filter((item: any) => item.status !== '')
|
||||
clearInterval(this.generateTime)
|
||||
clearInterval(this.remGenerateTime)
|
||||
this.isGenerate = false
|
||||
|
||||
@@ -141,7 +141,6 @@ export default defineComponent({
|
||||
publish:null as any,
|
||||
}) as 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
|
||||
@@ -188,6 +187,7 @@ export default defineComponent({
|
||||
str:'add',
|
||||
index:-1,
|
||||
}
|
||||
store.commit('toolsClear')
|
||||
if(data.openType == 'toProduct'){
|
||||
store.commit("setToProductImage", likeData);
|
||||
}else if(data.openType == 'relight'){
|
||||
|
||||
@@ -62,11 +62,13 @@ export default defineComponent({
|
||||
newPorject:null as any,
|
||||
chatDom:null as any,
|
||||
})
|
||||
watch(() => data.selectObject.styleId,()=>{
|
||||
if((data.selectObject?.id == route.query?.history) && route.query?.history){
|
||||
getHistory(route.query.history)
|
||||
}
|
||||
})
|
||||
//切换风格更新模特 更新设置交互变更
|
||||
// watch(() => data.selectObject.styleId,(newVal,oldVal)=>{
|
||||
// if(newVal == oldVal || !oldVal)return
|
||||
// if((data.selectObject?.id == route.query?.history) && route.query?.history){
|
||||
// getHistory(route.query.history)
|
||||
// }
|
||||
// })
|
||||
|
||||
watch(() => route.query,
|
||||
(query:any, oldQuery:any) => {
|
||||
@@ -121,14 +123,11 @@ export default defineComponent({
|
||||
store.commit("clearAllBoardData",item);
|
||||
})
|
||||
}
|
||||
|
||||
const getHistory = (id:any)=>{
|
||||
let value = {
|
||||
id,
|
||||
}
|
||||
if(!id)return
|
||||
data.isShowMark = false
|
||||
|
||||
if(!id)return data.isShowMark = false
|
||||
Https.axiosPost(Https.httpUrls.selectHistoryProject,value).then((rv: any) => {
|
||||
setProjectData(rv)
|
||||
}).catch((res)=>{
|
||||
@@ -177,7 +176,6 @@ export default defineComponent({
|
||||
data.selectObject.positionList = position
|
||||
storeData.positionList = position
|
||||
store.commit('setProbject',storeData)
|
||||
|
||||
// setChatData()
|
||||
if(route.name == 'tools'){
|
||||
getCollection('tools',null)
|
||||
@@ -224,6 +222,7 @@ export default defineComponent({
|
||||
}
|
||||
data.isShowMark = true
|
||||
Https.axiosPost(Https.httpUrls.getModuleContent,value).then(async (rv)=>{
|
||||
store.commit('clearAllCollection')
|
||||
if(rv.uploadElement){//toproduct、relight、poseTransfer
|
||||
let uploadElementData = {
|
||||
str:'add',
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
<img :src="item.imgUrl || item.url" alt="">
|
||||
<a-checkbox v-model:checked="item.isChecked"></a-checkbox>
|
||||
</div> -->
|
||||
<div class="item" :class="[item?.isChecked?'active':'']" v-for="item,index in fileList[productimgMenu.value]" @click="setGenerate(item)">
|
||||
<div class="item" :class="[item?.isChecked?'active':'']" v-for="item,index in fileList[productimgMenu.value]" @click="setGenerate(item)" :key="item.id">
|
||||
<div class="" v-if="item.status == 'uploading'" style="display: flex;align-items: center;">
|
||||
<a-spin size="large" />
|
||||
</div>
|
||||
|
||||
@@ -4,12 +4,11 @@
|
||||
<div class="item" v-show="showMark" :style="likeStyle">
|
||||
<a-spin size="large" class="content_img_flex"></a-spin>
|
||||
</div>
|
||||
<div v-for="item in list" :key="item.id" class="item"
|
||||
<div v-for="item in list" :key="item" class="item"
|
||||
:style="likeStyle"
|
||||
@mousedown.stop="designMousedown(getMousePosition($event,false),item.id,'disLike')"
|
||||
@touchstart.passive="designMousedown(getMousePosition($event,true),item.id,'disLike')"
|
||||
>
|
||||
|
||||
<img v-if="item.url"
|
||||
:class="[isVideo?'video':'']"
|
||||
@mouseenter.stop="gifPlay($event,item)"
|
||||
|
||||
@@ -1785,6 +1785,7 @@ export default defineComponent({
|
||||
this.isGenerate[selectCodeStr] = false
|
||||
clearInterval(this.remGenerateTime[selectCodeStr])
|
||||
this.remGenerate[selectCodeStr] = false
|
||||
this.generateList[selectCodeStr] = this.generateList[selectCodeStr].filter((item: any) => item.status !== '')
|
||||
if(res.errCode === 2){
|
||||
let this_ = this
|
||||
Modal.confirm({
|
||||
@@ -1853,6 +1854,7 @@ export default defineComponent({
|
||||
}
|
||||
}
|
||||
).catch(res=>{
|
||||
this.generateList[selectCodeStr] = this.generateList[selectCodeStr].filter((item: any) => item.status !== '')
|
||||
clearInterval(this.generateTime[str])
|
||||
clearInterval(this.remGenerateTime[str])
|
||||
// this.isShowMark = false
|
||||
|
||||
Reference in New Issue
Block a user