Merge remote-tracking branch 'origin/develop' into StableVersion
This commit is contained in:
@@ -2,12 +2,42 @@
|
||||
<div class="homeMain_max Guide_1_16_1">
|
||||
<header class="homeMain_heade">
|
||||
<div class="homeMain_right_content">
|
||||
<div class="homeMain_user_icon"></div>
|
||||
<div class="homeMain_user">
|
||||
<div class="homeMain_user_icon" @click="openAccount">
|
||||
<img :src="userInfo?.avatar" alt="">
|
||||
</div>
|
||||
<div class="homeMain_user_detail">
|
||||
<div v-if="isTest" class="username">{{$t('Header.hello')}}@{{ $t('isTest.userName') }}</div>
|
||||
<div v-else class="username">{{$t('Header.hello')}}@{{ cookieUserInfo?.userName }}</div>
|
||||
<div class="homeMain_user_detail_item homeMain_user_detail_attention">
|
||||
<div class="attention_item">
|
||||
<!-- 点击事件就用下面的div -->
|
||||
<!-- <div class="attention_item attention_item_active"> -->
|
||||
<div>{{ userInfo?.followeeCount }}</div>
|
||||
<span>{{$t('account.Follow')}}</span>
|
||||
</div>
|
||||
<div class="attention_item">
|
||||
<div>{{ userInfo?.followerCount }}</div>
|
||||
<span>{{$t('account.Fans')}}</span>
|
||||
</div>
|
||||
<!-- <div class="attention_item">
|
||||
<div>22</div>
|
||||
<span>作品数</span>
|
||||
</div> -->
|
||||
</div>
|
||||
<div class="homeMain_user_detail_item homeMain_user_detail_setUser" @click="openAccount">
|
||||
<i class="fi fi-rr-user"></i>
|
||||
<div>{{$t('Header.personal')}}</div>
|
||||
<i class="icon iconfont icon-xiala"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="homeMain_user_content">
|
||||
<div v-if="isTest" class="username"><span>/</span> {{$t('Header.hello')}}@{{ $t('isTest.userName') }}</div>
|
||||
<div v-else class="username"><span>/</span> {{$t('Header.hello')}}@{{ userInfo?.userName }}</div>
|
||||
<div v-else class="username"><span>/</span> {{$t('Header.hello')}}@{{ cookieUserInfo?.userName }}</div>
|
||||
<div
|
||||
v-if="!isMurmur"
|
||||
|
||||
:class="[
|
||||
'icon',
|
||||
'iconfont',
|
||||
@@ -18,6 +48,7 @@
|
||||
></div>
|
||||
|
||||
</div>
|
||||
|
||||
<div
|
||||
class="trialApproval button_second credits hideChecked"
|
||||
>
|
||||
@@ -49,13 +80,30 @@
|
||||
</router-link>
|
||||
</nav> -->
|
||||
<navRouter :routerList="navRouterList"></navRouter>
|
||||
|
||||
<div class="homeMain_right">
|
||||
<img
|
||||
<!-- <img
|
||||
class="homeMain_logo"
|
||||
@click="turnToNewPage('https://www.aidlab.hk/en/')"
|
||||
src="@/assets/images/loginPage/aida_logo.png"
|
||||
/>
|
||||
/> -->
|
||||
<div class="trialApproval credits message">
|
||||
<div class="message_iconItem">
|
||||
<a-badge :count="messageNum">
|
||||
<i class="fi fi-rr-envelope" @click="openMessage"></i>
|
||||
</a-badge>
|
||||
</div>
|
||||
|
||||
<div class="message_iconItem">
|
||||
<a-badge :count="messageType?.newPosted">
|
||||
<!-- <i class="fi fi-rr-envelope" @click="openMessage"></i> -->
|
||||
<i class="fi fi-rr-bell" @click.stop="openNewPosted"></i>
|
||||
</a-badge>
|
||||
<div class="message_iconItem_value select_block" v-show="isNewPosted" style="width: 40rem">
|
||||
<newPosted ref="newPosted"></newPosted>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<Habit></Habit>
|
||||
</div>
|
||||
<nav class="select_block" v-show="isShowOperate">
|
||||
@@ -76,7 +124,7 @@
|
||||
<i class="fi fi-rs-notebook"></i>
|
||||
<span class="select_item_des">{{$t('Header.ViewOrders')}}</span>
|
||||
</div>
|
||||
<router-link class="select_item" v-if="AdministratorUserIdList.indexOf(userInfo?.userId) >= 0" :to="`/administrator`">
|
||||
<router-link class="select_item" v-if="AdministratorUserIdList.indexOf(cookieUserInfo?.userId) >= 0" :to="`/administrator`">
|
||||
<span class="icon iconfont icon-yonghu"></span>
|
||||
<span class="select_item_des">Administrator</span>
|
||||
</router-link>
|
||||
@@ -115,7 +163,7 @@
|
||||
</div>
|
||||
</template>
|
||||
<script >
|
||||
import { defineComponent, createVNode, ref, computed, onMounted } from "vue";
|
||||
import { defineComponent, createVNode, ref,toRefs, reactive, computed, onMounted } from "vue";
|
||||
import { isEmail } from "@/tool/util";
|
||||
import { setCookie, getCookie, WriteCookie,clonAllCookie } from "@/tool/cookie";
|
||||
import payOrder from "@/component/Pay/payOrder.vue";
|
||||
@@ -128,17 +176,23 @@ import { Modal, message } from "ant-design-vue";
|
||||
import { ExclamationCircleOutlined } from "@ant-design/icons-vue";
|
||||
import RobotAssist from "@/component/HomePage/RobotAssist.vue";
|
||||
import scaleVideo from "@/component/HomePage/scaleVideo.vue";
|
||||
import newPosted from "@/component/HomePage/newPosted.vue";
|
||||
import navRouter from "@/component/modules/navRouter.vue";
|
||||
import { useStore } from "vuex";
|
||||
import { setLang } from "@/tool/guide";
|
||||
import showViewVideo from "@/tool/mount";
|
||||
import { useI18n } from "vue-i18n";
|
||||
import navRouter from "@/component/modules/navRouter.vue";
|
||||
import { gsap, TweenMax,TweenLite } from "gsap";
|
||||
import { ScrollTrigger } from "gsap/ScrollTrigger";
|
||||
import MyWs from "@/tool/webSocket";
|
||||
import MyEvent from "@/tool/myEvents";
|
||||
export default defineComponent({
|
||||
components: {
|
||||
VerificationCodeInput,
|
||||
Habit,
|
||||
RobotAssist,
|
||||
scaleVideo,
|
||||
newPosted,
|
||||
UpgradePlan,
|
||||
payOrder,
|
||||
TaskPage,
|
||||
@@ -148,16 +202,104 @@ export default defineComponent({
|
||||
const store = useStore();
|
||||
const {t} = useI18n()
|
||||
const {locale} = useI18n()
|
||||
let userInfo= computed(()=>{
|
||||
return store.state.UserHabit.userInfo
|
||||
})
|
||||
let isTest = ref()
|
||||
let isMurmur = ref()
|
||||
let credits = computed(()=>{
|
||||
return store.state.UserHabit.credits.value
|
||||
})
|
||||
|
||||
let activeCredits = ref(false)
|
||||
let getLangIsShowMark = ref(true)
|
||||
let AdministratorUserIdList = [88,6,46,31,73,83,87,4]
|
||||
let navRouterList = ref([])
|
||||
let messageNum = computed(()=>{
|
||||
return store.state.UserHabit.messageSystem.messageNum
|
||||
})
|
||||
let messageType = computed(()=>{
|
||||
return store.state.UserHabit.messageSystem.messageType
|
||||
})
|
||||
let stateList = reactive({
|
||||
isNewPosted:false,
|
||||
isShowOperate:false,
|
||||
isLanguage:false,
|
||||
})
|
||||
let isNewPosted = ref(false)
|
||||
let isShowOperate = ref(false)
|
||||
let isLanguage = ref(false)
|
||||
|
||||
let newPosted = ref(null)
|
||||
let getUnreadCount = ()=>{
|
||||
Https.axiosGet(Https.httpUrls.getUnreadCount).then((rv)=>{
|
||||
if(rv){
|
||||
store.commit('setMessageSystem',[rv])
|
||||
}
|
||||
})
|
||||
}
|
||||
// MyWs.linkWs("wss://"+MyWs.messageUrl,'message')
|
||||
MyWs.linkWs("wss://"+MyWs.messageUrl,'message')
|
||||
let getWsMessage = (data)=>{
|
||||
let userInfo = ['followeeCount','followerCount']
|
||||
let obj = {}
|
||||
let isObj = false
|
||||
data.forEach(element => {
|
||||
const keys = Object.keys(element)[0]
|
||||
if(userInfo.indexOf(keys) > 0){
|
||||
obj[keys] = element[keys]
|
||||
isObj = true
|
||||
}
|
||||
});
|
||||
if(isObj)store.commit('setUserInfo',obj)
|
||||
|
||||
store.commit('setMessageSystem',data)
|
||||
}
|
||||
MyEvent.add('getMessage',getWsMessage)
|
||||
// setTimeout(() => {
|
||||
// MyWs.sendMessage('aaaa')
|
||||
// }, 3000);
|
||||
// MyWs.ws.onmessage = (data)=>{
|
||||
// console.log(JSON.parse(data.data),232);
|
||||
// }
|
||||
|
||||
let openNewPosted = ()=>{
|
||||
stateList.isNewPosted = !stateList.isNewPosted
|
||||
newPosted.value.init()
|
||||
document.addEventListener(
|
||||
"click",
|
||||
closeShowOperateContent,
|
||||
false
|
||||
);
|
||||
}
|
||||
//点击下拉图标出现操作
|
||||
let changeShowOperateContent=() =>{
|
||||
stateList.isShowOperate = !stateList.isShowOperate;
|
||||
document.addEventListener(
|
||||
"click",
|
||||
closeShowOperateContent,
|
||||
false
|
||||
);
|
||||
}
|
||||
let changeLanguage=() =>{
|
||||
stateList.isLanguage = !stateList.isLanguage;
|
||||
document.addEventListener(
|
||||
"click",
|
||||
closeShowOperateContent,
|
||||
false
|
||||
);
|
||||
}
|
||||
|
||||
//关闭下拉图标
|
||||
let closeShowOperateContent=() =>{
|
||||
stateList.isShowOperate = false;
|
||||
stateList.isLanguage = false
|
||||
stateList.isNewPosted = false
|
||||
document.removeEventListener("click", closeShowOperateContent);
|
||||
}
|
||||
|
||||
onMounted(()=>{
|
||||
getUnreadCount()
|
||||
navRouterList.value = [
|
||||
{
|
||||
routerName:['homePage'],
|
||||
@@ -184,6 +326,7 @@ export default defineComponent({
|
||||
})
|
||||
return {
|
||||
store,
|
||||
userInfo,
|
||||
t,
|
||||
locale,
|
||||
isTest,
|
||||
@@ -193,11 +336,18 @@ export default defineComponent({
|
||||
getLangIsShowMark,
|
||||
AdministratorUserIdList,
|
||||
navRouterList,
|
||||
messageNum,
|
||||
messageType,
|
||||
...toRefs(stateList),
|
||||
newPosted,
|
||||
openNewPosted,
|
||||
changeShowOperateContent,
|
||||
changeLanguage,
|
||||
closeShowOperateContent,
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
isShowOperate: false,
|
||||
bindEmailVisible: false,
|
||||
isHaveBindEmail: false,
|
||||
bindEmailStep: 1,
|
||||
@@ -205,12 +355,13 @@ export default defineComponent({
|
||||
emailCode: ["", "", "", "", "", ""], //邮箱验证码
|
||||
time: 60, //60秒倒计时
|
||||
timer: 0,
|
||||
userInfo: {},
|
||||
cookieUserInfo: {
|
||||
userId:-1
|
||||
},
|
||||
timerOperate: null,
|
||||
numTime: 30,
|
||||
timerSec: null,
|
||||
modalWarning: null,
|
||||
isLanguage: false,
|
||||
|
||||
language:[
|
||||
{name:'English',value:'ENGLISH'},
|
||||
@@ -230,19 +381,25 @@ export default defineComponent({
|
||||
// console.log(String(newVal).length);
|
||||
// }
|
||||
},
|
||||
directives:{
|
||||
moveOpenDetal:{
|
||||
mounted (el,binding) {
|
||||
},
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
let isTest = getCookie('isTest')//获取是否是试用用户
|
||||
this.isTest =JSON.parse(isTest)
|
||||
let isMurmur = getCookie('isMurmur')//获取是否是试用用户
|
||||
this.isMurmur =JSON.parse(isMurmur)
|
||||
this.userInfo = JSON.parse(getCookie("userInfo"));
|
||||
if (!this.userInfo) {
|
||||
this.cookieUserInfo = JSON.parse(getCookie("userInfo"));
|
||||
if (!this.cookieUserInfo) {
|
||||
this.$router.replace("/");
|
||||
} else {
|
||||
this.accountIsLogin(this.userInfo);
|
||||
this.accountIsLogin(this.cookieUserInfo);
|
||||
}
|
||||
this.isHaveBindEmail = this.userInfo?.email ? true : false;
|
||||
if(!isMurmur){
|
||||
this.isHaveBindEmail = this.cookieUserInfo?.email ? true : false;
|
||||
if(!this.isMurmur){
|
||||
this.operateClick();
|
||||
document.addEventListener("click", this.operateClick);
|
||||
}
|
||||
@@ -252,6 +409,45 @@ export default defineComponent({
|
||||
this.store.dispatch('getLangType').then(()=>{
|
||||
this.getLangIsShowMark = false
|
||||
})
|
||||
|
||||
|
||||
let tl1 = gsap.timeline({ paused: true });
|
||||
let heradeRight = document.querySelector('.homeMain_max .homeMain_right_content')
|
||||
let userDetailMax = document.querySelector('.homeMain_max .homeMain_user')
|
||||
let userDetailIcon = document.querySelector('.homeMain_max .homeMain_user_icon')
|
||||
let userName = document.querySelector('.homeMain_max .homeMain_user_content')
|
||||
let userDetail = document.querySelector('.homeMain_max .homeMain_user_detail')
|
||||
// let anmiation = TweenMax.to(userDetailMax,1, {'margin-top':'30px',opacity:1})
|
||||
// anmiation.stop()
|
||||
let state
|
||||
tl1
|
||||
.to(userDetail,.3, {opacity:1,display:'flex'})
|
||||
.to(userDetailIcon,.3, {'left':'15rem',y:'25%',x:'-50%',scale:1.5,opacity:1},'-=.3')
|
||||
.to(userName,.3, {opacity:0},'-=.3')
|
||||
let overTime
|
||||
let outTime
|
||||
userDetailMax.addEventListener('mouseenter',(event)=>{
|
||||
if(state && !outTime)return
|
||||
clearTimeout(overTime)
|
||||
clearTimeout(outTime)
|
||||
overTime = setTimeout(() => {
|
||||
state = true
|
||||
this.isShowOperate = false
|
||||
this.isLanguage = false
|
||||
tl1.play()
|
||||
}, 500);
|
||||
})
|
||||
heradeRight.addEventListener('mouseleave',(event)=>{
|
||||
if(overTime){
|
||||
clearTimeout(overTime)
|
||||
}
|
||||
if(!state)return
|
||||
clearTimeout(outTime)
|
||||
outTime = setTimeout(() => {
|
||||
state = false
|
||||
tl1.reverse()
|
||||
}, 500);
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
setTask(data){
|
||||
@@ -287,31 +483,7 @@ export default defineComponent({
|
||||
|
||||
|
||||
},
|
||||
//点击下拉图标出现操作
|
||||
changeShowOperateContent() {
|
||||
this.isShowOperate = !this.isShowOperate;
|
||||
document.addEventListener(
|
||||
"click",
|
||||
this.closeShowOperateContent,
|
||||
false
|
||||
);
|
||||
},
|
||||
changeLanguage(){
|
||||
this.isLanguage = !this.isLanguage;
|
||||
document.addEventListener(
|
||||
"click",
|
||||
this.closeShowOperateContent,
|
||||
false
|
||||
);
|
||||
},
|
||||
|
||||
//关闭下拉图标
|
||||
closeShowOperateContent() {
|
||||
this.isShowOperate = false;
|
||||
this.isLanguage = false
|
||||
document.removeEventListener("click", this.closeShowOperateContent);
|
||||
},
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -322,12 +494,12 @@ export default defineComponent({
|
||||
},
|
||||
//教程
|
||||
getTutorial(){
|
||||
let url = 'https://code-create.com.hk/wp-content/uploads/2024/08/aida_3.0-Manual-0705-CN.pdf'
|
||||
let url = 'https://code-create.com.hk/wp-content/uploads/2024/10/aida_3.1-Manual-10_21-CN.pdf'
|
||||
if(this.locale == 'ENGLISH'){
|
||||
url = 'https://code-create.com.hk/wp-content/uploads/2024/08/aida_3.0-Manual-0705-EN.pdf'
|
||||
showViewVideo({url:'https://code-create.com.hk/wp-content/uploads/2024/07/AiDA-demo-video_0709_EN.webm'})
|
||||
url = 'https://code-create.com.hk/wp-content/uploads/2024/10/aida_3.1-Manual-10_21-EN.pdf'
|
||||
showViewVideo({url:'https://code-create.com.hk/wp-content/uploads/2024/10/AiDA-demo-video_10_21_EN.mp4'})
|
||||
}else{
|
||||
showViewVideo({url:'https://code-create.com.hk/wp-content/uploads/2024/07/AiDA-demo-video_0709_CN.webm'})
|
||||
showViewVideo({url:'https://code-create.com.hk/wp-content/uploads/2024/10/AiDA-demo-video_10_21_CN.mp4'})
|
||||
}
|
||||
//打开视频
|
||||
const a = document.createElement('a');
|
||||
@@ -340,7 +512,7 @@ export default defineComponent({
|
||||
//登出
|
||||
async logout() {
|
||||
let data = {
|
||||
userId: this.userInfo.userId,
|
||||
userId: this.cookieUserInfo.userId,
|
||||
};
|
||||
let isTest = getCookie('isTest')
|
||||
// console.log(getCookie("token"));
|
||||
@@ -451,6 +623,12 @@ export default defineComponent({
|
||||
let taskPage = this.$refs.TaskPage
|
||||
taskPage.init(data)
|
||||
},
|
||||
openAccount(){
|
||||
this.$router.push("/home/account")
|
||||
},
|
||||
openMessage(){
|
||||
this.$router.push("/home/account/accountMessage")
|
||||
},
|
||||
},
|
||||
});
|
||||
</script>
|
||||
@@ -486,56 +664,50 @@ export default defineComponent({
|
||||
display: flex;
|
||||
justify-content: flex-end;
|
||||
align-items: center;
|
||||
.message{
|
||||
display: flex;
|
||||
width: 6rem;
|
||||
justify-content: space-between;
|
||||
margin: 0 2rem;
|
||||
// padding: 1rem;
|
||||
i{
|
||||
margin-left: 0rem;
|
||||
border-left: none;
|
||||
padding-left: 0rem;
|
||||
height: auto;
|
||||
font-size: 2rem;
|
||||
width: 3rem;
|
||||
cursor: pointer;
|
||||
}
|
||||
span{
|
||||
overflow: initial;
|
||||
align-items: center;
|
||||
width: auto;
|
||||
margin: auto;
|
||||
height: auto;
|
||||
}
|
||||
.message_iconItem{
|
||||
position: relative;
|
||||
display: flex;
|
||||
.message_iconItem_value{
|
||||
padding: 1rem;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
top: 4rem;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.homeMain_logo {
|
||||
width: 14.4rem;
|
||||
height: 3.2rem;
|
||||
margin: 2.1rem 2.8rem 0 ;
|
||||
// position: absolute;
|
||||
line-height: 2rem;
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.homeMain_nav_content {
|
||||
display: flex;
|
||||
// margin-left: 28.9rem;
|
||||
// margin-left: 46.2rem;
|
||||
align-items: center;
|
||||
|
||||
.nav_item {
|
||||
padding: 1.1rem 1rem;
|
||||
border-bottom: 0.1rem solid transparent;
|
||||
margin-right: 3.4rem;
|
||||
font-size: 1.6rem;
|
||||
line-height: 1.3rem;
|
||||
// color: #333333;
|
||||
color: #000;
|
||||
cursor: pointer;
|
||||
font-weight: 900;
|
||||
position: relative;
|
||||
&.nav_item:last-child{
|
||||
margin: 0;
|
||||
}
|
||||
&.nav_item::before {
|
||||
position: absolute;
|
||||
content: "";
|
||||
display: block;
|
||||
background: #000;
|
||||
height: .3rem;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
bottom: .3rem;
|
||||
width: 0px;
|
||||
transition: 0.3s all;
|
||||
}
|
||||
&.select_nav {
|
||||
color: #000;
|
||||
transform: scale(1.15);
|
||||
}
|
||||
&.select_nav::before {
|
||||
width: 80%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.homeMain_right_content {
|
||||
// position: absolute;
|
||||
@@ -546,39 +718,113 @@ export default defineComponent({
|
||||
width: 33%;
|
||||
height: 100%;
|
||||
align-items: center;
|
||||
overflow: hidden;
|
||||
.homeMain_icon {
|
||||
font-size: 3.6rem;
|
||||
position: relative;
|
||||
top: 0.3rem;
|
||||
}
|
||||
.homeMain_user_icon{
|
||||
height: 4rem;
|
||||
width: 4rem;
|
||||
background-color: #000;
|
||||
border-radius: 50%;
|
||||
transform: translateX(-40%)scale(1.3);
|
||||
.homeMain_user{
|
||||
.homeMain_user_icon{
|
||||
height: 6rem;
|
||||
width: 6rem;
|
||||
position: relative;
|
||||
transform-origin: top;
|
||||
overflow: hidden;
|
||||
z-index: 2;
|
||||
left: 0;
|
||||
border-radius: 50%;
|
||||
cursor: pointer;
|
||||
img{
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
object-fit: contain;
|
||||
}
|
||||
// transition: all .3s;
|
||||
}
|
||||
.homeMain_user_detail{
|
||||
position: absolute;
|
||||
top: calc(100% + .5rem);
|
||||
background: #fff;
|
||||
border-radius: 4px;
|
||||
width: 30rem;
|
||||
height: 30rem;
|
||||
opacity: 0;
|
||||
display: none;
|
||||
box-shadow: 0 0px 10px 1px rgba(0, 0, 0, 0.12);
|
||||
padding-top: 4rem;
|
||||
text-align: center;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
padding: 4rem 3rem;
|
||||
|
||||
.homeMain_user_detail_attention{
|
||||
width: 100%;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
padding: 0 2rem;
|
||||
border-bottom: 1px solid #e3e5e7;
|
||||
.attention_item{
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
}
|
||||
.attention_item_active{
|
||||
cursor: pointer;
|
||||
}
|
||||
.attention_item_active:hover{
|
||||
color: #39215b;
|
||||
span{
|
||||
color: #39215b;
|
||||
}
|
||||
}
|
||||
span{
|
||||
font-size: 1.4rem;
|
||||
color: #949eae;
|
||||
}
|
||||
}
|
||||
.homeMain_user_detail_setUser{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: flex-start;
|
||||
cursor: pointer;
|
||||
width: 100%;
|
||||
i{
|
||||
font-size: 2rem;
|
||||
display: flex;
|
||||
}
|
||||
.fi-rr-user{
|
||||
margin-right: 1rem;
|
||||
}
|
||||
.icon-xiala{
|
||||
margin-left: auto
|
||||
}
|
||||
}
|
||||
.homeMain_user_detail_item{
|
||||
margin-top: 1rem;
|
||||
padding-bottom: 1rem;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
.username {
|
||||
font-size: 1.8rem;
|
||||
color: #1a1a1a;
|
||||
margin: 0 0.8rem;
|
||||
font-weight: 900;
|
||||
span{
|
||||
margin: .7rem;
|
||||
}
|
||||
}
|
||||
.homeMain_user_content {
|
||||
// margin-left: 2rem;
|
||||
// transition: all .3s;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
position: relative;
|
||||
// top: 1.2rem;
|
||||
height: 3.7rem;
|
||||
|
||||
&.marLeft2{
|
||||
margin-left: 2rem;
|
||||
}
|
||||
.username {
|
||||
font-size: 1.8rem;
|
||||
color: #1a1a1a;
|
||||
margin: 0 0.8rem;
|
||||
font-weight: 900;
|
||||
span{
|
||||
margin: .7rem;
|
||||
}
|
||||
}
|
||||
|
||||
.icon-xiala {
|
||||
font-size: 1.4rem;
|
||||
cursor: pointer;
|
||||
@@ -609,7 +855,8 @@ export default defineComponent({
|
||||
.credits_item{
|
||||
transition: .3s all;
|
||||
// height: 4rem;
|
||||
height: 3.2rem;
|
||||
height: 35px;
|
||||
// height: 3.2rem;
|
||||
div{
|
||||
height: 100%;
|
||||
}
|
||||
@@ -624,6 +871,7 @@ export default defineComponent({
|
||||
font-size: 1.8rem;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.fi-br-refresh{
|
||||
margin-left: 0;
|
||||
border-left: none;
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
<template>
|
||||
<div class="home_page">
|
||||
<!-- <HeaderComponent></HeaderComponent> -->
|
||||
<!-- <generalCanvas></generalCanvas> -->
|
||||
|
||||
<div class="page_content">
|
||||
<!-- <img class="page_content_bg" src="@/assets/images/homePage/bg.png" /> -->
|
||||
<div class="page_content_body">
|
||||
@@ -193,7 +195,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<KeepAlive>
|
||||
<CollectionModal ref="collectionModal" @finishCollection="finishCollection()"></CollectionModal>
|
||||
<CollectionModal :getDesignData="getDesignData" ref="collectionModal" @finishCollection="finishCollection()"></CollectionModal>
|
||||
</KeepAlive>
|
||||
<productImg ref="productImg" @setTask="setTask"></productImg>
|
||||
<DesignDetail ref="designDetail" @finishRedesign="finishRedesign"></DesignDetail>
|
||||
@@ -216,7 +218,6 @@
|
||||
<!-- design collection的进度蒙层 end-->
|
||||
<affiche ref="affiche"></affiche>
|
||||
<!-- <RobotAssist></RobotAssist> -->
|
||||
|
||||
</div>
|
||||
|
||||
</template>
|
||||
@@ -229,6 +230,7 @@ import CollectionModal from "@/component/HomePage/collectionModal.vue";
|
||||
import NewCollectionReview from "@/component/HomePage/NewCollectionReview.vue";
|
||||
import ExportNewCoolection from "@/component/HomePage/ExportNewCoolection.vue";
|
||||
import productImg from "@/component/HomePage/productImg.vue";
|
||||
import generalCanvas from "@/component/modules/generalCanvas.vue";
|
||||
import affiche from "@/component/HomePage/affiche.vue";
|
||||
import DesignDetail from "@/component/Detail/DesignDetail.vue";
|
||||
// import RobotAssist from "@/component/HomePage/RobotAssist.vue";
|
||||
@@ -256,7 +258,8 @@ export default defineComponent({
|
||||
affiche,
|
||||
// RobotAssist,
|
||||
draggable,
|
||||
productImg
|
||||
productImg,
|
||||
generalCanvas
|
||||
},
|
||||
props:{
|
||||
getLangIsShowMark:{
|
||||
@@ -275,8 +278,6 @@ export default defineComponent({
|
||||
return store.state.HomeStoreModule.userGroupId;
|
||||
}); //模特id //当likeDesignCollectionList长度为0时清空,startdesign时清空
|
||||
let setPortfolio = (data:any)=>{
|
||||
console.log(data);
|
||||
|
||||
portfolio.value = data
|
||||
}
|
||||
provide('setPortfolio',setPortfolio)
|
||||
@@ -449,6 +450,7 @@ export default defineComponent({
|
||||
|
||||
})
|
||||
}else if(!isModalOne && isTest){
|
||||
|
||||
// setTimeout(() => {
|
||||
// text = {
|
||||
// str:`${this.t('HomeView.jsContent7')}<br>${this.t('HomeView.jsContent5')}<a href="https://code-create.com.hk/aida/" target="_blank">https://code-create.com.hk/aida/</a>${this.t('HomeView.jsContent6')}`,
|
||||
@@ -456,7 +458,7 @@ export default defineComponent({
|
||||
// this.affiche(text)
|
||||
// }, 500);
|
||||
}else{
|
||||
|
||||
openGuide()
|
||||
|
||||
}
|
||||
// console.log(this.store.state.UserHabit);
|
||||
@@ -619,53 +621,9 @@ export default defineComponent({
|
||||
},
|
||||
//完成设计
|
||||
finishCollection() {
|
||||
let _this = this;
|
||||
_this.isFinishLoading = true;
|
||||
this.getPantongName()
|
||||
.then((res) => {
|
||||
_this.store.commit("setAllBoardData");
|
||||
_this.isHaveReviewCollection = true;
|
||||
_this.isFinishLoading = false;
|
||||
})
|
||||
.catch((res) => {
|
||||
_this.isFinishLoading = false;
|
||||
});
|
||||
this.isHaveReviewCollection = true;
|
||||
this.isFinishLoading = false;
|
||||
},
|
||||
|
||||
//查询颜色的潘通值和txc
|
||||
getPantongName() {
|
||||
let colorBoards = this.store.state.UploadFilesModule.colorBoards;
|
||||
let data: any = [];
|
||||
for (let v of colorBoards) {
|
||||
let color: any = [v.rgbValue.r, v.rgbValue.g, v.rgbValue.b];
|
||||
let hsv = rgbToHsv(color);
|
||||
v.hsv = hsv[0] + hsv[1] + hsv[2];
|
||||
data.push({
|
||||
h: hsv[0],
|
||||
s: hsv[1],
|
||||
v: hsv[2],
|
||||
});
|
||||
}
|
||||
|
||||
return new Promise((resolve: any, reject: any) => {
|
||||
Https.axiosPost(Https.httpUrls.getRgbByHsvBatch, data)
|
||||
.then((rv: any) => {
|
||||
if (rv) {
|
||||
rv.forEach((ele: any, index: number) => {
|
||||
colorBoards[index].id = ele.id;
|
||||
colorBoards[index].tcx = ele.tcx;
|
||||
colorBoards[index].name = ele.name;
|
||||
});
|
||||
this.store.commit("setColorboardList", colorBoards);
|
||||
resolve();
|
||||
}
|
||||
})
|
||||
.catch((res) => {
|
||||
reject();
|
||||
});
|
||||
});
|
||||
},
|
||||
|
||||
getContainer() {
|
||||
return document.querySelector("#system_silder");
|
||||
},
|
||||
@@ -763,7 +721,7 @@ export default defineComponent({
|
||||
colorBoards,
|
||||
sketchboardFiles,
|
||||
marketingSketchFiles,
|
||||
moodTemplateId,
|
||||
moodboardPosition,
|
||||
} = this.store.state.UploadFilesModule.allBoardData;
|
||||
this.randomNum()
|
||||
let workspace = this.store.state.Workspace.workspace
|
||||
@@ -773,6 +731,7 @@ export default defineComponent({
|
||||
moodBoards: this.getBoardId(moodboardFiles),
|
||||
printBoards: this.getPrintId(printboardFiles),
|
||||
sketchBoards: this.getSkecthBoard(sketchboardFiles),
|
||||
moodboardPosition: JSON.stringify(moodboardPosition),
|
||||
switchCategory: !workspace.overallSingle ?"": workspace.position,
|
||||
singleOverall: !workspace.overallSingle ? "overall" : "single",
|
||||
systemScale: workspace.systemDesignerPercentage?workspace.systemDesignerPercentage*.01:.3,
|
||||
@@ -784,11 +743,17 @@ export default defineComponent({
|
||||
timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone,
|
||||
processId:this.designRandom
|
||||
};
|
||||
if (designCollectionId) {
|
||||
// data.moodboardPosition = JSON.stringify(this.store.state.UploadFilesModule.moodboardPosition)
|
||||
let isLoad = false
|
||||
if(designCollectionId == -1){
|
||||
isLoad = true
|
||||
} else if (designCollectionId) {
|
||||
data.collectionId = designCollectionId;
|
||||
}
|
||||
this.designProgress = 0;
|
||||
this.showDesignMark = true;
|
||||
if(!isLoad){
|
||||
this.designProgress = 0;
|
||||
this.showDesignMark = true;
|
||||
}
|
||||
return data;
|
||||
},
|
||||
|
||||
@@ -996,6 +961,8 @@ export default defineComponent({
|
||||
},
|
||||
//处理选择组的数据
|
||||
dealHistoryChooseData(data: any, type: any) {
|
||||
console.log(data.collection.moodboardPosition);
|
||||
|
||||
let collectionData = {
|
||||
disposeMoodboard: data.collection.moodTemplateId?[{
|
||||
id:data.collection.moodTemplateId,
|
||||
@@ -1004,6 +971,7 @@ export default defineComponent({
|
||||
name:data.collection.moodTemplateName,
|
||||
}
|
||||
}]:[],
|
||||
moodboardPosition:data.collection.moodboardPosition?JSON.parse(data.collection.moodboardPosition):{},
|
||||
moodboardFiles: this.dealViewChooseData(
|
||||
data.collection.moodBoards,"Moodboard"
|
||||
),
|
||||
@@ -1022,7 +990,6 @@ export default defineComponent({
|
||||
),
|
||||
|
||||
};
|
||||
// console.log(data);
|
||||
this.store.commit("setAllBoardDataChoose", collectionData);
|
||||
// this.store.commit('clearShowSketchboard')
|
||||
this.store.commit("setShowSketchboard", data.collection.sketchBoards);
|
||||
@@ -1194,6 +1161,7 @@ export default defineComponent({
|
||||
display: flex;
|
||||
// padding-left: 0.7rem;
|
||||
box-sizing: border-box;
|
||||
overflow: hidden;
|
||||
|
||||
.home_page_left {
|
||||
// width: 44.4rem;
|
||||
@@ -1383,7 +1351,7 @@ export default defineComponent({
|
||||
padding: 0 1.8rem 0 1.2rem;
|
||||
background: rgba(255, 255, 255, 0.2);
|
||||
height: calc(50% - 4.5rem);
|
||||
min-height: 280px;
|
||||
// min-height: 280px;
|
||||
|
||||
.right_content_img_block {
|
||||
// overflow-y: auto;
|
||||
@@ -1440,7 +1408,8 @@ export default defineComponent({
|
||||
margin-right: 1rem;
|
||||
// margin-bottom: 1rem;
|
||||
min-width: 127px;
|
||||
min-height: 271px;
|
||||
// min-height: 271px;
|
||||
max-height: 100%;
|
||||
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
@@ -1466,6 +1435,7 @@ export default defineComponent({
|
||||
.content_img {
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
object-fit: contain;
|
||||
}
|
||||
|
||||
.icon_like {
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<template>
|
||||
<div class="works_page" :class="{active:isScroll}">
|
||||
<div class="works_page" :class="{active:isScroll,'otherUsersActive':otherUsers}">
|
||||
<!-- <div class="modal_title_text">
|
||||
<div>Works</div>
|
||||
</div> -->
|
||||
<div class="modal_title_text modal_search">
|
||||
<div class="modal_title_text modal_search" v-if="!otherUsers">
|
||||
<div v-show="isScroll" v-for="item in worksType" :key="item" class="modal_title_text_assistant" @click="setWorksSelect(item)" :class="{active:item.value == worksSelect}">
|
||||
{{ item.name }}
|
||||
</div>
|
||||
@@ -35,20 +35,12 @@ import { LoadingOutlined } from "@ant-design/icons-vue";
|
||||
import { defineComponent,h ,toRefs,ref,reactive,onMounted,nextTick,provide,computed} from 'vue'
|
||||
// import HeaderComponent from "@/component/HomePage/Header.vue";
|
||||
// import RobotAssist from "@/component/HomePage/RobotAssist.vue";
|
||||
import { Modal,message,Upload,CascaderProps } from 'ant-design-vue';
|
||||
import { ExclamationCircleOutlined } from '@ant-design/icons-vue';
|
||||
import {getUploadUrl,isMoible} from '@/tool/util'
|
||||
import { useStore } from "vuex";
|
||||
import { Https } from "@/tool/https";
|
||||
import { getCookie } from "@/tool/cookie";
|
||||
import newScaleImage from "@/component/WorksPage/newScaleImage.vue";
|
||||
import newScaleImageMobile from "@/component/WorksPage/newScaleImageMobile.vue";
|
||||
|
||||
import { useI18n } from "vue-i18n";
|
||||
import { ElCascader } from 'element-plus'
|
||||
import { remove } from "jszip";
|
||||
import generalMenu from "@/component/HomePage/generalMenu.vue";
|
||||
|
||||
import { useRouter,useRoute } from 'vue-router'
|
||||
import Falls from "@/component/WorksPage/Falls.vue";
|
||||
export default defineComponent({
|
||||
components: {
|
||||
@@ -62,8 +54,17 @@ export default defineComponent({
|
||||
type:Boolean,
|
||||
default:true,
|
||||
},
|
||||
otherUsers:{
|
||||
type:Boolean,
|
||||
default:false,
|
||||
},
|
||||
userId:{
|
||||
type:String,
|
||||
default:'-1',
|
||||
},
|
||||
},
|
||||
setup() {
|
||||
setup(prop) {
|
||||
const router = useRouter()
|
||||
let filter:any = reactive({
|
||||
worksSelect: 'all',
|
||||
isNull:true,
|
||||
@@ -171,6 +172,9 @@ export default defineComponent({
|
||||
let data = filter.getListDate
|
||||
if(filter.isShowMark && !filter.isNoData)return
|
||||
filter.isShowMark = true
|
||||
if(prop.otherUsers){
|
||||
data.accountId = prop.userId
|
||||
}
|
||||
Https.axiosPost(Https.httpUrls.getPorfolio, data)
|
||||
.then((rv) => {
|
||||
if(data.page == 1 && rv.content.length == 0){
|
||||
@@ -216,9 +220,8 @@ export default defineComponent({
|
||||
fall.value.deleteItem(value);
|
||||
|
||||
}
|
||||
onMounted (()=>{
|
||||
let setPorfolioDom = ()=>{
|
||||
filter.isShowMark = false
|
||||
|
||||
filter.isNoData = false
|
||||
getPorfolio()
|
||||
let worksPage:any = document.querySelector('.works_page')
|
||||
@@ -233,6 +236,17 @@ export default defineComponent({
|
||||
},
|
||||
// { root:worksPage }
|
||||
).observe(imgParent);
|
||||
}
|
||||
onMounted (()=>{
|
||||
nextTick(()=>{
|
||||
setPorfolioDom()
|
||||
})
|
||||
let data = {
|
||||
id:router.currentRoute.value.query?.workId
|
||||
}
|
||||
if(data.id){
|
||||
getImgScale(data)
|
||||
}
|
||||
})
|
||||
return {
|
||||
...toRefs(filter),
|
||||
@@ -250,37 +264,6 @@ export default defineComponent({
|
||||
deletePorfolio,
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
userInfo: {},
|
||||
indicator: h(LoadingOutlined, {
|
||||
style: {
|
||||
fontSize: "2.4rem",
|
||||
},
|
||||
spin: true,
|
||||
}),
|
||||
upload: {
|
||||
isPin: 0,
|
||||
gender:'',
|
||||
level1Type: this.selectCode,
|
||||
timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone,
|
||||
},
|
||||
token: "",
|
||||
};
|
||||
},
|
||||
watch:{
|
||||
sex(newVal,oldVal){
|
||||
this.upload.gender = newVal.value
|
||||
},
|
||||
searchPictureName(newVal,oldVal){
|
||||
// clearTimeout(this.getLibraryListInputTime)
|
||||
// this.getLibraryListInputTime = setTimeout(() => {
|
||||
// if(newVal != oldVal){
|
||||
// this.currentPage = 1
|
||||
// }
|
||||
// }, 500);
|
||||
},
|
||||
},
|
||||
async mounted(){
|
||||
|
||||
},
|
||||
@@ -333,15 +316,10 @@ export default defineComponent({
|
||||
min-height: 80%;
|
||||
height: auto;
|
||||
background: #f7f8fa;
|
||||
.page_loading_box{
|
||||
text-align: center;
|
||||
height: 50px;
|
||||
.page_loading{
|
||||
display: block;
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
}
|
||||
@media (max-width: 768px) {
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
>img{
|
||||
position: relative;
|
||||
left: 50%;
|
||||
@@ -357,6 +335,17 @@ export default defineComponent({
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
&.otherUsersActive{
|
||||
padding: 0;
|
||||
}
|
||||
.page_loading_box{
|
||||
text-align: center;
|
||||
height: 50px;
|
||||
.page_loading{
|
||||
display: block;
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -8,7 +8,6 @@
|
||||
<div class="page_content_body">
|
||||
<!-- <HeaderComponent></HeaderComponent> -->
|
||||
<div class="history_page_body">
|
||||
<div class="history_header">{{ $t('HistoryPage.History') }}</div>
|
||||
<div class="history_table_search">
|
||||
|
||||
<!-- <div class="content_search_block">
|
||||
@@ -324,8 +323,6 @@ export default defineComponent({
|
||||
this.store.commit("setAllBoardDataChoose",{});
|
||||
this.store.commit("clearShowSketchboard",{});
|
||||
}
|
||||
console.log(this.store.state.HomeStoreModule.userGroupId,record);
|
||||
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
@@ -43,6 +43,7 @@
|
||||
v-show="selectCode != 'DesignElements' && selectCode != 'Printboard'"
|
||||
v-model:value="sex"
|
||||
:options="sexList"
|
||||
:fieldNames="{ label: 'name', value: 'value' }"
|
||||
@change="sexChange"
|
||||
>
|
||||
<template #suffixIcon
|
||||
@@ -81,6 +82,21 @@
|
||||
style="color: #343579"
|
||||
></span
|
||||
></template>
|
||||
</a-select>
|
||||
<a-select
|
||||
ref="select"
|
||||
v-show="SketchGenerateTypeList?.[0]?.value && selectCode == 'Sketchboard' && uploadGenerate == 'Generate'"
|
||||
v-model:value="SketchGenerateType"
|
||||
:options="SketchGenerateTypeList"
|
||||
@change="setSketchGenerateType"
|
||||
:fieldNames="{ label: 'name', value: 'value' }"
|
||||
>
|
||||
<template #suffixIcon
|
||||
><span
|
||||
class="icon iconfont icon-xiala"
|
||||
style="color: #343579"
|
||||
></span
|
||||
></template>
|
||||
</a-select>
|
||||
</div>
|
||||
</div>
|
||||
@@ -128,7 +144,7 @@
|
||||
:clearable="true"
|
||||
:placeholder="$t('LibraryPage.Select')"
|
||||
:max-collapse-tags=3
|
||||
:props="props"
|
||||
:props="prop"
|
||||
:collapse-tags-tooltip="true"
|
||||
ref="cascader"
|
||||
popper-class="libraryPageCascader"
|
||||
@@ -195,17 +211,18 @@
|
||||
<div class="right_content_body" v-show="uploadGenerate !='Upload'">
|
||||
<div class="content_body_header content_body_header_generate">
|
||||
<div class="content_body_header_right"></div>
|
||||
<div v-show="selectCode == 'Printboard' && scene?.value == 'Pattern'" class="printModel">
|
||||
<!-- <div v-show="selectCode == 'Printboard' && scene?.value == 'Pattern'" class="printModel">
|
||||
<div @click.stop="PrintModel">{{ printModel.name }}</div>
|
||||
<ul v-show="printModel.optype">
|
||||
<li class="printModel_item" @click="setprintModel(1)">{{ $t('LibraryPage.Model1') }}</li>
|
||||
<li class="printModel_item" @click="setprintModel(2)">{{ $t('LibraryPage.Model2') }}</li>
|
||||
<li class="printModel_item" @click="setprintModel(3)">{{ $t('LibraryPage.Model3') }}</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div> -->
|
||||
<generalMenu v-if="printModelList" class="printModel" v-show="selectCode == 'Printboard' && scene?.value == 'Pattern'" :dataList="printModelList" :isCanvas="selectCode == 'Sketchboard'" @setprintModel="setprintModel" :item="printModel"></generalMenu>
|
||||
<div class="input_border">
|
||||
<div class="input_box" :class="{active:inputShow}">
|
||||
<div class="input_box_btnBox">
|
||||
<div class="input_box_btnBox" v-if="scene?.value != 'extract'">
|
||||
<div class="upload_item" v-show="selectCode !== 'Moodboard' && ((selectCode == 'Printboard' && scene?.value == 'Pattern') || (selectCode == 'Printboard' && scene?.value == 'Slogan') || selectCode == 'Sketchboard')">
|
||||
<div
|
||||
class="upload_file_item"
|
||||
@@ -251,7 +268,8 @@
|
||||
list-type="picture-card"
|
||||
:before-upload="beforeUpload"
|
||||
:data="{
|
||||
...upload
|
||||
...upload,
|
||||
gender:sex,
|
||||
}"
|
||||
:headers="{Authorization:token}"
|
||||
v-model:file-list="selectGenerateList"
|
||||
@@ -266,6 +284,54 @@
|
||||
<i v-show="!isTextarea" class="fi fi-br-expand" @click.stop="setTextareaShow"></i>
|
||||
<i v-show="isTextarea" class="fi fi-bs-compress" @click.stop="setTextareaShow"></i>
|
||||
</div>
|
||||
<div class="input_box_btnBox" v-else>
|
||||
<div class="upload_item">
|
||||
<div
|
||||
class="upload_file_item"
|
||||
v-for="(file, index) in selectGenerateList"
|
||||
:key="file"
|
||||
>
|
||||
<div
|
||||
class="upload_file_item_content"
|
||||
v-show="file?.status === 'uploading'"
|
||||
>
|
||||
<a-spin :indicator="indicator" tip="Uploading..." />
|
||||
</div>
|
||||
<div
|
||||
class="upload_file_item_content"
|
||||
v-show="file?.status === 'done' || file?.base64"
|
||||
>
|
||||
<img :src="file?.imgUrl" class="upload_img" />
|
||||
<div class="delete_like_file_block" :class="[driver__.driver?'hideEvents':'']">
|
||||
<span class="icon iconfont icon-shanchu operate_icon" @click.stop="deleteFile(index)"></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<i class="fi fi-br-upload" style="margin-left: 2rem;" v-show="selectGenerateList.length == 0" :title="$t('Generate.uploadproduct')">
|
||||
<a-upload
|
||||
class="search_upImg"
|
||||
:capture="null"
|
||||
:action="uploadUrl + '/api/element/upload'"
|
||||
list-type="picture-card"
|
||||
:data="{
|
||||
...upload,
|
||||
gender:sex,
|
||||
}"
|
||||
:maxCount='1'
|
||||
:headers="{ Authorization: token }"
|
||||
v-model:file-list="selectGenerateList"
|
||||
:before-upload="beforeUpload"
|
||||
accept=".jpg,.png,.jpeg,.bmp"
|
||||
@change="generateFileUploadChange"
|
||||
>
|
||||
</a-upload>
|
||||
</i>
|
||||
<div :title="$t('Generate.style')">
|
||||
<generalMenu v-if="printModelList" class="printModel" :dataList="printModelList" :isCanvas="selectCode == 'Sketchboard'" @setprintModel="setprintModel" :item="printModel"></generalMenu>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<textarea
|
||||
v-show="isTextarea "
|
||||
class="search_textarea "
|
||||
@@ -335,7 +401,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<searchLabel ref="searchLabel"></searchLabel>
|
||||
<scaleImage ref="scaleImage"></scaleImage>
|
||||
<scaleImage ref="scaleImage" :isCanvas="selectCode == 'Sketchboard'" :workspace="{sexEnum:{value:sex}}"></scaleImage>
|
||||
<ModelPlacement ref="ModelPlacement" @submitModelPlacement="getLibraryList"></ModelPlacement>
|
||||
<ModelPlacementMobile ref="ModelPlacementMobile" @submitModelPlacement="getLibraryList"></ModelPlacementMobile>
|
||||
<setLabel ref="setLabel"></setLabel>
|
||||
@@ -343,11 +409,8 @@
|
||||
|
||||
<!-- 蒙层 start-->
|
||||
<div class="mark_loading" v-show="isShowMark || getLangIsShowMark">
|
||||
<a-spin size="large" />
|
||||
|
||||
<!-- <div v-show="remGenerate" class="mark_loading_btn" @click="removeGenerate">{{$t('Generate.Close')}}</div> -->
|
||||
|
||||
</div>
|
||||
<a-spin size="large" />
|
||||
</div>
|
||||
<!-- 蒙层 end-->
|
||||
<!-- <RobotAssist></RobotAssist> -->
|
||||
|
||||
@@ -355,7 +418,7 @@
|
||||
</template>
|
||||
<script lang="ts">
|
||||
import { LoadingOutlined } from "@ant-design/icons-vue";
|
||||
import { defineComponent,h ,ref,createVNode,nextTick,reactive,provide,computed} from 'vue'
|
||||
import { defineComponent,h ,ref,createVNode,nextTick,watch,provide,computed} from 'vue'
|
||||
// import HeaderComponent from "@/component/HomePage/Header.vue";
|
||||
import ModelPlacement from '@/component/LibraryPage/ModelPlacement.vue';
|
||||
// import ModelPlacement from '@/component/LibraryPage/ModelPlacementUpdata.vue';
|
||||
@@ -375,6 +438,8 @@ import { useI18n } from "vue-i18n";
|
||||
import { ElCascader } from 'element-plus'
|
||||
import { remove } from "jszip";
|
||||
import createSlogan from "@/component/HomePage/createSlogan.vue";
|
||||
import generalMenu from "@/component/HomePage/generalMenu.vue";
|
||||
import { id } from "element-plus/es/locale";
|
||||
export default defineComponent({
|
||||
components: {
|
||||
// HeaderComponent,
|
||||
@@ -387,13 +452,16 @@ export default defineComponent({
|
||||
scaleImage,
|
||||
sketchCategory,
|
||||
createSlogan,
|
||||
generalMenu,
|
||||
},
|
||||
props:{
|
||||
getLangIsShowMark:{
|
||||
type:Boolean,
|
||||
default:true,
|
||||
}
|
||||
},
|
||||
setup() {
|
||||
|
||||
setup(props) {
|
||||
const store = useStore();
|
||||
let menuList = computed(()=>{
|
||||
return [
|
||||
@@ -416,7 +484,8 @@ export default defineComponent({
|
||||
value:''
|
||||
})
|
||||
let sex:any = ref('')
|
||||
const sexList:any = ref([])
|
||||
// const sexList:any = []
|
||||
let sexList:any = computed(()=>store.state.UserHabit.sex.value)
|
||||
const printType = computed(() => {
|
||||
return store.state.UserHabit.printType;
|
||||
});
|
||||
@@ -434,6 +503,10 @@ export default defineComponent({
|
||||
Models:[],
|
||||
DesignElements:designElementsType,
|
||||
})
|
||||
let SketchGenerateTypeList = computed(()=>{
|
||||
return store.state.UserHabit.SketchGenerateType
|
||||
})
|
||||
let SketchGenerateType = ref({})
|
||||
let imgList = ref([])
|
||||
let currentPage:any = ref(1)
|
||||
let pageSize:any = ref(18)
|
||||
@@ -455,8 +528,10 @@ export default defineComponent({
|
||||
})
|
||||
let selectGenerateList:any = ref([])
|
||||
let printModel = ref({
|
||||
id:'',
|
||||
num:1,
|
||||
optype:false,
|
||||
value:'',
|
||||
name:useI18n().t('LibraryPage.Model1')
|
||||
})
|
||||
let {t} = useI18n()
|
||||
@@ -508,7 +583,7 @@ export default defineComponent({
|
||||
let getLibraryListInputTime:any = ref()
|
||||
const options:any = ref([
|
||||
]);
|
||||
let props = {
|
||||
let prop = {
|
||||
multiple: true,
|
||||
checkStrictly: true,
|
||||
emitPath:true,
|
||||
@@ -517,9 +592,99 @@ export default defineComponent({
|
||||
label:'classificationName',
|
||||
}
|
||||
let isTextarea = ref(false)
|
||||
let workspace:any = ref({})
|
||||
let workspace:any = computed(()=>{
|
||||
return store?.state?.Workspace?.workspace
|
||||
})
|
||||
let generateLevel2:any = {}
|
||||
let isSloganHint:any = ref('')
|
||||
let printModelList:any = ref([])
|
||||
let getSex = () =>{
|
||||
sex.value = store.state.UserHabit.sex.value[0].value
|
||||
getPosition()
|
||||
}
|
||||
let getPosition = ()=>{
|
||||
store.commit('setPosition',sex.value)
|
||||
designType.value = designTypeList.value.Sketchboard?.[0].value
|
||||
}
|
||||
let getLibraryList = (str:any)=>{
|
||||
let labelArr:any = []
|
||||
value.value.labelValue.forEach((item:any)=>{
|
||||
labelArr.push(item[item.length-1])
|
||||
})
|
||||
let design = ''
|
||||
if(selectCode.value == 'Sketchboard' || selectCode.value == 'DesignElements' || selectCode.value == 'Printboard'){
|
||||
design = designType.value
|
||||
}
|
||||
let data = {
|
||||
classificationIdList:labelArr,
|
||||
level1Type:selectCode.value,
|
||||
level2Type:design,
|
||||
page:1,
|
||||
modelSex:sex.value?sex.value:'',
|
||||
pictureName:searchPictureName.value,
|
||||
size:pageSize.value,
|
||||
intersection:intersection.value,
|
||||
}
|
||||
if(str == 'page'){
|
||||
data.page = currentPage.value
|
||||
}else{
|
||||
currentPage.value = 1
|
||||
}
|
||||
isShowMark.value = true
|
||||
Https.axiosPost(Https.httpUrls.queryLibraryPage,data).then(
|
||||
(rv: any) => {
|
||||
if(rv.content?.length == 0 && currentPage.value != 1){
|
||||
currentPage.value = 1
|
||||
getLibraryList('')
|
||||
}else{
|
||||
imgList.value = rv.content
|
||||
total.value = rv.total
|
||||
isShowMark.value = false
|
||||
}
|
||||
}
|
||||
).catch((res)=>{
|
||||
isShowMark.value = false
|
||||
});
|
||||
}
|
||||
let getClass = ()=>{
|
||||
let data = {
|
||||
"classificationIdList": [],
|
||||
"classificationName": "",
|
||||
"createTime": "",
|
||||
"deleteConfirm": '',
|
||||
"id": '',
|
||||
"libraryId": '',
|
||||
"parentId": '',
|
||||
"type": selectCode.value,
|
||||
"updateTime": "",
|
||||
"userId": ''
|
||||
}
|
||||
Https.axiosPost(Https.httpUrls.queryClassification, data).then(
|
||||
(rv: any) => {
|
||||
options.value = rv
|
||||
rv.forEach((rvItem:any,rvIndex:number) => {
|
||||
options.value[rvIndex].value = rvItem.id
|
||||
options.value[rvIndex].label = rvItem.classificationName
|
||||
rvItem.childList.forEach((childItem:any,index:number) => {
|
||||
options.value[rvIndex].childList[index].value = childItem.id
|
||||
options.value[rvIndex].childList[index].label = childItem.classificationName
|
||||
});
|
||||
});
|
||||
}
|
||||
).catch((res)=>{
|
||||
});
|
||||
}
|
||||
watch(
|
||||
() => props.getLangIsShowMark, // 这里使用了一个 getter 函数
|
||||
(newValue, oldValue) => {
|
||||
if(!newValue){
|
||||
getLibraryList('')
|
||||
getClass()
|
||||
getSex()
|
||||
}
|
||||
},
|
||||
{immediate: true,}
|
||||
)
|
||||
return {
|
||||
menuList,
|
||||
selectImgList,
|
||||
@@ -528,6 +693,9 @@ export default defineComponent({
|
||||
searchPictureSeed,
|
||||
sexList,
|
||||
sex,
|
||||
positionType,
|
||||
SketchGenerateType,
|
||||
SketchGenerateTypeList,
|
||||
designTypeList,
|
||||
designType,
|
||||
imgList,
|
||||
@@ -559,12 +727,17 @@ export default defineComponent({
|
||||
scene,
|
||||
dragIdx,
|
||||
getLibraryListInputTime,
|
||||
props,
|
||||
prop,
|
||||
options,
|
||||
isTextarea,
|
||||
workspace,
|
||||
generateLevel2,
|
||||
isSloganHint,
|
||||
getSex,
|
||||
getPosition,
|
||||
getLibraryList,
|
||||
getClass,
|
||||
printModelList,
|
||||
}
|
||||
},
|
||||
data(this_) {
|
||||
@@ -578,7 +751,7 @@ export default defineComponent({
|
||||
}),
|
||||
upload: {
|
||||
isPin: 0,
|
||||
gender:'',
|
||||
gender:this_.sex,
|
||||
level1Type: this_.selectCode,
|
||||
timeZone: Intl.DateTimeFormat().resolvedOptions().timeZone,
|
||||
},
|
||||
@@ -587,9 +760,6 @@ export default defineComponent({
|
||||
};
|
||||
},
|
||||
watch:{
|
||||
sex(newVal,oldVal){
|
||||
this.upload.gender = newVal
|
||||
},
|
||||
searchPictureName(newVal,oldVal){
|
||||
// clearTimeout(this.getLibraryListInputTime)
|
||||
// this.getLibraryListInputTime = setTimeout(() => {
|
||||
@@ -611,64 +781,18 @@ export default defineComponent({
|
||||
}
|
||||
},
|
||||
async mounted(){
|
||||
this.upload.gender = this.sex
|
||||
let userInfo:any = getCookie("userInfo")
|
||||
let isTest:any = getCookie('isTest')
|
||||
this.isTest =JSON.parse(isTest)
|
||||
this.userInfo = JSON.parse(userInfo);
|
||||
this.uploadUrl = getUploadUrl()
|
||||
this.getLibraryList('')
|
||||
this.getClass()
|
||||
this.token = getCookie("token") || "";
|
||||
this.workspace = computed(()=>{
|
||||
return this.store?.state?.Workspace?.workspace
|
||||
})
|
||||
this.token = getCookie("token") || "";
|
||||
},
|
||||
methods:{
|
||||
|
||||
getSex(){
|
||||
Https.axiosGet(Https.httpUrls.workspaceenumValues,{params:{enumName:'Sex'}}).then((rv: any) => {
|
||||
if (rv) {
|
||||
let arr:any = []
|
||||
rv.forEach((item:any) => {
|
||||
arr.push({
|
||||
value:item.name,
|
||||
label:item.value,
|
||||
})
|
||||
});
|
||||
|
||||
this.sex = arr[0].value
|
||||
this.sexList = arr
|
||||
this.getPosition()
|
||||
}
|
||||
})
|
||||
},
|
||||
async getPosition(){
|
||||
// let params
|
||||
// if(this.sex.value == 'Female'){
|
||||
// params = 'FemalePosition'
|
||||
// }else{
|
||||
// params = 'MalePosition'
|
||||
// }
|
||||
this.store.commit('setPosition',this.sex)
|
||||
this.designType = this.store.state.UserHabit.Position?.[0].value
|
||||
// this.designType = this.designTypeList?.Sketchboard?.[0].value
|
||||
|
||||
// await Https.axiosGet(Https.httpUrls.workspaceenumValues,{params:{enumName:params}}).then((rv: any) => {
|
||||
// if (rv) {
|
||||
// let arr:any = []
|
||||
// rv.forEach((item:any) => {
|
||||
// arr.push({
|
||||
// value:item.name,
|
||||
// label:item.value,
|
||||
// name:item.value
|
||||
// })
|
||||
// });
|
||||
// this.designType = arr[0]
|
||||
// this.designTypeList['Sketchboard'] = arr
|
||||
// // this.workspaceItem.position = this.totalTypeList[0].label
|
||||
// }
|
||||
// })
|
||||
},
|
||||
|
||||
|
||||
likeFile(item:any,str:string){
|
||||
let designType = ''
|
||||
if(this.selectCode == 'DesignElements' || this.selectCode == 'Printboard'){
|
||||
@@ -721,26 +845,58 @@ export default defineComponent({
|
||||
}else{
|
||||
this.designType = ''
|
||||
}
|
||||
if(this.selectCode == 'DesignElements')this.uploadGenerate = 'Upload'
|
||||
if(this.selectCode == 'Printboard')this.uploadGenerate = 'Upload'
|
||||
if(this.selectCode == 'Models')this.uploadGenerate = 'Upload'
|
||||
if(this.selectCode != 'DesignElements'){
|
||||
this.getClass()
|
||||
}
|
||||
if(this.selectCode == 'Sketchboard' || this.selectCode == 'Models')this.getSex()
|
||||
|
||||
|
||||
this.getLibraryList('')
|
||||
if(this.selectCode == 'Sketchboard'){
|
||||
this.positionType = computed(() => {
|
||||
return this.store.state.UserHabit.Position;
|
||||
});
|
||||
this.printModelList = JSON.parse(JSON.stringify(this.store.state.UserHabit.SketchStyle))
|
||||
let imgList = ['/image/sketch/sketch-fine.jpg','/image/sketch/sketch-medium.jpg','/image/sketch/sketch-thick.jpg']
|
||||
this.printModelList.forEach((item:any,index:number)=>{
|
||||
item.img = imgList[index]
|
||||
})
|
||||
}
|
||||
if(this.selectCode == 'Printboard'){
|
||||
this.printModelList = [
|
||||
{
|
||||
num:'',
|
||||
optype:false,
|
||||
value:'Painting Style',
|
||||
label:this.t('Generate.Model1')
|
||||
},{
|
||||
num:'',
|
||||
optype:false,
|
||||
value:'Illustration Style',
|
||||
label:this.t('Generate.Model2')
|
||||
},{
|
||||
num:'',
|
||||
optype:false,
|
||||
value:'Real Style',
|
||||
label:this.t('Generate.Model3')
|
||||
},
|
||||
]
|
||||
}
|
||||
if(this.printModelList[0])this.printModel = this.printModelList[0]
|
||||
this.captionGeneration = ''
|
||||
this.selectGenerateList = []
|
||||
this.inputShow = false
|
||||
this.uploadGenerateOpen('Upload')
|
||||
}
|
||||
this.upload.level1Type = menu.code
|
||||
}
|
||||
},
|
||||
|
||||
async sexChange(){
|
||||
// if(this.uploadGenerate == 'Generate' && this.selectCode == 'Sketchboard'){
|
||||
// }else{
|
||||
// // this.scene = this.designTypeList[this.selectCode].filter((item:any)=>item.value == this.designType)[0]
|
||||
// await this.getPosition()
|
||||
// }
|
||||
await this.getPosition()
|
||||
|
||||
if(this.uploadGenerate == 'Generate')return
|
||||
this.currentPage = 1
|
||||
this.getLibraryList('')
|
||||
@@ -757,7 +913,10 @@ export default defineComponent({
|
||||
this.currentPage = 1
|
||||
this.getLibraryList('')
|
||||
},
|
||||
|
||||
setSketchGenerateType (){
|
||||
this.selectGenerateList = []
|
||||
this.scene = this.SketchGenerateTypeList.filter((item:any)=>item.value == this.SketchGenerateType)[0]
|
||||
},
|
||||
fileUploadChange(data:any){
|
||||
let file = data.file
|
||||
// let Cropper:any = this.$refs.Cropper
|
||||
@@ -826,16 +985,25 @@ export default defineComponent({
|
||||
// this.scene = this.designTypeList[this.selectCode][0]
|
||||
// }
|
||||
// }
|
||||
// if(this.selectCode == 'Sketchboard' && str == 'Generate'){
|
||||
// this.designTypeList.Sketchboard = computed(()=>{
|
||||
// return this.store.state.UserHabit.SketchGenerateType
|
||||
// })
|
||||
// }else if(this.selectCode == 'Sketchboard'){
|
||||
// this.designTypeList.Sketchboard = computed(() => {
|
||||
// return this.store.state.UserHabit.Position;
|
||||
// });
|
||||
// }
|
||||
if(this.designTypeList[this.selectCode][0]){
|
||||
this.scene = this.designTypeList[this.selectCode][0]
|
||||
this.designType = this.designTypeList[this.selectCode][0].value
|
||||
}
|
||||
|
||||
|
||||
if(this.uploadGenerate == 'Generate'){
|
||||
if(str != 'Generate'){
|
||||
this.getLibraryList('')
|
||||
}
|
||||
if(str == 'Generate' && this.selectCode == 'Sketchboard'){
|
||||
this.scene = this.SketchGenerateTypeList[0]
|
||||
this.SketchGenerateType = this.SketchGenerateTypeList[0].value
|
||||
}
|
||||
if(str != 'Generate'){
|
||||
this.getLibraryList('')
|
||||
}
|
||||
this.uploadGenerate = str
|
||||
},
|
||||
@@ -850,7 +1018,7 @@ export default defineComponent({
|
||||
mask:false,
|
||||
centered:true,
|
||||
onOk() {
|
||||
_this.confirmDeletePic(data,index)
|
||||
_this.confirmDeletePic(data,index,'')
|
||||
}
|
||||
});
|
||||
},
|
||||
@@ -894,19 +1062,20 @@ export default defineComponent({
|
||||
cancelText: 'No',
|
||||
centered:true,
|
||||
onOk() {
|
||||
_this.confirmDeletePic('',0)
|
||||
_this.confirmDeletePic('',0,'')
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
//确定删除图片 有data则是单个
|
||||
confirmDeletePic(data:any,index:any){
|
||||
confirmDeletePic(data:any,index:any,nData:any){
|
||||
let libraryIds = data ? [data.id] : this.selectImgList
|
||||
let newData = {
|
||||
libraryIds:libraryIds,
|
||||
deleteModelConfirm:data.level1Type == 'Models' ? data.deleteModelConfirm?data.deleteModelConfirm : 0:'',
|
||||
deleteModelConfirm:this.selectCode == 'Models' ? data.deleteModelConfirm?data.deleteModelConfirm : 0:'',
|
||||
timeZone:Intl.DateTimeFormat().resolvedOptions().timeZone,
|
||||
}
|
||||
if(nData)newData = nData
|
||||
Https.axiosPost(Https.httpUrls.batchDeleteLibrary, newData).then(
|
||||
(rv: any) => {
|
||||
if(data && data.id){
|
||||
@@ -917,7 +1086,7 @@ export default defineComponent({
|
||||
}
|
||||
}
|
||||
).catch((res)=>{
|
||||
if(data.level1Type == "Models" && res.errCode === 2){
|
||||
if(this.selectCode == "Models" && res.errCode === 2){
|
||||
let _this = this
|
||||
Modal.confirm({
|
||||
title: res.errMsg,
|
||||
@@ -928,7 +1097,7 @@ export default defineComponent({
|
||||
zIndex:99999,
|
||||
centered:true,
|
||||
onOk() {
|
||||
data.deleteModelConfirm = 1
|
||||
newData.deleteModelConfirm = 1
|
||||
let id = _this.store.state.Workspace.workspace.id
|
||||
Https.axiosGet(Https.httpUrls.workspaceDetail,{params:{id:id}}).then((rv: any) => {
|
||||
if (rv) {
|
||||
@@ -950,7 +1119,9 @@ export default defineComponent({
|
||||
_this.store.commit("setWorkspace", rv);
|
||||
}
|
||||
})
|
||||
_this.confirmDeletePic(data,index)
|
||||
console.log(newData);
|
||||
|
||||
_this.confirmDeletePic('',index,newData)
|
||||
},
|
||||
onCancel(){
|
||||
|
||||
@@ -1053,46 +1224,7 @@ export default defineComponent({
|
||||
}
|
||||
});
|
||||
},
|
||||
getLibraryList(str:any){
|
||||
let labelArr:any = []
|
||||
this.value.labelValue.forEach((item:any)=>{
|
||||
labelArr.push(item[item.length-1])
|
||||
})
|
||||
let designType = ''
|
||||
if(this.selectCode == 'Sketchboard' || this.selectCode == 'DesignElements' || this.selectCode == 'Printboard'){
|
||||
designType = this.designType
|
||||
}
|
||||
let data = {
|
||||
classificationIdList:labelArr,
|
||||
level1Type:this.selectCode,
|
||||
level2Type:designType,
|
||||
page:1,
|
||||
modelSex:this.sex?this.sex:'',
|
||||
pictureName:this.searchPictureName,
|
||||
size:this.pageSize,
|
||||
intersection:this.intersection,
|
||||
}
|
||||
if(str == 'page'){
|
||||
data.page = this.currentPage
|
||||
}else{
|
||||
this.currentPage = 1
|
||||
}
|
||||
this.isShowMark = true
|
||||
Https.axiosPost(Https.httpUrls.queryLibraryPage,data).then(
|
||||
(rv: any) => {
|
||||
if(rv.content?.length == 0 && this.currentPage != 1){
|
||||
this.currentPage = 1
|
||||
this.getLibraryList('')
|
||||
}else{
|
||||
this.imgList = rv.content
|
||||
this.total = rv.total
|
||||
this.isShowMark = false
|
||||
}
|
||||
}
|
||||
).catch((res)=>{
|
||||
this.isShowMark = false
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
//编辑模特打点
|
||||
editPlacementClick(data:any){
|
||||
@@ -1107,7 +1239,8 @@ export default defineComponent({
|
||||
|
||||
//给模特打点编辑
|
||||
placementClick(data:any){
|
||||
let placementModal:any = isMoible() ? this.$refs.ModelPlacementMobile : this.$refs.ModelPlacement
|
||||
// let placementModal:any = isMoible() ? this.$refs.ModelPlacementMobile : this.$refs.ModelPlacement
|
||||
let placementModal:any = this.$refs.ModelPlacement
|
||||
placementModal.showPlacementModal(data,this.sex)
|
||||
},
|
||||
setTextareaShow(){
|
||||
@@ -1227,14 +1360,51 @@ export default defineComponent({
|
||||
this.printModel.optype = false
|
||||
document.removeEventListener('click',this.removePrintModel)
|
||||
},
|
||||
setprintModel(num:any){
|
||||
this.printModel = {
|
||||
num : num,
|
||||
optype:false,
|
||||
name:this.t('LibraryPage.Model'+num)
|
||||
setprintModel(item:any){
|
||||
this.printModel = item
|
||||
// this.printModel = {
|
||||
// num : num,
|
||||
// optype:false,
|
||||
// name:this.t('LibraryPage.Model'+num)
|
||||
// }
|
||||
},
|
||||
imageToSketch(){
|
||||
if((!this.printModel?.id && !this.printModel?.value) || !this.selectGenerateList?.[0]?.id)return message.info(this.t('Generate.jsContent4'));
|
||||
this.isShowMark = true
|
||||
let data = {
|
||||
"elementId": this.selectGenerateList[0].id,
|
||||
gender:this.sex,
|
||||
"style": this.printModel.value,
|
||||
"styleImageId": this.printModel.id?this.printModel.id:''
|
||||
}
|
||||
Https.axiosPost(Https.httpUrls.imageToSketch, data).then((rv)=>{
|
||||
if(rv){
|
||||
this.designTypeList[this.selectCode].forEach((itemCategory:any) => {
|
||||
if(itemCategory.value == rv.category){
|
||||
rv.categoryValue = itemCategory?.value
|
||||
rv.category = itemCategory?.name
|
||||
}
|
||||
});
|
||||
this.generateList[this.selectCode].push({
|
||||
imgUrl:rv.url,
|
||||
categoryValue:rv.categoryValue,
|
||||
category:rv.category,
|
||||
id:rv.id,
|
||||
status:'Success',
|
||||
})
|
||||
console.log(this.generateList);
|
||||
|
||||
this.isShowMark = false
|
||||
}
|
||||
}).catch(()=>{
|
||||
this.isShowMark = false
|
||||
})
|
||||
},
|
||||
getgenerate(){
|
||||
if(this.scene?.value == 'extract'){
|
||||
this.imageToSketch()
|
||||
return
|
||||
}
|
||||
this.isInputFocus = false
|
||||
this.isTextarea = false
|
||||
let selectCodeStr = JSON.parse(JSON.stringify(this.selectCode))
|
||||
@@ -1454,34 +1624,6 @@ export default defineComponent({
|
||||
})
|
||||
|
||||
|
||||
},
|
||||
getClass(){
|
||||
let data = {
|
||||
"classificationIdList": [],
|
||||
"classificationName": "",
|
||||
"createTime": "",
|
||||
"deleteConfirm": '',
|
||||
"id": '',
|
||||
"libraryId": '',
|
||||
"parentId": '',
|
||||
"type": this.selectCode,
|
||||
"updateTime": "",
|
||||
"userId": ''
|
||||
}
|
||||
Https.axiosPost(Https.httpUrls.queryClassification, data).then(
|
||||
(rv: any) => {
|
||||
this.options = rv
|
||||
rv.forEach((rvItem:any,rvIndex:number) => {
|
||||
this.options[rvIndex].value = rvItem.id
|
||||
this.options[rvIndex].label = rvItem.classificationName
|
||||
rvItem.childList.forEach((childItem:any,index:number) => {
|
||||
this.options[rvIndex].childList[index].value = childItem.id
|
||||
this.options[rvIndex].childList[index].label = childItem.classificationName
|
||||
});
|
||||
});
|
||||
}
|
||||
).catch((res)=>{
|
||||
});
|
||||
},
|
||||
scaleImage(index:any){
|
||||
let scaleImage:any = this.$refs.scaleImage
|
||||
@@ -1527,6 +1669,11 @@ export default defineComponent({
|
||||
box-sizing: border-box;
|
||||
display: flex;
|
||||
padding-top: 2rem;
|
||||
.printModel{
|
||||
font-size: 1.4rem;
|
||||
font-weight: 500;
|
||||
margin-right: 2rem;
|
||||
}
|
||||
.library_body_left{
|
||||
// width: 27.5rem;
|
||||
width: 36.5rem;
|
||||
@@ -1807,46 +1954,7 @@ export default defineComponent({
|
||||
}
|
||||
}
|
||||
|
||||
.printModel{
|
||||
font-size: 1.4rem;
|
||||
font-weight: 500;
|
||||
margin-right: 2rem;
|
||||
>div{
|
||||
width: 13rem;
|
||||
// display: flex;
|
||||
display: block;
|
||||
border-radius: 1rem;
|
||||
margin: 0;
|
||||
border: 2px solid;
|
||||
cursor: pointer;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
padding: 0 1rem;
|
||||
text-align: center;
|
||||
}
|
||||
ul{
|
||||
position: absolute;
|
||||
width: 13rem;
|
||||
text-align: center;
|
||||
margin-top: .3rem;
|
||||
border-radius: 1rem;
|
||||
overflow: hidden;
|
||||
z-index: 3;
|
||||
li{
|
||||
background: #c5c4c8;
|
||||
line-height: 2;
|
||||
cursor: pointer;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
padding: 0 1rem;
|
||||
&.printModel_item:hover{
|
||||
background: #949396;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
'login_active',
|
||||
]"
|
||||
>
|
||||
Log on to AiDA 3.0
|
||||
Log on to AiDA 3.1
|
||||
</div>
|
||||
</div>
|
||||
<!-- 账号密码登录 start -->
|
||||
@@ -464,6 +464,9 @@ export default defineComponent({
|
||||
Https.axiosPost(Https.httpUrls.accountLogin, data).then(
|
||||
(rv: any) => {
|
||||
if (rv) {
|
||||
if(rv.systemUser == 4){
|
||||
rv.systemUser = 1
|
||||
}
|
||||
this.createTimer();
|
||||
let isTest = rv.systemUser == 3?true:false
|
||||
let isBeginner = rv.isBeginner == 1?true:false
|
||||
@@ -475,12 +478,19 @@ export default defineComponent({
|
||||
setCookie("isBeginnerNum", 0);//从第一步开始,机器人开始的话就是从第二部开始
|
||||
setCookie("userInfo", JSON.stringify(rv));
|
||||
this.store.commit("setSystemUser", rv.systemUser)
|
||||
let obj:any = {
|
||||
avatar : rv.avatar,
|
||||
followeeCount : rv.followeeCount,
|
||||
followerCount : rv.followerCount,
|
||||
}
|
||||
|
||||
this.store.commit("setUserInfo", obj)
|
||||
if(rv.systemUser == 0){
|
||||
this.turnToHomePage('/');
|
||||
this.turnToHomePage('/Square');
|
||||
}else{
|
||||
if(window.innerWidth < 768){
|
||||
message.info("If you need to design, please log in using an iPad or computer.");
|
||||
this.turnToHomePage('/');
|
||||
this.turnToHomePage('/Square');
|
||||
}else{
|
||||
this.turnToHomePage('/home');
|
||||
}
|
||||
|
||||
130
src/views/emailVerify.vue
Normal file
130
src/views/emailVerify.vue
Normal file
@@ -0,0 +1,130 @@
|
||||
<template>
|
||||
<div class="emailVerify">
|
||||
<main class="main">
|
||||
<div class="survey-form">
|
||||
<h1 id="title"><span>√</span>邮箱修改成功</h1>
|
||||
<div class="text">
|
||||
<p id="description">您的新邮箱为:*********************</p>
|
||||
</div>
|
||||
<div class="mark_loading" v-show="!isSucceed">
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
<div class="mark_loading" v-show="isShowMark">
|
||||
<a-spin size="large" />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { ExclamationCircleOutlined } from '@ant-design/icons-vue';
|
||||
import { Modal,message } from 'ant-design-vue';
|
||||
import { useRoute } from 'vue-router';
|
||||
import { Https } from "@/tool/https";
|
||||
import { defineComponent, toRefs,ref, reactive, createVNode } from "vue";
|
||||
export default defineComponent({
|
||||
setup() {
|
||||
const route = useRoute();
|
||||
let feedbackData:any = reactive({
|
||||
isShowMark:false,
|
||||
isSucceed:false,
|
||||
});
|
||||
let setSubmit = (value:any)=>{
|
||||
Https.axiosPost(Https.httpUrls.questionnaire, value).then(
|
||||
(rv) => {
|
||||
alert('Submit Successfully!')
|
||||
}
|
||||
).catch(res=>{
|
||||
});
|
||||
}
|
||||
|
||||
return {
|
||||
...toRefs(feedbackData),
|
||||
setSubmit,
|
||||
};
|
||||
},
|
||||
|
||||
data() {
|
||||
return {
|
||||
// moodTemplateId: "", //模板id
|
||||
};
|
||||
},
|
||||
mounted() {},
|
||||
methods: {},
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
@import url("https://fonts.googleapis.com/css2?family=Quicksand:wght@400;700&display=swap");
|
||||
.emailVerify {
|
||||
font-family: "Quicksand", sans-serif;
|
||||
font-family: 'Roboto', sans-serif;
|
||||
text-align: center;
|
||||
line-height: 1.5;
|
||||
// background: linear-gradient(180deg, #f3f3e6 0%, #eee4f3 100%);
|
||||
overflow-y: auto;
|
||||
*{
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
.main{
|
||||
background: linear-gradient(45deg, #eee4f3, #f3f4e6);
|
||||
// background: #f5f5f5;
|
||||
width: 100vw;
|
||||
height: 100vh;
|
||||
}
|
||||
#title {
|
||||
font-size: 6rem;
|
||||
margin: 0;
|
||||
font-weight: 900;
|
||||
}
|
||||
#title{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
span{
|
||||
background: #39215b;
|
||||
width: 8rem;
|
||||
height: 8rem;
|
||||
border-radius: 50%;
|
||||
color: #fff;
|
||||
display: block;
|
||||
font-size: 6rem;
|
||||
line-height: 8rem;
|
||||
text-align: center;
|
||||
margin: 10px;
|
||||
}
|
||||
}
|
||||
.survey-form {
|
||||
position: relative;
|
||||
background: rgba(255, 255, 255);
|
||||
width: 50%;
|
||||
left: 50%;
|
||||
top: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
font-size: 2.4rem;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
border-radius: 2rem;
|
||||
padding: 4rem 0;
|
||||
.mark_loading{
|
||||
background: #fff;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 760px) {
|
||||
form {
|
||||
width: 75%;
|
||||
}
|
||||
}
|
||||
|
||||
p{
|
||||
font-size: 2.8rem;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="feedbackSurvey" :class="{'active': forbid}">
|
||||
<main id="main">
|
||||
<h1 id="title">AiDA 3.0 Feedback Survey</h1>
|
||||
<h1 id="title">AiDA 3.1 Feedback Survey</h1>
|
||||
<p id="description" v-if="!forbid">Please take the survey</p>
|
||||
<div id="survey-form" :class="{'active': !forbid}">
|
||||
<h2 class="section-title">Personal Information</h2>
|
||||
@@ -392,7 +392,7 @@
|
||||
</label>
|
||||
</div>
|
||||
<div class="section">
|
||||
<p>3. Will you subscribe to AiDA 3.0?<span class="fontColor">*</span></p>
|
||||
<p>3. Will you subscribe to AiDA 3.1?<span class="fontColor">*</span></p>
|
||||
<label>
|
||||
<input
|
||||
:disabled="forbid"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="feedbackSurvey">
|
||||
<main id="main">
|
||||
<h1 id="title">AiDA 3.0 调查问卷</h1>
|
||||
<h1 id="title">AiDA 3.1 调查问卷</h1>
|
||||
<p id="description">请填写调查问卷表</p>
|
||||
<div id="survey-form">
|
||||
<h2 class="section-title">参与者信息</h2>
|
||||
@@ -360,7 +360,7 @@
|
||||
</label>
|
||||
</div>
|
||||
<div class="section">
|
||||
<p>3. 您会订阅AiDA 3.0吗?<span class="fontColor">*</span></p>
|
||||
<p>3. 您会订阅AiDA 3.1吗?<span class="fontColor">*</span></p>
|
||||
<label>
|
||||
<input
|
||||
type="radio"
|
||||
|
||||
Reference in New Issue
Block a user