浏览代码

更新打包

lex 2 年之前
父节点
当前提交
36badf396c
共有 83 个文件被更改,包括 284 次插入287 次删除
  1. 0 0
      dist/app.52844bd5bef58fbb3db4.js
  2. 0 0
      dist/app.e4f5aee675d940f86f91.js
  3. 0 0
      dist/css/addVisit.33054c3d.css
  4. 0 0
      dist/css/addVisit.77efe897.css
  5. 1 0
      dist/css/addVisit~massOperation.4dc0600a.css
  6. 0 0
      dist/css/massOperation.18bc07ec.css
  7. 0 0
      dist/css/massOperation.61fa7736.css
  8. 0 0
      dist/index.html
  9. 0 0
      dist/js/Account.8467419f.js
  10. 0 0
      dist/js/AppLogin.c12db35e.js
  11. 0 0
      dist/js/AppRegister.202db520.js
  12. 0 0
      dist/js/AppSetInfo.12cd053f.js
  13. 0 0
      dist/js/AppealDetail.e0281e33.js
  14. 0 0
      dist/js/AppealRecord.c0399e92.js
  15. 0 0
      dist/js/AppealResult.2b3be1cd.js
  16. 0 0
      dist/js/Approval.eb6184d5.js
  17. 0 0
      dist/js/ArrangeWork.9bd956b0.js
  18. 0 0
      dist/js/AssignStudent.a639c2f3.js
  19. 0 0
      dist/js/AssignStudent~GoodsOrder~GoodsOrderDetail~GoodsSale~StudentRepaireRecord.ce28f775.js
  20. 0 0
      dist/js/AssignStudent~GoodsSale.79f719e0.js
  21. 0 0
      dist/js/Attendance.82346d47.js
  22. 0 0
      dist/js/BookingSet.3e4643d8.js
  23. 0 0
      dist/js/Business.18792d59.js
  24. 0 0
      dist/js/CallNames.56e6c468.js
  25. 0 0
      dist/js/CcMe.a3b5cc7f.js
  26. 0 0
      dist/js/ClassDetail.013b676a.js
  27. 0 0
      dist/js/CourseApply.e267e4ce.js
  28. 0 0
      dist/js/CourseDetail.93b5ed80.js
  29. 0 0
      dist/js/CourseEvaluation.f57c28a6.js
  30. 0 0
      dist/js/ExchangeRecord.6835b911.js
  31. 0 0
      dist/js/GoodsOrder.a318b536.js
  32. 0 0
      dist/js/GoodsOrderDetail.bde37c64.js
  33. 0 0
      dist/js/GoodsSale.f1212e6b.js
  34. 0 0
      dist/js/HelpCenter.79c955e2.js
  35. 0 0
      dist/js/IStarted.031e729a.js
  36. 0 0
      dist/js/Leave.1554aa74.js
  37. 0 0
      dist/js/ManageEvaluation.ba53e730.js
  38. 0 0
      dist/js/MonthAppeal.45e9f932.js
  39. 0 0
      dist/js/PaymentResult.d622bd97.js
  40. 0 0
      dist/js/PeriodAdjust.91a37a1d.js
  41. 0 0
      dist/js/PeriodAdjust~PeriodChange.06942ccc.js
  42. 0 0
      dist/js/PeriodChange.8011105e.js
  43. 0 0
      dist/js/PeriodExchange.ba2f1d3c.js
  44. 0 0
      dist/js/PeriodRecord.52930666.js
  45. 0 0
      dist/js/Remuneration.594ff80d.js
  46. 0 0
      dist/js/StartedDetail.22a06f34.js
  47. 0 0
      dist/js/StudentRepaireRecord.f9aa9ff4.js
  48. 0 0
      dist/js/TeachingSchool.39d22cb2.js
  49. 0 0
      dist/js/TeachingSet.9f2c1c4a.js
  50. 0 0
      dist/js/UserProtocol.6ac3ffcf.js
  51. 0 0
      dist/js/VIPApply.497707d5.js
  52. 0 0
      dist/js/VIPApply~applyActive.c34489d5.js
  53. 0 0
      dist/js/activeCourseArrange.f869c4b1.js
  54. 0 0
      dist/js/activeDetail.47c90f07.js
  55. 0 0
      dist/js/activeProgram.340a32bd.js
  56. 0 0
      dist/js/addVisit.068d6c25.js
  57. 0 0
      dist/js/addVisit.a4b9433a.js
  58. 8 0
      dist/js/addVisit~massOperation.22924647.js
  59. 0 0
      dist/js/afterClassEvaluate.524e447a.js
  60. 0 0
      dist/js/afterClassEvaluateDetail.73f117ea.js
  61. 0 0
      dist/js/applyActive.e91d8e4f.js
  62. 0 0
      dist/js/assistCenter.e10ac03f.js
  63. 0 0
      dist/js/auth.8e9e82ce.js
  64. 0 0
      dist/js/classSchedule.2aa17696.js
  65. 0 0
      dist/js/liveRoomList.add7e461.js
  66. 0 0
      dist/js/massMessage.42a0a053.js
  67. 0 0
      dist/js/massOperation.4e305a68.js
  68. 0 0
      dist/js/massOperation.6501fae7.js
  69. 0 0
      dist/js/order.9bdcb82e.js
  70. 0 0
      dist/js/previewVideo.67f1676c.js
  71. 0 0
      dist/js/privacy.b58a64ae.js
  72. 0 0
      dist/js/program.2c147837.js
  73. 0 0
      dist/js/registerProtocol.6ab1dfab.js
  74. 0 0
      dist/js/selectStudent.973eebbb.js
  75. 0 0
      dist/js/special.c79474c1.js
  76. 0 0
      dist/js/specialDetail.da9f3a66.js
  77. 0 0
      dist/js/studentDetail.705eec7e.js
  78. 0 0
      dist/js/studentList.5ae97400.js
  79. 0 0
      dist/js/trainDetail.8844ad62.js
  80. 0 0
      dist/js/trainStatistics.62a4ce12.js
  81. 0 0
      dist/js/visitDetail.6666bac1.js
  82. 0 0
      dist/js/visitList.3999956c.js
  83. 275 287
      src/views/message/control/fileUpload.vue

文件差异内容过多而无法显示
+ 0 - 0
dist/app.52844bd5bef58fbb3db4.js


文件差异内容过多而无法显示
+ 0 - 0
dist/app.e4f5aee675d940f86f91.js


文件差异内容过多而无法显示
+ 0 - 0
dist/css/addVisit.33054c3d.css


文件差异内容过多而无法显示
+ 0 - 0
dist/css/addVisit.77efe897.css


+ 1 - 0
dist/css/addVisit~massOperation.4dc0600a.css

@@ -0,0 +1 @@
+[data-v-31cc2a9d] .van-popup--bottom{border-radius:.1rem .1rem 0 0;overflow:hidden}[data-v-31cc2a9d] .van-picker__cancel{color:#666}[data-v-31cc2a9d] .van-picker__confirm{color:#01c1b5}[data-v-31cc2a9d] .van-list__finished-text{color:silver}[data-v-31cc2a9d] .van-dropdown-menu__title{font-size:.17rem;color:#1a1a1a;line-height:inherit;height:auto}[data-v-31cc2a9d] .van-rate__item:not(:last-child){padding-right:.15rem}.van-button--primary[data-v-31cc2a9d]{background:#01c1b5;border:1px solid #01c1b5}.icon[data-v-31cc2a9d]{width:2rem;height:1.7rem;margin:.5rem auto .05rem}.icon_nodata[data-v-31cc2a9d]{background:url(../img/icon_nodata.74ba3251.png) no-repeat 50%;background-size:contain}.msg[data-v-31cc2a9d]{color:#aaa;font-size:.16rem;text-align:center;line-height:.22rem;position:relative;top:-.2rem}.full[data-v-31cc2a9d]{height:100vh}

文件差异内容过多而无法显示
+ 0 - 0
dist/css/massOperation.18bc07ec.css


文件差异内容过多而无法显示
+ 0 - 0
dist/css/massOperation.61fa7736.css


文件差异内容过多而无法显示
+ 0 - 0
dist/index.html


+ 0 - 0
dist/js/Account.04579ea6.js → dist/js/Account.8467419f.js


+ 0 - 0
dist/js/AppLogin.8fcac96b.js → dist/js/AppLogin.c12db35e.js


+ 0 - 0
dist/js/AppRegister.45e1d10c.js → dist/js/AppRegister.202db520.js


+ 0 - 0
dist/js/AppSetInfo.e8c1e074.js → dist/js/AppSetInfo.12cd053f.js


+ 0 - 0
dist/js/AppealDetail.9c2d672e.js → dist/js/AppealDetail.e0281e33.js


+ 0 - 0
dist/js/AppealRecord.568e2673.js → dist/js/AppealRecord.c0399e92.js


+ 0 - 0
dist/js/AppealResult.8ed48f77.js → dist/js/AppealResult.2b3be1cd.js


+ 0 - 0
dist/js/Approval.e4016bbe.js → dist/js/Approval.eb6184d5.js


+ 0 - 0
dist/js/ArrangeWork.eb7dc516.js → dist/js/ArrangeWork.9bd956b0.js


+ 0 - 0
dist/js/AssignStudent.8bcf2a16.js → dist/js/AssignStudent.a639c2f3.js


+ 0 - 0
dist/js/AssignStudent~GoodsOrder~GoodsOrderDetail~GoodsSale~StudentRepaireRecord.7505744b.js → dist/js/AssignStudent~GoodsOrder~GoodsOrderDetail~GoodsSale~StudentRepaireRecord.ce28f775.js


+ 0 - 0
dist/js/AssignStudent~GoodsSale.110528b8.js → dist/js/AssignStudent~GoodsSale.79f719e0.js


+ 0 - 0
dist/js/Attendance.932e493f.js → dist/js/Attendance.82346d47.js


+ 0 - 0
dist/js/BookingSet.787ef2ab.js → dist/js/BookingSet.3e4643d8.js


+ 0 - 0
dist/js/Business.293e90ed.js → dist/js/Business.18792d59.js


+ 0 - 0
dist/js/CallNames.55f69b5d.js → dist/js/CallNames.56e6c468.js


+ 0 - 0
dist/js/CcMe.5edd4f7d.js → dist/js/CcMe.a3b5cc7f.js


+ 0 - 0
dist/js/ClassDetail.435c880d.js → dist/js/ClassDetail.013b676a.js


+ 0 - 0
dist/js/CourseApply.f2d15dc5.js → dist/js/CourseApply.e267e4ce.js


+ 0 - 0
dist/js/CourseDetail.24dfbaaa.js → dist/js/CourseDetail.93b5ed80.js


+ 0 - 0
dist/js/CourseEvaluation.ee1ff450.js → dist/js/CourseEvaluation.f57c28a6.js


+ 0 - 0
dist/js/ExchangeRecord.3eae5a9a.js → dist/js/ExchangeRecord.6835b911.js


+ 0 - 0
dist/js/GoodsOrder.e6f8780d.js → dist/js/GoodsOrder.a318b536.js


+ 0 - 0
dist/js/GoodsOrderDetail.200549f7.js → dist/js/GoodsOrderDetail.bde37c64.js


+ 0 - 0
dist/js/GoodsSale.744f2817.js → dist/js/GoodsSale.f1212e6b.js


+ 0 - 0
dist/js/HelpCenter.a52d5df4.js → dist/js/HelpCenter.79c955e2.js


+ 0 - 0
dist/js/IStarted.d7c61866.js → dist/js/IStarted.031e729a.js


+ 0 - 0
dist/js/Leave.667a3ae9.js → dist/js/Leave.1554aa74.js


+ 0 - 0
dist/js/ManageEvaluation.7ea2f391.js → dist/js/ManageEvaluation.ba53e730.js


+ 0 - 0
dist/js/MonthAppeal.0f000456.js → dist/js/MonthAppeal.45e9f932.js


+ 0 - 0
dist/js/PaymentResult.4181a175.js → dist/js/PaymentResult.d622bd97.js


+ 0 - 0
dist/js/PeriodAdjust.ce55daea.js → dist/js/PeriodAdjust.91a37a1d.js


+ 0 - 0
dist/js/PeriodAdjust~PeriodChange.276e01c5.js → dist/js/PeriodAdjust~PeriodChange.06942ccc.js


+ 0 - 0
dist/js/PeriodChange.603043cf.js → dist/js/PeriodChange.8011105e.js


+ 0 - 0
dist/js/PeriodExchange.8cb00da0.js → dist/js/PeriodExchange.ba2f1d3c.js


+ 0 - 0
dist/js/PeriodRecord.aad2389d.js → dist/js/PeriodRecord.52930666.js


+ 0 - 0
dist/js/Remuneration.7c351539.js → dist/js/Remuneration.594ff80d.js


+ 0 - 0
dist/js/StartedDetail.4c6ba61f.js → dist/js/StartedDetail.22a06f34.js


+ 0 - 0
dist/js/StudentRepaireRecord.c4210d93.js → dist/js/StudentRepaireRecord.f9aa9ff4.js


+ 0 - 0
dist/js/TeachingSchool.291162d1.js → dist/js/TeachingSchool.39d22cb2.js


+ 0 - 0
dist/js/TeachingSet.c829bb12.js → dist/js/TeachingSet.9f2c1c4a.js


+ 0 - 0
dist/js/UserProtocol.ab290bc1.js → dist/js/UserProtocol.6ac3ffcf.js


+ 0 - 0
dist/js/VIPApply.66e85a76.js → dist/js/VIPApply.497707d5.js


+ 0 - 0
dist/js/VIPApply~applyActive.5967e4f0.js → dist/js/VIPApply~applyActive.c34489d5.js


+ 0 - 0
dist/js/activeCourseArrange.4edc83be.js → dist/js/activeCourseArrange.f869c4b1.js


+ 0 - 0
dist/js/activeDetail.58bce891.js → dist/js/activeDetail.47c90f07.js


+ 0 - 0
dist/js/activeProgram.d754fb0c.js → dist/js/activeProgram.340a32bd.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/addVisit.068d6c25.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/addVisit.a4b9433a.js


文件差异内容过多而无法显示
+ 8 - 0
dist/js/addVisit~massOperation.22924647.js


+ 0 - 0
dist/js/afterClassEvaluate.941dc530.js → dist/js/afterClassEvaluate.524e447a.js


+ 0 - 0
dist/js/afterClassEvaluateDetail.877fb128.js → dist/js/afterClassEvaluateDetail.73f117ea.js


+ 0 - 0
dist/js/applyActive.2aa9c906.js → dist/js/applyActive.e91d8e4f.js


+ 0 - 0
dist/js/assistCenter.c285221a.js → dist/js/assistCenter.e10ac03f.js


+ 0 - 0
dist/js/auth.3cb3b20b.js → dist/js/auth.8e9e82ce.js


+ 0 - 0
dist/js/classSchedule.238e598e.js → dist/js/classSchedule.2aa17696.js


+ 0 - 0
dist/js/liveRoomList.8c97ef74.js → dist/js/liveRoomList.add7e461.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/massMessage.42a0a053.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/massOperation.4e305a68.js


文件差异内容过多而无法显示
+ 0 - 0
dist/js/massOperation.6501fae7.js


+ 0 - 0
dist/js/order.b36c62d3.js → dist/js/order.9bdcb82e.js


+ 0 - 0
dist/js/previewVideo.fa19b60e.js → dist/js/previewVideo.67f1676c.js


+ 0 - 0
dist/js/privacy.56e61852.js → dist/js/privacy.b58a64ae.js


+ 0 - 0
dist/js/program.719369fb.js → dist/js/program.2c147837.js


+ 0 - 0
dist/js/registerProtocol.b3fafa74.js → dist/js/registerProtocol.6ab1dfab.js


+ 0 - 0
dist/js/selectStudent.79c207be.js → dist/js/selectStudent.973eebbb.js


+ 0 - 0
dist/js/special.b70d4985.js → dist/js/special.c79474c1.js


+ 0 - 0
dist/js/specialDetail.bf66a494.js → dist/js/specialDetail.da9f3a66.js


+ 0 - 0
dist/js/studentDetail.067dff14.js → dist/js/studentDetail.705eec7e.js


+ 0 - 0
dist/js/studentList.4aa5d0b0.js → dist/js/studentList.5ae97400.js


+ 0 - 0
dist/js/trainDetail.bf986546.js → dist/js/trainDetail.8844ad62.js


+ 0 - 0
dist/js/trainStatistics.e579ba26.js → dist/js/trainStatistics.62a4ce12.js


+ 0 - 0
dist/js/visitDetail.453a8bdf.js → dist/js/visitDetail.6666bac1.js


+ 0 - 0
dist/js/visitList.4b57d772.js → dist/js/visitList.3999956c.js


+ 275 - 287
src/views/message/control/fileUpload.vue

@@ -1,50 +1,40 @@
 <template>
-    <div class="oFileUpload controller" :class="[preview ? '' : 'o-unit']" v-if="widget.type == 'file'">
-        <van-field
-            :name="widget.model"
-            :label="widget.name || '附件'"
-            :required="fileCheck ? false : options.required || false"
-            :rules="rule"
-            v-if="!preview"
+  <div class="oFileUpload controller" :class="[preview ? '' : 'o-unit']" v-if="widget.type == 'file'">
+    <van-field :name="widget.model" :label="widget.name || '附件'" :required="fileCheck ? false : options.required || false" :rules="rule" v-if="!preview">
+      <template #input>
+        <!-- image/*, *.xlsx, *.xls, application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document, *.txt, *.pdf -->
+        <van-uploader
+          v-model="dataModel"
+          :before-read="beforeRead"
+          :before-delete="beforeDelete"
+          :after-read="afterRead"
+          :disabled="options.disabled || false"
+          :max-count="options.length"
+          accept="image/*, *.xlsx, *.xls,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel, application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document, *.txt, *.pdf"
+          preview-size="0.6rem"
         >
-            <template #input>
-                <!-- image/*, *.xlsx, *.xls, application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document, *.txt, *.pdf -->
-                <van-uploader
-                    v-model="dataModel"
-                    :before-read="beforeRead"
-                    :before-delete="beforeDelete"
-                    :after-read="afterRead"
-                    :disabled="options.disabled || false"
-                    :max-count="options.length"
-                    accept="image/*, *.xlsx, *.xls,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel, application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document, *.txt, *.pdf"
-                    preview-size="0.6rem">
-                    <!-- <template v-slot:preview-cover="props">
+          <!-- <template v-slot:preview-cover="props">
                         {{ props }}
                     </template> -->
-                    <!-- <template #preview-cover>
+          <!-- <template #preview-cover>
                         2323
                     </template> -->
-                </van-uploader>
-            </template>
-        </van-field>
-        <van-field
-            v-else
-            :name="widget.model"
-            :label="widget.name || '附件'"
-            class="preview"
-        >
-            <template #input>
-                <div class="preview_file" v-for="(item, index) in dataModel" :key="index">
-                    <div class="preview_item">
-                        <i class="van-icon van-icon-description van-uploader__file-icon"></i>
-                        <span style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;width: 2rem;">{{ item.name || item.url }}</span>
-                    </div>
-                    <div class="preview_btn">
-                        <van-button @click="downLoadFile2(item.url)" type="info" size="mini">下载</van-button>
-                        <van-button :disabled="!checkFileSuffix(item.url)" v-if="checkFileSuffix(item.url)" @click="downLoadFile(item.url)" type="info" size="mini">预览</van-button>
-                    </div>
-                </div>
-                <!-- <div class="van-uploader__preview" v-for="(item, index) in dataModel" :key="index">
+        </van-uploader>
+      </template>
+    </van-field>
+    <van-field v-else :name="widget.model" :label="widget.name || '附件'" class="preview">
+      <template #input>
+        <div class="preview_file" v-for="(item, index) in dataModel" :key="index">
+          <div class="preview_item">
+            <i class="van-icon van-icon-description van-uploader__file-icon"></i>
+            <span style="white-space: nowrap; overflow: hidden; text-overflow: ellipsis; width: 2rem">{{ item.name || item.url }}</span>
+          </div>
+          <div class="preview_btn">
+            <van-button @click="downLoadFile2(item.url)" type="info" size="mini">下载</van-button>
+            <van-button :disabled="!checkFileSuffix(item.url)" v-if="checkFileSuffix(item.url)" @click="downLoadFile(item.url)" type="info" size="mini">预览</van-button>
+          </div>
+        </div>
+        <!-- <div class="van-uploader__preview" v-for="(item, index) in dataModel" :key="index">
                     <div class="van-uploader__file" style="width: 0.6rem; height: 0.6rem;" >
                         <i class="van-icon van-icon-description van-uploader__file-icon"></i>
                         <div class="van-uploader__file-name van-ellipsis">
@@ -56,269 +46,267 @@
                         <van-button :disabled="!checkFileSuffix(item.url)" @click="downLoadFile(item.url)" type="info" size="mini">预览</van-button>
                     </div>
                 </div> -->
-            </template>
-        </van-field>
+      </template>
+    </van-field>
 
-        <van-popup position="bottom" v-model="filePreview" style="height: 100%;border-radius: 0;">
-            <van-sticky>
-                <m-header :backUrl="backUrl" :isFixed="false" name="预览" />
-            </van-sticky>
-            <div id="previewIframe" style="height: calc(100vh - 0.44rem);" v-if="filePreview && (fileType == 'xls' || fileType == 'pdf')">
-            </div>
-            <div style="height: calc(100vh - 0.44rem);" v-if="filePreview && fileType == 'doc'">
-            </div>
-            <!-- <div ref="pdf" style="height: calc(100vh - 0.44rem);" v-if="filePreview && fileType == 'pdf'">
+    <van-popup position="bottom" v-model="filePreview" style="height: 100%; border-radius: 0">
+      <van-sticky>
+        <m-header :backUrl="backUrl" :isFixed="false" name="预览" />
+      </van-sticky>
+      <div id="previewIframe" style="height: calc(100vh - 0.44rem)" v-if="filePreview && (fileType == 'xls' || fileType == 'pdf')"></div>
+      <div style="height: calc(100vh - 0.44rem)" v-if="filePreview && fileType == 'doc'"></div>
+      <!-- <div ref="pdf" style="height: calc(100vh - 0.44rem);" v-if="filePreview && fileType == 'pdf'">
             </div> -->
-        </van-popup>
-    </div>
+    </van-popup>
+  </div>
 </template>
 <script>
-import MHeader from '@/components/MHeader'
-import setLoading from '@/common/loading'
-import { uploadFile, oaUploadFile } from '@/views/message/api'
-import { browser } from '@/common/common'
-import { postMessage } from '@/helpers/native-message'
+import MHeader from "@/components/MHeader";
+import setLoading from "@/common/loading";
+import { uploadFile, oaUploadFile } from "@/views/message/api";
+import { browser } from "@/common/common";
+import { postMessage } from "@/helpers/native-message";
 export default {
-    name: 'oFileUpload',
-    components: { MHeader },
-    props: ['widget', 'preview', 'value', 'fileCheck'],
-    data() {
-        // xls, doc, pdf
-        return {
-            dataModel: this.widget.options?.defaultValue || null,
-            filePreview: false,
-            fileType: 'xls',
-            previewUrl: '',
-            numPages: 1,
-            backUrl: {
-                status: true,
-                callBack: () => {
-                    this.filePreview = false;
-                },
-            },
+  name: "oFileUpload",
+  components: { MHeader },
+  props: ["widget", "preview", "value", "fileCheck"],
+  data() {
+    // xls, doc, pdf
+    return {
+      dataModel: this.widget.options?.defaultValue || null,
+      filePreview: false,
+      fileType: "xls",
+      previewUrl: "",
+      numPages: 1,
+      backUrl: {
+        status: true,
+        callBack: () => {
+          this.filePreview = false;
+        },
+      },
+    };
+  },
+  mounted() {
+    // 初始化参数
+    if (this.value) {
+      const widget = this.widget;
+      const model = widget.originModel || widget.model;
+      for (let v in this.value) {
+        if (v == model) {
+          this.dataModel = this.value[v];
         }
+      }
+    }
+  },
+  methods: {
+    checkFileSuffix(url) {
+      let urlArr = url.split(".");
+      let suffix = urlArr[urlArr.length - 1];
+      //  || suffix == 'doc' || suffix == 'docx'
+      if (suffix == "xlsx" || suffix == "xls" || suffix == "pdf") {
+        return true;
+      } else {
+        return false;
+      }
     },
-    mounted() {
-        // 初始化参数
-        if(this.value) {
-            const widget = this.widget
-            const model = widget.originModel || widget.model
-            for(let v in this.value) {
-                if(v == model) {
-                    this.dataModel = this.value[v]
-                }
-            }
+    getFileSuffix(url) {
+      let urlArr = url.split(".");
+      let suffix = urlArr[urlArr.length - 1];
+      if (suffix == "xlsx" || suffix == "xls") {
+        return "xls";
+      } else if (suffix == "doc" || suffix == "docx") {
+        return "doc";
+      } else if (suffix == "pdf") {
+        return "pdf";
+      } else {
+        return "";
+      }
+    },
+    beforeRead(file) {
+      const isLt2M = file.size / 1024 / 1024 < 5;
+      if (!isLt2M) {
+        this.$toast("上传文件大小不能超过 5MB");
+        return false;
+      }
+      return true;
+    },
+    beforeDelete(file, detail) {
+      this.dataModel.splice(detail.index, 1);
+      if (!this.dataModel || (this.dataModel && this.dataModel.length <= 0)) {
+        this.$emit("fileCheckRequired", false);
+      }
+      return true;
+    },
+    async afterRead(file, detail) {
+      // 上传头像
+      try {
+        setLoading(true);
+        file.status = "uploading";
+        file.message = "上传中...";
+        let formData = new FormData();
+        formData.append("file", file.file);
+        let res = null;
+        const query = this.$route.query;
+        if (query.processId) {
+          formData.append("processId", query.processId);
+          formData.append("pluginName", "tencent");
+          res = await oaUploadFile(formData);
+        } else {
+          res = await uploadFile(formData);
         }
+        let result = res.data;
+        if (result.code == 200) {
+          file.status = "done";
+          this.dataModel[detail.index] = {
+            url: result.data.url,
+            name: file.file.name,
+            file: {
+              name: file.file.name,
+            },
+          };
+          // 目前只对 退费模板做处理(id: 19)
+          if (query.processId == 19) {
+            this.$emit("fileCheckRequired", true);
+          }
+        } else {
+          file.status = "failed";
+          file.message = "上传失败";
+          this.$toast(result.msg);
+          this.dataModel.splice(detail.index, 1);
+          return false;
+        }
+        setLoading(false);
+      } catch (err) {
+        setLoading(false);
+        file.status = "failed";
+        file.message = "上传失败";
+        this.dataModel.splice(detail.index, 1);
+        return false;
+      }
     },
-    methods: {
-        checkFileSuffix(url) {
-            let urlArr = url.split('.')
-            let suffix = urlArr[urlArr.length-1]
-            //  || suffix == 'doc' || suffix == 'docx'
-            if(suffix == 'xlsx' || suffix == 'xls' || suffix == 'pdf') {
-                return true
-            } else {
-                return false
-            }
-        },
-        getFileSuffix(url) {
-            let urlArr = url.split('.')
-            let suffix = urlArr[urlArr.length-1]
-            if(suffix == 'xlsx' || suffix == 'xls') {
-                return 'xls'
-            } else if(suffix == 'doc' || suffix == 'docx') {
-                return 'doc'
-            } else if(suffix == 'pdf') {
-                return 'pdf'
-            } else {
-                return ''
-            }
-        },
-        beforeRead(file) {
-            const isLt2M = file.size / 1024 / 1024 < 5
-            if (!isLt2M) {
-                this.$toast('上传文件大小不能超过 5MB')
-                return false
-            }
-            return true
-        },
-        beforeDelete(file, detail) {
-            this.dataModel.splice(detail.index, 1)
-            if(!this.dataModel || this.dataModel && this.dataModel.length <= 0) {
-                this.$emit('fileCheckRequired', false)
-            }
-            return true
-        },
-        async afterRead(file, detail) { // 上传头像
-            try {
-                setLoading(true)
-                file.status = 'uploading'
-                file.message = '上传中...'
-                let formData = new FormData()
-                formData.append('file', file.file)
-                let res = null
-                const query = this.$route.query
-                if(query.processId) {
-                    formData.append('processId', query.processId)
-                    res = await oaUploadFile(formData)
-                } else {
-                    res = await uploadFile(formData)
-                }
-                let result = res.data
-                if(result.code == 200) {
-                    file.status = 'done'
-                    this.dataModel[detail.index] = {
-                        url: result.data.url,
-                        name: file.file.name,
-                        file: {
-                            name: file.file.name
-                        }
-                    }
-                    // 目前只对 退费模板做处理(id: 19)
-                    if(query.processId == 19) {
-                        this.$emit('fileCheckRequired', true)
-                    }
-                } else {
-                    file.status = 'failed'
-                    file.message = '上传失败'
-                    this.$toast(result.msg)
-                    this.dataModel.splice(detail.index, 1)
-                    return false
-                }
-                setLoading(false)
-            } catch (err) {
-                setLoading(false)
-                file.status = 'failed'
-                file.message = '上传失败'
-                this.dataModel.splice(detail.index, 1)
-                return false
-            }
-        },
-        downLoadFile2(file) {
-            this.$toast.loading({
-                duration: 0, // 持续展示 toast
-                forbidClick: true,
-                message: '下载中...',
-            })
-            if(browser().isApp) {
-                postMessage({ api: 'downloadFile', content: { downloadUrl: file } }, () => {
-                    this.$toast.clear()
-                })
+    downLoadFile2(file) {
+      this.$toast.loading({
+        duration: 0, // 持续展示 toast
+        forbidClick: true,
+        message: "下载中...",
+      });
+      if (browser().isApp) {
+        postMessage({ api: "downloadFile", content: { downloadUrl: file } }, () => {
+          this.$toast.clear();
+        });
+      } else {
+        this.$toast.clear();
+        window.location.href = file;
+      }
+    },
+    downLoadFile(file) {
+      // this.previewUrl = 'https://view.officeapps.live.com/op/view.aspx?src=' + file
+      this.filePreview = true;
+      this.fileType = this.getFileSuffix(file);
+
+      if (this.fileType == "xls" || this.fileType == "pdf") {
+        this.$toast.loading({
+          duration: 0, // 持续展示 toast
+          forbidClick: true,
+          message: "加载中...",
+        });
+        let _this = this;
+        this.$nextTick(() => {
+          let iframe = document.createElement("iframe");
+          iframe.id = "preview_iframe";
+          iframe.style.width = "100%";
+          iframe.style.height = "100%";
+          iframe.style.border = "none";
+          if (this.fileType == "xls") {
+            if (browser().android) {
+              iframe.src = "https://api.idocv.com/view/url?url=" + encodeURIComponent(file + "?times=" + new Date().getTime());
             } else {
-                this.$toast.clear()
-                window.location.href = file
+              iframe.src = "https://view.officeapps.live.com/op/view.aspx?src=" + file;
             }
-        },
-        downLoadFile(file) {
-            // this.previewUrl = 'https://view.officeapps.live.com/op/view.aspx?src=' + file
-            this.filePreview = true
-            this.fileType = this.getFileSuffix(file)
+          } else {
+            iframe.src = window.location.origin + "/pdf/web/viewer.html?file=" + encodeURIComponent(file);
+          }
+          if (iframe.attachEvent) {
+            iframe.attachEvent("onload", function () {
+              _this.$toast.clear();
+            });
+          } else {
+            iframe.onload = function () {
+              _this.$toast.clear();
 
-            if(this.fileType == 'xls' || this.fileType == 'pdf') {
-                this.$toast.loading({
-                    duration: 0, // 持续展示 toast
-                    forbidClick: true,
-                    message: '加载中...',
-                })
-                let _this = this
-                this.$nextTick(() => {
-                    let iframe = document.createElement("iframe");
-                    iframe.id = 'preview_iframe'
-                    iframe.style.width = '100%';
-                    iframe.style.height = '100%';
-                    iframe.style.border = 'none';
-                    if(this.fileType == 'xls') {
-                        if(browser().android) {
-                            iframe.src = 'https://api.idocv.com/view/url?url=' + encodeURIComponent(file + '?times=' + new Date().getTime())
-                        } else {
-                            iframe.src = 'https://view.officeapps.live.com/op/view.aspx?src=' + file
-                        }
-                    } else {
-                        iframe.src = window.location.origin + '/pdf/web/viewer.html?file=' + encodeURIComponent(file)
-                    }
-                    if (iframe.attachEvent){
-                        iframe.attachEvent("onload", function(){
-                            _this.$toast.clear()
-                        });
-                    } else {
-                        iframe.onload = function(){
-                            _this.$toast.clear()
-
-                            // setTimeout(() => {
-                            //     let dom =  document.querySelector('#preview_iframe').contentWindow.document
-                            //     let scripts = dom.querySelectorAll('script[src]')
-                            //     if(scripts)
-                            // }, 2000);
-                        };
-                    }
-                    document.querySelector('#previewIframe').appendChild(iframe);
-                })
-            } else if(this.fileType == 'doc') {
-            //     // this.previewUrl = 'https://view.officeapps.live.com/op/view.aspx?src=' + file
-
-            }
-        },
+              // setTimeout(() => {
+              //     let dom =  document.querySelector('#preview_iframe').contentWindow.document
+              //     let scripts = dom.querySelectorAll('script[src]')
+              //     if(scripts)
+              // }, 2000);
+            };
+          }
+          document.querySelector("#previewIframe").appendChild(iframe);
+        });
+      } else if (this.fileType == "doc") {
+        //     // this.previewUrl = 'https://view.officeapps.live.com/op/view.aspx?src=' + file
+      }
     },
-    computed: {
-        options() {
-            return this.widget.options || {}
-        },
-        rule() {
-            let rules = this.widget.rules || []
-            if(rules && rules.length > 0) {
-                rules.forEach(item => {
-                    if(item.pattern) {
-                        item.pattern = eval(item.pattern)
-                    }
-                    // 判断是否上传文件
-                    if(this.fileCheck) {
-                        item.required = false
-                    }
-                });
-            }
-            return rules
-        }
+  },
+  computed: {
+    options() {
+      return this.widget.options || {};
     },
-    watch: {
-        // dataModel: {
-        //     deep: true,
-        //     handler(newValue) {
-        //         if (newValue !== undefined && newValue !== null) {
-        //         }
-        //     }
-        // },
-    }
-}
+    rule() {
+      let rules = this.widget.rules || [];
+      if (rules && rules.length > 0) {
+        rules.forEach((item) => {
+          if (item.pattern) {
+            item.pattern = eval(item.pattern);
+          }
+          // 判断是否上传文件
+          if (this.fileCheck) {
+            item.required = false;
+          }
+        });
+      }
+      return rules;
+    },
+  },
+  watch: {
+    // dataModel: {
+    //     deep: true,
+    //     handler(newValue) {
+    //         if (newValue !== undefined && newValue !== null) {
+    //         }
+    //     }
+    // },
+  },
+};
 </script>
 
-<style lang='less' scoped>
-@import url('./controlCommon.less');
+<style lang="less" scoped>
+@import url("./controlCommon.less");
 .oFileUpload {
-    /deep/.van-uploader__wrapper--disabled {
-        opacity: 0.9;
-    }
-    /deep/.van-field__control--custom {
-        flex-wrap: wrap;
-    }
+  /deep/.van-uploader__wrapper--disabled {
+    opacity: 0.9;
+  }
+  /deep/.van-field__control--custom {
+    flex-wrap: wrap;
+  }
 
-    .preview_file {
-        width: 100%;
-        font-size: 14px;
-        display: flex;
-        justify-content: space-between;
-        background: #f7f7f7;
-        padding: .08rem;
-        margin-bottom: 0.08rem;
-        .preview_item {
-            display: flex;
-            padding-top: .03rem;
-            flex-basis: 70%;
-        }
-        .preview_btn {
-            text-align: right;
-            flex-basis: 30%;
-        }
+  .preview_file {
+    width: 100%;
+    font-size: 14px;
+    display: flex;
+    justify-content: space-between;
+    background: #f7f7f7;
+    padding: 0.08rem;
+    margin-bottom: 0.08rem;
+    .preview_item {
+      display: flex;
+      padding-top: 0.03rem;
+      flex-basis: 70%;
     }
+    .preview_btn {
+      text-align: right;
+      flex-basis: 30%;
+    }
+  }
 }
-
-</style>
+</style>

部分文件因为文件数量过多而无法显示