Sfoglia il codice sorgente

[feat]亲密度分析,处理UI切换逻辑

hezihao 7 mesi fa
parent
commit
992f8adf6d

+ 2 - 2
lib/module/intimacy_analyse/intimacy_analyse_upload/intimacy_analyse_upload_controller.dart

@@ -327,7 +327,8 @@ class IntimacyAnalyseUploadController extends BaseController {
       return;
     }
 
-    // 报告生成中
+    // 切换到报告生成中
+    isUploadPage.value = false;
     isReportCreating.value = true;
 
     try {
@@ -343,7 +344,6 @@ class IntimacyAnalyseUploadController extends BaseController {
 
       isReportCreating.value = false;
       intimacyAnalyzeResult.value = response;
-      isUploadPage.value = false;
     } catch (error) {
       isReportCreating.value = false;
       AtmobLog.e(tag, error.toString());

+ 18 - 13
lib/module/intimacy_analyse/intimacy_analyse_upload/intimacy_analyse_upload_page.dart

@@ -577,8 +577,8 @@ class IntimacyAnalyseUploadPage
 
   /// 底部操作按钮
   Widget _buildBottomActionBtn() {
+    // 上传页,显示Ai模型切换按钮和下一步按钮
     if (controller.isUploadPage.value) {
-      // 上传页
       return Container(
         width: double.maxFinite,
         margin: EdgeInsets.only(
@@ -594,17 +594,22 @@ class IntimacyAnalyseUploadPage
         ),
       );
     } else {
-      // 结果页
-      return Container(
-        width: double.maxFinite,
-        margin: EdgeInsets.only(
-          left: 13.w,
-          top: 8.h,
-          right: 13.w,
-          bottom: 20.h,
-        ),
-        child: _buildAnalyseBtn(),
-      );
+      // 结果页,显示立即分析按钮
+      if (controller.intimacyAnalyzeResult.value == null) {
+        return Container(
+          width: double.maxFinite,
+          margin: EdgeInsets.only(
+            left: 13.w,
+            top: 8.h,
+            right: 13.w,
+            bottom: 20.h,
+          ),
+          child: _buildAnalyseBtn(),
+        );
+      } else {
+        // 生成定制人设按钮
+        return SizedBox();
+      }
     }
   }
 
@@ -754,7 +759,7 @@ class IntimacyAnalyseUploadPage
   Widget _buildCardList() {
     return Obx(() {
       // 上传页
-      if (controller.intimacyAnalyzeResult.value == null) {
+      if (controller.isUploadPage.value) {
         return Column(
           children: [
             // 上传卡片

+ 3 - 2
lib/module/intimacy_analyse/intimacy_analyse_upload/widget/upload_nine_grid.dart

@@ -109,9 +109,10 @@ class UploadNineGrid extends StatelessWidget {
   Widget _buildUploadItem(UploadInfo info, int index) {
     return UploadItemWidget(
       imageUploadInfo: info,
-      hasDeleteBtn: true,
+      // 编辑状态时,才有删除按钮
+      hasDeleteBtn: mode == Mode.edit,
+      // 点击删除按钮时回调,删除图片
       onClickDeleteCallback: (UploadInfo uploadInfo) {
-        // 删除图片
         if (onClickDeleteCallback != null) {
           onClickDeleteCallback!(uploadInfo);
         }