| | |
| | | <el-row> |
| | | <el-col :span="5"> |
| | | <el-form-item label="申请日期" prop="createTime"> |
| | | <el-date-picker clearable style="width: 100%" v-model="form.createTime" type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" placeholder="申请日期"> |
| | | <el-date-picker |
| | | clearable |
| | | style="width: 100%" |
| | | v-model="form.createTime" |
| | | type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="申请日期" |
| | | > |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="经办人" prop="username"> |
| | | <el-select v-model="form.username" placeholder="申请人" clearable filterable allow-create style="width: 100%"> |
| | | <el-option v-for="dict in userlist" :key="dict.index" :label="dict.nickname" |
| | | :value="dict.nickname"></el-option> |
| | | <el-select |
| | | v-model="form.username" |
| | | placeholder="申请人" |
| | | clearable |
| | | filterable |
| | | allow-create |
| | | style="width: 100%" |
| | | @change="getUserAccount" |
| | | > |
| | | <el-option |
| | | v-for="dict in userlist" |
| | | :key="dict.index" |
| | | :label="dict.nickname" |
| | | :value="dict.nickname" |
| | | ></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="所属组别" prop="deptmentname"> |
| | | <el-input v-model="form.deptmentname" placeholder="请输入所属组别" clearable /> |
| | | <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-input |
| | | v-model="form.managername" |
| | | placeholder="请输入组长" |
| | | clearable |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | }}</el-radio> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="10"> |
| | | <el-form-item label="申请说明" prop="remark"> |
| | | <el-input v-model="form.remark" placeholder="申请说明" /> |
| | | <el-col :span="5"> |
| | | <el-form-item label="银行名称" prop="bankname"> |
| | | <el-input v-model="form.bankname" placeholder="请输入银行名称" /> |
| | | </el-form-item> </el-col |
| | | ><el-col :span="5"> |
| | | <el-form-item label="银行账号" prop="bankcardno"> |
| | | <el-input |
| | | v-model="form.bankcardno" |
| | | placeholder="请输入银行账号" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | |
| | | --> |
| | | <el-col :span="5"> |
| | | <el-form-item label="申请金额" prop="pretaxcost"> |
| | | <el-input v-model="form.pretaxcost" placeholder="税前金额合计" :disabled="true" /> |
| | | <el-input |
| | | v-model="form.pretaxcost" |
| | | placeholder="税前金额合计" |
| | | :disabled="true" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <!-- |
| | | <el-col :span="5"> |
| | | <el-form-item label="应缴税" prop="taxcost" v-if="businessType == '1' || businessType == '2'"> |
| | | <el-input v-model="form.taxcost" placeholder="应缴税金额合计" :disabled="true" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <!-- |
| | | <el-col :span="5"> |
| | | <el-form-item label="税后金额" prop="pretaxcost"> |
| | | <el-input v-model="form.taxedcost" placeholder="税后金额合计" :disabled="true" /> |
| | | </el-form-item> |
| | | </el-col>--> |
| | | <el-col :span="10"> |
| | | <el-form-item label="申请说明" prop="remark"> |
| | | <el-input v-model="form.remark" placeholder="申请说明" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="捐献者" prop="name"> |
| | | <el-input :disabled="true" v-model="form.name" placeholder="请输入捐献者姓名" /> |
| | | <el-input |
| | | :disabled="true" |
| | | v-model="form.donorname" |
| | | placeholder="请输入捐献者姓名" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <!-- |
| | |
| | | <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 |
| | | @click.native.prevent="importFeeItems" |
| | | type="primary" |
| | | size="small" |
| | | > |
| | | 导入服务项目 |
| | | </el-button> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-table :data="rbDetails" v-loading="loading" border highlight-current-row> |
| | | <el-table-column prop="orderno" align="center" label="序号" width="65"> |
| | | <el-table |
| | | :data="rbDetails" |
| | | v-loading="loading" |
| | | max-height="400" |
| | | border |
| | | highlight-current-row |
| | | > |
| | | <el-table-column |
| | | prop="orderno" |
| | | align="center" |
| | | label="序号" |
| | | width="65" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.orderno" placeholder="序号" /> |
| | | </template> |
| | |
| | | <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" label="服务类型" width="200"> |
| | | <el-table-column |
| | | prop="applytype" |
| | | align="center" |
| | | label="服务类型" |
| | | width="200" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-select v-model="scope.row.applytype" placeholder="服务类型" @change="loadFeeItems(scope.row)"> |
| | | <el-option v-for="dict in rowfeeItemTypes" :key="dict.index" :label="dict.label" |
| | | :value="dict.value"></el-option> |
| | | <el-select |
| | | v-model="scope.row.applytypename" |
| | | placeholder="服务类型" |
| | | @change="verifyFeeItemType(scope.row)" |
| | | > |
| | | <el-option |
| | | v-for="dict in rowfeeItemTypes" |
| | | :key="dict.index" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | ></el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="itemid" align="center" label="服务项目" width="260"> |
| | | <el-table-column |
| | | prop="itemid" |
| | | align="center" |
| | | label="服务项目" |
| | | width="260" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-select v-model="scope.row.itemid" placeholder="服务项目" filterable @change="verifyFeeItem(scope.row)" |
| | | :filter-method="val => searchItemType(val, scope)"> |
| | | <el-option v-for="dict in scope.row.itemlist" :key="dict.index" :label="dict.itemName" |
| | | :value="dict.id"></el-option> |
| | | <el-select |
| | | v-model="scope.row.itemname" |
| | | placeholder="服务项目" |
| | | filterable |
| | | @change="verifyFeeItem(scope.row)" |
| | | :filter-method="val => searchItemType(val, scope)" |
| | | > |
| | | <el-option |
| | | v-for="dict in scope.row.itemlist" |
| | | :key="dict.index" |
| | | :label="dict.itemName" |
| | | :value="dict.id" |
| | | ></el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="servicesscope" align="center" label="服务说明" v-if="form.applytype == '1'" width="180"> |
| | | <el-table-column |
| | | prop="servicesscope" |
| | | align="center" |
| | | label="服务说明" |
| | | v-if="form.applytype == '1'" |
| | | width="180" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-select v-model="scope.row.servicesscope" placeholder="服务说明" clearable allow-create filterable |
| | | @change="selectedRemark(scope.row)"> |
| | | <el-option v-for="dict in scope.row.rowfeeblocks" :key="dict.servicesscope" :label="dict.remark" |
| | | :value="dict.servicesscope"></el-option> |
| | | <el-select |
| | | v-model="scope.row.servicesscope" |
| | | placeholder="服务说明" |
| | | clearable |
| | | allow-create |
| | | @change="verifyFeeRemark(scope.row)" |
| | | > |
| | | <el-option |
| | | v-for="dict in scope.row.rowfeeblocks" |
| | | :key="dict.servicesscope" |
| | | :label="dict.remark" |
| | | :value="dict.servicesscope" |
| | | ></el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="price" align="center" label="单价" width="120" v-if="0"> |
| | | <el-table-column |
| | | prop="price" |
| | | align="center" |
| | | label="单价" |
| | | width="120" |
| | | v-if="businessType == 4" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.price" placeholder="单价" @blur="val => { |
| | | sumTotalFee(scope.row); |
| | | } |
| | | " /> |
| | | <el-input |
| | | v-model="scope.row.price" |
| | | placeholder="单价" |
| | | @blur=" |
| | | val => { |
| | | sumTotalFee(scope.row); |
| | | } |
| | | " |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="quantity" align="center" label="数量" width="120" v-if="0"> |
| | | <el-table-column |
| | | prop="quantity" |
| | | align="center" |
| | | label="数量" |
| | | width="120" |
| | | v-if="businessType == 4" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.quantity" placeholder="数量" @blur="val => { |
| | | sumTotalFee(scope.row); |
| | | } |
| | | " /> |
| | | <el-input |
| | | v-model="scope.row.quantity" |
| | | placeholder="数量" |
| | | @blur=" |
| | | val => { |
| | | sumTotalFee(scope.row); |
| | | } |
| | | " |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column v-if="businessType == 3 || businessType == 4 || ismanager == true" prop="amount" |
| | | align="center" label="税前金额" width="120"> |
| | | <el-table-column |
| | | v-if=" |
| | | businessType == 2 || |
| | | businessType == 3 || |
| | | businessType == 4 || |
| | | ismanager == true |
| | | " |
| | | prop="amount" |
| | | align="center" |
| | | :label="amountLabel" |
| | | width="120" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <!-- |
| | | <el-select v-model="scope.row.amount" placeholder="税前金额" clearable filterable allow-create |
| | |
| | | :value="dict.expense"></el-option> |
| | | </el-select> |
| | | --> |
| | | <el-input v-model="scope.row.amount" placeholder="税前金额" /> |
| | | <el-input v-model="scope.row.amount" placeholder="金额" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="taxedamount" align="center" label="税后金额" width="120" v-if="(this.ismanager == true) & |
| | | (form.applytype == '1' || form.applytype == '2') |
| | | "> |
| | | <el-table-column |
| | | prop="taxedamount" |
| | | align="center" |
| | | label="税后金额" |
| | | width="120" |
| | | v-if=" |
| | | (this.ismanager == true) & |
| | | (form.applytype == '1' || form.applytype == '2') |
| | | " |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.taxedamount" placeholder="税后金额" /> |
| | | <el-input |
| | | v-model="scope.row.taxedamount" |
| | | placeholder="税后金额" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="beneficiaryname" align="center" label="姓名" width="120" |
| | | v-if="form.applytype == '1' || form.applytype == '2'"> |
| | | <el-table-column |
| | | prop="beneficiaryname" |
| | | align="center" |
| | | label="姓名" |
| | | width="120" |
| | | v-if="form.applytype == '1' || form.applytype == '2'" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-button type="primary" plain @click="ShowDetailDialog(scope, 'expert')">{{ scope.row.beneficiaryname |
| | | }}</el-button> |
| | | <el-button |
| | | type="primary" |
| | | plain |
| | | @click="ShowDetailDialog(scope, 'expert')" |
| | | >{{ scope.row.beneficiaryname }}</el-button |
| | | > |
| | | <!-- <el-select |
| | | filterable |
| | | allow-create |
| | |
| | | </el-select> --> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="unitno" align="center" label="单位名称" width="250"> |
| | | <el-table-column |
| | | prop="unitno" |
| | | align="center" |
| | | label="单位名称" |
| | | width="250" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-button type="primary" plain @click="ShowDetailDialog(scope, 'unit')">{{ scope.row.unitname |
| | | }}</el-button> |
| | | <el-button |
| | | type="primary" |
| | | plain |
| | | @click="ShowDetailDialog(scope, 'unit')" |
| | | >{{ scope.row.unitname }}</el-button |
| | | > |
| | | <!-- <el-select |
| | | v-model="scope.row.unitno" |
| | | placeholder="单位" |
| | |
| | | </el-select> --> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="title" align="center" label="职称" width="120" |
| | | v-if="form.applytype == '1' || form.applytype == '2'"> |
| | | <el-table-column |
| | | prop="title" |
| | | align="center" |
| | | label="职称" |
| | | width="120" |
| | | v-if="form.applytype == '1' || form.applytype == '2'" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.title" placeholder="职称" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="idcardno" align="center" label="身份证号" width="200" |
| | | v-if="form.applytype == '1' || form.applytype == '2'"> |
| | | <el-table-column |
| | | prop="idcardno" |
| | | align="center" |
| | | label="身份证号" |
| | | width="200" |
| | | v-if="form.applytype == '1' || form.applytype == '2'" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.idcardno" placeholder="身份证号" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="depositbank" align="center" label="开户银行" width="200" v-if="form.applytype != '4'"> |
| | | <el-table-column |
| | | prop="depositbank" |
| | | align="center" |
| | | label="开户银行" |
| | | width="200" |
| | | v-if="form.applytype != '4'" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.depositbank" placeholder="开户银行" /> |
| | | <el-input |
| | | v-model="scope.row.depositbank" |
| | | placeholder="开户银行" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="bankcardno" align="center" label="银行帐号" width="210" v-if="form.applytype != '4'"> |
| | | <el-table-column |
| | | prop="bankcardno" |
| | | align="center" |
| | | label="银行帐号" |
| | | width="210" |
| | | v-if="form.applytype != '4'" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.bankcardno" placeholder="银行帐号" /> |
| | | <el-input |
| | | v-model="scope.row.bankcardno" |
| | | placeholder="银行帐号" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="remark" align="center" label="备注" v-if="form.applytype == '4'"> |
| | | <el-table-column prop="remark" align="center" label="备注"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.remark" placeholder="备注" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column fixed="right" align="center" label="操作" width="180"> |
| | | <el-table-column |
| | | fixed="right" |
| | | align="center" |
| | | label="操作" |
| | | width="180" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-button type="text" size="mini" @click="addRow(scope.$index)" |
| | | v-if="operationType == 'add' || operationType == 'update'">新增</el-button> |
| | | <el-button @click.native.prevent=" |
| | | deleteRows(scope.row, scope.$index, rbDetails) |
| | | " type="text" size="small" v-if="operationType == 'add' || operationType == 'update'"> |
| | | <el-button |
| | | type="text" |
| | | size="mini" |
| | | @click="addRow(scope.$index)" |
| | | v-if=" |
| | | operationType == 'add' || |
| | | operationType == 'update' || |
| | | operationType == 'check' |
| | | " |
| | | >新增</el-button |
| | | > |
| | | <el-button |
| | | @click.native.prevent=" |
| | | deleteRows(scope.row, scope.$index, rbDetails) |
| | | " |
| | | type="text" |
| | | size="small" |
| | | v-if=" |
| | | operationType == 'add' || |
| | | operationType == 'update' || |
| | | operationType == 'check' |
| | | " |
| | | > |
| | | 删除 |
| | | </el-button> |
| | | <el-button @click.native.prevent=" |
| | | Filepopup(scope.$index, rbDetails, scope.row) |
| | | " type="text" size="small">票据</el-button> |
| | | <el-button |
| | | @click.native.prevent=" |
| | | Filepopup(scope.$index, rbDetails, scope.row) |
| | | " |
| | | type="text" |
| | | size="small" |
| | | v-if="businessType == 3 || businessType == 4" |
| | | >票据</el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | --> |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-form-item label="费用申请附件" align="left" prop="annexbankcard" v-if="businessType == 0"> |
| | | <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="fileList" multiple |
| | | :limit="20" :headers="headers" :on-success="(response, file, fileList) => |
| | | uploadSccess(response, file, fileList) |
| | | " :on-preview="downFile" :disabled="operationType == 'detail'" :on-error="handleUploadError" |
| | | :on-exceed="handleExceed" :on-remove="remove" accept="image/*,.pdf"> |
| | | <el-button :disabled="operationType == 'detail'" size="small" type="primary">上传</el-button> |
| | | <el-form-item |
| | | label="费用申请附件" |
| | | align="left" |
| | | prop="annexbankcard" |
| | | v-if="businessType == 0" |
| | | > |
| | | <el-upload |
| | | size="mini" |
| | | class="upload-demo" |
| | | :action="uploadFileUrl" |
| | | :file-list="fileList" |
| | | multiple |
| | | :limit="20" |
| | | :headers="headers" |
| | | :on-success=" |
| | | (response, file, fileList) => |
| | | uploadSccess(response, file, fileList) |
| | | " |
| | | :on-preview="downFile" |
| | | :disabled="operationType == 'detail'" |
| | | :on-error="handleUploadError" |
| | | :on-exceed="handleExceed" |
| | | :on-remove="remove" |
| | | accept="image/*,.pdf" |
| | | > |
| | | <el-button |
| | | :disabled="operationType == 'detail'" |
| | | size="small" |
| | | type="primary" |
| | | >上传票据</el-button |
| | | > |
| | | </el-upload> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row v-if="operationType == 'detail' || operationType == 'check'"> |
| | | <el-table :data="fundflowList" border> |
| | | <el-table-column label="审核人" align="center" width="120" prop="checkusername" /> |
| | | <el-table-column label="审核日期" align="center" width="160" prop="createTime" /> |
| | | <el-table-column label="审核结果" align="center" width="200" prop="flowconclusion"><template |
| | | slot-scope="scope"><span v-if="scope.row.flowconclusion == 1">通过</span><span |
| | | v-if="scope.row.flowconclusion == 2">不通过</span></template> |
| | | <el-table-column |
| | | label="审核日期" |
| | | align="center" |
| | | width="160" |
| | | prop="createTime" |
| | | /> |
| | | <el-table-column |
| | | label="审核人" |
| | | align="center" |
| | | width="120" |
| | | prop="checkusername" |
| | | /> |
| | | <el-table-column |
| | | label="审核结果" |
| | | align="center" |
| | | width="200" |
| | | prop="flowconclusion" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span v-if="scope.row.flowconclusion == 1">通过</span> |
| | | <span v-if="scope.row.flowconclusion == 2">不通过</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="审核备注" align="center" prop="flowcontent" /> |
| | | <el-table-column |
| | | label="审核备注" |
| | | align="center" |
| | | prop="flowcontent" |
| | | /> |
| | | </el-table> |
| | | </el-row> |
| | | <el-row style="margin-top: 25px; margin-bottom: 5px" v-if="operationType == 'check'"> |
| | | <el-row |
| | | style="margin-top: 25px; margin-bottom: 5px" |
| | | v-if="operationType == 'check'" |
| | | > |
| | | <el-col :span="7"> |
| | | <el-form-item label="审核结果" align="left"> |
| | | <el-radio-group v-model="checkObj.flowlevelone" align="left"> |
| | |
| | | </el-row> |
| | | </el-form> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="submitForm" |
| | | v-if="operationType == 'add' || operationType == 'update'">提交保存</el-button> |
| | | <el-button type="primary" @click="checksubmit" v-if="operationType == 'check'">提交审核</el-button> |
| | | <el-button |
| | | type="primary" |
| | | @click="submitForm" |
| | | v-if=" |
| | | operationType == 'add' || |
| | | operationType == 'update' || |
| | | ismanager == true |
| | | " |
| | | >提交保存</el-button |
| | | > |
| | | <el-button |
| | | type="primary" |
| | | @click="checksubmit" |
| | | v-if="operationType == 'check'" |
| | | >提交审核</el-button |
| | | > |
| | | <el-button @click="cancel">关 闭</el-button> |
| | | </div> |
| | | </div> |
| | | |
| | | <el-dialog :visible.sync="showSelectionDialog" :close-on-click-modal="false" :title="'单位/专家信息选择'" width="500px" |
| | | style="text-align: center" v-loading="loading"> |
| | | <el-dialog |
| | | :visible.sync="showSelectionDialog" |
| | | :close-on-click-modal="false" |
| | | :title="'单位/专家信息选择'" |
| | | width="500px" |
| | | style="text-align: center" |
| | | v-loading="loading" |
| | | > |
| | | <el-form ref="funddetailForm" :model="funddetailForm"> |
| | | <el-row> |
| | | <el-col :span="24" v-if="selectionType == 'expert'"> |
| | |
| | | </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-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-item label="单位名称" prop="unitno" label-width="120px" v-if="businessType == 1 || businessType == 2"> |
| | | <el-select v-model="funddetailForm.unitno" placeholder="单位名称" clearable filterable allow-create |
| | | style="width: 100%"> |
| | | <el-option v-for="(spec, index) in unitList" :key="index" :label="spec.organizationname" |
| | | :value="spec.organizationid"></el-option> |
| | | <el-form-item |
| | | label="单位名称" |
| | | prop="unitno" |
| | | label-width="120px" |
| | | v-if="businessType == 1 || businessType == 2" |
| | | > |
| | | <el-select |
| | | v-model="funddetailForm.unitno" |
| | | placeholder="单位名称" |
| | | clearable |
| | | filterable |
| | | allow-create |
| | | style="width: 100%" |
| | | > |
| | | <el-option |
| | | 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 || businessType == 4"> |
| | | <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"></el-option> |
| | | <el-form-item |
| | | label="发票单位名称" |
| | | prop="unitno" |
| | | label-width="120px" |
| | | v-if="businessType == 3 || businessType == 4" |
| | | > |
| | | <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" |
| | | ></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | <el-row> |
| | | <el-col :span="12" v-if="expertfrom == '2'"> |
| | | <el-form-item label="专家姓名" prop="expertname" label-width="80px"> |
| | | <el-input v-model="funddetailForm.expertname" placeholder="必填项" /> |
| | | <el-input |
| | | v-model="funddetailForm.expertname" |
| | | placeholder="必填项" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12" v-if="expertfrom == '2'"> |
| | | <el-form-item label="职 称" prop="experttitle" label-width="80px"> |
| | | <el-select v-model="funddetailForm.experttitle" placeholder="必填项"> |
| | | <el-option v-for="dict in dict.type.sys_professionaltitle" :key="dict.value" :label="dict.label" |
| | | :value="dict.label"></el-option> |
| | | <el-form-item |
| | | label="职 称" |
| | | prop="experttitle" |
| | | label-width="80px" |
| | | > |
| | | <el-select |
| | | v-model="funddetailForm.experttitle" |
| | | placeholder="必填项" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_professionaltitle" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.label" |
| | | ></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <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 |
| | | 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="24" v-if="expertfrom == '2'"> |
| | | <el-form-item label="单位名称" prop="expertunitno" label-width="80px"> |
| | | <el-select v-model="funddetailForm.expertunitno" placeholder="单位名称" clearable filterable allow-create |
| | | style="width: 100%"> |
| | | <el-option v-for="(spec, index) in unitList" :key="index" :label="spec.organizationname" |
| | | :value="spec.organizationid"></el-option> |
| | | </el-select> </el-form-item></el-col> |
| | | <el-form-item |
| | | label="单位名称" |
| | | prop="expertunitno" |
| | | label-width="80px" |
| | | > |
| | | <el-select |
| | | v-model="funddetailForm.expertunitno" |
| | | placeholder="单位名称" |
| | | clearable |
| | | filterable |
| | | allow-create |
| | | style="width: 100%" |
| | | > |
| | | <el-option |
| | | v-for="(spec, index) in unitList" |
| | | :key="index" |
| | | :label="spec.organizationname" |
| | | :value="spec.organizationid" |
| | | ></el-option> |
| | | </el-select> </el-form-item |
| | | ></el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24" v-if="expertfrom == '2'"> |
| | | <el-form-item label="开户银行" prop="expertdepositbank" label-width="80px"> |
| | | <el-input v-model="funddetailForm.expertdepositbank" placeholder="必填项" /> |
| | | <el-form-item |
| | | label="开户银行" |
| | | prop="expertdepositbank" |
| | | label-width="80px" |
| | | > |
| | | <el-input |
| | | v-model="funddetailForm.expertdepositbank" |
| | | placeholder="必填项" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="24" v-if="expertfrom == '2'"> |
| | | <el-form-item label="银行卡号" prop="expertbankcardno" label-width="80px"> |
| | | <el-input v-model="funddetailForm.expertbankcardno" placeholder="必填项" /> |
| | | <el-form-item |
| | | label="银行卡号" |
| | | prop="expertbankcardno" |
| | | label-width="80px" |
| | | > |
| | | <el-input |
| | | v-model="funddetailForm.expertbankcardno" |
| | | 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> |
| | | <el-button type="primary" @click="ConfirmDetailDialog()" |
| | | >确 定</el-button |
| | | > |
| | | </span> |
| | | </el-dialog> |
| | | <el-dialog :title="pdftitle" :visible.sync="pdfVisible" width="50%"> |
| | | <el-dialog |
| | | v-dialogDrags |
| | | :modal="false" |
| | | :close-on-click-modal="false" |
| | | :title="pdftitle" |
| | | :visible.sync="pdfVisible" |
| | | width="60%" |
| | | > |
| | | <div class="pdfimg"> |
| | | <div class="box-pdf"> |
| | | <div> |
| | | <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="fileListto" multiple |
| | | :limit="20" :headers="headers" :on-success="(response, file, fileList) => |
| | | uploadSccess(response, file, fileList) |
| | | " :on-preview="downFile" :disabled="operationType == 'detail'" :on-error="handleUploadError" |
| | | :on-exceed="handleExceed" :on-remove="remove" accept="image/*,.pdf"> |
| | | <el-button :disabled="operationType == 'detail'" size="small" type="primary">上传</el-button> |
| | | <el-upload |
| | | size="mini" |
| | | class="upload-demo" |
| | | :action="uploadFileUrl" |
| | | :file-list="fileListto" |
| | | :show-file-list="false" |
| | | multiple |
| | | drag |
| | | :limit="20" |
| | | :headers="headers" |
| | | :on-success=" |
| | | (response, file, fileList) => |
| | | uploadSccess(response, file, fileList) |
| | | " |
| | | :on-preview="downFile" |
| | | :disabled="operationType == 'detail'" |
| | | :on-error="handleUploadError" |
| | | :on-exceed="handleExceed" |
| | | :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> |
| | | <!-- <div class="el-upload__tip" slot="tip"> |
| | | 只能上传jpg/png文件,且不超过500kb |
| | | </div> --> |
| | | </el-upload> |
| | | <el-table |
| | | :data="fileListto" |
| | | @row-click="downFile" |
| | | style="width: 100%" |
| | | > |
| | | <el-table-column |
| | | prop="name" |
| | | :show-overflow-tooltip="true" |
| | | label="名称" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <i style="color:#409EFF" class=" el-icon-s-order" />{{ |
| | | scope.row.name |
| | | }} |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="name" |
| | | width="180" |
| | | :show-overflow-tooltip="true" |
| | | label="功能" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | | type="primary" |
| | | size="mini" |
| | | @click.native.prevent="deletedowfile(scope.row)" |
| | | >删除</el-button |
| | | > |
| | | <el-button |
| | | type="primary" |
| | | size="mini" |
| | | @click.native.prevent="moveupdowfile(scope.row)" |
| | | >上移</el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | <!-- <div |
| | | class="pdftit" |
| | |
| | | </div> |
| | | |
| | | <div v-if="this.previewpdf" class="pdfimgmin"> |
| | | <img :src="pdfimg" /> |
| | | <!-- <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-dialog> |
| | | <el-dialog title="提示" :visible.sync="Savereminder" width="30%"> |
| | | <el-alert |
| | | :title=" |
| | | '您已添加' + |
| | | totalquantity + |
| | | '条数据,为防止数据丢失是否提交保存再继续添加。' |
| | | " |
| | | type="warning" |
| | | > |
| | | </el-alert> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="unsave">取 消</el-button> |
| | | <el-button type="primary" @click="Savenow">确 定</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | |
| | | listDonatebaseinfo, |
| | | getDonatebaseinfo |
| | | } from "@/api/project/donatebaseinfo"; |
| | | |
| | | import debounce from "lodash/debounce"; |
| | | import { |
| | | onelistFund, |
| | | listFund, |
| | |
| | | unitList: [], |
| | | //费用报销机构列表 |
| | | feeUnitList: [], |
| | | // 网络请求头 |
| | | Networkheader: null, |
| | | |
| | | itemlist: [], |
| | | |
| | |
| | | totalAfterTaxAmount: 0.0, |
| | | totalAmount: 0.0, |
| | | |
| | | |
| | | //费用类型数组 |
| | | feeItemTypes: [], |
| | | |
| | |
| | | rowfeeblocks: [], |
| | | |
| | | fundflowList: [], |
| | | // 随机数 |
| | | randomnumber: "", |
| | | |
| | | //专家/单位选择:expert/unit |
| | | selectionType: "", |
| | | showSelectionDialog: false, |
| | | //税前金额标题:专家费-税前金额;医学成本、办公费用-金额 |
| | | amountLabel: "税前金额", |
| | | |
| | | // 表单校验 |
| | | rules: { |
| | |
| | | checkObj: { |
| | | flowlevelone: null, |
| | | flowconclusion: null, |
| | | fundid: null, |
| | | fundid: null |
| | | }, |
| | | |
| | | // 查询参数 |
| | |
| | | //票据文件 |
| | | pdftitle: "", |
| | | pdfimg: "", |
| | | pdfimgsrcList: [], |
| | | pdfVisible: false, |
| | | previewpdf: false, |
| | | hintitle: "选中左侧已上传文件预览查看", |
| | | atpresent: "" |
| | | atpresent: "", |
| | | Savereminder: false, //提醒保存弹框 |
| | | Reminderquantity: 0, //提醒数量 |
| | | totalquantity: 0, //总数量 |
| | | Modifyornot: 0 //是否修改 |
| | | }; |
| | | }, |
| | | // vue路由控制页面关闭提示 |
| | | beforeRouteLeave(to, from, next) { |
| | | if ( |
| | | JSON.stringify(this.form) == sessionStorage.getItem("apiform") && |
| | | JSON.stringify(this.rbDetails) == sessionStorage.getItem("apifunddetail") |
| | | ) { |
| | | console.log("cg1"); |
| | | sessionStorage.removeItem("apiform"); |
| | | sessionStorage.removeItem("apifunddetail"); |
| | | |
| | | //就是上面的状态 如果是true , 则不询问是否保存, 当然这个方法比较笨, 大家可以使用更优雅的方式 |
| | | next(); |
| | | } else { |
| | | console.log("cg2"); |
| | | this.$confirm("离开页面 , 更新数据将不做保存, 请确认已经保存", "提示", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning" |
| | | }) |
| | | .then(() => { |
| | | sessionStorage.removeItem("apiform"); |
| | | sessionStorage.removeItem("apifunddetail"); |
| | | this.$router.go(-1); |
| | | next(); |
| | | }) |
| | | .catch(() => { |
| | | // alert("router") |
| | | }); |
| | | } |
| | | }, |
| | | //监听属性 类似于data概念 |
| | | computed: {}, |
| | |
| | | watch: {}, |
| | | //方法集合 |
| | | methods: { |
| | | // 浏览器页面关闭或刷新提示 |
| | | beforeunloadHandler(e) { |
| | | if ( |
| | | (JSON.stringify(this.form) == sessionStorage.getItem("apiform") && |
| | | JSON.stringify(this.rbDetails) == |
| | | sessionStorage.getItem("apifunddetail")) || |
| | | !sessionStorage.getItem("apifunddetail") |
| | | ) { |
| | | console.log(cg); |
| | | } else { |
| | | this._beforeUnload_time = new Date().getTime(); |
| | | e = e || window.event; |
| | | if (e) { |
| | | e.returnValue = "关闭提示"; |
| | | } |
| | | return "关闭提示"; |
| | | } |
| | | }, |
| | | |
| | | // 表单重置 |
| | | reset() { |
| | | this.form = { |
| | |
| | | //清空附件 |
| | | this.fileList = []; |
| | | }, |
| | | // 获取请求头 |
| | | Getnetworkheader() { |
| | | let string = window.location.href; |
| | | if (string.includes("9091")) { |
| | | const index = string.indexOf("9091"); |
| | | this.Networkheader = string.slice(0, index + 4); // 截取9091及其前部字符 |
| | | // console.log(this.Networkheader); |
| | | } else { |
| | | const index = string.indexOf("8032"); |
| | | this.Networkheader = string.slice(0, index + 4); // 截取8032及其前部字符 |
| | | } |
| | | }, |
| | | /** 通过参数获取业务类型 */ |
| | | getroute() { |
| | | //选择业务类型:1、新增;2、修改;3、查看 |
| | |
| | | |
| | | // if (!this.businessType && !this.operationType) { |
| | | if (this.businessType == "1") { |
| | | this.curCase = this.$route.query.curCase; |
| | | this.businessName = "专家劳务费申请单" |
| | | this.businessName = "专家劳务费申请单"; |
| | | this.amountLabel = "税前金额"; |
| | | this.getUnitList(); |
| | | } |
| | | else if (this.businessType == "2") { |
| | | this.curCase = this.$route.query.curCase; |
| | | } else if (this.businessType == "2") { |
| | | this.businessName = "伦理专家劳务费申请单"; |
| | | this.amountLabel = "税前金额"; |
| | | this.getUnitList(); |
| | | } |
| | | else if (this.businessType == "3") { |
| | | if (this.operationType != "check") { |
| | | this.curCase = this.$route.query.curCase; |
| | | } |
| | | } else if (this.businessType == "3") { |
| | | this.businessName = "医学成本报销单"; |
| | | } |
| | | else if (this.businessType == "4") { |
| | | this.amountLabel = "金额"; |
| | | } else if (this.businessType == "4") { |
| | | this.businessName = "办公费用报销单"; |
| | | this.amountLabel = "金额"; |
| | | |
| | | // this.getBaseInfoList(); |
| | | } |
| | | |
| | | if (this.operationType == "add") { |
| | | this.title = this.businessName + "新建"; |
| | | if (this.operationType != "4") { |
| | | this.curCase = this.$route.query.curCase; |
| | | console.log("this.curCase", this.curCase); |
| | | } |
| | | this.handleAdd(); |
| | | } |
| | | else if (this.operationType == "update") { |
| | | } else if (this.operationType == "update") { |
| | | this.title = this.businessName + "修改"; |
| | | this.handleUpdate(); |
| | | } |
| | | else if (this.operationType == "detail") { |
| | | } else if (this.operationType == "detail") { |
| | | this.title = this.businessName + "查看"; |
| | | this.handleDetail(); |
| | | } |
| | | else if (this.operationType == "check") { |
| | | } else if (this.operationType == "check") { |
| | | this.title = this.businessName + "审核"; |
| | | this.handleCheck(); |
| | | } |
| | |
| | | this.businessType == "2" || |
| | | this.businessType == "3" |
| | | ) { |
| | | console.log("", this.curCase); |
| | | this.form.infoid = this.curCase.id; |
| | | this.form.donorname = this.curCase.name; |
| | | this.form.donorno = this.curCase.donorno; |
| | |
| | | |
| | | getFund(this.curId).then(response => { |
| | | this.form = response.data; |
| | | sessionStorage.removeItem("apiform"); |
| | | |
| | | sessionStorage.setItem("apiform", JSON.stringify(this.form)); |
| | | |
| | | // this.form.recordstate =-1; |
| | | // this.form.recordstatus = response.data.recordstatus + ""; |
| | | //附件处理 |
| | |
| | | //明细处理 |
| | | getownFundDetail(this.curId).then(res => { |
| | | this.rbDetails = res.data; |
| | | console.log(res); |
| | | |
| | | console.log(this.curId, res.data); |
| | | if (this.rbDetails.length > 0) { |
| | | for (let m = 0; m < this.rbDetails.length; m++) { |
| | | this.rbDetails[m].itemlist = []; |
| | |
| | | // }); |
| | | // }); |
| | | } |
| | | console.log("yeil"); |
| | | sessionStorage.removeItem("apifunddetail"); |
| | | sessionStorage.setItem( |
| | | "apifunddetail", |
| | | JSON.stringify(this.rbDetails) |
| | | ); |
| | | } else { |
| | | this.addRow(0); |
| | | } |
| | | }); |
| | | }); |
| | | }, |
| | | /** 修改按钮操作 */ |
| | | handleCheck() { |
| | | this.isopen = 0; |
| | | this.reset(); |
| | | |
| | | getFund(this.curId).then(response => { |
| | | this.form = response.data; |
| | | //附件处理 |
| | | // this.fileList = this.form.annexbankcard ? this.form.annexbankcard.split(",").map(item => ({ url: item, name: item })) : [] |
| | | |
| | | //业务明细 |
| | | getownFundDetail(this.curId).then(res => { |
| | | this.rbDetails = res.data; |
| | | for (let m = 0; m < this.rbDetails.length; m++) { |
| | | this.rbDetails[m].itemlist = []; |
| | | this.getFeeItems(m, this.rbDetails[m]); |
| | | this.rbDetails[m].rowfeeblocks = []; |
| | | this.rbDetails[m].rowfeeblocks.push({ |
| | | expense: this.rbDetails[m].expense, |
| | | expensedescribe: this.rbDetails[m].servicesscopename, |
| | | remark: this.rbDetails[m].servicesscope, |
| | | servicesscope: this.rbDetails[m].servicesscope |
| | | }); |
| | | } |
| | | }); |
| | | |
| | | //业务流程 |
| | | let listFundflowparams = { |
| | | fundid: this.curId, |
| | | fundtype: 2 |
| | | }; |
| | | listFundflow(listFundflowparams).then(res => { |
| | | this.fundflowList = res.rows; |
| | | }); |
| | | }); |
| | | |
| | | }, |
| | | |
| | | /** 查看按钮操作 */ |
| | |
| | | |
| | | getFund(this.curId).then(response => { |
| | | this.form = response.data; |
| | | sessionStorage.removeItem("apiform"); |
| | | |
| | | sessionStorage.setItem("apiform", JSON.stringify(this.form)); |
| | | |
| | | console.log("response.data", response.data); |
| | | //附件处理 |
| | | // this.fileList = this.form.annexbankcard ? this.form.annexbankcard.split(",").map(item => ({ url: item, name: item })) : [] |
| | | |
| | | //业务明细 |
| | | getownFundDetail(this.curId).then(res => { |
| | | console.log(res); |
| | | this.rbDetails = res.data; |
| | | for (let m = 0; m < this.rbDetails.length; m++) { |
| | | this.rbDetails[m].itemlist = []; |
| | | this.getFeeItems(m, this.rbDetails[m]); |
| | | |
| | | this.rbDetails[m].rowfeeblocks = []; |
| | | this.rbDetails[m].rowfeeblocks.push({ |
| | | expense: this.rbDetails[m].expense, |
| | | servicesscope: this.rbDetails[m].servicesscope, |
| | | expensedescribe: this.rbDetails[m].servicesscopename, |
| | | remark: this.rbDetails[m].servicesscope, |
| | | servicesscope: this.rbDetails[m].servicesscope |
| | | expense: this.rbDetails[m].expense, |
| | | remark: this.rbDetails[m].servicesscopename |
| | | }); |
| | | } |
| | | |
| | |
| | | } |
| | | }); |
| | | |
| | | //业务流程 |
| | | //业务流程 |
| | | let listFundflowparams = { |
| | | fundid: this.curId, |
| | | fundtype: 2 |
| | |
| | | }); |
| | | }, |
| | | |
| | | /** 修改按钮操作 */ |
| | | handleCheck() { |
| | | this.isopen = 0; |
| | | this.reset(); |
| | | |
| | | getFund(this.curId).then(response => { |
| | | this.form = response.data; |
| | | sessionStorage.removeItem("apiform"); |
| | | |
| | | sessionStorage.setItem("apiform", JSON.stringify(this.form)); |
| | | |
| | | //附件处理 |
| | | // this.fileList = this.form.annexbankcard ? this.form.annexbankcard.split(",").map(item => ({ url: item, name: item })) : [] |
| | | |
| | | //业务明细 |
| | | getownFundDetail(this.curId).then(res => { |
| | | this.rbDetails = res.data; |
| | | for (let m = 0; m < this.rbDetails.length; m++) { |
| | | this.rbDetails[m].itemlist = []; |
| | | this.getFeeItems(m, this.rbDetails[m]); |
| | | |
| | | this.rbDetails[m].rowfeeblocks = []; |
| | | this.rbDetails[m].rowfeeblocks.push({ |
| | | servicesscope: this.rbDetails[m].servicesscope, |
| | | expensedescribe: this.rbDetails[m].servicesscopename, |
| | | expense: this.rbDetails[m].expense, |
| | | remark: this.rbDetails[m].servicesscopename |
| | | }); |
| | | } |
| | | |
| | | if (this.rbDetails.length == 0) { |
| | | this.addRow(0); |
| | | } |
| | | }); |
| | | |
| | | //业务流程 |
| | | let listFundflowparams = { |
| | | fundid: this.curId, |
| | | fundtype: 2 |
| | | }; |
| | | listFundflow(listFundflowparams).then(res => { |
| | | this.fundflowList = res.rows; |
| | | }); |
| | | }); |
| | | }, |
| | | |
| | | /** 删除按钮操作 */ |
| | | handleDelete() { |
| | | this.$modal |
| | | .confirm("是否确认删除该记录?") |
| | | .then(function () { |
| | | .then(function() { |
| | | return delFund(this.curId); |
| | | }) |
| | | .then(() => { |
| | |
| | | this.getfundList(); |
| | | this.$modal.msgSuccess("删除成功"); |
| | | }) |
| | | .catch(() => { }); |
| | | .catch(() => {}); |
| | | }, |
| | | |
| | | /** 上报按钮操作 */ |
| | |
| | | }); |
| | | }); |
| | | }, |
| | | |
| | | generateRandomString(length) { |
| | | const characters = |
| | | "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; |
| | | let randomString = ""; |
| | | for (let i = 0; i < length; i++) { |
| | | randomString += characters.charAt( |
| | | Math.floor(Math.random() * characters.length) |
| | | ); |
| | | } |
| | | return randomString; |
| | | }, |
| | | /** 提交按钮 */ |
| | | submitForm() { |
| | | submitForm: debounce(function() { |
| | | if (!this.randomnumber) { |
| | | this.randomnumber = this.generateRandomString(9); |
| | | this.form.randomnumber = this.randomnumber; |
| | | } |
| | | console.log(this.randomnumber); |
| | | this.$refs["form"].validate(valid => { |
| | | if (valid) { |
| | | this.formData = this.form; |
| | |
| | | if (tempDetail.itemid == null) { |
| | | this.$modal.msgWarning( |
| | | "服务项目表中,第" + |
| | | (k + 1).toString() + |
| | | "行的服务项目未选择,请先选择服务项目后再提交保存!" |
| | | (k + 1).toString() + |
| | | "行的服务项目未选择,请先选择服务项目后再提交保存!" |
| | | ); |
| | | return; |
| | | } |
| | |
| | | if (tempDetail.servicesscope == null) { |
| | | this.$modal.msgWarning( |
| | | "服务项目表中,第" + |
| | | (k + 1).toString() + |
| | | "行的费用说明未选择,请选择费用说明后再提交保存!" |
| | | (k + 1).toString() + |
| | | "行的费用说明未选择,请选择费用说明后再提交保存!" |
| | | ); |
| | | return; |
| | | } |
| | | |
| | | if (tempDetail.beneficiaryno == null || tempDetail.beneficiaryno == "点击选择") { |
| | | if ( |
| | | tempDetail.beneficiaryno == null || |
| | | tempDetail.beneficiaryno == "点击选择" |
| | | ) { |
| | | this.$modal.msgWarning( |
| | | "服务项目表中,第" + |
| | | (k + 1).toString() + |
| | | "行的服务人员姓名为选择,请选择人员后再提交保存!" |
| | | (k + 1).toString() + |
| | | "行的服务人员姓名为选择,请选择人员后再提交保存!" |
| | | ); |
| | | return; |
| | | } |
| | |
| | | } |
| | | this.rbDetails[i] = tempDetail; |
| | | /* |
| | | //计算个税 |
| | | //计算个税 |
| | | //if (isNaN(parseFloat(tempDetail.taxedamount))) |
| | | //获取参数 |
| | | this.taxParam.beneficiaryNo = tempDetail.beneficiaryno; |
| | |
| | | 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(); |
| | |
| | | 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") { |
| | | for (let j = 0; j < this.rbDetails.length; j++) { |
| | | let tempDetail = this.rbDetails[j]; |
| | | if ( |
| | | isNaN(parseFloat(tempDetail.amount)) || |
| | | parseFloat(tempDetail.amount) == 0 |
| | | ) { |
| | | this.$modal.msgWarning( |
| | | "服务项目表中,第" + |
| | | (j + 1).toString() + |
| | | "行的金额未输入,请先输入金额后再提交保存!" |
| | | ); |
| | | return; |
| | | } |
| | | } |
| | | } else if (this.businessType == "3" || this.businessType == "4") { |
| | | for (let j = 0; j < this.rbDetails.length; j++) { |
| | | let tempDetail = this.rbDetails[j]; |
| | | if ( |
| | | isNaN(parseFloat(tempDetail.amount)) || |
| | | parseFloat(tempDetail.amount) == 0 |
| | | ) { |
| | | this.$modal.msgWarning( |
| | | "服务项目表中,第" + |
| | | (j + 1).toString() + |
| | | "行的金额未输入,请先输入金额后再提交保存!" |
| | | ); |
| | | return; |
| | | } |
| | | if ( |
| | | isNaN(parseFloat(tempDetail.taxamount)) || |
| | | parseFloat(tempDetail.taxamount) == 0 |
| | | ) { |
| | | tempDetail.taxedamount = tempDetail.amount; |
| | | } else { |
| | | tempDetail.taxedamount = |
| | | tempDetail.amount + tempDetail.taxamount; |
| | | } |
| | | } |
| | | } |
| | | |
| | | //费用合计 |
| | | // this.form.pretaxcost = parseFloat(this.totalPreTaxAmount).toFixed(2); |
| | | // this.form.taxedcost = parseFloat(this.totalAfterTaxAmount).toFixed(2); |
| | |
| | | this.$modal.msgError("申请单保存失败:" + response.msg); |
| | | } |
| | | }); |
| | | sessionStorage.setItem( |
| | | "apifunddetail", |
| | | JSON.stringify(this.rbDetails) |
| | | ); |
| | | sessionStorage.setItem("apiform", JSON.stringify(this.form)); |
| | | |
| | | //关闭窗口 |
| | | // this.loading = false; |
| | | this.loading = false; |
| | | // this.getfundList(); |
| | | this.$store.dispatch("tagsView/delView", this.$route); |
| | | this.$router.go(-1); |
| | | } |
| | | }); |
| | | }, |
| | | }, 500), |
| | | |
| | | //审批提交 |
| | | checksubmit() { |
| | |
| | | // fundid: this.checkObj.fundid, |
| | | fundid: this.curId, |
| | | flowconclusion: this.checkObj.flowlevelone, |
| | | flowcontent: this.checkObj.flowconclusion, |
| | | flowcontent: this.checkObj.flowconclusion |
| | | }; |
| | | checkfund(checkFundObj).then((res) => { |
| | | checkfund(checkFundObj).then(res => { |
| | | //关闭窗口 |
| | | this.reset(); |
| | | this.$modal.msgSuccess("审核完成!"); |
| | | this.$store.dispatch("tagsView/delView", this.$route); |
| | | this.$router.go(-1); |
| | | }); |
| | | }, |
| | | |
| | | // 取消按钮 |
| | | cancel() { |
| | | // this.reset(); |
| | | this.$store.dispatch("tagsView/delView", this.$route); |
| | | this.$router.go(-1); |
| | | }, |
| | | |
| | |
| | | this.userprofile = res.data; |
| | | this.standardlevel = res.data.standardlevel; |
| | | if ( |
| | | this.userprofile.createBy == "admin" || |
| | | this.userprofile.createBy == "001" || |
| | | this.userprofile.createBy == "002" |
| | | this.userprofile.userName == "admin" || |
| | | this.userprofile.userName == "001" || |
| | | this.userprofile.userName == "047" |
| | | ) { |
| | | this.ismanager = true; |
| | | } else { |
| | | this.ismanager = false; |
| | | } |
| | | this.form.username = this.userprofile.nickName; |
| | | this.form.userno = this.userprofile.userName; |
| | | this.form.phone = this.userprofile.phonenumber; |
| | | this.form.deptmentname = this.userprofile.dept.deptName; |
| | | this.form.deptmentno = this.userprofile.dept.deptId; |
| | | this.form.managername = this.userprofile.dept.leader; |
| | | // this.form.applytype = this.businessType; |
| | | // this.form.createTime = new Date(); |
| | | console.log(this.userprofile, this.ismanager); |
| | | if (this.operationType == "add") { |
| | | this.form.username = this.userprofile.nickName; |
| | | this.form.userno = this.userprofile.userName; |
| | | this.form.deptmentname = this.userprofile.dept.deptName; |
| | | this.form.deptmentno = this.userprofile.dept.deptId; |
| | | 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(); |
| | | } |
| | | } |
| | | }); |
| | | }, |
| | | |
| | |
| | | exportName: this.personlist[j].username |
| | | }); |
| | | } |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | //获取经办人账号信息 |
| | | getUserAccount() { |
| | | this.personlist.map(res => { |
| | | if (res.username == this.form.username) { |
| | | this.form.bankname = res.depositbank; //res.branchbankname、res.depositbank; |
| | | this.form.bankcardno = res.bankcardno; |
| | | this.form.phone = res.telephone; |
| | | } |
| | | }); |
| | | }, |
| | |
| | | }, |
| | | |
| | | //加载服务项目 |
| | | loadFeeItems(row) { |
| | | verifyFeeItemType(row) { |
| | | let list = this.feeItemTypes.filter(r => r.itemType == row.applytype); |
| | | row.itemlist = list[0].itemDetails; |
| | | row.itemid = null; |
| | |
| | | }, |
| | | |
| | | //获取费用项目的备注信息 |
| | | selectedRemark(row) { |
| | | verifyFeeRemark(row) { |
| | | row.rowfeeblocks.forEach((item, i) => { |
| | | if (item.servicesscope === row.servicesscope) { |
| | | row.servicesscopename = item.expensedescribe; |
| | |
| | | }); |
| | | }, |
| | | |
| | | //校验收费项目是否重复 |
| | | //校验收费项目 |
| | | verifyFeeItem(row) { |
| | | row.itemlist.map(res => { |
| | | if (row.itemid === res.id) { |
| | |
| | | row.itemcode = res.itemCode; |
| | | } |
| | | }); |
| | | var repeatNum = 0; |
| | | this.rbDetails.map(res => { |
| | | if (res.applytype === row.applytype && res.itemid == row.itemid) { |
| | | repeatNum++; |
| | | |
| | | //判断收费项目是否重复 |
| | | if (this.businessType == "1") { |
| | | var repeatNum = 0; |
| | | this.rbDetails.map(res => { |
| | | if (res.applytype === row.applytype && res.itemid == row.itemid) { |
| | | repeatNum++; |
| | | } |
| | | }); |
| | | if (repeatNum > 1) { |
| | | this.$modal.msgWarning("您已经提交过该服务项目了"); |
| | | } |
| | | }); |
| | | if (repeatNum > 1) { |
| | | this.$modal.msgWarning("您已经提交过该服务项目了"); |
| | | } |
| | | |
| | | //获取费用项目的详细信息 |
| | |
| | | // }); |
| | | }, |
| | | |
| | | unsave() { |
| | | this.Savereminder = false; |
| | | this.Reminderquantity = 0; |
| | | }, |
| | | // 接受提醒立刻保存 |
| | | Savenow() { |
| | | if (!this.randomnumber) { |
| | | this.randomnumber = this.generateRandomString(9); |
| | | this.form.randomnumber = this.randomnumber; |
| | | } |
| | | this.Savereminder = false; |
| | | this.Reminderquantity = 0; |
| | | this.totalquantity = 0; |
| | | 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++) { |
| | | let tempDetail = this.rbDetails[k]; |
| | | if (tempDetail.itemid == null) { |
| | | this.$modal.msgWarning( |
| | | "服务项目表中,第" + |
| | | (k + 1).toString() + |
| | | "行的服务项目未选择,请先选择服务项目后再提交保存!" |
| | | ); |
| | | return; |
| | | } |
| | | |
| | | if (this.businessType == "1") { |
| | | if (tempDetail.servicesscope == null) { |
| | | this.$modal.msgWarning( |
| | | "服务项目表中,第" + |
| | | (k + 1).toString() + |
| | | "行的费用说明未选择,请选择费用说明后再提交保存!" |
| | | ); |
| | | return; |
| | | } |
| | | |
| | | if ( |
| | | tempDetail.beneficiaryno == null || |
| | | tempDetail.beneficiaryno == "点击选择" |
| | | ) { |
| | | 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++) { |
| | | let tempDetail = this.rbDetails[i]; |
| | | //获取服务项目明细 |
| | | let tempitemlist = tempDetail.itemlist; |
| | | let itemIndex = tempitemlist.findIndex( |
| | | item => tempDetail.itemid == item.id |
| | | ); |
| | | if (itemIndex > -1) { |
| | | tempDetail.itemname = tempitemlist[itemIndex].itemName; |
| | | tempDetail.itemid = tempitemlist[itemIndex].id; |
| | | } |
| | | |
| | | //获取applytypename、服务费用大类 |
| | | let applytypeIndex = this.rowfeeItemTypes.findIndex( |
| | | item => tempDetail.applytype == item.value |
| | | ); |
| | | if (applytypeIndex > -1) { |
| | | tempDetail.applytypename = this.rowfeeItemTypes[ |
| | | applytypeIndex |
| | | ].label; |
| | | tempDetail.subjecttype = this.rowfeeItemTypes[ |
| | | applytypeIndex |
| | | ].subjecttype; |
| | | tempDetail.subjecttypename = this.rowfeeItemTypes[ |
| | | applytypeIndex |
| | | ].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") { |
| | | for (let j = 0; j < this.rbDetails.length; j++) { |
| | | let tempDetail = this.rbDetails[j]; |
| | | if ( |
| | | isNaN(parseFloat(tempDetail.amount)) || |
| | | parseFloat(tempDetail.amount) == 0 |
| | | ) { |
| | | this.$modal.msgWarning( |
| | | "服务项目表中,第" + |
| | | (j + 1).toString() + |
| | | "行的金额未输入,请先输入金额后再提交保存!" |
| | | ); |
| | | return; |
| | | } |
| | | } |
| | | } else if (this.businessType == "3" || this.businessType == "4") { |
| | | for (let j = 0; j < this.rbDetails.length; j++) { |
| | | let tempDetail = this.rbDetails[j]; |
| | | if ( |
| | | isNaN(parseFloat(tempDetail.amount)) || |
| | | parseFloat(tempDetail.amount) == 0 |
| | | ) { |
| | | this.$modal.msgWarning( |
| | | "服务项目表中,第" + |
| | | (j + 1).toString() + |
| | | "行的金额未输入,请先输入金额后再提交保存!" |
| | | ); |
| | | return; |
| | | } |
| | | if ( |
| | | isNaN(parseFloat(tempDetail.taxamount)) || |
| | | parseFloat(tempDetail.taxamount) == 0 |
| | | ) { |
| | | tempDetail.taxedamount = tempDetail.amount; |
| | | } else { |
| | | tempDetail.taxedamount = |
| | | tempDetail.amount + tempDetail.taxamount; |
| | | } |
| | | } |
| | | } |
| | | |
| | | //费用合计 |
| | | // 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.rbDetails.map(item => { |
| | | this.form.serviceFunddetails += item.amount; |
| | | }); |
| | | console.log(this.rbDetails); |
| | | 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("申请单保存成功!"); |
| | | this.Getnetworkheader(); |
| | | this.getroute(); |
| | | this.getExternalList(); |
| | | this.getUserList(); |
| | | this.getUserProfile(); |
| | | } else { |
| | | this.$modal.msgError("申请单保存失败:" + response.msg); |
| | | } |
| | | }); |
| | | |
| | | //关闭窗口 |
| | | this.loading = false; |
| | | // this.getfundList(); |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | //新增一行 |
| | | addRow(rowIndex) { |
| | | let rowData = { |
| | |
| | | rowfeeblocks: [], |
| | | annexfiles: null |
| | | }; |
| | | // if (this.Reminderquantity >= 5) { |
| | | // this.Savereminder = true; |
| | | // return; |
| | | // } |
| | | if (rowIndex == undefined || rowIndex == null || rowIndex < 0) { |
| | | this.rbDetails.push(rowData); |
| | | } else { |
| | | this.rbDetails.splice(rowIndex + 1, 0, rowData); |
| | | } |
| | | this.Reminderquantity++; |
| | | this.totalquantity++; |
| | | for (let i = 0; i < this.rbDetails.length; i++) { |
| | | this.rbDetails[i].orderno = i + 1; |
| | | } |
| | |
| | | }, |
| | | |
| | | //计算个税 |
| | | calculateTax() { }, |
| | | calculateTax() {}, |
| | | |
| | | //计算总金额 |
| | | sumTotalFee(row) { |
| | |
| | | }, |
| | | |
| | | //文件上传 |
| | | handleUploadError() { }, |
| | | handleUploadError() {}, |
| | | |
| | | /** 下载文件按钮操作 */ |
| | | downFile(item) { |
| | | const url = process.env.VUE_APP_BASE_API + item.url; |
| | | var a = document.createElement("a"); |
| | | var event = new MouseEvent("click"); |
| | | a.download = item.name; |
| | | a.href = url; |
| | | a.dispatchEvent(event); |
| | | }, |
| | | // downFile(item) { |
| | | // const url = process.env.VUE_APP_BASE_API + item.url; |
| | | // var a = document.createElement("a"); |
| | | // var event = new MouseEvent("click"); |
| | | // a.download = item.name; |
| | | // a.href = url; |
| | | // a.dispatchEvent(event); |
| | | // }, |
| | | |
| | | // remove(file) { |
| | | // this.fileList.splice(this.fileList.indexOf(file), 1) |
| | |
| | | this.form.filename = file.raw.name; |
| | | |
| | | this.$modal.msgSuccess(response.msg); |
| | | this.fileListto.push({ name: file.name, url: response.url }); |
| | | this.fileListto.push({ name: file.name, url: response.fileName }); |
| | | // this.fileListto.push({ name: file.name, url: response.url }); |
| | | // this.pdfimgsrcList.push(response.url); |
| | | |
| | | this.rbDetails[this.atpresent].annexfilesList = this.fileListto; |
| | | } else { |
| | | console.log(response.msg); |
| | | } |
| | | }, |
| | | |
| | | // 点击文件 |
| | | // 点击票据 |
| | | Filepopup(index, rows, row) { |
| | | this.atpresent = index; |
| | | this.pdfVisible = true; |
| | | if (this.rbDetails[index].annexfilesList) { |
| | | this.fileListto = this.rbDetails[index].annexfilesList; |
| | | this.pdfimg = this.Networkheader + "/prod-api" + this.fileListto[0].url; |
| | | // this.pdfimg = this.fileListto[0].url; |
| | | this.pdfimgsrcList = []; |
| | | this.fileListto.forEach(item => { |
| | | this.pdfimgsrcList.push(this.Networkheader + "/prod-api" + item.url); |
| | | }); |
| | | console.log(this.pdfimgsrcList); |
| | | |
| | | console.log(this.pdfimg); |
| | | } else { |
| | | this.fileListto = []; |
| | | this.pdfimg = ""; |
| | | this.pdftitle = ""; |
| | | } |
| | | }, |
| | | fnrowclick(row) { |
| | | console.log(row); |
| | | }, |
| | | // 点击已上传文件 |
| | | downFile(item) { |
| | | this.pdftitle = item.name; |
| | | let name = item.name.split("."); |
| | | downFile(row) { |
| | | console.log(row); |
| | | |
| | | this.pdftitle = row.name; |
| | | let name = row.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 = item.url; |
| | | if (row.url) { |
| | | this.pdfimg = this.Networkheader + "/prod-api" + row.url; |
| | | // this.pdfimg = row.url; |
| | | // this.pdfimgsrcList = []; |
| | | // this.pdfimgsrcList.push(this.pdfimg); |
| | | console.log(this.pdfimg); |
| | | } else { |
| | | this.pdfimg = item.response.url; |
| | | this.pdfimg = this.Networkheader + "/prod-api" + row.url; |
| | | } |
| | | } else { |
| | | this.hintitle = "当前文件暂不支持预览"; |
| | |
| | | this.previewpdf = false; |
| | | } |
| | | }, |
| | | |
| | | getIndexInArray(arr, obj) { |
| | | return arr.indexOf(obj); |
| | | }, |
| | | // 点击删除 |
| | | deletedowfile(row) { |
| | | console.log(this.fileListto); |
| | | console.log(row); |
| | | const index = this.getIndexInArray(this.fileListto, row); |
| | | this.fileList = this.fileListto.splice(index, 1); |
| | | console.log(index); |
| | | }, |
| | | // 点击上移 |
| | | 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.selectionType = showType; |
| | |
| | | } else { |
| | | //保存新增专家 |
| | | this.expertform.id = null; |
| | | this.expertform.userno = this.personlist[this.personlist.length - 1].id + 1; |
| | | 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.rbDetails[tempIndex] = singleDetail; |
| | | this.showSelectionDialog = false; |
| | | }, |
| | | } |
| | | }, |
| | | |
| | | //生命周期 - 创建完成(可以访问当前this实例) |
| | | created() { |
| | | //获取路由参数 |
| | | this.Getnetworkheader(); |
| | | this.getroute(); |
| | | this.getUserProfile(); |
| | | this.getUserList(); |
| | | this.getExternalList(); |
| | | }, |
| | | |
| | | //生命周期 - 挂载完成(可以访问DOM元素) |
| | | mounted() { |
| | | this.getExternalList(); |
| | | window.addEventListener("beforeunload", e => this.beforeunloadHandler(e)); |
| | | this.getUserList(); |
| | | this.getUserProfile(); |
| | | let apifunddetailForm = this.funddetailForm; |
| | | let apiform = this.form; |
| | | console.log(apiform); |
| | | console.log(apifunddetailForm); |
| | | |
| | | // this.getFeeUnitList(); |
| | | }, |
| | | |
| | | beforeCreate() { }, //生命周期 - 创建之前 |
| | | beforeMount() { }, //生命周期 - 挂载之前 |
| | | beforeUpdate() { }, //生命周期 - 更新之前 |
| | | updated() { }, //生命周期 - 更新之后 |
| | | beforeDestroy() { }, //生命周期 - 销毁之前 |
| | | destroyed() { }, //生命周期 - 销毁完成 |
| | | activated() { }, //如果页面有keep-alive缓存功能,这个函数会触发 |
| | | beforeCreate() {}, //生命周期 - 创建之前 |
| | | beforeMount() {}, //生命周期 - 挂载之前 |
| | | beforeUpdate() { |
| | | console.log("beforeUpdate"); |
| | | }, //生命周期 - 更新之前 |
| | | updated() {}, //生命周期 - 更新之后 |
| | | beforeDestroy() {}, //生命周期 - 销毁之前 |
| | | destroyed() {}, //生命周期 - 销毁完成 |
| | | activated() {} //如果页面有keep-alive缓存功能,这个函数会触发 |
| | | }; |
| | | </script> |
| | | |
| | |
| | | height: 600px; |
| | | |
| | | .box-pdf { |
| | | width: 200px; |
| | | width: 400px; |
| | | padding-top: 20px; |
| | | margin-right: 30px; |
| | | border: 1px solid #dcdfe6; |