fix: 年度对比: 折线中断

feature/hotel-cruise
Lei OT 2 years ago
parent c17f8e8f85
commit 95ec1fa822

@ -13,7 +13,7 @@ export default observer((props) => {
r.push({...v, [config.yField]: v[kpiKey], [config.seriesField]: `${v[config.seriesField]} ${dataFieldAlias[kpiKey].label}`, extraLine: true,});
}
return r;
}, []).sort(sortBy(config.xField)) : dataSource;
}, []).sort(sortBy(config.xField)) : (dataSource.slice()).sort(sortBy(config.xField));
const dataColors = [
"#5D7092","#F6BD16","#6F5EF9","#6DC8EC","#945FB9","#FF9845","#1E9493",
"#FF99C3","#FF6B3B","#626681","#FFC100","#9FB40F","#76523B","#DAD5B5",

@ -392,7 +392,8 @@ export const parseMergeItem = ({traditional, biz}) => {
const mergeRes = [].concat(traditional[resKey], biz[resKey]);
const groupsData = mergeRes.reduce((r, v) => {
if (v.groupsKey ) {
(r[v.groupsKey] || (r[v.groupsKey] = [])).push(v);
const groupsKeyLower = v.groupsKey.toLowerCase();
(r[groupsKeyLower] || (r[groupsKeyLower] = [])).push(v);
}
return r;
}, {});
@ -415,8 +416,8 @@ export const parseMergeItem = ({traditional, biz}) => {
// ConfirmRatesKPIrates: 0, // todo:
}));
// 按对象汇总
const TMapped = traditional[resKey].reduce((r, v) => ({...r, [v.groupsKey]: v}), {});
const BMapped = biz[resKey].reduce((r, v) => ({...r, [v.groupsKey]: v}), {});
const TMapped = traditional[resKey].reduce((r, v) => ({...r, [(v.groupsKey.toLowerCase())]: v}), {});
const BMapped = biz[resKey].reduce((r, v) => ({...r, [(v.groupsKey.toLowerCase())]: v}), {});
const summary = Object.keys(groupsData).map(groupsKey => {
const _groupsKey = groupsKey; // groupsData[groupsKey]?.[0]?.groupsKey || '';
return ['ConfirmOrder', 'SumOrder', 'SumML', 'transactions', 'SumPersonNum'].reduce(
@ -435,9 +436,9 @@ export const parseMergeItem = ({traditional, biz}) => {
}));
// 按每一行
// const ByDate = sortKeys(groupBy(mergeRes, ele => ele.groupDateVal));
const allRowsKeysData = groupBy(mergeRes, ele => `${ele.groupsKey}@${ele.groupDateVal}`);
const allRowsKeysData = groupBy(mergeRes, ele => `${ele.groupsKey.toLowerCase()}@${ele.groupDateVal}`);
const mergeRows = Object.keys(allRowsKeysData).map(rkey => {
const _groupsKey = allRowsKeysData[rkey]?.[0]?.groupsKey || '';
const _groupsKey = (allRowsKeysData[rkey]?.[0]?.groupsKey || '').toLowerCase();
const sumFields = ['ConfirmOrder', 'SumOrder', 'SumML', 'transactions', 'SumPersonNum'].reduce(
(r, skey) => ({ ...r,
[skey]: allRowsKeysData[rkey].reduce((a, c) => a + c[skey], 0),

Loading…
Cancel
Save