소스 검색

[feat]亲密度分析,报告预览页,对接接口数据

hezihao 7 달 전
부모
커밋
e812fa9d4e

+ 2 - 0
assets/string/base/string.xml

@@ -288,6 +288,8 @@
     <string name="intimacy_analyse_get_reply">获取回复</string>
     <string name="intimacy_analyse_reply_tone">回复语气:</string>
 
+    <string name="intimacy_analyse_report_preview_bubble_text">报告还有2565字未显示,点击按钮查看完整报告</string>
+
     <string name="preview">预览</string>
 
     <string name="retry">再试试</string>

+ 1 - 1
lib/module/intimacy_analyse/analyse_report/intimacy_analyse_report_view.dart

@@ -147,7 +147,7 @@ class IntimacyAnalyseReportView
           Container(
             padding: EdgeInsets.only(left: 38, top: 7, bottom: 8),
             child: Text(
-              controller.reportPreviewBubbleText.value,
+              StringName.intimacyAnalyseReportPreviewBubbleText,
               // 超出则显示省略号
               overflow: TextOverflow.ellipsis,
               // 单行显示

+ 15 - 4
lib/module/intimacy_analyse/analyse_report/intimacy_analyse_report_view_controller.dart

@@ -21,9 +21,6 @@ class IntimacyAnalyseReportController extends BaseController {
   /// 报告预览数据
   RxString reportPreviewData = "".obs;
 
-  /// 报告预览-气泡文本
-  RxString reportPreviewBubbleText = '报告还有2565字未显示,点击按钮查看完整报告'.obs;
-
   IntimacyAnalyseReportController(this.intimacyAnalyzeRepository);
 
   @override
@@ -54,11 +51,25 @@ class IntimacyAnalyseReportController extends BaseController {
     // 跳转到图片选择,并返回选择的图片列表
     List<AssetEntity> selectedAssetList = await ImagePickerUtil.pickImage(
       context,
-      maxAssetsCount: 9,
+      maxAssetsCount: getMaxAssetsCount(),
     );
     // 跳转到亲密度分析上传页
     if (selectedAssetList.isNotEmpty) {
       IntimacyAnalyseUploadPage.start(selectedAssetList);
     }
   }
+
+  /// 最多,可以选多少张图片
+  int getMaxAssetsCount() {
+    var config = intimacyAnalyzeConfig.value;
+    if (config == null) {
+      return 1;
+    }
+    // 最多选多少张
+    if (config.maxImageCount != null) {
+      return config.maxImageCount!;
+    }
+    // 最少选多少张
+    return config.minImageCount ?? 1;
+  }
 }

+ 3 - 3
lib/module/intimacy_analyse/widget/intimacy_analyse_report_widget.dart

@@ -29,9 +29,7 @@ class IntimacyAnalyseReportWidget extends StatelessWidget {
   @override
   Widget build(BuildContext context) {
     if (isPreview) {
-      return PreviewReportCardWidget(
-        previewReportContent: reportContent,
-      );
+      return PreviewReportCardWidget(previewReportContent: reportContent);
     }
     // 未解锁
     if (!unlock) {
@@ -62,6 +60,8 @@ class PreviewReportCardWidget extends StatelessWidget {
         children: [
           SizedBox(height: 10.h),
           Container(
+            // 最小高度
+            constraints: BoxConstraints(minHeight: 360.h),
             decoration: ShapeDecoration(
               color: ColorName.white,
               shape: RoundedRectangleBorder(

+ 2 - 0
lib/resource/string.gen.dart

@@ -203,6 +203,7 @@ class StringName {
   static final String intimacyAnalyseReUpload = 'intimacy_analyse_re_upload'.tr; // 重新上传
   static final String intimacyAnalyseGetReply = 'intimacy_analyse_get_reply'.tr; // 获取回复
   static final String intimacyAnalyseReplyTone = 'intimacy_analyse_reply_tone'.tr; // 回复语气:
+  static final String intimacyAnalyseReportPreviewBubbleText = 'intimacy_analyse_report_preview_bubble_text'.tr; // 报告还有2565字未显示,点击按钮查看完整报告
   static final String preview = 'preview'.tr; // 预览
   static final String retry = 'retry'.tr; // 再试试
   static final String nextStep = 'next_step'.tr; // 下一步
@@ -415,6 +416,7 @@ class StringMultiSource {
       'intimacy_analyse_re_upload': '重新上传',
       'intimacy_analyse_get_reply': '获取回复',
       'intimacy_analyse_reply_tone': '回复语气:',
+      'intimacy_analyse_report_preview_bubble_text': '报告还有2565字未显示,点击按钮查看完整报告',
       'preview': '预览',
       'retry': '再试试',
       'next_step': '下一步',