|  |  |  | 
|---|
|  |  |  | <el-form ref="form" :model="form" :rules="rules" label-width="120px"> | 
|---|
|  |  |  | <el-row> | 
|---|
|  |  |  | <el-col :span="5"> | 
|---|
|  |  |  | <el-form-item label="申请日期" prop="createTime"> | 
|---|
|  |  |  | <el-form-item label="报销单号" prop="bh"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="form.bh" | 
|---|
|  |  |  | :disabled="true" | 
|---|
|  |  |  | placeholder="报销单号" | 
|---|
|  |  |  | clearable | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="5"> | 
|---|
|  |  |  | <el-form-item label="申请日期" prop="applyTime"> | 
|---|
|  |  |  | <el-date-picker | 
|---|
|  |  |  | clearable | 
|---|
|  |  |  | :disabled="true" | 
|---|
|  |  |  | style="width: 100%" | 
|---|
|  |  |  | v-model="form.createTime" | 
|---|
|  |  |  | v-model="form.applyTime" | 
|---|
|  |  |  | type="date" | 
|---|
|  |  |  | value-format="yyyy-MM-dd HH:mm:ss" | 
|---|
|  |  |  | placeholder="申请日期" | 
|---|
|  |  |  | placeholder="日   期" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-date-picker> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="5"> | 
|---|
|  |  |  | <el-form-item label="所属组别" prop="deptmentname"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="form.deptmentname" | 
|---|
|  |  |  | placeholder="请输入所属组别" | 
|---|
|  |  |  | clearable | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="5"> | 
|---|
|  |  |  | <el-form-item label="组长" prop="managername"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="form.managername" | 
|---|
|  |  |  | placeholder="请输入组长" | 
|---|
|  |  |  | clearable | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | <el-form-item label="联系电话" prop="phone"> | 
|---|
|  |  |  | <el-input v-model="form.phone" placeholder="请输入联系电话" /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | 
|---|
|  |  |  | }}</el-radio> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-col :span="5"> | 
|---|
|  |  |  | <el-form-item label="联系电话" prop="phone"> | 
|---|
|  |  |  | <el-input v-model="form.phone" placeholder="请输入联系电话" /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="5"> | 
|---|
|  |  |  | <el-form-item label="捐献者" prop="name"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | :disabled="true" | 
|---|
|  |  |  | v-model="form.donorname" | 
|---|
|  |  |  | placeholder="请输入捐献者姓名" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="5"> | 
|---|
|  |  |  | <el-col :span="5" v-if="ismanager == true"> | 
|---|
|  |  |  | <el-form-item label="申请金额" prop="pretaxcost"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="form.pretaxcost" | 
|---|
|  |  |  | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="5"> | 
|---|
|  |  |  | <el-form-item label="所属组别" prop="deptmentname"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="form.deptmentname" | 
|---|
|  |  |  | placeholder="请输入所属组别" | 
|---|
|  |  |  | clearable | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="5"> | 
|---|
|  |  |  | <el-form-item label="组长" prop="managername"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="form.managername" | 
|---|
|  |  |  | placeholder="请输入组长" | 
|---|
|  |  |  | clearable | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row style="text-align: left"> | 
|---|
|  |  |  | <el-col :span="8"> | 
|---|
|  |  |  | <el-col :span="5"> | 
|---|
|  |  |  | <el-form-item label="捐献案例" prop="name"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | :disabled="true" | 
|---|
|  |  |  | v-model="form.donorname" | 
|---|
|  |  |  | placeholder="请输入捐献者姓名" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </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-col :span="5"> | 
|---|
|  |  |  | <el-form-item label="申请状态" prop="recordstatus"> | 
|---|
|  |  |  | 
|---|
|  |  |  | </el-col>--> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row style="margin-top: 5px; margin-bottom: 5px" /> | 
|---|
|  |  |  | <el-row style="margin-bottom: 10px" v-if="businessType == '1'"> | 
|---|
|  |  |  | <el-col :span="4"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | @click.native.prevent="importFeeItems" | 
|---|
|  |  |  | type="primary" | 
|---|
|  |  |  | size="small" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | 导入服务项目 | 
|---|
|  |  |  | </el-button> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row v-if="jurisdiction"> | 
|---|
|  |  |  | <!-- <el-alert title="当前为查看状态,不支持修改存储。" type="warning"> | 
|---|
|  |  |  | </el-alert> --> | 
|---|
|  |  |  | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-alert> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row v-if="businessType == 2"> | 
|---|
|  |  |  | <el-col :span="3" | 
|---|
|  |  |  | ><div style="margin-bottom: 15px;"> | 
|---|
|  |  |  | <el-row> | 
|---|
|  |  |  | <el-col :span="3" v-if="businessType == '1'"> | 
|---|
|  |  |  | <div style="margin-bottom: 15px;"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="success" | 
|---|
|  |  |  | type="primary" | 
|---|
|  |  |  | icon="el-icon-download" | 
|---|
|  |  |  | @click="Batchentry" | 
|---|
|  |  |  | >批量录入</el-button | 
|---|
|  |  |  | size="small" | 
|---|
|  |  |  | @click.native.prevent="importFeeItems" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </div></el-col | 
|---|
|  |  |  | 批量导入服务项目 | 
|---|
|  |  |  | </el-button> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="3" v-if="businessType == 2"> | 
|---|
|  |  |  | <div style="margin-bottom: 15px;"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="primary" | 
|---|
|  |  |  | icon="el-icon-download" | 
|---|
|  |  |  | size="small" | 
|---|
|  |  |  | @click="Batchentry" | 
|---|
|  |  |  | >批量录入专家</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col | 
|---|
|  |  |  | :span="3" | 
|---|
|  |  |  | v-if=" | 
|---|
|  |  |  | userprofile.nickName == '陈慕华' && | 
|---|
|  |  |  | (businessType == '1' || businessType == '2') | 
|---|
|  |  |  | " | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row v-if="businessType == 1 && operationType == 'check'"> | 
|---|
|  |  |  | <el-col :span="3" | 
|---|
|  |  |  | ><div style="margin-bottom: 15px;"> | 
|---|
|  |  |  | <div style="margin-bottom: 15px;"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="success" | 
|---|
|  |  |  | icon="el-icon-edit-outline" | 
|---|
|  |  |  | size="small" | 
|---|
|  |  |  | @click="Manualcalculationfn" | 
|---|
|  |  |  | >计算明细</el-button | 
|---|
|  |  |  | >计算个税</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </div></el-col | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row> | 
|---|
|  |  |  | <el-table | 
|---|
|  |  |  | 
|---|
|  |  |  | <el-input v-model="scope.row.orderno" placeholder="序号" /> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <!-- | 
|---|
|  |  |  | <el-table-column prop="itemcode" align="center" label="项目编号" show-overflow-tooltip="" | 
|---|
|  |  |  | v-if="form.applytype == '1'"> | 
|---|
|  |  |  | </el-table-column>--> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | prop="applytype" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | 
|---|
|  |  |  | prop="servicesscope" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | label="服务说明" | 
|---|
|  |  |  | v-if="form.applytype == '1'" | 
|---|
|  |  |  | v-if="businessType == '1'" | 
|---|
|  |  |  | width="180" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | v-if=" | 
|---|
|  |  |  | businessType == 2 || | 
|---|
|  |  |  | businessType == 3 || | 
|---|
|  |  |  | businessType == 4 || | 
|---|
|  |  |  | ismanager == true | 
|---|
|  |  |  | " | 
|---|
|  |  |  | prop="amount" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | :label="amountLabel" | 
|---|
|  |  |  | :label="amountlabel" | 
|---|
|  |  |  | width="120" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <!-- | 
|---|
|  |  |  | <el-select v-model="scope.row.amount" placeholder="税前金额" clearable filterable allow-create | 
|---|
|  |  |  | @change="selectamount(scope.row)"> | 
|---|
|  |  |  | <el-option v-for="dict in scope.row.rowfeeblocks" :key="dict.expensedescribe" :label="dict.expense" | 
|---|
|  |  |  | :value="dict.expense"></el-option> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | --> | 
|---|
|  |  |  | <el-input v-model="scope.row.amount" placeholder="金额" /> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | prop="taxamount" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | label="扣税金额" | 
|---|
|  |  |  | width="120" | 
|---|
|  |  |  | v-if=" | 
|---|
|  |  |  | ismanager == true && | 
|---|
|  |  |  | (businessType == '1' || businessType == '2') | 
|---|
|  |  |  | " | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="scope.row.amount" | 
|---|
|  |  |  | placeholder="金额" | 
|---|
|  |  |  | @blur=" | 
|---|
|  |  |  | val => { | 
|---|
|  |  |  | calculateTax(scope.row, 'A'); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | " | 
|---|
|  |  |  | v-model="scope.row.taxamount" | 
|---|
|  |  |  | placeholder="扣税金额" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | 
|---|
|  |  |  | label="税后金额" | 
|---|
|  |  |  | width="120" | 
|---|
|  |  |  | v-if=" | 
|---|
|  |  |  | (this.ismanager == true) & | 
|---|
|  |  |  | (form.applytype == '1' || form.applytype == '2') | 
|---|
|  |  |  | ismanager == true && | 
|---|
|  |  |  | (businessType == '1' || businessType == '2') | 
|---|
|  |  |  | " | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="scope.row.taxedamount" | 
|---|
|  |  |  | placeholder="税后金额" | 
|---|
|  |  |  | @blur=" | 
|---|
|  |  |  | val => { | 
|---|
|  |  |  | calculateTax(scope.row, 'B'); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | " | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | prop="beneficiaryname" | 
|---|
|  |  |  | column-key="sdad" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | label="姓名" | 
|---|
|  |  |  | width="120" | 
|---|
|  |  |  | v-if="form.applytype == '1' || form.applytype == '2'" | 
|---|
|  |  |  | :label="beneficiarylabel" | 
|---|
|  |  |  | width="200" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="primary" | 
|---|
|  |  |  | plain | 
|---|
|  |  |  | @click="ShowDetailDialog(scope, 'expert')" | 
|---|
|  |  |  | @click="showSelectionDialog(scope, 'account')" | 
|---|
|  |  |  | >{{ | 
|---|
|  |  |  | scope.row.beneficiaryname | 
|---|
|  |  |  | ? scope.row.beneficiaryname | 
|---|
|  |  |  | : "点击选择" | 
|---|
|  |  |  | }}</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <!-- <el-select | 
|---|
|  |  |  | filterable | 
|---|
|  |  |  | allow-create | 
|---|
|  |  |  | ref="getReportname" | 
|---|
|  |  |  | default-first-option | 
|---|
|  |  |  | @change="selectExpert(scope.row)" | 
|---|
|  |  |  | v-model="scope.row.beneficiaryname" | 
|---|
|  |  |  | placeholder="请选择" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in expertlist" | 
|---|
|  |  |  | :key="item.reportNo" | 
|---|
|  |  |  | :label="item.reportName" | 
|---|
|  |  |  | :value="item.reportName" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-select> --> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | prop="unitno" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | label="单位名称" | 
|---|
|  |  |  | label="专家所在单位" | 
|---|
|  |  |  | width="250" | 
|---|
|  |  |  | v-if="form.applytype != '4' && form.applytype != '3'" | 
|---|
|  |  |  | v-if="businessType == '1' || businessType == '2'" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="primary" | 
|---|
|  |  |  | plain | 
|---|
|  |  |  | @click="ShowDetailDialog(scope, 'unit')" | 
|---|
|  |  |  | @click="showSelectionDialog(scope, 'workunit')" | 
|---|
|  |  |  | >{{ | 
|---|
|  |  |  | scope.row.unitname ? scope.row.unitname : "点击选择" | 
|---|
|  |  |  | }}</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <!-- <el-select | 
|---|
|  |  |  | v-model="scope.row.unitno" | 
|---|
|  |  |  | placeholder="单位" | 
|---|
|  |  |  | clearable | 
|---|
|  |  |  | filterable | 
|---|
|  |  |  | allow-create | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="(spec, index) in unitList" | 
|---|
|  |  |  | :key="index" | 
|---|
|  |  |  | :label="spec.organizationname" | 
|---|
|  |  |  | :value="spec.organizationid" | 
|---|
|  |  |  | ></el-option> | 
|---|
|  |  |  | </el-select> --> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | prop="beneficiaryname" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | label="单位/个人" | 
|---|
|  |  |  | width="250" | 
|---|
|  |  |  | v-if="form.applytype == '4' || form.applytype == '3'" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="primary" | 
|---|
|  |  |  | plain | 
|---|
|  |  |  | @click="ShowDetailDialog(scope, 'expert')" | 
|---|
|  |  |  | >{{ | 
|---|
|  |  |  | scope.row.beneficiaryname | 
|---|
|  |  |  | ? scope.row.beneficiaryname | 
|---|
|  |  |  | : "点击选择" | 
|---|
|  |  |  | }}</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <!-- <el-select | 
|---|
|  |  |  | v-model="scope.row.unitno" | 
|---|
|  |  |  | placeholder="单位" | 
|---|
|  |  |  | clearable | 
|---|
|  |  |  | filterable | 
|---|
|  |  |  | allow-create | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="(spec, index) in unitList" | 
|---|
|  |  |  | :key="index" | 
|---|
|  |  |  | :label="spec.organizationname" | 
|---|
|  |  |  | :value="spec.organizationid" | 
|---|
|  |  |  | ></el-option> | 
|---|
|  |  |  | </el-select> --> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | prop="title" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | label="职称" | 
|---|
|  |  |  | width="120" | 
|---|
|  |  |  | v-if="form.applytype == '1' || form.applytype == '2'" | 
|---|
|  |  |  | v-if="businessType == '1' || businessType == '2'" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <el-input v-model="scope.row.title" placeholder="职称" /> | 
|---|
|  |  |  | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | label="身份证号" | 
|---|
|  |  |  | width="200" | 
|---|
|  |  |  | v-if="form.applytype == '1' || form.applytype == '2'" | 
|---|
|  |  |  | v-if="businessType == '1' || businessType == '2'" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <el-input v-model="scope.row.idcardno" placeholder="身份证号" /> | 
|---|
|  |  |  | <el-form-item label-width="0"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | :disabled="userprofile.nickName != '陈慕华'" | 
|---|
|  |  |  | v-model.number="scope.row.idcardno" | 
|---|
|  |  |  | @input="tableParValueChange1(scope.row)" | 
|---|
|  |  |  | placeholder="身份证号" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | 
|---|
|  |  |  | label="开户银行" | 
|---|
|  |  |  | width="200" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <!-- v-if="form.applytype != '4'" --> | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | :disabled="userprofile.nickName != '陈慕华'" | 
|---|
|  |  |  | v-model="scope.row.depositbank" | 
|---|
|  |  |  | placeholder="开户银行" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | :disabled="userprofile.nickName != '陈慕华'" | 
|---|
|  |  |  | v-model="scope.row.bankcardno" | 
|---|
|  |  |  | placeholder="银行帐号" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | prop="itemdescrisca" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | width="330" | 
|---|
|  |  |  | label="项目说明" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | type="textarea" | 
|---|
|  |  |  | :rows="2" | 
|---|
|  |  |  | v-model="scope.row.itemdescribe" | 
|---|
|  |  |  | placeholder="项目说明" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | width="330" | 
|---|
|  |  |  | label="备注" | 
|---|
|  |  |  | v-show="ismanager == true" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | 
|---|
|  |  |  | " | 
|---|
|  |  |  | type="text" | 
|---|
|  |  |  | size="small" | 
|---|
|  |  |  | v-if="businessType == 3 || businessType == 4" | 
|---|
|  |  |  | v-if=" | 
|---|
|  |  |  | businessType == 2 || | 
|---|
|  |  |  | businessType == 3 || | 
|---|
|  |  |  | businessType == 4 || | 
|---|
|  |  |  | businessType == 1 | 
|---|
|  |  |  | " | 
|---|
|  |  |  | >票据</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | </el-table> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <!-- | 
|---|
|  |  |  | <el-row> | 
|---|
|  |  |  | <el-col :span="7"> | 
|---|
|  |  |  | <el-form-item label="预支金额" prop="prepaidamount"> | 
|---|
|  |  |  | <el-input v-model="form.prepaidamount" placeholder="申请金额" /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row> | 
|---|
|  |  |  | <el-col :span="7"> | 
|---|
|  |  |  | <el-form-item label="OPO中心签字" prop="opochecker"> | 
|---|
|  |  |  | <el-input v-model="form.opochecker" placeholder="opo中心签字" /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="8"> | 
|---|
|  |  |  | <el-form-item label="财务副院长" prop="finvicepresident"> | 
|---|
|  |  |  | <el-input v-model="form.finvicepresident" placeholder="财务副院长" /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="7"> | 
|---|
|  |  |  | <el-form-item label="业务副院长" prop="busvicepresident"> | 
|---|
|  |  |  | <el-input v-model="form.busvicepresident" placeholder="业务副院长" /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="7"> | 
|---|
|  |  |  | <el-form-item label="办公室主任" prop="officedirector"> | 
|---|
|  |  |  | <el-input v-model="form.officedirector" placeholder="请输入办公室主任" /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="8"> | 
|---|
|  |  |  | <el-form-item label="财务部负责人" prop="financedirector"> | 
|---|
|  |  |  | <el-input v-model="form.financedirector" placeholder="请输入财务部负责人" /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="7"> | 
|---|
|  |  |  | <el-form-item label="财务审核" prop="financechecher"> | 
|---|
|  |  |  | <el-input v-model="form.financechecher" placeholder="请输入财务审核" /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | --> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-row> | 
|---|
|  |  |  | <el-col :span="12"> | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="primary" | 
|---|
|  |  |  | type="danger" | 
|---|
|  |  |  | size="mini" | 
|---|
|  |  |  | @click.native.prevent.stop="deletedowfile(scope.row)" | 
|---|
|  |  |  | >删除</el-button | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-row | 
|---|
|  |  |  | style="margin-top: 25px; margin-bottom: 5px" | 
|---|
|  |  |  | v-if="operationType == 'check'" | 
|---|
|  |  |  | v-if="operationType == 'check' && userprofile.nickName == '陈慕华'" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-col :span="7"> | 
|---|
|  |  |  | <el-form-item label="预审状态" prop="infoid"> | 
|---|
|  |  |  | <el-radio-group | 
|---|
|  |  |  | v-model="form.checkstatus" | 
|---|
|  |  |  | align="left" | 
|---|
|  |  |  | :disabled="userprofile.nickName != '陈慕华'" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-radio label="1">待预审</el-radio> | 
|---|
|  |  |  | <el-radio label="2">预审通过等待材料</el-radio> | 
|---|
|  |  |  | <el-radio label="3">已收到报销材料</el-radio> | 
|---|
|  |  |  | <el-col :span="12"> | 
|---|
|  |  |  | <el-form-item label="预审材料" prop="infoid"> | 
|---|
|  |  |  | <el-radio-group v-model="form.checkstatus" align="left"> | 
|---|
|  |  |  | <el-radio :label="1">待申请材料</el-radio> | 
|---|
|  |  |  | <el-radio :label="2">审核通过等待邮寄纸质材料</el-radio> | 
|---|
|  |  |  | <el-radio :label="3">已收到报销材料</el-radio> | 
|---|
|  |  |  | </el-radio-group> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="12"> | 
|---|
|  |  |  | <el-form-item label="算税状态" prop="infoid"> | 
|---|
|  |  |  | <el-radio-group v-model="form.istax" align="left"> | 
|---|
|  |  |  | <el-radio :label="2">待算税</el-radio> | 
|---|
|  |  |  | <el-radio :label="1">已算税</el-radio> | 
|---|
|  |  |  | </el-radio-group> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | 
|---|
|  |  |  | style="margin-top: 5px; margin-bottom: 5px" | 
|---|
|  |  |  | v-if="operationType == 'check'" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-col :span="7"> | 
|---|
|  |  |  | <el-col :span="20"> | 
|---|
|  |  |  | <el-form-item label="审核结果" align="left"> | 
|---|
|  |  |  | <el-radio-group v-model="checkObj.flowlevelone" align="left"> | 
|---|
|  |  |  | <el-radio label="1">通过</el-radio> | 
|---|
|  |  |  | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-row v-if="operationType == 'check'"> | 
|---|
|  |  |  | <el-col :span="17"> | 
|---|
|  |  |  | <el-form-item label="审核备注" align="left"> | 
|---|
|  |  |  | 
|---|
|  |  |  | v-if=" | 
|---|
|  |  |  | operationType == 'add' || | 
|---|
|  |  |  | operationType == 'update' || | 
|---|
|  |  |  | ismanager == true || | 
|---|
|  |  |  | beforehandType == '1' | 
|---|
|  |  |  | ismanager == true | 
|---|
|  |  |  | " | 
|---|
|  |  |  | >提交保存</el-button | 
|---|
|  |  |  | >保存</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="success" | 
|---|
|  |  |  | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="primary" | 
|---|
|  |  |  | @click="checksubmit" | 
|---|
|  |  |  | v-if="operationType == 'check' && beforehandType != '1'" | 
|---|
|  |  |  | v-if="operationType == 'check'" | 
|---|
|  |  |  | >提交审核</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-button @click="cancel">关 闭</el-button> | 
|---|
|  |  |  | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-dialog | 
|---|
|  |  |  | :visible.sync="showSelectionDialog" | 
|---|
|  |  |  | :visible.sync="showselectiondialog" | 
|---|
|  |  |  | :close-on-click-modal="false" | 
|---|
|  |  |  | :title="'单位/个人信息选择'" | 
|---|
|  |  |  | width="500px" | 
|---|
|  |  |  | :title="'账户信息/单位信息选择'" | 
|---|
|  |  |  | width="650px" | 
|---|
|  |  |  | style="text-align: center" | 
|---|
|  |  |  | v-loading="loading" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-form ref="funddetailForm" :model="funddetailForm"> | 
|---|
|  |  |  | <el-row v-if="businessType != 4 && businessType != 3"> | 
|---|
|  |  |  | <el-col | 
|---|
|  |  |  | :span="24" | 
|---|
|  |  |  | v-if="selectionType == 'expert' && businessType != 4" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-form-item label="请选择专家信息:" prop="expertfrom"> | 
|---|
|  |  |  | <el-radio-group v-model="expertfrom" style="margin-bottom: 0"> | 
|---|
|  |  |  | <el-radio label="1">专家库</el-radio> | 
|---|
|  |  |  | <el-radio label="2">新增专家</el-radio> | 
|---|
|  |  |  | </el-radio-group> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col | 
|---|
|  |  |  | :span="24" | 
|---|
|  |  |  | v-if="selectionType == 'expert' && expertfrom == '1'" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="专家姓名" | 
|---|
|  |  |  | prop="beneficiaryname" | 
|---|
|  |  |  | label-width="80px" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | filterable | 
|---|
|  |  |  | allow-create | 
|---|
|  |  |  | ref="beneficiaryname" | 
|---|
|  |  |  | default-first-option | 
|---|
|  |  |  | v-model="funddetailForm.beneficiaryname" | 
|---|
|  |  |  | placeholder="请选择" | 
|---|
|  |  |  | style="width: 100%" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in expertlist" | 
|---|
|  |  |  | :key="item.expertNo" | 
|---|
|  |  |  | :label="item.exportName" | 
|---|
|  |  |  | :value="item.exportName" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="24" v-if="selectionType == 'unit'"> | 
|---|
|  |  |  | <el-form | 
|---|
|  |  |  | ref="accountselectform" | 
|---|
|  |  |  | :rules="dialogrules" | 
|---|
|  |  |  | :model="accountselectform" | 
|---|
|  |  |  | label-width="120px" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-row v-if="selectionType == 'workunit'"> | 
|---|
|  |  |  | <el-col :span="24"> | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="单位名称" | 
|---|
|  |  |  | prop="unitno" | 
|---|
|  |  |  | prop="expertunitname" | 
|---|
|  |  |  | label-width="120px" | 
|---|
|  |  |  | v-if="businessType == 1 || businessType == 2" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="funddetailForm.unitno" | 
|---|
|  |  |  | v-model="accountselectform.expertunitname" | 
|---|
|  |  |  | placeholder="单位名称" | 
|---|
|  |  |  | clearable | 
|---|
|  |  |  | filterable | 
|---|
|  |  |  | 
|---|
|  |  |  | v-for="(spec, index) in unitList" | 
|---|
|  |  |  | :key="index" | 
|---|
|  |  |  | :label="spec.organizationname" | 
|---|
|  |  |  | :value="spec.organizationid" | 
|---|
|  |  |  | ></el-option> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="发票单位名称" | 
|---|
|  |  |  | prop="unitno" | 
|---|
|  |  |  | label-width="120px" | 
|---|
|  |  |  | v-if="businessType == 3" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="funddetailForm.unitno" | 
|---|
|  |  |  | placeholder="单位名称" | 
|---|
|  |  |  | clearable | 
|---|
|  |  |  | filterable | 
|---|
|  |  |  | allow-create | 
|---|
|  |  |  | style="width: 100%" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="(item, index) in feeUnitList" | 
|---|
|  |  |  | :key="index" | 
|---|
|  |  |  | :label="item.reportName" | 
|---|
|  |  |  | :value="item.reportNo" | 
|---|
|  |  |  | :value="spec.organizationname" | 
|---|
|  |  |  | ></el-option> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-row v-if="businessType == 4 || businessType == 3"> | 
|---|
|  |  |  | <el-col :span="24"> | 
|---|
|  |  |  | <el-form-item label="请选择专家信息:" prop="experthear"> | 
|---|
|  |  |  | <el-radio-group | 
|---|
|  |  |  | @change="ShowDetailDialog(spocewl)" | 
|---|
|  |  |  | v-model="experthear" | 
|---|
|  |  |  | style="margin-bottom: 0" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-radio label="unit">人员选项</el-radio> | 
|---|
|  |  |  | <el-radio label="expert">单位选项</el-radio> | 
|---|
|  |  |  | <el-row v-if="selectionType == 'account'"> | 
|---|
|  |  |  | <el-col> | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="账户来源" | 
|---|
|  |  |  | prop="accountfrom" | 
|---|
|  |  |  | class="left-align" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-radio-group v-model="accountfrom" style="margin-bottom: 0"> | 
|---|
|  |  |  | <el-radio label="1">从账户库</el-radio> | 
|---|
|  |  |  | <el-radio label="2" | 
|---|
|  |  |  | >新增账户(新增专家账户后需要审核启用才能使用)</el-radio | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-radio-group> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="24" v-if="experthear == 'unit'"> | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="人员姓名" | 
|---|
|  |  |  | prop="beneficiaryname" | 
|---|
|  |  |  | label-width="80px" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-col :span="24" v-if="accountfrom == '1'"> | 
|---|
|  |  |  | <el-form-item label="账户名称" prop="accountname"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | filterable | 
|---|
|  |  |  | allow-create | 
|---|
|  |  |  | ref="beneficiaryname" | 
|---|
|  |  |  | ref="accountname" | 
|---|
|  |  |  | default-first-option | 
|---|
|  |  |  | @change="bbaaccss" | 
|---|
|  |  |  | v-model="funddetailForm.beneficiaryname" | 
|---|
|  |  |  | v-model="accountselectform.accountname" | 
|---|
|  |  |  | placeholder="请选择" | 
|---|
|  |  |  | style="width: 100%" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="item in expertlist" | 
|---|
|  |  |  | :key="item.expertNo" | 
|---|
|  |  |  | :label="item.exportName" | 
|---|
|  |  |  | :value="item.exportName" | 
|---|
|  |  |  | v-for="item in accountlist" | 
|---|
|  |  |  | :key="item.id" | 
|---|
|  |  |  | :label="item.userid" | 
|---|
|  |  |  | :value="item.id" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-option> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="24" v-if="experthear == 'expert'"> | 
|---|
|  |  |  | <el-form-item label="单位名称" prop="unitno" label-width="120px"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="funddetailForm.beneficiaryname" | 
|---|
|  |  |  | placeholder="单位名称" | 
|---|
|  |  |  | @change="bbaaccss" | 
|---|
|  |  |  | clearable | 
|---|
|  |  |  | filterable | 
|---|
|  |  |  | allow-create | 
|---|
|  |  |  | style="width: 100%" | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row v-if="selectionType == 'account' && accountfrom == '2'"> | 
|---|
|  |  |  | <el-col :span="24"> | 
|---|
|  |  |  | <el-form-item label="新增类型" prop="usertype" class="left-align"> | 
|---|
|  |  |  | <el-radio-group | 
|---|
|  |  |  | v-model="accountselectform.usertype" | 
|---|
|  |  |  | style="margin-bottom: 0" | 
|---|
|  |  |  | @change="userTypeChange(accountselectform.usertype)" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="(spec, index) in feeUnitList" | 
|---|
|  |  |  | :key="index" | 
|---|
|  |  |  | :label="spec.reportName" | 
|---|
|  |  |  | :value="spec.reportName" | 
|---|
|  |  |  | ></el-option> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | <el-radio label="expert">专家账户</el-radio> | 
|---|
|  |  |  | <el-radio label="org">单位账户</el-radio> | 
|---|
|  |  |  | <el-radio label="donor">捐献者亲属账户</el-radio> | 
|---|
|  |  |  | </el-radio-group> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-row v-if="businessType != 4 && businessType != 3"> | 
|---|
|  |  |  | <el-col :span="12" v-if="expertfrom == '2'"> | 
|---|
|  |  |  | <el-form-item label="专家姓名" prop="expertname" label-width="80px"> | 
|---|
|  |  |  | <el-row v-if="selectionType == 'account' && accountfrom == '2'"> | 
|---|
|  |  |  | <el-col :span="24"> | 
|---|
|  |  |  | <el-form-item label="账户名称" prop="username"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="funddetailForm.expertname" | 
|---|
|  |  |  | placeholder="必填项" | 
|---|
|  |  |  | v-model="accountselectform.username" | 
|---|
|  |  |  | placeholder="请输入单位名称,或专家姓名,或其他账号" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="12" v-if="expertfrom == '2'"> | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="职    称" | 
|---|
|  |  |  | prop="experttitle" | 
|---|
|  |  |  | label-width="80px" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row | 
|---|
|  |  |  | v-if=" | 
|---|
|  |  |  | selectionType == 'account' && | 
|---|
|  |  |  | accountfrom == '2' && | 
|---|
|  |  |  | accountselectform.usertype != 'org' | 
|---|
|  |  |  | " | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-col :span="12"> | 
|---|
|  |  |  | <el-form-item label="身份证号" prop="idcardno"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="accountselectform.idcardno" | 
|---|
|  |  |  | placeholder="请输入身份证号" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="12" v-if="accountselectform.usertype == 'expert'"> | 
|---|
|  |  |  | <el-form-item label="职称" prop="title"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="funddetailForm.experttitle" | 
|---|
|  |  |  | placeholder="必填项" | 
|---|
|  |  |  | v-model="accountselectform.title" | 
|---|
|  |  |  | placeholder="请选择人员职称" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-option | 
|---|
|  |  |  | v-for="dict in dict.type.sys_professionaltitle" | 
|---|
|  |  |  | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row v-if="businessType != 4 && businessType != 3"> | 
|---|
|  |  |  | <el-col :span="24" v-if="expertfrom == '2'"> | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="身份证号" | 
|---|
|  |  |  | prop="expertidcardno" | 
|---|
|  |  |  | label-width="80px" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="funddetailForm.expertidcardno" | 
|---|
|  |  |  | placeholder="必填项" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <!-- | 
|---|
|  |  |  | <el-row> | 
|---|
|  |  |  | <el-col :span="12" v-if="expertfrom == '2'"> | 
|---|
|  |  |  | <el-form-item label="人员类别" prop="usertype" label-width="80px"> | 
|---|
|  |  |  | <el-select v-model="funddetailForm.usertype" placeholder="必填项"> | 
|---|
|  |  |  | <el-option v-for="dict in dict.type.sys_UserType" :key="dict.value" :label="dict.label" | 
|---|
|  |  |  | :value="dict.value"></el-option> | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | --> | 
|---|
|  |  |  | <el-row v-if="businessType != 4 && businessType != 3"> | 
|---|
|  |  |  | <el-col :span="24" v-if="expertfrom == '2'"> | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="单位名称" | 
|---|
|  |  |  | prop="expertunitno" | 
|---|
|  |  |  | label-width="80px" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-row | 
|---|
|  |  |  | v-if=" | 
|---|
|  |  |  | selectionType == 'account' && | 
|---|
|  |  |  | accountfrom == '2' && | 
|---|
|  |  |  | accountselectform.usertype == 'expert' | 
|---|
|  |  |  | " | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-col> | 
|---|
|  |  |  | <el-form-item label="所在单位" prop="unitno"> | 
|---|
|  |  |  | <el-select | 
|---|
|  |  |  | v-model="funddetailForm.expertunitno" | 
|---|
|  |  |  | v-model="accountselectform.unitno" | 
|---|
|  |  |  | placeholder="单位名称" | 
|---|
|  |  |  | clearable | 
|---|
|  |  |  | filterable | 
|---|
|  |  |  | 
|---|
|  |  |  | :label="spec.organizationname" | 
|---|
|  |  |  | :value="spec.organizationid" | 
|---|
|  |  |  | ></el-option> | 
|---|
|  |  |  | </el-select> </el-form-item | 
|---|
|  |  |  | ></el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row v-if="businessType != 4 && businessType != 3"> | 
|---|
|  |  |  | <el-col :span="24" v-if="expertfrom == '2'"> | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="开户银行" | 
|---|
|  |  |  | prop="expertdepositbank" | 
|---|
|  |  |  | label-width="80px" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-select> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col> | 
|---|
|  |  |  | <el-form-item label="单位工号" prop="personnelunitno"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="funddetailForm.expertdepositbank" | 
|---|
|  |  |  | placeholder="必填项" | 
|---|
|  |  |  | v-model="accountselectform.personnelunitno" | 
|---|
|  |  |  | placeholder="请输入所在单位的工号" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col :span="24" v-if="expertfrom == '2'"> | 
|---|
|  |  |  | <el-form-item | 
|---|
|  |  |  | label="银行卡号" | 
|---|
|  |  |  | prop="expertbankcardno" | 
|---|
|  |  |  | label-width="80px" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row v-if="selectionType == 'account' && accountfrom == '2'"> | 
|---|
|  |  |  | <el-col | 
|---|
|  |  |  | ><el-form-item label="开户银行" prop="depositbank"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="funddetailForm.expertbankcardno" | 
|---|
|  |  |  | placeholder="必填项" | 
|---|
|  |  |  | v-model="accountselectform.depositbank" | 
|---|
|  |  |  | placeholder="请输入开户银行名称" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | <el-col | 
|---|
|  |  |  | ><el-form-item label="银行卡号" prop="bankcardno"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="accountselectform.bankcardno" | 
|---|
|  |  |  | placeholder="请输入银行卡号" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row v-if="selectionType == 'account' && accountfrom == '2'"> | 
|---|
|  |  |  | <el-col> | 
|---|
|  |  |  | <el-form-item label="联系地址" prop="address"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="accountselectform.address" | 
|---|
|  |  |  | placeholder="请输入联系地址" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | <el-row v-if="selectionType == 'account' && accountfrom == '2'"> | 
|---|
|  |  |  | <el-col> | 
|---|
|  |  |  | <el-form-item label="联系电话" prop="telephone"> | 
|---|
|  |  |  | <el-input | 
|---|
|  |  |  | v-model="accountselectform.telephone" | 
|---|
|  |  |  | placeholder="请输入联系电话" | 
|---|
|  |  |  | /> | 
|---|
|  |  |  | </el-form-item> | 
|---|
|  |  |  | </el-col> | 
|---|
|  |  |  | </el-row> | 
|---|
|  |  |  | </el-form> | 
|---|
|  |  |  | <span slot="footer" class="dialog-footer"> | 
|---|
|  |  |  | <el-button @click="showSelectionDialog = false">取 消</el-button> | 
|---|
|  |  |  | <el-button type="primary" @click="ConfirmDetailDialog()" | 
|---|
|  |  |  | <el-button type="primary" @click="confirmSelectionDialog()" | 
|---|
|  |  |  | >确 定</el-button | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-button @click="showselectiondialog = false">取 消</el-button> | 
|---|
|  |  |  | </span> | 
|---|
|  |  |  | </el-dialog> | 
|---|
|  |  |  | <el-dialog | 
|---|
|  |  |  | 
|---|
|  |  |  | :visible.sync="pdfVisible" | 
|---|
|  |  |  | width="60%" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <div> | 
|---|
|  |  |  | <div style="margin-bottom: 10px;"> | 
|---|
|  |  |  | <el-table :data="tableDatatop" style="width: 100%"> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | v-if="businessType == 4" | 
|---|
|  |  |  | 
|---|
|  |  |  | v-if="businessType == 4" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column prop="amount" align="center" :label="amountLabel"> | 
|---|
|  |  |  | <el-table-column prop="amount" align="center" :label="amountlabel"> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | prop="taxedamount" | 
|---|
|  |  |  | 
|---|
|  |  |  | v-if="form.applytype != '4'" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-table-column> --> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | prop="beneficiaryname" | 
|---|
|  |  |  | align="center" | 
|---|
|  |  |  | label="单位/个人" | 
|---|
|  |  |  | width="250" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-table-column prop="" align="center" label="单位/个人" width="250"> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | prop="title" | 
|---|
|  |  |  | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | </el-table> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <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 | 
|---|
|  |  |  | <el-alert | 
|---|
|  |  |  | title="新上传文件需在提交保存后才可进行案例关联,否则视为放弃" | 
|---|
|  |  |  | type="error" | 
|---|
|  |  |  | show-icon | 
|---|
|  |  |  | close-text="知道了" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-alert> | 
|---|
|  |  |  | <el-tabs | 
|---|
|  |  |  | style="margin-top: 20px;" | 
|---|
|  |  |  | v-model="activeName" | 
|---|
|  |  |  | type="border-card" | 
|---|
|  |  |  | @tab-click="handleClick" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-tab-pane label="普通附件" name="common"> | 
|---|
|  |  |  | <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" /> | 
|---|
|  |  |  | <span>{{ scope.row.name }}</span> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | prop="name" | 
|---|
|  |  |  | width="190" | 
|---|
|  |  |  | :show-overflow-tooltip="true" | 
|---|
|  |  |  | label="功能" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <template slot-scope="scope"> | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="danger" | 
|---|
|  |  |  | 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 | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="success" | 
|---|
|  |  |  | size="mini" | 
|---|
|  |  |  | icon="el-icon-search" | 
|---|
|  |  |  | circle | 
|---|
|  |  |  | @click.native.prevent.stop="Downloadfile(scope.row)" | 
|---|
|  |  |  | ></el-button> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | </el-table> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <!-- <div class="el-upload__tip" slot="tip"> | 
|---|
|  |  |  | 只能上传jpg/png文件,且不超过500kb | 
|---|
|  |  |  | </div> --> | 
|---|
|  |  |  | </el-upload> | 
|---|
|  |  |  | <el-table | 
|---|
|  |  |  | :data="fileListto" | 
|---|
|  |  |  | @row-click="downFile" | 
|---|
|  |  |  | style="width: 100%" | 
|---|
|  |  |  | height="400" | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <div | 
|---|
|  |  |  | v-if="this.previewpdf && pdfimgsrcList.length" | 
|---|
|  |  |  | class="pdfimgmin" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | prop="name" | 
|---|
|  |  |  | :show-overflow-tooltip="true" | 
|---|
|  |  |  | label="名称" | 
|---|
|  |  |  | <!-- <img :src="pdfimg" /> --> | 
|---|
|  |  |  | <el-image | 
|---|
|  |  |  | style="width: 95%; height: 90%" | 
|---|
|  |  |  | @error="handleImageError" | 
|---|
|  |  |  | @load="handleImageLoad" | 
|---|
|  |  |  | :src="pdfimg" | 
|---|
|  |  |  | :preview-src-list="pdfimgsrcList" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <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 slot="error" class="image-slot"> | 
|---|
|  |  |  | <i class="el-icon-picture-outline"></i> | 
|---|
|  |  |  | </div> --> | 
|---|
|  |  |  | </el-image> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div v-else class="pdfimgmins">{{ hintitle }}</div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <!-- <div | 
|---|
|  |  |  | class="pdftit" | 
|---|
|  |  |  | @click="pdffn(item)" | 
|---|
|  |  |  | v-for="item in fileList" | 
|---|
|  |  |  | :key="item.name" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | {{ item.name }} | 
|---|
|  |  |  | </div> --> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </el-tab-pane> | 
|---|
|  |  |  | <el-tab-pane label="发票文件" name="invoice"> | 
|---|
|  |  |  | <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" /> | 
|---|
|  |  |  | <span>{{ scope.row.name }}</span> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <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" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-image> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <div v-else class="pdfimgmins">{{ hintitle }}</div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | <el-table-column | 
|---|
|  |  |  | prop="name" | 
|---|
|  |  |  | width="190" | 
|---|
|  |  |  | :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 | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <el-button | 
|---|
|  |  |  | type="success" | 
|---|
|  |  |  | size="mini" | 
|---|
|  |  |  | icon="el-icon-search" | 
|---|
|  |  |  | circle | 
|---|
|  |  |  | @click.native.prevent.stop="Downloadfile(scope.row)" | 
|---|
|  |  |  | ></el-button> | 
|---|
|  |  |  | </template> | 
|---|
|  |  |  | </el-table-column> | 
|---|
|  |  |  | </el-table> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <div | 
|---|
|  |  |  | v-if="this.previewpdf && invoicepdfimgsrcList.length" | 
|---|
|  |  |  | class="pdfimgmin" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <!-- <img :src="pdfimg" /> --> | 
|---|
|  |  |  | <el-image | 
|---|
|  |  |  | style="width: 95%; height: 90%" | 
|---|
|  |  |  | @error="handleImageError" | 
|---|
|  |  |  | @load="handleImageLoad" | 
|---|
|  |  |  | :src="invoicepdfimg" | 
|---|
|  |  |  | :preview-src-list="invoicepdfimgsrcList" | 
|---|
|  |  |  | > | 
|---|
|  |  |  | <!-- <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-tabs> | 
|---|
|  |  |  | </el-dialog> | 
|---|
|  |  |  | <el-dialog title="提示" :visible.sync="Savereminder" width="30%"> | 
|---|
|  |  |  | <el-alert | 
|---|
|  |  |  | 
|---|
|  |  |  | > | 
|---|
|  |  |  | </el-alert> | 
|---|
|  |  |  | <span slot="footer" class="dialog-footer"> | 
|---|
|  |  |  | <el-button @click="unsave">取 消</el-button> | 
|---|
|  |  |  | <el-button type="primary" @click="Savenow">确 定</el-button> | 
|---|
|  |  |  | <el-button @click="unsave">取 消</el-button> | 
|---|
|  |  |  | </span> | 
|---|
|  |  |  | </el-dialog> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <span slot="footer" class="dialog-footer"> | 
|---|
|  |  |  | <el-button @click="batchdialogVisible = false">取 消</el-button> | 
|---|
|  |  |  | <el-button type="primary" @click="BatchentryFn">确 定</el-button> | 
|---|
|  |  |  | <el-button @click="batchdialogVisible = false">取 消</el-button> | 
|---|
|  |  |  | </span> | 
|---|
|  |  |  | </el-dialog> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  | 
|---|
|  |  |  | delExternalperson, | 
|---|
|  |  |  | addExternalperson, | 
|---|
|  |  |  | updateExternalperson, | 
|---|
|  |  |  | exportExternalperson | 
|---|
|  |  |  | exportExternalperson, | 
|---|
|  |  |  | getOnlyCode | 
|---|
|  |  |  | } from "@/api/project/externalperson"; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import { listItemexpense } from "@/api/project/itemexpense"; | 
|---|
|  |  |  | 
|---|
|  |  |  | ], | 
|---|
|  |  |  |  | 
|---|
|  |  |  | data() { | 
|---|
|  |  |  | var validatePass = (rule, value, callback) => { | 
|---|
|  |  |  | const regex = /^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[012])(0[1-9]|[12]\d|3[01])\d{3}([0-9]|X)$/; | 
|---|
|  |  |  | if (regex.test(value)) { | 
|---|
|  |  |  | callback(); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | callback(new Error("身份证号码格式错误")); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | //这里存放数据 | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | // 遮罩层 | 
|---|
|  |  |  | 
|---|
|  |  |  | Routinglevel: 1, | 
|---|
|  |  |  | // 表单参数 | 
|---|
|  |  |  | form: {}, | 
|---|
|  |  |  | experthear: "", | 
|---|
|  |  |  | spocewl: "", | 
|---|
|  |  |  | //费用申请表单title | 
|---|
|  |  |  | title: "", | 
|---|
|  |  |  | //申请单类型 | 
|---|
|  |  |  | 
|---|
|  |  |  | businessName: "", | 
|---|
|  |  |  | //操作类型 | 
|---|
|  |  |  | operationType: "", | 
|---|
|  |  |  |  | 
|---|
|  |  |  | Loadornot: false, | 
|---|
|  |  |  | //当前单据id | 
|---|
|  |  |  | curId: 0, | 
|---|
|  |  |  | //当前选中捐献案例 | 
|---|
|  |  |  | 
|---|
|  |  |  | userprofile: {}, | 
|---|
|  |  |  | //系统用户列表 | 
|---|
|  |  |  | userlist: [], | 
|---|
|  |  |  | //所有人员表 | 
|---|
|  |  |  | personlist: [], | 
|---|
|  |  |  | //专家列表 | 
|---|
|  |  |  | expertlist: [], | 
|---|
|  |  |  | //账号列表 | 
|---|
|  |  |  | accountlist: [], | 
|---|
|  |  |  | //医疗机构列表 | 
|---|
|  |  |  | unitList: [], | 
|---|
|  |  |  | //费用报销机构列表 | 
|---|
|  |  |  | feeUnitList: [], | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 网络请求头 | 
|---|
|  |  |  | Networkheader: null, | 
|---|
|  |  |  | batchdialogVisible: false, | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //是否是专家费的OPO审批人员 | 
|---|
|  |  |  | ismanager: false, | 
|---|
|  |  |  | //专家费选择:1是专家库,2是新增 | 
|---|
|  |  |  | expertfrom: "1", | 
|---|
|  |  |  | baselisttages: [ | 
|---|
|  |  |  | { | 
|---|
|  |  |  | id: 1, | 
|---|
|  |  |  | name: "待预审" | 
|---|
|  |  |  | name: "材料待审核" | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | id: 2, | 
|---|
|  |  |  | name: "预审通过等待材料" | 
|---|
|  |  |  | name: "审查通过等待邮寄纸质材料" | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | { | 
|---|
|  |  |  | id: 3, | 
|---|
|  |  |  | name: "已收到报销材料" | 
|---|
|  |  |  | name: "已收到纸质材料" | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ], | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | // 随机数 | 
|---|
|  |  |  | randomnumber: "", | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //专家/单位选择:expert/unit | 
|---|
|  |  |  | //选择窗口显示状态 | 
|---|
|  |  |  | showselectiondialog: false, | 
|---|
|  |  |  | //选择时当前行 | 
|---|
|  |  |  | selectionScope: "", | 
|---|
|  |  |  | //选择类型:专家(单位)账户、工作单位(account/workunit) | 
|---|
|  |  |  | selectionType: "", | 
|---|
|  |  |  | showSelectionDialog: false, | 
|---|
|  |  |  | //账户选择:1是账户库,2是新增 | 
|---|
|  |  |  | accountfrom: "1", | 
|---|
|  |  |  | //受益人标签:专家费-专家(单位)名称,医学成本-办公-单位(个人)名称 | 
|---|
|  |  |  | beneficiarylabel: "", | 
|---|
|  |  |  | //税前金额标题:专家费-税前金额;医学成本、办公费用-金额 | 
|---|
|  |  |  | amountLabel: "税前金额", | 
|---|
|  |  |  | amountlabel: "税前金额", | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 表单校验 | 
|---|
|  |  |  | rules: { | 
|---|
|  |  |  | createTime: [ | 
|---|
|  |  |  | { required: true, message: "请输入填报日期", trigger: "blur" } | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | reason: [ | 
|---|
|  |  |  | { required: true, message: "请输入出差事由", trigger: "blur" } | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | 
|---|
|  |  |  | ] | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | funddetailForm: { | 
|---|
|  |  |  | index: null, | 
|---|
|  |  |  | beneficiaryname: null, | 
|---|
|  |  |  | beneficiaryno: null, | 
|---|
|  |  |  | unitno: null, | 
|---|
|  |  |  | unitname: null, | 
|---|
|  |  |  | expertname: null, | 
|---|
|  |  |  | expertidcardno: null, | 
|---|
|  |  |  | expertunitno: null, | 
|---|
|  |  |  | expertunitname: null, | 
|---|
|  |  |  | experttitle: null, | 
|---|
|  |  |  | expertdepositbank: null, | 
|---|
|  |  |  | expertbankcardno: null | 
|---|
|  |  |  | dialogrules: { | 
|---|
|  |  |  | usertype: [ | 
|---|
|  |  |  | { required: true, message: "请输入账户类型", trigger: "blur" } | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | username: [ | 
|---|
|  |  |  | { required: true, message: "请输入账户名称", trigger: "blur" } | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | idcardno: [ | 
|---|
|  |  |  | { required: true, message: "请输入身份账号", trigger: "blur" } | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | //idcardno: [{ validator: validatePass, trigger: "blur" }], | 
|---|
|  |  |  | depositbank: [ | 
|---|
|  |  |  | { required: true, message: "请输入开户银行", trigger: "change" } | 
|---|
|  |  |  | ], | 
|---|
|  |  |  | bankcardno: [ | 
|---|
|  |  |  | { required: true, message: "请输入银行卡号", trigger: "change" } | 
|---|
|  |  |  | ] | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | expertform: { | 
|---|
|  |  |  | id: null, | 
|---|
|  |  |  | address: null, | 
|---|
|  |  |  | bankcardno: null, | 
|---|
|  |  |  | branchbankname: null, | 
|---|
|  |  |  | createBy: null, | 
|---|
|  |  |  | createTime: null, | 
|---|
|  |  |  | del_flag: null, | 
|---|
|  |  |  | accountselectform: { | 
|---|
|  |  |  | index: null, | 
|---|
|  |  |  | usertype: "expert", | 
|---|
|  |  |  | accountname: null, | 
|---|
|  |  |  | accountno: null, | 
|---|
|  |  |  | expertunitname: null, | 
|---|
|  |  |  | expertunitno: null, | 
|---|
|  |  |  | depositbank: null, | 
|---|
|  |  |  | bankcardno: null, | 
|---|
|  |  |  | idcardno: null, | 
|---|
|  |  |  | personnelunitno: null, | 
|---|
|  |  |  | pym: null, | 
|---|
|  |  |  | remark: null, | 
|---|
|  |  |  | searchValue: null, | 
|---|
|  |  |  | sex: null, | 
|---|
|  |  |  | telephone: null, | 
|---|
|  |  |  | title: null, | 
|---|
|  |  |  | unitname: null, | 
|---|
|  |  |  | unitno: null, | 
|---|
|  |  |  | updateBy: null, | 
|---|
|  |  |  | updateTime: null, | 
|---|
|  |  |  | personnelunitno: null, | 
|---|
|  |  |  | address: null, | 
|---|
|  |  |  | telephone: null, | 
|---|
|  |  |  | username: null, | 
|---|
|  |  |  | userno: null | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | accountform: { | 
|---|
|  |  |  | searchValue: null, | 
|---|
|  |  |  | id: null, | 
|---|
|  |  |  | userstatus: 0, | 
|---|
|  |  |  | usertype: null, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | pym: null, | 
|---|
|  |  |  | wbm: null, | 
|---|
|  |  |  | username: null, | 
|---|
|  |  |  | userno: null, | 
|---|
|  |  |  | userstatus: 1, | 
|---|
|  |  |  | usertype: null, | 
|---|
|  |  |  | wbm: null | 
|---|
|  |  |  | sex: null, | 
|---|
|  |  |  | idcardno: null, | 
|---|
|  |  |  | title: null, | 
|---|
|  |  |  | address: null, | 
|---|
|  |  |  | telephone: null, | 
|---|
|  |  |  | depositbank: null, | 
|---|
|  |  |  | branchbankname: null, | 
|---|
|  |  |  | bankcardno: null, | 
|---|
|  |  |  | unitname: null, | 
|---|
|  |  |  | unitno: null, | 
|---|
|  |  |  | personnelunitno: null, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | del_flag: null, | 
|---|
|  |  |  | createBy: null, | 
|---|
|  |  |  | createTime: null, | 
|---|
|  |  |  | updateBy: null, | 
|---|
|  |  |  | updateTime: null, | 
|---|
|  |  |  | remark: null | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | //审批参数 | 
|---|
|  |  |  | checkObj: { | 
|---|
|  |  |  | 
|---|
|  |  |  | username: null, | 
|---|
|  |  |  | usertype: null | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 查询最新序号参数 | 
|---|
|  |  |  | seqnoParams: { | 
|---|
|  |  |  | businessType: "externalperson", | 
|---|
|  |  |  | datequery: false | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //计算个税参数 | 
|---|
|  |  |  | taxParam: { | 
|---|
|  |  |  | 
|---|
|  |  |  | money: "0", | 
|---|
|  |  |  | startTime: "" | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | beforehandType: null, | 
|---|
|  |  |  | //服务费用参数 | 
|---|
|  |  |  | expenseQueryParams: { | 
|---|
|  |  |  | pageNum: 1, | 
|---|
|  |  |  | 
|---|
|  |  |  | //附件列表 | 
|---|
|  |  |  | fileList: [], | 
|---|
|  |  |  | fileListto: [], | 
|---|
|  |  |  | invoicefileList: [], | 
|---|
|  |  |  | invoicefileListto: [], | 
|---|
|  |  |  | invoicepdfimg: "", | 
|---|
|  |  |  | invoicepdfimgsrcList: [], | 
|---|
|  |  |  | invoDatatop: [], | 
|---|
|  |  |  | activeName: "common", //文件类型 | 
|---|
|  |  |  | //上传附件路径 | 
|---|
|  |  |  | uploadFileUrl: process.env.VUE_APP_BASE_API + "/common/upload", | 
|---|
|  |  |  | ICDtoken: getToken(), | 
|---|
|  |  |  | //文件上传token | 
|---|
|  |  |  | headers: { | 
|---|
|  |  |  | Authorization: "Bearer " + getToken() | 
|---|
|  |  |  | 
|---|
|  |  |  | this.curId = this.$route.query.id; | 
|---|
|  |  |  | this.businessType = this.$route.query.businessType; | 
|---|
|  |  |  | this.operationType = this.$route.query.operationType; | 
|---|
|  |  |  | this.beforehandType = this.$route.query.beforehandType; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //获取费用项目类型 | 
|---|
|  |  |  | this.getFeeTypes(); | 
|---|
|  |  |  | 
|---|
|  |  |  | // if (!this.businessType && !this.operationType) { | 
|---|
|  |  |  | if (this.businessType == "1") { | 
|---|
|  |  |  | this.businessName = "专家劳务费申请单"; | 
|---|
|  |  |  | this.amountLabel = "税前金额"; | 
|---|
|  |  |  | this.amountlabel = "税前金额"; | 
|---|
|  |  |  | this.beneficiarylabel = "专家或单位名称"; | 
|---|
|  |  |  | this.getUnitList(); | 
|---|
|  |  |  | } else if (this.businessType == "2") { | 
|---|
|  |  |  | this.businessName = "伦理专家劳务费申请单"; | 
|---|
|  |  |  | this.amountLabel = "税前金额"; | 
|---|
|  |  |  | this.amountlabel = "税前金额"; | 
|---|
|  |  |  | this.beneficiarylabel = "专家或单位名称"; | 
|---|
|  |  |  | this.getUnitList(); | 
|---|
|  |  |  | } else if (this.businessType == "3") { | 
|---|
|  |  |  | this.businessName = "医学成本报销单"; | 
|---|
|  |  |  | this.amountLabel = "金额"; | 
|---|
|  |  |  | this.amountlabel = "金额"; | 
|---|
|  |  |  | this.beneficiarylabel = "单位名称或个人"; | 
|---|
|  |  |  | this.getUnitList(); | 
|---|
|  |  |  | } else if (this.businessType == "4") { | 
|---|
|  |  |  | this.businessName = "办公费用报销单"; | 
|---|
|  |  |  | this.amountLabel = "金额"; | 
|---|
|  |  |  | this.amountlabel = "金额"; | 
|---|
|  |  |  | this.beneficiarylabel = "单位名称或个人"; | 
|---|
|  |  |  | this.getUnitList(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // this.getBaseInfoList(); | 
|---|
|  |  |  | 
|---|
|  |  |  | this.reset(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | getFund(this.curId).then(response => { | 
|---|
|  |  |  | console.log(response.data, "初始"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.form = response.data; | 
|---|
|  |  |  | sessionStorage.removeItem("apiform"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | sessionStorage.setItem("apiform", JSON.stringify(this.form)); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // this.form.recordstate =-1; | 
|---|
|  |  |  | 
|---|
|  |  |  | this.reset(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | getFund(this.curId).then(response => { | 
|---|
|  |  |  | console.log(response.data, "初始"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.form = response.data; | 
|---|
|  |  |  | sessionStorage.removeItem("apiform"); | 
|---|
|  |  |  | sessionStorage.setItem("apiform", JSON.stringify(this.form)); | 
|---|
|  |  |  | 
|---|
|  |  |  | //业务明细 | 
|---|
|  |  |  | getownFundDetail(this.curId).then(res => { | 
|---|
|  |  |  | this.rbDetails = res.data; | 
|---|
|  |  |  | console.log("this.feeBlocks", this.feeBlocks); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | for (let m = 0; m < this.rbDetails.length; m++) { | 
|---|
|  |  |  | this.rbDetails[m].itemlist = []; | 
|---|
|  |  |  | this.getRowFeeItems(m, this.rbDetails[m]); | 
|---|
|  |  |  | 
|---|
|  |  |  | //获取费用项目的详细信息 | 
|---|
|  |  |  | this.rbDetails[m].rowfeeblocks = this.feeBlocks.filter( | 
|---|
|  |  |  | r => r.itemid == this.rbDetails[m].itemid | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | console.log( | 
|---|
|  |  |  | "this.rbDetails[m].rowfeeblocks", | 
|---|
|  |  |  | this.rbDetails[m].rowfeeblocks | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | this.reset(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | getFund(this.curId).then(response => { | 
|---|
|  |  |  | console.log(response.data, "初始"); | 
|---|
|  |  |  | this.form = response.data; | 
|---|
|  |  |  | sessionStorage.removeItem("apiform"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | sessionStorage.setItem("apiform", JSON.stringify(this.form)); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //附件处理 | 
|---|
|  |  |  | 
|---|
|  |  |  | //查找是否存在登记完成记录 | 
|---|
|  |  |  | //判断是否存在上报记录 | 
|---|
|  |  |  | this.form.recordstatus = 0; | 
|---|
|  |  |  | var currenttime = new Date(); | 
|---|
|  |  |  | this.form.applyTime = | 
|---|
|  |  |  | currenttime.getFullYear() + | 
|---|
|  |  |  | "-" + | 
|---|
|  |  |  | (currenttime.getMonth() + 1) + | 
|---|
|  |  |  | "-" + | 
|---|
|  |  |  | currenttime.getDate() + | 
|---|
|  |  |  | " " + | 
|---|
|  |  |  | currenttime.getHours() + | 
|---|
|  |  |  | ":" + | 
|---|
|  |  |  | currenttime.getMinutes() + | 
|---|
|  |  |  | ":" + | 
|---|
|  |  |  | currenttime.getSeconds(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (!this.form.id) { | 
|---|
|  |  |  | this.form.id = this.$route.query.id; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | this.$refs["form"].validate(valid => { | 
|---|
|  |  |  | if (valid) { | 
|---|
|  |  |  | this.formData = this.form; | 
|---|
|  |  |  | // let totalPreTaxAmount = 0.0; | 
|---|
|  |  |  | // let totalAfterTaxAmount = 0.0; | 
|---|
|  |  |  | // let totalAmount = 0.0; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //保存前校验数据 | 
|---|
|  |  |  | for (let k = 0; k < this.rbDetails.length; k++) { | 
|---|
|  |  |  | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // //判断单位 unitSel | 
|---|
|  |  |  | // try { | 
|---|
|  |  |  | //   let unitIndex = this.unitList.findIndex( | 
|---|
|  |  |  | //     (item) => tempDetail.unitno == item.organizationid | 
|---|
|  |  |  | //   ); | 
|---|
|  |  |  | //   if (unitIndex > -1) { | 
|---|
|  |  |  | //     tempDetail.unitname = this.unitList[unitIndex].organizationname; | 
|---|
|  |  |  | //   } else { | 
|---|
|  |  |  | //     tempDetail.unitname = tempDetail.unitno; | 
|---|
|  |  |  | //   } | 
|---|
|  |  |  | // } catch { | 
|---|
|  |  |  | //   tempDetail.unitname = tempDetail.unitno; | 
|---|
|  |  |  | // } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //附件处理 | 
|---|
|  |  |  | let list = this.fileList; | 
|---|
|  |  |  | // if (list.length > 0) { | 
|---|
|  |  |  | //   this.form.annexfiles = list.map(item => item.url).join(","); | 
|---|
|  |  |  | // } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //处理明细 | 
|---|
|  |  |  | for (let i = 0; i < this.rbDetails.length; i++) { | 
|---|
|  |  |  | 
|---|
|  |  |  | // }); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.form.recordstatus = -1; | 
|---|
|  |  |  | var currenttime = new Date(); | 
|---|
|  |  |  | this.form.applyTime = | 
|---|
|  |  |  | currenttime.getFullYear() + | 
|---|
|  |  |  | "-" + | 
|---|
|  |  |  | (currenttime.getMonth() + 1) + | 
|---|
|  |  |  | "-" + | 
|---|
|  |  |  | currenttime.getDate() + | 
|---|
|  |  |  | " " + | 
|---|
|  |  |  | currenttime.getHours() + | 
|---|
|  |  |  | ":" + | 
|---|
|  |  |  | currenttime.getMinutes() + | 
|---|
|  |  |  | ":" + | 
|---|
|  |  |  | currenttime.getSeconds(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // addorupdateFund(this.form).then((response) => { | 
|---|
|  |  |  | //   if (response.code === 200) { | 
|---|
|  |  |  | 
|---|
|  |  |  | JSON.stringify(this.rbDetails) | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | sessionStorage.setItem("apiform", JSON.stringify(this.form)); | 
|---|
|  |  |  | addorupdateFund(this.form).then(response => { | 
|---|
|  |  |  | console.log(this.form); | 
|---|
|  |  |  | console.log(response, "保存返参"); | 
|---|
|  |  |  | if (response.code === 200) { | 
|---|
|  |  |  | this.$modal.msgSuccess("申请单保存成功!"); | 
|---|
|  |  |  | this.$store.dispatch("tagsView/delView", this.$route); | 
|---|
|  |  |  | this.$router.push({ | 
|---|
|  |  |  | path: "/finance/applyDetail/", | 
|---|
|  |  |  | query: { | 
|---|
|  |  |  | id: response.data, | 
|---|
|  |  |  | businessType: "2", | 
|---|
|  |  |  | operationType: "update", | 
|---|
|  |  |  | curCase: this.curCase | 
|---|
|  |  |  | addorupdateFund(this.form) | 
|---|
|  |  |  | .then(response => { | 
|---|
|  |  |  | if (response.code === 200) { | 
|---|
|  |  |  | if (this.form.id) { | 
|---|
|  |  |  | this.$modal.msgSuccess("申请单修改成功!"); | 
|---|
|  |  |  | this.$router.go(-1); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$modal.msgSuccess("申请单保存成功!"); | 
|---|
|  |  |  | this.$store.dispatch("tagsView/delView", this.$route); | 
|---|
|  |  |  | this.$router.push({ | 
|---|
|  |  |  | path: "/finance/applyDetail/", | 
|---|
|  |  |  | query: { | 
|---|
|  |  |  | id: response.data, | 
|---|
|  |  |  | businessType: this.businessType, | 
|---|
|  |  |  | operationType: "update", | 
|---|
|  |  |  | curCase: this.curCase | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.Routinglevel++; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$modal.msgError("申请单保存失败:" + response.msg); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.form.id = response.data; | 
|---|
|  |  |  | this.curId = response.data; | 
|---|
|  |  |  | this.handleUpdate(); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$modal.msgError("申请单保存失败:" + response.msg); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .catch(res => { | 
|---|
|  |  |  | this.$modal.msgError("申请单保存失败:" + res); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | //关闭窗口 | 
|---|
|  |  |  | this.loading = false; | 
|---|
|  |  |  | // this.getfundList(); | 
|---|
|  |  |  | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, 500), | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //审批提交 | 
|---|
|  |  |  | checksubmit() { | 
|---|
|  |  |  | if (this.form.checkstatus != 3 && this.userprofile.nickName == "陈慕华") { | 
|---|
|  |  |  | this.$modal.msgError("请确认收到材料后再提交审核!"); | 
|---|
|  |  |  | //检查是否收到纸质材料 | 
|---|
|  |  |  | if (this.checkObj.flowlevelone == 2) { | 
|---|
|  |  |  | if (!this.checkObj.flowconclusion) { | 
|---|
|  |  |  | this.$modal.msgError( | 
|---|
|  |  |  | "请输入审核不通过的说明信息,方便经办人修改申请单!" | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } else if (this.checkObj.flowlevelone == 1) { | 
|---|
|  |  |  | if (this.userprofile.nickName == "陈慕华") { | 
|---|
|  |  |  | //检查是否收到纸质材料 | 
|---|
|  |  |  | if (this.form.checkstatus != 3) { | 
|---|
|  |  |  | this.$modal.msgError("请先确认报销的纸质材料是否已经收到!"); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //检查个税计算 | 
|---|
|  |  |  | if (this.form.applytype == "1" && this.form.fundtaxtime == null) { | 
|---|
|  |  |  | this.$modal.msgError( | 
|---|
|  |  |  | "请先完成专家费用的个税计算后,再提交审核通过!" | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$modal.msgError("请先选择审批结果再提交!"); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | let checkFundObj = { | 
|---|
|  |  |  | // fundid: this.checkObj.fundid, | 
|---|
|  |  |  | fundid: this.curId, | 
|---|
|  |  |  | flowconclusion: this.checkObj.flowlevelone, | 
|---|
|  |  |  | flowcontent: this.checkObj.flowconclusion | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | checkfund(checkFundObj).then(res => { | 
|---|
|  |  |  | //关闭窗口 | 
|---|
|  |  |  | this.reset(); | 
|---|
|  |  |  | this.$modal.msgSuccess("审核完成!"); | 
|---|
|  |  |  | this.$store.dispatch("tagsView/delView", this.$route); | 
|---|
|  |  |  | this.$router.go(-1); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.Savenow(); | 
|---|
|  |  |  | console.log("保存并审批"); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 取消按钮 | 
|---|
|  |  |  | cancel() { | 
|---|
|  |  |  | // this.reset(); | 
|---|
|  |  |  | console.log(-this.Routinglevel); | 
|---|
|  |  |  | this.$store.dispatch("tagsView/delView", this.$route); | 
|---|
|  |  |  | this.$router.go(-this.Routinglevel); | 
|---|
|  |  |  | this.$router.go(-1); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //获取当前用户信息 | 
|---|
|  |  |  | getUserProfile() { | 
|---|
|  |  |  | getUserProfile().then(res => { | 
|---|
|  |  |  | this.userprofile = res.data; | 
|---|
|  |  |  | console.log(this.userprofile); | 
|---|
|  |  |  | this.standardlevel = res.data.standardlevel; | 
|---|
|  |  |  | if ( | 
|---|
|  |  |  | this.userprofile.userName == "admin" || | 
|---|
|  |  |  | 
|---|
|  |  |  | this.form.managername = this.userprofile.dept.leader; | 
|---|
|  |  |  | this.form.phone = this.userprofile.phonenumber; | 
|---|
|  |  |  | // this.form.applytype = this.businessType; | 
|---|
|  |  |  | // this.form.createTime = new Date(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (this.businessType == "4") { | 
|---|
|  |  |  | this.getUserAccount(); | 
|---|
|  |  |  | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //获取所有专家/医疗机构/费用报销机构列表 | 
|---|
|  |  |  | getExternalList() { | 
|---|
|  |  |  | //获取专家、单位机构的账户列表 | 
|---|
|  |  |  | getAccountList() { | 
|---|
|  |  |  | listExternalperson().then(res => { | 
|---|
|  |  |  | this.personlist = res.rows; | 
|---|
|  |  |  | for (let j = 0; j < this.personlist.length; j++) { | 
|---|
|  |  |  | //获取费用报销机构列表 | 
|---|
|  |  |  | if (this.personlist[j].usertype == "org") { | 
|---|
|  |  |  | this.feeUnitList.push({ | 
|---|
|  |  |  | id: this.personlist[j].id, | 
|---|
|  |  |  | reportNo: this.personlist[j].userno, | 
|---|
|  |  |  | reportName: this.personlist[j].username, | 
|---|
|  |  |  | depositbank: this.personlist[j].depositbank, | 
|---|
|  |  |  | branchbankname: this.personlist[j].branchbankname, | 
|---|
|  |  |  | bankcardno: this.personlist[j].bankcardno | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //专家人员列表 | 
|---|
|  |  |  | else if (res.rows[j].usertype == "expert") { | 
|---|
|  |  |  | this.expertlist.push({ | 
|---|
|  |  |  | expertNo: this.personlist[j].id, | 
|---|
|  |  |  | exportName: this.personlist[j].username | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | // this.accountlist = res.rows; | 
|---|
|  |  |  | //获取启用的账户列表 | 
|---|
|  |  |  | for (let j = 0; j < res.rows.length; j++) { | 
|---|
|  |  |  | //单位账号列表 | 
|---|
|  |  |  | if (res.rows[j].userstatus == "1") { | 
|---|
|  |  |  | if (res.rows[j].usertype == "org") { | 
|---|
|  |  |  | this.accountlist.push({ | 
|---|
|  |  |  | id: res.rows[j].id, | 
|---|
|  |  |  | userno: res.rows[j].userno, | 
|---|
|  |  |  | username: res.rows[j].username, | 
|---|
|  |  |  | idcardno: res.rows[j].idcardno, | 
|---|
|  |  |  | title: res.rows[j].title, | 
|---|
|  |  |  | depositbank: res.rows[j].depositbank, | 
|---|
|  |  |  | bankcardno: res.rows[j].bankcardno, | 
|---|
|  |  |  | unitno: res.rows[j].unitno, | 
|---|
|  |  |  | unitname: res.rows[j].unitname, | 
|---|
|  |  |  | userid: | 
|---|
|  |  |  | res.rows[j].username + "(" + res.rows[j].bankcardno + ")" | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.accountlist.push({ | 
|---|
|  |  |  | id: res.rows[j].id, | 
|---|
|  |  |  | userno: res.rows[j].userno, | 
|---|
|  |  |  | username: res.rows[j].username, | 
|---|
|  |  |  | idcardno: res.rows[j].idcardno, | 
|---|
|  |  |  | title: res.rows[j].title, | 
|---|
|  |  |  | depositbank: res.rows[j].depositbank, | 
|---|
|  |  |  | bankcardno: res.rows[j].bankcardno, | 
|---|
|  |  |  | unitno: res.rows[j].unitno, | 
|---|
|  |  |  | unitname: res.rows[j].unitname, | 
|---|
|  |  |  | userid: | 
|---|
|  |  |  | res.rows[j].username + "(" + res.rows[j].idcardno + ")" | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //获取经办人账号信息 | 
|---|
|  |  |  | getUserAccount() { | 
|---|
|  |  |  | this.personlist.map(res => { | 
|---|
|  |  |  | this.accountlist.map(res => { | 
|---|
|  |  |  | if (res.username == this.form.username) { | 
|---|
|  |  |  | this.form.bankname = res.depositbank; //res.branchbankname、res.depositbank; | 
|---|
|  |  |  | this.form.bankname = res.depositbank; | 
|---|
|  |  |  | this.form.bankcardno = res.bankcardno; | 
|---|
|  |  |  | this.form.phone = res.telephone; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //获取专家人员列表 | 
|---|
|  |  |  | getExpertList() { | 
|---|
|  |  |  | let types = ["expert"]; | 
|---|
|  |  |  | let templist = []; | 
|---|
|  |  |  | for (let i = 0; i < types.length; i++) { | 
|---|
|  |  |  | templist = []; | 
|---|
|  |  |  | listReportname(types[i]).then(res => { | 
|---|
|  |  |  | for (let j = 0; j < res.data.length; j++) { | 
|---|
|  |  |  | templist.push({ | 
|---|
|  |  |  | reportName: res.data[j].reportName, | 
|---|
|  |  |  | reportNo: res.data[j].reportNo | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.expertlist = this.expertlist.concat(templist); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //获取费用机构列表 | 
|---|
|  |  |  | getFeeUnitList() { | 
|---|
|  |  |  | listReportname("org").then(res => { | 
|---|
|  |  |  | this.feeUnitList = res.data; | 
|---|
|  |  |  | console.log(this.feeUnitList); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | listOrganization(3).then(response => { | 
|---|
|  |  |  | for (let i = 0; i < response.rows.length; i++) { | 
|---|
|  |  |  | this.unitList.push({ | 
|---|
|  |  |  | //organizationid: response.rows[i].organizationid, | 
|---|
|  |  |  | organizationid: response.rows[i].id, | 
|---|
|  |  |  | organizationname: response.rows[i].organizationname | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | 
|---|
|  |  |  | //获取服务项目 | 
|---|
|  |  |  | getRowFeeItems(rowindex, row) { | 
|---|
|  |  |  | let list = this.feeItemTypes.filter(r => r.itemType == row.applytype); | 
|---|
|  |  |  | console.log(list[0]); | 
|---|
|  |  |  | row.itemlist = list[0].itemDetails; | 
|---|
|  |  |  | this.$set(this.rbDetails, rowindex, row); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | 
|---|
|  |  |  | row.amount = 0.0; | 
|---|
|  |  |  | row.taxamount = 0.0; | 
|---|
|  |  |  | row.taxedamount = item.expense; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //计算税前金额 | 
|---|
|  |  |  | // this.calculateTax(row, "B"); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | row.amount = item.expense; | 
|---|
|  |  |  | row.taxamount = 0.0; | 
|---|
|  |  |  | row.taxedamount = 0.0; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //计算税后金额 | 
|---|
|  |  |  | // this.calculateTax(row, "A"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // this.form.serviceFunddetails = 0; | 
|---|
|  |  |  | // this.rbDetails.map(item => { | 
|---|
|  |  |  | //   this.form.serviceFunddetails += item.amount; | 
|---|
|  |  |  | // }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | selectExpert(row) { | 
|---|
|  |  |  | // if(row.beneficiaryname) | 
|---|
|  |  |  | this.personlist.map(res => { | 
|---|
|  |  |  | if (row.beneficiaryname == res.username) { | 
|---|
|  |  |  | row.beneficiaryno = res.userno; | 
|---|
|  |  |  | row.beneficiaryname = res.username; | 
|---|
|  |  |  | row.bankcardno = res.bankcardno; | 
|---|
|  |  |  | row.branchbankname = res.branchbankname; | 
|---|
|  |  |  | row.depositbank = res.depositbank; | 
|---|
|  |  |  | row.idcardno = res.idcardno; | 
|---|
|  |  |  | row.phone = res.phonenumber; | 
|---|
|  |  |  | row.title = res.title; | 
|---|
|  |  |  | row.unitname = res.unitname; | 
|---|
|  |  |  | row.unitno = res.unitno; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | row.beneficiaryno = row.beneficiaryname; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //计算个税:type(A:已知税前金额,计算税后金额;B:已知税后金额,计算税前金额) | 
|---|
|  |  |  | calculateTax(row, type) { | 
|---|
|  |  |  | let targetValue = 0; | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | targetValue += parseFloat(this.rbDetails[i].amount); // 假设每个对象中的特定值存储在'specificValue'属性下 | 
|---|
|  |  |  | } | 
|---|
|  |  |  | console.log(targetValue, "合计"); | 
|---|
|  |  |  | this.form.pretaxcost = targetValue; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //if (isNaN(parseFloat(tempDetail.taxedamount))) | 
|---|
|  |  |  | //获取参数 | 
|---|
|  |  |  | // this.taxParam.beneficiaryNo = row.beneficiaryno; | 
|---|
|  |  |  | // this.taxParam.startTime = this.form.createTime.substring(0, 10); | 
|---|
|  |  |  | // if (type == "A") { | 
|---|
|  |  |  | //   // 计算个税、税后金额 | 
|---|
|  |  |  | //   this.taxParam.money = row.amount.toString(); | 
|---|
|  |  |  | //   getTaxByBeneFiciaryNo(this.taxParam).then(res => { | 
|---|
|  |  |  | //     if (res.code == 200) { | 
|---|
|  |  |  | //       row.taxamount = res.data; | 
|---|
|  |  |  | //       row.taxedamount = row.amount - row.taxamount; | 
|---|
|  |  |  | //     } | 
|---|
|  |  |  | //   }); | 
|---|
|  |  |  | // } else { | 
|---|
|  |  |  | //   // 计算税前、个税金额 | 
|---|
|  |  |  | //   this.taxParam.money = row.taxedamount.toString(); | 
|---|
|  |  |  | //   getTaxBeforeByAfterMoney(this.taxParam).then(res => { | 
|---|
|  |  |  | //     if (res.code == 200) { | 
|---|
|  |  |  | //       row.taxamount = res.data.nowTax; | 
|---|
|  |  |  | //       row.amount = parseFloat(res.data.nowTaxBeforeMoney); | 
|---|
|  |  |  | //     } | 
|---|
|  |  |  | //   }); | 
|---|
|  |  |  | // } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //导入所有项目 | 
|---|
|  |  |  | 
|---|
|  |  |  | this.$refs["form"].validate(valid => { | 
|---|
|  |  |  | if (valid) { | 
|---|
|  |  |  | this.formData = this.form; | 
|---|
|  |  |  | // let totalPreTaxAmount = 0.0; | 
|---|
|  |  |  | // let totalAfterTaxAmount = 0.0; | 
|---|
|  |  |  | // let totalAmount = 0.0; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //保存前校验数据 | 
|---|
|  |  |  | for (let k = 0; k < this.rbDetails.length; k++) { | 
|---|
|  |  |  | 
|---|
|  |  |  | this.$modal.msgWarning( | 
|---|
|  |  |  | "服务项目表中,第" + | 
|---|
|  |  |  | (k + 1).toString() + | 
|---|
|  |  |  | "行的服务人员姓名为选择,请选择人员后再提交保存!" | 
|---|
|  |  |  | "行的人员姓名为空,请选择人员后再提交保存!" | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (tempDetail.unitname == null) { | 
|---|
|  |  |  | this.$modal.msgWarning( | 
|---|
|  |  |  | "服务项目表中,第" + | 
|---|
|  |  |  | (k + 1).toString() + | 
|---|
|  |  |  | "行的专家单位为空,请选择单位后再提交保存!" | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // //判断单位 unitSel | 
|---|
|  |  |  | // try { | 
|---|
|  |  |  | //   let unitIndex = this.unitList.findIndex( | 
|---|
|  |  |  | //     (item) => tempDetail.unitno == item.organizationid | 
|---|
|  |  |  | //   ); | 
|---|
|  |  |  | //   if (unitIndex > -1) { | 
|---|
|  |  |  | //     tempDetail.unitname = this.unitList[unitIndex].organizationname; | 
|---|
|  |  |  | //   } else { | 
|---|
|  |  |  | //     tempDetail.unitname = tempDetail.unitno; | 
|---|
|  |  |  | //   } | 
|---|
|  |  |  | // } catch { | 
|---|
|  |  |  | //   tempDetail.unitname = tempDetail.unitno; | 
|---|
|  |  |  | // } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //附件处理 | 
|---|
|  |  |  | let list = this.fileList; | 
|---|
|  |  |  | // if (list.length > 0) { | 
|---|
|  |  |  | //   this.form.annexfiles = list.map(item => item.url).join(","); | 
|---|
|  |  |  | // } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //处理明细 | 
|---|
|  |  |  | for (let i = 0; i < this.rbDetails.length; i++) { | 
|---|
|  |  |  | 
|---|
|  |  |  | ].subjecttypename; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.rbDetails[i] = tempDetail; | 
|---|
|  |  |  | /* | 
|---|
|  |  |  | //计算个税 | 
|---|
|  |  |  | //if (isNaN(parseFloat(tempDetail.taxedamount))) | 
|---|
|  |  |  | //获取参数 | 
|---|
|  |  |  | this.taxParam.beneficiaryNo = tempDetail.beneficiaryno; | 
|---|
|  |  |  | this.taxParam.startTime = this.form.createTime.substring(0, 10); | 
|---|
|  |  |  | // 计算税后金额 | 
|---|
|  |  |  | if (tempDetail.taxedamount == undefined || tempDetail.taxedamount == null || tempDetail.taxedamount == 0 || tempDetail.taxedamount == '') { | 
|---|
|  |  |  | //获取参数 | 
|---|
|  |  |  | this.taxParam.money = tempDetail.amount.toString(); | 
|---|
|  |  |  | getTaxByBeneFiciaryNo(this.taxParam).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | tempDetail.taxamount = res.data; | 
|---|
|  |  |  | tempDetail.taxedamount = tempDetail.amount - tempDetail.taxamount; | 
|---|
|  |  |  | this.rbDetails[k] = tempDetail; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.totalAfterTaxAmount += parseFloat(tempDetail.taxedamount); | 
|---|
|  |  |  | this.totalAmount += parseFloat(tempDetail.amount); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 计算税前、税费、税后金额 | 
|---|
|  |  |  | if (tempDetail.amount == undefined || tempDetail.amount == null || tempDetail.amount == 0 || tempDetail.amount == '') { | 
|---|
|  |  |  | //获取参数 | 
|---|
|  |  |  | this.taxParam.money = tempDetail.taxedamount.toString(); | 
|---|
|  |  |  | getTaxBeforeByAfterMoney(this.taxParam).then((res) => { | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | tempDetail.taxamount = res.data.nowTax; | 
|---|
|  |  |  | tempDetail.amount = parseFloat(res.data.nowTaxBeforeMoney); | 
|---|
|  |  |  | this.rbDetails[k] = tempDetail; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.totalAfterTaxAmount += parseFloat(tempDetail.taxedamount); | 
|---|
|  |  |  | this.totalAmount += parseFloat(tempDetail.amount); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //计算当前行报销内容费用合计,税前金额(amount)、扣税金额(taxamount)、税后金额(taxedamount) | 
|---|
|  |  |  | if (this.businessType == "2") { | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //费用合计 | 
|---|
|  |  |  | // this.form.pretaxcost = parseFloat(this.totalPreTaxAmount).toFixed(2); | 
|---|
|  |  |  | // this.form.taxedcost = parseFloat(this.totalAfterTaxAmount).toFixed(2); | 
|---|
|  |  |  | // this.form.amountrequested = this.totalAmount.toFixed(2); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //保存数据 | 
|---|
|  |  |  | this.loading = true; | 
|---|
|  |  |  | this.form.serviceFunddetails = 0; | 
|---|
|  |  |  | 
|---|
|  |  |  | this.form.serviceFunddetails = this.rbDetails; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (this.form.id != null) { | 
|---|
|  |  |  | // updateFund(this.form).then((response) => { | 
|---|
|  |  |  | //   if (response.code === 200) { | 
|---|
|  |  |  | //     this.loading = false; | 
|---|
|  |  |  | //     for (let m = 0; m < this.rbDetails.length; m++) { | 
|---|
|  |  |  | //       if (this.rbDetails[m].id > 0) { | 
|---|
|  |  |  | //         updateFunddetail(this.rbDetails[m]).then((response2) => { if (response.code != 200) { this.$modal.msgError("专家劳务费保存失败1:" + response.msg); } }); | 
|---|
|  |  |  | //       } else { | 
|---|
|  |  |  | //         addFunddetail(this.rbDetails[m]).then((response2) => { if (response.code != 200) { this.$modal.msgError("专家劳务费保存失败2:" + response.msg); } }); | 
|---|
|  |  |  | //       } | 
|---|
|  |  |  | //     } | 
|---|
|  |  |  | //     this.$modal.msgSuccess("专家劳务费保存成功!"); | 
|---|
|  |  |  | //   } else { | 
|---|
|  |  |  | //     this.$modal.msgError("专家劳务费保存失败:" + response.msg); | 
|---|
|  |  |  | //   } | 
|---|
|  |  |  | // }); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.form.recordstatus = -1; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // addorupdateFund(this.form).then((response) => { | 
|---|
|  |  |  | //   if (response.code === 200) { | 
|---|
|  |  |  | //     this.selectDonotor(this.curCase); | 
|---|
|  |  |  | //   } else { | 
|---|
|  |  |  | //     this.$modal.msgError("专家劳务费保存失败:" + response.msg); | 
|---|
|  |  |  | //   } | 
|---|
|  |  |  | // }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | addorupdateFund(this.form).then(response => { | 
|---|
|  |  |  | if (response.code === 200) { | 
|---|
|  |  |  | this.$modal.msgSuccess("申请单保存成功!"); | 
|---|
|  |  |  | // 非提醒状态下执行审批解决异步调用延迟问题 | 
|---|
|  |  |  | if (!this.Savereminder) { | 
|---|
|  |  |  | let checkFundObj = { | 
|---|
|  |  |  | // fundid: this.checkObj.fundid, | 
|---|
|  |  |  | fundid: this.curId, | 
|---|
|  |  |  | flowconclusion: this.checkObj.flowlevelone, | 
|---|
|  |  |  | flowcontent: this.checkObj.flowconclusion | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | this.$modal.loading("正在提交审核,请稍候!"); | 
|---|
|  |  |  | checkfund(checkFundObj).then(res => { | 
|---|
|  |  |  | //关闭窗口 | 
|---|
|  |  |  | this.$modal.closeLoading(); | 
|---|
|  |  |  | this.$modal.msgSuccess("审核完成!"); | 
|---|
|  |  |  | this.$store.dispatch("tagsView/delView", this.$route); | 
|---|
|  |  |  | this.$router.go(-1); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.Getnetworkheader(); | 
|---|
|  |  |  | this.getroute(); | 
|---|
|  |  |  | this.getExternalList(); | 
|---|
|  |  |  | this.getAccountList(); | 
|---|
|  |  |  | this.getUserList(); | 
|---|
|  |  |  | this.getUserProfile(); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | 
|---|
|  |  |  | // 手动计算 | 
|---|
|  |  |  | Manualcalculationfn() { | 
|---|
|  |  |  | ManualCalculation(this.rbDetails).then(res => { | 
|---|
|  |  |  | console.log(res); | 
|---|
|  |  |  | if (res.code == 200) { | 
|---|
|  |  |  | sessionStorage.removeItem("apiform"); | 
|---|
|  |  |  | sessionStorage.removeItem("apifunddetail"); | 
|---|
|  |  |  | 
|---|
|  |  |  | JSON.stringify(this.rbDetails) | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | sessionStorage.setItem("apiform", JSON.stringify(this.form)); | 
|---|
|  |  |  | this.$router.go(0); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | // this.$message({ | 
|---|
|  |  |  | //   type: "error", | 
|---|
|  |  |  | //   message: "申请失败" | 
|---|
|  |  |  | // this.$router.go(0); | 
|---|
|  |  |  | // this.$router.push({ | 
|---|
|  |  |  | //   path: "/finance/applyDetail/", | 
|---|
|  |  |  | //   query: { | 
|---|
|  |  |  | //     id: this.curId, | 
|---|
|  |  |  | //     businessType: this.businessType, | 
|---|
|  |  |  | //     operationType: this.operationType, | 
|---|
|  |  |  | //     curCase: this.curCase | 
|---|
|  |  |  | //   } | 
|---|
|  |  |  | // }); | 
|---|
|  |  |  | this.$modal.msgSuccess("计算成功"); | 
|---|
|  |  |  | this.handleCheck(); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.$message({ | 
|---|
|  |  |  | type: "error", | 
|---|
|  |  |  | message: "计算错误" | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | 
|---|
|  |  |  | updateBy: null, | 
|---|
|  |  |  | updateTime: null, | 
|---|
|  |  |  | uploadflag: null, | 
|---|
|  |  |  | itemdescribe: null, | 
|---|
|  |  |  | uploadtime: null, | 
|---|
|  |  |  | itemlist: [{ id: "27", itemName: "器官捐献伦理审核专家费" }], | 
|---|
|  |  |  | servicesscope: null, | 
|---|
|  |  |  | 
|---|
|  |  |  | beneficiaryname: null, | 
|---|
|  |  |  | beneficiaryno: null, | 
|---|
|  |  |  | unitname: null, | 
|---|
|  |  |  | itemdescribe: null, | 
|---|
|  |  |  | unitno: null, | 
|---|
|  |  |  | uintuserno: null, | 
|---|
|  |  |  | title: null, | 
|---|
|  |  |  | 
|---|
|  |  |  | rowfeeblocks: [], | 
|---|
|  |  |  | annexfiles: null | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | // if (this.Reminderquantity >= 5) { | 
|---|
|  |  |  | //   this.Savereminder = true; | 
|---|
|  |  |  | //   return; | 
|---|
|  |  |  | // } | 
|---|
|  |  |  | if (rowIndex == undefined || rowIndex == null || rowIndex < 0) { | 
|---|
|  |  |  | this.rbDetails.push(rowData); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | 
|---|
|  |  |  | .catch(() => { | 
|---|
|  |  |  | //几点取消的提示 | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //全部删除后添加一条新行 | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //计算总金额 | 
|---|
|  |  |  | sumTotalFee(row) { | 
|---|
|  |  |  | let allSum = 0; | 
|---|
|  |  |  | 
|---|
|  |  |  | totalprint(e) { | 
|---|
|  |  |  | // const id =this.row.id | 
|---|
|  |  |  | getdownloadBX(e).then(res => { | 
|---|
|  |  |  | if (res.downloadUrl) { | 
|---|
|  |  |  | var fileUrl = res; | 
|---|
|  |  |  | //获取当前网址 | 
|---|
|  |  |  | var urlBase = process.env.VUE_APP_BASE_API; | 
|---|
|  |  |  | var curWWWPath = window.document.location.href; | 
|---|
|  |  |  | var pos = curWWWPath.indexOf(window.document.location.pathname); | 
|---|
|  |  |  | // 创建a标签 | 
|---|
|  |  |  | var aEle = document.createElement("a"); | 
|---|
|  |  |  | aEle.href = | 
|---|
|  |  |  | curWWWPath.substring(0, pos) + urlBase + fileUrl["downloadUrl"]; | 
|---|
|  |  |  | aEle.click(); | 
|---|
|  |  |  | this.$alert("下载成功", "提示", { | 
|---|
|  |  |  | confirmButtonText: "确定", | 
|---|
|  |  |  | type: "success" | 
|---|
|  |  |  | var fileUrl = res; | 
|---|
|  |  |  | //获取当前网址 | 
|---|
|  |  |  | var urlBase = process.env.VUE_APP_BASE_API; | 
|---|
|  |  |  | var curWWWPath = window.document.location.href; | 
|---|
|  |  |  | var pos = curWWWPath.indexOf(window.document.location.pathname); | 
|---|
|  |  |  | // 创建a标签 | 
|---|
|  |  |  | var aEle = document.createElement("a"); | 
|---|
|  |  |  | aEle.href = | 
|---|
|  |  |  | curWWWPath.substring(0, pos) + urlBase + fileUrl["downloadUrl"]; | 
|---|
|  |  |  | console.log(aEle.href); | 
|---|
|  |  |  | // 添加Authorization头部 | 
|---|
|  |  |  | fetch(aEle.href, { | 
|---|
|  |  |  | headers: this.headers | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .then(response => { | 
|---|
|  |  |  | // 将文件下载链接作为blob对象进行下载 | 
|---|
|  |  |  | return response.blob(); | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .then(blob => { | 
|---|
|  |  |  | const url = window.URL.createObjectURL(new Blob([blob])); | 
|---|
|  |  |  | console.log(url); | 
|---|
|  |  |  | const link = document.createElement("a"); | 
|---|
|  |  |  | link.href = url; | 
|---|
|  |  |  | const name = fileUrl["downloadName"]; | 
|---|
|  |  |  | link.setAttribute("download", name); // 替换file.pdf为实际的文件名 | 
|---|
|  |  |  | document.body.appendChild(link); | 
|---|
|  |  |  | link.click(); | 
|---|
|  |  |  | link.parentNode.removeChild(link); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //文件上传 | 
|---|
|  |  |  | handleImageError(e) { | 
|---|
|  |  |  | // 加载失败 | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | handleImageLoad(e) { | 
|---|
|  |  |  | // 图片加载成功时执行的操作 | 
|---|
|  |  |  | console.log("Image loaded successfully"); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | handleUploadError() {}, | 
|---|
|  |  |  | remove(file, fileList) { | 
|---|
|  |  |  | const rbDetails = [...this.rbDetails]; | 
|---|
|  |  |  | this.fileListto.splice(this.fileListto.indexOf(file), 1); | 
|---|
|  |  |  | rbDetails[this.atpresent].annexfilesList = this.fileListto; | 
|---|
|  |  |  | if (this.activeName == "common") { | 
|---|
|  |  |  | this.fileListto.splice(this.fileListto.indexOf(file), 1); | 
|---|
|  |  |  | rbDetails[this.atpresent].annexfilesList = this.fileListto; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.invoicefileListto.splice(this.invoicefileListto.indexOf(file), 1); | 
|---|
|  |  |  | rbDetails[this.atpresent].invoicefilesList = this.invoicefileListto; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //文件上传成功回调 | 
|---|
|  |  |  | // uploadSccess(response, file, fileList) { | 
|---|
|  |  |  | //   //获取附件信息位置 | 
|---|
|  |  |  | //   if (response.code == 200) { | 
|---|
|  |  |  | //     this.form.filename = file.raw.name; | 
|---|
|  |  |  | //     this.$modal.msgSuccess(response.msg); | 
|---|
|  |  |  | //     this.fileList.push({ name: response.fileName, url: response.fileName }); | 
|---|
|  |  |  | //   } else { | 
|---|
|  |  |  | //   } | 
|---|
|  |  |  | // }, | 
|---|
|  |  |  | uploadSccess(response, file, fileList) { | 
|---|
|  |  |  | this.rbDetails; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | const config = { | 
|---|
|  |  |  | headers: { Authorization: "Bearer " + this.ICDtoken } | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | const pdfimg = this.Networkheader + "/prod-api" + response.fileName; | 
|---|
|  |  |  | //获取票据信息位置 | 
|---|
|  |  |  | 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.fileListto.push({ name: file.name, url: response.url }); | 
|---|
|  |  |  | this.pdfimgsrcList.push( | 
|---|
|  |  |  | this.Networkheader + "/prod-api" + response.fileName | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | this.pdftitle = "共" + this.pdfimgsrcList.length + "项"; | 
|---|
|  |  |  | if (this.activeName == "common") { | 
|---|
|  |  |  | if (response.code == 200) { | 
|---|
|  |  |  | this.previewpdf = true; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.pdfimg = this.Networkheader + "/prod-api" + response.fileName; | 
|---|
|  |  |  | fetch(pdfimg, config) | 
|---|
|  |  |  | .then(response => response.blob()) | 
|---|
|  |  |  | .then(blob => { | 
|---|
|  |  |  | // 将获取的数据流转换为URL | 
|---|
|  |  |  | this.pdfimg = URL.createObjectURL(blob); | 
|---|
|  |  |  | this.pdfimgsrcList.push(URL.createObjectURL(blob)); | 
|---|
|  |  |  | this.fileListto.push({ | 
|---|
|  |  |  | name: file.name, | 
|---|
|  |  |  | url: URL.createObjectURL(blob) | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .catch(error => { | 
|---|
|  |  |  | console.error("Error loading image", error); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.rbDetails[this.atpresent].annexfilesList = this.fileListto; | 
|---|
|  |  |  | this.$modal.msgSuccess(response.msg); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | console.log(this.fileListto, "新增后"); | 
|---|
|  |  |  | if (!this.rbDetails[this.atpresent].annexfilesList) { | 
|---|
|  |  |  | this.rbDetails[this.atpresent].annexfilesList = []; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.rbDetails[this.atpresent].annexfilesList.push({ | 
|---|
|  |  |  | name: file.name, | 
|---|
|  |  |  | url: response.fileName | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.pdftitle = "共" + this.pdfimgsrcList.length + "项"; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | console.log(response.msg); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | if (response.code == 200) { | 
|---|
|  |  |  | this.previewpdf = true; | 
|---|
|  |  |  | fetch(pdfimg, config) | 
|---|
|  |  |  | .then(response => response.blob()) | 
|---|
|  |  |  | .then(blob => { | 
|---|
|  |  |  | // 将获取的数据流转换为URL | 
|---|
|  |  |  | this.invoicepdfimg = URL.createObjectURL(blob); | 
|---|
|  |  |  | this.invoicepdfimgsrcList.push(URL.createObjectURL(blob)); | 
|---|
|  |  |  | this.invoicefileListto.push({ | 
|---|
|  |  |  | name: file.name, | 
|---|
|  |  |  | url: URL.createObjectURL(blob) | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .catch(error => { | 
|---|
|  |  |  | console.error("Error loading image", error); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.$modal.msgSuccess(response.msg); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | console.log(this.invoicefileListto, "新增后"); | 
|---|
|  |  |  | if (!this.rbDetails[this.atpresent].invoicefilesList) { | 
|---|
|  |  |  | this.rbDetails[this.atpresent].invoicefilesList = []; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.rbDetails[this.atpresent].invoicefilesList.push({ | 
|---|
|  |  |  | name: file.name, | 
|---|
|  |  |  | url: response.fileName | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.pdftitle = "共" + this.invoicepdfimgsrcList.length + "项"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 点击票据 | 
|---|
|  |  |  | Filepopup(index, rows, row) { | 
|---|
|  |  |  | this.tableDatatop = []; | 
|---|
|  |  |  | this.pdfimgsrcList = []; | 
|---|
|  |  |  | this.tableDatatop.push(row); | 
|---|
|  |  |  | const config = { | 
|---|
|  |  |  | headers: { Authorization: "Bearer " + this.ICDtoken } | 
|---|
|  |  |  | }; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.tableDatatop = []; | 
|---|
|  |  |  | this.fileListto = []; | 
|---|
|  |  |  | this.invoicefileListto = []; | 
|---|
|  |  |  | this.pdfimg = ""; | 
|---|
|  |  |  | this.invoicepdfimg = []; | 
|---|
|  |  |  | this.pdfimgsrcList = []; | 
|---|
|  |  |  | this.invoicepdfimgsrcList = []; | 
|---|
|  |  |  | this.tableDatatop.push(row); | 
|---|
|  |  |  | this.atpresent = index; | 
|---|
|  |  |  | this.pdfVisible = true; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (this.rbDetails[index].annexfilesList) { | 
|---|
|  |  |  | this.previewpdf = true; | 
|---|
|  |  |  | this.fileListto = this.rbDetails[index].annexfilesList; | 
|---|
|  |  |  | this.pdfimg = this.Networkheader + "/prod-api" + this.fileListto[0].url; | 
|---|
|  |  |  | // this.pdfimg = this.fileListto[0].url; | 
|---|
|  |  |  | this.fileListto.forEach(item => { | 
|---|
|  |  |  | this.pdfimgsrcList.push(this.Networkheader + "/prod-api" + item.url); | 
|---|
|  |  |  | // this.rbDetails[index].annexfilesList.forEach((value, indexson) => { | 
|---|
|  |  |  | //   const pdfimg = this.Networkheader + "/prod-api" + value.url; | 
|---|
|  |  |  | //   fetch(pdfimg, config) | 
|---|
|  |  |  | //     .then(response => response.blob()) | 
|---|
|  |  |  | //     .then(blob => { | 
|---|
|  |  |  | //       // 将获取的数据流转换为URL | 
|---|
|  |  |  | //       this.fileListto.push({ | 
|---|
|  |  |  | //         name: value.name, | 
|---|
|  |  |  | //         url: URL.createObjectURL(blob) | 
|---|
|  |  |  | //       }); | 
|---|
|  |  |  | //       if (this.fileListto.length == 1) { | 
|---|
|  |  |  | //         this.pdfimg = URL.createObjectURL(blob); | 
|---|
|  |  |  | //       } | 
|---|
|  |  |  | //       this.pdfimgsrcList.push(URL.createObjectURL(blob)); | 
|---|
|  |  |  | //     }) | 
|---|
|  |  |  | //     .catch(error => { | 
|---|
|  |  |  | //       console.error("Error loading image", error); | 
|---|
|  |  |  | //       return; | 
|---|
|  |  |  | //     }); | 
|---|
|  |  |  | // }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | const fetchPromises = this.rbDetails[index].annexfilesList.map( | 
|---|
|  |  |  | (value, indexson) => { | 
|---|
|  |  |  | const pdfimg = this.Networkheader + "/prod-api" + value.url; | 
|---|
|  |  |  | return fetch(pdfimg, config) | 
|---|
|  |  |  | .then(response => response.blob()) | 
|---|
|  |  |  | .then(blob => { | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | name: value.name, | 
|---|
|  |  |  | url: URL.createObjectURL(blob) | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .catch(error => { | 
|---|
|  |  |  | console.error("Error loading image", error); | 
|---|
|  |  |  | return null; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | Promise.all(fetchPromises).then(fileListto => { | 
|---|
|  |  |  | this.fileListto = fileListto.filter(item => item !== null); | 
|---|
|  |  |  | this.pdfimg = this.fileListto[0].url; | 
|---|
|  |  |  | console.log(this.pdfimg, "pdfimg"); | 
|---|
|  |  |  | this.pdfimgsrcList = this.fileListto.map(item => item.url); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.pdftitle = "共" + this.pdfimgsrcList.length + "项"; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.previewpdf = true; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.fileListto = []; | 
|---|
|  |  |  | this.pdfimg = ""; | 
|---|
|  |  |  | this.pdftitle = ""; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //发票 | 
|---|
|  |  |  | if (this.rbDetails[index].invoicefilesList) { | 
|---|
|  |  |  | const fetchPromises = this.rbDetails[index].invoicefilesList.map( | 
|---|
|  |  |  | (value, indexson) => { | 
|---|
|  |  |  | const pdfimg = this.Networkheader + "/prod-api" + value.url; | 
|---|
|  |  |  | return fetch(pdfimg, config) | 
|---|
|  |  |  | .then(response => response.blob()) | 
|---|
|  |  |  | .then(blob => { | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | name: value.name, | 
|---|
|  |  |  | url: URL.createObjectURL(blob) | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .catch(error => { | 
|---|
|  |  |  | console.error("Error loading image", error); | 
|---|
|  |  |  | return null; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | ); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | Promise.all(fetchPromises).then(invoicefileListto => { | 
|---|
|  |  |  | this.invoicefileListto = invoicefileListto.filter( | 
|---|
|  |  |  | item => item !== null | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | this.invoicepdfimg = this.invoicefileListto[0].url; | 
|---|
|  |  |  | console.log(this.invoicepdfimg, "invoicepdfimg"); | 
|---|
|  |  |  | this.invoicepdfimgsrcList = this.invoicefileListto.map( | 
|---|
|  |  |  | item => item.url | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.previewpdf = true; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.invoicefileListto = []; | 
|---|
|  |  |  | this.invoicepdfimg = ""; | 
|---|
|  |  |  | this.pdftitle = ""; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (this.activeName == "common") { | 
|---|
|  |  |  | this.pdftitle = "共" + this.pdfimgsrcList.length + "项"; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.pdftitle = "共" + this.invoicepdfimgsrcList.length + "项"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | console.log(this.fileListto, "this.fileListto"); | 
|---|
|  |  |  | console.log(this.rbDetails[index].annexfilesList, "annexfilesList"); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 点击已上传文件 | 
|---|
|  |  |  | downFile(item) { | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // if (!this.pdfimgsrcList.includes(this.pdfimg)) { | 
|---|
|  |  |  | //   this.pdfimgsrcList.push(this.pdfimg); | 
|---|
|  |  |  | // } | 
|---|
|  |  |  | if (this.activeName == "common") { | 
|---|
|  |  |  | 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") { | 
|---|
|  |  |  | console.log(item, "展示"); | 
|---|
|  |  |  | this.previewpdf = true; | 
|---|
|  |  |  | if (item.url) { | 
|---|
|  |  |  | this.pdfimg = item.url; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.pdfimg = ""; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.pdfimg = this.Networkheader + "/prod-api" + item.url; | 
|---|
|  |  |  | this.hintitle = "当前文件暂不支持预览"; | 
|---|
|  |  |  | this.$modal.msgWarning("当前文件暂不支持预览"); | 
|---|
|  |  |  | this.previewpdf = false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.hintitle = "当前文件暂不支持预览"; | 
|---|
|  |  |  | this.$modal.msgWarning("当前文件暂不支持预览"); | 
|---|
|  |  |  | this.previewpdf = false; | 
|---|
|  |  |  | 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 = item.url; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.invoicepdfimg = ""; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.hintitle = "当前文件暂不支持预览"; | 
|---|
|  |  |  | this.$modal.msgWarning("当前文件暂不支持预览"); | 
|---|
|  |  |  | this.previewpdf = false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | getIndexInArray(arr, obj) { | 
|---|
|  |  |  | return arr.indexOf(obj); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 发票切换 | 
|---|
|  |  |  | handleClick(tab, event) { | 
|---|
|  |  |  | if (this.activeName == "common") { | 
|---|
|  |  |  | this.pdftitle = "共" + this.pdfimgsrcList.length + "项"; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.pdftitle = "共" + this.invoicepdfimgsrcList.length + "项"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 点击删除 | 
|---|
|  |  |  | deletedowfile(row) { | 
|---|
|  |  |  | 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); | 
|---|
|  |  |  | console.log(row); | 
|---|
|  |  |  | let indexvalue = ""; | 
|---|
|  |  |  | if (this.activeName == "common") { | 
|---|
|  |  |  | const indexlist = this.getIndexInArray(this.pdfimgsrcList, row.url); | 
|---|
|  |  |  | this.pdfimgsrcList.splice(indexlist, 1); | 
|---|
|  |  |  | const index = this.getIndexInArray(this.fileListto, row); | 
|---|
|  |  |  | this.fileListto.splice(index, 1); | 
|---|
|  |  |  | console.log(this.rbDetails[this.atpresent].annexfilesList); | 
|---|
|  |  |  | indexvalue = this.rbDetails[this.atpresent].annexfilesList.findIndex( | 
|---|
|  |  |  | item => item.name == row.name | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | console.log(indexvalue, "删除索引"); | 
|---|
|  |  |  | this.rbDetails[this.atpresent].annexfilesList.splice(indexvalue, 1); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | const indexlist = this.getIndexInArray( | 
|---|
|  |  |  | this.invoicepdfimgsrcList, | 
|---|
|  |  |  | row.url | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | this.invoicepdfimgsrcList.splice(indexlist, 1); | 
|---|
|  |  |  | const index = this.getIndexInArray(this.invoicefileListto, row); | 
|---|
|  |  |  | this.invoicefileListto.splice(index, 1); | 
|---|
|  |  |  | console.log(this.rbDetails[this.atpresent].invoicefilesList); | 
|---|
|  |  |  | indexvalue = this.rbDetails[this.atpresent].invoicefilesList.findIndex( | 
|---|
|  |  |  | item => item.name == row.name | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | console.log(indexvalue, "删除索引"); | 
|---|
|  |  |  | this.rbDetails[this.atpresent].invoicefilesList.splice(indexvalue, 1); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | // 点击上移 | 
|---|
|  |  |  | moveupdowfile(row) { | 
|---|
|  |  |  | const index = this.getIndexInArray(this.fileListto, row); | 
|---|
|  |  |  | const item = this.fileListto.splice(index, 1)[0]; // 移除指定索引处的元素,并保存到item变量中 | 
|---|
|  |  |  | this.fileListto.splice(index - 1, 0, item); // 将item插入到索引位置的前一位 | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | //专家/医疗机构/费用报销机构选择 | 
|---|
|  |  |  | ShowDetailDialog(spoce, showType) { | 
|---|
|  |  |  | this.spocewl = spoce; | 
|---|
|  |  |  | this.selectionType = showType; | 
|---|
|  |  |  | if (this.businessType == 4 || this.businessType == 3 || !showType) { | 
|---|
|  |  |  | this.selectionType = this.experthear; | 
|---|
|  |  |  | if (this.activeName == "common") { | 
|---|
|  |  |  | const index = this.fileListto.findIndex(item => item.name == row.name); | 
|---|
|  |  |  | const item = this.fileListto.splice(index, 1)[0]; // 移除指定索引处的元素,并保存到item变量中 | 
|---|
|  |  |  | this.fileListto.splice(index - 1, 0, item); // 将item插入到索引位置的前一位 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | const indexann = this.rbDetails[ | 
|---|
|  |  |  | this.atpresent | 
|---|
|  |  |  | ].annexfilesList.findIndex(item => item.name == row.name); | 
|---|
|  |  |  | const itemann = this.rbDetails[this.atpresent].annexfilesList.splice( | 
|---|
|  |  |  | indexann, | 
|---|
|  |  |  | 1 | 
|---|
|  |  |  | )[0]; // 移除指定索引处的元素,并保存到item变量中 | 
|---|
|  |  |  | this.rbDetails[this.atpresent].annexfilesList.splice( | 
|---|
|  |  |  | indexann - 1, | 
|---|
|  |  |  | 0, | 
|---|
|  |  |  | itemann | 
|---|
|  |  |  | ); // 将itemann插入到索引位置的前一位 | 
|---|
|  |  |  | console.log(indexann, "indexann"); | 
|---|
|  |  |  | console.log(index, "index"); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | const index = this.invoicefileListto.findIndex( | 
|---|
|  |  |  | item => item.name == row.name | 
|---|
|  |  |  | ); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | const item = this.invoicefileListto.splice(index, 1)[0]; // 移除指定索引处的元素,并保存到item变量中 | 
|---|
|  |  |  | this.invoicefileListto.splice(index - 1, 0, item); // 将item插入到索引位置的前一位 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | const indexinvo = this.rbDetails[ | 
|---|
|  |  |  | this.atpresent | 
|---|
|  |  |  | ].invoicefilesList.findIndex(item => item.name == row.name); | 
|---|
|  |  |  | const iteminvo = this.rbDetails[this.atpresent].invoicefilesList.splice( | 
|---|
|  |  |  | indexinvo, | 
|---|
|  |  |  | 1 | 
|---|
|  |  |  | )[0]; // 移除指定索引处的元素,并保存到item变量中 | 
|---|
|  |  |  | this.rbDetails[this.atpresent].invoicefilesList.splice( | 
|---|
|  |  |  | indexinvo - 1, | 
|---|
|  |  |  | 0, | 
|---|
|  |  |  | iteminvo | 
|---|
|  |  |  | ); // 将iteminvo插入到索引位置的前一位 | 
|---|
|  |  |  | } | 
|---|
|  |  |  | // if (!showType) { | 
|---|
|  |  |  | //   this.selectionType = this.experthear; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // } | 
|---|
|  |  |  | this.expertfrom = "1"; | 
|---|
|  |  |  | console.log(spoce); | 
|---|
|  |  |  | this.funddetailForm.index = spoce.$index; | 
|---|
|  |  |  | this.funddetailForm.beneficiaryno = spoce.row.beneficiaryno; | 
|---|
|  |  |  | this.funddetailForm.beneficiaryname = spoce.row.beneficiaryname; | 
|---|
|  |  |  | this.funddetailForm.unitno = spoce.row.unitno; | 
|---|
|  |  |  | this.funddetailForm.unitname = spoce.row.unitname; | 
|---|
|  |  |  | this.funddetailForm.expertname = ""; | 
|---|
|  |  |  | this.funddetailForm.expertidcardno = ""; | 
|---|
|  |  |  | this.funddetailForm.expertunitno = ""; | 
|---|
|  |  |  | this.funddetailForm.expertunitname = ""; | 
|---|
|  |  |  | this.funddetailForm.experttitle = ""; | 
|---|
|  |  |  | this.funddetailForm.expertdepositbank = ""; | 
|---|
|  |  |  | this.funddetailForm.expertbankcardno = ""; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.showSelectionDialog = true; | 
|---|
|  |  |  | console.log( | 
|---|
|  |  |  | this.rbDetails[this.atpresent].annexfilesList, | 
|---|
|  |  |  | "annexfilesList" | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | console.log(this.fileListto, "fileListto"); | 
|---|
|  |  |  | // console.log(this.rbDetails[this.atpresent].invoicefilesList,'invoicefilesList'); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | Downloadfile(row) { | 
|---|
|  |  |  | window.location.href = row.url; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //专家/医疗机构/费用报销机构选择 | 
|---|
|  |  |  | ConfirmDetailDialog() { | 
|---|
|  |  |  | // if (this.businessType == 4) { | 
|---|
|  |  |  | //   if (this.experthear == "expert") { | 
|---|
|  |  |  | //     this.funddetailForm.beneficiaryname = this.unitforname; | 
|---|
|  |  |  | //   } else { | 
|---|
|  |  |  | //     this.funddetailForm.beneficiaryname = this.Personnelforname; | 
|---|
|  |  |  | //   } | 
|---|
|  |  |  | // } | 
|---|
|  |  |  | let tempIndex = this.funddetailForm.index; | 
|---|
|  |  |  | let tempExpertName = this.funddetailForm.beneficiaryname; | 
|---|
|  |  |  | let tempUnitname = this.funddetailForm.unitname; | 
|---|
|  |  |  | let singleDetail = this.rbDetails[tempIndex]; | 
|---|
|  |  |  | showSelectionDialog(scope, selectiontype) { | 
|---|
|  |  |  | this.selectionScope = scope; | 
|---|
|  |  |  | this.selectionType = selectiontype; | 
|---|
|  |  |  | this.accountselectform.index = scope.$index; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if ( | 
|---|
|  |  |  | this.selectionType == "expert" || | 
|---|
|  |  |  | this.businessType == 4 || | 
|---|
|  |  |  | this.businessType == 3 | 
|---|
|  |  |  | ) { | 
|---|
|  |  |  | if (this.expertfrom == "1" || this.experthear == "unit") { | 
|---|
|  |  |  | //从专家列表获取信息 | 
|---|
|  |  |  | this.personlist.map(res => { | 
|---|
|  |  |  | if (tempExpertName == res.username) { | 
|---|
|  |  |  | singleDetail.beneficiaryno = res.userno; | 
|---|
|  |  |  | singleDetail.beneficiaryname = res.username; | 
|---|
|  |  |  | singleDetail.bankcardno = res.bankcardno; | 
|---|
|  |  |  | singleDetail.branchbankname = res.branchbankname; | 
|---|
|  |  |  | singleDetail.depositbank = res.depositbank; | 
|---|
|  |  |  | singleDetail.idcardno = res.idcardno; | 
|---|
|  |  |  | singleDetail.phone = res.telephone; | 
|---|
|  |  |  | singleDetail.title = res.title; | 
|---|
|  |  |  | singleDetail.unitname = res.unitname; | 
|---|
|  |  |  | singleDetail.unitno = parseInt(res.unitno); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | if (this.selectionType == "account") { | 
|---|
|  |  |  | //默认从账户库选择:1,账户库;2,新建账户 | 
|---|
|  |  |  | this.accountfrom = "1"; | 
|---|
|  |  |  | if (scope.row.idcardno) { | 
|---|
|  |  |  | this.accountselectform.accountname = | 
|---|
|  |  |  | scope.row.beneficiaryname + "(" + scope.row.idcardno + ")"; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | //保存新增专家 | 
|---|
|  |  |  | this.expertform.id = null; | 
|---|
|  |  |  | this.expertform.userno = | 
|---|
|  |  |  | this.personlist[this.personlist.length - 1].id + 1; | 
|---|
|  |  |  | this.expertform.usertype = "expert"; | 
|---|
|  |  |  | this.expertform.username = this.funddetailForm.expertname; | 
|---|
|  |  |  | this.expertform.idcardno = this.funddetailForm.expertidcardno; | 
|---|
|  |  |  | this.expertform.sex = null; | 
|---|
|  |  |  | this.expertform.telephone = null; | 
|---|
|  |  |  | this.expertform.address = null; | 
|---|
|  |  |  | this.expertform.wbm = null; | 
|---|
|  |  |  | this.expertform.pym = null; | 
|---|
|  |  |  | this.accountselectform.accountname = | 
|---|
|  |  |  | scope.row.beneficiaryname + "(" + scope.row.bankcardno + ")"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.accountselectform.accountno = scope.row.beneficiaryno; | 
|---|
|  |  |  | this.accountselectform.expertunitname = ""; | 
|---|
|  |  |  | this.accountselectform.expertunitno = ""; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.expertform.unitno = this.funddetailForm.expertunitno; | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | let unitIndex = this.unitList.findIndex( | 
|---|
|  |  |  | item => this.expertform.unitno == item.organizationid | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | if (unitIndex > -1) { | 
|---|
|  |  |  | this.expertform.unitname = this.unitList[ | 
|---|
|  |  |  | unitIndex | 
|---|
|  |  |  | ].organizationname; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.expertform.unitname = this.expertform.unitno; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } catch { | 
|---|
|  |  |  | this.expertform.unitname = this.expertform.unitno; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.expertform.title = this.funddetailForm.experttitle; | 
|---|
|  |  |  | this.expertform.personnelunitno = null; | 
|---|
|  |  |  | this.accountselectform.username = ""; | 
|---|
|  |  |  | this.accountselectform.userno = ""; | 
|---|
|  |  |  | this.accountselectform.idcardno = ""; | 
|---|
|  |  |  | this.accountselectform.telephone = ""; | 
|---|
|  |  |  | this.accountselectform.title = ""; | 
|---|
|  |  |  | this.accountselectform.unitno = ""; | 
|---|
|  |  |  | this.accountselectform.unitname = ""; | 
|---|
|  |  |  | this.accountselectform.depositbank = ""; | 
|---|
|  |  |  | this.accountselectform.bankcardno = ""; | 
|---|
|  |  |  | this.accountselectform.personnelunitno = ""; | 
|---|
|  |  |  | this.accountselectform.address = ""; | 
|---|
|  |  |  | this.accountselectform.telephone = ""; | 
|---|
|  |  |  | } else if (this.selectionType == "workunit") { | 
|---|
|  |  |  | this.accountselectform.expertunitname = scope.row.unitname; | 
|---|
|  |  |  | this.accountselectform.expertunitno = scope.row.unitno; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.showselectiondialog = true; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.expertform.depositbank = this.funddetailForm.expertdepositbank; | 
|---|
|  |  |  | this.expertform.bankcardno = this.funddetailForm.expertbankcardno; | 
|---|
|  |  |  | this.expertform.branchbankname = null; | 
|---|
|  |  |  | this.expertform.remark = null; | 
|---|
|  |  |  | this.expertform.del_flag = "0"; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | addExternalperson(this.expertform).then(response => { | 
|---|
|  |  |  | if (response.code == 200) { | 
|---|
|  |  |  | this.$modal.msgSuccess("新增专家信息成功!"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | listExternalperson().then(res => { | 
|---|
|  |  |  | this.personlist = res.rows; | 
|---|
|  |  |  | //从专家列表获取信息 | 
|---|
|  |  |  | this.personlist.map(res => { | 
|---|
|  |  |  | if (res.username == this.funddetailForm.expertname) { | 
|---|
|  |  |  | singleDetail.beneficiaryno = res.userno; | 
|---|
|  |  |  | singleDetail.beneficiaryname = res.username; | 
|---|
|  |  |  | singleDetail.bankcardno = res.bankcardno; | 
|---|
|  |  |  | singleDetail.branchbankname = res.branchbankname; | 
|---|
|  |  |  | singleDetail.depositbank = res.depositbank; | 
|---|
|  |  |  | singleDetail.idcardno = res.idcardno; | 
|---|
|  |  |  | singleDetail.phone = res.telephone; | 
|---|
|  |  |  | singleDetail.title = res.title; | 
|---|
|  |  |  | singleDetail.unitname = res.unitname; | 
|---|
|  |  |  | singleDetail.unitno = parseInt(res.unitno); | 
|---|
|  |  |  | //专家/医疗机构/费用报销机构选择 | 
|---|
|  |  |  | confirmSelectionDialog() { | 
|---|
|  |  |  | this.$refs["accountselectform"].validate(valid => { | 
|---|
|  |  |  | let tempIndex = this.accountselectform.index; | 
|---|
|  |  |  | if (this.selectionType == "account") { | 
|---|
|  |  |  | if (this.accountfrom == "1") { | 
|---|
|  |  |  | //赋值信息 | 
|---|
|  |  |  | if ( | 
|---|
|  |  |  | this.rbDetails[tempIndex].userno != this.accountselectform.userno | 
|---|
|  |  |  | ) { | 
|---|
|  |  |  | this.accountlist.map(res => { | 
|---|
|  |  |  | if (res.id == this.accountselectform.accountname) { | 
|---|
|  |  |  | console.log(res, "res"); | 
|---|
|  |  |  | const hasIdOne = this.rbDetails.some( | 
|---|
|  |  |  | obj => obj.beneficiaryname == res.username | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | if (hasIdOne) { | 
|---|
|  |  |  | this.$modal.msgWarning( | 
|---|
|  |  |  | "服务项目表中,人员名称:" + | 
|---|
|  |  |  | res.username + | 
|---|
|  |  |  | "重复,请注意核对信息!" | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.rbDetails[tempIndex].beneficiaryno = res.userno; | 
|---|
|  |  |  | this.rbDetails[tempIndex].beneficiaryname = res.username; | 
|---|
|  |  |  | this.rbDetails[tempIndex].depositbank = res.depositbank; | 
|---|
|  |  |  | this.rbDetails[tempIndex].branchbankname = res.branchbankname; | 
|---|
|  |  |  | this.rbDetails[tempIndex].bankcardno = res.bankcardno; | 
|---|
|  |  |  | this.rbDetails[tempIndex].phone = res.telephone; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (res.usertype == "org") { | 
|---|
|  |  |  | this.rbDetails[tempIndex].idcardno = ""; | 
|---|
|  |  |  | this.rbDetails[tempIndex].title = ""; | 
|---|
|  |  |  | this.rbDetails[tempIndex].unitno = ""; | 
|---|
|  |  |  | this.rbDetails[tempIndex].unitname = ""; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.rbDetails[tempIndex].idcardno = res.idcardno; | 
|---|
|  |  |  | this.rbDetails[tempIndex].title = res.title; | 
|---|
|  |  |  | this.rbDetails[tempIndex].unitno = parseInt(res.unitno); | 
|---|
|  |  |  | this.rbDetails[tempIndex].unitname = res.unitname; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } else if (this.selectionType == "unit") { | 
|---|
|  |  |  | singleDetail.unitno = this.funddetailForm.unitno; | 
|---|
|  |  |  | if (this.businessType == 1 || this.businessType == 2) { | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | let unitIndex = this.unitList.findIndex( | 
|---|
|  |  |  | item => singleDetail.unitno == item.organizationid | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | if (unitIndex > -1) { | 
|---|
|  |  |  | singleDetail.unitname = this.unitList[unitIndex].organizationname; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | singleDetail.unitname = singleDetail.unitno; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } catch { | 
|---|
|  |  |  | singleDetail.unitname = singleDetail.unitno; | 
|---|
|  |  |  | } else if (this.accountfrom == "2") { | 
|---|
|  |  |  | //保存新增账号 | 
|---|
|  |  |  | //获取用户编号 | 
|---|
|  |  |  | getOnlyCode(this.seqnoParams).then(res => { | 
|---|
|  |  |  | this.accountform.userno = res.data.currentvalue; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.accountform.id = null; | 
|---|
|  |  |  | this.accountform.usertype = this.accountselectform.usertype; | 
|---|
|  |  |  | this.accountform.username = this.accountselectform.username; | 
|---|
|  |  |  | this.accountform.idcardno = this.accountselectform.idcardno; | 
|---|
|  |  |  | this.accountform.sex = null; | 
|---|
|  |  |  | this.accountform.title = this.accountselectform.title; | 
|---|
|  |  |  | this.accountform.telephone = this.accountselectform.telephone; | 
|---|
|  |  |  | this.accountform.address = this.accountselectform.address; | 
|---|
|  |  |  | this.accountform.wbm = null; | 
|---|
|  |  |  | this.accountform.pym = null; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | this.accountform.depositbank = this.accountselectform.depositbank; | 
|---|
|  |  |  | this.accountform.bankcardno = this.accountselectform.bankcardno; | 
|---|
|  |  |  | this.accountform.branchbankname = null; | 
|---|
|  |  |  | this.accountform.remark = null; | 
|---|
|  |  |  | this.accountform.del_flag = "0"; | 
|---|
|  |  |  | this.accountform.personnelunitno = null; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (this.accountselectform.usertype == "expert") { | 
|---|
|  |  |  | this.accountform.unitno = this.accountselectform.unitno; | 
|---|
|  |  |  | this.unitList.map(res => { | 
|---|
|  |  |  | if (res.organizationid == this.accountform.unitno) { | 
|---|
|  |  |  | this.accountform.unitname = res.organizationname; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.accountform.userstatus = 1; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | addExternalperson(this.accountform).then(response => { | 
|---|
|  |  |  | if (response.code == 200) { | 
|---|
|  |  |  | // //重新获取账户列表 | 
|---|
|  |  |  | // listExternalperson().then(res => { | 
|---|
|  |  |  | //   this.accountlist = res.rows; | 
|---|
|  |  |  | // }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | console.log("addExternalperson", response.data.id); | 
|---|
|  |  |  | if (this.accountselectform.usertype == "org") { | 
|---|
|  |  |  | this.accountlist.push({ | 
|---|
|  |  |  | id: response.data.id, | 
|---|
|  |  |  | userno: this.accountform.userno, | 
|---|
|  |  |  | username: this.accountform.username, | 
|---|
|  |  |  | idcardno: this.accountform.idcardno, | 
|---|
|  |  |  | title: this.accountform.title, | 
|---|
|  |  |  | depositbank: this.accountform.depositbank, | 
|---|
|  |  |  | bankcardno: this.accountform.bankcardno, | 
|---|
|  |  |  | unitno: this.accountform.unitno, | 
|---|
|  |  |  | unitname: this.accountform.unitname, | 
|---|
|  |  |  | userid: | 
|---|
|  |  |  | this.accountform.username + | 
|---|
|  |  |  | "(" + | 
|---|
|  |  |  | this.accountform.bankcardno + | 
|---|
|  |  |  | ")" | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.$modal.msgSuccess("您已添加成功新账户信息!"); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.accountlist.push({ | 
|---|
|  |  |  | id: response.data.id, | 
|---|
|  |  |  | userno: this.accountform.userno, | 
|---|
|  |  |  | username: this.accountform.username, | 
|---|
|  |  |  | idcardno: this.accountform.idcardno, | 
|---|
|  |  |  | title: this.accountform.title, | 
|---|
|  |  |  | depositbank: this.accountform.depositbank, | 
|---|
|  |  |  | bankcardno: this.accountform.bankcardno, | 
|---|
|  |  |  | unitno: this.accountform.unitno, | 
|---|
|  |  |  | unitname: this.accountform.unitname, | 
|---|
|  |  |  | userid: | 
|---|
|  |  |  | this.accountform.username + | 
|---|
|  |  |  | "(" + | 
|---|
|  |  |  | this.accountform.idcardno + | 
|---|
|  |  |  | ")" | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | this.$modal.msgSuccess( | 
|---|
|  |  |  | "您已添加成功新账户信息,需要在账号状态启用后才能被使用!" | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.accountselectform.accountno = this.accountform.userno; | 
|---|
|  |  |  | this.accountselectform.accountname = this.accountselectform.username; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //赋值信息 | 
|---|
|  |  |  | this.accountlist.map(res => { | 
|---|
|  |  |  | if (res.userno == this.accountselectform.accountno) { | 
|---|
|  |  |  | this.rbDetails[tempIndex].beneficiaryno = res.userno; | 
|---|
|  |  |  | this.rbDetails[tempIndex].beneficiaryname = res.username; | 
|---|
|  |  |  | this.rbDetails[tempIndex].depositbank = res.depositbank; | 
|---|
|  |  |  | this.rbDetails[tempIndex].branchbankname = | 
|---|
|  |  |  | res.branchbankname; | 
|---|
|  |  |  | this.rbDetails[tempIndex].bankcardno = res.bankcardno; | 
|---|
|  |  |  | this.rbDetails[tempIndex].phone = res.telephone; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (res.usertype == "org") { | 
|---|
|  |  |  | this.rbDetails[tempIndex].idcardno = ""; | 
|---|
|  |  |  | this.rbDetails[tempIndex].title = ""; | 
|---|
|  |  |  | this.rbDetails[tempIndex].unitno = ""; | 
|---|
|  |  |  | this.rbDetails[tempIndex].unitname = ""; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | this.rbDetails[tempIndex].idcardno = res.idcardno; | 
|---|
|  |  |  | this.rbDetails[tempIndex].title = res.title; | 
|---|
|  |  |  | this.rbDetails[tempIndex].unitno = parseInt(res.unitno); | 
|---|
|  |  |  | this.rbDetails[tempIndex].unitname = res.unitname; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } else if (this.businessType == 3 || this.businessType == 4) { | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | let unitIndex = this.feeUnitList.findIndex( | 
|---|
|  |  |  | item => singleDetail.unitno == item.reportNo | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | if (unitIndex > -1) { | 
|---|
|  |  |  | singleDetail.unitname = this.feeUnitList[unitIndex].reportName; | 
|---|
|  |  |  | singleDetail.depositbank = this.feeUnitList[ | 
|---|
|  |  |  | unitIndex | 
|---|
|  |  |  | ].depositbank; | 
|---|
|  |  |  | singleDetail.bankcardno = this.feeUnitList[unitIndex].bankcardno; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | singleDetail.unitname = singleDetail.unitno; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } catch { | 
|---|
|  |  |  | singleDetail.unitname = singleDetail.unitno; | 
|---|
|  |  |  | } else if (this.selectionType == "workunit") { | 
|---|
|  |  |  | if ( | 
|---|
|  |  |  | this.rbDetails[tempIndex].unitname != | 
|---|
|  |  |  | this.accountselectform.expertunitname | 
|---|
|  |  |  | ) { | 
|---|
|  |  |  | this.rbDetails[ | 
|---|
|  |  |  | tempIndex | 
|---|
|  |  |  | ].unitname = this.accountselectform.expertunitname; | 
|---|
|  |  |  | this.unitList.map(res => { | 
|---|
|  |  |  | if ( | 
|---|
|  |  |  | res.organizationname == this.accountselectform.expertunitname | 
|---|
|  |  |  | ) { | 
|---|
|  |  |  | this.rbDetails[tempIndex].unitno = res.organizationid; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //关闭窗口 | 
|---|
|  |  |  | this.showselectiondialog = false; | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | tableParValueChange(row, tto) { | 
|---|
|  |  |  | const regex = /^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[012])(0[1-9]|[12]\d|3[01])\d{3}([0-9]|X)$/; | 
|---|
|  |  |  | if (tto) { | 
|---|
|  |  |  | if (regex.test(accountselectform.expertidcardno)) { | 
|---|
|  |  |  | row.error = ""; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | row.error = "身份证号码格式错误"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // if (this.experthear == "unit") { | 
|---|
|  |  |  | //   singleDetail.unitname = ""; | 
|---|
|  |  |  | // } | 
|---|
|  |  |  | if (this.businessType == 4 || this.businessType == 3) { | 
|---|
|  |  |  | singleDetail.beneficiaryname = this.funddetailForm.beneficiaryname; | 
|---|
|  |  |  | if (regex.test(row.idcardno)) { | 
|---|
|  |  |  | row.error = ""; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | row.error = "身份证号码格式错误"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | this.rbDetails[tempIndex] = singleDetail; | 
|---|
|  |  |  | this.showSelectionDialog = false; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //账户类型选择变化 | 
|---|
|  |  |  | userTypeChange(type) { | 
|---|
|  |  |  | if (type == "org") { | 
|---|
|  |  |  | this.accountselectform.idcardno = ""; | 
|---|
|  |  |  | this.accountselectform.unitno = ""; | 
|---|
|  |  |  | this.accountselectform.unitname = ""; | 
|---|
|  |  |  | this.accountselectform.personnelunitno = ""; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | // this.$modal.msgWarning(type); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | //获取路由参数 | 
|---|
|  |  |  | this.Getnetworkheader(); | 
|---|
|  |  |  | this.getroute(); | 
|---|
|  |  |  | this.getExternalList(); | 
|---|
|  |  |  | this.getFeeUnitList(); | 
|---|
|  |  |  | this.getAccountList(); | 
|---|
|  |  |  | this.getUserProfile(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //生命周期 - 挂载完成(可以访问DOM元素) | 
|---|
|  |  |  | mounted() { | 
|---|
|  |  |  | window.addEventListener("beforeunload", e => this.beforeunloadHandler(e)); | 
|---|
|  |  |  | this.getUserList(); | 
|---|
|  |  |  | this.getUserProfile(); | 
|---|
|  |  |  | let apifunddetailForm = this.funddetailForm; | 
|---|
|  |  |  | let apiaccountselectform = this.accountselectform; | 
|---|
|  |  |  | let apiform = this.form; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // this.getFeeUnitList(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  |  | 
|---|
|  |  |  | beforeRouteLeave(to, from, next) { | 
|---|
|  |  |  | // 执行销毁操作 | 
|---|
|  |  |  | this.$destroy(); | 
|---|
|  |  |  | next(); | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | beforeCreate() {}, //生命周期 - 创建之前 | 
|---|
|  |  |  | beforeMount() {}, //生命周期 - 挂载之前 | 
|---|
|  |  |  | beforeUpdate() {}, //生命周期 - 更新之前 | 
|---|