| | |
| | | :src="pdfimg" |
| | | :preview-src-list="pdfimgsrcList" --> |
| | | > |
| | | <el-image |
| | | ref="imagePreview" |
| | | style="width: 95%; height: 90%" |
| | | :src="pdfimg" |
| | | :preview-src-list="pdfimgsrcList" |
| | | :initial-index="initialIndex" |
| | | @error="handleImageError" |
| | | @load="handleImageLoad" |
| | | > |
| | | </el-image> |
| | | <!-- <div slot="error" class="image-slot"> |
| | | <el-image |
| | | ref="imagePreview" |
| | | style="width: 95%; height: 90%" |
| | | :src="pdfimg" |
| | | @click="handleImageClick(initialIndex)" |
| | | > |
| | | </el-image> |
| | | <custom-image-viewer |
| | | :url-list="pdfimgsrcList" |
| | | :initial-index="currentIndex" |
| | | :visible="viewerVisible" |
| | | @update:visible="viewerVisible = $event" |
| | | @close="handleViewerClose" |
| | | /> |
| | | <!-- <div slot="error" class="image-slot"> |
| | | <i class="el-icon-picture-outline"></i> |
| | | </div> --> |
| | | <!-- </el-image> --> |
| | |
| | | <el-image |
| | | style="width: 95%; height: 90%" |
| | | :src="invoicepdfimg" |
| | | :preview-src-list="invoicepdfimgsrcList" |
| | | @click="invoicehandleImageClick(initialIndex)" |
| | | > |
| | | <!-- <div slot="error" class="image-slot"> |
| | | <i class="el-icon-picture-outline"></i> |
| | | </div> --> |
| | | </el-image> |
| | | <custom-image-viewer |
| | | :url-list="invoicepdfimgsrcList" |
| | | :initial-index="invoicecurrentIndex" |
| | | :visible="invoiceviewerVisible" |
| | | @update:visible="invoiceviewerVisible = $event" |
| | | @close="invoicehandleViewerClose" |
| | | /> |
| | | </div> |
| | | <div v-else class="pdfimgmins">{{ hintitle }}</div> |
| | | </div> |
| | |
| | | |
| | | <script> |
| | | import pdf from "vue-pdf"; |
| | | import Decimal from 'decimal.js'; |
| | | import Treeselect from "@riophae/vue-treeselect"; |
| | | import "@riophae/vue-treeselect/dist/vue-treeselect.css"; |
| | | import { listDonatebaseinfo } from "@/api/project/donatebaseinfo"; |
| | |
| | | import { getInfoBytheUserNo } from "@/api/project/externalperson"; |
| | | import { regionDataPlus, CodeToText } from "element-china-area-data"; |
| | | import Li_area_select from "@/components/Address"; |
| | | import CustomImageViewer from "@/components/CustomImageViewer"; // 根据你的路径调整 |
| | | import { getUser, getUserProfile } from "@/api/system/user"; |
| | | import { treeselect } from "@/api/system/dept"; |
| | | import { getSubsidy } from "@/api/project/travelcity"; |
| | |
| | | components: { |
| | | Treeselect, |
| | | Li_area_select, |
| | | CustomImageViewer, |
| | | pdf |
| | | }, |
| | | name: "Funddetail", |
| | |
| | | invoicefileListto: [], |
| | | invoicepdfimg: "", |
| | | invoicepdfimgsrcList: [], |
| | | currentIndex: 0, // 初始索引 |
| | | invoicecurrentIndex: 0, // 初始索引 |
| | | initialIndex: 0, // 初始索引 |
| | | viewerVisible: false, // 控制预览组件显示 |
| | | invoiceviewerVisible: false, // 控制预览组件显示 |
| | | |
| | | //人员类别 |
| | | persontype: null, |
| | | //到达地 |
| | |
| | | } |
| | | } |
| | | return 0; |
| | | }, |
| | | handleImageClick(index) { |
| | | this.currentIndex = index; |
| | | this.viewerVisible = true; |
| | | }, |
| | | invoicehandleImageClick(index) { |
| | | this.invoicecurrentIndex = index; |
| | | this.invoiceviewerVisible = true; |
| | | }, |
| | | handleViewerClose() { |
| | | this.viewerVisible = false; |
| | | }, |
| | | invoicehandleViewerClose() { |
| | | this.invoiceviewerVisible = false; |
| | | }, |
| | | handleImageError() { |
| | | console.error("图片加载失败"); |
| | |
| | | this.$refs["form"].validate(valid => { |
| | | if (valid) { |
| | | //票据文件处理 |
| | | const addnumber = this.rbPayees.reduce( |
| | | const addnumber = new Decimal(this.rbPayees.reduce( |
| | | (amount, item) => amount + Number(item.amount), |
| | | 0 |
| | | ); |
| | | |
| | | )); |
| | | console.log(this.form.amountrequested,addnumber); |
| | | //校验请款金额合计是否等于报销单金额 |
| | | if (this.form.amountrequested != addnumber) { |
| | | this.$message({ |
| | | message: |
| | | "报销请款表中合计金额不等于报销单的报销金额,请更正后再保存!", |
| | | "报销请款表中合计金额不等于报销单的报销金额,请更正后再保存!!", |
| | | type: "warning" |
| | | }); |
| | | return; |
| | |
| | | (amount, item) => amount + Number(item.amount), |
| | | 0 |
| | | ); |
| | | console.log(addnumber, "addnumber"); |
| | | this.$refs["form"].validate(valid => { |
| | | if (valid) { |
| | | //票据文件处理 |
| | |
| | | if (this.form.amountrequested != addnumber) { |
| | | this.$message({ |
| | | message: |
| | | "报销请款表中合计金额不等于报销单的报销金额,请更正后再保存!", |
| | | "报销请款表中合计金额不等于报销单的报销金额,请更正后再保存!!!", |
| | | type: "warning" |
| | | }); |
| | | return; |