page-chat.component.html 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. <div class="ion-page">
  2. <ion-header>
  3. <ion-toolbar>
  4. <ion-title>AI</ion-title>
  5. </ion-toolbar>
  6. <ion-segment value="all">
  7. <ion-segment-button value="all" (click)="changeTab('all')">
  8. <ion-label>AI情商课堂</ion-label>
  9. </ion-segment-button>
  10. <ion-segment-button value="favorites" (click)="changeTab('favorites')">
  11. <ion-label>社交虚拟形象制定</ion-label>
  12. </ion-segment-button>
  13. </ion-segment>
  14. </ion-header>
  15. <ion-content>
  16. <!-- AI人格 -->
  17. <ng-container *ngIf="currentTab === 'all'">
  18. <div class="page">
  19. <div class="chat-container">
  20. <!--AI固定内容-->
  21. <div class="message-container">
  22. <img class="avatar-left"
  23. src="../../../assets/jl.png"
  24. alt="Avatar">
  25. <div class="message-box-left">
  26. <div class="message-content">
  27. 有什么我可以帮助你的吗?
  28. </div>
  29. </div>
  30. </div>
  31. <!--AI-->
  32. <ng-container *ngFor="let msg of messageList">
  33. <ng-container *ngIf="msg?.role === 'assistant'">
  34. <div class="message-container">
  35. <img class="avatar-left"
  36. src="../../../assets/jl.png"
  37. alt="Avatar">
  38. <div class="message-box-left">
  39. <div class="message-content">
  40. {{msg?.content}}
  41. </div>
  42. </div>
  43. </div>
  44. </ng-container>
  45. <ng-container *ngIf="msg?.role === 'user'">
  46. <div class="message-container-mine">
  47. <img class="avatar-right"
  48. [src]="currentUser?.get('avatar')||'https://pic2.zhimg.com/v2-45e3ca228438d1e4c3e98e38c8f8e4a4_r.jpg?source=1940ef5c'"
  49. alt="Avatar">
  50. <div class="message-box-right">
  51. <div class="message-content">
  52. {{msg?.content}}
  53. </div>
  54. </div>
  55. </div>
  56. </ng-container>
  57. </ng-container>
  58. </div>
  59. <div class="footer">
  60. <div class="send-container">
  61. <input [(ngModel)]="userInput" type="text" class="message-input" placeholder="输入消息...">
  62. <button class="send-button" (click)="send()">发送</button>
  63. </div>
  64. </div>
  65. </div>
  66. </ng-container>
  67. <!-- 显示AI人格定制. -->
  68. <ng-container *ngIf="currentTab === 'favorites'">
  69. <ion-list>
  70. <h4 style="text-align: center;padding: 15px;">请填写以下信息,以便为你定制虚拟社交形象</h4>
  71. <ion-item>
  72. <ion-select [value]="planOptions.gender" (ionChange)="setOption('gender',$event)" label="性别" placeholder=""cancelText="取消" okText="确定">
  73. <ion-select-option value="女">女</ion-select-option>
  74. <ion-select-option value="男">男</ion-select-option>
  75. <ion-select-option value="未知">未知</ion-select-option>
  76. </ion-select>
  77. </ion-item>
  78. <ion-item>
  79. <ion-input label="称呼" type="number" placeholder=""></ion-input>
  80. </ion-item>
  81. <ion-item>
  82. <ion-input label="身高(cm)" type="number" placeholder=""></ion-input>
  83. </ion-item>
  84. <ion-item>
  85. <ion-input label="年龄(year)" type="number" placeholder=""></ion-input>
  86. </ion-item>
  87. <ion-item>
  88. <ion-input label="技能&能力(skill)" type="string" placeholder=""></ion-input>
  89. </ion-item>
  90. <ion-item>
  91. <ion-select [value]="planOptions.targets" (ionChange)="setOption('targets',$event)"
  92. aria-label="object" placeholder="风格设定" [multiple]="true">
  93. <ion-select-option value="慵懒休闲">成熟稳重</ion-select-option>
  94. <ion-select-option value="活泼好动">自信坦荡</ion-select-option>
  95. <ion-select-option value="独立自主">遇到困难就摆烂</ion-select-option>
  96. </ion-select>
  97. </ion-item>
  98. <ion-item>
  99. <ion-textarea label="你是否有其他信息或补充(如MBTI性格测试的结果)" labelPlacement="floating" placeholder=" "></ion-textarea>
  100. </ion-item>
  101. </ion-list>
  102. <!-- <div style="display: flex; justify-content: center;"> -->
  103. <ion-button (click)="sendPlan()" expand="block">生成</ion-button>
  104. <!-- </div> -->
  105. <div>
  106. <!--AI计划显示区-->
  107. </div>
  108. </ng-container>
  109. <div class="navfooter"> </div>
  110. </ion-content>
  111. </div>