KPI 设置国内目的地

feature/2.0-sales-trade
Lei OT 2 years ago
parent dc675a2c0a
commit 8cbcdc911c

@ -8,7 +8,7 @@ const searchFormItemSet = {
'bu': { shows: ['DateType', 'years', 'HTBusinessUnits'], sort }, 'bu': { shows: ['DateType', 'years', 'HTBusinessUnits'], sort },
'dept': { shows: ['DateType', 'years', 'DepartmentList'], sort, fieldProps: { DepartmentList: { allowClear: true,isLeaf: true, show_all: false } }, }, 'dept': { shows: ['DateType', 'years', 'DepartmentList'], sort, fieldProps: { DepartmentList: { allowClear: true,isLeaf: true, show_all: false } }, },
'operator': { shows: ['DateType', 'years', 'DepartmentList', 'operator'], fieldProps: { DepartmentList: { allowClear: true, isLeaf: true }, operator: { param: { } } }, sort }, // is_assign: 1 'operator': { shows: ['DateType', 'years', 'DepartmentList', 'operator'], fieldProps: { DepartmentList: { allowClear: true, isLeaf: true }, operator: { param: { } } }, sort }, // is_assign: 1
'destination': { shows: ['DateType', 'years', 'destination'], sort }, 'destination': { shows: ['DateType', 'years', 'city'], sort }, // 'country', , 'globalCity'
'country': { shows: ['DateType', 'years', 'country'], sort }, 'country': { shows: ['DateType', 'years', 'country'], sort },
}; };

@ -142,6 +142,11 @@ export default observer((props) => {
transform: (value) => value?.key || '', transform: (value) => value?.key || '',
default: '', default: '',
}, },
'city': {
key: 'city',
transform: (value) => value?.key || '',
default: '',
},
}; };
let dest = {}; let dest = {};
const { applyDate, applyDate2, year, yearDiff, ...omittedValue } = values; const { applyDate, applyDate2, year, yearDiff, ...omittedValue } = values;
@ -327,6 +332,20 @@ function getFields(props) {
<SearchInput autoGet url="/service-Analyse2/GetCountryInfo" map={{ 'c_id': 'key', 'cn_name': 'label' }} resultkey={'result'} placeholder="输入搜索国籍: 中/英名字" /> <SearchInput autoGet url="/service-Analyse2/GetCountryInfo" map={{ 'c_id': 'key', 'cn_name': 'label' }} resultkey={'result'} placeholder="输入搜索国籍: 中/英名字" />
</Form.Item> </Form.Item>
), ),
item(
'city',
99,
<Form.Item name={'city'}>
<SearchInput autoGet url="/service-Analyse2/GetDestinationInfo" map={{ 'c_id': 'key', 'cn_name': 'label' }} resultkey={'result'} placeholder="输入搜索城市: 中/英名字" />
</Form.Item>
),
item(
'globalCity',
99,
<Form.Item name={'globalCity'}>
<SearchInput autoGet url="/service-Analyse2/GetGlobalDestinationInfo" map={{ 'c_id': 'key', 'cn_name': 'label' }} resultkey={'result'} placeholder="输入搜索城市: 中/英名字" />
</Form.Item>
),
]; ];
baseChildren = baseChildren baseChildren = baseChildren
.map((x) => { .map((x) => {

@ -136,8 +136,9 @@ export const KPIObjects = [
{ key: 'dept', value: 'dept', label: '小组', data: leafGroup }, { key: 'dept', value: 'dept', label: '小组', data: leafGroup },
{ key: 'du', value: 'du', label: '销售小组', data: deptUnits }, { key: 'du', value: 'du', label: '销售小组', data: deptUnits },
{ key: 'operator', value: 'operator', label: '顾问' }, { key: 'operator', value: 'operator', label: '顾问' },
{ key: 'destination', value: 'destination', label: '目的地' }, { key: 'destination', value: 'destination', label: '目的地 城市' },
{ key: 'country', value: 'country', label: '国籍' }, // { key: 'destination', value: 'destination', label: '目的地 国籍' },
{ key: 'country', value: 'country', label: '客源 国籍' },
{ {
key: 'guestgrouptype', key: 'guestgrouptype',
value: 'guestgrouptype', value: 'guestgrouptype',

@ -2,7 +2,7 @@ import { useContext, useEffect, useState } from 'react';
import { stores_Context } from './../config'; import { stores_Context } from './../config';
import { observer } from 'mobx-react'; import { observer } from 'mobx-react';
import { Row, Col, Tabs, Spin } from 'antd'; import { Row, Col, Tabs, Spin } from 'antd';
import { flush, isEmpty, objectMapper } from './../utils/commons'; import { flush, isEmpty, objectMapper, pick } from './../utils/commons';
import { KPIObjects } from './../libs/ht'; import { KPIObjects } from './../libs/ht';
import ObjectPanel from '../components/kpi/ObjectPanel'; import ObjectPanel from '../components/kpi/ObjectPanel';
import OverviewPanel from './../components/kpi/OverviewPanel'; import OverviewPanel from './../components/kpi/OverviewPanel';
@ -19,12 +19,12 @@ const objectComponents = {
'country': ObjectPanel, 'country': ObjectPanel,
}; };
const objectFilterKey = { const objectFilterKey = {
'bu': 'HTBusinessUnits', 'bu': ['HTBusinessUnits'],
'dept': 'DepartmentList', 'dept': ['DepartmentList'],
// 'du': 'du', // 'du': 'du',
// 'operator': 'operator', // 'operator': 'operator',
// 'destination': 'destination', 'destination': ['city', ],
'country': 'country', 'country': ['country'],
}; };
export default observer((props) => { export default observer((props) => {
const { KPIStore, DictDataStore, date_picker_store: searchFormStore } = useContext(stores_Context); const { KPIStore, DictDataStore, date_picker_store: searchFormStore } = useContext(stores_Context);
@ -80,11 +80,9 @@ export default observer((props) => {
// KPIStore.getList(getkpiParam).then((data) => { // KPIStore.getList(getkpiParam).then((data) => {
// // setDataSource(data); // // setDataSource(data);
if (objectFilterKey?.[curObject]) { if (objectFilterKey?.[curObject]) {
const selectItem = searchFormStore.formValues[objectFilterKey[curObject]]; const selectItems = Object.values(pick(searchFormStore.formValues, objectFilterKey[curObject]));
if (selectItem) { const _selectItems = flush(selectItems).map((ele) => ({ ...ele, value: ele.key }));
selectItem.value = selectItem.key; setRetObjects(_selectItems);
}
setRetObjects(flush([selectItem]));
} }
// }); // });
}; };

Loading…
Cancel
Save