Merge branch 'dev_vite' of http://18.167.251.121:10003/aidlab/aida_front into dev_vite
This commit is contained in:
@@ -50,7 +50,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="item detailLeft" :class="{isEditPattern:isEditPattern.value}">
|
<div class="item detailLeft" :class="{isEditPattern:isEditPattern.value}">
|
||||||
<detailLeft v-if="currentDetailType"></detailLeft>
|
<detailLeft v-if="currentDetailType" ref="detailLeft"></detailLeft>
|
||||||
<!-- <detailLeft v-if="selectDetail && selectDetail.id && currentDetailType"></detailLeft> -->
|
<!-- <detailLeft v-if="selectDetail && selectDetail.id && currentDetailType"></detailLeft> -->
|
||||||
<div class="btn" style="margin: 0;" v-show="currentDetailType == 'color'">
|
<div class="btn" style="margin: 0;" v-show="currentDetailType == 'color'">
|
||||||
<div class="gallery_btn" @click="previwe">{{$t('DesignPrintOperation.Preview')}}</div>
|
<div class="gallery_btn" @click="previwe">{{$t('DesignPrintOperation.Preview')}}</div>
|
||||||
@@ -67,6 +67,7 @@
|
|||||||
@revocation="revocation"
|
@revocation="revocation"
|
||||||
@oppositeRevocation="oppositeRevocation"
|
@oppositeRevocation="oppositeRevocation"
|
||||||
@modelOnLoad="modelOnLoad"
|
@modelOnLoad="modelOnLoad"
|
||||||
|
@sketchSysToLibrary="sketchSysToLibrary"
|
||||||
></model>
|
></model>
|
||||||
<div class="btn">
|
<div class="btn">
|
||||||
<div class="gallery_btn" style="margin-right: 0;" @click="submit">{{$t('DesignPrintOperation.Submit')}}</div>
|
<div class="gallery_btn" style="margin-right: 0;" @click="submit">{{$t('DesignPrintOperation.Submit')}}</div>
|
||||||
@@ -136,6 +137,7 @@ export default defineComponent({
|
|||||||
model:null,
|
model:null,
|
||||||
canvasBox,
|
canvasBox,
|
||||||
detailRight,
|
detailRight,
|
||||||
|
detailLeft:null as any,
|
||||||
})
|
})
|
||||||
const userDetail = computed(()=>{
|
const userDetail = computed(()=>{
|
||||||
return store.state.UserHabit.userDetail
|
return store.state.UserHabit.userDetail
|
||||||
@@ -491,6 +493,9 @@ export default defineComponent({
|
|||||||
store.commit('DesignDetail/setDesignDetail',detailData.designDetail)
|
store.commit('DesignDetail/setDesignDetail',detailData.designDetail)
|
||||||
},1000)
|
},1000)
|
||||||
}
|
}
|
||||||
|
const sketchSysToLibrary = ()=>{//系统sketch添加到library更新library
|
||||||
|
detailDom.detailLeft.sketchSysToLibrary()
|
||||||
|
}
|
||||||
onMounted(()=>{
|
onMounted(()=>{
|
||||||
window.addEventListener('resize', handleResize);
|
window.addEventListener('resize', handleResize);
|
||||||
})
|
})
|
||||||
@@ -515,6 +520,7 @@ export default defineComponent({
|
|||||||
detailEdit,
|
detailEdit,
|
||||||
canvasReload,
|
canvasReload,
|
||||||
modelOnLoad,
|
modelOnLoad,
|
||||||
|
sketchSysToLibrary,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -16,6 +16,7 @@
|
|||||||
:clothing-image-opts="{
|
:clothing-image-opts="{
|
||||||
imageMode:'contains',
|
imageMode:'contains',
|
||||||
}"
|
}"
|
||||||
|
:hideCanvas="hideCanvas"
|
||||||
ref="editCanvas">
|
ref="editCanvas">
|
||||||
</editCanvas>
|
</editCanvas>
|
||||||
<!-- <canvasContent ref="canvasContent"></canvasContent> -->
|
<!-- <canvasContent ref="canvasContent"></canvasContent> -->
|
||||||
@@ -37,6 +38,7 @@
|
|||||||
:clothing-image-opts="{
|
:clothing-image-opts="{
|
||||||
imageMode:'contains',
|
imageMode:'contains',
|
||||||
}"
|
}"
|
||||||
|
:hideCanvas="hideCanvas"
|
||||||
ref="editCanvasBackFront">
|
ref="editCanvasBackFront">
|
||||||
</editCanvas>
|
</editCanvas>
|
||||||
</div>
|
</div>
|
||||||
@@ -63,6 +65,7 @@ import { useStore } from "vuex";
|
|||||||
import { useI18n } from 'vue-i18n'
|
import { useI18n } from 'vue-i18n'
|
||||||
import editCanvas from "@/component/Canvas/CanvasEditor/index.vue";
|
import editCanvas from "@/component/Canvas/CanvasEditor/index.vue";
|
||||||
import { formatTime,segmentImage,getMinioUrl } from "@/tool/util";
|
import { formatTime,segmentImage,getMinioUrl } from "@/tool/util";
|
||||||
|
import { useRouter, useRoute } from 'vue-router'
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
components:{
|
components:{
|
||||||
@@ -77,7 +80,7 @@ export default defineComponent({
|
|||||||
setup(props,{emit}) {
|
setup(props,{emit}) {
|
||||||
const store = useStore();
|
const store = useStore();
|
||||||
const {t} = useI18n();
|
const {t} = useI18n();
|
||||||
|
const route = useRoute()
|
||||||
const detailDom = reactive({
|
const detailDom = reactive({
|
||||||
editFrontBack:null as any,
|
editFrontBack:null as any,
|
||||||
model:null,
|
model:null,
|
||||||
@@ -104,6 +107,7 @@ export default defineComponent({
|
|||||||
getCanvasIfEdit:inject('getCanvasIfEdit')as any,
|
getCanvasIfEdit:inject('getCanvasIfEdit')as any,
|
||||||
canvasInstance:null as any,
|
canvasInstance:null as any,
|
||||||
canvasJSON:'',
|
canvasJSON:'',
|
||||||
|
hideCanvas: computed(()=>store.state.Workspace.projectPath !== route.fullPath),
|
||||||
})
|
})
|
||||||
watch(()=>detailData.selectDetail,(newValue,oldValue)=>{
|
watch(()=>detailData.selectDetail,(newValue,oldValue)=>{
|
||||||
detailData.imgDomIndex = detailData.frontBack.front.findIndex((item:any)=>item.id == newValue.id)
|
detailData.imgDomIndex = detailData.frontBack.front.findIndex((item:any)=>item.id == newValue.id)
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="detailLeft">
|
<div class="detailLeft">
|
||||||
<sketch v-show="currentDetailType == 'sketch'" @addDetail="addDetail"></sketch>
|
<sketch v-show="currentDetailType == 'sketch'" ref="sketch" @addDetail="addDetail"></sketch>
|
||||||
<print v-show="currentDetailType == 'print'"></print>
|
<print v-show="currentDetailType == 'print'"></print>
|
||||||
<color v-if="currentDetailType == 'color'"></color>
|
<color v-if="currentDetailType == 'color'"></color>
|
||||||
<element v-show="currentDetailType == 'element'"></element>
|
<element v-show="currentDetailType == 'element'"></element>
|
||||||
@@ -42,6 +42,7 @@ export default defineComponent({
|
|||||||
})
|
})
|
||||||
const getDetailListDom = reactive({
|
const getDetailListDom = reactive({
|
||||||
addDetails:null as any,
|
addDetails:null as any,
|
||||||
|
sketch:null as any,
|
||||||
})
|
})
|
||||||
const addDetail = () =>{
|
const addDetail = () =>{
|
||||||
let addDetails:any = getDetailListDom.addDetails
|
let addDetails:any = getDetailListDom.addDetails
|
||||||
@@ -53,6 +54,9 @@ export default defineComponent({
|
|||||||
detailData.selectDetail.newDetail.sketch = null
|
detailData.selectDetail.newDetail.sketch = null
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
const sketchSysToLibrary = ()=>{//系统sketch添加到library更新library
|
||||||
|
getDetailListDom.sketch.sketchSysToLibrary()
|
||||||
|
}
|
||||||
|
|
||||||
return{
|
return{
|
||||||
...toRefs(detailData),
|
...toRefs(detailData),
|
||||||
@@ -60,6 +64,7 @@ export default defineComponent({
|
|||||||
...toRefs(getDetailListDom),
|
...toRefs(getDetailListDom),
|
||||||
addDetail,
|
addDetail,
|
||||||
setSloganData,
|
setSloganData,
|
||||||
|
sketchSysToLibrary,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
<i class="fi fi-rr-picture centent"></i>
|
<i class="fi fi-rr-picture centent"></i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<selectList @selectImgItem="selectImgItem" source="detail" level1Type="Sketchboard" type="sketch" :catecoryList="sketchCatecoryList"></selectList>
|
<selectList @selectImgItem="selectImgItem" source="detail" ref="selectList" level1Type="Sketchboard" type="sketch" :catecoryList="sketchCatecoryList"></selectList>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
@@ -47,7 +47,7 @@ export default defineComponent({
|
|||||||
currentPage:1,
|
currentPage:1,
|
||||||
})
|
})
|
||||||
const getDetailListDom = reactive({
|
const getDetailListDom = reactive({
|
||||||
libraryList:null as any,
|
selectList:null as any,
|
||||||
})
|
})
|
||||||
const openCurrent = ()=>{
|
const openCurrent = ()=>{
|
||||||
detailData.selectTitle = 'current'
|
detailData.selectTitle = 'current'
|
||||||
@@ -55,9 +55,8 @@ export default defineComponent({
|
|||||||
const openUpload = ()=>{
|
const openUpload = ()=>{
|
||||||
detailData.selectTitle = 'upload'
|
detailData.selectTitle = 'upload'
|
||||||
}
|
}
|
||||||
const openLibrary = ()=>{
|
const sketchSysToLibrary = ()=>{
|
||||||
detailData.selectTitle = 'library'
|
getDetailListDom.selectList.openLibrary()
|
||||||
getDetailListDom.libraryList.init()
|
|
||||||
}
|
}
|
||||||
const hasDuplicateId = (id:any)=>{
|
const hasDuplicateId = (id:any)=>{
|
||||||
let arr = detailData.designDetail.clothes
|
let arr = detailData.designDetail.clothes
|
||||||
@@ -96,7 +95,7 @@ export default defineComponent({
|
|||||||
|
|
||||||
openCurrent,
|
openCurrent,
|
||||||
openUpload,
|
openUpload,
|
||||||
openLibrary,
|
sketchSysToLibrary,
|
||||||
selectImgItem,
|
selectImgItem,
|
||||||
openAddDetail,
|
openAddDetail,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<div class="back" v-show="isEditPattern.value">
|
<div class="back" v-show="isEditPattern.value">
|
||||||
<i class="fi fi-br-angle-left" @click="setBack"></i>
|
<i class="fi fi-br-angle-left" @click="setBack"></i>
|
||||||
</div>
|
</div>
|
||||||
<modelNav @canvasReload="()=>$emit('canvasReload')" @addSketch="()=>$emit('addSketch')" @deleteItem="deleteItem"></modelNav>
|
<modelNav @canvasReload="()=>$emit('canvasReload')" @addSketch="()=>$emit('addSketch')" @sketchSysToLibrary="()=>$emit('sketchSysToLibrary')" @deleteItem="deleteItem"></modelNav>
|
||||||
</div>
|
</div>
|
||||||
<div class="modelindex_right">
|
<div class="modelindex_right">
|
||||||
<div class="detail_btn">
|
<div class="detail_btn">
|
||||||
@@ -26,7 +26,7 @@
|
|||||||
<i v-show="!body && deleteShow" class="fi fi-br-check" @click="deleteNav(1)"></i> -->
|
<i v-show="!body && deleteShow" class="fi fi-br-check" @click="deleteNav(1)"></i> -->
|
||||||
|
|
||||||
<!-- 层 -->
|
<!-- 层 -->
|
||||||
<i :title="$t('DesignDetail.compareTitle')" @mousedown="mousedownDesignImg" @mouseup="mousedownDesignImg" @touchstart="mousedownDesignImg" @touchend="mousedownDesignImg">
|
<i :title="$t('DesignDetail.compareTitle')" @mousedown="mousedownDesignImg" @mouseup="mousedownDesignImg" @touchstart.passive="mousedownDesignImg" @touchend.passive="mousedownDesignImg">
|
||||||
<SvgIcon name="DetailCompare" size="30" />
|
<SvgIcon name="DetailCompare" size="30" />
|
||||||
</i>
|
</i>
|
||||||
|
|
||||||
@@ -50,7 +50,7 @@ export default defineComponent({
|
|||||||
components:{
|
components:{
|
||||||
position,modelNav
|
position,modelNav
|
||||||
},
|
},
|
||||||
emits:['detailEdit','canvasReload','addSketch','revocation','oppositeRevocation','modelOnLoad'],
|
emits:['detailEdit','canvasReload','addSketch','revocation','oppositeRevocation','modelOnLoad','sketchSysToLibrary'],
|
||||||
setup(props,{emit}) {
|
setup(props,{emit}) {
|
||||||
const {t} = useI18n()
|
const {t} = useI18n()
|
||||||
const store = useStore();
|
const store = useStore();
|
||||||
|
|||||||
@@ -7,7 +7,10 @@
|
|||||||
@mousedown.stop="designMousedown(getMousePosition($event,false),item.uniqueId,'disLike')"
|
@mousedown.stop="designMousedown(getMousePosition($event,false),item.uniqueId,'disLike')"
|
||||||
@touchstart.passive="designMousedown(getMousePosition($event,true),item.uniqueId,'disLike')"
|
@touchstart.passive="designMousedown(getMousePosition($event,true),item.uniqueId,'disLike')"
|
||||||
@click="selectDetailItem(item,index)">
|
@click="selectDetailItem(item,index)">
|
||||||
<i class="fi fi-rr-trash" @click.stop="deleteDetailItem(item?.id)"></i>
|
<div class="iconList">
|
||||||
|
<i class="fi fi-rr-add" :class="{ active:item.scope == 'sys'}" @click.stop="sketchSystemToLibrary(item)"></i>
|
||||||
|
<i class="fi fi-rr-trash" @click.stop="deleteDetailItem(item?.id)"></i>
|
||||||
|
</div>
|
||||||
<img :src="item.path" alt="">
|
<img :src="item.path" alt="">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -30,7 +33,7 @@ export default defineComponent({
|
|||||||
components:{
|
components:{
|
||||||
position,
|
position,
|
||||||
},
|
},
|
||||||
emits:['canvasReload','addSketch','deleteItem'],
|
emits:['canvasReload','addSketch','deleteItem','sketchSysToLibrary'],
|
||||||
props:{
|
props:{
|
||||||
},
|
},
|
||||||
setup(props,{emit}) {
|
setup(props,{emit}) {
|
||||||
@@ -249,6 +252,17 @@ export default defineComponent({
|
|||||||
collItemSize.prentHeight = (collItemSize.padding + remValue) * elArr.length + 'px'
|
collItemSize.prentHeight = (collItemSize.padding + remValue) * elArr.length + 'px'
|
||||||
moveItem()
|
moveItem()
|
||||||
}
|
}
|
||||||
|
const sketchSystemToLibrary = (item)=>{
|
||||||
|
let value = {
|
||||||
|
clothId:item.id,
|
||||||
|
path:item.minIOPath
|
||||||
|
}
|
||||||
|
Https.axiosGet(Https.httpUrls.addSysSketchToLibrary,{params:value})
|
||||||
|
.then((rv:any)=>{
|
||||||
|
item.scope = 'user'
|
||||||
|
emit('sketchSysToLibrary')
|
||||||
|
})
|
||||||
|
}
|
||||||
let observers = null as any
|
let observers = null as any
|
||||||
onMounted(()=>{
|
onMounted(()=>{
|
||||||
observers = new ResizeObserver(entries => {
|
observers = new ResizeObserver(entries => {
|
||||||
@@ -269,6 +283,7 @@ export default defineComponent({
|
|||||||
designMousedown,
|
designMousedown,
|
||||||
addSketch,
|
addSketch,
|
||||||
getMousePosition,
|
getMousePosition,
|
||||||
|
sketchSystemToLibrary,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -295,17 +310,35 @@ export default defineComponent({
|
|||||||
position: absolute;
|
position: absolute;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
transition: top .3s;
|
transition: top .3s;
|
||||||
> i:not(.fi-bs-plus){
|
> .iconList{
|
||||||
display: none;
|
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 1rem;
|
|
||||||
top: 1rem;
|
top: 1rem;
|
||||||
cursor: pointer;
|
right: 1rem;
|
||||||
font-size: 2rem;
|
display: none;
|
||||||
}
|
flex-direction: column;
|
||||||
&:hover{
|
align-items: center;
|
||||||
> i{
|
> i{
|
||||||
display: block;
|
margin-bottom: .2rem;
|
||||||
|
font-size: 1.8rem;
|
||||||
|
}
|
||||||
|
> .fi-rr-add{
|
||||||
|
pointer-events: none;
|
||||||
|
color: #acacac;
|
||||||
|
&.active{
|
||||||
|
pointer-events: auto;
|
||||||
|
color: #000;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
>i:not(.fi-rr-add){
|
||||||
|
font-size: 2rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
i:not(.fi-bs-plus){
|
||||||
|
}
|
||||||
|
|
||||||
|
&:hover{
|
||||||
|
> .iconList{
|
||||||
|
display: flex;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
&:last-child{
|
&:last-child{
|
||||||
|
|||||||
@@ -724,8 +724,9 @@ export default defineComponent({
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
generageAdd(data: any) {
|
generageAdd(value: any) {
|
||||||
if (!data?.imgUrl) return
|
if (!value?.imgUrl) return
|
||||||
|
const data = JSON.parse(JSON.stringify(value))
|
||||||
data.type_ = this.type_
|
data.type_ = this.type_
|
||||||
data.type_.type1 = data.designType ? data.designType : this.type_.type1
|
data.type_.type1 = data.designType ? data.designType : this.type_.type1
|
||||||
data.resData = JSON.parse(JSON.stringify(data))
|
data.resData = JSON.parse(JSON.stringify(data))
|
||||||
@@ -1204,13 +1205,14 @@ export default defineComponent({
|
|||||||
Https.axiosPost(Https.httpUrls.generateLike, data)
|
Https.axiosPost(Https.httpUrls.generateLike, data)
|
||||||
.then(rv => {
|
.then(rv => {
|
||||||
item.like = true
|
item.like = true
|
||||||
|
item.libraryId = rv.libraryId
|
||||||
})
|
})
|
||||||
.catch(res => {})
|
.catch(res => {})
|
||||||
this.fileList[index].state = ''
|
this.fileList[index].state = ''
|
||||||
this.generageAdd(item)
|
this.generageAdd(item)
|
||||||
} else {
|
} else {
|
||||||
this.fileList[index].state = 'delete'
|
this.fileList[index].state = 'delete'
|
||||||
this.generageAdd(item)
|
// this.generageAdd(item)
|
||||||
let data = {
|
let data = {
|
||||||
generateDetailId: item.id,
|
generateDetailId: item.id,
|
||||||
timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone
|
timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone
|
||||||
@@ -1218,6 +1220,7 @@ export default defineComponent({
|
|||||||
Https.axiosGet(Https.httpUrls.generateDislike, { params: data })
|
Https.axiosGet(Https.httpUrls.generateDislike, { params: data })
|
||||||
.then(rv => {
|
.then(rv => {
|
||||||
item.like = false
|
item.like = false
|
||||||
|
item.libraryId = null
|
||||||
})
|
})
|
||||||
.catch(res => {})
|
.catch(res => {})
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -422,6 +422,8 @@ export default defineComponent({
|
|||||||
},
|
},
|
||||||
//创建定时器
|
//创建定时器
|
||||||
createTimer() {
|
createTimer() {
|
||||||
|
clearInterval(this.timer);
|
||||||
|
this.time = 60;
|
||||||
this.timer = setInterval(() => {
|
this.timer = setInterval(() => {
|
||||||
this.time--;
|
this.time--;
|
||||||
if (!this.time) {
|
if (!this.time) {
|
||||||
|
|||||||
@@ -119,10 +119,22 @@ export default defineComponent({
|
|||||||
file.level2Type = cate.value;
|
file.level2Type = cate.value;
|
||||||
file.categoryValue = cate.value;
|
file.categoryValue = cate.value;
|
||||||
file.category = cate.name;
|
file.category = cate.name;
|
||||||
if(props.isSetSketchCategory){
|
|
||||||
|
console.log("libraryId:" + file.libraryId)
|
||||||
|
if(file.libraryId){
|
||||||
|
let data = {
|
||||||
|
libraryId:[file.libraryId],
|
||||||
|
level2Type:props.item.categoryValue,
|
||||||
|
}
|
||||||
|
Https.axiosPost(Https.httpUrls.setSketchLibrary,data).then(
|
||||||
|
(rv: any) => {
|
||||||
|
emit('upTypeSucced')
|
||||||
|
}
|
||||||
|
).catch((res)=>{
|
||||||
|
});
|
||||||
|
}else if(props.isSetSketchCategory){
|
||||||
setSketchLibrary(props.item)
|
setSketchLibrary(props.item)
|
||||||
}
|
}
|
||||||
// this.store.commit("sketchGenerateFiles", this.fileList);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
let setSketchLibrary = (item:any)=>{
|
let setSketchLibrary = (item:any)=>{
|
||||||
|
|||||||
@@ -193,10 +193,56 @@
|
|||||||
<div v-show="frogetPasswordStep === 3">
|
<div v-show="frogetPasswordStep === 3">
|
||||||
<div class="forget_passored_form_content">
|
<div class="forget_passored_form_content">
|
||||||
<div class="forget_passored_form_title">Password</div>
|
<div class="forget_passored_form_title">Password</div>
|
||||||
|
<div v-show="passwordConditionShow" class="conditionShow">
|
||||||
|
<div class="item">
|
||||||
|
<div class="icon">
|
||||||
|
<i
|
||||||
|
v-show="!passwordCondition.length"
|
||||||
|
class="fi fi-br-cross-small"
|
||||||
|
></i>
|
||||||
|
<i
|
||||||
|
v-show="passwordCondition.length"
|
||||||
|
class="fi fi-br-check"
|
||||||
|
></i>
|
||||||
|
</div>
|
||||||
|
<div class="text">At least 8 characters long</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<div class="icon">
|
||||||
|
<i
|
||||||
|
v-show="!passwordCondition.special"
|
||||||
|
class="fi fi-br-cross-small"
|
||||||
|
></i>
|
||||||
|
<i
|
||||||
|
v-show="passwordCondition.special"
|
||||||
|
class="fi fi-br-check"
|
||||||
|
></i>
|
||||||
|
</div>
|
||||||
|
<div class="text">Must contain special characters</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<div class="icon">
|
||||||
|
<i
|
||||||
|
v-show="!passwordCondition.group"
|
||||||
|
class="fi fi-br-cross-small"
|
||||||
|
></i>
|
||||||
|
<i
|
||||||
|
v-show="passwordCondition.group"
|
||||||
|
class="fi fi-br-check"
|
||||||
|
></i>
|
||||||
|
</div>
|
||||||
|
<div class="text">
|
||||||
|
Mix of uppercase, lowercase and numbers
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<input
|
<input
|
||||||
class="forget_passored_form_input"
|
class="forget_passored_form_input"
|
||||||
placeholder="Enter a new password"
|
placeholder="Enter a new password"
|
||||||
v-model="newPassword"
|
v-model="newPassword"
|
||||||
|
@focus="() => (passwordConditionShow = true)"
|
||||||
|
@blur="() => (passwordConditionShow = false)"
|
||||||
|
@input="passwordInput"
|
||||||
@keydown.enter="submitResetPassword()"
|
@keydown.enter="submitResetPassword()"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
@@ -302,6 +348,12 @@ export default defineComponent({
|
|||||||
passwordType: "password",
|
passwordType: "password",
|
||||||
userId: "",
|
userId: "",
|
||||||
loginTime: true,
|
loginTime: true,
|
||||||
|
passwordConditionShow:false,
|
||||||
|
passwordCondition: {
|
||||||
|
length: false,
|
||||||
|
special: false,
|
||||||
|
group: false,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
onBeforeUnmount() {
|
onBeforeUnmount() {
|
||||||
@@ -544,9 +596,26 @@ export default defineComponent({
|
|||||||
sessionStorage.setItem("sessionId", randomNum);
|
sessionStorage.setItem("sessionId", randomNum);
|
||||||
sessionStorage.setItem("record", JSON.stringify([]));
|
sessionStorage.setItem("record", JSON.stringify([]));
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
passwordInput(e) {
|
||||||
|
this.isPassword(this.newPassword);
|
||||||
|
},
|
||||||
|
isPassword(password: any) {
|
||||||
|
this.passwordCondition.length = /.{8,}/.test(password);
|
||||||
|
this.passwordCondition.special =
|
||||||
|
/[!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?]/.test(password);
|
||||||
|
this.passwordCondition.group =
|
||||||
|
/[a-z]/.test(password) && /[A-Z]/.test(password) && /\d/.test(password);
|
||||||
|
return Object.values(this.passwordCondition).filter(
|
||||||
|
(value) => value === true
|
||||||
|
).length;
|
||||||
},
|
},
|
||||||
//修改密码提交
|
//修改密码提交
|
||||||
submitResetPassword() {
|
submitResetPassword() {
|
||||||
|
if (this.isPassword(this.newPassword) < 3) {
|
||||||
|
message.info("You must satisfy ALL password conditions to register.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
let data = {
|
let data = {
|
||||||
email: this.forgetPasswordEmail,
|
email: this.forgetPasswordEmail,
|
||||||
emailVerifyCode: this.forgetEmailValue,
|
emailVerifyCode: this.forgetEmailValue,
|
||||||
@@ -563,6 +632,8 @@ export default defineComponent({
|
|||||||
|
|
||||||
//创建定时器
|
//创建定时器
|
||||||
createTimer() {
|
createTimer() {
|
||||||
|
clearInterval(this.timer);
|
||||||
|
this.time = 60;
|
||||||
this.timer = setInterval(() => {
|
this.timer = setInterval(() => {
|
||||||
this.time--;
|
this.time--;
|
||||||
if (this.time <= 0) this.clearTimer(0);
|
if (this.time <= 0) this.clearTimer(0);
|
||||||
@@ -607,6 +678,36 @@ export default defineComponent({
|
|||||||
.login_page {
|
.login_page {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
.conditionShow {
|
||||||
|
bottom: 0;
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
left: auto;
|
||||||
|
transform: translateY(-5rem);
|
||||||
|
background: #404040;
|
||||||
|
color: #fff;
|
||||||
|
font-size: 1.4rem;
|
||||||
|
padding: 2rem;
|
||||||
|
border-radius: 2rem;
|
||||||
|
z-index: 2;
|
||||||
|
> .item {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
&:last-child {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
> .icon {
|
||||||
|
margin-right: 1rem;
|
||||||
|
i {
|
||||||
|
display: flex;
|
||||||
|
// &.fi-br-cross-small{
|
||||||
|
// color: red;
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
.page_content {
|
.page_content {
|
||||||
.login_content {
|
.login_content {
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
|
|||||||
@@ -189,10 +189,56 @@
|
|||||||
<div v-show="frogetPasswordStep === 3">
|
<div v-show="frogetPasswordStep === 3">
|
||||||
<div class="forget_passored_form_content">
|
<div class="forget_passored_form_content">
|
||||||
<div class="forget_passored_form_title">Password</div>
|
<div class="forget_passored_form_title">Password</div>
|
||||||
|
<div v-show="passwordConditionShow" class="conditionShow">
|
||||||
|
<div class="item">
|
||||||
|
<div class="icon">
|
||||||
|
<i
|
||||||
|
v-show="!passwordCondition.length"
|
||||||
|
class="fi fi-br-cross-small"
|
||||||
|
></i>
|
||||||
|
<i
|
||||||
|
v-show="passwordCondition.length"
|
||||||
|
class="fi fi-br-check"
|
||||||
|
></i>
|
||||||
|
</div>
|
||||||
|
<div class="text">At least 8 characters long</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<div class="icon">
|
||||||
|
<i
|
||||||
|
v-show="!passwordCondition.special"
|
||||||
|
class="fi fi-br-cross-small"
|
||||||
|
></i>
|
||||||
|
<i
|
||||||
|
v-show="passwordCondition.special"
|
||||||
|
class="fi fi-br-check"
|
||||||
|
></i>
|
||||||
|
</div>
|
||||||
|
<div class="text">Must contain special characters</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<div class="icon">
|
||||||
|
<i
|
||||||
|
v-show="!passwordCondition.group"
|
||||||
|
class="fi fi-br-cross-small"
|
||||||
|
></i>
|
||||||
|
<i
|
||||||
|
v-show="passwordCondition.group"
|
||||||
|
class="fi fi-br-check"
|
||||||
|
></i>
|
||||||
|
</div>
|
||||||
|
<div class="text">
|
||||||
|
Mix of uppercase, lowercase and numbers
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<input
|
<input
|
||||||
class="forget_passored_form_input"
|
class="forget_passored_form_input"
|
||||||
placeholder="Enter a new password"
|
placeholder="Enter a new password"
|
||||||
v-model="newPassword"
|
v-model="newPassword"
|
||||||
|
@focus="() => (passwordConditionShow = true)"
|
||||||
|
@blur="() => (passwordConditionShow = false)"
|
||||||
|
@input="passwordInput"
|
||||||
@keydown.enter="submitResetPassword()"
|
@keydown.enter="submitResetPassword()"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
@@ -258,6 +304,7 @@ import { useI18n } from "vue-i18n";
|
|||||||
import { setLang } from "@/tool/guide";
|
import { setLang } from "@/tool/guide";
|
||||||
import md5 from "md5";
|
import md5 from "md5";
|
||||||
import router from "@/router";
|
import router from "@/router";
|
||||||
|
import { pass } from "three/tsl";
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
components: {
|
components: {
|
||||||
VerificationCodeInput,
|
VerificationCodeInput,
|
||||||
@@ -307,6 +354,12 @@ export default defineComponent({
|
|||||||
loginTime: true,
|
loginTime: true,
|
||||||
animation: false,
|
animation: false,
|
||||||
inputCodeTime: null as any,
|
inputCodeTime: null as any,
|
||||||
|
passwordConditionShow:false,
|
||||||
|
passwordCondition: {
|
||||||
|
length: false,
|
||||||
|
special: false,
|
||||||
|
group: false,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
onBeforeUnmount() {
|
onBeforeUnmount() {
|
||||||
@@ -413,14 +466,12 @@ export default defineComponent({
|
|||||||
checkRobot() {
|
checkRobot() {
|
||||||
this.isCheckRobot = !this.isCheckRobot;
|
this.isCheckRobot = !this.isCheckRobot;
|
||||||
},
|
},
|
||||||
|
|
||||||
//提交账号密码预先登录
|
//提交账号密码预先登录
|
||||||
submitPerLogin() {
|
submitPerLogin() {
|
||||||
//输入账号密码
|
//输入账号密码
|
||||||
if (this.emailStap >= 2) {
|
if (this.emailStap >= 2) {
|
||||||
let verificationCodeInputDom:any = this.$refs.verificationCodeInputDom
|
let verificationCodeInputDom:any = this.$refs.verificationCodeInputDom
|
||||||
let code = verificationCodeInputDom.getCtData.map(item => item).join('');
|
let code = verificationCodeInputDom.getCtData.map(item => item).join('');
|
||||||
console.log(code)
|
|
||||||
if(code.length !== this.emailCode.length){
|
if(code.length !== this.emailCode.length){
|
||||||
message.info("Please enter the complete verification code.");
|
message.info("Please enter the complete verification code.");
|
||||||
}else{
|
}else{
|
||||||
@@ -562,9 +613,26 @@ export default defineComponent({
|
|||||||
sessionStorage.setItem("sessionId", randomNum);
|
sessionStorage.setItem("sessionId", randomNum);
|
||||||
sessionStorage.setItem("record", JSON.stringify([]));
|
sessionStorage.setItem("record", JSON.stringify([]));
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
passwordInput(e) {
|
||||||
|
this.isPassword(this.newPassword);
|
||||||
|
},
|
||||||
|
isPassword(password: any) {
|
||||||
|
this.passwordCondition.length = /.{8,}/.test(password);
|
||||||
|
this.passwordCondition.special =
|
||||||
|
/[!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?]/.test(password);
|
||||||
|
this.passwordCondition.group =
|
||||||
|
/[a-z]/.test(password) && /[A-Z]/.test(password) && /\d/.test(password);
|
||||||
|
return Object.values(this.passwordCondition).filter(
|
||||||
|
(value) => value === true
|
||||||
|
).length;
|
||||||
},
|
},
|
||||||
//修改密码提交
|
//修改密码提交
|
||||||
submitResetPassword() {
|
submitResetPassword() {
|
||||||
|
if (this.isPassword(this.newPassword) < 3) {
|
||||||
|
message.info("You must satisfy ALL password conditions to register.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
let data = {
|
let data = {
|
||||||
email: this.forgetPasswordEmail,
|
email: this.forgetPasswordEmail,
|
||||||
emailVerifyCode: this.forgetEmailValue,
|
emailVerifyCode: this.forgetEmailValue,
|
||||||
@@ -581,6 +649,8 @@ export default defineComponent({
|
|||||||
|
|
||||||
//创建定时器
|
//创建定时器
|
||||||
createTimer() {
|
createTimer() {
|
||||||
|
clearInterval(this.timer);
|
||||||
|
this.time = 60;
|
||||||
this.timer = setInterval(() => {
|
this.timer = setInterval(() => {
|
||||||
this.time--;
|
this.time--;
|
||||||
if (this.time <= 0) this.clearTimer(0);
|
if (this.time <= 0) this.clearTimer(0);
|
||||||
@@ -633,6 +703,36 @@ export default defineComponent({
|
|||||||
.login_page {
|
.login_page {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
.conditionShow {
|
||||||
|
bottom: 0;
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
left: auto;
|
||||||
|
transform: translateY(-5rem);
|
||||||
|
background: #404040;
|
||||||
|
color: #fff;
|
||||||
|
font-size: 1.4rem;
|
||||||
|
padding: 2rem;
|
||||||
|
border-radius: 2rem;
|
||||||
|
z-index: 2;
|
||||||
|
> .item {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
&:last-child {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
> .icon {
|
||||||
|
margin-right: 1rem;
|
||||||
|
i {
|
||||||
|
display: flex;
|
||||||
|
// &.fi-br-cross-small{
|
||||||
|
// color: red;
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
.page_content {
|
.page_content {
|
||||||
.login_content {
|
.login_content {
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
@@ -718,7 +818,6 @@ export default defineComponent({
|
|||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.login_form_input {
|
.login_form_input {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 6.75rem;
|
height: 6.75rem;
|
||||||
@@ -885,7 +984,7 @@ export default defineComponent({
|
|||||||
|
|
||||||
.forget_passored_form_content {
|
.forget_passored_form_content {
|
||||||
margin-top: 3.5rem;
|
margin-top: 3.5rem;
|
||||||
|
position: relative;
|
||||||
.forget_passored_form_title {
|
.forget_passored_form_title {
|
||||||
font-size: 2.4rem;
|
font-size: 2.4rem;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
|
|||||||
@@ -200,10 +200,56 @@
|
|||||||
<div v-show="frogetPasswordStep === 3">
|
<div v-show="frogetPasswordStep === 3">
|
||||||
<div class="forget_passored_form_content">
|
<div class="forget_passored_form_content">
|
||||||
<div class="forget_passored_form_title">Password</div>
|
<div class="forget_passored_form_title">Password</div>
|
||||||
|
<div v-show="passwordConditionShow" class="conditionShow">
|
||||||
|
<div class="item">
|
||||||
|
<div class="icon">
|
||||||
|
<i
|
||||||
|
v-show="!passwordCondition.length"
|
||||||
|
class="fi fi-br-cross-small"
|
||||||
|
></i>
|
||||||
|
<i
|
||||||
|
v-show="passwordCondition.length"
|
||||||
|
class="fi fi-br-check"
|
||||||
|
></i>
|
||||||
|
</div>
|
||||||
|
<div class="text">At least 8 characters long</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<div class="icon">
|
||||||
|
<i
|
||||||
|
v-show="!passwordCondition.special"
|
||||||
|
class="fi fi-br-cross-small"
|
||||||
|
></i>
|
||||||
|
<i
|
||||||
|
v-show="passwordCondition.special"
|
||||||
|
class="fi fi-br-check"
|
||||||
|
></i>
|
||||||
|
</div>
|
||||||
|
<div class="text">Must contain special characters</div>
|
||||||
|
</div>
|
||||||
|
<div class="item">
|
||||||
|
<div class="icon">
|
||||||
|
<i
|
||||||
|
v-show="!passwordCondition.group"
|
||||||
|
class="fi fi-br-cross-small"
|
||||||
|
></i>
|
||||||
|
<i
|
||||||
|
v-show="passwordCondition.group"
|
||||||
|
class="fi fi-br-check"
|
||||||
|
></i>
|
||||||
|
</div>
|
||||||
|
<div class="text">
|
||||||
|
Mix of uppercase, lowercase and numbers
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<input
|
<input
|
||||||
class="forget_passored_form_input"
|
class="forget_passored_form_input"
|
||||||
placeholder="Enter a new password"
|
placeholder="Enter a new password"
|
||||||
v-model="newPassword"
|
v-model="newPassword"
|
||||||
|
@focus="() => (passwordConditionShow = true)"
|
||||||
|
@blur="() => (passwordConditionShow = false)"
|
||||||
|
@input="passwordInput"
|
||||||
@keydown.enter="submitResetPassword()"
|
@keydown.enter="submitResetPassword()"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
@@ -315,6 +361,12 @@ export default defineComponent({
|
|||||||
loginTime: true,
|
loginTime: true,
|
||||||
animation: false,
|
animation: false,
|
||||||
inputCodeTime: null as any,
|
inputCodeTime: null as any,
|
||||||
|
passwordConditionShow:false,
|
||||||
|
passwordCondition: {
|
||||||
|
length: false,
|
||||||
|
special: false,
|
||||||
|
group: false,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
onBeforeUnmount() {
|
onBeforeUnmount() {
|
||||||
@@ -572,9 +624,26 @@ export default defineComponent({
|
|||||||
sessionStorage.setItem("sessionId", randomNum);
|
sessionStorage.setItem("sessionId", randomNum);
|
||||||
sessionStorage.setItem("record", JSON.stringify([]));
|
sessionStorage.setItem("record", JSON.stringify([]));
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
passwordInput(e) {
|
||||||
|
this.isPassword(this.newPassword);
|
||||||
|
},
|
||||||
|
isPassword(password: any) {
|
||||||
|
this.passwordCondition.length = /.{8,}/.test(password);
|
||||||
|
this.passwordCondition.special =
|
||||||
|
/[!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?]/.test(password);
|
||||||
|
this.passwordCondition.group =
|
||||||
|
/[a-z]/.test(password) && /[A-Z]/.test(password) && /\d/.test(password);
|
||||||
|
return Object.values(this.passwordCondition).filter(
|
||||||
|
(value) => value === true
|
||||||
|
).length;
|
||||||
},
|
},
|
||||||
//修改密码提交
|
//修改密码提交
|
||||||
submitResetPassword() {
|
submitResetPassword() {
|
||||||
|
if (this.isPassword(this.newPassword) < 3) {
|
||||||
|
message.info("You must satisfy ALL password conditions to register.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
let data = {
|
let data = {
|
||||||
email: this.forgetPasswordEmail,
|
email: this.forgetPasswordEmail,
|
||||||
emailVerifyCode: this.forgetEmailValue,
|
emailVerifyCode: this.forgetEmailValue,
|
||||||
@@ -591,6 +660,8 @@ export default defineComponent({
|
|||||||
|
|
||||||
//创建定时器
|
//创建定时器
|
||||||
createTimer() {
|
createTimer() {
|
||||||
|
clearInterval(this.timer);
|
||||||
|
this.time = 60;
|
||||||
this.timer = setInterval(() => {
|
this.timer = setInterval(() => {
|
||||||
this.time--;
|
this.time--;
|
||||||
if (this.time <= 0) this.clearTimer(0);
|
if (this.time <= 0) this.clearTimer(0);
|
||||||
@@ -643,6 +714,36 @@ export default defineComponent({
|
|||||||
.login_page {
|
.login_page {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
.conditionShow {
|
||||||
|
bottom: 0;
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
left: auto;
|
||||||
|
transform: translateY(-5rem);
|
||||||
|
background: #404040;
|
||||||
|
color: #fff;
|
||||||
|
font-size: 1.4rem;
|
||||||
|
padding: 2rem;
|
||||||
|
border-radius: 2rem;
|
||||||
|
z-index: 2;
|
||||||
|
> .item {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
margin-bottom: 0.5rem;
|
||||||
|
&:last-child {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
> .icon {
|
||||||
|
margin-right: 1rem;
|
||||||
|
i {
|
||||||
|
display: flex;
|
||||||
|
// &.fi-br-cross-small{
|
||||||
|
// color: red;
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
.page_content {
|
.page_content {
|
||||||
.login_content {
|
.login_content {
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
|
|||||||
@@ -686,7 +686,7 @@ export default defineComponent({
|
|||||||
if(this.colorList[colorList.length - 1]?.gradient && this.colorList[colorList.length - 1]?.gradient?.selectIndex>-1 && this.colorList[colorList.length - 1]?.gradient?.gradientShow){
|
if(this.colorList[colorList.length - 1]?.gradient && this.colorList[colorList.length - 1]?.gradient?.selectIndex>-1 && this.colorList[colorList.length - 1]?.gradient?.gradientShow){
|
||||||
this.selectColor = {rgba:this.colorList[colorList.length - 1].gradient.gradientList[colorList.length - 1].rgba,hex:hex} //顔色选择器默认颜色
|
this.selectColor = {rgba:this.colorList[colorList.length - 1].gradient.gradientList[colorList.length - 1].rgba,hex:hex} //顔色选择器默认颜色
|
||||||
}else{
|
}else{
|
||||||
this.selectColor = {rgba:this.colorList[colorList.length - 1].rgba,hex:hex} //顔色选择器默认颜色
|
this.selectColor = {rgba:this.colorList[colorList.length - 1]?.rgba,hex:hex} //顔色选择器默认颜色
|
||||||
}
|
}
|
||||||
this.store.commit('setColorboardList',colorList)
|
this.store.commit('setColorboardList',colorList)
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -742,6 +742,8 @@ export default defineComponent({
|
|||||||
|
|
||||||
//创建定时器
|
//创建定时器
|
||||||
createTimer() {
|
createTimer() {
|
||||||
|
clearInterval(this.timer);
|
||||||
|
this.time = 60;
|
||||||
this.timer = setInterval(() => {
|
this.timer = setInterval(() => {
|
||||||
this.time--;
|
this.time--;
|
||||||
if (!this.time) {
|
if (!this.time) {
|
||||||
|
|||||||
@@ -5,6 +5,7 @@
|
|||||||
@canvasInit="canvasInit"
|
@canvasInit="canvasInit"
|
||||||
@changeCanvas="changeCanvas"
|
@changeCanvas="changeCanvas"
|
||||||
is-general
|
is-general
|
||||||
|
:hideCanvas="hideCanvas"
|
||||||
:isBackgroundChangeable="false"
|
:isBackgroundChangeable="false"
|
||||||
ref="editCanvas"></editCanvas>
|
ref="editCanvas"></editCanvas>
|
||||||
</div>
|
</div>
|
||||||
@@ -26,6 +27,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 editCanvas from "@/component/Canvas/CanvasEditor/index.vue";
|
import editCanvas from "@/component/Canvas/CanvasEditor/index.vue";
|
||||||
|
import { useRouter, useRoute } from 'vue-router'
|
||||||
|
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
@@ -53,12 +55,14 @@ export default defineComponent({
|
|||||||
const isShowMark = ref(false)
|
const isShowMark = ref(false)
|
||||||
const component = reactive({
|
const component = reactive({
|
||||||
})
|
})
|
||||||
|
const route = useRoute()
|
||||||
const data = reactive({
|
const data = reactive({
|
||||||
canvasLoad:false,
|
canvasLoad:false,
|
||||||
canvasJSON:computed(()=>store.state.HomeStoreModule.canvasData.canvas),
|
canvasJSON:computed(()=>store.state.HomeStoreModule.canvasData.canvas),
|
||||||
canvasConfig:{
|
canvasConfig:{
|
||||||
|
|
||||||
},
|
},
|
||||||
|
hideCanvas: computed(()=>store.state.Workspace.projectPath !== route.fullPath),
|
||||||
})
|
})
|
||||||
watch(()=>data.canvasJSON,(newVal)=>{
|
watch(()=>data.canvasJSON,(newVal)=>{
|
||||||
dataDom.editCanvas.loadJSON(newVal)
|
dataDom.editCanvas.loadJSON(newVal)
|
||||||
|
|||||||
@@ -217,6 +217,7 @@ export const Https = {
|
|||||||
projectSaveOrUpdate:`/api/project/saveOrUpdate`, //History修改用户分组名
|
projectSaveOrUpdate:`/api/project/saveOrUpdate`, //History修改用户分组名
|
||||||
historyChoose:`/api/history/choose`, //History choose
|
historyChoose:`/api/history/choose`, //History choose
|
||||||
getDesignDetail:`/api/design/detail/getDetail`,//查询design详情
|
getDesignDetail:`/api/design/detail/getDetail`,//查询design详情
|
||||||
|
addSysSketchToLibrary:`/api/library/addSysSketchToLibrary`,//把系统衣服添加的library
|
||||||
designSingleWithGradient:`/api/design/detail/designSingleWithGradient`,//查询需要更新mask列表
|
designSingleWithGradient:`/api/design/detail/designSingleWithGradient`,//查询需要更新mask列表
|
||||||
getNextSysElement:'/api/design/detail/getNextSysElement',//切换系统的element
|
getNextSysElement:'/api/design/detail/getNextSysElement',//切换系统的element
|
||||||
detailPrintDot:'/api/design/detail/printDot',//print打点预览
|
detailPrintDot:'/api/design/detail/printDot',//print打点预览
|
||||||
|
|||||||
@@ -1067,6 +1067,7 @@ export default defineComponent({
|
|||||||
Https.axiosPost(Https.httpUrls.generateLike, data).then(
|
Https.axiosPost(Https.httpUrls.generateLike, data).then(
|
||||||
(rv) => {
|
(rv) => {
|
||||||
item.like = true
|
item.like = true
|
||||||
|
item.libraryId = rv.libraryId
|
||||||
}
|
}
|
||||||
).catch(res=>{
|
).catch(res=>{
|
||||||
});
|
});
|
||||||
@@ -1078,6 +1079,7 @@ export default defineComponent({
|
|||||||
Https.axiosGet(Https.httpUrls.generateDislike, {params:data}).then(
|
Https.axiosGet(Https.httpUrls.generateDislike, {params:data}).then(
|
||||||
(rv) => {
|
(rv) => {
|
||||||
item.like = false
|
item.like = false
|
||||||
|
item.libraryId = null
|
||||||
}
|
}
|
||||||
).catch(res=>{
|
).catch(res=>{
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user