diff --git a/src/components/AppTabBar.vue b/src/components/AppTabBar.vue new file mode 100644 index 0000000..28d7dba --- /dev/null +++ b/src/components/AppTabBar.vue @@ -0,0 +1,91 @@ + + + + + diff --git a/src/hooks/use-greeting.ts b/src/hooks/use-greeting.ts new file mode 100644 index 0000000..c916bf9 --- /dev/null +++ b/src/hooks/use-greeting.ts @@ -0,0 +1,9 @@ +export function useGreeting() { + const hour = new Date().getHours() + + if (hour < 12) + return '上午好' + if (hour < 18) + return '中午好' + return '晚上好' +} diff --git a/src/pages.json b/src/pages.json index 7a7be15..83c9f70 100644 --- a/src/pages.json +++ b/src/pages.json @@ -42,6 +42,36 @@ "style": { "navigationStyle": "custom" } + }, + { + "path": "pages/home-index/index", + "style": { + "navigationStyle": "custom" + } + }, + { + "path": "pages/case-library/index", + "style": { + "navigationStyle": "custom" + } + }, + { + "path": "pages/message-center/index", + "style": { + "navigationStyle": "custom" + } + }, + { + "path": "pages/project-center/index", + "style": { + "navigationStyle": "custom" + } + }, + { + "path": "pages/personal-center/index", + "style": { + "navigationStyle": "custom" + } } ], "globalStyle": { diff --git a/src/pages/Login/user-login/index.vue b/src/pages/Login/user-login/index.vue index e9a92ef..77161fc 100644 --- a/src/pages/Login/user-login/index.vue +++ b/src/pages/Login/user-login/index.vue @@ -1,6 +1,5 @@ + + + + diff --git a/src/pages/home-index/components/ProjectCard.vue b/src/pages/home-index/components/ProjectCard.vue new file mode 100644 index 0000000..faa8545 --- /dev/null +++ b/src/pages/home-index/components/ProjectCard.vue @@ -0,0 +1,162 @@ + + + + + diff --git a/src/pages/home-index/components/ServiceCard.vue b/src/pages/home-index/components/ServiceCard.vue new file mode 100644 index 0000000..61ddfc5 --- /dev/null +++ b/src/pages/home-index/components/ServiceCard.vue @@ -0,0 +1,109 @@ + + + + + diff --git a/src/pages/home-index/index.vue b/src/pages/home-index/index.vue new file mode 100644 index 0000000..1043184 --- /dev/null +++ b/src/pages/home-index/index.vue @@ -0,0 +1,462 @@ + + + + + diff --git a/src/pages/message-center/index.vue b/src/pages/message-center/index.vue new file mode 100644 index 0000000..ec58487 --- /dev/null +++ b/src/pages/message-center/index.vue @@ -0,0 +1,41 @@ + + + + + diff --git a/src/pages/personal-center/index.vue b/src/pages/personal-center/index.vue new file mode 100644 index 0000000..484e593 --- /dev/null +++ b/src/pages/personal-center/index.vue @@ -0,0 +1,41 @@ + + + + + diff --git a/src/pages/project-center/index.vue b/src/pages/project-center/index.vue new file mode 100644 index 0000000..711ba76 --- /dev/null +++ b/src/pages/project-center/index.vue @@ -0,0 +1,41 @@ + + + + + diff --git a/src/static/icons/1.png b/src/static/icons/1.png new file mode 100644 index 0000000..8873aed Binary files /dev/null and b/src/static/icons/1.png differ diff --git a/src/static/icons/hardware.png b/src/static/icons/hardware.png new file mode 100644 index 0000000..f9e721d Binary files /dev/null and b/src/static/icons/hardware.png differ diff --git a/src/static/icons/hi.png b/src/static/icons/hi.png new file mode 100644 index 0000000..bf4ef6a Binary files /dev/null and b/src/static/icons/hi.png differ diff --git a/src/static/icons/icon-message.png b/src/static/icons/icon-message.png new file mode 100644 index 0000000..7ba3bb1 Binary files /dev/null and b/src/static/icons/icon-message.png differ diff --git a/src/static/icons/iot.png b/src/static/icons/iot.png new file mode 100644 index 0000000..6fb1fcc Binary files /dev/null and b/src/static/icons/iot.png differ diff --git a/src/static/icons/logos.png b/src/static/icons/logos.png new file mode 100644 index 0000000..980ed08 Binary files /dev/null and b/src/static/icons/logos.png differ diff --git a/src/static/icons/production.png b/src/static/icons/production.png new file mode 100644 index 0000000..886303b Binary files /dev/null and b/src/static/icons/production.png differ diff --git a/src/static/icons/quick-contract.png b/src/static/icons/quick-contract.png new file mode 100644 index 0000000..1bf0ae9 Binary files /dev/null and b/src/static/icons/quick-contract.png differ diff --git a/src/static/icons/quick-finance.png b/src/static/icons/quick-finance.png new file mode 100644 index 0000000..2d15fd5 Binary files /dev/null and b/src/static/icons/quick-finance.png differ diff --git a/src/static/icons/quick-project.png b/src/static/icons/quick-project.png new file mode 100644 index 0000000..0ca2fea Binary files /dev/null and b/src/static/icons/quick-project.png differ diff --git a/src/static/icons/quick-report.png b/src/static/icons/quick-report.png new file mode 100644 index 0000000..1720ab2 Binary files /dev/null and b/src/static/icons/quick-report.png differ diff --git a/src/static/icons/quick-service.png b/src/static/icons/quick-service.png new file mode 100644 index 0000000..fbb0145 Binary files /dev/null and b/src/static/icons/quick-service.png differ diff --git a/src/static/icons/software.png b/src/static/icons/software.png new file mode 100644 index 0000000..0a1ffc5 Binary files /dev/null and b/src/static/icons/software.png differ diff --git a/src/static/icons/tab-case.svg b/src/static/icons/tab-case.svg new file mode 100644 index 0000000..4117081 --- /dev/null +++ b/src/static/icons/tab-case.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/static/icons/tab-home.svg b/src/static/icons/tab-home.svg new file mode 100644 index 0000000..81a2e0a --- /dev/null +++ b/src/static/icons/tab-home.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/static/icons/tab-message.svg b/src/static/icons/tab-message.svg new file mode 100644 index 0000000..c3b179c --- /dev/null +++ b/src/static/icons/tab-message.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/static/icons/tab-personal.svg b/src/static/icons/tab-personal.svg new file mode 100644 index 0000000..cd0d641 --- /dev/null +++ b/src/static/icons/tab-personal.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/static/icons/tab-project.svg b/src/static/icons/tab-project.svg new file mode 100644 index 0000000..3600b24 --- /dev/null +++ b/src/static/icons/tab-project.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/styles/variables.scss b/src/styles/variables.scss index 3feaf13..054df0a 100644 --- a/src/styles/variables.scss +++ b/src/styles/variables.scss @@ -13,3 +13,10 @@ $color-bg-input: #f2f3f5; $color-splash-gradient-start: #f0f7ff; $color-splash-gradient-end: #deedff; $color-splash-circle: rgba(180, 210, 255, 0.35); + +$color-home-header: #2563EB; +$color-bg-section: #f5f6f8; +$color-tag-orange: #ff8a4c; +$color-tag-orange-bg: #fff3eb; +$color-stat-orange: #ff9a3d; +$color-stat-orange-bg: #fff7ed; diff --git a/src/types/home.ts b/src/types/home.ts new file mode 100644 index 0000000..073a6a8 --- /dev/null +++ b/src/types/home.ts @@ -0,0 +1,25 @@ +export interface ServiceItem { + id: string + title: string + desc: string + theme: 'blue' | 'green' | 'pink' | 'orange' + illus?: string +} + +export interface QuickEntryItem { + id: string + label: string + icon: string + bgColor: string +} + +export interface ProjectItem { + id: string + title: string + category: string + projectNo: string + progress: number + status: string + updateTime: string + tagTheme?: 'orange' | 'peach' +}