| ¶Ô±ÈÐÂÎļþ | 
 |  |  | 
 |  |  | <template> | 
 |  |  |   <div class="Modifydetailscla"> | 
 |  |  |     <div class="boxdiv"> | 
 |  |  |       <div class="top-text">{{ title }}</div> | 
 |  |  |       <el-form ref="form" :model="form" :rules="rules" label-width="120px"> | 
 |  |  |         <el-row> | 
 |  |  |           <el-col :span="5"> | 
 |  |  |             <el-form-item label="æ¡ä¾å§å" prop="name"> | 
 |  |  |               <el-input v-model="form.name" placeholder="请è¾å
¥å§å" :disabled="true" /> | 
 |  |  |             </el-form-item> | 
 |  |  |           </el-col> | 
 |  |  |           <el-col :span="5"> | 
 |  |  |             <el-form-item label="æ§å«" prop="sex"> | 
 |  |  |               <el-select v-model="form.sex" placeholder="请è¾å
¥æ§å«"> | 
 |  |  |                 <el-option v-for="dict in dict.type.sys_user_sex" :key="dict.label" :label="dict.label" | 
 |  |  |                   :value="parseInt(dict.value)"></el-option> | 
 |  |  |               </el-select> | 
 |  |  |             </el-form-item> | 
 |  |  |           </el-col> | 
 |  |  |           <el-col :span="5"> | 
 |  |  |             <el-form-item label="å¹´é¾" prop="age"> | 
 |  |  |               <el-input v-model="form.age" placeholder="请è¾å
¥å¹´é¾" /> | 
 |  |  |             </el-form-item> | 
 |  |  |           </el-col> | 
 |  |  |           <el-col :span="5"> | 
 |  |  |             <el-form-item label="åºçå¹´æ" prop="borthdate"> | 
 |  |  |               <el-date-picker clearable size="small" v-model="form.borthdate" type="date" value-format="yyyy-MM-dd" | 
 |  |  |                 placeholder="éæ©åºçå¹´æ"> | 
 |  |  |               </el-date-picker> | 
 |  |  |             </el-form-item> | 
 |  |  |           </el-col> | 
 |  |  |         </el-row><el-row><el-col :span="10"><el-form-item label="æ¡ä¾ç¼å·" prop="donateno"> | 
 |  |  |               <el-input v-model="form.donateno" placeholder="请è¾å
¥æ¡ä¾ç¼å·" :disabled="true" /> | 
 |  |  |             </el-form-item> | 
 |  |  |           </el-col> | 
 |  |  |           <el-col :span="5"> | 
 |  |  |             <el-form-item label="æ¡ä¾æ¶é´" prop="donatetime"> | 
 |  |  |               <el-date-picker clearable size="small" v-model="form.donatetime" type="date" value-format="yyyy-MM-dd" | 
 |  |  |                 placeholder="éæ©æç®æ¶é´"> | 
 |  |  |               </el-date-picker> | 
 |  |  |             </el-form-item> | 
 |  |  |           </el-col> | 
 |  |  |           <el-col :span="5"> | 
 |  |  |             <el-form-item label="æç®ç±»å«" prop="donationcategory"> | 
 |  |  |               <el-input v-model="form.donationcategory" placeholder="请è¾å
¥æç®ç±»å«" /> | 
 |  |  |             </el-form-item> | 
 |  |  |           </el-col> | 
 |  |  |         </el-row> | 
 |  |  |         <el-row> | 
 |  |  |           <el-col :span="5"> | 
 |  |  |             <el-form-item label="åºæ¶éé¢" prop="chargeamount"> | 
 |  |  |               <el-input v-model="form.chargeamount" placeholder="请è¾å
¥åºæ¶éé¢" :disabled="true" /> | 
 |  |  |             </el-form-item> | 
 |  |  |           </el-col> | 
 |  |  |           <el-col :span="5"> | 
 |  |  |             <el-form-item label="宿¶éé¢" prop="chargeamounted"> | 
 |  |  |               <el-input v-model="form.chargeamounted" placeholder="请è¾å
¥å®æ¶éé¢" :disabled="true" /> | 
 |  |  |             </el-form-item> | 
 |  |  |           </el-col> | 
 |  |  |           <el-col :span="10"> | 
 |  |  |             <el-form-item label="夿³¨" prop="remark"> | 
 |  |  |               <el-input v-model="form.remark" placeholder="请è¾å
¥å¤æ³¨" /> | 
 |  |  |             </el-form-item> | 
 |  |  |           </el-col> | 
 |  |  |         </el-row> | 
 |  |  |         <el-row style="margin-top: 10px"> | 
 |  |  |           <el-table :data="donorchargeorgans" ref="table" border max-height="800" highlight-current-row | 
 |  |  |             :summary-method="getSummaries" show-summary> | 
 |  |  |             <el-table-column prop="organno" align="center" label="å¨å®ç¼å·" width="90"> | 
 |  |  |               <template slot-scope="scope"> | 
 |  |  |                 <el-input v-model="scope.row.organno" placeholder="å¨å®ç¼å·" :disabled="true" /> | 
 |  |  |               </template> | 
 |  |  |             </el-table-column> | 
 |  |  |             <el-table-column prop="organname" align="center" label="å¨å®åç§°" width="120"> | 
 |  |  |               <template slot-scope="scope"> | 
 |  |  |                 <el-input v-model="scope.row.organname" placeholder="å¨å®åç§°" /> | 
 |  |  |               </template> | 
 |  |  |             </el-table-column> | 
 |  |  |             <el-table-column prop="amount" align="center" label="宿¶éé¢" width="150"> | 
 |  |  |               <template slot-scope="scope"> | 
 |  |  |                 <el-input v-model="scope.row.amount" placeholder="宿¶éé¢" /> | 
 |  |  |               </template> | 
 |  |  |             </el-table-column> | 
 |  |  |             <el-table-column prop="amounttime" align="center" label="宿¶æ¶é´" width="200"> | 
 |  |  |               <template slot-scope="scope"> | 
 |  |  |                 <el-date-picker clearable size="small" style="width: 100%" v-model="scope.row.amounttime" type="date" | 
 |  |  |                   value-format="yyyy-MM-dd HH:mm:ss" placeholder="宿¶æ¶é´"> | 
 |  |  |                 </el-date-picker> </template> | 
 |  |  |             </el-table-column> | 
 |  |  |             <el-table-column prop="organcharge" align="center" label="æ åè´¹ç¨" width="150"> | 
 |  |  |               <template slot-scope="scope"> | 
 |  |  |                 <el-input v-model="scope.row.organcharge" placeholder="æ åè´¹ç¨" /> | 
 |  |  |               </template> | 
 |  |  |             </el-table-column> | 
 |  |  |             <el-table-column prop="hospitalname" align="center" label="æ¥æ¶å»é¢" width="280"> | 
 |  |  |               <template slot-scope="scope"> | 
 |  |  |                 <el-input v-model="scope.row.hospitalname" placeholder="æ¥æ¶å»é¢" /> | 
 |  |  |               </template> | 
 |  |  |             </el-table-column> | 
 |  |  |             <el-table-column prop="organtime" align="center" label="ç§»æ¤æ¶é´" width="200"> | 
 |  |  |               <template slot-scope="scope"> | 
 |  |  |                 <el-date-picker clearable size="small" style="width: 100%" v-model="scope.row.organtime" type="date" | 
 |  |  |                   value-format="yyyy-MM-dd HH:mm:ss" placeholder="ç§»æ¤æ¶é´"> | 
 |  |  |                 </el-date-picker> </template> | 
 |  |  |             </el-table-column> | 
 |  |  |             <el-table-column prop="remark" align="center" label="夿³¨"> | 
 |  |  |               <template slot-scope="scope"> | 
 |  |  |                 <el-input v-model="scope.row.remark" placeholder="夿³¨" /> | 
 |  |  |               </template> | 
 |  |  |             </el-table-column> | 
 |  |  |           </el-table> | 
 |  |  |         </el-row> | 
 |  |  |       </el-form> | 
 |  |  |       <div slot="footer" class="dialog-footer"> | 
 |  |  |         <el-button type="primary" @click="submitForm" v-if="operationType == 'add' || operationType == 'update'">ä¿ | 
 |  |  |           å</el-button> | 
 |  |  |         <el-button type="primary" @click="cancel">å
³é</el-button> | 
 |  |  |       </div> | 
 |  |  |     </div> | 
 |  |  |  | 
 |  |  |     <el-dialog v-dialogDrags :modal="false" :close-on-click-modal="false" :title="pdftitle" :visible.sync="pdfVisible" | 
 |  |  |       width="60%"> | 
 |  |  |       <el-tabs style="margin-top: 20px;" v-model="activeName" type="border-card" @tab-click="handleClick"> | 
 |  |  |         <el-tab-pane label="æ®ééä»¶" :name="1"> | 
 |  |  |           <div class="pdfimg"> | 
 |  |  |             <div class="box-pdf"> | 
 |  |  |               <div> | 
 |  |  |                 <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="fileListto" | 
 |  |  |                   :show-file-list="false" multiple drag :headers="headers" :on-success="(response, file, fileList) => | 
 |  |  |                     uploadSccess(response, file, fileList) | 
 |  |  |                     " :on-preview="downFile" :disabled="operationType == 'detail'" :on-error="handleUploadError" | 
 |  |  |                   :on-remove="remove" accept="image/*,.pdf"> | 
 |  |  |                   <i class="el-icon-upload"></i> | 
 |  |  |                   <div class="el-upload__text"> | 
 |  |  |                     å°ç¥¨æ®æå°æ¤å¤ï¼æ | 
 |  |  |                     <em><el-button :disabled="operationType == 'detail'" size="small" type="primary">ç¹å»ä¸ä¼ </el-button></em> | 
 |  |  |                   </div> | 
 |  |  |                 </el-upload> | 
 |  |  |                 <el-table :data="fileListto" @row-click="downFile" style="width: 100%" height="400"> | 
 |  |  |                   <el-table-column prop="name" :show-overflow-tooltip="true" label="åç§°"> | 
 |  |  |                     <template slot-scope="scope"> | 
 |  |  |                       <i style="color:#409EFF" class=" el-icon-s-order" />{{ | 
 |  |  |                         scope.row.name | 
 |  |  |                       }} | 
 |  |  |                     </template> | 
 |  |  |                   </el-table-column> | 
 |  |  |  | 
 |  |  |                   <el-table-column prop="name" width="180" :show-overflow-tooltip="true" label="åè½"> | 
 |  |  |                     <template slot-scope="scope"> | 
 |  |  |                       <el-button type="primary" size="mini" | 
 |  |  |                         @click.native.prevent.stop="deletedowfile(scope.row)">å é¤</el-button> | 
 |  |  |                       <el-button type="primary" size="mini" | 
 |  |  |                         @click.native.prevent.stop="moveupdowfile(scope.row)">ä¸ç§»</el-button> | 
 |  |  |                     </template> | 
 |  |  |                   </el-table-column> | 
 |  |  |                 </el-table> | 
 |  |  |               </div> | 
 |  |  |             </div> | 
 |  |  |  | 
 |  |  |             <div v-if="this.previewpdf && pdfimgsrcList.length" class="pdfimgmin"> | 
 |  |  |               <!-- <img :src="pdfimg" /> --> | 
 |  |  |               <el-image style="width: 95%; height: 90%" :src="pdfimg" :preview-src-list="pdfimgsrcList"> | 
 |  |  |                 <!-- <div slot="error" class="image-slot"> | 
 |  |  |               <i class="el-icon-picture-outline"></i> | 
 |  |  |             </div> --> | 
 |  |  |               </el-image> | 
 |  |  |             </div> | 
 |  |  |             <div v-else class="pdfimgmins">{{ hintitle }}</div> | 
 |  |  |           </div> | 
 |  |  |         </el-tab-pane> | 
 |  |  |         <el-tab-pane label="å票æä»¶" :name="2"> | 
 |  |  |           <div class="pdfimg"> | 
 |  |  |             <div class="box-pdf"> | 
 |  |  |               <div> | 
 |  |  |                 <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="invoicefileList" | 
 |  |  |                   :show-file-list="false" multiple drag :headers="headers" :on-success="(response, file, fileList) => | 
 |  |  |                     uploadSccess(response, file, fileList) | 
 |  |  |                     " :on-preview="downFile" :disabled="operationType == 'detail'" :on-error="handleUploadError" | 
 |  |  |                   :on-remove="remove" accept="image/*,.pdf"> | 
 |  |  |                   <i class="el-icon-upload"></i> | 
 |  |  |                   <div class="el-upload__text"> | 
 |  |  |                     å°å票æä»¶æå°æ¤å¤ï¼æ | 
 |  |  |                     <em><el-button :disabled="operationType == 'detail'" size="small" type="primary">ç¹å»ä¸ä¼ </el-button></em> | 
 |  |  |                   </div> | 
 |  |  |                 </el-upload> | 
 |  |  |                 <el-table :data="invoicefileListto" @row-click="downFile" style="width: 100%" height="400"> | 
 |  |  |                   <el-table-column prop="name" :show-overflow-tooltip="true" label="åç§°"> | 
 |  |  |                     <template slot-scope="scope"> | 
 |  |  |                       <i style="color:#409EFF" class=" el-icon-s-order" />{{ | 
 |  |  |                         scope.row.name | 
 |  |  |                       }} | 
 |  |  |                     </template> | 
 |  |  |                   </el-table-column> | 
 |  |  |  | 
 |  |  |                   <el-table-column prop="name" width="180" :show-overflow-tooltip="true" label="åè½"> | 
 |  |  |                     <template slot-scope="scope"> | 
 |  |  |                       <el-button type="primary" size="mini" | 
 |  |  |                         @click.native.prevent.stop="deletedowfile(scope.row)">å é¤</el-button> | 
 |  |  |                       <el-button type="primary" size="mini" | 
 |  |  |                         @click.native.prevent.stop="moveupdowfile(scope.row)">ä¸ç§»</el-button> | 
 |  |  |                     </template> | 
 |  |  |                   </el-table-column> | 
 |  |  |                 </el-table> | 
 |  |  |               </div> | 
 |  |  |             </div> | 
 |  |  |  | 
 |  |  |             <div v-if="this.previewpdf && invoicepdfimgsrcList.length" class="pdfimgmin"> | 
 |  |  |               <el-image style="width: 95%; height: 90%" :src="invoicepdfimg" :preview-src-list="invoicepdfimgsrcList"> | 
 |  |  |               </el-image> | 
 |  |  |             </div> | 
 |  |  |             <div v-else class="pdfimgmins">{{ hintitle }}</div> | 
 |  |  |           </div> | 
 |  |  |         </el-tab-pane> | 
 |  |  |       </el-tabs> | 
 |  |  |     </el-dialog> | 
 |  |  |     <el-dialog title="æç¤º" :visible.sync="Savereminder" width="30%"> | 
 |  |  |       <el-alert :title="'æ¨å·²æ·»å ' + | 
 |  |  |         totalquantity + | 
 |  |  |         'æ¡æ°æ®ï¼ä¸ºé²æ¢æ°æ®ä¸¢å¤±æ¯å¦æäº¤ä¿ååç»§ç»æ·»å ã' | 
 |  |  |         " type="warning"> | 
 |  |  |       </el-alert> | 
 |  |  |       <span slot="footer" class="dialog-footer"> | 
 |  |  |         <el-button @click="unsave">å æ¶</el-button> | 
 |  |  |         <el-button type="primary" @click="Savenow">ç¡® å®</el-button> | 
 |  |  |       </span> | 
 |  |  |     </el-dialog> | 
 |  |  |   </div> | 
 |  |  | </template> | 
 |  |  |  | 
 |  |  | <script> | 
 |  |  | import pdf from "vue-pdf"; | 
 |  |  | import Treeselect from "@riophae/vue-treeselect"; | 
 |  |  | import "@riophae/vue-treeselect/dist/vue-treeselect.css"; | 
 |  |  | import { regionDataPlus, CodeToText } from "element-china-area-data"; | 
 |  |  | import { getDonorcharge, addDonorcharge, updateDonorcharge, listDonorchargeorgan, getDonorchargeorgan, delDonorchargeorgan, addDonorchargeorgan, updateDonorchargeorgan, exportDonorchargeorgan } from "@/api/project/donorcharge"; | 
 |  |  | import { listDonatebaseinfo } from "@/api/project/donatebaseinfo"; | 
 |  |  | import { listDonatecomporgan } from "@/api/project/donatecompletioninfo"; | 
 |  |  | import { listOrgancharge } from "@/api/project/organcharge"; | 
 |  |  | import Li_area_select from "@/components/Address"; | 
 |  |  | import { getUserProfile } from "@/api/system/user"; | 
 |  |  | import { getToken } from "@/utils/auth"; | 
 |  |  | import debounce from "lodash/debounce"; | 
 |  |  | export default { | 
 |  |  |   components: { | 
 |  |  |     Treeselect, | 
 |  |  |     Li_area_select, | 
 |  |  |     pdf | 
 |  |  |   }, | 
 |  |  |   dicts: [ | 
 |  |  |     "sys_user_sex", | 
 |  |  |     "sys_0_1", | 
 |  |  |   ], | 
 |  |  |   name: "Donorcharge", | 
 |  |  |   data() { | 
 |  |  |     return { | 
 |  |  |       activeName: 1, //æä»¶ç±»å | 
 |  |  |       // é¨é¨æ é项 | 
 |  |  |  | 
 |  |  |       //ç¥¨æ®æä»¶ | 
 |  |  |       pdftitle: "", | 
 |  |  |       pdfimg: "", | 
 |  |  |       pdfVisible: false, | 
 |  |  |       costtypeobj: { | 
 |  |  |         value: 0, | 
 |  |  |         label: "" | 
 |  |  |       }, | 
 |  |  |       pdfimgsrcList: [], | 
 |  |  |       Savereminder: false, //æéä¿åå¼¹æ¡ | 
 |  |  |       Reminderquantity: 0, //æéæ°é | 
 |  |  |       totalquantity: 0, //æ»æ°é | 
 |  |  |  | 
 |  |  |       hintitle: "éä¸å·¦ä¾§å·²ä¸ä¼ æä»¶é¢è§æ¥ç", | 
 |  |  |       atpresent: "", | 
 |  |  |       iframeurl: "", | 
 |  |  |       options: regionDataPlus, | 
 |  |  |       selectedOptions: [], | 
 |  |  |       value1: "", | 
 |  |  |       previewpdf: false, | 
 |  |  |       // é®ç½©å± | 
 |  |  |       loading: true, | 
 |  |  |       // å¯¼åºé®ç½©å± | 
 |  |  |       exportLoading: false, | 
 |  |  |       // ç½ç»è¯·æ±å¤´ | 
 |  |  |       Networkheader: null, | 
 |  |  |  | 
 |  |  |       // é䏿°ç» | 
 |  |  |       ids: [], | 
 |  |  |       // éå个ç¦ç¨ | 
 |  |  |       single: true, | 
 |  |  |       // éå¤ä¸ªç¦ç¨ | 
 |  |  |       multiple: true, | 
 |  |  |       // æ¾ç¤ºæç´¢æ¡ä»¶ | 
 |  |  |       showSearch: true, | 
 |  |  |       // æ»æ¡æ° | 
 |  |  |       total: 0, | 
 |  |  |       // æç®æ¡ä¾å¨å®åè¡¨æ ¼æ°æ® | 
 |  |  |       donorchargeList: [], | 
 |  |  |       donorchargeorgans: [], | 
 |  |  |       // å¼¹åºå±æ é¢ | 
 |  |  |       title: "", | 
 |  |  |       // æ¯å¦æ¾ç¤ºå¼¹åºå± | 
 |  |  |       open: false, | 
 |  |  |       // æ¥è¯¢è´¹ç¨è¡¨åæ° | 
 |  |  |       queryParams: { | 
 |  |  |         pageNum: 1, | 
 |  |  |         pageSize: 10, | 
 |  |  |         infoid: null, | 
 |  |  |         name: null, | 
 |  |  |         donationcategory: null, | 
 |  |  |         donateorgan: null, | 
 |  |  |         chargeamounted: null, | 
 |  |  |       }, | 
 |  |  |       // æ¥è¯¢è´¹ç¨å¨å®è¡¨åæ° | 
 |  |  |       organParams: { | 
 |  |  |         pageNum: 1, | 
 |  |  |         pageSize: 10, | 
 |  |  |         donorchargeid: null, | 
 |  |  |       }, | 
 |  |  |  | 
 |  |  |       // å½åç¨æ·ä¿¡æ¯ | 
 |  |  |       userprofile: {}, | 
 |  |  |       // è¡¨ååæ° | 
 |  |  |       form: {}, | 
 |  |  |       reimbursementList: [], | 
 |  |  |  | 
 |  |  |       // è¡¨åæ ¡éª | 
 |  |  |       rules: { | 
 |  |  |         reason: [ | 
 |  |  |           { required: true, message: "请è¾å
¥åºå·®äºç±", trigger: "blur" } | 
 |  |  |         ], | 
 |  |  |         deptmentname: [ | 
 |  |  |           { required: true, message: "请è¾å
¥æå±ä¸å¡ç»", trigger: "blur" } | 
 |  |  |         ] | 
 |  |  |       }, | 
 |  |  |  | 
 |  |  |       baselist: [], | 
 |  |  |       donorList: [], | 
 |  |  |       organchargelist: [], | 
 |  |  |       standardlevel: 0, | 
 |  |  |       defaultperson: {}, | 
 |  |  |       fundflowList: [], | 
 |  |  |       showApproveRecordDialog: false, | 
 |  |  |  | 
 |  |  |       // å½ååæ®ID | 
 |  |  |       curId: 0, | 
 |  |  |       curCase: null, | 
 |  |  |       //ä¸å¡æä½ç±»å | 
 |  |  |       operationType: "edit", | 
 |  |  |  | 
 |  |  |       //ä¸ä¼ å票æä»¶è·¯å¾ | 
 |  |  |       uploadFileUrl: process.env.VUE_APP_BASE_API + "/common/upload", | 
 |  |  |       //æä»¶å表 | 
 |  |  |       fileList: [], | 
 |  |  |       fileListto: [], | 
 |  |  |       invoicefileList: [], | 
 |  |  |       invoicefileListto: [], | 
 |  |  |       invoicepdfimg: "", | 
 |  |  |       invoicepdfimgsrcList: [], | 
 |  |  |       invoDatatop: [], | 
 |  |  |       //人åç±»å« | 
 |  |  |       persontype: null, | 
 |  |  |  | 
 |  |  |       headers: { | 
 |  |  |         Authorization: "Bearer " + getToken() | 
 |  |  |       }, | 
 |  |  |  | 
 |  |  |       jurisdiction: false, | 
 |  |  |  | 
 |  |  |       //ä¿åæé®æ§å¶ | 
 |  |  |       idisabled: false | 
 |  |  |     }; | 
 |  |  |   }, | 
 |  |  |  | 
 |  |  |   created() { | 
 |  |  |     console.log(234); | 
 |  |  |     this.Getnetworkheader(); | 
 |  |  |  | 
 |  |  |     //è·åç»å½è
ä¿¡æ¯ | 
 |  |  |     getUserProfile().then(response => { | 
 |  |  |       this.userprofile = response.data; | 
 |  |  |       this.defaultperson = response.data; | 
 |  |  |       this.standardlevel = response.data.standardlevel; | 
 |  |  |     }); | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     //è·ååæ° | 
 |  |  |     this.getroute(); | 
 |  |  |   }, | 
 |  |  |  | 
 |  |  |   mounted() { | 
 |  |  |     window.addEventListener("beforeunload", e => this.beforeunloadHandler(e)); | 
 |  |  |   }, | 
 |  |  |  | 
 |  |  |   updated() { | 
 |  |  |     this.$nextTick(() => { | 
 |  |  |       this.$refs["table"].doLayout(); | 
 |  |  |     }); | 
 |  |  |   }, | 
 |  |  |    | 
 |  |  |   destroyed() { | 
 |  |  |     window.removeEventListener("beforeunload", e => this.beforeunloadFn(e)); | 
 |  |  |   }, //çå½å¨æ - éæ¯å®æ | 
 |  |  |  | 
 |  |  |   methods: { | 
 |  |  |     // æµè§å¨é¡µé¢å
³éæå·æ°æç¤º | 
 |  |  |     beforeunloadHandler(e) { | 
 |  |  |       if ( | 
 |  |  |         (JSON.stringify(this.form) == sessionStorage.getItem("apiform") && | 
 |  |  |           JSON.stringify(this.donorchargeorgans) == | 
 |  |  |           sessionStorage.getItem("apifunddetail")) || | 
 |  |  |         !sessionStorage.getItem("apifunddetail") | 
 |  |  |       ) { | 
 |  |  |       } else { | 
 |  |  |         this._beforeUnload_time = new Date().getTime(); | 
 |  |  |         e = e || window.event; | 
 |  |  |         if (e) { | 
 |  |  |           e.returnValue = "å
³éæç¤º"; | 
 |  |  |         } | 
 |  |  |         return "å
³éæç¤º"; | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  |  | 
 |  |  |     handleUploadError() { }, | 
 |  |  |     // è·å请æ±å¤´ | 
 |  |  |     Getnetworkheader() { | 
 |  |  |       let string = window.location.href; | 
 |  |  |       if (string.includes("9091")) { | 
 |  |  |         const index = string.indexOf("9091"); | 
 |  |  |         this.Networkheader = string.slice(0, index + 4); // æªå9091åå
¶åé¨å符 | 
 |  |  |       } else { | 
 |  |  |         const index = string.indexOf("8032"); | 
 |  |  |         this.Networkheader = string.slice(0, index + 4); // æªå8032åå
¶åé¨å符 | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  |     // åç¥¨åæ¢ | 
 |  |  |     handleClick(tab, event) { | 
 |  |  |       if (this.activeName == 1) { | 
 |  |  |         this.pdftitle = "å
±" + this.pdfimgsrcList.length + "项"; | 
 |  |  |       } else { | 
 |  |  |         this.pdftitle = "å
±" + this.invoicepdfimgsrcList.length + "项"; | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  |     remove(file, fileList) { | 
 |  |  |       const donorchargeorgans = [...this.donorchargeorgans]; | 
 |  |  |       if (this.activeName == 1) { | 
 |  |  |         this.fileListto.splice(this.fileListto.indexOf(file), 1); | 
 |  |  |         donorchargeorgans[this.atpresent].annexfilesList = this.fileListto; | 
 |  |  |       } else { | 
 |  |  |         this.invoicefileListto.splice(this.invoicefileListto.indexOf(file), 1); | 
 |  |  |         donorchargeorgans[this.atpresent].invoicefilesList = this.invoicefileListto; | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  |  | 
 |  |  |     handleExceed() { | 
 |  |  |       this.$message.error(`ä¸ä¼ æä»¶æ°éä¸è½è¶
è¿ ${5} ä¸ª!`); | 
 |  |  |     }, | 
 |  |  |  | 
 |  |  |     //æä»¶ä¸ä¼ æååè° | 
 |  |  |     uploadSccess(response, file, fileList) { | 
 |  |  |       this.donorchargeorgans; | 
 |  |  |       //è·å票æ®ä¿¡æ¯ä½ç½® | 
 |  |  |       if (this.activeName == 1) { | 
 |  |  |         if (response.code == 200) { | 
 |  |  |           // this.form.filename = file.raw.name; | 
 |  |  |           this.previewpdf = true; | 
 |  |  |           this.$modal.msgSuccess(response.msg); | 
 |  |  |           this.fileListto.push({ | 
 |  |  |             name: file.name, | 
 |  |  |             url: response.fileName | 
 |  |  |           }); | 
 |  |  |           this.pdfimgsrcList.push( | 
 |  |  |             this.Networkheader + "/prod-api" + response.fileName | 
 |  |  |           ); | 
 |  |  |  | 
 |  |  |           this.pdftitle = "å
±" + this.pdfimgsrcList.length + "项"; | 
 |  |  |           this.pdfimg = this.Networkheader + "/prod-api" + response.fileName; | 
 |  |  |           this.donorchargeorgans[this.atpresent].annexfilesList = this.fileListto; | 
 |  |  |         } else { | 
 |  |  |           console.log(response.msg); | 
 |  |  |         } | 
 |  |  |       } else { | 
 |  |  |         if (response.code == 200) { | 
 |  |  |           // this.form.filename = file.raw.name; | 
 |  |  |           this.previewpdf = true; | 
 |  |  |           this.$modal.msgSuccess(response.msg); | 
 |  |  |           this.invoicefileListto.push({ | 
 |  |  |             name: file.name, | 
 |  |  |             url: response.fileName | 
 |  |  |           }); | 
 |  |  |           this.invoicepdfimgsrcList.push( | 
 |  |  |             this.Networkheader + "/prod-api" + response.fileName | 
 |  |  |           ); | 
 |  |  |  | 
 |  |  |           this.pdftitle = "å
±" + this.invoicepdfimgsrcList.length + "项"; | 
 |  |  |           this.pdfimg = this.Networkheader + "/prod-api" + response.fileName; | 
 |  |  |           this.donorchargeorgans[ | 
 |  |  |             this.atpresent | 
 |  |  |           ].invoicefilesList = this.invoicefileListto; | 
 |  |  |         } else { | 
 |  |  |           console.log(response.msg); | 
 |  |  |         } | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  |     // ç¹å»ç¥¨æ® | 
 |  |  |     Filepopup(index, rows, row) { | 
 |  |  |       this.tableDatatop = []; | 
 |  |  |       this.pdfimgsrcList = []; | 
 |  |  |       this.invoDatatop = []; | 
 |  |  |       this.invoicepdfimgsrcList = []; | 
 |  |  |       this.invoDatatop.push(row); | 
 |  |  |       this.tableDatatop.push(row); | 
 |  |  |       this.atpresent = index; | 
 |  |  |       this.pdfVisible = true; | 
 |  |  |  | 
 |  |  |  | 
 |  |  |       if (this.donorchargeorgans[index].annexfilesList) { | 
 |  |  |         this.previewpdf = true; | 
 |  |  |         this.fileListto = this.donorchargeorgans[index].annexfilesList; | 
 |  |  |         this.pdfimg = this.Networkheader + "/prod-api" + this.fileListto[0].url; | 
 |  |  |         this.fileListto.forEach(item => { | 
 |  |  |           this.pdfimgsrcList.push(this.Networkheader + "/prod-api" + item.url); | 
 |  |  |         }); | 
 |  |  |       } else { | 
 |  |  |         this.fileListto = []; | 
 |  |  |         this.pdfimg = ""; | 
 |  |  |         this.pdftitle = ""; | 
 |  |  |       } | 
 |  |  |       // -å票æä»¶ | 
 |  |  |       if (this.donorchargeorgans[index].invoicefilesList) { | 
 |  |  |         this.previewpdf = true; | 
 |  |  |         this.invoicefileListto = this.donorchargeorgans[index].invoicefilesList; | 
 |  |  |         this.invoicepdfimg = | 
 |  |  |           this.Networkheader + "/prod-api" + this.invoicefileListto[0].url; | 
 |  |  |         this.invoicefileListto.forEach(item => { | 
 |  |  |           this.invoicepdfimgsrcList.push( | 
 |  |  |             this.Networkheader + "/prod-api" + item.url | 
 |  |  |           ); | 
 |  |  |         }); | 
 |  |  |  | 
 |  |  |       } else { | 
 |  |  |         this.invoicefileListto = []; | 
 |  |  |         this.invoicepdfimg = ""; | 
 |  |  |         this.pdftitle = ""; | 
 |  |  |       } | 
 |  |  |  | 
 |  |  |       if (this.activeName == 1) { | 
 |  |  |         this.pdftitle = "å
±" + this.pdfimgsrcList.length + "项"; | 
 |  |  |       } else { | 
 |  |  |         this.pdftitle = "å
±" + this.invoicepdfimgsrcList.length + "项"; | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  |  | 
 |  |  |     // ç¹å»å·²ä¸ä¼ æä»¶ | 
 |  |  |     downFile(item) { | 
 |  |  |       if (this.activeName == 1) { | 
 |  |  |         this.pdftitle = | 
 |  |  |           "å
±" + this.pdfimgsrcList.length + "项ï¼å½åéä¸" + item.name; | 
 |  |  |         let name = item.name.split("."); | 
 |  |  |         if (name[1] == "pdf") { | 
 |  |  |           this.$modal.msgWarning("å½åæä»¶æä¸æ¯æé¢è§"); | 
 |  |  |           this.previewpdf = false; | 
 |  |  |           this.hintitle = "å½åæä»¶æä¸æ¯æé¢è§"; | 
 |  |  |         } else if (name[1] == "jpg" || "png") { | 
 |  |  |           this.previewpdf = true; | 
 |  |  |           if (item.url) { | 
 |  |  |             this.pdfimg = this.Networkheader + "/prod-api" + item.url; | 
 |  |  |           } else { | 
 |  |  |             this.pdfimg = this.Networkheader + "/prod-api" + item.response.url; | 
 |  |  |           } | 
 |  |  |         } else { | 
 |  |  |           this.hintitle = "å½åæä»¶æä¸æ¯æé¢è§"; | 
 |  |  |           this.$modal.msgWarning("å½åæä»¶æä¸æ¯æé¢è§"); | 
 |  |  |           this.previewpdf = false; | 
 |  |  |         } | 
 |  |  |       } else { | 
 |  |  |         console.log(item, "ç¹å»æä»¶æ¿item"); | 
 |  |  |         this.pdftitle = | 
 |  |  |           "å
±" + this.invoicepdfimgsrcList.length + "项ï¼å½åéä¸" + item.name; | 
 |  |  |         let name = item.name.split("."); | 
 |  |  |         if (name[1] == "pdf") { | 
 |  |  |           this.$modal.msgWarning("å½åæä»¶æä¸æ¯æé¢è§"); | 
 |  |  |           this.previewpdf = false; | 
 |  |  |           this.hintitle = "å½åæä»¶æä¸æ¯æé¢è§"; | 
 |  |  |         } else if (name[1] == "jpg" || "png") { | 
 |  |  |           this.previewpdf = true; | 
 |  |  |           if (item.url) { | 
 |  |  |             this.invoicepdfimg = this.Networkheader + "/prod-api" + item.url; | 
 |  |  |           } else { | 
 |  |  |             this.invoicepdfimg = | 
 |  |  |               this.Networkheader + "/prod-api" + item.response.url; | 
 |  |  |           } | 
 |  |  |         } else { | 
 |  |  |           this.hintitle = "å½åæä»¶æä¸æ¯æé¢è§"; | 
 |  |  |           this.$modal.msgWarning("å½åæä»¶æä¸æ¯æé¢è§"); | 
 |  |  |           this.previewpdf = false; | 
 |  |  |         } | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  |     getIndexInArray(arr, obj) { | 
 |  |  |       return arr.indexOf(obj); | 
 |  |  |     }, | 
 |  |  |     // ç¹å»å é¤ | 
 |  |  |     deletedowfile(row) { | 
 |  |  |       if (this.activeName == 1) { | 
 |  |  |         const indexlist = this.getIndexInArray( | 
 |  |  |           this.pdfimgsrcList, | 
 |  |  |           this.Networkheader + "/prod-api" + row.url | 
 |  |  |         ); | 
 |  |  |         this.pdfimgsrcList.splice(indexlist, 1); | 
 |  |  |         const index = this.getIndexInArray(this.fileListto, row); | 
 |  |  |         this.fileListto.splice(index, 1); | 
 |  |  |       } else { | 
 |  |  |         const indexlist = this.getIndexInArray( | 
 |  |  |           this.invoicepdfimgsrcList, | 
 |  |  |           this.Networkheader + "/prod-api" + row.url | 
 |  |  |         ); | 
 |  |  |         this.invoicepdfimgsrcList.splice(indexlist, 1); | 
 |  |  |         const index = this.getIndexInArray(this.invoicefileListto, row); | 
 |  |  |         this.invoicefileListto.splice(index, 1); | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  |     // ç¹å»ä¸ç§» | 
 |  |  |     moveupdowfile(row) { | 
 |  |  |       if (this.activeName == 1) { | 
 |  |  |         const index = this.getIndexInArray(this.fileListto, row); | 
 |  |  |         const item = this.fileListto.splice(index, 1)[0]; // ç§»é¤æå®ç´¢å¼å¤çå
ç´ ï¼å¹¶ä¿åå°itemåéä¸ | 
 |  |  |         this.fileListto.splice(index - 1, 0, item); // å°itemæå
¥å°ç´¢å¼ä½ç½®çåä¸ä½ | 
 |  |  |       } else { | 
 |  |  |         const index = this.getIndexInArray(this.invoicefileListto, row); | 
 |  |  |         const item = this.invoicefileListto.splice(index, 1)[0]; // ç§»é¤æå®ç´¢å¼å¤çå
ç´ ï¼å¹¶ä¿åå°itemåéä¸ | 
 |  |  |         this.invoicefileListto.splice(index - 1, 0, item); // å°itemæå
¥å°ç´¢å¼ä½ç½®çåä¸ä½ | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  |  | 
 |  |  |     // è¡¨åéç½® | 
 |  |  |     reset() { | 
 |  |  |       this.form = { | 
 |  |  |         id: null, | 
 |  |  |         infoid: null, | 
 |  |  |         donateno: null, | 
 |  |  |         donatetime: null, | 
 |  |  |         name: null, | 
 |  |  |         borthdate: null, | 
 |  |  |         sex: null, | 
 |  |  |         age: null, | 
 |  |  |         donationcategory: null, | 
 |  |  |         donateorgan: null, | 
 |  |  |         chargeamount: null, | 
 |  |  |         chargeamounted: null, | 
 |  |  |         remark: null, | 
 |  |  |         delFlag: null, | 
 |  |  |         createBy: null, | 
 |  |  |         createTime: null, | 
 |  |  |         updateBy: null, | 
 |  |  |         updateTime: null | 
 |  |  |       }; | 
 |  |  |       this.resetForm("form"); | 
 |  |  |     }, | 
 |  |  |  | 
 |  |  |     /** éè¿åæ°è·åä¸å¡ç±»å */ | 
 |  |  |     getroute() { | 
 |  |  |       //éæ©ä¸å¡ç±»å:1ãæ°å¢ï¼2ãä¿®æ¹ï¼3ãæ¥ç | 
 |  |  |       this.operationType = this.$route.query.operation; | 
 |  |  |       this.curId = this.$route.query.id; | 
 |  |  |       this.curCase = this.$route.query.data; | 
 |  |  |       console.log("this.$route.query",this.$route.query); | 
 |  |  |  | 
 |  |  |       if (this.operationType == "add") { | 
 |  |  |         this.title = "æ°å»ºæ¡ä¾å¨å®è´¹ç¨è¡¨"; | 
 |  |  |         this.handleAdd(); | 
 |  |  |         console.log("1") | 
 |  |  |  | 
 |  |  |       } else if (this.operationType == "update") { | 
 |  |  |         this.title = "ä¿®æ¹æ¡ä¾å¨å®è´¹ç¨è¡¨"; | 
 |  |  |         this.handleUpdate(); | 
 |  |  |         console.log("2") | 
 |  |  |  | 
 |  |  |       } else if (this.operationType == "detail") { | 
 |  |  |         this.title = "æ¥çæ¡ä¾å¨å®è´¹ç¨è¡¨"; | 
 |  |  |         this.handleDetail(); | 
 |  |  |         console.log("3") | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  |  | 
 |  |  |     /** éç½®æé®æä½ */ | 
 |  |  |     resetQuery() { | 
 |  |  |       this.resetForm("queryForm"); | 
 |  |  |       this.handleQuery(); | 
 |  |  |     }, | 
 |  |  |  | 
 |  |  |     // åæ¶æé® | 
 |  |  |     cancel() { | 
 |  |  |       this.$store.dispatch("tagsView/delView", this.$route); | 
 |  |  |       this.$router.go(-1); | 
 |  |  |     }, | 
 |  |  |  | 
 |  |  |     // å¤éæ¡é䏿°æ® | 
 |  |  |     handleSelectionChange(selection) { | 
 |  |  |       this.ids = selection.map(item => item.id) | 
 |  |  |       this.single = selection.length !== 1 | 
 |  |  |       this.multiple = !selection.length | 
 |  |  |     }, | 
 |  |  |  | 
 |  |  |     /** æ°å¢æé®æä½ */ | 
 |  |  |     handleAdd() { | 
 |  |  |       this.reset(); | 
 |  |  |       this.open = true; | 
 |  |  |       this.title = "æ°å¢æç®æ¡ä¾å¨å®è´¹ç¨è¡¨"; | 
 |  |  |  | 
 |  |  |       if (this.curCase) { | 
 |  |  |         this.form.infoid = this.curCase.id; | 
 |  |  |         this.form.donateno = this.curCase.donorno; | 
 |  |  |         this.form.donatetime = this.curCase.donatetime; | 
 |  |  |         this.form.name = this.curCase.name; | 
 |  |  |         this.form.borthdate = this.curCase.birthday; | 
 |  |  |         this.form.sex = this.curCase.sex; | 
 |  |  |         this.form.age = this.curCase.age; | 
 |  |  |         this.form.donationcategory = this.curCase.donationcategory; | 
 |  |  |  | 
 |  |  |         //è·å宿ç»è®°çå¨å®è¡¨ | 
 |  |  |         if (this.curCase.id > 0) { } | 
 |  |  |         else { this.curCase.id = 0 } | 
 |  |  |         let searchParam = { | 
 |  |  |           infoid: this.curCase.id | 
 |  |  |         }; | 
 |  |  |         listDonatecomporgan(searchParam).then(res => { | 
 |  |  |           if (res.code == 200) { | 
 |  |  |             // æ¥è¯¢å¨å®è´¹ç¨è¡¨ | 
 |  |  |             let tempParam = { | 
 |  |  |               organcode: null, | 
 |  |  |               organname: null, | 
 |  |  |               charge: null | 
 |  |  |             }; | 
 |  |  |             listOrgancharge(tempParam).then(res1 => { | 
 |  |  |               if (res1.code == 200) { | 
 |  |  |                 this.organchargelist = res1.rows; | 
 |  |  |               } | 
 |  |  |  | 
 |  |  |               //æå
¥å¨å®è¡¨ | 
 |  |  |               res.rows.forEach(item => { | 
 |  |  |                 //è·åè´¹ç¨éé¢ | 
 |  |  |                 this.organchargelist.map(rescharge => { | 
 |  |  |                   if (rescharge.organcode == item.organno) { | 
 |  |  |                     this.donorchargeorgans.push({ | 
 |  |  |                       organno: item.organno, | 
 |  |  |                       organname: item.organname, | 
 |  |  |                       organcharge: rescharge.charge, | 
 |  |  |                       infoid: item.infoid, | 
 |  |  |                       hospitalname: item.transplanthospitalname, | 
 |  |  |                       hospitalno: item.transplanthospitalno, | 
 |  |  |                       organtime: item.transplanttime, | 
 |  |  |                       chargestate: '0' | 
 |  |  |                     }); | 
 |  |  |                   } | 
 |  |  |                 }); | 
 |  |  |               }); | 
 |  |  |             }); | 
 |  |  |           } | 
 |  |  |         }); | 
 |  |  |       } | 
 |  |  |     }, | 
 |  |  |  | 
 |  |  |     /** ä¿®æ¹æé®æä½ */ | 
 |  |  |     handleUpdate() { | 
 |  |  |       this.reset(); | 
 |  |  |       this.open = true; | 
 |  |  |  | 
 |  |  |       getDonorcharge(this.curId).then(response => { | 
 |  |  |         this.form = response.data; | 
 |  |  |         this.open = true; | 
 |  |  |         this.title = "ä¿®æ¹æç®æ¡ä¾å¨å®è´¹ç¨è¡¨"; | 
 |  |  |  | 
 |  |  |         //å¨å®è´¹ç¨ä¿¡æ¯ | 
 |  |  |         this.organParams.donorchargeid = this.curId; | 
 |  |  |         listDonorchargeorgan(this.organParams).then(res => { | 
 |  |  |           this.donorchargeorgans = res.rows; | 
 |  |  |           if (this.donorchargeorgans.length > 0) { | 
 |  |  |           } else { | 
 |  |  |             this.addRow(0); | 
 |  |  |           } | 
 |  |  |         }); | 
 |  |  |       }); | 
 |  |  |     }, | 
 |  |  |  | 
 |  |  |     /** ä¿®æ¹æ¥çæä½ */ | 
 |  |  |     handleDetail() { | 
 |  |  |       this.reset(); | 
 |  |  |       this.open = true; | 
 |  |  |  | 
 |  |  |       getDonorcharge(this.curId).then(response => { | 
 |  |  |         this.form = response.data; | 
 |  |  |         this.open = true; | 
 |  |  |         this.title = "æ¥çæç®æ¡ä¾å¨å®è´¹ç¨è¡¨"; | 
 |  |  |  | 
 |  |  |         //å¨å®è´¹ç¨ä¿¡æ¯ | 
 |  |  |         this.organParams.donorchargeid = this.curId; | 
 |  |  |         listDonorchargeorgan(this.organParams).then(res => { | 
 |  |  |           this.donorchargeorgans = res.rows; | 
 |  |  |           if (this.donorchargeorgans.length > 0) { | 
 |  |  |           } else { | 
 |  |  |             this.addRow(0); | 
 |  |  |           } | 
 |  |  |         }); | 
 |  |  |       }); | 
 |  |  |     }, | 
 |  |  |  | 
 |  |  |     /** æäº¤ä¿åæé® */ | 
 |  |  |     submitForm: debounce(function (data) { | 
 |  |  |       this.$refs["form"].validate(valid => { | 
 |  |  |         if (valid) { | 
 |  |  |           if (this.form.id != null) { | 
 |  |  |             updateDonorcharge(this.form).then(response => { | 
 |  |  |               if (response.code == 200) { | 
 |  |  |                 this.$modal.msgSuccess("ä¿åæåï¼"); | 
 |  |  |               } | 
 |  |  |               this.open = false; | 
 |  |  |             }); | 
 |  |  |           } else { | 
 |  |  |             addDonorcharge(this.form).then(response => { | 
 |  |  |               if (response.code == 200) { | 
 |  |  |                 console.log(response); | 
 |  |  |                 this.$modal.msgSuccess("ä¿åæåï¼"); | 
 |  |  |               } | 
 |  |  |               this.open = false; | 
 |  |  |             }); | 
 |  |  |           } | 
 |  |  |         } | 
 |  |  |       }); | 
 |  |  |     }, 500), | 
 |  |  |  | 
 |  |  |     //计ç®è´¹ç¨å计 | 
 |  |  |     sumTotalFee() { | 
 |  |  |       let allSum = 0; | 
 |  |  |  | 
 |  |  |       //æç®è
å®¶å±è´¹ç¨ | 
 |  |  |       if (!isNaN(parseFloat(this.form.donoramount))) { | 
 |  |  |         allSum += parseFloat(this.form.donoramount); | 
 |  |  |       } | 
 |  |  |  | 
 |  |  |       //æ¥éæç»è´¹ç¨ | 
 |  |  |       try { | 
 |  |  |         for (let i = 0; i < this.donorchargeorgans.length; i++) { | 
 |  |  |           /* | 
 |  |  |           let totalFee = 0; | 
 |  |  |           //计ç®å½åæ¥éå
容费ç¨å计 | 
 |  |  |           if (!isNaN(parseFloat(this.donorchargeorgans[i].total))) { | 
 |  |  |             totalFee += parseFloat(this.donorchargeorgans[i].total); | 
 |  |  |           } | 
 |  |  |           if (!isNaN(parseFloat(this.donorchargeorgans[i].cityfee))) { | 
 |  |  |             totalFee += parseFloat(this.donorchargeorgans[i].cityfee); | 
 |  |  |           } | 
 |  |  |           if (!isNaN(parseFloat(this.donorchargeorgans[i].hotelexpense))) { | 
 |  |  |             totalFee += parseFloat(this.donorchargeorgans[i].hotelexpense); | 
 |  |  |           } | 
 |  |  |           if (!isNaN(parseFloat(this.donorchargeorgans[i].otherexpense))) { | 
 |  |  |             totalFee += parseFloat(this.donorchargeorgans[i].otherexpense); | 
 |  |  |           } | 
 |  |  |           if (!isNaN(parseFloat(this.donorchargeorgans[i].foodexpenses))) { | 
 |  |  |             totalFee += parseFloat(this.donorchargeorgans[i].foodexpenses); | 
 |  |  |           } | 
 |  |  |           if (!isNaN(parseFloat(this.donorchargeorgans[i].foodallowance))) { | 
 |  |  |             totalFee += parseFloat(this.donorchargeorgans[i].foodallowance); | 
 |  |  |           } | 
 |  |  |           if (!isNaN(parseFloat(this.donorchargeorgans[i].otherfeeamount))) { | 
 |  |  |             totalFee += parseFloat(this.donorchargeorgans[i].otherfeeamount); | 
 |  |  |           } | 
 |  |  |           this.donorchargeorgans[i].total = parseFloat(totalFee).toFixed(2); | 
 |  |  |           this.$set(this.donorchargeorgans, i, this.donorchargeorgans[i]); | 
 |  |  |           */ | 
 |  |  |  | 
 |  |  |           if (!isNaN(parseFloat(this.donorchargeorgans[i].total))) { | 
 |  |  |             allSum += parseFloat(this.donorchargeorgans[i].total); | 
 |  |  |           } | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         this.form.amountrequested = allSum.toFixed(2); | 
 |  |  |       } catch { } | 
 |  |  |     }, | 
 |  |  |  | 
 |  |  |     //表格å计 | 
 |  |  |     getSummaries(param) { | 
 |  |  |       const { columns, data } = param; | 
 |  |  |       const sums = []; | 
 |  |  |       var columnnames = ["organno", "organname", "amount", "amounttime", "organcharge", "hospitalname", "organtime", "remark"]; | 
 |  |  |       columns.forEach((column, index) => { | 
 |  |  |         if (index === 0) { | 
 |  |  |           sums[index] = "å计"; | 
 |  |  |           return; | 
 |  |  |         } | 
 |  |  |         // if (index === 2) { | 
 |  |  |         //   sums[index] = this.form.chargeamounted; | 
 |  |  |         //   return; | 
 |  |  |         // }  | 
 |  |  |         // if (index === 4) { | 
 |  |  |         //   sums[index] = this.form.chargeamount; | 
 |  |  |         //   return; | 
 |  |  |         // } | 
 |  |  |         //å»é¤é¨ååæ®µè®¡ç® | 
 |  |  |         if (columnnames.indexOf(column.property) > -1) { | 
 |  |  |           return; | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         const values = data.map(item => Number(item[column.property])); | 
 |  |  |         if (!values.every(value => isNaN(value))) { | 
 |  |  |           sums[index] = values.reduce((prev, curr) => { | 
 |  |  |             const value = Number(curr); | 
 |  |  |             if (!isNaN(value)) { | 
 |  |  |               return prev + curr; | 
 |  |  |             } else { | 
 |  |  |               return prev; | 
 |  |  |             } | 
 |  |  |           }, 0); | 
 |  |  |           sums[index] = sums[index].toFixed(2); // ä¿ç2ä½å°æ°ï¼è§£å³å°æ°å计å; | 
 |  |  |         } else { | 
 |  |  |           sums[index] = ""; | 
 |  |  |         } | 
 |  |  |       }); | 
 |  |  |       return sums; | 
 |  |  |     } | 
 |  |  |   } | 
 |  |  | }; | 
 |  |  | </script> | 
 |  |  |  | 
 |  |  | <style lang="scss" scoped> | 
 |  |  | .Modifydetailscla { | 
 |  |  |   padding: 10px; | 
 |  |  |  | 
 |  |  |   .boxdiv { | 
 |  |  |     font-size: 18px; | 
 |  |  |     padding: 0 30px; | 
 |  |  |     padding-bottom: 60px; | 
 |  |  |  | 
 |  |  |     .top-text { | 
 |  |  |       text-align: center; | 
 |  |  |  | 
 |  |  |       font-size: 23px; | 
 |  |  |       font-weight: 600; | 
 |  |  |       margin: 20px 0; | 
 |  |  |       margin-bottom: 50px; | 
 |  |  |     } | 
 |  |  |  | 
 |  |  |     .dialog-footer { | 
 |  |  |       text-align: left; | 
 |  |  |       margin-top: 10px; | 
 |  |  |     } | 
 |  |  |   } | 
 |  |  | } | 
 |  |  |  | 
 |  |  | .upload-demo { | 
 |  |  |   text-align: center; | 
 |  |  | } | 
 |  |  |  | 
 |  |  | .pdfimg { | 
 |  |  |   display: flex; // text-align: center; | 
 |  |  |   width: 100%; | 
 |  |  |   height: 600px; | 
 |  |  |  | 
 |  |  |   .box-pdf { | 
 |  |  |     width: 400px; | 
 |  |  |     padding-top: 20px; | 
 |  |  |     margin-right: 30px; | 
 |  |  |     border: 1px solid #dcdfe6; | 
 |  |  |     -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), | 
 |  |  |       0 0 6px 0 rgba(0, 0, 0, 0.04); | 
 |  |  |     box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1); // <- Add this to fix. | 
 |  |  |   } | 
 |  |  |  | 
 |  |  |   .pdftit { | 
 |  |  |     width: 200px; | 
 |  |  |     padding: 20px; | 
 |  |  |     font-size: 18px; | 
 |  |  |   } | 
 |  |  |  | 
 |  |  |   .pdftit:hover { | 
 |  |  |     background: #c0cef7; | 
 |  |  |   } | 
 |  |  |  | 
 |  |  |   .pdfimgmin { | 
 |  |  |     width: 60%; | 
 |  |  |  | 
 |  |  |     img { | 
 |  |  |       width: 100%; | 
 |  |  |     } | 
 |  |  |   } | 
 |  |  |  | 
 |  |  |   .pdfimgmins { | 
 |  |  |     font-size: 28px; | 
 |  |  |     width: 60%; | 
 |  |  |     text-align: center; | 
 |  |  |   } | 
 |  |  | } | 
 |  |  |  | 
 |  |  | ::v-deep .el-input--medium .el-input__inner { | 
 |  |  |   height: 36px; | 
 |  |  |   line-height: 36px; | 
 |  |  |   text-align: center; | 
 |  |  | } | 
 |  |  |  | 
 |  |  | ::v-deep .el-alert__title { | 
 |  |  |   font-size: 20px; | 
 |  |  |   line-height: 20px; | 
 |  |  | } | 
 |  |  | </style> |