yt 7 mēneši atpakaļ
vecāks
revīzija
832b8bda10

+ 60 - 8
smarthotel-app/src/app/tab1/tab1.page.html

@@ -1,17 +1,69 @@
-<ion-header [translucent]="true">
+<ion-header>
   <ion-toolbar>
     <ion-title>
-      Tab 1
+      <ion-icon name="home-outline" slot="start"></ion-icon>
     </ion-title>
+    <ion-searchbar placeholder="输入目的地、酒店名称或需求" slot="start"></ion-searchbar>
+    <ion-avatar slot="end">
+      <ion-img src="smarthotel-prod\img\logo.png" length="2px" wide="2px"></ion-img>
+    </ion-avatar>
   </ion-toolbar>
 </ion-header>
 
 <ion-content [fullscreen]="true">
-  <ion-header collapse="condense">
-    <ion-toolbar>
-      <ion-title size="large">Tab 1</ion-title>
-    </ion-toolbar>
-  </ion-header>
+  <div class="welcome-banner">
+    <h2>欢迎来到智能酒店,您的智慧住宿助手!</h2>
+    <ion-button expand="full" color="primary">开始体验</ion-button>
+  </div>
 
-  <app-explore-container name="Tab 1 page"></app-explore-container>
+  <div class="function-area">
+    <!-- 订房策略生成 -->
+    <ion-card>
+      <ion-card-header>
+        <ion-card-title>订房策略生成</ion-card-title>
+      </ion-card-header>
+      <ion-card-content>
+        <ion-input placeholder="请输入您的需求,如预算、房型、设施等"></ion-input>
+        <ion-button expand="full" (click)="generateStrategy()">生成订房策略</ion-button>
+        <div *ngIf="strategyResult">{{ strategyResult }}</div>
+      </ion-card-content>
+    </ion-card>
+
+    <!-- 房间图片生成 -->
+    <ion-card>
+      <ion-card-header>
+        <ion-card-title>房间图片生成</ion-card-title>
+      </ion-card-header>
+      <ion-card-content>
+        <ion-input placeholder="请输入房间描述,如双人间、海景房、现代风格等"></ion-input>
+        <ion-button expand="full" (click)="generateRoomImage()">生成房间图片</ion-button>
+        <ion-img *ngIf="roomImage" [src]="roomImage"></ion-img>
+      </ion-card-content>
+    </ion-card>
+  </div>
+
+  <div class="feedback-recommendation">
+    <!-- 用户反馈区域 -->
+    <ion-card>
+      <ion-card-header>
+        <ion-card-title>用户反馈</ion-card-title>
+      </ion-card-header>
+      <ion-card-content>
+        <ion-textarea placeholder="我们希望听到您的声音!请分享您的建议或意见。"></ion-textarea>
+        <ion-button expand="full" color="secondary">提交反馈</ion-button>
+      </ion-card-content>
+    </ion-card>
+
+    <!-- 推荐酒店展示 -->
+    <ion-card>
+      <ion-card-header>
+        <ion-card-title>为您推荐:</ion-card-title>
+      </ion-card-header>
+      <ion-card-content>
+        <h3>海滨酒店</h3>
+        <p>豪华海景房</p>
+        <p>评分:4.8/5</p>
+      </ion-card-content>
+    </ion-card>
+  </div>
 </ion-content>

+ 33 - 1
smarthotel-app/src/app/tab1/tab1.page.ts

@@ -1,14 +1,46 @@
 import { Component } from '@angular/core';
 import { IonHeader, IonToolbar, IonTitle, IonContent } from '@ionic/angular/standalone';
 import { ExploreContainerComponent } from '../explore-container/explore-container.component';
+import { IonAvatar, IonButton, IonCard, IonCardContent, IonCardHeader, IonCardTitle, IonImg, IonInput, IonSearchbar, IonTextarea } from '@ionic/angular/standalone';
+import { IonIcon } from '@ionic/angular/standalone';
 
 @Component({
   selector: 'app-tab1',
   templateUrl: 'tab1.page.html',
   styleUrls: ['tab1.page.scss'],
   standalone: true,
-  imports: [IonHeader, IonToolbar, IonTitle, IonContent, ExploreContainerComponent],
+  imports: [
+    IonHeader, IonToolbar, IonTitle, IonContent, ExploreContainerComponent,
+    IonButton,IonInput,IonImg,IonTextarea,IonAvatar,IonCard,IonCardTitle,
+    IonCardContent,IonCardHeader,IonSearchbar,IonIcon
+  ],
 })
 export class Tab1Page {
+  strategyInput: string = '';
+  strategyResult: string = '';
+  roomInput: string = '';
+  roomImage: string | null = null;
+  userFeedback: string = '';
+
   constructor() {}
+
+  // 生成订房策略的方法
+  generateStrategy() {
+    // 这里可以添加逻辑,例如根据用户输入生成策略
+    this.strategyResult = '推荐的订房策略:选择三家评价最高的酒店,预算范围内的最佳房型…';
+  }
+
+  // 生成房间图片的方法
+  generateRoomImage() {
+    // 这里可以添加逻辑,例如根据用户输入生成房间图片
+    this.roomImage = 'assets/generated-room-image.png'; // 示例路径,实际应为生成的图片路径
+  }
+
+  // 提交用户反馈的方法
+  submitFeedback() {
+    // 处理用户反馈逻辑
+    console.log('用户反馈:', this.userFeedback);
+    // 清空反馈文本框
+    this.userFeedback = '';
+  }
 }

+ 6 - 6
smarthotel-app/src/app/tabs/tabs.page.html

@@ -1,18 +1,18 @@
 <ion-tabs>
   <ion-tab-bar slot="bottom">
     <ion-tab-button tab="tab1" href="/tabs/tab1">
-      <ion-icon aria-hidden="true" name="triangle"></ion-icon>
-      <ion-label>Tab 1</ion-label>
+      <ion-icon aria-hidden="true" name="tv"></ion-icon>
+      <ion-label>首页</ion-label>
     </ion-tab-button>
 
     <ion-tab-button tab="tab2" href="/tabs/tab2">
-      <ion-icon aria-hidden="true" name="ellipse"></ion-icon>
-      <ion-label>Tab 2</ion-label>
+      <ion-icon aria-hidden="true" name="chatbox"></ion-icon>
+      <ion-label>预订</ion-label>
     </ion-tab-button>
 
     <ion-tab-button tab="tab3" href="/tabs/tab3">
-      <ion-icon aria-hidden="true" name="square"></ion-icon>
-      <ion-label>Tab 3</ion-label>
+      <ion-icon aria-hidden="true" name="people"></ion-icon>
+      <ion-label>客户</ion-label>
     </ion-tab-button>
   </ion-tab-bar>
 </ion-tabs>

+ 2 - 2
smarthotel-app/src/app/tabs/tabs.page.ts

@@ -1,7 +1,7 @@
 import { Component, EnvironmentInjector, inject } from '@angular/core';
 import { IonTabs, IonTabBar, IonTabButton, IonIcon, IonLabel } from '@ionic/angular/standalone';
 import { addIcons } from 'ionicons';
-import { triangle, ellipse, square } from 'ionicons/icons';
+import { tv, chatbox, people } from 'ionicons/icons';
 
 @Component({
   selector: 'app-tabs',
@@ -14,6 +14,6 @@ export class TabsPage {
   public environmentInjector = inject(EnvironmentInjector);
 
   constructor() {
-    addIcons({ triangle, ellipse, square });
+    addIcons({ tv, chatbox, people });
   }
 }

BIN
smarthotel-prod/img/logo.png