首页 年度

feature/2.0-sales-trade
Lei OT 2 years ago
parent 85d78d1cb6
commit 44647bee3b

@ -79,7 +79,7 @@
{}
]
},
"get|/service-web/QueryData/GetTradeProcess": {
"get|/service-Analyse2/GetTradeProcess/test": {
"errcode": 0,
"errmsg": "",
"loading": false,

@ -1,23 +1,18 @@
import { makeAutoObservable, runInAction } from 'mobx';
import { makeAutoObservable, runInAction, toJS } from 'mobx';
import * as req from '../utils/request';
import { isEmpty, sortBy } from '../utils/commons';
/**
* 计算变化值
*/
const calcRate = (r1, r2) => {
//
};
class Trade {
constructor(rootStore) {
this.rootStore = rootStore;
makeAutoObservable(this);
}
fetchSummaryData() {
fetchSummaryData(queryData) {
this.summaryData.loading = true;
req.fetchJSON('/service-web/QueryData/GetTradeSummary').then((json) => {
queryData.groupType = 'overview';
queryData.groupDateType = 'year';
req.fetchJSON('/service-Analyse2/GetTradeProcess/test', queryData).then((json) => {
if (json.errcode === 0) {
runInAction(() => {
const summaryData = {
@ -25,7 +20,7 @@ class Trade {
dataSource: [
{ title: '成团', value: json.result1?.SumOrder, VSrate: json.result1?.SumOrderrate, KPIrate: json.result1?.SumOrderKPIrate, hasKPI: !isEmpty(json.result1?.SumOrderKPIrate) },
{ title: '毛利', value: json.result1?.SumML, VSrate: json.result1?.SumMLrate, KPIrate: json.result1?.SumMLKPIrate, hasKPI: !isEmpty(json.result1?.SumMLKPIrate) },
{ title: '完成率', value: `${json.result1?.SumMLKPIrate}%`, hasKPI: false },
{ title: '完成率', value: `${json.result1?.SumMLKPIrate || ''}%`, hasKPI: false },
{
title: '人数',
value: json.result1?.SumPersonNum,
@ -41,10 +36,10 @@ class Trade {
});
}
fetchTradeDataByMonth() {
fetchTradeDataByMonth(queryData) {
this.sideData.loading = true;
req.fetchJSON('/service-web/QueryData/GetTradeProcess').then((json) => {
// req.fetchJSON('/service-web/QueryData/GetTradeByMonth').then((json) => {
Object.assign(queryData, { groupType: 'bu', groupDateType: 'month' });
req.fetchJSON('/service-Analyse2/GetTradeProcess/test', queryData).then((json) => {
if (json.errcode === 0) {
runInAction(() => {
const sortResult = json.result1.sort(sortBy('groupDateVal'));
@ -52,8 +47,8 @@ class Trade {
(r[v.groups] || (r[v.groups] = [])).push(v);
return r;
}, {});
console.log(groupsData, 'groupsData');
const kpi = { label: '', value: 1200000 }; // 标注KPI
console.log(groupsData, 'groupsData', queryData);
const kpi = { label: '', value: 1200000 }; // todo: 标注KPI
this.sideData.loading = false;
this.sideData.dataSource = groupsData;
this.sideData.monthData = sortResult;
@ -63,9 +58,10 @@ class Trade {
});
}
fetchTradeDataByType(orderType) {
fetchTradeDataByType(orderType, queryData) {
this.topData[orderType] = { loading: true, dataSource: [] };
req.fetchJSON('/service-web/QueryData/GetTradeOrderByType').then((json) => {
Object.assign(queryData, { groupType: 'orderType', groupDateType: 'year' });
req.fetchJSON('/service-web/QueryData/GetTradeOrderByType', queryData).then((json) => {
if (json.errcode === 0) {
runInAction(() => {
this.topData[orderType].loading = false;

@ -34,7 +34,7 @@ export default observer(() => {
}, []);
const pageRefresh = (queryData) => {
TradeStore.fetchSummaryData();
TradeStore.fetchSummaryData(queryData);
TradeStore.fetchTradeDataByMonth(queryData);
for (const iterator of topSeries) {
TradeStore.fetchTradeDataByType(iterator.key, queryData);
@ -110,14 +110,15 @@ export default observer(() => {
return (
<>
<Row gutter={16}>
<Col className="gutter-row" span={24} style={{ margin: '-16px -8px', padding: 0 }}>
<Row gutter={16} style={{margin: '-16px -8px'}}>
{/* style={{ margin: '-16px -8px', padding: 0 }} */}
<Col className="gutter-row" span={24} >
<SearchForm
defaultValue={{
'initialValue': {
...searchPayloadHome,
},
hides: ['businessUnits', 'dates'],
hides: ['businessUnits', 'dates', 'months'],
// shows: ['DateType', 'DepartmentList', 'WebCode', 'IncludeTickets', 'applyDate'],
'fieldProps': {
DepartmentList: { show_all: true, },

Loading…
Cancel
Save