Compare commits
21 Commits
82941bca7c
...
StableVers
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
222203cb03 | ||
|
|
3df8b19c7e | ||
|
|
2adbfa9fff | ||
|
|
574f3d247d | ||
| 6fc7326e92 | |||
|
|
9c981a08ae | ||
|
|
3ed5a37e5b | ||
|
|
5546c71ec0 | ||
|
|
8a7776a4b6 | ||
|
|
a1281c8e3f | ||
|
|
9a40e69081 | ||
|
|
e27b43dc67 | ||
|
|
b6a55a8124 | ||
| 6cace08a51 | |||
| 6207095221 | |||
|
|
7bb38bf2e5 | ||
|
|
743fc762d6 | ||
| 7297e4e7a4 | |||
| 3bff1ebb66 | |||
| 0d1656ee0a | |||
| 7d0873d874 |
File diff suppressed because it is too large
Load Diff
@@ -321,6 +321,7 @@ export default defineComponent({
|
|||||||
data = setEditData()
|
data = setEditData()
|
||||||
if (!data.userName || !data.userEmail || !data.validEndTime || !data.systemUser)
|
if (!data.userName || !data.userEmail || !data.validEndTime || !data.systemUser)
|
||||||
return message.warning('Please check the input box marked with *')
|
return message.warning('Please check the input box marked with *')
|
||||||
|
delete data.userName
|
||||||
Https.axiosPost(Https.httpUrls.modifyUser, {}, { params: data }).then(rv => {
|
Https.axiosPost(Https.httpUrls.modifyUser, {}, { params: data }).then(rv => {
|
||||||
if (rv) {
|
if (rv) {
|
||||||
cancelDsign()
|
cancelDsign()
|
||||||
|
|||||||
99
src/component/Administrator/globalAwardPopularity.vue
Normal file
99
src/component/Administrator/globalAwardPopularity.vue
Normal file
@@ -0,0 +1,99 @@
|
|||||||
|
<template>
|
||||||
|
<div class="admin_page globalAwardPopularity" ref="adminPage">
|
||||||
|
<div class="admin_table_search">
|
||||||
|
<div class="admin_state">
|
||||||
|
<div class="admin_state_item">
|
||||||
|
<span>Current Time:</span>
|
||||||
|
<span>{{ currentTimeStr }}</span>
|
||||||
|
</div>
|
||||||
|
<div class="admin_state_item">
|
||||||
|
<span>Raw Visi Count:</span>
|
||||||
|
<span>{{ rawVisitCount }}</span>
|
||||||
|
</div>
|
||||||
|
<div class="admin_state_item">
|
||||||
|
<span>Unique Visit Count:</span>
|
||||||
|
<span>{{ uniqueVisitCount }}</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="admin_search">
|
||||||
|
<div class="admin_search_item" @click="getGlobalAwardPopularity">
|
||||||
|
<i class="fi fi-br-refresh"></i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- <div class="admin_table_content" ref="questionnaireTable">
|
||||||
|
|
||||||
|
</div> -->
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script lang="ts">
|
||||||
|
import { defineComponent, ref, createVNode,toRefs, computed,reactive, onMounted, nextTick } from "vue";
|
||||||
|
import { Https } from "@/tool/https";
|
||||||
|
import type { TableColumnsType } from 'ant-design-vue';
|
||||||
|
|
||||||
|
export default defineComponent({
|
||||||
|
components: {},
|
||||||
|
setup() {
|
||||||
|
const currentTime = ref(new Date())
|
||||||
|
const currentTimeStr = computed(()=>{
|
||||||
|
return currentTime.value.toLocaleString()
|
||||||
|
})
|
||||||
|
const rawVisitCount = ref(0)
|
||||||
|
const uniqueVisitCount = ref(0)
|
||||||
|
const getGlobalAwardPopularity = () => {
|
||||||
|
Https.axiosGet(Https.httpUrls.getGlobalAwardPopularity,).then((rv)=>{
|
||||||
|
currentTime.value = new Date()
|
||||||
|
rawVisitCount.value = rv.rawVisitCount
|
||||||
|
uniqueVisitCount.value = rv.uniqueVisitCount
|
||||||
|
})
|
||||||
|
}
|
||||||
|
onMounted(()=>{
|
||||||
|
getGlobalAwardPopularity()
|
||||||
|
})
|
||||||
|
return {
|
||||||
|
currentTimeStr,
|
||||||
|
getGlobalAwardPopularity,
|
||||||
|
rawVisitCount,
|
||||||
|
uniqueVisitCount,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
};
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
|
||||||
|
},
|
||||||
|
methods: {},
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
<style lang="less" scoped>
|
||||||
|
.admin_page.globalAwardPopularity{
|
||||||
|
.admin_table_search{
|
||||||
|
// flex: 1;
|
||||||
|
width: min-content;
|
||||||
|
justify-content: flex-start;
|
||||||
|
border-radius: 2rem;
|
||||||
|
box-shadow: 0 0 1rem rgba(0, 0, 0, 0.2);
|
||||||
|
margin-left: 2rem;
|
||||||
|
flex-wrap: nowrap;
|
||||||
|
gap: 3rem;
|
||||||
|
}
|
||||||
|
.admin_state{
|
||||||
|
flex-direction: column;
|
||||||
|
width: auto;
|
||||||
|
cursor: auto;
|
||||||
|
.admin_state_item{
|
||||||
|
> span{
|
||||||
|
font-size: 2rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.admin_search{
|
||||||
|
i{
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -409,7 +409,7 @@ export class BrushIndicator {
|
|||||||
// this.show(e.e);
|
// this.show(e.e);
|
||||||
this._mouseEnterHandler && this._mouseEnterHandler(e)
|
this._mouseEnterHandler && this._mouseEnterHandler(e)
|
||||||
} else {
|
} else {
|
||||||
// requestIdleCallback(() => {
|
// setTimeout(() => {
|
||||||
// this.updatePosition(e.e);
|
// this.updatePosition(e.e);
|
||||||
// });
|
// });
|
||||||
|
|
||||||
|
|||||||
@@ -133,11 +133,12 @@ export class RedGreenModeManager {
|
|||||||
this.canvas.on("mouse:up", (event) => {
|
this.canvas.on("mouse:up", (event) => {
|
||||||
// 可以在这里添加更多逻辑,比如生成图片或更新状态
|
// 可以在这里添加更多逻辑,比如生成图片或更新状态
|
||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
requestIdleCallback(async () => {
|
setTimeout(async () => {
|
||||||
if (!this.isInitialized) {
|
if (!this.isInitialized) {
|
||||||
console.warn("红绿图模式未初始化,无法处理鼠标事件");
|
console.warn("红绿图模式未初始化,无法处理鼠标事件");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
console.log("鼠标抬起事件触发", this.onImageGenerated);
|
||||||
if (this.onImageGenerated) {
|
if (this.onImageGenerated) {
|
||||||
const imageData = await this.canvasManager.exportImage({
|
const imageData = await this.canvasManager.exportImage({
|
||||||
restoreOpacityInRedGreen: true, // 恢复红绿图模式下的透明度
|
restoreOpacityInRedGreen: true, // 恢复红绿图模式下的透明度
|
||||||
|
|||||||
@@ -37,7 +37,6 @@ export class ThumbnailManager {
|
|||||||
|
|
||||||
// 延迟执行,避免阻塞UI
|
// 延迟执行,避免阻塞UI
|
||||||
fabricObjects.length > 0 &&
|
fabricObjects.length > 0 &&
|
||||||
requestIdleCallback(() => {
|
|
||||||
setTimeout(async () => {
|
setTimeout(async () => {
|
||||||
const base64 = await this._generateLayerThumbnailNow(fabricObjects, layer);
|
const base64 = await this._generateLayerThumbnailNow(fabricObjects, layer);
|
||||||
// this.layerThumbnails.set(layerId, base64);
|
// this.layerThumbnails.set(layerId, base64);
|
||||||
@@ -55,7 +54,6 @@ export class ThumbnailManager {
|
|||||||
console.error("生成图层缩略图时出错:", error);
|
console.error("生成图层缩略图时出错:", error);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -65,7 +63,7 @@ export class ThumbnailManager {
|
|||||||
generateAllLayerThumbnails(layers) {
|
generateAllLayerThumbnails(layers) {
|
||||||
if (!layers || !Array.isArray(layers)) return;
|
if (!layers || !Array.isArray(layers)) return;
|
||||||
|
|
||||||
requestIdleCallback(() => {
|
setTimeout(() => {
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
layers.forEach((layer) => {
|
layers.forEach((layer) => {
|
||||||
if (layer && layer.id) {
|
if (layer && layer.id) {
|
||||||
|
|||||||
@@ -155,7 +155,7 @@ export class LiquifyRealTimeUpdater {
|
|||||||
// 使用requestAnimationFrame进行批量渲染优化
|
// 使用requestAnimationFrame进行批量渲染优化
|
||||||
// if (!this.renderingScheduled && !this.config.skipRenderDuringDrag) {
|
// if (!this.renderingScheduled && !this.config.skipRenderDuringDrag) {
|
||||||
// this.renderingScheduled = true;
|
// this.renderingScheduled = true;
|
||||||
// requestIdleCallback(() => {
|
// setTimeout(() => {
|
||||||
// this.canvas.renderAll();
|
// this.canvas.renderAll();
|
||||||
// this.renderingScheduled = false;
|
// this.renderingScheduled = false;
|
||||||
// });
|
// });
|
||||||
|
|||||||
@@ -331,7 +331,6 @@ export default defineComponent({
|
|||||||
store.commit('DesignDetail/setCurrentDetailType',str)
|
store.commit('DesignDetail/setCurrentDetailType',str)
|
||||||
}
|
}
|
||||||
const setClothes = async (list:any,str:string)=>{
|
const setClothes = async (list:any,str:string)=>{
|
||||||
console.log(JSON.parse(JSON.stringify(list)))
|
|
||||||
let clothesList:any = []
|
let clothesList:any = []
|
||||||
if(detailData.isEditPattern.value == 'editSketch')await detailDom.canvasBox.submitBase64Data().then((rv)=>{
|
if(detailData.isEditPattern.value == 'editSketch')await detailDom.canvasBox.submitBase64Data().then((rv)=>{
|
||||||
detailData.selectDetail.sketchString = rv
|
detailData.selectDetail.sketchString = rv
|
||||||
@@ -369,7 +368,6 @@ export default defineComponent({
|
|||||||
// }else if(isCurrent){
|
// }else if(isCurrent){
|
||||||
|
|
||||||
// }
|
// }
|
||||||
console.log(JSON.parse(JSON.stringify(detailData.selectDetail.color)),'=====')
|
|
||||||
color = list[i].color?.rgba?.r != null?`${list[i].color.rgba.r} ${list[i].color.rgba.g} ${list[i].color.rgba.b}`:''
|
color = list[i].color?.rgba?.r != null?`${list[i].color.rgba.r} ${list[i].color.rgba.g} ${list[i].color.rgba.b}`:''
|
||||||
gradient = list[i].gradient
|
gradient = list[i].gradient
|
||||||
if((detailData.currentDetailType == 'sketch' && newData?.sketch) || detailData.isEditPattern.value == 'editSketch'){
|
if((detailData.currentDetailType == 'sketch' && newData?.sketch) || detailData.isEditPattern.value == 'editSketch'){
|
||||||
@@ -565,11 +563,14 @@ export default defineComponent({
|
|||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
//走画布合成图片并且直接分割
|
//走画布合成图片并且直接分割
|
||||||
if(detailData.isEditPattern.value !== 'canvasEditor'){
|
if(detailData.isEditPattern.value !== 'canvasEditor' && detailData.isEditPattern.value !== 'redGreenExample'){
|
||||||
if(detailDom.detailRight?.privewDetail)await (detailDom.detailRight as any).privewDetail()
|
if(detailData.isEditPattern.value !== 'canvasEditor'){
|
||||||
|
if(detailDom.detailRight?.privewDetail)await (detailDom.detailRight as any).privewDetail()
|
||||||
|
}
|
||||||
let otherData = await updateOtherLayers('single')
|
let otherData = await updateOtherLayers('single')
|
||||||
await detailDom.canvasBox.updateOtherLayers(otherData)
|
await detailDom.canvasBox.updateOtherLayers(otherData)
|
||||||
}
|
}
|
||||||
|
|
||||||
await detailDom.canvasBox.privewDetail()
|
await detailDom.canvasBox.privewDetail()
|
||||||
await upDateFrontBackSketch()
|
await upDateFrontBackSketch()
|
||||||
await uploadSelectDetail()
|
await uploadSelectDetail()
|
||||||
@@ -625,7 +626,7 @@ export default defineComponent({
|
|||||||
if(detailData.isEditPattern.value && detailData.isEditPattern.value == str){
|
if(detailData.isEditPattern.value && detailData.isEditPattern.value == str){
|
||||||
// await detailDom.canvasBox.saveCanvas()
|
// await detailDom.canvasBox.saveCanvas()
|
||||||
await (detailDom.canvasBox as any).privewDetail()
|
await (detailDom.canvasBox as any).privewDetail()
|
||||||
if(detailData.isEditPattern.value == 'canvasEditor')await uploadSelectDetail()
|
if(detailData.isEditPattern.value == 'canvasEditor' || detailData.isEditPattern.value == 'redGreenExample')await uploadSelectDetail()
|
||||||
detailData.isEditPattern.value = ''
|
detailData.isEditPattern.value = ''
|
||||||
}else{
|
}else{
|
||||||
// if(detailData.isEditPattern.value && (str == 'canvasEditor' || str == 'redGreenExample')){
|
// if(detailData.isEditPattern.value && (str == 'canvasEditor' || str == 'redGreenExample')){
|
||||||
@@ -780,8 +781,7 @@ export default defineComponent({
|
|||||||
color.gradient = canvasColor.gradient
|
color.gradient = canvasColor.gradient
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(detailData.isEditPattern.value == 'canvasEditor' || detailData.isEditPattern.value == 'redGreenExample'){
|
||||||
if(detailData.isEditPattern.value == 'canvasEditor'){
|
|
||||||
delete detailData.selectDetail.newDetail
|
delete detailData.selectDetail.newDetail
|
||||||
detailData.selectDetail.trims.prints = allInfo.trims || []
|
detailData.selectDetail.trims.prints = allInfo.trims || []
|
||||||
detailData.selectDetail.printObject.prints = allInfo.prints || []
|
detailData.selectDetail.printObject.prints = allInfo.prints || []
|
||||||
@@ -804,7 +804,6 @@ export default defineComponent({
|
|||||||
if(detailData.currentDetailType == 'color'){
|
if(detailData.currentDetailType == 'color'){
|
||||||
detailData.detailLeftColorKey++
|
detailData.detailLeftColorKey++
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
const canvasReload = async ()=>{
|
const canvasReload = async ()=>{
|
||||||
if(detailData.isEditPattern.value){
|
if(detailData.isEditPattern.value){
|
||||||
|
|||||||
@@ -124,7 +124,11 @@ export default defineComponent({
|
|||||||
const handleResize = ()=>{
|
const handleResize = ()=>{
|
||||||
clearTimeout(time)
|
clearTimeout(time)
|
||||||
time = setTimeout(()=>{
|
time = setTimeout(()=>{
|
||||||
store.commit('DesignDetail/setDesignDetail',getDetailListData.designDetail)
|
let data = {
|
||||||
|
...getDetailListData.designDetail,
|
||||||
|
fromType:'resize',
|
||||||
|
}
|
||||||
|
store.commit('DesignDetail/setDesignDetail',data)
|
||||||
getDetailListDom.position?.updataPosition?.()
|
getDetailListDom.position?.updataPosition?.()
|
||||||
getDetailListDom.modelNav?.setItemPosition?.()
|
getDetailListDom.modelNav?.setItemPosition?.()
|
||||||
getDetailListDom.position?.updateRect?.()
|
getDetailListDom.position?.updateRect?.()
|
||||||
|
|||||||
@@ -189,11 +189,11 @@ export default defineComponent({
|
|||||||
}
|
}
|
||||||
return { scaleX, scaleY, rotate };
|
return { scaleX, scaleY, rotate };
|
||||||
}
|
}
|
||||||
const initMoveableForSelected = () => {
|
const initMoveableForSelected = async (isDestroy:boolean = false) => {
|
||||||
// 销毁旧的实例
|
// 销毁旧的实例
|
||||||
if(selectItem.imgDomIndex == -1)return
|
if(selectItem.imgDomIndex == -1)return
|
||||||
if (moveableInstance.value) {
|
if (moveableInstance?.value?.destroy && !isDestroy) {
|
||||||
moveableInstance.value.destroy();
|
moveableInstance?.value?.destroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
const selectedEl = elementRefs.value[selectItem.imgDomIndex];
|
const selectedEl = elementRefs.value[selectItem.imgDomIndex];
|
||||||
@@ -509,7 +509,7 @@ export default defineComponent({
|
|||||||
watch(()=>detailData.frontBack.front.length,(newValue,oldValue)=>{
|
watch(()=>detailData.frontBack.front.length,(newValue,oldValue)=>{
|
||||||
if(selectItem.selectDetail?.id)selectItem.imgDomIndex = detailData.frontBack.front.findIndex((item:any)=>item.id == selectItem.selectDetail?.id)
|
if(selectItem.selectDetail?.id)selectItem.imgDomIndex = detailData.frontBack.front.findIndex((item:any)=>item.id == selectItem.selectDetail?.id)
|
||||||
setTimeout(()=>{
|
setTimeout(()=>{
|
||||||
initMoveableForSelected()
|
initMoveableForSelected(oldValue == 0)
|
||||||
},100)
|
},100)
|
||||||
})
|
})
|
||||||
const setRevocation = async ()=>{
|
const setRevocation = async ()=>{
|
||||||
|
|||||||
@@ -243,7 +243,7 @@ export default defineComponent({
|
|||||||
}
|
}
|
||||||
.eventsDetail_content_right {
|
.eventsDetail_content_right {
|
||||||
.modal_title_text {
|
.modal_title_text {
|
||||||
letter-spacing: 0.4rem;
|
letter-spacing: 0.3rem;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
&-header {
|
&-header {
|
||||||
display: flex;
|
display: flex;
|
||||||
@@ -310,5 +310,9 @@ export default defineComponent({
|
|||||||
color: rgba(0, 0, 0, 0.45);
|
color: rgba(0, 0, 0, 0.45);
|
||||||
font-size: var(--aida-fsize1-4);
|
font-size: var(--aida-fsize1-4);
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
|
letter-spacing: 0.3rem;
|
||||||
|
}
|
||||||
|
.modal_title_text.content.award{
|
||||||
|
line-height: 1.3;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -734,7 +734,9 @@ export default defineComponent({
|
|||||||
let maxImg = 8
|
let maxImg = 8
|
||||||
if (this.type_.type2 == 'Sketchboard') {
|
if (this.type_.type2 == 'Sketchboard') {
|
||||||
maxImg = 20
|
maxImg = 20
|
||||||
}
|
}else if(this.type_.type2 == 'Printboard'){
|
||||||
|
maxImg = 16
|
||||||
|
}
|
||||||
let parent: any = this.$parent
|
let parent: any = this.$parent
|
||||||
if (parent.isUseGenerate) {
|
if (parent.isUseGenerate) {
|
||||||
// parent.useGenerate.designType = 'collection'
|
// parent.useGenerate.designType = 'collection'
|
||||||
|
|||||||
@@ -70,7 +70,7 @@
|
|||||||
<div class="layout_left_text">
|
<div class="layout_left_text">
|
||||||
{{ $t('layout.LayerOptions') }}
|
{{ $t('layout.LayerOptions') }}
|
||||||
</div>
|
</div>
|
||||||
<div v-for="item,index in moodbList" class="layout_left_items" @click="setmoodb(item)">
|
<div v-for="item,index in moodbList" class="layout_left_items" :class="item.filter((item,index)=>item == 'w2h1').length != 0 ? 'active':''" @click="setmoodb(item)">
|
||||||
<div v-for="clasitem,clasindex in item" :class="clasitem" class="layout_left_item">
|
<div v-for="clasitem,clasindex in item" :class="clasitem" class="layout_left_item">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -932,15 +932,17 @@ export default defineComponent({
|
|||||||
height: calc(35rem*1.2);
|
height: calc(35rem*1.2);
|
||||||
width: calc(57rem*1.2);
|
width: calc(57rem*1.2);
|
||||||
// height: 60%;
|
// height: 60%;
|
||||||
flex-direction: column;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
align-content: space-around;
|
align-content: space-around;
|
||||||
margin: calc(3rem*1.2) auto;
|
margin: calc(3rem*1.2) auto;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
// padding: 3rem 0;
|
// padding: 3rem 0;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
position: relative;
|
position: relative;
|
||||||
user-select:none
|
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
justify-content: space-between;
|
||||||
&.active{
|
&.active{
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
}
|
}
|
||||||
@@ -1120,6 +1122,9 @@ export default defineComponent({
|
|||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
margin-bottom: calc(2rem*1.2);
|
margin-bottom: calc(2rem*1.2);
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
&.active{
|
||||||
|
flex-direction: row;
|
||||||
|
}
|
||||||
.layout_left_item{
|
.layout_left_item{
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
border: 1px solid #000;
|
border: 1px solid #000;
|
||||||
@@ -1152,6 +1157,9 @@ export default defineComponent({
|
|||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
margin-bottom: calc(2rem*1.2);
|
margin-bottom: calc(2rem*1.2);
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
&.active{
|
||||||
|
flex-direction: row;
|
||||||
|
}
|
||||||
.layout_left_item{
|
.layout_left_item{
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
border: 1px solid #000;
|
border: 1px solid #000;
|
||||||
|
|||||||
@@ -233,7 +233,7 @@
|
|||||||
{{ $t('upgradePlan.Continue') }}
|
{{ $t('upgradePlan.Continue') }}
|
||||||
</div>
|
</div>
|
||||||
<div class="payMethod_payAffirm_clause" ref="labelDisclaimer">
|
<div class="payMethod_payAffirm_clause" ref="labelDisclaimer">
|
||||||
<label>
|
<label class="clause">
|
||||||
<!-- <input type="checkbox" v-model="clause" /> -->
|
<!-- <input type="checkbox" v-model="clause" /> -->
|
||||||
<span class="generalModelDescription">
|
<span class="generalModelDescription">
|
||||||
{{ $t('upgradePlan.policy') }}
|
{{ $t('upgradePlan.policy') }}
|
||||||
@@ -251,6 +251,7 @@
|
|||||||
{{ $t('upgradePlan.policy2') }}
|
{{ $t('upgradePlan.policy2') }}
|
||||||
</a>
|
</a>
|
||||||
<!-- . * -->
|
<!-- . * -->
|
||||||
|
{{ $t('upgradePlan.statement') }}
|
||||||
</span>
|
</span>
|
||||||
</label>
|
</label>
|
||||||
<label class="secure">
|
<label class="secure">
|
||||||
@@ -861,6 +862,7 @@ export default defineComponent({
|
|||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
color: #8A8A8A;
|
||||||
label {
|
label {
|
||||||
input {
|
input {
|
||||||
margin-right: 1rem;
|
margin-right: 1rem;
|
||||||
@@ -871,18 +873,22 @@ export default defineComponent({
|
|||||||
vertical-align: top;
|
vertical-align: top;
|
||||||
font-size: 1.4rem;
|
font-size: 1.4rem;
|
||||||
a {
|
a {
|
||||||
color: #000;
|
color: #8A8A8A;
|
||||||
text-decoration: underline;
|
text-decoration: underline;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
> .clause{
|
||||||
|
margin-top: 2rem;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
> .secure {
|
> .secure {
|
||||||
border: 1px solid #ededed;
|
border: 1px solid #ededed;
|
||||||
background: #f1fbf9;
|
background: #f1fbf9;
|
||||||
color: #1cb36c;
|
color: #1cb36c;
|
||||||
padding: 0.4rem 0.8rem;
|
padding: 0.4rem 0.8rem;
|
||||||
border-radius: 0.5rem;
|
border-radius: 0.5rem;
|
||||||
margin-top: 4rem;
|
margin-top: 2rem;
|
||||||
> span {
|
> span {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|||||||
@@ -476,6 +476,11 @@ export default defineComponent({
|
|||||||
},
|
},
|
||||||
setmoodbClass(val:any){
|
setmoodbClass(val:any){
|
||||||
this.moodb_className = val
|
this.moodb_className = val
|
||||||
|
if( val.filter((item,index)=> item == 'w2h1').length != 0 && val.length > 4){
|
||||||
|
this.flex_direction = true
|
||||||
|
}else{
|
||||||
|
this.flex_direction = false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -745,6 +745,12 @@ export default defineComponent({
|
|||||||
"userLikeId": likeItem.id
|
"userLikeId": likeItem.id
|
||||||
}
|
}
|
||||||
arrData.push(obj)
|
arrData.push(obj)
|
||||||
|
designData.selectLikeDesign.forEach((v:any)=>{
|
||||||
|
if(v.id === likeItem.id){
|
||||||
|
v.oldSort = v.sort
|
||||||
|
v.sort = likeItem.sort
|
||||||
|
}
|
||||||
|
})
|
||||||
})
|
})
|
||||||
let data = {
|
let data = {
|
||||||
"userLikeGroupId": userGroupId.value,
|
"userLikeGroupId": userGroupId.value,
|
||||||
@@ -1304,9 +1310,9 @@ export default defineComponent({
|
|||||||
})
|
})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
const parents = designData.selectLikeDesign.filter((item:any) => item.resultType === 'Design');
|
const parents = designData.selectLikeDesign.filter((item:any) => item.resultType === 'Design').filter((item:any) => likeDesignCollectionList.value.some((v:any) => (v.id === item.id)));
|
||||||
parents.map((parent:any) => {
|
parents.map((parent:any) => {
|
||||||
parent.sort = parent.oldSort||parent.sort
|
parent.sort = likeDesignCollectionList.value.find((v:any) => v.id === parent.id)?.sort || parent.oldSort||parent.sort
|
||||||
delete parent.oldSort
|
delete parent.oldSort
|
||||||
return {
|
return {
|
||||||
...parent,
|
...parent,
|
||||||
@@ -1533,7 +1539,7 @@ export default defineComponent({
|
|||||||
this.observerData.time = setTimeout(()=>{
|
this.observerData.time = setTimeout(()=>{
|
||||||
|
|
||||||
this.setSystemDesigner(0)
|
this.setSystemDesigner(0)
|
||||||
this.setDesignItemStyle()
|
// this.setDesignItemStyle()
|
||||||
},100)
|
},100)
|
||||||
// const { width } = entry.contentRect;
|
// const { width } = entry.contentRect;
|
||||||
}
|
}
|
||||||
@@ -1931,6 +1937,7 @@ export default defineComponent({
|
|||||||
this.disLikeLoading = true;
|
this.disLikeLoading = true;
|
||||||
Https.axiosPost(Https.httpUrls.designDislike, data)
|
Https.axiosPost(Https.httpUrls.designDislike, data)
|
||||||
.then((rv: any) => {
|
.then((rv: any) => {
|
||||||
|
console.log(rv)
|
||||||
if (rv) {
|
if (rv) {
|
||||||
this.recycleDomHidden = true
|
this.recycleDomHidden = true
|
||||||
this.store.commit("addDesignCollectionList", [design]);
|
this.store.commit("addDesignCollectionList", [design]);
|
||||||
|
|||||||
@@ -163,6 +163,7 @@ export default defineComponent({
|
|||||||
if(value == 'toProduct'){
|
if(value == 'toProduct'){
|
||||||
list.forEach((item:any) => {
|
list.forEach((item:any) => {
|
||||||
item.type = 'DesignOutfit'
|
item.type = 'DesignOutfit'
|
||||||
|
item.isChecked = false
|
||||||
fileList.push(item)
|
fileList.push(item)
|
||||||
item.childList.forEach((child:any) => {
|
item.childList.forEach((child:any) => {
|
||||||
if(child.resultType == 'ToProductImage'){
|
if(child.resultType == 'ToProductImage'){
|
||||||
@@ -174,6 +175,7 @@ export default defineComponent({
|
|||||||
list.forEach((item:any) => {
|
list.forEach((item:any) => {
|
||||||
if(item.childList){
|
if(item.childList){
|
||||||
item.childList.forEach((child:any) => {
|
item.childList.forEach((child:any) => {
|
||||||
|
child.isChecked = false
|
||||||
if(child.resultType == 'ToProductImage' || child.resultType == 'Relight'){
|
if(child.resultType == 'ToProductImage' || child.resultType == 'Relight'){
|
||||||
fileList.push(child)
|
fileList.push(child)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -75,6 +75,7 @@
|
|||||||
<div class="highlight" v-if="item?.highlight">{{ item?.highlight }}</div>
|
<div class="highlight" v-if="item?.highlight">{{ item?.highlight }}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<span class="statement">{{ productList.Statement }}</span>
|
||||||
</div>
|
</div>
|
||||||
<registerModel ref="registerModel"></registerModel>
|
<registerModel ref="registerModel"></registerModel>
|
||||||
</div>
|
</div>
|
||||||
@@ -104,6 +105,7 @@ export default defineComponent({
|
|||||||
Advantages: '我们的价格方案',
|
Advantages: '我们的价格方案',
|
||||||
Monthly: '月度',
|
Monthly: '月度',
|
||||||
Yearly: '年度',
|
Yearly: '年度',
|
||||||
|
Statement: '*所有付费订阅服务均不可退款。',
|
||||||
monthly: [
|
monthly: [
|
||||||
{
|
{
|
||||||
title: '试用版',
|
title: '试用版',
|
||||||
@@ -248,6 +250,7 @@ export default defineComponent({
|
|||||||
Advantages: 'Our Pricing Plan',
|
Advantages: 'Our Pricing Plan',
|
||||||
Monthly: 'Monthly',
|
Monthly: 'Monthly',
|
||||||
Yearly: 'Yearly',
|
Yearly: 'Yearly',
|
||||||
|
Statement: '*All paid subscription is non-refundable',
|
||||||
monthly: [
|
monthly: [
|
||||||
{
|
{
|
||||||
title: 'Trial',
|
title: 'Trial',
|
||||||
@@ -608,6 +611,13 @@ export default defineComponent({
|
|||||||
justify-content: center;
|
justify-content: center;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.statement{
|
||||||
|
width: 100%;
|
||||||
|
margin-top: 5rem;
|
||||||
|
font-size: 1.4rem;
|
||||||
|
text-align: center;
|
||||||
|
color: #8A8A8A;
|
||||||
|
}
|
||||||
.gallery_list {
|
.gallery_list {
|
||||||
display: flex;
|
display: flex;
|
||||||
// justify-content: center;
|
// justify-content: center;
|
||||||
@@ -617,6 +627,7 @@ export default defineComponent({
|
|||||||
@media (max-width: 767px) {
|
@media (max-width: 767px) {
|
||||||
margin-top: 2.4rem;
|
margin-top: 2.4rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.gallery_item {
|
.gallery_item {
|
||||||
width: 36.2rem;
|
width: 36.2rem;
|
||||||
height: 46.8rem;
|
height: 46.8rem;
|
||||||
|
|||||||
@@ -226,7 +226,12 @@
|
|||||||
<div class="login_form_title marign_top30">
|
<div class="login_form_title marign_top30">
|
||||||
<label :class="{ active: emailStap == 2 }">
|
<label :class="{ active: emailStap == 2 }">
|
||||||
<input :state="emailStap" type="checkbox" v-model="checked" />
|
<input :state="emailStap" type="checkbox" v-model="checked" />
|
||||||
<span>{{userI18n[selectUserI18n].articles}}</span>
|
<span>
|
||||||
|
{{ userI18n[selectUserI18n].AgreeTo }}
|
||||||
|
<a href="https://code-create.com.hk/aida-terms-and-conditions/" target="_blank" style="text-decoration: underline;color: #000;">{{ userI18n[selectUserI18n].Terms }}</a>,
|
||||||
|
<a href="https://aida.com.hk/privacy-policy.html" target="_blank" style="text-decoration: underline;color: #000;">{{ userI18n[selectUserI18n].PrivacyPolicy }}</a>,
|
||||||
|
{{ userI18n[selectUserI18n].AndFees }}
|
||||||
|
</span>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="thirdPartyLogin marign_top30">
|
<div class="thirdPartyLogin marign_top30">
|
||||||
@@ -386,7 +391,10 @@ export default defineComponent({
|
|||||||
SentTo:'Sent to',
|
SentTo:'Sent to',
|
||||||
Resend:'Resend',
|
Resend:'Resend',
|
||||||
PleaseCheck:"Please check the junk box if you haven't received verification code",
|
PleaseCheck:"Please check the junk box if you haven't received verification code",
|
||||||
articles:'I agree to the Terms, Privacy Policy, and Fees.',
|
AgreeTo: 'I agree to the',
|
||||||
|
Terms: 'Terms',
|
||||||
|
PrivacyPolicy: 'Privacy Policy',
|
||||||
|
AndFees: 'and Fees.',
|
||||||
Register:'Register',
|
Register:'Register',
|
||||||
google:'Register with Google',
|
google:'Register with Google',
|
||||||
wechat:'Register with wechat',
|
wechat:'Register with wechat',
|
||||||
@@ -407,7 +415,10 @@ export default defineComponent({
|
|||||||
SentTo:'发送到',
|
SentTo:'发送到',
|
||||||
Resend:'重新发送',
|
Resend:'重新发送',
|
||||||
PleaseCheck:"如果没有收到验证码,请检查垃圾邮件",
|
PleaseCheck:"如果没有收到验证码,请检查垃圾邮件",
|
||||||
articles:'我同意相关条款、隐私政策以及费用规定。',
|
AgreeTo: '我同意',
|
||||||
|
Terms: '条款',
|
||||||
|
PrivacyPolicy: '隐私政策',
|
||||||
|
AndFees: '和费用',
|
||||||
Register:'注册',
|
Register:'注册',
|
||||||
google:'使用谷歌进行注册',
|
google:'使用谷歌进行注册',
|
||||||
wechat:'使用微信进行注册',
|
wechat:'使用微信进行注册',
|
||||||
|
|||||||
@@ -258,6 +258,7 @@ methods: {
|
|||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
text-align: center;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.content_bottom_item:nth-child(4n){
|
.content_bottom_item:nth-child(4n){
|
||||||
|
|||||||
@@ -156,11 +156,12 @@ export default {
|
|||||||
Payment: '付款',
|
Payment: '付款',
|
||||||
PurchasePoints: '购买',
|
PurchasePoints: '购买',
|
||||||
paymentmethod: '请选择付款方式',
|
paymentmethod: '请选择付款方式',
|
||||||
policy: '继续注册账号即表示您同意我们的使用',
|
policy: '*继续注册账号即表示您同意我们的使用',
|
||||||
policy1: '条款',
|
policy1: '条款',
|
||||||
policy2: '服务协议',
|
policy2: '服务协议',
|
||||||
policy3: '(包括服务范围)及',
|
policy3: '(包括服务范围)及',
|
||||||
policy4: '订购协议',
|
policy4: '订购协议',
|
||||||
|
statement: '所有付费订阅服务均不可退款。',
|
||||||
completed: '是否已完成支付?',
|
completed: '是否已完成支付?',
|
||||||
hint: '请保持窗口打开,直到付款完成。如果您无法打开付款窗口,请检查您的浏览器设置,看看弹出窗口是否被阻止。成功付款后,积分可能会延迟发放。请等待1-3分钟,点击积分刷新按钮',
|
hint: '请保持窗口打开,直到付款完成。如果您无法打开付款窗口,请检查您的浏览器设置,看看弹出窗口是否被阻止。成功付款后,积分可能会延迟发放。请等待1-3分钟,点击积分刷新按钮',
|
||||||
Back: '返回'
|
Back: '返回'
|
||||||
|
|||||||
@@ -158,11 +158,12 @@ export default {
|
|||||||
Payment: 'Payment',
|
Payment: 'Payment',
|
||||||
PurchasePoints: 'Purchase points',
|
PurchasePoints: 'Purchase points',
|
||||||
paymentmethod: 'select a payment method',
|
paymentmethod: 'select a payment method',
|
||||||
policy: 'By continuing an account, you agree to our',
|
policy: '*By continuing an account, you agree to our',
|
||||||
policy1: 'Terms',
|
policy1: 'Terms',
|
||||||
policy2: 'Conditions',
|
policy2: 'Conditions',
|
||||||
policy3: ' (including the Scope of service) and the ',
|
policy3: ' (including the Scope of service) and the ',
|
||||||
policy4: 'Subscription Agreement',
|
policy4: 'Subscription Agreement',
|
||||||
|
statement: 'All paid subscription is non-refundable',
|
||||||
completed: 'Is payment completed',
|
completed: 'Is payment completed',
|
||||||
hint: 'Please keep the window open until the payment is completed. If you are unable to open the payment window, please check your browser settings to see if pop-ups are being blocked.Points may be delayed after successful payment. Please wait 1-3 minutes and click the credits refresh button',
|
hint: 'Please keep the window open until the payment is completed. If you are unable to open the payment window, please check your browser settings to see if pop-ups are being blocked.Points may be delayed after successful payment. Please wait 1-3 minutes and click the credits refresh button',
|
||||||
Back: 'Back'
|
Back: 'Back'
|
||||||
|
|||||||
@@ -337,6 +337,13 @@ const routes: Array<RouteRecordRaw> = [
|
|||||||
meta: { enter: 3 },
|
meta: { enter: 3 },
|
||||||
component: () =>
|
component: () =>
|
||||||
import("@/component/Administrator/SE/getGenerateFrequency/index.vue"),
|
import("@/component/Administrator/SE/getGenerateFrequency/index.vue"),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: "globalAwardPopularity",
|
||||||
|
name: "globalAwardPopularity",
|
||||||
|
meta: { enter: 3 },
|
||||||
|
component: () =>
|
||||||
|
import("@/component/Administrator/globalAwardPopularity.vue"),
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -87,8 +87,10 @@ const DesignDetail : Module<DesignDetail,RootState> = {
|
|||||||
left:0,
|
left:0,
|
||||||
top:0,
|
top:0,
|
||||||
}
|
}
|
||||||
v.maskMinioUrl = v.layersObject?.[0]?.maskMinioUrl
|
if(data?.fromType !== 'resize'){
|
||||||
v.maskUrl = v.layersObject?.[0]?.maskUrl
|
v.maskMinioUrl = v.layersObject?.[0]?.maskMinioUrl
|
||||||
|
v.maskUrl = v.layersObject?.[0]?.maskUrl
|
||||||
|
}
|
||||||
v.layersObject[i].designOpenrtionBtn = false
|
v.layersObject[i].designOpenrtionBtn = false
|
||||||
if(v.layersObject[i].imageCategory.indexOf("back") == -1){
|
if(v.layersObject[i].imageCategory.indexOf("back") == -1){
|
||||||
front[index] = v.layersObject[i]
|
front[index] = v.layersObject[i]
|
||||||
|
|||||||
@@ -198,6 +198,13 @@ const all = (t)=>{
|
|||||||
route: '/administrator/subscriptionPlan',
|
route: '/administrator/subscriptionPlan',
|
||||||
key: 'sub14',
|
key: 'sub14',
|
||||||
isShow: true
|
isShow: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'Global Award Popularity',
|
||||||
|
icon: 'usetime',
|
||||||
|
route: '/administrator/globalAwardPopularity',
|
||||||
|
key: 'sub15',
|
||||||
|
isShow: true
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -346,6 +346,7 @@ export const Https = {
|
|||||||
switchSubscribePlan: '/api/subscription_plan/switchSubscriptionPlan', // 切换管理员订阅计划
|
switchSubscribePlan: '/api/subscription_plan/switchSubscriptionPlan', // 切换管理员订阅计划
|
||||||
switchSubAccountSubscribePlan:
|
switchSubAccountSubscribePlan:
|
||||||
'/api/subscription_plan/switchSubAccSubscriptionPlan', // 切换子账号订阅计划
|
'/api/subscription_plan/switchSubAccSubscriptionPlan', // 切换子账号订阅计划
|
||||||
|
getGlobalAwardPopularity: '/api/global-award/page/visit/count', // 获取global award流量
|
||||||
|
|
||||||
//云生成
|
//云生成
|
||||||
designCloud: `/api/design/designCloud`, //创建云生成
|
designCloud: `/api/design/designCloud`, //创建云生成
|
||||||
|
|||||||
@@ -672,28 +672,40 @@ function sketchToMask(sketchImage) {
|
|||||||
img.src = sketchImage;
|
img.src = sketchImage;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
export {
|
|
||||||
isEmail,
|
function isValidUrl(string) {
|
||||||
getUploadUrl,
|
try {
|
||||||
getUniversalZoomLevel,
|
const url = new URL(string)
|
||||||
rgbaToHex,
|
// 通常我们只需要 http 或 https 协议
|
||||||
getMinioUrl,
|
return url.protocol === "http:" || url.protocol === "https:"
|
||||||
base64ToFile,
|
} catch (err) {
|
||||||
dataURLtoFile,
|
return false
|
||||||
blobToFile,
|
}
|
||||||
base64toFile,
|
}
|
||||||
rgbToHsv,
|
|
||||||
formatTime,
|
export {
|
||||||
dataURLtoBlob,
|
isEmail,
|
||||||
isMoible,
|
getUploadUrl,
|
||||||
downloadIamge,
|
getUniversalZoomLevel,
|
||||||
downloadVideoWithFetch,
|
rgbaToHex,
|
||||||
getBrowserInfo,
|
getMinioUrl,
|
||||||
setPubDate,
|
base64ToFile,
|
||||||
murmur,
|
dataURLtoFile,
|
||||||
setGradual,
|
blobToFile,
|
||||||
calculateGradientCoordinate,
|
base64toFile,
|
||||||
segmentImage,
|
rgbToHsv,
|
||||||
UrlToFile,
|
formatTime,
|
||||||
sketchToMask
|
dataURLtoBlob,
|
||||||
|
isMoible,
|
||||||
|
downloadIamge,
|
||||||
|
downloadVideoWithFetch,
|
||||||
|
getBrowserInfo,
|
||||||
|
setPubDate,
|
||||||
|
murmur,
|
||||||
|
setGradual,
|
||||||
|
calculateGradientCoordinate,
|
||||||
|
segmentImage,
|
||||||
|
UrlToFile,
|
||||||
|
sketchToMask,
|
||||||
|
isValidUrl
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user