From 93b9d0c00b87079f97e56a63a2e38a7ea5bac4d3 Mon Sep 17 00:00:00 2001 From: 沈斌 <bluelazysb@hotmail.com> Date: Fri, 15 Dec 2017 15:40:51 +0800 Subject: [PATCH] updates --- _mock/profile.service.ts | 164 +++++++++++++ /dev/null | 11 _mock/rule.service.ts | 66 +++++ _mock/api.service.ts | 260 +++++++++++++++++++++ _mock/chart.service.ts | 203 ++++++++++++++++ 5 files changed, 693 insertions(+), 11 deletions(-) diff --git a/_mock/api.service.ts b/_mock/api.service.ts new file mode 100644 index 0000000..10933a9 --- /dev/null +++ b/_mock/api.service.ts @@ -0,0 +1,260 @@ +const titles = [ + 'Alipay', + 'Angular', + 'Ant Design', + 'Ant Design Pro', + 'Bootstrap', + 'React', + 'Vue', + 'Webpack' +]; + +const avatars = [ + 'https://gw.alipayobjects.com/zos/rmsportal/WdGqmHpayyMjiEhcKoVE.png', // Alipay + 'https://gw.alipayobjects.com/zos/rmsportal/zOsKZmFRdUtvpqCImOVY.png', // Angular + 'https://gw.alipayobjects.com/zos/rmsportal/dURIMkkrRFpPgTuzkwnB.png', // Ant Design + 'https://gw.alipayobjects.com/zos/rmsportal/sfjbOqnsXXJgNCjCzDBL.png', // Ant Design Pro + 'https://gw.alipayobjects.com/zos/rmsportal/siCrBXXhmvTQGWPNLBow.png', // Bootstrap + 'https://gw.alipayobjects.com/zos/rmsportal/kZzEzemZyKLKFsojXItE.png', // React + 'https://gw.alipayobjects.com/zos/rmsportal/ComBAopevLwENQdKWiIn.png', // Vue + 'https://gw.alipayobjects.com/zos/rmsportal/nxkuOJlFJuAUhzlMTCEe.png' // Webpack +]; +const covers = [ + 'https://gw.alipayobjects.com/zos/rmsportal/HrxcVbrKnCJOZvtzSqjN.png', + 'https://gw.alipayobjects.com/zos/rmsportal/alaPpKWajEbIYEUvvVNf.png', + 'https://gw.alipayobjects.com/zos/rmsportal/RLwlKSYGSXGHuWSojyvp.png', + 'https://gw.alipayobjects.com/zos/rmsportal/gLaIAoVWTtLbBWZNYEMg.png' +]; +const desc = [ + '������������������������������ ���������������������������������������', + '���������������������������������������������������������������������������', + '������������������������������������������������������', + '������������������������������������������������������������������', + '���������������������������������������������������������������������' +]; + +const user = [ + '������', + 'cipchk', + '���������', + '���������', + '���������', + '���������', + '���������', + '���������', + '������', + '������', + '���������', + '������' +]; + +export function getFakeList(count: number = 20): any[] { + const list = []; + for (let i = 0; i < count; i += 1) { + list.push({ + id: `fake-list-${i}`, + owner: user[i % 10], + title: titles[i % 8], + avatar: avatars[i % 8], + cover: parseInt((i / 4).toString(), 10) % 2 === 0 ? covers[i % 4] : covers[3 - (i % 4)], + status: ['active', 'exception', 'normal'][i % 3], + percent: Math.ceil(Math.random() * 50) + 50, + logo: avatars[i % 8], + href: 'https://ant.design', + updatedAt: new Date(new Date().getTime() - (1000 * 60 * 60 * 2 * i)), + createdAt: new Date(new Date().getTime() - (1000 * 60 * 60 * 2 * i)), + subDescription: desc[i % 5], + description: '���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������', + activeUser: Math.ceil(Math.random() * 100000) + 100000, + newUser: Math.ceil(Math.random() * 1000) + 1000, + star: Math.ceil(Math.random() * 100) + 100, + like: Math.ceil(Math.random() * 100) + 100, + message: Math.ceil(Math.random() * 10) + 10, + content: '��������������������������������������� ant.design��������������������������������������������������������������������������������������������������������������������������������������� ant.design���������������������������������������������������������������������������������������������������������������', + members: [ + { + avatar: 'https://gw.alipayobjects.com/zos/rmsportal/ZiESqWwCXBRQoaPONSJe.png', + name: '���������', + }, + { + avatar: 'https://gw.alipayobjects.com/zos/rmsportal/tBOxZPlITHqwlGjsJWaF.png', + name: '���������', + }, + { + avatar: 'https://gw.alipayobjects.com/zos/rmsportal/sBxjgqiuHMGRkIjqlQCd.png', + name: '���������', + }, + ] + }); + } + + return list; +} + +export function getNotice(): any[] { + return [ + { + id: 'xxx1', + title: titles[0], + logo: avatars[0], + description: '������������������������������ ���������������������������������������', + updatedAt: new Date(), + member: '���������������', + href: '', + memberLink: '', + }, + { + id: 'xxx2', + title: titles[1], + logo: avatars[1], + description: '���������������������������������������������������������������������������', + updatedAt: new Date('2017-07-24'), + member: '���������������������', + href: '', + memberLink: '', + }, + { + id: 'xxx3', + title: titles[2], + logo: avatars[2], + description: '������������������������������������������������������������������', + updatedAt: new Date(), + member: '���������������', + href: '', + memberLink: '', + }, + { + id: 'xxx4', + title: titles[3], + logo: avatars[3], + description: '���������������������������������������������������������������������', + updatedAt: new Date('2017-07-23'), + member: '���������������', + href: '', + memberLink: '', + }, + { + id: 'xxx5', + title: titles[4], + logo: avatars[4], + description: '������������', + updatedAt: new Date('2017-07-23'), + member: '���������������������', + href: '', + memberLink: '', + }, + { + id: 'xxx6', + title: titles[5], + logo: avatars[5], + description: '������������������������������������������������������', + updatedAt: new Date('2017-07-23'), + member: '���������������������', + href: '', + memberLink: '', + }, + ]; +} + +export function getActivities(): any[] { + return [ + { + id: 'trend-1', + updatedAt: new Date(), + user: { + name: '���������', + avatar: avatars[0], + }, + group: { + name: '���������������������', + link: 'http://github.com/', + }, + project: { + name: '������������', + link: 'http://github.com/', + }, + template: '��� @{group} ������������ @{project}', + }, + { + id: 'trend-2', + updatedAt: new Date(), + user: { + name: '���������', + avatar: avatars[1], + }, + group: { + name: '���������������������', + link: 'http://github.com/', + }, + project: { + name: '������������', + link: 'http://github.com/', + }, + template: '��� @{group} ������������ @{project}', + }, + { + id: 'trend-3', + updatedAt: new Date(), + user: { + name: '���������', + avatar: avatars[2], + }, + group: { + name: '���������������', + link: 'http://github.com/', + }, + project: { + name: '������������', + link: 'http://github.com/', + }, + template: '��� @{group} ������������ @{project}', + }, + { + id: 'trend-4', + updatedAt: new Date(), + user: { + name: '���������', + avatar: avatars[3], + }, + project: { + name: '5 ���������������', + link: 'http://github.com/', + }, + template: '��� @{project} ������������������������', + }, + { + id: 'trend-5', + updatedAt: new Date(), + user: { + name: '���������', + avatar: avatars[4], + }, + project: { + name: '������������', + link: 'http://github.com/', + }, + comment: { + name: '������', + link: 'http://github.com/', + }, + template: '��� @{project} ��������� @{comment}', + }, + { + id: 'trend-6', + updatedAt: new Date(), + user: { + name: '������', + avatar: avatars[5], + }, + group: { + name: '���������������', + link: 'http://github.com/', + }, + project: { + name: '������������', + link: 'http://github.com/', + }, + template: '��� @{group} ������������ @{project}', + }, + ]; +} diff --git a/_mock/chart.service.ts b/_mock/chart.service.ts new file mode 100644 index 0000000..6d2c804 --- /dev/null +++ b/_mock/chart.service.ts @@ -0,0 +1,203 @@ +// tslint:disable + +import * as moment from "moment"; + +// mock data +const visitData = []; +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: moment(new Date(beginDay + 1000 * 60 * 60 * 24 * i)).format( + "YYYY-MM-DD" + ), + y: fakeY[i] + }); +} + +const visitData2 = []; +const fakeY2 = [1, 6, 4, 8, 3, 7, 2]; +for (let i = 0; i < fakeY2.length; i += 1) { + visitData2.push({ + x: moment(new Date(beginDay + 1000 * 60 * 60 * 24 * i)).format( + "YYYY-MM-DD" + ), + y: fakeY2[i] + }); +} + +const salesData = []; +for (let i = 0; i < 12; i += 1) { + salesData.push({ + x: `${i + 1}���`, + y: Math.floor(Math.random() * 1000) + 200 + }); +} +const searchData = []; +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 = []; +for (let i = 0; i < 10; i += 1) { + offlineData.push({ + name: `������${i}`, + cvr: Math.ceil(Math.random() * 9) / 10 + }); +} +const offlineChartData = []; +for (let i = 0; i < 20; i += 1) { + offlineChartData.push({ + x: 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 = []; +const radarTitleMap = { + ref: '������', + koubei: '������', + output: '������', + contribute: '������', + hot: '������' +}; +radarOriginData.forEach(item => { + Object.keys(item).forEach(key => { + if (key !== 'name') { + radarData.push({ + name: item.name, + label: radarTitleMap[key], + value: item[key] + }); + } + }); +}); + +export const getFakeChartData = { + visitData, + visitData2, + salesData, + searchData, + offlineData, + offlineChartData, + salesTypeData, + salesTypeDataOnline, + salesTypeDataOffline, + radarData +}; + +export default { + getFakeChartData +}; diff --git a/_mock/profile.service.ts b/_mock/profile.service.ts new file mode 100644 index 0000000..252475b --- /dev/null +++ b/_mock/profile.service.ts @@ -0,0 +1,164 @@ +const basicGoods = [ + { + id: '1234561', + name: '��������� 550ml', + barcode: '12421432143214321', + price: '2.00', + num: '1', + amount: '2.00', + }, + { + id: '1234562', + name: '������ 300ml', + barcode: '12421432143214322', + price: '3.00', + num: '2', + amount: '6.00', + }, + { + id: '1234563', + name: '���������������', + barcode: '12421432143214323', + price: '7.00', + num: '4', + amount: '28.00', + }, + { + id: '1234564', + name: '���������������������', + barcode: '12421432143214324', + price: '8.50', + num: '3', + amount: '25.50', + }, +]; + +const basicProgress = [ + { + key: '1', + time: '2017-10-01 14:10', + rate: '������������', + status: 'processing', + operator: '��������� ID1234', + cost: '5mins', + }, + { + key: '2', + time: '2017-10-01 14:05', + rate: '���������������', + status: 'success', + operator: '��������� ID1234', + cost: '1h', + }, + { + key: '3', + time: '2017-10-01 13:05', + rate: '���������������', + status: 'success', + operator: '��������� ID1234', + cost: '5mins', + }, + { + key: '4', + time: '2017-10-01 13:00', + rate: '������������������', + status: 'success', + operator: '������', + cost: '1h', + }, + { + key: '5', + time: '2017-10-01 12:00', + rate: '������������������', + status: 'success', + operator: '������', + cost: '5mins', + }, +]; + +const advancedOperation1 = [ + { + key: 'op1', + type: '������������������', + name: '���������', + status: 'agree', + updatedAt: '2017-10-03 19:23:12', + memo: '-', + }, + { + key: 'op2', + type: '������������', + name: '���������', + status: 'reject', + updatedAt: '2017-10-03 19:23:12', + memo: '���������������', + }, + { + key: 'op3', + type: '������������', + name: '���������', + status: 'agree', + updatedAt: '2017-10-03 19:23:12', + memo: '-', + }, + { + key: 'op4', + type: '������������', + name: '���������', + status: 'agree', + updatedAt: '2017-10-03 19:23:12', + memo: '������', + }, + { + key: 'op5', + type: '������������', + name: '���������', + status: 'agree', + updatedAt: '2017-10-03 19:23:12', + memo: '-', + }, +]; + +const advancedOperation2 = [ + { + key: 'op1', + type: '������������������', + name: '���������', + status: 'agree', + updatedAt: '2017-10-03 19:23:12', + memo: '-', + }, +]; + +const advancedOperation3 = [ + { + key: 'op1', + type: '������������', + name: '���������', + status: 'agree', + updatedAt: '2017-10-03 19:23:12', + memo: '-', + }, +]; + +export function getProfileBasicData() { + return { + basicGoods: basicGoods, + basicProgress: basicProgress + }; +} + +export function getProfileAdvancedData() { + return { + advancedOperation1: advancedOperation1, + advancedOperation2: advancedOperation2, + advancedOperation3: advancedOperation3 + }; +} + +export function getProfileDefault() { + return { + getProfileBasicData: getProfileBasicData, + getProfileAdvancedData: getProfileAdvancedData + }; +} diff --git a/_mock/rule.service.ts b/_mock/rule.service.ts new file mode 100644 index 0000000..927c546 --- /dev/null +++ b/_mock/rule.service.ts @@ -0,0 +1,66 @@ +const list = []; + +for (let i = 0; i < 46; i += 1) { + list.push({ + key: i, + disabled: ((i % 6) === 0), + href: 'https://ant.design', + avatar: ['https://gw.alipayobjects.com/zos/rmsportal/eeHMaZBwmTvLdIwMfBpg.png', 'https://gw.alipayobjects.com/zos/rmsportal/udxAbMEhpwthVVcjLXik.png'][i % 2], + no: `TradeCode ${i}`, + title: `������������������ ${i}`, + owner: '���������', + description: '������������������', + callNo: Math.floor(Math.random() * 1000), + status: Math.floor(Math.random() * 10) % 4, + updatedAt: new Date(`2017-07-${Math.floor(i / 2) + 1}`), + createdAt: new Date(`2017-07-${Math.floor(i / 2) + 1}`), + progress: Math.ceil(Math.random() * 100), + }); +} + +export function getRule(params: any) { + let ret = [...list]; + if (params.sorter) { + const s = params.sorter.split('_'); + ret = ret.sort((prev, next) => { + if (s[1] === 'descend') { + return next[s[0]] - prev[s[0]]; + } + return prev[s[0]] - next[s[0]]; + }); + } + if (params.statusList && params.statusList.length > 0) { + ret = ret.filter(data => params.statusList.indexOf(data.status) > -1); + } + if (params.no) { + ret = ret.filter(data => data.no.indexOf(params.no) > -1); + } + return ret; +} + +export function removeRule(no: string): boolean { + const idx = list.findIndex(w => w.no === no); + if (idx !== -1) { + list.splice(idx, 1); + return true; + } + return false; +} + +export function saveRule(description: string) { + const i = Math.ceil(Math.random() * 10000); + list.unshift({ + key: i, + href: 'https://ant.design', + avatar: ['https://gw.alipayobjects.com/zos/rmsportal/eeHMaZBwmTvLdIwMfBpg.png', 'https://gw.alipayobjects.com/zos/rmsportal/udxAbMEhpwthVVcjLXik.png'][i % 2], + no: `TradeCode ${i}`, + title: `������������������ ${i}`, + owner: '���������', + description, + callNo: Math.floor(Math.random() * 1000), + status: Math.floor(Math.random() * 10) % 2, + updatedAt: new Date(), + createdAt: new Date(), + progress: Math.ceil(Math.random() * 100), + }); +} diff --git a/src/assets/environments/environment.chore.ts b/src/assets/environments/environment.chore.ts deleted file mode 100644 index bb3034e..0000000 --- a/src/assets/environments/environment.chore.ts +++ /dev/null @@ -1,6 +0,0 @@ -export const environment = { - SERVER_URL: `./`, - production: true, - hmr: false, - useHash: false -}; diff --git a/src/assets/environments/environment.hmr.ts b/src/assets/environments/environment.hmr.ts deleted file mode 100644 index 687d0b9..0000000 --- a/src/assets/environments/environment.hmr.ts +++ /dev/null @@ -1,6 +0,0 @@ -export const environment = { - SERVER_URL: `./`, - production: true, - hmr: true, - useHash: true -}; diff --git a/src/assets/environments/environment.prod.ts b/src/assets/environments/environment.prod.ts deleted file mode 100644 index 3f794b3..0000000 --- a/src/assets/environments/environment.prod.ts +++ /dev/null @@ -1,6 +0,0 @@ -export const environment = { - SERVER_URL: `./`, - production: true, - hmr: false, - useHash: true -}; diff --git a/src/assets/environments/environment.ts b/src/assets/environments/environment.ts deleted file mode 100644 index 45c90c7..0000000 --- a/src/assets/environments/environment.ts +++ /dev/null @@ -1,11 +0,0 @@ -// The file contents for the current environment will overwrite these during build. -// The build system defaults to the dev environment which uses `environment.ts`, but if you do -// `ng build --env=prod` then `environment.prod.ts` will be used instead. -// The list of which env maps to which file can be found in `.angular-cli.json`. - -export const environment = { - SERVER_URL: `./`, - production: false, - hmr: false, - useHash: true -}; -- Gitblit v1.8.0