关注粉丝语言适配

This commit is contained in:
X1627315083
2024-09-13 14:38:35 +08:00
parent 96bb0fce77
commit 7e3f97f1af
10 changed files with 107 additions and 28 deletions

View File

@@ -1094,6 +1094,9 @@ li {
display: flex; display: flex;
align-items: center; align-items: center;
} }
.admin_page .admin_state_item > span > span {
color: red;
}
.admin_page .admin_state_item > span:nth-child(1) { .admin_page .admin_state_item > span:nth-child(1) {
font-size: 1.6rem; font-size: 1.6rem;
font-weight: 400; font-weight: 400;
@@ -1101,7 +1104,7 @@ li {
margin-right: 15px; margin-right: 15px;
flex-shrink: 0; flex-shrink: 0;
display: block; display: block;
width: 10rem; width: 10.5rem;
text-align: right; text-align: right;
} }
.admin_page .admin_state_item > input { .admin_page .admin_state_item > input {

View File

@@ -1215,6 +1215,11 @@ input:focus{
margin-bottom: 2rem; margin-bottom: 2rem;
display: flex; display: flex;
align-items: center; align-items: center;
>span{
>span{
color: red;
}
}
>span:nth-child(1){ >span:nth-child(1){
font-size: 1.6rem; font-size: 1.6rem;
font-weight: 400; font-weight: 400;
@@ -1224,7 +1229,7 @@ input:focus{
display: block; display: block;
// min-width: 20%; // min-width: 20%;
// width: 100px; // width: 100px;
width: 10rem; width: 10.5rem;
text-align: right; text-align: right;
} }
>input{ >input{

View File

@@ -11,7 +11,7 @@
<div class="account_generalMessage_center modal_title_text"> <div class="account_generalMessage_center modal_title_text">
<div class="account_generalMessage_item" v-for="item in dataList" :key="item.id"> <div class="account_generalMessage_item" v-for="item in dataList" :key="item.id">
<div class="account_generalMessage_item_right"> <div class="account_generalMessage_item_right">
<div class="account_generalMessage_item_right_img"> <div class="account_generalMessage_item_right_img" @click.stop="openOtherUsers(item)">
<img :src="item.avatar" alt=""> <img :src="item.avatar" alt="">
</div> </div>
<div class="account_generalMessage_item_right_title"> <div class="account_generalMessage_item_right_title">
@@ -86,7 +86,27 @@ export default defineComponent({
accountFollofFans.getListData.isNoData = true accountFollofFans.getListData.isNoData = true
}) })
} }
let setFollow = (item:any) =>{
let url = Https.httpUrls.porfolioFollow
if(item.isFollow == 1)url = Https.httpUrls.porfolioCancelFollow
Https.axiosGet(url, {params:{followeeId:item.senderId}})
.then((rv) => {
if(item.isFollow == 1){
item.isFollow = 0
}else{
item.isFollow = 1
}
})
}
let openOtherUsers = (item:any)=>{
const routeUrl = router.resolve({
path:'/home/otherUsers',
query:{
userId:item.senderId
}
})
window.open(routeUrl.href,'_blank')
}
onMounted (()=>{ onMounted (()=>{
accountFollofFans.getListData.isNoData = false accountFollofFans.getListData.isNoData = false
accountFollofFans.getListData.page = 0 accountFollofFans.getListData.page = 0
@@ -106,6 +126,8 @@ export default defineComponent({
searchFollowFansList, searchFollowFansList,
getFollowFansList, getFollowFansList,
loadingDom, loadingDom,
setFollow,
openOtherUsers,
} }
}, },
data(){ data(){

View File

@@ -12,12 +12,12 @@
<div class="account_generalMessage_item" v-for="item in dataList" :key="item.id"> <div class="account_generalMessage_item" v-for="item in dataList" :key="item.id">
<a-badge :dot="item.isRead == 0"></a-badge> <a-badge :dot="item.isRead == 0"></a-badge>
<div class="account_generalMessage_item_right"> <div class="account_generalMessage_item_right">
<div class="account_generalMessage_item_right_img"> <div class="account_generalMessage_item_right_img" @click.stop="openOtherUsers(item)">
<img :src="item.senderUserAvatar" alt=""> <img :src="item.avatar" alt="">
</div> </div>
<div class="account_generalMessage_item_right_title"> <div class="account_generalMessage_item_right_title">
<div class="">{{ item.senderUserName }}</div> <div class="">{{ item.senderUserName }}</div>
<div class="modal_title_text_intro">{{ item.createTime }} 关注了你</div> <div class="modal_title_text_intro">{{ item.createTime }} </div>
</div> </div>
</div> </div>
<div class="account_generalMessage_item_left"> <div class="account_generalMessage_item_left">
@@ -26,7 +26,7 @@
</div> </div>
</div> </div>
<div class="account_generalMessage_item" style="justify-content: center;" v-if="dataList.length == 0 && getListData.isNoData"> <div class="account_generalMessage_item" style="justify-content: center;" v-if="dataList.length == 0 && getListData.isNoData">
没有任何信息~ {{$t('account.dataNull')}}
</div> </div>
<div class="page_loading_box" v-show="!getListData.isNoData"> <div class="page_loading_box" v-show="!getListData.isNoData">
<span class="page_loading" ref="loadingDom" v-show="!getListData.isShowMark"></span> <span class="page_loading" ref="loadingDom" v-show="!getListData.isShowMark"></span>
@@ -87,7 +87,27 @@ export default defineComponent({
accountFollofFans.getListData.isNoData = true accountFollofFans.getListData.isNoData = true
}) })
} }
let setFollow = (item:any) =>{
let url = Https.httpUrls.porfolioFollow
if(item.isFollow == 1)url = Https.httpUrls.porfolioCancelFollow
Https.axiosGet(url, {params:{followeeId:item.senderId}})
.then((rv) => {
if(item.isFollow == 1){
item.isFollow = 0
}else{
item.isFollow = 1
}
})
}
let openOtherUsers = (item:any)=>{
const routeUrl = router.resolve({
path:'/home/otherUsers',
query:{
userId:item.senderId
}
})
window.open(routeUrl.href,'_blank')
}
onMounted (()=>{ onMounted (()=>{
accountFollofFans.getListData.isNoData = false accountFollofFans.getListData.isNoData = false
accountFollofFans.getListData.page = 0 accountFollofFans.getListData.page = 0
@@ -107,6 +127,8 @@ export default defineComponent({
searchFollowFansList, searchFollowFansList,
getFollowFansList, getFollowFansList,
loadingDom, loadingDom,
setFollow,
openOtherUsers,
} }
}, },
data(){ data(){

View File

@@ -10,24 +10,26 @@
<div class="otherUsers_userDetail_center"> <div class="otherUsers_userDetail_center">
<div class="otherUsers_userDetail_center_name modal_title_text"> <div class="otherUsers_userDetail_center_name modal_title_text">
<div>{{ userContent.userName }}</div> <div>{{ userContent.userName }}</div>
<div class="userDetail_center_name_left">关注</div> <div v-if="userContent?.isFollow == 0" @click.stop="setFollow(userContent)" class="userDetail_center_name_left">{{$t('newScaleImage.Follow')}}</div>
<div v-else @click.stop="setFollow(userContent)" class="userDetail_center_name_left">{{$t('newScaleImage.Unfollow')}}</div>
</div> </div>
<div class="otherUsers_userDetail_center_data"> <div class="otherUsers_userDetail_center_data">
<div class="userDetail_center_data_item modal_title_text"> <!-- <div class="userDetail_center_data_item modal_title_text">
<div>{{ userContent.homepageViewCount }}</div> <div>{{ userContent.homepageViewCount }}</div>
<span class="modal_title_text_intro">访问量</span> <span class="modal_title_text_intro">访问量</span>
</div> </div> -->
<div class="userDetail_center_data_item modal_title_text"> <div class="userDetail_center_data_item modal_title_text">
<div>{{ userContent.portfolioCount }}</div> <div>{{ userContent.portfolioCount }}</div>
<span class="modal_title_text_intro">作品</span> <span class="modal_title_text_intro">{{$t('account.works')}}</span>
</div> </div>
<div class="userDetail_center_data_item modal_title_text"> <div class="userDetail_center_data_item modal_title_text">
<div>{{ userContent.followerCount }}</div> <div>{{ userContent.followerCount }}</div>
<span class="modal_title_text_intro">粉丝</span> <span class="modal_title_text_intro">{{$t('account.Fans')}}</span>
</div> </div>
<div class="userDetail_center_data_item modal_title_text"> <div class="userDetail_center_data_item modal_title_text">
<div>{{ userContent.followeeCount }}</div> <div>{{ userContent.followeeCount }}</div>
<span class="modal_title_text_intro">关注</span> <span class="modal_title_text_intro">{{$t('account.Follow')}}</span>
</div> </div>
</div> </div>
<div class="otherUsers_userDetail_center_signature"> <div class="otherUsers_userDetail_center_signature">
@@ -39,7 +41,7 @@
</div> </div>
<div class="otherUser_works"> <div class="otherUser_works">
<div class="otherUser_works_title modal_title_text"> <div class="otherUser_works_title modal_title_text">
<div>他的作品</div> <div>{{$t('account.hisWorks')}}</div>
</div> </div>
<Works :isScroll="false" :otherUsers="true" :userId=userId></Works> <Works :isScroll="false" :otherUsers="true" :userId=userId></Works>
</div> </div>
@@ -76,15 +78,29 @@ export default defineComponent({
}) })
} }
let setFollow = (item:any) =>{
let url = Https.httpUrls.porfolioFollow
if(item.isFollow == 1)url = Https.httpUrls.porfolioCancelFollow
Https.axiosGet(url, {params:{followeeId:otherUsers.userId}})
.then((rv) => {
if(item.isFollow == 1){
item.isFollow = 0
}else{
item.isFollow = 1
}
})
}
onMounted (()=>{ onMounted (()=>{
otherUsers.userId = router.currentRoute.value.query?.userId otherUsers.userId = router.currentRoute.value.query?.userId
// alert() // alert()
getUserDetail(otherUsers.userId) setTimeout(() => {
getUserDetail(otherUsers.userId)
}, 2000);
}) })
return{ return{
...toRefs(otherUsers), ...toRefs(otherUsers),
setFollow,
} }
}, },
data(){ data(){

View File

@@ -21,7 +21,7 @@
</div> </div>
<div class="allUserPoeration_center admin_page"> <div class="allUserPoeration_center admin_page">
<div class="admin_state_item"> <div class="admin_state_item">
<span>User Name:</span> <span>User Name: <span>*</span></span>
<input <input
:readonly="title != 'Add'" :readonly="title != 'Add'"
:class="{active:title != 'Add'}" :class="{active:title != 'Add'}"
@@ -32,7 +32,7 @@
/> />
</div> </div>
<div class="admin_state_item"> <div class="admin_state_item">
<span>User Email:</span> <span>User Email: <span>*</span></span>
<input <input
:readonly="title != 'Add'" :readonly="title != 'Add'"
:class="{active:title != 'Add'}" :class="{active:title != 'Add'}"
@@ -43,7 +43,7 @@
/> />
</div> </div>
<div class="admin_state_item"> <div class="admin_state_item">
<span>Create Time:</span> <span>Create Time: <span>*</span></span>
<a-date-picker :disabled="title != 'Add'" style="width: 250px" valueFormat="YYYY-MM-DDTHH:mm:ss" class="range_picker" show-time placeholder="Create Time" v-model:value="validStartTime"> <a-date-picker :disabled="title != 'Add'" style="width: 250px" valueFormat="YYYY-MM-DDTHH:mm:ss" class="range_picker" show-time placeholder="Create Time" v-model:value="validStartTime">
<template #suffixIcon> <template #suffixIcon>
<span <span
@@ -53,7 +53,7 @@
</a-date-picker> </a-date-picker>
</div> </div>
<div class="admin_state_item"> <div class="admin_state_item">
<span>End Time:</span> <span>End Time: <span>*</span></span>
<a-date-picker style="width: 250px" valueFormat="YYYY-MM-DDTHH:mm:ss" class="range_picker" show-time placeholder="End Time" v-model:value="validEndTime"> <a-date-picker style="width: 250px" valueFormat="YYYY-MM-DDTHH:mm:ss" class="range_picker" show-time placeholder="End Time" v-model:value="validEndTime">
<template #suffixIcon> <template #suffixIcon>
<span <span
@@ -63,7 +63,7 @@
</a-date-picker> </a-date-picker>
</div> </div>
<div class="admin_state_item"> <div class="admin_state_item">
<span>User Type:</span> <span>User Type:<span>*</span></span>
<a-select <a-select
v-model:value="systemUser" v-model:value="systemUser"
size="large" size="large"
@@ -200,7 +200,6 @@ export default defineComponent({
} }
let setAddData = ()=>{ let setAddData = ()=>{
setTime(operationsData.validStartTime)
return { return {
"country": operationsData.country, "country": operationsData.country,
"credits": operationsData.credits, "credits": operationsData.credits,
@@ -234,6 +233,7 @@ export default defineComponent({
let data let data
if(operations.title == 'Add'){ if(operations.title == 'Add'){
data = setAddData() data = setAddData()
if(!data.userName || !data.userEmail || !data.validStartTime || !data.validEndTime || !data.systemUser)return message.warning('Please check the input box marked with *')
Https.axiosPost(Https.httpUrls.adminAddUser, data).then( Https.axiosPost(Https.httpUrls.adminAddUser, data).then(
(rv) => { (rv) => {
if (rv) { if (rv) {
@@ -244,6 +244,7 @@ export default defineComponent({
); );
}else{ }else{
data = setEditData() data = setEditData()
if(!data.userName || !data.userEmail || !data.validStartTime || !data.validEndTime || !data.systemUser)return message.warning('Please check the input box marked with *')
Https.axiosPost(Https.httpUrls.modifyUser,{},{params:data}).then( Https.axiosPost(Https.httpUrls.modifyUser,{},{params:data}).then(
(rv) => { (rv) => {
if (rv) { if (rv) {

View File

@@ -24,7 +24,7 @@
</div> </div>
</div> </div>
<div class="newPosted_generalMessage_item" style="justify-content: center;" v-if="dataList.length == 0 && isNoData"> <div class="newPosted_generalMessage_item" style="justify-content: center;" v-if="dataList.length == 0 && isNoData">
没有任何信息~ {{$t('account.dataNull')}}
</div> </div>
<div class="page_loading_box" v-show="!isNoData"> <div class="page_loading_box" v-show="!isNoData">
<span class="page_loading" ref="loadingDom" v-show="!isShowMark"></span> <span class="page_loading" ref="loadingDom" v-show="!isShowMark"></span>

View File

@@ -343,6 +343,8 @@ export default defineComponent({
width: 50%; width: 50%;
display: flex; display: flex;
align-items: center; align-items: center;
flex: 1;
overflow: hidden;
img{ img{
width: 25px; width: 25px;
height: 25px; height: 25px;
@@ -373,11 +375,15 @@ export default defineComponent({
} }
.falls_item_detail{ .falls_item_detail{
display: flex; display: flex;
width: 40%; // width: 40%;
width: 20%; // width: 20%;
// width: 7rem; // width: 7rem;
width: 70px; // width: 70px;
width: auto;
justify-content: space-between; justify-content: space-between;
>label:nth-child(1){
margin-right: 2rem;
}
>label{ >label{
// cursor: pointer; // cursor: pointer;
} }

View File

@@ -583,6 +583,8 @@ export default {
likedYourWork:'赞了你的作品', likedYourWork:'赞了你的作品',
//互动 //互动
Interact:'互动', Interact:'互动',
hisWorks:'他的作品',
works:'作品',
}, },
guide:{ guide:{
guide1:"在<strong>工作空间</strong>中,您可以个性化您的设计设置,包括选择适用于男装或女装的设计,以及选择用于创作的人体模型。", guide1:"在<strong>工作空间</strong>中,您可以个性化您的设计设置,包括选择适用于男装或女装的设计,以及选择用于创作的人体模型。",

View File

@@ -583,6 +583,8 @@ export default {
likedYourWork:'liked your work', likedYourWork:'liked your work',
//互动 //互动
Interact:'interact', Interact:'interact',
hisWorks:'His works',
works:'Works',
}, },
guide:{ guide:{
guide1:"You can personalize your design settings right here in the <strong>Workspace</strong>, including choosing to design for men's or women's wear, as well as selecting the mannequin to use for your creations.", guide1:"You can personalize your design settings right here in the <strong>Workspace</strong>, including choosing to design for men's or women's wear, as well as selecting the mannequin to use for your creations.",