2024-08-05 16:16:08 +08:00
|
|
|
|
<template>
|
|
|
|
|
|
<div class="account_page">
|
2024-09-27 16:31:33 +08:00
|
|
|
|
<!-- <div class="account_page_titleImg">
|
2024-08-05 16:16:08 +08:00
|
|
|
|
<img src="https://code-create.com.hk/wp-content/uploads/2022/12/about_banner-1.jpg" alt="">
|
2024-09-27 16:31:33 +08:00
|
|
|
|
</div> -->
|
2024-08-05 16:16:08 +08:00
|
|
|
|
<div class="account_page_content_box">
|
2024-12-11 16:26:36 +08:00
|
|
|
|
<div class="content_item_user">
|
|
|
|
|
|
<div class="content_item_user_left">
|
|
|
|
|
|
<div class="content_item_user_left_detail">
|
2025-01-07 17:15:28 +08:00
|
|
|
|
<img :src="uploadUrl?uploadUrl:userDetail.avatar" alt="">
|
|
|
|
|
|
<div class="upload_box">
|
|
|
|
|
|
<i class="fi fi-rr-camera"></i>
|
|
|
|
|
|
<a-upload
|
|
|
|
|
|
class="upload"
|
|
|
|
|
|
:capture="null"
|
|
|
|
|
|
list-type="picture-card"
|
|
|
|
|
|
:before-upload="beforeUpload"
|
|
|
|
|
|
v-model:file-list="fileList"
|
|
|
|
|
|
:customRequest="function(){}"
|
|
|
|
|
|
:maxCount="1"
|
|
|
|
|
|
accept=".jpg,.png,.jpeg,.bmp"
|
|
|
|
|
|
@change="fileUploadChange"
|
|
|
|
|
|
>
|
|
|
|
|
|
<div
|
|
|
|
|
|
class="upload_tip_block"
|
|
|
|
|
|
>
|
|
|
|
|
|
<!-- <i class="fi fi-br-upload"></i> -->
|
|
|
|
|
|
<!-- <img :src="uploadUrl?uploadUrl:userDetail.avatar" alt=""> -->
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</a-upload>
|
|
|
|
|
|
</div>
|
2024-12-11 16:26:36 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
<div class="content_item_user_left_detail">
|
|
|
|
|
|
<div class="modal_title_text">
|
2025-01-07 17:15:28 +08:00
|
|
|
|
<div class="label">
|
|
|
|
|
|
<div class="content">
|
|
|
|
|
|
<div v-if="!isEditUserName">{{ userDetail.userName }}</div>
|
|
|
|
|
|
<input v-else type="text" v-model="editUserName">
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="icon">
|
|
|
|
|
|
<i v-if="!isEditUserName" class="fi fi-rr-edit" @click="openEdit('userName')"></i>
|
|
|
|
|
|
<i v-else class="fi fi-br-check" @click="editChek('userName')"></i>
|
|
|
|
|
|
</div>
|
2025-01-24 13:41:13 +08:00
|
|
|
|
<span class="Modifiable" v-if="userDetail.usernameModify > 0 && isEditUserName">{{ $t('account.remainingModifications') }}{{ userDetail.usernameModify }}/5</span>
|
|
|
|
|
|
<span class="Modifiable notModifiable" v-else-if="isEditUserName">{{ $t('account.notModifiable') }} {{ userDetail.usernameModify }}/5</span>
|
2025-01-07 17:15:28 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
<div class="label">
|
|
|
|
|
|
<span>{{$t('account.email')}}: </span>
|
|
|
|
|
|
<div class="content">
|
|
|
|
|
|
<div v-if="!isEditEmail">{{ userDetail.email }}</div>
|
|
|
|
|
|
<input v-else type="text" :value="editEmail">
|
|
|
|
|
|
</div>
|
2025-09-25 15:30:01 +08:00
|
|
|
|
<!-- <div class="icon">
|
2025-01-07 17:15:28 +08:00
|
|
|
|
<i v-if="!isEditEmail" class="fi fi-rr-edit" @click="openEdit('email')"></i>
|
|
|
|
|
|
<i v-else class="fi fi-br-check" @click="editChek('email')"></i>
|
2025-09-25 15:30:01 +08:00
|
|
|
|
</div> -->
|
2025-01-07 17:15:28 +08:00
|
|
|
|
</div>
|
2024-12-11 16:26:36 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
<div class="content_item_user_left_detail_bottom">
|
|
|
|
|
|
<div>
|
2024-12-18 17:38:43 +08:00
|
|
|
|
<span>{{$t('account.Follow')}}:</span>{{ userDetail.followeeCount }}
|
2024-12-11 16:26:36 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
<div>
|
2024-12-18 17:38:43 +08:00
|
|
|
|
<span>{{$t('account.Fans')}}:</span>{{ userDetail.followerCount }}
|
2024-12-11 16:26:36 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
2024-08-05 16:16:08 +08:00
|
|
|
|
<div class="account_page_content">
|
|
|
|
|
|
<div class="account_page_content_left">
|
|
|
|
|
|
<!-- {{ router.path }} -->
|
|
|
|
|
|
<router-link class="content_left_item" v-for="item in rootSubmenuKeys" :class="{active: $route.path == item.route}" :to="item.route">
|
|
|
|
|
|
<i class="fi" :class="item.icon"></i>
|
|
|
|
|
|
<div>
|
|
|
|
|
|
{{item.name}}
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</router-link>
|
|
|
|
|
|
<!-- <div class="content_left_item" v-for="item in rootSubmenuKeys" :class="{active: $route.path == item.route}">
|
|
|
|
|
|
<i class="fi" :class="item.icon"></i>
|
|
|
|
|
|
<router-link :to="item.route">
|
|
|
|
|
|
{{item.name}}
|
|
|
|
|
|
</router-link>
|
|
|
|
|
|
</div> -->
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="account_page_content_right">
|
|
|
|
|
|
<router-view></router-view>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
2025-01-07 17:15:28 +08:00
|
|
|
|
<bindEmail ref="bindEmail"></bindEmail>
|
|
|
|
|
|
<Cropper ref="Cropper" @handleCropperSuccess="handleCropperSuccess" @closeCropper="deletUploadFile()" :cropperFileData="cropperFileData" :isRound="true"></Cropper>
|
2024-08-05 16:16:08 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
<script lang="ts">
|
|
|
|
|
|
import { defineComponent,computed,ref,reactive,nextTick,toRefs,createVNode} from 'vue'
|
|
|
|
|
|
import { Https } from "@/tool/https";
|
|
|
|
|
|
import { Modal,message } from 'ant-design-vue';
|
|
|
|
|
|
import { useRouter,useRoute } from 'vue-router'
|
|
|
|
|
|
import { useStore } from "vuex";
|
|
|
|
|
|
import { useI18n } from 'vue-i18n'
|
2025-01-07 17:15:28 +08:00
|
|
|
|
import bindEmail from "@/component/HomePage/bindEmail.vue";
|
|
|
|
|
|
import Cropper from '@/component/HomePage/Cropper.vue'
|
2024-08-05 16:16:08 +08:00
|
|
|
|
export default defineComponent({
|
|
|
|
|
|
components:{
|
2025-01-07 17:15:28 +08:00
|
|
|
|
bindEmail,Cropper
|
2024-08-05 16:16:08 +08:00
|
|
|
|
},
|
|
|
|
|
|
setup() {
|
2024-09-03 16:39:06 +08:00
|
|
|
|
|
|
|
|
|
|
const {t} = useI18n()
|
2024-08-05 16:16:08 +08:00
|
|
|
|
const store = useStore();
|
2024-12-18 17:38:43 +08:00
|
|
|
|
let userDetail= computed(()=>{
|
|
|
|
|
|
return store.state.UserHabit.userDetail
|
2024-12-11 16:26:36 +08:00
|
|
|
|
})
|
2024-08-05 16:16:08 +08:00
|
|
|
|
let accountHomeData = reactive({
|
2025-01-07 17:15:28 +08:00
|
|
|
|
isEditUserName:false,
|
|
|
|
|
|
editUserName:'',
|
|
|
|
|
|
isEditEmail:false,
|
|
|
|
|
|
editEmail:'',
|
|
|
|
|
|
bindEmail:null as any,
|
|
|
|
|
|
Cropper:null as any,
|
|
|
|
|
|
cropperFileData:{name:'',uid:''}, //裁剪的原始文件数据
|
|
|
|
|
|
uploadUrl:'',
|
|
|
|
|
|
uploadFile:undefined,
|
|
|
|
|
|
token:'',
|
|
|
|
|
|
fileList:[] as any,
|
2024-08-05 16:16:08 +08:00
|
|
|
|
rootSubmenuKeys:[
|
|
|
|
|
|
{
|
2024-12-11 16:26:36 +08:00
|
|
|
|
name:t('account.frontPage'),
|
|
|
|
|
|
route:'/home/account/frontPage',
|
2024-08-05 16:16:08 +08:00
|
|
|
|
icon:'fi-rr-user'
|
|
|
|
|
|
},{
|
2024-09-03 16:39:06 +08:00
|
|
|
|
name:t('account.Messages'),
|
2024-08-05 16:16:08 +08:00
|
|
|
|
route:'/home/account/accountMessage',
|
|
|
|
|
|
icon:'fi-rr-envelope'
|
|
|
|
|
|
},{
|
2025-06-26 15:41:08 +08:00
|
|
|
|
name:`${t('account.FollowFans')}`,
|
2024-08-05 16:16:08 +08:00
|
|
|
|
route:'/home/account/accountFollowFans',
|
2024-09-03 16:39:06 +08:00
|
|
|
|
icon:'fi-rr-users-alt'
|
2024-08-05 16:16:08 +08:00
|
|
|
|
},
|
|
|
|
|
|
]
|
|
|
|
|
|
})
|
|
|
|
|
|
const router = useRouter()
|
|
|
|
|
|
// provide('exhibitionList',exhibitionList)
|
|
|
|
|
|
let handleClick = (event:any) => {
|
|
|
|
|
|
// state.selectedKeys = [Number(event.key)]
|
|
|
|
|
|
// state.nowPageName = event.item.name
|
|
|
|
|
|
router.push({path:event.item.route})
|
2025-01-07 17:15:28 +08:00
|
|
|
|
}
|
|
|
|
|
|
const editUserName = async ()=>{
|
|
|
|
|
|
if(!accountHomeData.editUserName)return message.warning(t('LibraryPage.jsContent7'))
|
|
|
|
|
|
if(accountHomeData.editUserName == userDetail.value.userName)return
|
|
|
|
|
|
await new Promise<void>((resolve, reject) => {
|
|
|
|
|
|
Https.axiosGet(Https.httpUrls.editUserName,{params:{newUserName:accountHomeData.editUserName}}).
|
|
|
|
|
|
then((rv:any)=>{
|
|
|
|
|
|
let value = {
|
2025-02-04 09:14:56 +08:00
|
|
|
|
userName:accountHomeData.editUserName,
|
|
|
|
|
|
usernameModify:userDetail.value.usernameModify-=1
|
2025-01-07 17:15:28 +08:00
|
|
|
|
}
|
|
|
|
|
|
store.commit('upUserDetail',value)
|
|
|
|
|
|
resolve()
|
|
|
|
|
|
}).catch((err:any)=>{
|
|
|
|
|
|
resolve()
|
|
|
|
|
|
})
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
const editEmail = ()=>{
|
|
|
|
|
|
if(!accountHomeData.editEmail)return message.warning(t('LibraryPage.jsContent7'))
|
|
|
|
|
|
}
|
|
|
|
|
|
const editChek = async (str:string)=>{
|
|
|
|
|
|
if(str == 'userName'){
|
|
|
|
|
|
await editUserName()
|
|
|
|
|
|
}else{
|
|
|
|
|
|
// await editEmail()
|
|
|
|
|
|
}
|
|
|
|
|
|
accountHomeData.isEditUserName = false
|
|
|
|
|
|
accountHomeData.isEditEmail = false
|
|
|
|
|
|
accountHomeData.editUserName = ''
|
|
|
|
|
|
accountHomeData.editEmail = ''
|
|
|
|
|
|
}
|
|
|
|
|
|
const openEdit = (str:string)=>{
|
|
|
|
|
|
if(str == 'userName'){
|
|
|
|
|
|
// if(userDetail.value.usernameModify.remainingTimes == 0)return
|
|
|
|
|
|
accountHomeData.isEditUserName = true
|
|
|
|
|
|
accountHomeData.isEditEmail = false
|
|
|
|
|
|
accountHomeData.editUserName = userDetail.value.userName
|
|
|
|
|
|
}else{
|
|
|
|
|
|
accountHomeData.bindEmail.init('Modify')
|
|
|
|
|
|
// accountHomeData.isEditEmail = true
|
|
|
|
|
|
accountHomeData.isEditUserName = false
|
|
|
|
|
|
// accountHomeData.editEmail = userDetail.value.email
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
let beforeUpload=(file:any,fileList:any)=>{
|
|
|
|
|
|
const isJpgOrPng = file.type === 'image/jpeg' || file.type === 'image/png' || file.type === 'image/jpg' || file.type === 'image/bmp';
|
|
|
|
|
|
if (!isJpgOrPng) {
|
|
|
|
|
|
message.info(useI18n().t('PrintboardUpload.jsContent1'));
|
|
|
|
|
|
}
|
|
|
|
|
|
const isLt2M = file.size / 1024 / 1024 < 5;
|
|
|
|
|
|
if (!isLt2M) {
|
|
|
|
|
|
message.info(useI18n().t('PrintboardUpload.jsContent2'));
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
let fileUploadChange = (data:any)=>{
|
|
|
|
|
|
let file = data.file
|
|
|
|
|
|
// file.id = res.data.id?res.data.id:""
|
|
|
|
|
|
var reader = new FileReader();
|
|
|
|
|
|
reader.onload = (e:any) => {
|
|
|
|
|
|
let data_new;
|
|
|
|
|
|
if (typeof e.target.result === 'object') {
|
|
|
|
|
|
// 把Array Buffer转化为blob 如果是base64不需要
|
|
|
|
|
|
data_new = window.URL.createObjectURL(new Blob([e.target.result]));
|
|
|
|
|
|
} else {
|
|
|
|
|
|
data_new = e.target.result;
|
|
|
|
|
|
}
|
|
|
|
|
|
accountHomeData.Cropper.getOptionImg(data_new)
|
|
|
|
|
|
};
|
|
|
|
|
|
reader.readAsArrayBuffer(file.originFileObj);
|
|
|
|
|
|
accountHomeData.Cropper.changeShowModal(true)
|
|
|
|
|
|
}
|
|
|
|
|
|
let handleCropperSuccess = (event:any)=>{
|
|
|
|
|
|
let {file, fileData,base64} =event
|
|
|
|
|
|
accountHomeData.fileList[0].status = 'done'
|
|
|
|
|
|
accountHomeData.uploadUrl = base64
|
|
|
|
|
|
accountHomeData.uploadFile = file
|
|
|
|
|
|
accountHomeData.Cropper.closeCropper()
|
|
|
|
|
|
if(!accountHomeData.uploadFile)return
|
|
|
|
|
|
let param = new FormData();
|
|
|
|
|
|
param.append('file',accountHomeData.uploadFile);
|
|
|
|
|
|
let config:any = {headers:{'Content-Type':'multipart/form-data','Accept':'*/*' }}
|
|
|
|
|
|
Https.axiosPost(Https.httpUrls.uploadAvatar,param,config)
|
|
|
|
|
|
.then((rv)=>{
|
|
|
|
|
|
let data = {
|
|
|
|
|
|
avatar : rv
|
|
|
|
|
|
}
|
|
|
|
|
|
store.commit("upUserDetail", data)
|
|
|
|
|
|
message.success('提交成功')
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
let deletUploadFile = () => {
|
|
|
|
|
|
accountHomeData.fileList = []
|
2024-08-05 16:16:08 +08:00
|
|
|
|
}
|
|
|
|
|
|
return{
|
2024-12-18 17:38:43 +08:00
|
|
|
|
userDetail,
|
2024-08-05 16:16:08 +08:00
|
|
|
|
...toRefs(accountHomeData),
|
|
|
|
|
|
router,
|
|
|
|
|
|
handleClick,
|
2025-01-07 17:15:28 +08:00
|
|
|
|
editChek,
|
|
|
|
|
|
openEdit,
|
|
|
|
|
|
beforeUpload,
|
|
|
|
|
|
fileUploadChange,
|
|
|
|
|
|
handleCropperSuccess,
|
|
|
|
|
|
deletUploadFile,
|
2024-08-05 16:16:08 +08:00
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
data(){
|
|
|
|
|
|
return{
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
})
|
|
|
|
|
|
</script>
|
|
|
|
|
|
<style lang="less" scoped>
|
|
|
|
|
|
.account_page{
|
|
|
|
|
|
height: 100%;
|
2024-12-11 16:26:36 +08:00
|
|
|
|
// overflow-y: auto;
|
2026-04-14 15:07:20 +08:00
|
|
|
|
// padding: 0 26rem;
|
2025-06-26 15:41:08 +08:00
|
|
|
|
// padding: 0 7rem;
|
2025-05-20 16:47:27 +08:00
|
|
|
|
padding-top: 4rem;
|
2026-04-14 15:07:20 +08:00
|
|
|
|
max-width: 100rem;
|
|
|
|
|
|
margin: 0 auto;
|
2024-12-11 16:26:36 +08:00
|
|
|
|
display: flex;
|
|
|
|
|
|
overflow: hidden;
|
2024-08-05 16:16:08 +08:00
|
|
|
|
.account_page_titleImg{
|
|
|
|
|
|
img{
|
|
|
|
|
|
width: 100%;
|
|
|
|
|
|
height: 30rem;
|
|
|
|
|
|
object-fit: cover;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
.account_page_content_box{
|
2024-12-11 16:26:36 +08:00
|
|
|
|
flex: 1;
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
|
.content_item_user{
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
align-items: center;
|
2025-06-26 15:41:08 +08:00
|
|
|
|
margin-bottom: 4rem;
|
2024-12-11 16:26:36 +08:00
|
|
|
|
.content_item_user_left{
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
.content_item_user_left_detail{
|
2025-01-07 17:15:28 +08:00
|
|
|
|
position: relative;
|
2025-06-26 15:41:08 +08:00
|
|
|
|
> .modal_title_text{
|
|
|
|
|
|
font-size: var(--aida-fsize1-6);
|
|
|
|
|
|
}
|
2025-01-07 17:15:28 +08:00
|
|
|
|
> .upload_box{
|
|
|
|
|
|
position: absolute;
|
|
|
|
|
|
bottom: 0;
|
|
|
|
|
|
right: 0;
|
|
|
|
|
|
> i{
|
2025-06-26 15:41:08 +08:00
|
|
|
|
width: 3rem;
|
|
|
|
|
|
height: 3rem;
|
2025-01-07 17:15:28 +08:00
|
|
|
|
display: flex;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
justify-content: center;
|
|
|
|
|
|
border-radius: 50%;
|
|
|
|
|
|
background: rgba(0,0,0,.5);
|
|
|
|
|
|
color: #fff;
|
2025-06-26 15:41:08 +08:00
|
|
|
|
font-size: 1.6rem;
|
2025-01-07 17:15:28 +08:00
|
|
|
|
}
|
|
|
|
|
|
> .upload{
|
|
|
|
|
|
position: absolute;
|
|
|
|
|
|
width: 100%;
|
|
|
|
|
|
height: 100%;
|
|
|
|
|
|
top: 0;
|
|
|
|
|
|
left: 0;
|
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
|
opacity: 0;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2024-12-11 16:26:36 +08:00
|
|
|
|
> .modal_title_text{
|
|
|
|
|
|
margin: 0;
|
2025-01-07 17:15:28 +08:00
|
|
|
|
> .label{
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
margin: 0;
|
2025-08-22 10:27:48 +08:00
|
|
|
|
align-items: center;
|
2025-01-07 17:15:28 +08:00
|
|
|
|
> .content{
|
|
|
|
|
|
> input{
|
|
|
|
|
|
min-width: 20rem;
|
|
|
|
|
|
height: 3.6rem;
|
|
|
|
|
|
border-radius: 4rem;
|
|
|
|
|
|
border: 1px solid;
|
|
|
|
|
|
padding-left: 1.5rem;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
> .Modifiable{
|
|
|
|
|
|
font-size: 1.6rem;
|
|
|
|
|
|
font-weight: 500;
|
|
|
|
|
|
color: #666666;
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
&.notModifiable{
|
|
|
|
|
|
color: #FF0000;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
> .icon{
|
|
|
|
|
|
margin: 0 1.5rem;
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
> i{
|
|
|
|
|
|
font-weight: 600;
|
2025-06-26 15:41:08 +08:00
|
|
|
|
font-size: 1.6rem;
|
2025-01-07 17:15:28 +08:00
|
|
|
|
cursor: pointer;
|
2025-06-26 15:41:08 +08:00
|
|
|
|
display: flex;
|
2025-01-07 17:15:28 +08:00
|
|
|
|
&.fi-br-check{
|
|
|
|
|
|
width: 3rem;
|
|
|
|
|
|
height: 3rem;
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
justify-content: center;
|
|
|
|
|
|
background: #000;
|
|
|
|
|
|
color: #fff;
|
|
|
|
|
|
border-radius: 50%;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
2024-12-11 16:26:36 +08:00
|
|
|
|
> div{
|
|
|
|
|
|
margin-bottom: 1rem;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
img{
|
|
|
|
|
|
border-radius: 50%;
|
2025-06-26 15:41:08 +08:00
|
|
|
|
width: 8rem;
|
|
|
|
|
|
height: 8rem;
|
2024-12-11 16:26:36 +08:00
|
|
|
|
}
|
|
|
|
|
|
.content_item_user_left_detail_bottom{
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
font-size: 1.8rem;
|
|
|
|
|
|
>div{
|
2025-06-26 15:41:08 +08:00
|
|
|
|
display: flex;
|
2024-12-11 16:26:36 +08:00
|
|
|
|
font-weight: 900;
|
|
|
|
|
|
width: 10rem;
|
2025-06-26 15:41:08 +08:00
|
|
|
|
margin-right: 2rem;
|
2024-12-11 16:26:36 +08:00
|
|
|
|
span{
|
|
|
|
|
|
font-weight: 600;
|
|
|
|
|
|
color: rgba(0,0,0,.45);
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
.content_item_user_left_detail:last-child{
|
|
|
|
|
|
margin-left: 3rem;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2024-08-05 16:16:08 +08:00
|
|
|
|
.account_page_content{
|
|
|
|
|
|
display: flex;
|
2024-12-11 16:26:36 +08:00
|
|
|
|
flex: 1;
|
|
|
|
|
|
overflow: hidden;
|
2024-08-05 16:16:08 +08:00
|
|
|
|
.account_page_content_left{
|
2025-06-26 15:41:08 +08:00
|
|
|
|
width: 18rem;
|
2024-08-05 16:16:08 +08:00
|
|
|
|
text-align: center;
|
2025-06-26 15:41:08 +08:00
|
|
|
|
margin-right: 2rem;
|
|
|
|
|
|
padding: 12px 0;
|
2025-07-19 14:04:48 +08:00
|
|
|
|
> a{
|
|
|
|
|
|
border-radius: 1rem;
|
|
|
|
|
|
}
|
2024-08-05 16:16:08 +08:00
|
|
|
|
}
|
|
|
|
|
|
.account_page_content_right{
|
2024-12-11 16:26:36 +08:00
|
|
|
|
flex: 1;
|
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
|
.account_message{
|
|
|
|
|
|
height: 100%;
|
|
|
|
|
|
:deep(.account_message_body){
|
|
|
|
|
|
height: 100%;
|
|
|
|
|
|
.ant-tabs-content-holder{
|
|
|
|
|
|
flex: 1;
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
.ant-tabs-content{
|
|
|
|
|
|
height: 100%;
|
|
|
|
|
|
overflow-y: auto;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
2024-08-05 16:16:08 +08:00
|
|
|
|
}
|
|
|
|
|
|
.content_left_item{
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
align-items: center;
|
2025-06-26 15:41:08 +08:00
|
|
|
|
height: 5rem;
|
2024-08-05 16:16:08 +08:00
|
|
|
|
color: #232323;
|
|
|
|
|
|
div{
|
2024-09-03 16:39:06 +08:00
|
|
|
|
white-space: nowrap;
|
2024-08-05 16:16:08 +08:00
|
|
|
|
width: 15rem;
|
2024-12-11 16:26:36 +08:00
|
|
|
|
color: #999999;
|
|
|
|
|
|
// text-align-last: justify;
|
|
|
|
|
|
text-align: left;
|
2025-06-26 15:41:08 +08:00
|
|
|
|
font-size: 1.6rem;
|
2024-08-05 16:16:08 +08:00
|
|
|
|
}
|
|
|
|
|
|
i{
|
|
|
|
|
|
color: #cfcfcf;
|
2025-06-26 15:41:08 +08:00
|
|
|
|
font-size: 1.6rem;
|
2024-08-05 16:16:08 +08:00
|
|
|
|
display: flex;
|
2024-12-11 16:26:36 +08:00
|
|
|
|
margin: 0 2rem;
|
2024-08-05 16:16:08 +08:00
|
|
|
|
}
|
|
|
|
|
|
&.active{
|
|
|
|
|
|
color: #fff;
|
2024-12-11 16:26:36 +08:00
|
|
|
|
background: #000;
|
2024-08-05 16:16:08 +08:00
|
|
|
|
div{
|
|
|
|
|
|
color: #fff;
|
|
|
|
|
|
font-weight: 900;
|
|
|
|
|
|
}
|
|
|
|
|
|
i{
|
|
|
|
|
|
color: #fff;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
</style>
|
2024-08-23 10:19:02 +08:00
|
|
|
|
<style lang="less">
|
|
|
|
|
|
.account_generalMessage_title{
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
border-radius: 5px;
|
|
|
|
|
|
position: sticky;
|
|
|
|
|
|
top: 0;
|
|
|
|
|
|
background: #fff;
|
|
|
|
|
|
margin-right: 5rem;
|
|
|
|
|
|
margin-left: 5rem;
|
2024-10-10 11:32:49 +08:00
|
|
|
|
&.modal_title_text{
|
|
|
|
|
|
z-index: 2;
|
|
|
|
|
|
}
|
2024-08-23 10:19:02 +08:00
|
|
|
|
.account_generalMessage_title_setting{
|
|
|
|
|
|
cursor: pointer;
|
2025-06-26 15:41:08 +08:00
|
|
|
|
font-size: var(--aida-fsize1-6);
|
2024-08-23 10:19:02 +08:00
|
|
|
|
margin-left: auto
|
|
|
|
|
|
}
|
|
|
|
|
|
.account_generalMessage_title_seach{
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
input{
|
|
|
|
|
|
padding-left: 1.5rem;
|
|
|
|
|
|
font-size: 1.4rem;
|
|
|
|
|
|
}
|
|
|
|
|
|
.search_icon_block{
|
2025-07-19 14:04:48 +08:00
|
|
|
|
background: #000;
|
2024-08-23 10:19:02 +08:00
|
|
|
|
color: #fff;
|
|
|
|
|
|
padding: .5rem 2rem;
|
|
|
|
|
|
font-size: 1.8rem;
|
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
.account_generalMessage_center{
|
2024-12-11 16:26:36 +08:00
|
|
|
|
// box-shadow: 0 0px 10px 1px rgba(0, 0, 0, 0.12);
|
|
|
|
|
|
// border: 1px solid #e9eaec;
|
2024-08-23 10:19:02 +08:00
|
|
|
|
border-radius: 5px;
|
|
|
|
|
|
.account_generalMessage_item{
|
|
|
|
|
|
margin-right: 0;
|
|
|
|
|
|
margin-left: 0;
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
border-radius: 0px;
|
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
|
align-items: center;
|
2025-06-26 15:41:08 +08:00
|
|
|
|
padding: 1.5rem 5rem;
|
2024-08-23 10:19:02 +08:00
|
|
|
|
border: none;
|
|
|
|
|
|
border-bottom: 1px solid #e9eaec;
|
|
|
|
|
|
box-shadow: none;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
.account_generalMessage_item{
|
|
|
|
|
|
border-radius: 5px;
|
|
|
|
|
|
padding: 5rem 5rem;
|
|
|
|
|
|
margin-right: 5rem;
|
|
|
|
|
|
margin-left: 5rem;
|
|
|
|
|
|
position: relative;
|
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
|
.ant-badge{
|
|
|
|
|
|
position: absolute;
|
|
|
|
|
|
transform: translate(-100%, 100%);
|
|
|
|
|
|
top: 0;
|
|
|
|
|
|
right: 0;
|
|
|
|
|
|
}
|
|
|
|
|
|
.account_generalMessage_item_link{
|
2025-07-19 14:04:48 +08:00
|
|
|
|
color: #000;
|
2024-08-23 10:19:02 +08:00
|
|
|
|
cursor: pointer;
|
|
|
|
|
|
font-weight: 600;
|
|
|
|
|
|
}
|
|
|
|
|
|
.account_generalMessage_item_link:hover{
|
|
|
|
|
|
text-decoration: underline;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
.account_generalMessage_item:hover{
|
|
|
|
|
|
background: #efefef;
|
|
|
|
|
|
}
|
|
|
|
|
|
.page_loading_box{
|
|
|
|
|
|
text-align: center;
|
|
|
|
|
|
height: 50px;
|
|
|
|
|
|
.page_loading{
|
|
|
|
|
|
display: block;
|
|
|
|
|
|
width: 50px;
|
|
|
|
|
|
height: 50px;
|
|
|
|
|
|
margin: 0 auto;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
</style>
|