htc 14 часов назад
Родитель
Сommit
93db83accd
3 измененных файлов с 88 добавлено и 6 удалено
  1. 10 4
      src/components/reportPdf/pdf2.vue
  2. 9 2
      src/components/reportPdf/pdfUser2.vue
  3. 69 0
      src/utils/marked.min.js

+ 10 - 4
src/components/reportPdf/pdf2.vue

@@ -98,7 +98,7 @@
 b.“重要分”,指标逻辑为根据团队全体对当前主题所对应各问卷题目重要性评分的均值,用来表征团队对这一主题问卷所陈述内容对于团队重要性的平均认知,最高分:5分,最低分:0分;<br>
 c.“影响力分”,指标逻辑为团队全体对当前主题所对应各问卷题目的认同度评分与重要性评分乘积的均值,用来表征团队对这一主题问卷所陈述内容对于团队的影响力水平,最高分:25分,最低分:0分;</div>
                 <div class="v2b-title">评估结果</div>
-                <div class="v2b-p" v-html="(reportData?.totalDiagnosticOutput||'').replaceAll('\n\n','<br>').replaceAll('**','')"></div>
+                <div class="v2b-p" v-html="renderMarkdown(reportData?.totalDiagnosticOutput||'')"></div>
             </div>
         </div>
         <!-- 总体评估分析 评估建议-->
@@ -110,7 +110,7 @@ c.“影响力分”,指标逻辑为团队全体对当前主题所对应各问
             <div class="v2-box" style="border: 1px solid #33A7A7;">
                 <img class="vb-img1" :src="require('@/assets/images/versionTwo/'+'intro'+'_box_img1.png')">
                 <div class="v2b-title" style="margin-top: 0;">评估建议</div>
-                <div class="v2b-p" v-html="(reportData?.totalDiagnosisSuggest||'').replaceAll('\n\n','<br>').replaceAll('**','')"></div>
+                <div class="v2b-p" v-html="renderMarkdown(reportData?.totalDiagnosisSuggest||'')"></div>
             </div>
         </div>
         <!-- 多维度 -->
@@ -163,7 +163,7 @@ c.“影响力分”,指标逻辑为团队全体对当前主题所对应各问
                             </div>
                         </div>
                         <div class="v2-subp">评估结果</div>
-                        <div class="v2-p" style="margin-top: 6px;" v-html="(item?.diagnosisOutput||'').replaceAll('\n\n','<br>').replaceAll('**','')"></div>
+                        <div class="v2-p" style="margin-top: 6px;" v-html="(item?.diagnosisOutput||'').replaceAll('\n','<br>').replaceAll('**','')"></div>
                     </div>
                 </div>
                 <div class="cd_box adffc" style="border: none;">
@@ -172,7 +172,7 @@ c.“影响力分”,指标逻辑为团队全体对当前主题所对应各问
                         <div class="vt-right">团队发展动态评估报告(团队版) </div>
                     </div>
                     <div class="v2-box" :style="{'border':'none','padding':0}">
-                        <div class="v2-p" style="margin-top: 6px;" v-html="(item?.diagnosisSuggest||'').replaceAll('\n\n','<br>').replaceAll('**','')"></div>
+                        <div class="v2-p" style="margin-top: 6px;" v-html="(item?.diagnosisSuggest||'').replaceAll('\n','<br>').replaceAll('**','')"></div>
                     </div>
                 </div>
             </block>
@@ -278,6 +278,12 @@ c.“影响力分”,指标逻辑为团队全体对当前主题所对应各问
         }
     ]);
 
+    const renderMarkdown = (val) => {
+        if(!val) return '';
+        val = val.replaceAll('\n','  \n')
+        return window.marked ? window.marked.parse(val) : val;
+    }
+
     let chartInstance = null;
     const initZtzdfxChart = async () => {
         let dataSum = reportData.value?.overall?.length*reportData.value?.overall[0]?.themeTotalSpreads?.length;

+ 9 - 2
src/components/reportPdf/pdfUser2.vue

@@ -60,7 +60,7 @@
 b.“重要分”,指标逻辑为根据评估发起者个人对当前主题所对应各问卷题目重要性评分的均值,用来表征其对这一主题问卷所陈述内容对于团队重要性的平均认知,最高分:5分,最低分:0分;<br>
 c.“影响力分”,指标逻辑为评估发起者个人对当前主题所对应各问卷题目的认同度评分与重要性评分乘积的均值,用来表征其对这一主题问卷所陈述内容对于团队的影响力水平,最高分:25分,最低分:0分;</div>
                 <div class="v2b-title">评估结果</div>
-                <div class="v2b-p" v-html="(reportData?.totalDiagnosticOutput||'').replaceAll('\n\n','<br>').replaceAll('**','')"></div>
+                <div class="v2b-p" v-html="renderMarkdown(reportData?.totalDiagnosticOutput||'')"></div>
             </div>
         </div>
         <!-- 总体评估分析 评估建议-->
@@ -72,7 +72,7 @@ c.“影响力分”,指标逻辑为评估发起者个人对当前主题所对
             <div class="v2-box">
                 <img class="vb-img1" :src="require('@/assets/images/versionTwo/'+'intro'+'_box_img1.png')">
                 <div class="v2b-title" style="margin-top: 0;">评估建议</div>
-                <div class="v2b-p" v-html="(reportData?.totalDiagnosisSuggest||'').replaceAll('\n\n','<br>').replaceAll('**','')"></div>
+                <div class="v2b-p" v-html="renderMarkdown(reportData?.totalDiagnosisSuggest||'')"></div>
             </div>
         </div>
         <!-- 多维度 -->
@@ -303,6 +303,13 @@ c.“影响力分”,指标逻辑为评估发起者个人对当前主题所对
         initZtzdfxChart(reportData.value);
     };
 
+    const renderMarkdown = (val) => {
+        if(!val) return '';
+        val = '&emsp;&emsp;'+val;
+        val = val.replaceAll('\n','  \n&emsp;&emsp;')
+        // return window.marked ? window.marked.parse(val) : val;
+    }
+
     onMounted(() => {
         reportData.value = props.reportData;
         const tempDimensionAnalysis = [

Разница между файлами не показана из-за своего большого размера
+ 69 - 0
src/utils/marked.min.js