| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222 | 
							- /*
 
-  * Copyright [2022] [MaxKey of copyright http://www.maxkey.top]
 
-  * 
 
-  * Licensed under the Apache License, Version 2.0 (the "License");
 
-  * you may not use this file except in compliance with the License.
 
-  * You may obtain a copy of the License at
 
-  * 
 
-  *     http://www.apache.org/licenses/LICENSE-2.0
 
-  * 
 
-  * Unless required by applicable law or agreed to in writing, software
 
-  * distributed under the License is distributed on an "AS IS" BASIS,
 
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
-  * See the License for the specific language governing permissions and
 
-  * limitations under the License.
 
-  */
 
-  
 
- import { format } from 'date-fns';
 
- import * as Mock from 'mockjs';
 
- // region: mock data
 
- const visitData: any[] = [];
 
- const beginDay = new Date().getTime();
 
- const fakeY = [7, 5, 4, 2, 4, 7, 5, 6, 5, 9, 6, 3, 1, 5, 3, 6, 5];
 
- for (let i = 0; i < fakeY.length; i += 1) {
 
-   visitData.push({
 
-     x: format(new Date(beginDay + 1000 * 60 * 60 * 24 * i), 'yyyy-MM-dd'),
 
-     y: fakeY[i]
 
-   });
 
- }
 
- const visitData2: any[] = [];
 
- const fakeY2 = [1, 6, 4, 8, 3, 7, 2];
 
- for (let i = 0; i < fakeY2.length; i += 1) {
 
-   visitData2.push({
 
-     x: format(new Date(beginDay + 1000 * 60 * 60 * 24 * i), 'yyyy-MM-dd'),
 
-     y: fakeY2[i]
 
-   });
 
- }
 
- const salesData: any[] = [];
 
- for (let i = 0; i < 12; i += 1) {
 
-   salesData.push({
 
-     x: `${i + 1}月`,
 
-     y: Math.floor(Math.random() * 1000) + 200
 
-   });
 
- }
 
- const searchData: any[] = [];
 
- for (let i = 0; i < 50; i += 1) {
 
-   searchData.push({
 
-     index: i + 1,
 
-     keyword: `搜索关键词-${i}`,
 
-     count: Math.floor(Math.random() * 1000),
 
-     range: Math.floor(Math.random() * 100),
 
-     status: Math.floor((Math.random() * 10) % 2)
 
-   });
 
- }
 
- const salesTypeData = [
 
-   {
 
-     x: '家用电器',
 
-     y: 4544
 
-   },
 
-   {
 
-     x: '食用酒水',
 
-     y: 3321
 
-   },
 
-   {
 
-     x: '个护健康',
 
-     y: 3113
 
-   },
 
-   {
 
-     x: '服饰箱包',
 
-     y: 2341
 
-   },
 
-   {
 
-     x: '母婴产品',
 
-     y: 1231
 
-   },
 
-   {
 
-     x: '其他',
 
-     y: 1231
 
-   }
 
- ];
 
- const salesTypeDataOnline = [
 
-   {
 
-     x: '家用电器',
 
-     y: 244
 
-   },
 
-   {
 
-     x: '食用酒水',
 
-     y: 321
 
-   },
 
-   {
 
-     x: '个护健康',
 
-     y: 311
 
-   },
 
-   {
 
-     x: '服饰箱包',
 
-     y: 41
 
-   },
 
-   {
 
-     x: '母婴产品',
 
-     y: 121
 
-   },
 
-   {
 
-     x: '其他',
 
-     y: 111
 
-   }
 
- ];
 
- const salesTypeDataOffline = [
 
-   {
 
-     x: '家用电器',
 
-     y: 99
 
-   },
 
-   {
 
-     x: '个护健康',
 
-     y: 188
 
-   },
 
-   {
 
-     x: '服饰箱包',
 
-     y: 344
 
-   },
 
-   {
 
-     x: '母婴产品',
 
-     y: 255
 
-   },
 
-   {
 
-     x: '其他',
 
-     y: 65
 
-   }
 
- ];
 
- const offlineData: any[] = [];
 
- for (let i = 0; i < 10; i += 1) {
 
-   offlineData.push({
 
-     name: `门店${i}`,
 
-     cvr: Math.ceil(Math.random() * 9) / 10
 
-   });
 
- }
 
- const offlineChartData: any[] = [];
 
- for (let i = 0; i < 20; i += 1) {
 
-   offlineChartData.push({
 
-     time: new Date().getTime() + 1000 * 60 * 30 * i,
 
-     y1: Math.floor(Math.random() * 100) + 10,
 
-     y2: Math.floor(Math.random() * 100) + 10
 
-   });
 
- }
 
- const radarOriginData = [
 
-   {
 
-     name: '个人',
 
-     ref: 10,
 
-     koubei: 8,
 
-     output: 4,
 
-     contribute: 5,
 
-     hot: 7
 
-   },
 
-   {
 
-     name: '团队',
 
-     ref: 3,
 
-     koubei: 9,
 
-     output: 6,
 
-     contribute: 3,
 
-     hot: 1
 
-   },
 
-   {
 
-     name: '部门',
 
-     ref: 4,
 
-     koubei: 1,
 
-     output: 6,
 
-     contribute: 5,
 
-     hot: 7
 
-   }
 
- ];
 
- //
 
- const radarData: any[] = [];
 
- const radarTitleMap: any = {
 
-   ref: '引用',
 
-   koubei: '口碑',
 
-   output: '产量',
 
-   contribute: '贡献',
 
-   hot: '热度'
 
- };
 
- radarOriginData.forEach((item: any) => {
 
-   Object.keys(item).forEach(key => {
 
-     if (key !== 'name') {
 
-       radarData.push({
 
-         name: item.name,
 
-         label: radarTitleMap[key],
 
-         value: item[key]
 
-       });
 
-     }
 
-   });
 
- });
 
- // endregion
 
- export const CHARTS = {
 
-   '/chart': JSON.parse(
 
-     JSON.stringify({
 
-       visitData,
 
-       visitData2,
 
-       salesData,
 
-       searchData,
 
-       offlineData,
 
-       offlineChartData,
 
-       salesTypeData,
 
-       salesTypeDataOnline,
 
-       salesTypeDataOffline,
 
-       radarData
 
-     })
 
-   ),
 
-   '/chart/visit': JSON.parse(JSON.stringify(visitData)),
 
-   '/chart/tags': Mock.mock({
 
-     'list|100': [{ name: '@city', 'value|1-100': 150 }]
 
-   })
 
- };
 
 
  |