Procházet zdrojové kódy

1.0.64 excel报表显示

liuyanpeng před 2 roky
rodič
revize
9b3cda959a

+ 1 - 1
package.json

@@ -1,6 +1,6 @@
 {
   "name": "pc-component-v3",
-  "version": "1.0.63",
+  "version": "1.0.64",
   "description": "",
   "main": "dist/pc-component-v3.js",
   "scripts": {

+ 13 - 1
packages/process/src/ProcessReportDynamic.vue

@@ -18,6 +18,7 @@
             <label
               v-if="item.displayType != 'ListBoxEnumEditor'"
               :for="'editor_' + item.id"
+              class="m-label"
             >{{ item.displayName }}</label>
 
             <input
@@ -326,7 +327,11 @@ export default {
 
           if (_self.processReportResult.reportResults != undefined && _self.processReportResult.reportResults.length > 0) {
             _self.processReportResult.reportResults.forEach(function (item, index) {
-              item.previewIndex=1;
+              if(item.reportDefinitionType!=='ExcelReport'){
+                item.previewIndex=1;
+              }else{
+                item.previewIndex=2;
+              }
               if (index == 0) {
                 item.showPreview=true;
               } else {
@@ -334,6 +339,7 @@ export default {
               }
             });
           }
+
           // _self.processReportDto.excelOnly = false;
           // _self.processReportDto.pdfOnly = true;
 
@@ -454,4 +460,10 @@ export default {
     border-radius: 4px !important;
     width: 200px !important;
 }
+.m-label {
+    width: 5em;
+    margin-left: 1em;
+    margin-right: 1em;
+    display: inline;
+}
 </style>

+ 40 - 17
packages/process/src/ProcessReportResultPreview.vue

@@ -52,6 +52,7 @@
               {{ index + 1 + (processReportResult.processResult == undefined ? 0 : 1) }}.{{ reportResult.reportName }}
             </div>
             <div
+              v-if="reportResult.reportDefinitionType !== 'ExcelReport'"
               class="pull-left"
               style="padding-left: 30px; cursor: pointer;"
               @click="iframeBack(reportResult, index)"
@@ -59,6 +60,7 @@
               后退
             </div>
             <div
+              v-if="reportResult.reportDefinitionType !== 'ExcelReport'"
               class="pull-left"
               style="padding-left: 30px; cursor: pointer;"
               @click="iframeForward(reportResult, index)"
@@ -79,6 +81,7 @@
             >
               <div class="input-group m-input-group">
                 <select
+                  v-if="reportResult.reportDefinitionType !== 'ExcelReport'"
                   v-model="reportResult.previewIndex"
                   class="form-control"
                 >
@@ -95,6 +98,18 @@
                     Excel
                   </option>
                 </select>
+                <select
+                  v-else-if="reportResult.reportDefinitionType == 'ExcelReport'"
+                  v-model="reportResult.previewIndex"
+                  class="form-control"
+                >
+                  <option
+                    v-if="pdfOnly != true"
+                    value="2"
+                  >
+                    Excel
+                  </option>
+                </select>
                 <span
                   class="input-group-addon btn-download"
                   @click="download(reportResult)"
@@ -107,25 +122,34 @@
             class="panel-body"
           >
             <div v-if="reportResult.isSuccess">
-              <div
-                v-if="reportResult.previewIndex == 1"
-                class="embed-responsive embed-responsive-4by3"
-              >
-                <embed
-                  :id="uuid + 'pdfIframe' + index"
-                  class="embed-responsive-item"
-                  type="application/pdf"
-                  :src="getReport(reportResult.pdfDownLoadUrl, '#' + uuid + 'pdfIframe' + index)"
-                />
+              <div v-if="reportResult.reportDefinitionType !== 'ExcelReport'">
+                <div
+                  v-if="reportResult.previewIndex == 1"
+                  class="embed-responsive embed-responsive-4by3"
+                >
+                  <embed
+                    :id="uuid + 'pdfIframe' + index"
+                    class="embed-responsive-item"
+                    type="application/pdf"
+                    :src="getReport(reportResult.pdfDownLoadUrl, '#' + uuid + 'pdfIframe' + index)"
+                  />
+                </div>
+                <div
+                  v-else
+                  class="embed-responsive embed-responsive-4by3"
+                >
+                  <iframe
+                    :id="uuid + 'htmlIframe' + index"
+                    class="embed-responsive-item"
+                    :src="getReport(reportResult.htmlPreviewUrl, '#' + uuid + 'htmlIframe' + index)"
+                  />
+                </div>
               </div>
-              <div
-                v-else
-                class="embed-responsive embed-responsive-4by3"
-              >
+              <div v-else style="width: 100%;height: 500px;">
                 <iframe
                   :id="uuid + 'htmlIframe' + index"
-                  class="embed-responsive-item"
-                  :src="getReport(reportResult.htmlPreviewUrl, '#' + uuid + 'htmlIframe' + index)"
+                  style="width: 100%;height: 100%;"
+                  :src="reportResult.htmlPreviewUrl"
                 />
               </div>
             </div>
@@ -217,7 +241,6 @@ export default {
              */
     download: function (item) {
       if (item.previewIndex == 1) {
-        console.log(item.pdfDownLoadUrl);
         DownloadService.reportDownload(item.pdfDownLoadUrl);
       } else {
         DownloadService.reportDownload(item.excelDownLoadUrl);

+ 2 - 0
packages/process/src/ProcessReportStatic.vue

@@ -421,6 +421,8 @@ export default {
 .m-label {
     width: 5em;
     margin-left: 1em;
+    margin-right: 1em;
+    display: inline;
 }
 </style>