feat: 联调
This commit is contained in:
@@ -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>
|
||||
)
|
||||
|
Reference in New Issue
Block a user