feat: 联调

This commit is contained in:
秋水浮尘
2023-11-12 16:54:55 +08:00
parent 8a9d22e0aa
commit 5a17d2da74
14 changed files with 744 additions and 699 deletions

View File

@@ -1,20 +1,23 @@
import React from 'react'
import { Popover, Spin } from 'antd'
import ClickImg from '@/imgs/clickImg.png'
import Ranking1Img from '@/imgs/ranking1Img.png'
import Ranking2Img from '@/imgs/ranking2Img.png'
import Ranking3Img from '@/imgs/ranking3Img.png'
import RankingImg from '@/imgs/rankingImg.png'
import { debounce } from '@utils'
import { RankingTypeText, RankingTypeBtnText } from '../../constant'
import { Popover, Spin, message } from 'antd'
import React from 'react'
import { RankingTypeBtnText, RankingTypeText } from '../../constant'
import './index.less'
import { message } from 'antd'
import { imgObject } from '@constants'
const rankingBackImg = {
0: imgObject.ranking1Img,
1: imgObject.ranking2Img,
2: imgObject.ranking3Img,
0: Ranking1Img,
1: Ranking2Img,
2: Ranking3Img
}
export default function RankingBox(props) {
const { isLoading = false, currentActive, rankingType, contributionList } = props
const onChangeRanking = (index) =>
const onChangeRanking = index =>
debounce(() => {
props.onHandleRanking && props.onHandleRanking(index)
})
@@ -36,17 +39,19 @@ export default function RankingBox(props) {
let rankingList = contributionList || []
return (
<div className="ranking-list-box">
<div className="ranking-list-header">
<div className="ranking-list-title">{RankingTypeText[rankingType]}</div>
<div className="ranking-list-btns">
<div className='ranking-list-box'>
<div className='ranking-list-header'>
<div className='ranking-list-title'>{RankingTypeText[rankingType]}</div>
<div className='ranking-list-btns'>
{tabList.length > 0 &&
tabList.map((item, index) => {
return (
<div
key={`${rankingType}_${item.key}`}
onClick={onChangeRanking(index)}
className={`ranking-list-btn ${currentActive === index ? 'ranking-list-btn-active' : ''}`}
className={`ranking-list-btn ${
currentActive === index ? 'ranking-list-btn-active' : ''
}`}
>
{item.tab}
</div>
@@ -55,56 +60,52 @@ export default function RankingBox(props) {
</div>
</div>
<Spin spinning={isLoading}>
<div className="ranking-list">
<div className='ranking-list'>
{rankingList?.length > 0 &&
rankingList.map((item, index) => {
return (
<div className="ranking-item" key={item.id}>
<div className="ranking-left">
<div className='ranking-item' key={item.id}>
<div className='ranking-left'>
<div
className="ranking-icon"
className='ranking-icon'
style={{
backgroundImage: `url(${index <= 2 ? rankingBackImg[index] : imgObject.rankingImg})`,
backgroundImage: `url(${index <= 2 ? rankingBackImg[index] : RankingImg})`
}}
>
{index > 2 && index + 1}
</div>
<div className="ranking-head-img">
<img src={item.headImg} className="ranking-head-icon" />
<div className='ranking-head-img'>
<img src={item.headImg} className='ranking-head-icon' />
</div>
<Popover
title={
<div>
{item.name}
</div>
}
title={<div>{item.name}</div>}
content={
<div className="tooltip-info">
<div className='tooltip-info'>
<div>{item.name}</div>
{/* <div>{item.organizationFullName}</div> */}
</div>
}
>
<div className="ranking-info">
<div className="ranking-name">{item.name}</div>
<div className='ranking-info'>
<div className='ranking-name'>{item.name}</div>
{/* <div className="ranking-department">{item.organizationName}</div> */}
</div>
</Popover>
</div>
<div className="ranking-right">🔥 {item.count}</div>
<div className='ranking-right'>🔥 {item.count}</div>
</div>
)
})}
</div>
</Spin>
<div className="ranking-btn-go" onClick={onJump}>
<div className='ranking-btn-go' onClick={onJump}>
<div
className="ranking-btn-go-icon"
className='ranking-btn-go-icon'
style={{
backgroundImage: `url(${imgObject.clickImg})`,
backgroundImage: `url(${ClickImg})`
}}
></div>
<div className="ranking-btn-text">{RankingTypeBtnText[rankingType]}</div>
<div className='ranking-btn-text'>{RankingTypeBtnText[rankingType]}</div>
</div>
</div>
)