Commit b5769fff authored by XieZhiXiong's avatar XieZhiXiong

后台补充字段对接

parent d5b3367e
...@@ -39,4 +39,24 @@ ...@@ -39,4 +39,24 @@
/* autoprefixer: on */ /* autoprefixer: on */
-webkit-line-clamp: @line; -webkit-line-clamp: @line;
overflow: hidden; overflow: hidden;
}
.silkyScrollbar() {
&::-webkit-scrollbar {
height: 8px;
width: 6px;
background: #f0f2f5;
border-radius: 5px;
}
&::-webkit-scrollbar-button {
display: none;
}
&::-webkit-scrollbar-thumb {
width: 8px;
min-height: 15px;
background: rgba(0,0,0,.2);
border-radius: 5px;
}
} }
\ No newline at end of file
@import '../../../../global/styles/utils.less';
.equityInfo { .equityInfo {
.container { .container {
display: flex; display: flex;
...@@ -9,7 +11,7 @@ ...@@ -9,7 +11,7 @@
border-radius: 8px; border-radius: 8px;
&-title { &-title {
margin-bottom: 24px; margin-bottom: 20px;
line-height: 24px; line-height: 24px;
font-size: 16px; font-size: 16px;
font-weight: 500; font-weight: 500;
...@@ -23,11 +25,14 @@ ...@@ -23,11 +25,14 @@
.tofo { .tofo {
display: flex; display: flex;
padding: 0; padding: 0 0 4px;
margin: 0; margin: 0;
min-height: 101px;
overflow-x: auto;
.silkyScrollbar();
&-item { &-item {
flex: 1; flex: 0 0 33.333%;
list-style: none; list-style: none;
&-logo { &-logo {
......
...@@ -3,6 +3,7 @@ import { ...@@ -3,6 +3,7 @@ import {
Row, Row,
Col, Col,
Tabs, Tabs,
Tooltip,
} from 'antd'; } from 'antd';
import { QuestionCircleOutlined } from '@ant-design/icons'; import { QuestionCircleOutlined } from '@ant-design/icons';
import classNames from 'classnames'; import classNames from 'classnames';
...@@ -47,12 +48,28 @@ export interface EquityInfoProps { ...@@ -47,12 +48,28 @@ export interface EquityInfoProps {
sumReturnMoney?: number, // 累计返现金额 sumReturnMoney?: number, // 累计返现金额
sumUsedPoint?: number, // 已用积分 sumUsedPoint?: number, // 已用积分
sumPoint?: number, // 累计积分 sumPoint?: number, // 累计积分
rights?: {
acquireWay: string,
id: number,
name: string,
paramWay: string,
parameter: string,
remark: string,
rightTypeEnum: number,
status: number,
}[];
}; };
fetchReceivedList?: (params: FetchParams) => Promise<{ data: ReceivedData[] , totalCount: number }>; fetchReceivedList?: (params: FetchParams) => Promise<{ data: ReceivedData[] , totalCount: number }>;
fetchUsageList?: (params: FetchParams) => Promise<{ data: UsageData[] , totalCount: number }>; fetchUsageList?: (params: FetchParams) => Promise<{ data: UsageData[] , totalCount: number }>;
} }
const equityTxtMap = {
1: '折扣',
2: '返现',
3: '积分',
};
const EquityInfo: React.FC<EquityInfoProps> = ({ const EquityInfo: React.FC<EquityInfoProps> = ({
equityInfo = {}, equityInfo = {},
fetchReceivedList, fetchReceivedList,
...@@ -216,44 +233,26 @@ const EquityInfo: React.FC<EquityInfoProps> = ({ ...@@ -216,44 +233,26 @@ const EquityInfo: React.FC<EquityInfoProps> = ({
<div className={styles['container-content']}> <div className={styles['container-content']}>
<ul className={styles.tofo}> <ul className={styles.tofo}>
<li className={styles['tofo-item']}> {equityInfo.rights ? equityInfo.rights.map(item => (
<div className={styles['tofo-item-logo']}> <li key={item.id} className={styles['tofo-item']}>
<img src={equity3} /> <div className={styles['tofo-item-logo']}>
</div> <img src={require(`@/assets/imgs/equity-${item.rightTypeEnum}.png`)} />
<div className={styles['tofo-item-title']}> </div>
价格权益 <div className={styles['tofo-item-title']}>
<QuestionCircleOutlined /> {item.name}
</div> <Tooltip title={item.remark}>
<div className={styles['tofo-item-extra']}> <QuestionCircleOutlined />
<span className={classNames(styles['tofo-item-tag'], styles['tofo-item-tag-price'])}>95% 折扣</span> </Tooltip>
</div> </div>
</li> <div className={styles['tofo-item-extra']}>
<span
<li className={styles['tofo-item']}> className={classNames(styles['tofo-item-tag'], styles['tofo-item-tag-price'])}
<div className={styles['tofo-item-logo']}> >
<img src={equity1} /> {item.parameter} {equityTxtMap[item.rightTypeEnum] || ''}
</div> </span>
<div className={styles['tofo-item-title']}> </div>
返现权益 </li>
<QuestionCircleOutlined /> )) : null}
</div>
<div className={styles['tofo-item-extra']}>
<span className={classNames(styles['tofo-item-tag'], styles['tofo-item-tag-recurrence'])}>0.1% 返现</span>
</div>
</li>
<li className={styles['tofo-item']}>
<div className={styles['tofo-item-logo']}>
<img src={equity2} />
</div>
<div className={styles['tofo-item-title']}>
积分权益
<QuestionCircleOutlined />
</div>
<div className={styles['tofo-item-extra']}>
<span className={classNames(styles['tofo-item-tag'], styles['tofo-item-tag-integral'])}>1% 积分</span>
</div>
</li>
</ul> </ul>
</div> </div>
</div> </div>
......
...@@ -119,16 +119,6 @@ const LevelInfo: React.FC<LevelInfoProps> = ({ ...@@ -119,16 +119,6 @@ const LevelInfo: React.FC<LevelInfoProps> = ({
headStyle={{ headStyle={{
borderBottom: 'none', borderBottom: 'none',
}} }}
extra={(
<Radio.Group
buttonStyle="solid"
onChange={() => { }}
>
<Radio.Button value="all"></Radio.Button>
<Radio.Button value="day7"></Radio.Button>
<Radio.Button value="day30"></Radio.Button>
</Radio.Group>
)}
> >
<div className={styles.infoWrap}> <div className={styles.infoWrap}>
<div className={styles['infoWrap-left']}> <div className={styles['infoWrap-left']}>
......
...@@ -5,7 +5,7 @@ import { ...@@ -5,7 +5,7 @@ import {
Tabs, Tabs,
Card, Card,
Tooltip, Tooltip,
Radio, Button,
Spin, Spin,
} from 'antd'; } from 'antd';
import { import {
...@@ -425,12 +425,13 @@ const SincerityInfo: React.FC<SincerityInfoProps> = ({ ...@@ -425,12 +425,13 @@ const SincerityInfo: React.FC<SincerityInfoProps> = ({
}; };
// 获取交易评价记录列表 // 获取交易评价记录列表
const getSalesRecordList = () => { const getSalesRecordList = (extraParams: {[key: string]: any} = {}) => {
if (fetchSalesList) { if (fetchSalesList) {
setSalesListLoading(true); setSalesListLoading(true);
fetchSalesList({ fetchSalesList({
current: salesPage, current: salesPage,
pageSize: salesSize, pageSize: salesSize,
...extraParams,
}).then(res => { }).then(res => {
const { data = [], totalCount = 0 } = (res || {}); const { data = [], totalCount = 0 } = (res || {});
setSalesList(data); setSalesList(data);
...@@ -442,12 +443,13 @@ const SincerityInfo: React.FC<SincerityInfoProps> = ({ ...@@ -442,12 +443,13 @@ const SincerityInfo: React.FC<SincerityInfoProps> = ({
}; };
// 获取售后评价记录列表 // 获取售后评价记录列表
const getAfterRecordList = () => { const getAfterRecordList = (extraParams: {[key: string]: any} = {}) => {
if (fetchAfterList) { if (fetchAfterList) {
setAfterListLoading(true); setAfterListLoading(true);
fetchAfterList({ fetchAfterList({
current: afterPage, current: afterPage,
pageSize: afterSize, pageSize: afterSize,
...extraParams,
}).then(res => { }).then(res => {
const { data = [], totalCount = 0 } = (res || {}); const { data = [], totalCount = 0 } = (res || {});
setAfterList(data); setAfterList(data);
...@@ -529,6 +531,20 @@ const SincerityInfo: React.FC<SincerityInfoProps> = ({ ...@@ -529,6 +531,20 @@ const SincerityInfo: React.FC<SincerityInfoProps> = ({
getComplaintList(); getComplaintList();
}; };
const handleSalesRadioChange = value => {
setSalesPage(1);
getSalesRecordList({
starLevel: value,
});
};
const handleAfterRadioChange = value => {
setAfterPage(1);
getAfterRecordList({
starLevel: value,
});
};
return ( return (
<div className={styles.sincerityInfo}> <div className={styles.sincerityInfo}>
<Row gutter={[0, 24]}> <Row gutter={[0, 24]}>
...@@ -582,12 +598,12 @@ const SincerityInfo: React.FC<SincerityInfoProps> = ({ ...@@ -582,12 +598,12 @@ const SincerityInfo: React.FC<SincerityInfoProps> = ({
onChange={handleSalesTabChange} onChange={handleSalesTabChange}
tabBarExtraContent={ tabBarExtraContent={
salesTabKey === 'evaluateRecord' ? ( salesTabKey === 'evaluateRecord' ? (
<Radio.Group onChange={() => { }}> <>
<Radio.Button value="good">好评</Radio.Button> <Button type="text" onClick={() => handleSalesRadioChange(3)}>好评</Button>
<Radio.Button value="notBad">中评</Radio.Button> <Button type="text" onClick={() => handleSalesRadioChange(2)}>中评</Button>
<Radio.Button value="bad">差评</Radio.Button> <Button type="text" onClick={() => handleSalesRadioChange(1)}>差评</Button>
<Radio.Button value="all">全部</Radio.Button> <Button type="text" onClick={() => handleSalesRadioChange(0)}>全部</Button>
</Radio.Group> </>
) : null ) : null
} }
> >
...@@ -646,12 +662,12 @@ const SincerityInfo: React.FC<SincerityInfoProps> = ({ ...@@ -646,12 +662,12 @@ const SincerityInfo: React.FC<SincerityInfoProps> = ({
onChange={handleAfterTabChange} onChange={handleAfterTabChange}
tabBarExtraContent={ tabBarExtraContent={
afterTabKey === 'evaluateRecord' ? ( afterTabKey === 'evaluateRecord' ? (
<Radio.Group onChange={() => { }}> <>
<Radio.Button value="good">好评</Radio.Button> <Button type="text" onClick={() => handleAfterRadioChange(3)}>好评</Button>
<Radio.Button value="notBad">中评</Radio.Button> <Button type="text" onClick={() => handleAfterRadioChange(2)}>中评</Button>
<Radio.Button value="bad">差评</Radio.Button> <Button type="text" onClick={() => handleAfterRadioChange(1)}>差评</Button>
<Radio.Button value="all">全部</Radio.Button> <Button type="text" onClick={() => handleAfterRadioChange(0)}>全部</Button>
</Radio.Group> </>
) : null ) : null
} }
> >
...@@ -705,16 +721,11 @@ const SincerityInfo: React.FC<SincerityInfoProps> = ({ ...@@ -705,16 +721,11 @@ const SincerityInfo: React.FC<SincerityInfoProps> = ({
<Col span={24}> <Col span={24}>
<MellowCard title="投诉记录"> <MellowCard title="投诉记录">
<div className={styles['record-btns']}> <div className={styles['record-btns']}>
<Radio.Group <Button type="text">全部({complaintSumData?.sum})</Button>
buttonStyle="solid" <Button type="text">最近7天({complaintSumData?.last7days})</Button>
onChange={() => { }} <Button type="text">最近30天({complaintSumData?.last30days})</Button>
> <Button type="text">最近180天({complaintSumData?.last180days})</Button>
<Radio.Button value="all">全部({complaintSumData?.sum})</Radio.Button> <Button type="text">180天前({complaintSumData?.before180days})</Button>
<Radio.Button value="day7">最近7天({complaintSumData?.last7days})</Radio.Button>
<Radio.Button value="day30">最近30天({complaintSumData?.last30days})</Radio.Button>
<Radio.Button value="day180">最近180天({complaintSumData?.last180days})</Radio.Button>
<Radio.Button value="day180+">180天前({complaintSumData?.before180days})</Radio.Button>
</Radio.Group>
</div> </div>
<PolymericTable <PolymericTable
......
...@@ -66,6 +66,7 @@ const EquityInfo: React.FC<{}> = () => { ...@@ -66,6 +66,7 @@ const EquityInfo: React.FC<{}> = () => {
sumReturnMoney: equityInfo?.sumReturnMoney, sumReturnMoney: equityInfo?.sumReturnMoney,
sumUsedPoint: equityInfo?.sumUsedPoint, sumUsedPoint: equityInfo?.sumUsedPoint,
sumPoint: equityInfo?.sumPoint, sumPoint: equityInfo?.sumPoint,
rights: equityInfo?.rights,
}} }}
fetchReceivedList={getReceivedList} fetchReceivedList={getReceivedList}
fetchUsageList={getUsageList} fetchUsageList={getUsageList}
......
...@@ -66,6 +66,7 @@ const EquityInfo: React.FC<{}> = () => { ...@@ -66,6 +66,7 @@ const EquityInfo: React.FC<{}> = () => {
sumReturnMoney: equityInfo?.sumReturnMoney, sumReturnMoney: equityInfo?.sumReturnMoney,
sumUsedPoint: equityInfo?.sumUsedPoint, sumUsedPoint: equityInfo?.sumUsedPoint,
sumPoint: equityInfo?.sumPoint, sumPoint: equityInfo?.sumPoint,
rights: equityInfo?.rights,
}} }}
fetchReceivedList={getReceivedList} fetchReceivedList={getReceivedList}
fetchUsageList={getUsageList} fetchUsageList={getUsageList}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment