浏览代码

fix: fix a bug in user input on aiplan page

cyx 5 月之前
父节点
当前提交
caacd3148c

+ 13 - 10
TFPower-app/src/app/aiplan-page/aiplan-page.component.html

@@ -12,30 +12,33 @@
     </ion-card-header>
     <ion-list>
       <ion-item>
-        <ion-input label="训练类型" [value]="trainingType" [clearInput]="true" type="text"
-          placeholder="修身、锻炼、出汗等"></ion-input>
+        <ion-input label="训练类型" [value]="trainingType" [clearInput]="true" type="text" placeholder="修身、锻炼、出汗等"
+          (ionInput)="userInputOntrainingType($event)"></ion-input>
       </ion-item>
       <ion-item>
-        <ion-input label="性别" [value]="sex" [clearInput]="true" type="text" placeholder="男(女)"></ion-input>
+        <ion-input label="性别" [value]="sex" [clearInput]="true" type="text" placeholder="男(女)"
+          (ionInput)="userInputOnsex($event)"></ion-input>
       </ion-item>
       <ion-item>
-        <ion-input label="体重(kg)" [value]="weight" type="number" placeholder="75"></ion-input>
+        <ion-input label="体重(kg)" [value]="weight" type="number" placeholder="75"
+          (ionInput)="userInputOnweight($event)"></ion-input>
       </ion-item>
       <ion-item>
-        <ion-input label="训练时间(min)" [value]="trainingTime" type="number" placeholder="45"></ion-input>
+        <ion-input label="训练时间(min)" [value]="trainingTime" type="number" placeholder="45"
+          (ionInput)="userInputOntrainingTime($event)"></ion-input>
       </ion-item>
       <ion-item>
-        <ion-input label="训练强度" [value]="trainingIntensity" [clearInput]="true" type="text"
-          placeholder="弱/中/强"></ion-input>
+        <ion-input label="训练强度" [value]="trainingIntensity" [clearInput]="true" type="text" placeholder="弱/中/强"
+          (ionInput)="userInputOntrainingIntensity($event)"></ion-input>
       </ion-item>
       <ion-item>
-        <ion-input label="训练部位" [value]="trainingSite" [clearInput]="true" type="text"
-          placeholder="背部、小腿、大腿等"></ion-input>
+        <ion-input label="训练部位" [value]="trainingSite" [clearInput]="true" type="text" placeholder="背部、小腿、大腿等"
+          (ionInput)="userInputOntrainingSite($event)"></ion-input>
       </ion-item>
       <ion-item>
         <!-- <ion-textarea label="其他要求" [autoGrow]="true" type="text" placeholder="任何要求都可以在这里提哦,亲"></ion-textarea> -->
         <ion-textarea label="其他需求" [value]="needs" [autoGrow]="true" labelPlacement="floating" [counter]="true"
-          maxlength="120" placeholder="任何要求都可以在这里提哦,亲"></ion-textarea>
+          maxlength="120" placeholder="任何要求都可以在这里提哦,亲" (ionInput)="userInputOnneeds($event)"></ion-textarea>
       </ion-item>
       <ion-grid [fixed]="true">
         <ion-row style="text-align: center;">

+ 45 - 22
TFPower-app/src/app/aiplan-page/aiplan-page.component.ts

@@ -59,6 +59,28 @@ export class AiplanPageComponent implements OnInit {
   needs: string = '';
 
   aiplan: string = '';
+
+  userInputOntrainingType(ev: any) {
+    this.trainingType = ev.detail.value;
+  }
+  userInputOnsex(ev: any) {
+    this.sex = ev.detail.value;
+  }
+  userInputOnweight(ev: any) {
+    this.weight = ev.detail.value;
+  }
+  userInputOntrainingTime(ev: any) {
+    this.trainingTime = ev.detail.value;
+  }
+  userInputOntrainingIntensity(ev: any) {
+    this.trainingIntensity = ev.detail.value;
+  }
+  userInputOntrainingSite(ev: any) {
+    this.trainingSite = ev.detail.value;
+  }
+  userInputOnneeds(ev: any) {
+    this.needs = ev.detail.value;
+  }
   reset() {
     // 重置表单数据(有问题)
     // this.trainingType = '';
@@ -144,32 +166,33 @@ export class AiplanPageComponent implements OnInit {
   isComplete: boolean = false;
 
   sendMessage() {
-    // 用户输入数据提取
+    // 用户输入数据提取 不建议
+    // let ipts = document.querySelectorAll('ion-input');
+    // let textarea = document.querySelectorAll('ion-textarea');
+    // let userinputs = '';
+    // ipts.forEach((ipt) => {
+    //   userinputs += ipt.value + ' ';
+    // });
+    // textarea.forEach((text) => {
+    //   userinputs += text.value + ' ';
+    // });
+    // let userinputlist = userinputs.split(' ');
+    // let data = {
+    //   trainingType: userinputlist[0],
+    //   sex: userinputlist[1],
+    //   weight: userinputlist[2],
+    //   trainingTime: userinputlist[3],
+    //   trainingIntensity: userinputlist[4],
+    //   trainingSite: userinputlist[5],
+    //   needs: userinputlist[6],
+    // };
+    // console.log(data);
+
     this.isComplete = false;
     this.aiplan = '';
-    let ipts = document.querySelectorAll('ion-input');
-    let textarea = document.querySelectorAll('ion-textarea');
-    let userinputs = '';
-    ipts.forEach((ipt) => {
-      userinputs += ipt.value + ' ';
-    });
-    textarea.forEach((text) => {
-      userinputs += text.value + ' ';
-    });
-    let userinputlist = userinputs.split(' ');
-    let data = {
-      trainingType: userinputlist[0],
-      sex: userinputlist[1],
-      weight: userinputlist[2],
-      trainingTime: userinputlist[3],
-      trainingIntensity: userinputlist[4],
-      trainingSite: userinputlist[5],
-      needs: userinputlist[6],
-    };
-    console.log(data);
 
     // ai对话实现
-    let prompt = `我是一名体重为${data.weight}kg的${data.sex}性,我只有${data.trainingTime}分钟来${data.trainingType},我希望训练强度${data.trainingIntensity}一点,而我想训练的部位为${data.trainingSite}, 一些其他的需求有${data.needs}。 请你作为一名专业的健身教练,根据我提供的信息,为我制定${data.trainingType}计划。`;
+    let prompt = `我是一名体重为${this.weight}kg的${this.sex}性,我只有${this.trainingTime}分钟来${this.trainingType},我希望训练强度${this.trainingIntensity}一点,而我想训练的部位为${this.trainingSite}, 一些其他的需求有${this.needs}。 请你作为一名专业的健身教练,根据我提供的信息,为我制定${this.trainingType}计划。`;
     console.log(prompt);
 
     let completion = new FmodeChatCompletion([

+ 26 - 0
TFPower-app/src/app/tab1/tab1.page.html

@@ -159,6 +159,32 @@
           </ion-card-content>
         </ion-card>
 
+        <ion-card class="bigcard">
+          <img src="../../assets/images/13363.png" />
+          <ion-card-header>
+            <ion-card-title>小雪节气天地闭藏 养生有“三防”</ion-card-title>
+            <ion-card-subtitle>健康“医”点通</ion-card-subtitle>
+          </ion-card-header>
+          <ion-card-content>
+            <p class="no-indent">
+              <span class="first-letter-big">今</span>
+              日,我们迎来冬季的第二个节气——小雪。此时节,冷空气活动趋于频繁,自然界的阴气渐盛,阳气渐藏。天津中医药大学附属保康医院主任医师韩娟在接受人民网采访时表示,与自然界变化相应,人体气血由外向里收敛,形与神也要趋向潜藏。为减少天气变化对人体的不良影响,日常生活中尤要注意“三防”。
+            </p>
+            <p>防受寒</p>
+            <p>
+              小雪时节,天气越来越冷,应根据天气变化,随时增减衣服。衣着上,以保暖、防风为主,尽量不穿露脚踝的衣服、鞋子。另外,起居作息宜早睡晚起,早睡可助阳气,保持身体温热;晚起可养阴气,待到日出劳作,能够躲避严寒,保养神气。
+            </p>
+            <p>防燥热</p>
+            <p>
+              小雪时节,室外寒冷,屋内燥热,不利散发人体内热气,容易生“内火”,出现口干舌燥、口腔溃疡、皮肤干燥等症状。此时建议多吃蔬菜水果,如大白菜、萝卜、香蕉、梨、苹果等,少吃辛辣食物,不酗酒。也可以采用食疗方法,如每天煮梨水、萝卜水,以防止天气干燥所致的口干、咽干。
+            </p>
+            <p>防抑郁</p>
+            <p>
+              小雪时节,天气阴冷,光线较弱,容易出现精神抑郁、情绪低落等。所以在此节气中要注意精神的调养。建议在天气晴朗时多到户外晒太阳,同时适当运动以提升阳气。室内活动如听音乐、读书看报、与亲友聊天等,同样有助于改善情绪,使人心态平和。另外,常食菠菜、猕猴桃、牡蛎、橘子、黄豆等富含叶酸的食物,也可帮助抵抗抑郁。
+            </p>
+          </ion-card-content>
+        </ion-card>
+
         <!-- 第二张卡片 -->
         <ion-card>
           <ion-card-header>

+ 1 - 1
TFPower-app/src/app/todolist-page/todolist-page.component.ts

@@ -36,7 +36,7 @@ export class TodolistPageComponent implements OnInit {
   constructor() {}
   ngOnInit() {}
 
-  todolist: Array<string> = [];
+  todolist: Array<string> = ['have a good day'];
   changeTodolist(ev: any) {
     this.todolist = ev;
   }

二进制
TFPower-app/src/assets/images/13363.png


+ 1 - 1
TFPower-prod/README.md

@@ -79,8 +79,8 @@
 
 ## 市场痛点
 
-- 健身房资源不足
 - 个性化训练不够
+- 健身资源不平衡
 - 缺乏持续激励机制
 - 数据管理薄弱