| | |
| | | <template> |
| | | <div class="Modifydetailscla"> |
| | | <div class="boxdiv"> |
| | | <div class="top-text">{{ title }}</div> |
| | | <el-form ref="form" :model="form" :rules="rules" label-width="120px"> |
| | | <el-row> |
| | | <el-col :span="5"> |
| | | <el-form-item label="经办人" prop="name"> |
| | | <el-input |
| | | v-model="form.createby" |
| | | placeholder="请输入姓名" |
| | | :disabled="true" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="收款状态" prop="sex"> |
| | | <el-select v-model="form.paystatus" placeholder="请选择状态"> |
| | | <el-option |
| | | v-for="dict in gatheringlist" |
| | | :key="dict.label" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | ></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <el-col :span="7"> |
| | | <el-form-item label="申请日期" prop="createTime"> |
| | | <el-date-picker |
| | | v-model="form.createTime" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | type="datetime" |
| | | :disabled="true" |
| | | placeholder="选择出生年月" |
| | | > |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="7" |
| | | ><el-form-item label="收款单号" prop="donateno"> |
| | | <el-input v-model="form.paymentno" placeholder="请输入收款单号" /> |
| | | </el-form-item> |
| | | </el-col> </el-row |
| | | ><el-row |
| | | ><el-col :span="5" |
| | | ><el-form-item label="收款单位" prop="donateno"> |
| | | <el-input |
| | | v-model="form.beneficiary" |
| | | placeholder="请输入收款单位" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="12" |
| | | ><el-form-item label="收款银行" prop="donateno"> |
| | | <el-input |
| | | v-model="form.beneficiarybank" |
| | | placeholder="请输入收款银行" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <el-col :span="7"> |
| | | <el-form-item label="收款行号" prop="donationcategory"> |
| | | <el-input |
| | | v-model="form.beneficiaryaccount" |
| | | placeholder="请输入收款行号" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-form-item label="联系信息" prop="remark"> |
| | | <el-input v-model="form.remark" placeholder="请输入备注" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="7"> |
| | | <el-form-item label="付款医院" prop="sex"> |
| | | <el-input |
| | | v-model="form.hospitalname" |
| | | placeholder="请输入付款医院" |
| | | :disabled="true" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="应收金额" prop="receivableamount"> |
| | | <el-input |
| | | v-model="form.receivableamount" |
| | | placeholder="请输入应收金额" |
| | | :disabled="true" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="实收金额" prop="receivedamount"> |
| | | <el-input |
| | | @blur="chargeSumall" |
| | | v-model="form.receivedamount" |
| | | placeholder="请输入实收金额" |
| | | /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="收款日期" prop="receivedtime"> |
| | | <el-date-picker |
| | | clearable |
| | | size="small" |
| | | v-model="form.receivedtime" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | type="datetime" |
| | | placeholder="选择收款日期" |
| | | > |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <div class="headlines"> |
| | | <div>收款明细</div> |
| | | <el-button type="primary" @click="handleAddpatient">新增</el-button> |
| | | </div> |
| | | <el-row style="margin-top: 10px"> |
| | | <el-table |
| | | :data="donorchargeorgans" |
| | | ref="table" |
| | | border |
| | | max-height="800" |
| | | highlight-current-row |
| | | :summary-method="getSummaries" |
| | | show-summary |
| | | > |
| | | <el-table-column |
| | | prop="organno" |
| | | align="center" |
| | | fixed |
| | | label="器官编号" |
| | | width="90" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.organno" |
| | | placeholder="器官编号" |
| | | :disabled="true" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="organname" |
| | | fixed |
| | | align="center" |
| | | label="器官名称" |
| | | width="120" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.organname" |
| | | :disabled="true" |
| | | placeholder="器官名称" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="国家编号" |
| | | align="center" |
| | | width="120" |
| | | prop="caseno" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.caseno" |
| | | :disabled="true" |
| | | placeholder="国家编号" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="hospitalno" |
| | | align="center" |
| | | label="接收医院" |
| | | width="280" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <!-- <el-input |
| | | <div class="Modifydetailscla"> |
| | | <div class="boxdiv"> |
| | | <div class="top-text">{{ title }}</div> |
| | | <el-form ref="form" :model="form" :rules="rules" label-width="120px"> |
| | | <el-row> |
| | | <el-col :span="5"> |
| | | <el-form-item label="申请日期" prop="createTime"> |
| | | <el-date-picker v-model="form.createTime" value-format="yyyy-MM-dd HH:mm:ss" type="datetime" |
| | | :disabled="true" placeholder="选择出生年月"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="单据状态" prop="paystatus"> |
| | | <el-select v-model="form.paystatus" placeholder="请选择状态"> |
| | | <el-option v-for="dict in gatheringlist" :key="dict.label" :label="dict.label" |
| | | :value="dict.value"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"><el-form-item label="单据编号" prop="paymentno"> |
| | | <el-input v-model="form.paymentno" placeholder="请输入收款单号" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="经办人" prop="createby"> |
| | | <el-input v-model="form.createby" placeholder="请输入姓名" :disabled="true" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="5"> |
| | | <el-form-item label="收款单位" prop="beneficiary"> |
| | | <el-input v-model="form.beneficiary" placeholder="请输入收款单位" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="10"> |
| | | <el-form-item label="收款银行" prop="beneficiarybank"> |
| | | <el-input v-model="form.beneficiarybank" placeholder="请输入收款银行" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="收款账号" prop="beneficiaryaccount"> |
| | | <el-input v-model="form.beneficiaryaccount" placeholder="请输入收款行号" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="20"> |
| | | <el-form-item label="联系信息" prop="remark"> |
| | | <el-input v-model="form.remark" placeholder="请输入备注" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-col :span="5"> |
| | | <el-form-item label="付款医院" prop="hospitalname"> |
| | | <el-input v-model="form.hospitalname" placeholder="请输入付款医院" :disabled="true" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="实收金额" prop="receivedamount"> |
| | | <el-input @blur="chargeSumall" v-model="form.receivedamount" placeholder="请输入实收金额" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="收款日期" prop="receivedtime"> |
| | | <el-date-picker clearable size="small" v-model="form.receivedtime" value-format="yyyy-MM-dd HH:mm:ss" |
| | | type="datetime" placeholder="选择收款日期"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="应收金额" prop="receivableamount"> |
| | | <el-input v-model="form.receivableamount" placeholder="请输入应收金额" :disabled="true" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <div class="headlines"> |
| | | <div>移植器官(包含组织)明细</div> |
| | | <el-button type="primary" @click="handleAddpatient">新增移植器官(包含组织)</el-button> |
| | | </div> |
| | | <el-row style="margin-top: 10px"> |
| | | <el-table :data="donorchargeorgans" ref="table" border max-height="800" highlight-current-row |
| | | :summary-method="getSummaries" show-summary> |
| | | <el-table-column prop="organno" align="center" fixed label="器官编号" width="90"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.organno" placeholder="器官编号" :disabled="true" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="organname" fixed align="center" label="器官名称" width="120"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.organname" :disabled="true" placeholder="器官名称" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="国家编号" align="center" width="120" prop="caseno"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.caseno" :disabled="true" placeholder="国家编号" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="hospitalno" align="center" label="接收医院" width="280"> |
| | | <template slot-scope="scope"> |
| | | <!-- <el-input |
| | | v-model="scope.row.hospitalname" |
| | | :disabled="true" |
| | | placeholder="接收医院" |
| | | /> --> |
| | | <org-selecter |
| | | ref="tranHosSelect" |
| | | :org-type="'4'" |
| | | :disabled="true" |
| | | |
| | | v-model="scope.row.hospitalno" |
| | | style="width: 100%" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="受体姓氏" |
| | | align="center" |
| | | width="120" |
| | | prop="name" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.name" |
| | | :disabled="true" |
| | | placeholder="受体姓氏" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="receiveTime" |
| | | align="center" |
| | | label="接收日期" |
| | | width="200" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-date-picker |
| | | clearable |
| | | size="small" |
| | | style="width: 100%" |
| | | v-model="scope.row.receiveTime" |
| | | :disabled="true" |
| | | type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="接收日期" |
| | | > |
| | | </el-date-picker> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="organcharge" |
| | | align="center" |
| | | label="应收金额" |
| | | width="150" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | @blur="chargeSum" |
| | | v-model="scope.row.organcharge" |
| | | placeholder="应收金额" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="amount" |
| | | align="center" |
| | | label="实收金额" |
| | | width="150" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | @blur="chargeSum" |
| | | v-model="scope.row.amount" |
| | | placeholder="实收金额" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="amounttime" |
| | | align="center" |
| | | label="收款日期" |
| | | width="200" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-date-picker |
| | | clearable |
| | | size="small" |
| | | style="width: 100%" |
| | | v-model="scope.row.amounttime" |
| | | type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="收款日期" |
| | | > |
| | | </el-date-picker> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="organchargedesc" |
| | | width="280" |
| | | align="center" |
| | | label="备注" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | type="textarea" |
| | | :rows="1" |
| | | v-model="scope.row.organchargedesc" |
| | | placeholder="备注" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="操作" |
| | | fixed="right" |
| | | width="260" |
| | | align="center" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | | type="text" |
| | | @click="handleDelete(scope.row)" |
| | | v-hasPermi="['system:donorcharge:remove']" |
| | | ><span class="button-delete" |
| | | ><i class="el-icon-delete"></i>删除</span |
| | | ></el-button |
| | | > |
| | | <el-button |
| | | type="text" |
| | | icon="el-icon-folder-opened" |
| | | @click="Filepopup(scope.$index, scope.row)" |
| | | v-hasPermi="['system:donorcharge:edit']" |
| | | >附件</el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-row> |
| | | </el-form> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button |
| | | type="success" |
| | | @click="submitForm" |
| | | v-if="operationType == 'add' || operationType == 'update'" |
| | | >保 存</el-button |
| | | > |
| | | <el-button type="info" @click="cancel">关闭</el-button> |
| | | <org-selecter ref="tranHosSelect" :org-type="'4'" :disabled="true" v-model="scope.row.hospitalno" |
| | | style="width: 100%" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="受体姓氏" align="center" width="120" prop="name"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.name" :disabled="true" placeholder="受体姓氏" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="receiveTime" align="center" label="接收日期" width="200"> |
| | | <template slot-scope="scope"> |
| | | <el-date-picker clearable size="small" style="width: 100%" v-model="scope.row.receiveTime" |
| | | :disabled="true" type="date" value-format="yyyy-MM-dd HH:mm:ss" placeholder="接收日期"> |
| | | </el-date-picker> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column prop="organcharge" align="center" label="应收金额" width="150"> |
| | | <template slot-scope="scope"> |
| | | <el-input @blur="chargeSum" v-model="scope.row.organcharge" placeholder="应收金额" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="amount" align="center" label="实收金额" width="150"> |
| | | <template slot-scope="scope"> |
| | | <el-input @blur="chargeSum" v-model="scope.row.amount" placeholder="实收金额" /> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column prop="amounttime" align="center" label="收款日期" width="200"> |
| | | <template slot-scope="scope"> |
| | | <el-date-picker clearable size="small" style="width: 100%" v-model="scope.row.amounttime" type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" placeholder="收款日期"> |
| | | </el-date-picker> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="organchargedesc" width="280" align="center" label="备注"> |
| | | <template slot-scope="scope"> |
| | | <el-input type="textarea" :rows="1" v-model="scope.row.organchargedesc" placeholder="备注" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="操作" fixed="right" width="260" align="center"> |
| | | <template slot-scope="scope"> |
| | | <el-button type="text" @click="handleDelete(scope.row)" v-hasPermi="['system:donorcharge:remove']"><span |
| | | class="button-delete"><i class="el-icon-delete"></i>删除</span></el-button> |
| | | <el-button type="text" icon="el-icon-folder-opened" @click="Filepopup(scope.$index, scope.row)" |
| | | v-hasPermi="['system:donorcharge:edit']">附件</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-row> |
| | | </el-form> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="success" @click="submitForm" v-if="operationType == 'add' || operationType == 'update'">保 |
| | | 存</el-button> |
| | | <el-button type="info" @click="cancel">关闭</el-button> |
| | | </div> |
| | | <!-- 添加患者 --> |
| | | <el-dialog title="选择器官和组织" :visible.sync="dialogVisiblepatient" width="70%" :before-close="handleClosehz"> |
| | | <div class="examine-jic"> |
| | | <div class="jic-value"> |
| | | <el-row :gutter="20"> |
| | | <!--用户数据--> |
| | | <el-form :model="patientqueryParams" ref="queryForm" size="small" :inline="true" label-width="98px"> |
| | | <el-form-item label="接收医院" prop="status"> |
| | | <el-input v-model="form.hospitalname" placeholder="请输入付款医院" :disabled="true" /> |
| | | </el-form-item> |
| | | <el-form-item label="捐献者" prop="status"> |
| | | <el-select v-model="patientqueryParams.donorchargeid" filterable placeholder="请选择"> |
| | | <el-option v-for="item in donorchargeanlList" :key="item.id" :label="item.name" :value="item.id"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | | <el-form-item> |
| | | <el-button type="primary" icon="el-icon-search" size="medium" @click="handleAddpatient">搜索</el-button> |
| | | <el-button icon="el-icon-refresh" size="medium" @click="resetQuery">重置</el-button> |
| | | </el-form-item> |
| | | </el-form> |
| | | <!-- 选择器官列表 --> |
| | | <el-table ref="multipleTable" :data="donorchargeList" tooltip-effect="dark" style="width: 100%" |
| | | @selection-change="handleSelectionChange"> |
| | | <el-table-column type="selection" width="55"> </el-table-column> |
| | | <el-table-column label="捐献者" width="120"> |
| | | <template slot-scope="scope">{{ |
| | | scope.row.donorname |
| | | }}</template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column prop="organname" label="器官名称" show-overflow-tooltip> |
| | | </el-table-column> |
| | | <el-table-column prop="organno" label="器官编号" width="120"> |
| | | </el-table-column> |
| | | <el-table-column prop="caseno" label="国家分配编号" show-overflow-tooltip> |
| | | </el-table-column> |
| | | <el-table-column prop="name" label="受体姓氏" show-overflow-tooltip> |
| | | </el-table-column> |
| | | <el-table-column prop="hospitalname" label="接收医院" show-overflow-tooltip> |
| | | </el-table-column> |
| | | <el-table-column prop="receiveTime" label="接收日期" show-overflow-tooltip> |
| | | </el-table-column> |
| | | <el-table-column prop="address" label="备注" show-overflow-tooltip> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-row> |
| | | <pagination v-show="patienttotal > 0" :total="patienttotal" :page.sync="patientqueryParams.pageNum" |
| | | :limit.sync="patientqueryParams.pageSize" @pagination="handleAddpatient" /> |
| | | </div> |
| | | </div> |
| | | <!-- 添加患者 --> |
| | | <el-dialog |
| | | title="选择器官和组织" |
| | | :visible.sync="dialogVisiblepatient" |
| | | width="70%" |
| | | :before-close="handleClosehz" |
| | | > |
| | | <div class="examine-jic"> |
| | | <div class="jic-value"> |
| | | <el-row :gutter="20"> |
| | | <!--用户数据--> |
| | | <el-form |
| | | :model="patientqueryParams" |
| | | ref="queryForm" |
| | | size="small" |
| | | :inline="true" |
| | | label-width="98px" |
| | | > |
| | | <el-form-item label="接收医院" prop="status"> |
| | | <el-input |
| | | v-model="form.hospitalname" |
| | | placeholder="请输入付款医院" |
| | | :disabled="true" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="捐献者" prop="status"> |
| | | <el-select |
| | | v-model="patientqueryParams.donorchargeid" |
| | | filterable |
| | | placeholder="请选择" |
| | | > |
| | | <el-option |
| | | v-for="item in donorchargeanlList" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | |
| | | <el-form-item> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-search" |
| | | size="medium" |
| | | @click="handleAddpatient" |
| | | >搜索</el-button |
| | | > |
| | | <el-button |
| | | icon="el-icon-refresh" |
| | | size="medium" |
| | | @click="resetQuery" |
| | | >重置</el-button |
| | | > |
| | | </el-form-item> |
| | | </el-form> |
| | | <!-- 选择器官列表 --> |
| | | <el-table |
| | | ref="multipleTable" |
| | | :data="donorchargeList" |
| | | tooltip-effect="dark" |
| | | style="width: 100%" |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <el-table-column type="selection" width="55"> </el-table-column> |
| | | <el-table-column label="捐献者" width="120"> |
| | | <template slot-scope="scope">{{ |
| | | scope.row.donorname |
| | | }}</template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="organname" |
| | | label="器官名称" |
| | | show-overflow-tooltip |
| | | > |
| | | </el-table-column> |
| | | <el-table-column prop="organno" label="器官编号" width="120"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="caseno" |
| | | label="国家分配编号" |
| | | show-overflow-tooltip |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="name" |
| | | label="受体姓氏" |
| | | show-overflow-tooltip |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="hospitalname" |
| | | label="接收医院" |
| | | show-overflow-tooltip |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="receiveTime" |
| | | label="接收日期" |
| | | show-overflow-tooltip |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="address" |
| | | label="备注" |
| | | show-overflow-tooltip |
| | | > |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-row> |
| | | <pagination |
| | | v-show="patienttotal > 0" |
| | | :total="patienttotal" |
| | | :page.sync="patientqueryParams.pageNum" |
| | | :limit.sync="patientqueryParams.pageSize" |
| | | @pagination="handleAddpatient" |
| | | /> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="dialogVisiblepatient = false">取 消</el-button> |
| | | <el-button type="primary" @click="AddDispatchpatients">确定添加</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | <!-- 附件弹窗 --> |
| | | <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" |
| | | :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="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> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="dialogVisiblepatient = false">取 消</el-button> |
| | | <el-button type="primary" @click="AddDispatchpatients" |
| | | >确定添加</el-button |
| | | > |
| | | </span> |
| | | </el-dialog> |
| | | <!-- 附件弹窗 --> |
| | | <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" |
| | | :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="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 && pdfimgsrcList.length" class="pdfimgmin"> |
| | | <!-- <img :src="pdfimg" /> --> |
| | | <el-image |
| | | style="width: 95%; height: 90%" |
| | | :src="pdfimg" |
| | | :preview-src-list="pdfimgsrcList" |
| | | > |
| | | <!-- <div slot="error" class="image-slot"> |
| | | |
| | | <div v-if="this.previewpdf && pdfimgsrcList.length" class="pdfimgmin"> |
| | | <!-- <img :src="pdfimg" /> --> |
| | | <el-image style="width: 95%; height: 90%" :src="pdfimg" :preview-src-list="pdfimgsrcList"> |
| | | <!-- <div slot="error" class="image-slot"> |
| | | <i class="el-icon-picture-outline"></i> |
| | | </div> --> |
| | | </el-image> |
| | | </div> |
| | | <div v-else class="pdfimgmins">{{ hintitle }}</div> |
| | | </el-image> |
| | | </div> |
| | | </el-dialog> |
| | | </div> |
| | | <div v-else class="pdfimgmins">{{ hintitle }}</div> |
| | | </div> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import pdf from "vue-pdf"; |
| | | import Treeselect from "@riophae/vue-treeselect"; |
| | | import "@riophae/vue-treeselect/dist/vue-treeselect.css"; |
| | | import { regionDataPlus, CodeToText } from "element-china-area-data"; |
| | | import { |
| | | getDonorcharge, |
| | | addDonorcharge, |
| | | updateDonorcharge, |
| | | listDonorcharge, |
| | | listDonorpayment, |
| | | addDonorpayment, |
| | | editDonorpayment |
| | | } from "@/api/project/donorcharge"; |
| | | |
| | | import { |
| | | listDonorchargeorgan, |
| | | updateDonorchargeorgan, |
| | | saveDonorchargeorgan |
| | | } from "@/api/project/donorcharge"; |
| | | import { listDonatecomporgan } from "@/api/project/donatecompletioninfo"; |
| | | import { listOrgancharge } from "@/api/project/organcharge"; |
| | | import OrgSelecter from "@/views/project/components/orgselect"; |
| | | import Li_area_select from "@/components/Address"; |
| | | import { getUserProfile } from "@/api/system/user"; |
| | | import { getToken } from "@/utils/auth"; |
| | | import debounce from "lodash/debounce"; |
| | | export default { |
| | | components: { |
| | | Treeselect, |
| | | OrgSelecter, |
| | | Li_area_select, |
| | | pdf |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import pdf from "vue-pdf"; |
| | | import Treeselect from "@riophae/vue-treeselect"; |
| | | import "@riophae/vue-treeselect/dist/vue-treeselect.css"; |
| | | import { regionDataPlus, CodeToText } from "element-china-area-data"; |
| | | import { |
| | | getDonorcharge, |
| | | addDonorcharge, |
| | | updateDonorcharge, |
| | | listDonorcharge, |
| | | listDonorpayment, |
| | | addDonorpayment, |
| | | editDonorpayment |
| | | } from "@/api/project/donorcharge"; |
| | | |
| | | import { |
| | | listDonorchargeorgan, |
| | | updateDonorchargeorgan, |
| | | saveDonorchargeorgan |
| | | } from "@/api/project/donorcharge"; |
| | | import { listDonatecomporgan } from "@/api/project/donatecompletioninfo"; |
| | | import { listOrgancharge } from "@/api/project/organcharge"; |
| | | import OrgSelecter from "@/views/project/components/orgselect"; |
| | | import Li_area_select from "@/components/Address"; |
| | | import { getUserProfile } from "@/api/system/user"; |
| | | import { getToken } from "@/utils/auth"; |
| | | import debounce from "lodash/debounce"; |
| | | export default { |
| | | components: { |
| | | Treeselect, |
| | | OrgSelecter, |
| | | Li_area_select, |
| | | pdf |
| | | }, |
| | | dicts: ["sys_gathering", "sys_0_1"], |
| | | name: "Donorchargemanager", |
| | | data() { |
| | | return { |
| | | activeName: 1, //文件类型 |
| | | tableData: [ |
| | | { |
| | | date: "2016-05-03", |
| | | name: "王小虎", |
| | | address: "上海市普陀区金沙江路 1518 弄" |
| | | }, |
| | | { |
| | | date: "2016-05-02", |
| | | name: "王小虎", |
| | | address: "上海市普陀区金沙江路 1518 弄" |
| | | }, |
| | | { |
| | | date: "2016-05-04", |
| | | name: "王小虎", |
| | | address: "上海市普陀区金沙江路 1518 弄" |
| | | }, |
| | | { |
| | | date: "2016-05-01", |
| | | name: "王小虎", |
| | | address: "上海市普陀区金沙江路 1518 弄" |
| | | } |
| | | ], |
| | | gatheringlist: [ |
| | | { label: "新建", value: "1" }, |
| | | { label: "待收款", value: "2" }, |
| | | { label: "已收款", value: "3" } |
| | | ], |
| | | multipleSelection: [], |
| | | patientqueryParams: { |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | hospitalno: null, |
| | | paymentid: null |
| | | }, |
| | | dialogVisiblepatient: false, |
| | | patienttotal: 0, // |
| | | //票据文件 |
| | | pdftitle: "", |
| | | pdfimg: "", |
| | | pdfVisible: false, |
| | | costtypeobj: { |
| | | value: 0, |
| | | label: "" |
| | | }, |
| | | pdfimgsrcList: [], |
| | | Savereminder: false, //提醒保存弹框 |
| | | Reminderquantity: 0, //提醒数量 |
| | | totalquantity: 0, //总数量 |
| | | |
| | | hintitle: "选中左侧已上传文件预览查看", |
| | | atpresent: "", |
| | | iframeurl: "", |
| | | options: regionDataPlus, |
| | | selectedOptions: [], |
| | | value1: "", |
| | | previewpdf: false, |
| | | // 遮罩层 |
| | | loading: true, |
| | | // 导出遮罩层 |
| | | exportLoading: false, |
| | | // 网络请求头 |
| | | Networkheader: null, |
| | | |
| | | // 选中数组 |
| | | ids: [], |
| | | // 非单个禁用 |
| | | single: true, |
| | | // 非多个禁用 |
| | | multiple: true, |
| | | // 显示搜索条件 |
| | | showSearch: true, |
| | | // 总条数 |
| | | total: 0, |
| | | // 捐献案例器官列表格数据 |
| | | donorchargeList: [], |
| | | donorchargeorgans: [], |
| | | donorchargeanlList: [], //案例列表 |
| | | delogans: [], |
| | | // 弹出层标题 |
| | | title: "", |
| | | |
| | | // 查询费用表参数 |
| | | queryParams: { |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | infoid: null, |
| | | name: null, |
| | | donationcategory: null, |
| | | donateorgan: null, |
| | | chargeamounted: null |
| | | }, |
| | | // 查询费用器官表参数 |
| | | organParams: { |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | paymentid: null |
| | | }, |
| | | |
| | | // 当前用户信息 |
| | | userprofile: {}, |
| | | // 表单参数 |
| | | form: {}, |
| | | // 列表参数 |
| | | table: {}, |
| | | reimbursementList: [], |
| | | |
| | | // 表单校验 |
| | | rules: { |
| | | reason: [ |
| | | { required: true, message: "请输入出差事由", trigger: "blur" } |
| | | ], |
| | | deptmentname: [ |
| | | { required: true, message: "请输入所属业务组", trigger: "blur" } |
| | | ] |
| | | }, |
| | | topicoptions: [ |
| | | { |
| | | value: "选项1", |
| | | label: "黄金糕" |
| | | }, |
| | | { |
| | | value: "选项2", |
| | | label: "双皮奶" |
| | | }, |
| | | { |
| | | value: "选项5", |
| | | label: "北京烤鸭" |
| | | } |
| | | ], |
| | | |
| | | baselist: [], |
| | | donorList: [], |
| | | organchargelist: [], |
| | | standardlevel: 0, |
| | | defaultperson: {}, |
| | | fundflowList: [], |
| | | showApproveRecordDialog: false, |
| | | |
| | | // 当前单据ID |
| | | curId: 0, |
| | | curCase: null, |
| | | //业务操作类型 |
| | | operationType: "edit", |
| | | |
| | | //上传发票文件路径 |
| | | uploadFileUrl: process.env.VUE_APP_BASE_API + "/common/upload", |
| | | //文件列表 |
| | | fileList: [], |
| | | fileListto: [], |
| | | |
| | | invoDatatop: [], |
| | | //人员类别 |
| | | persontype: null, |
| | | |
| | | headers: { |
| | | Authorization: "Bearer " + getToken() |
| | | }, |
| | | |
| | | jurisdiction: false, |
| | | |
| | | //保存按钮控制 |
| | | idisabled: false |
| | | }; |
| | | }, |
| | | |
| | | created() { |
| | | console.log(234); |
| | | this.Getnetworkheader(); |
| | | |
| | | //获取登录者信息 |
| | | getUserProfile().then(response => { |
| | | this.userprofile = response.data; |
| | | this.defaultperson = response.data; |
| | | this.standardlevel = response.data.standardlevel; |
| | | }); |
| | | |
| | | //获取参数 |
| | | this.getroute(); |
| | | }, |
| | | |
| | | mounted() { |
| | | window.addEventListener("beforeunload", e => this.beforeunloadHandler(e)); |
| | | }, |
| | | |
| | | updated() { |
| | | this.$nextTick(() => { |
| | | this.$refs["table"].doLayout(); |
| | | }); |
| | | }, |
| | | |
| | | destroyed() { |
| | | window.removeEventListener("beforeunload", e => this.beforeunloadFn(e)); |
| | | }, //生命周期 - 销毁完成 |
| | | |
| | | methods: { |
| | | // 浏览器页面关闭或刷新提示 |
| | | beforeunloadHandler(e) { |
| | | if ( |
| | | (JSON.stringify(this.form) == sessionStorage.getItem("apiform") && |
| | | JSON.stringify(this.donorchargeorgans) == |
| | | sessionStorage.getItem("apifunddetail")) || |
| | | !sessionStorage.getItem("apifunddetail") |
| | | ) { |
| | | } else { |
| | | this._beforeUnload_time = new Date().getTime(); |
| | | e = e || window.event; |
| | | if (e) { |
| | | e.returnValue = "关闭提示"; |
| | | } |
| | | return "关闭提示"; |
| | | } |
| | | }, |
| | | dicts: ["sys_gathering", "sys_0_1"], |
| | | name: "Donorchargemanager", |
| | | data() { |
| | | return { |
| | | activeName: 1, //文件类型 |
| | | tableData: [ |
| | | { |
| | | date: "2016-05-03", |
| | | name: "王小虎", |
| | | address: "上海市普陀区金沙江路 1518 弄" |
| | | }, |
| | | { |
| | | date: "2016-05-02", |
| | | name: "王小虎", |
| | | address: "上海市普陀区金沙江路 1518 弄" |
| | | }, |
| | | { |
| | | date: "2016-05-04", |
| | | name: "王小虎", |
| | | address: "上海市普陀区金沙江路 1518 弄" |
| | | }, |
| | | { |
| | | date: "2016-05-01", |
| | | name: "王小虎", |
| | | address: "上海市普陀区金沙江路 1518 弄" |
| | | } |
| | | ], |
| | | gatheringlist: [ |
| | | { label: "新建", value: "1" }, |
| | | { label: "待收款", value: "2" }, |
| | | { label: "已收款", value: "3" } |
| | | ], |
| | | multipleSelection: [], |
| | | patientqueryParams: { |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | hospitalno: null, |
| | | paymentid: null |
| | | }, |
| | | dialogVisiblepatient: false, |
| | | patienttotal: 0, // |
| | | //票据文件 |
| | | pdftitle: "", |
| | | pdfimg: "", |
| | | pdfVisible: false, |
| | | costtypeobj: { |
| | | value: 0, |
| | | label: "" |
| | | }, |
| | | pdfimgsrcList: [], |
| | | Savereminder: false, //提醒保存弹框 |
| | | Reminderquantity: 0, //提醒数量 |
| | | totalquantity: 0, //总数量 |
| | | |
| | | hintitle: "选中左侧已上传文件预览查看", |
| | | atpresent: "", |
| | | iframeurl: "", |
| | | options: regionDataPlus, |
| | | selectedOptions: [], |
| | | value1: "", |
| | | previewpdf: false, |
| | | // 遮罩层 |
| | | loading: true, |
| | | // 导出遮罩层 |
| | | exportLoading: false, |
| | | // 网络请求头 |
| | | Networkheader: null, |
| | | |
| | | // 选中数组 |
| | | ids: [], |
| | | // 非单个禁用 |
| | | single: true, |
| | | // 非多个禁用 |
| | | multiple: true, |
| | | // 显示搜索条件 |
| | | showSearch: true, |
| | | // 总条数 |
| | | total: 0, |
| | | // 捐献案例器官列表格数据 |
| | | donorchargeList: [], |
| | | donorchargeorgans: [], |
| | | donorchargeanlList: [], //案例列表 |
| | | delogans: [], |
| | | // 弹出层标题 |
| | | title: "", |
| | | |
| | | // 查询费用表参数 |
| | | queryParams: { |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | infoid: null, |
| | | name: null, |
| | | donationcategory: null, |
| | | donateorgan: null, |
| | | chargeamounted: null |
| | | }, |
| | | // 查询费用器官表参数 |
| | | organParams: { |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | paymentid: null |
| | | }, |
| | | |
| | | // 当前用户信息 |
| | | userprofile: {}, |
| | | // 表单参数 |
| | | form: {}, |
| | | // 列表参数 |
| | | table: {}, |
| | | reimbursementList: [], |
| | | |
| | | // 表单校验 |
| | | rules: { |
| | | reason: [ |
| | | { required: true, message: "请输入出差事由", trigger: "blur" } |
| | | ], |
| | | deptmentname: [ |
| | | { required: true, message: "请输入所属业务组", trigger: "blur" } |
| | | ] |
| | | }, |
| | | topicoptions: [ |
| | | { |
| | | value: "选项1", |
| | | label: "黄金糕" |
| | | }, |
| | | { |
| | | value: "选项2", |
| | | label: "双皮奶" |
| | | }, |
| | | { |
| | | value: "选项5", |
| | | label: "北京烤鸭" |
| | | } |
| | | ], |
| | | |
| | | baselist: [], |
| | | donorList: [], |
| | | organchargelist: [], |
| | | standardlevel: 0, |
| | | defaultperson: {}, |
| | | fundflowList: [], |
| | | showApproveRecordDialog: false, |
| | | |
| | | // 当前单据ID |
| | | curId: 0, |
| | | curCase: null, |
| | | //业务操作类型 |
| | | operationType: "edit", |
| | | |
| | | //上传发票文件路径 |
| | | uploadFileUrl: process.env.VUE_APP_BASE_API + "/common/upload", |
| | | //文件列表 |
| | | fileList: [], |
| | | fileListto: [], |
| | | |
| | | invoDatatop: [], |
| | | //人员类别 |
| | | persontype: null, |
| | | |
| | | headers: { |
| | | Authorization: "Bearer " + getToken() |
| | | }, |
| | | |
| | | jurisdiction: false, |
| | | |
| | | //保存按钮控制 |
| | | idisabled: false |
| | | |
| | | handleClosehz() { |
| | | this.dialogVisiblepatient = false; |
| | | }, |
| | | handleQuery() { }, |
| | | resetQuery() { |
| | | this.patientqueryParams.donorname = null; |
| | | this.patientqueryParams.donorchargeid = null; |
| | | this.handleAddpatient(); |
| | | }, |
| | | handleUploadError() { }, |
| | | // 弹框添加 |
| | | AddDispatchpatients() { |
| | | this.donorchargeorgans = this.donorchargeorgans.concat( |
| | | this.multipleSelection |
| | | ); |
| | | this.dialogVisiblepatient = false; |
| | | }, |
| | | // 多选框选中数据 |
| | | handleSelectionChange(val) { |
| | | this.multipleSelection = val; |
| | | }, |
| | | // 点击新增 |
| | | handleAddpatient(row) { |
| | | this.dialogVisiblepatient = true; |
| | | this.patientqueryParams.hospitalno = this.form.hospitalno; |
| | | this.patientqueryParams.paymentid = null; |
| | | this.patientqueryParams.paymentidIsNotNull = false; |
| | | listDonorchargeorgan(this.patientqueryParams).then(res => { |
| | | this.donorchargeList = res.rows; |
| | | this.patienttotal = res.total; |
| | | this.patientqueryParams.paymentidIsNotNull = true; |
| | | console.log(this.donorchargeList); |
| | | }); |
| | | }, |
| | | // 获取请求头 |
| | | Getnetworkheader() { |
| | | let string = window.location.href; |
| | | if (string.includes("9091")) { |
| | | const index = string.indexOf("9091"); |
| | | this.Networkheader = string.slice(0, index + 4); // 截取9091及其前部字符 |
| | | } else { |
| | | const index = string.indexOf("8032"); |
| | | this.Networkheader = string.slice(0, index + 4); // 截取8032及其前部字符 |
| | | } |
| | | }, |
| | | // 表单重置 |
| | | reset() { |
| | | this.form = { |
| | | id: null, |
| | | infoid: null, |
| | | donateno: null, |
| | | donatetime: null, |
| | | name: null, |
| | | borthdate: null, |
| | | sex: null, |
| | | age: null, |
| | | donationcategory: null, |
| | | donateorgan: null, |
| | | chargeamount: null, |
| | | chargeamounted: null, |
| | | remark: null, |
| | | delFlag: null, |
| | | createBy: null, |
| | | createTime: null, |
| | | updateBy: null, |
| | | updateTime: null |
| | | }; |
| | | this.resetForm("form"); |
| | | }, |
| | | |
| | | created() { |
| | | console.log(234); |
| | | this.Getnetworkheader(); |
| | | |
| | | //获取登录者信息 |
| | | getUserProfile().then(response => { |
| | | this.userprofile = response.data; |
| | | this.defaultperson = response.data; |
| | | this.standardlevel = response.data.standardlevel; |
| | | }); |
| | | |
| | | //获取参数 |
| | | this.getroute(); |
| | | }, |
| | | |
| | | mounted() { |
| | | window.addEventListener("beforeunload", e => this.beforeunloadHandler(e)); |
| | | }, |
| | | |
| | | updated() { |
| | | this.$nextTick(() => { |
| | | this.$refs["table"].doLayout(); |
| | | |
| | | /** 通过参数获取业务类型 */ |
| | | getroute() { |
| | | //选择业务类型:1、新增;2、修改;3、查看 |
| | | this.operationType = this.$route.query.operation; |
| | | this.curId = this.$route.query.id; |
| | | this.curCase = this.$route.query.data; |
| | | this.patientqueryParams.paymentid = this.curId; |
| | | console.log("this.$route.query", this.$route.query); |
| | | |
| | | if (this.operationType == "add") { |
| | | this.title = "新建案例器官费用表"; |
| | | this.handleAdd(); |
| | | console.log("1"); |
| | | } else if (this.operationType == "update") { |
| | | this.title = "修改案例器官费用表"; |
| | | this.handleUpdate(); |
| | | console.log("2"); |
| | | } else if (this.operationType == "detail") { |
| | | this.title = "查看案例器官费用表"; |
| | | this.handleDetail(); |
| | | console.log("3"); |
| | | } |
| | | listDonorcharge({ pageNum: 1, pageSize: 10000 }).then(response => { |
| | | this.donorchargeanlList = response.rows; |
| | | }); |
| | | }, |
| | | |
| | | destroyed() { |
| | | window.removeEventListener("beforeunload", e => this.beforeunloadFn(e)); |
| | | }, //生命周期 - 销毁完成 |
| | | |
| | | methods: { |
| | | // 浏览器页面关闭或刷新提示 |
| | | beforeunloadHandler(e) { |
| | | if ( |
| | | (JSON.stringify(this.form) == sessionStorage.getItem("apiform") && |
| | | JSON.stringify(this.donorchargeorgans) == |
| | | sessionStorage.getItem("apifunddetail")) || |
| | | !sessionStorage.getItem("apifunddetail") |
| | | ) { |
| | | } else { |
| | | this._beforeUnload_time = new Date().getTime(); |
| | | e = e || window.event; |
| | | if (e) { |
| | | e.returnValue = "关闭提示"; |
| | | } |
| | | return "关闭提示"; |
| | | } |
| | | }, |
| | | |
| | | handleClosehz() { |
| | | this.dialogVisiblepatient = false; |
| | | }, |
| | | handleQuery() {}, |
| | | resetQuery() { |
| | | this.patientqueryParams.donorname = null; |
| | | this.patientqueryParams.donorchargeid = null; |
| | | this.handleAddpatient(); |
| | | }, |
| | | handleUploadError() {}, |
| | | // 弹框添加 |
| | | AddDispatchpatients() { |
| | | this.donorchargeorgans = this.donorchargeorgans.concat( |
| | | this.multipleSelection |
| | | ); |
| | | this.dialogVisiblepatient = false; |
| | | }, |
| | | // 多选框选中数据 |
| | | handleSelectionChange(val) { |
| | | this.multipleSelection = val; |
| | | }, |
| | | // 点击新增 |
| | | handleAddpatient(row) { |
| | | this.dialogVisiblepatient = true; |
| | | this.patientqueryParams.hospitalno = this.form.hospitalno; |
| | | this.patientqueryParams.paymentid = null; |
| | | this.patientqueryParams.paymentidIsNotNull = false; |
| | | |
| | | /** 重置按钮操作 */ |
| | | resetQuery() { |
| | | this.resetForm("queryForm"); |
| | | this.handleQuery(); |
| | | }, |
| | | |
| | | // 取消按钮 |
| | | cancel() { |
| | | this.$store.dispatch("tagsView/delView", this.$route); |
| | | this.$router.go(-1); |
| | | }, |
| | | |
| | | /** 新增按钮操作 */ |
| | | handleAdd() { |
| | | this.reset(); |
| | | this.title = "新增捐献案例器官费用表"; |
| | | |
| | | if (this.curCase) { |
| | | this.form.infoid = this.curCase.id; |
| | | this.form.paystatus = "1"; |
| | | this.form.hospitalname = this.curCase.organizationname; |
| | | this.form.hospitalno = this.curCase.organizationid; |
| | | this.form.borthdate = this.curCase.birthday; |
| | | } |
| | | }, |
| | | |
| | | /** 修改按钮操作 */ |
| | | handleUpdate() { |
| | | this.reset(); |
| | | this.title = "收款结算申请单编辑"; |
| | | |
| | | listDonorpayment({ id: this.curId }).then(response => { |
| | | this.form = response.rows[0]; |
| | | //器官费用信息 |
| | | listDonorchargeorgan(this.patientqueryParams).then(res => { |
| | | this.donorchargeList = res.rows; |
| | | this.patienttotal = res.total; |
| | | this.patientqueryParams.paymentidIsNotNull = true; |
| | | console.log(this.donorchargeList); |
| | | console.log("listDonorchargeorgan", res); |
| | | this.donorchargeorgans = res.rows; |
| | | console.log(this.donorchargeorgans, "donorchargeorgans"); |
| | | }); |
| | | }, |
| | | // 获取请求头 |
| | | Getnetworkheader() { |
| | | let string = window.location.href; |
| | | if (string.includes("9091")) { |
| | | const index = string.indexOf("9091"); |
| | | this.Networkheader = string.slice(0, index + 4); // 截取9091及其前部字符 |
| | | } else { |
| | | const index = string.indexOf("8032"); |
| | | this.Networkheader = string.slice(0, index + 4); // 截取8032及其前部字符 |
| | | } |
| | | }, |
| | | // 表单重置 |
| | | reset() { |
| | | this.form = { |
| | | id: null, |
| | | infoid: null, |
| | | donateno: null, |
| | | donatetime: null, |
| | | name: null, |
| | | borthdate: null, |
| | | sex: null, |
| | | age: null, |
| | | donationcategory: null, |
| | | donateorgan: null, |
| | | chargeamount: null, |
| | | chargeamounted: null, |
| | | remark: null, |
| | | delFlag: null, |
| | | createBy: null, |
| | | createTime: null, |
| | | updateBy: null, |
| | | updateTime: null |
| | | }; |
| | | this.resetForm("form"); |
| | | }, |
| | | |
| | | /** 通过参数获取业务类型 */ |
| | | getroute() { |
| | | //选择业务类型:1、新增;2、修改;3、查看 |
| | | this.operationType = this.$route.query.operation; |
| | | this.curId = this.$route.query.id; |
| | | this.curCase = this.$route.query.data; |
| | | this.patientqueryParams.paymentid = this.curId; |
| | | console.log("this.$route.query", this.$route.query); |
| | | |
| | | if (this.operationType == "add") { |
| | | this.title = "新建案例器官费用表"; |
| | | this.handleAdd(); |
| | | console.log("1"); |
| | | } else if (this.operationType == "update") { |
| | | this.title = "修改案例器官费用表"; |
| | | this.handleUpdate(); |
| | | console.log("2"); |
| | | } else if (this.operationType == "detail") { |
| | | this.title = "查看案例器官费用表"; |
| | | this.handleDetail(); |
| | | console.log("3"); |
| | | } |
| | | listDonorcharge({ pageNum: 1, pageSize: 10000 }).then(response => { |
| | | this.donorchargeanlList = response.rows; |
| | | }); |
| | | }, |
| | | |
| | | /** 查看操作 */ |
| | | handleDetail() { |
| | | this.reset(); |
| | | listDonorpayment({ id: this.curId }).then(response => { |
| | | this.title = "查看捐献案例器官费用表"; |
| | | this.form = response.rows[0]; |
| | | //器官费用信息 |
| | | listDonorchargeorgan(this.patientqueryParams).then(res => { |
| | | console.log("listDonorchargeorgan", res); |
| | | this.donorchargeorgans = res.rows; |
| | | console.log(this.donorchargeorgans, "donorchargeorgans"); |
| | | }); |
| | | }, |
| | | |
| | | /** 重置按钮操作 */ |
| | | resetQuery() { |
| | | this.resetForm("queryForm"); |
| | | this.handleQuery(); |
| | | }, |
| | | |
| | | // 取消按钮 |
| | | cancel() { |
| | | this.$store.dispatch("tagsView/delView", this.$route); |
| | | this.$router.go(-1); |
| | | }, |
| | | |
| | | /** 新增按钮操作 */ |
| | | handleAdd() { |
| | | this.reset(); |
| | | this.title = "新增捐献案例器官费用表"; |
| | | |
| | | if (this.curCase) { |
| | | this.form.infoid = this.curCase.id; |
| | | this.form.paystatus = "1"; |
| | | this.form.hospitalname = this.curCase.organizationname; |
| | | this.form.hospitalno = this.curCase.organizationid; |
| | | this.form.borthdate = this.curCase.birthday; |
| | | } |
| | | }, |
| | | |
| | | /** 修改按钮操作 */ |
| | | handleUpdate() { |
| | | this.reset(); |
| | | this.title = "收款结算申请单编辑"; |
| | | |
| | | listDonorpayment({ id: this.curId }).then(response => { |
| | | this.form = response.rows[0]; |
| | | //器官费用信息 |
| | | listDonorchargeorgan(this.patientqueryParams).then(res => { |
| | | console.log("listDonorchargeorgan", res); |
| | | this.donorchargeorgans = res.rows; |
| | | console.log(this.donorchargeorgans, "donorchargeorgans"); |
| | | }); |
| | | }); |
| | | }, |
| | | |
| | | /** 查看操作 */ |
| | | handleDetail() { |
| | | this.reset(); |
| | | listDonorpayment({ id: this.curId }).then(response => { |
| | | this.title = "查看捐献案例器官费用表"; |
| | | this.form = response.rows[0]; |
| | | //器官费用信息 |
| | | listDonorchargeorgan(this.patientqueryParams).then(res => { |
| | | console.log("listDonorchargeorgan", res); |
| | | this.donorchargeorgans = res.rows; |
| | | console.log(this.donorchargeorgans, "donorchargeorgans"); |
| | | }); |
| | | }); |
| | | }, |
| | | |
| | | /** 提交保存按钮 */ |
| | | submitForm() { |
| | | this.chargeSum(); |
| | | this.$refs["form"].validate(valid => { |
| | | if (valid) { |
| | | this.$modal.loading("正在提交,请稍候!"); |
| | | |
| | | //保存 |
| | | if (this.form.id != null) { |
| | | for (let k = 0; k < this.donorchargeorgans.length; k++) { |
| | | this.donorchargeorgans[k].paymentid = this.form.id; |
| | | } |
| | | |
| | | editDonorpayment(this.form).then(res1 => { |
| | | if (res1.code == 200) { |
| | | saveDonorchargeorgan(this.donorchargeorgans).then(res2 => { |
| | | if (res2.code == 200) { |
| | | this.$modal.msgSuccess("保存成功!"); |
| | | } else { |
| | | this.$modal.msgError(res2.msg); |
| | | } |
| | | this.$modal.closeLoading(); |
| | | }); |
| | | } else { |
| | | this.$modal.closeLoading(); |
| | | this.$modal.msgError(res1.msg); |
| | | } |
| | | }); |
| | | } else { |
| | | addDonorpayment(this.form).then(response => { |
| | | if (response.code == 200) { |
| | | this.form.id = response.msg; |
| | | //保存前校验数据 |
| | | for (let k = 0; k < this.donorchargeorgans.length; k++) { |
| | | this.donorchargeorgans[k].paymentid = response.msg; |
| | | }); |
| | | }, |
| | | |
| | | /** 提交保存按钮 */ |
| | | submitForm() { |
| | | this.chargeSum(); |
| | | this.$refs["form"].validate(valid => { |
| | | if (valid) { |
| | | this.$modal.loading("正在提交,请稍候!"); |
| | | |
| | | //保存 |
| | | if (this.form.id != null) { |
| | | for (let k = 0; k < this.donorchargeorgans.length; k++) { |
| | | this.donorchargeorgans[k].paymentid = this.form.id; |
| | | } |
| | | |
| | | editDonorpayment(this.form).then(res1 => { |
| | | if (res1.code == 200) { |
| | | saveDonorchargeorgan(this.donorchargeorgans).then(res2 => { |
| | | if (res2.code == 200) { |
| | | this.$modal.msgSuccess("保存成功!"); |
| | | } else { |
| | | this.$modal.msgError(res2.msg); |
| | | } |
| | | saveDonorchargeorgan(this.donorchargeorgans).then(res2 => { |
| | | if (res2.code == 200) { |
| | | this.$modal.msgSuccess("保存成功!"); |
| | | } else { |
| | | this.$modal.msgError(res2.msg); |
| | | } |
| | | }); |
| | | this.$modal.closeLoading(); |
| | | } else { |
| | | this.$modal.msgError(response.msg); |
| | | this.$modal.closeLoading(); |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | }); |
| | | }, |
| | | //修改总实收后触发 |
| | | |
| | | chargeSumall() { |
| | | if (this.form.receivedamount == this.form.receivableamount) { |
| | | this.donorchargeorgans.forEach(item => { |
| | | item.amount = item.organcharge; |
| | | }); |
| | | } else { |
| | | this.$modal.msgError("注意实收金额不等于应收金额,请核对数据!"); |
| | | } |
| | | }, |
| | | //修改实收或应收后触发 |
| | | chargeSum() { |
| | | let ChargeSum = 0; |
| | | let ChargeamountSum = 0; |
| | | |
| | | //费用合计 |
| | | try { |
| | | for (let i = 0; i < this.donorchargeorgans.length; i++) { |
| | | if (!isNaN(parseFloat(this.donorchargeorgans[i].organcharge))) { |
| | | ChargeSum += parseFloat(this.donorchargeorgans[i].organcharge); |
| | | } |
| | | if (!isNaN(parseFloat(this.donorchargeorgans[i].amount))) { |
| | | ChargeamountSum += parseFloat(this.donorchargeorgans[i].amount); |
| | | } |
| | | } |
| | | this.form.receivableamount = ChargeSum.toFixed(2); |
| | | this.form.receivedamount = ChargeamountSum.toFixed(2); |
| | | } catch {} |
| | | }, |
| | | |
| | | handleDelete(row) { |
| | | this.$modal |
| | | .confirm("是否确认删除该条器官费用数据项?") |
| | | .then(() => { |
| | | let value = row; |
| | | value.paymentid = null; |
| | | this.delogans.push(value); |
| | | |
| | | saveDonorchargeorgan(this.delogans).then(res2 => { |
| | | if (res2.code == 200) { |
| | | let index = this.donorchargeorgans.indexOf(row); |
| | | this.donorchargeorgans.splice(index, 1); |
| | | this.$modal.msgSuccess("删除成功!"); |
| | | }); |
| | | } else { |
| | | this.$modal.closeLoading(); |
| | | this.$modal.msgError(res1.msg); |
| | | } |
| | | }); |
| | | } else { |
| | | addDonorpayment(this.form).then(response => { |
| | | if (response.code == 200) { |
| | | this.form.id = response.msg; |
| | | //保存前校验数据 |
| | | for (let k = 0; k < this.donorchargeorgans.length; k++) { |
| | | this.donorchargeorgans[k].paymentid = response.msg; |
| | | } |
| | | saveDonorchargeorgan(this.donorchargeorgans).then(res2 => { |
| | | if (res2.code == 200) { |
| | | this.$modal.msgSuccess("保存成功!"); |
| | | } else { |
| | | this.$modal.msgError(res2.msg); |
| | | } |
| | | }); |
| | | this.$modal.closeLoading(); |
| | | } else { |
| | | this.$modal.msgError(response.msg); |
| | | this.$modal.closeLoading(); |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | }); |
| | | }, |
| | | //修改总实收后触发 |
| | | |
| | | chargeSumall() { |
| | | if (this.form.receivedamount == this.form.receivableamount) { |
| | | this.donorchargeorgans.forEach(item => { |
| | | item.amount = item.organcharge; |
| | | }); |
| | | } else { |
| | | this.$modal.msgError("注意实收金额不等于应收金额,请核对数据!"); |
| | | } |
| | | }, |
| | | //修改实收或应收后触发 |
| | | chargeSum() { |
| | | let ChargeSum = 0; |
| | | let ChargeamountSum = 0; |
| | | |
| | | //费用合计 |
| | | try { |
| | | for (let i = 0; i < this.donorchargeorgans.length; i++) { |
| | | if (!isNaN(parseFloat(this.donorchargeorgans[i].organcharge))) { |
| | | ChargeSum += parseFloat(this.donorchargeorgans[i].organcharge); |
| | | } |
| | | if (!isNaN(parseFloat(this.donorchargeorgans[i].amount))) { |
| | | ChargeamountSum += parseFloat(this.donorchargeorgans[i].amount); |
| | | } |
| | | } |
| | | this.form.receivableamount = ChargeSum.toFixed(2); |
| | | this.form.receivedamount = ChargeamountSum.toFixed(2); |
| | | } catch { } |
| | | }, |
| | | |
| | | handleDelete(row) { |
| | | this.$modal |
| | | .confirm("是否确认删除该条器官费用数据项?") |
| | | .then(() => { |
| | | let value = row; |
| | | value.paymentid = null; |
| | | this.delogans.push(value); |
| | | |
| | | saveDonorchargeorgan(this.delogans).then(res2 => { |
| | | if (res2.code == 200) { |
| | | let index = this.donorchargeorgans.indexOf(row); |
| | | this.donorchargeorgans.splice(index, 1); |
| | | this.$modal.msgSuccess("删除成功!"); |
| | | } |
| | | }); |
| | | }) |
| | | .catch(() => { }); |
| | | }, |
| | | |
| | | //表格合计 |
| | | getSummaries(param) { |
| | | const { columns, data } = param; |
| | | const sums = []; |
| | | var columnnames = [ |
| | | "organno", |
| | | "organname", |
| | | "amounttime", |
| | | "organchargedesc", |
| | | "hospitalname", |
| | | "organtime", |
| | | "remark", |
| | | "name", |
| | | "caseno", |
| | | "receiveTime" |
| | | ]; |
| | | columns.forEach((column, index) => { |
| | | if (index === 0) { |
| | | sums[index] = "合计"; |
| | | return; |
| | | } |
| | | |
| | | //去除部分字段计算 |
| | | if (columnnames.indexOf(column.property) > -1) { |
| | | return; |
| | | } |
| | | |
| | | const values = data.map(item => Number(item[column.property])); |
| | | if (!values.every(value => isNaN(value))) { |
| | | sums[index] = values.reduce((prev, curr) => { |
| | | const value = Number(curr); |
| | | if (!isNaN(value)) { |
| | | return prev + curr; |
| | | } else { |
| | | return prev; |
| | | } |
| | | }, 0); |
| | | sums[index] = sums[index].toFixed(2); // 保留2位小数,解决小数合计列; |
| | | } else { |
| | | sums[index] = ""; |
| | | } |
| | | }); |
| | | return sums; |
| | | }, |
| | | // 文件------------------------ |
| | | remove(file, fileList) { |
| | | const donorchargeorgans = [...this.donorchargeorgans]; |
| | | |
| | | this.fileListto.splice(this.fileListto.indexOf(file), 1); |
| | | donorchargeorgans[this.atpresent].annexFilesList = this.fileListto; |
| | | }, |
| | | |
| | | uploadSccess(response, file, fileList) { |
| | | this.donorchargeorgans; |
| | | const config = { |
| | | headers: { Authorization: "Bearer " + this.ICDtoken } |
| | | }; |
| | | const pdfimg = this.Networkheader + "/prod-api" + response.fileName; |
| | | //获取票据信息位置 |
| | | if (response.code == 200) { |
| | | this.previewpdf = true; |
| | | 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(() => {}); |
| | | }, |
| | | |
| | | //表格合计 |
| | | getSummaries(param) { |
| | | const { columns, data } = param; |
| | | const sums = []; |
| | | var columnnames = [ |
| | | "organno", |
| | | "organname", |
| | | "amounttime", |
| | | "organchargedesc", |
| | | "hospitalname", |
| | | "organtime", |
| | | "remark", |
| | | "name", |
| | | "caseno", |
| | | "receiveTime" |
| | | ]; |
| | | columns.forEach((column, index) => { |
| | | if (index === 0) { |
| | | sums[index] = "合计"; |
| | | .catch(error => { |
| | | console.error("Error loading image", error); |
| | | return; |
| | | } |
| | | |
| | | //去除部分字段计算 |
| | | if (columnnames.indexOf(column.property) > -1) { |
| | | return; |
| | | } |
| | | |
| | | const values = data.map(item => Number(item[column.property])); |
| | | if (!values.every(value => isNaN(value))) { |
| | | sums[index] = values.reduce((prev, curr) => { |
| | | const value = Number(curr); |
| | | if (!isNaN(value)) { |
| | | return prev + curr; |
| | | } else { |
| | | return prev; |
| | | } |
| | | }, 0); |
| | | sums[index] = sums[index].toFixed(2); // 保留2位小数,解决小数合计列; |
| | | } else { |
| | | sums[index] = ""; |
| | | } |
| | | }); |
| | | |
| | | this.$modal.msgSuccess(response.msg); |
| | | |
| | | console.log(this.fileListto, "新增后"); |
| | | if (!this.donorchargeorgans[this.atpresent].annexFilesList) { |
| | | this.donorchargeorgans[this.atpresent].annexFilesList = []; |
| | | } |
| | | this.donorchargeorgans[this.atpresent].annexFilesList.push({ |
| | | name: file.name, |
| | | url: response.fileName |
| | | }); |
| | | return sums; |
| | | }, |
| | | // 文件------------------------ |
| | | remove(file, fileList) { |
| | | const donorchargeorgans = [...this.donorchargeorgans]; |
| | | |
| | | this.fileListto.splice(this.fileListto.indexOf(file), 1); |
| | | donorchargeorgans[this.atpresent].annexFilesList = this.fileListto; |
| | | }, |
| | | |
| | | uploadSccess(response, file, fileList) { |
| | | this.donorchargeorgans; |
| | | const config = { |
| | | headers: { Authorization: "Bearer " + this.ICDtoken } |
| | | }; |
| | | const pdfimg = this.Networkheader + "/prod-api" + response.fileName; |
| | | //获取票据信息位置 |
| | | if (response.code == 200) { |
| | | this.previewpdf = true; |
| | | 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) |
| | | this.pdftitle = "共" + this.pdfimgsrcList.length + "项"; |
| | | } else { |
| | | console.log(response.msg); |
| | | } |
| | | }, |
| | | |
| | | // 点击票据 |
| | | Filepopup(index, 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.donorchargeorgans[index].annexFilesList) { |
| | | const fetchPromises = this.donorchargeorgans[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; |
| | | }); |
| | | }) |
| | | .catch(error => { |
| | | console.error("Error loading image", error); |
| | | return; |
| | | }); |
| | | |
| | | this.$modal.msgSuccess(response.msg); |
| | | |
| | | console.log(this.fileListto, "新增后"); |
| | | if (!this.donorchargeorgans[this.atpresent].annexFilesList) { |
| | | this.donorchargeorgans[this.atpresent].annexFilesList = []; |
| | | } |
| | | this.donorchargeorgans[this.atpresent].annexFilesList.push({ |
| | | name: file.name, |
| | | url: response.fileName |
| | | }); |
| | | this.pdftitle = "共" + this.pdfimgsrcList.length + "项"; |
| | | } else { |
| | | console.log(response.msg); |
| | | } |
| | | }, |
| | | |
| | | // 点击票据 |
| | | Filepopup(index, row) { |
| | | const config = { |
| | | headers: { Authorization: "Bearer " + this.ICDtoken } |
| | | }; |
| | | |
| | | this.tableDatatop = []; |
| | | ); |
| | | |
| | | 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.previewpdf = true; |
| | | } else { |
| | | this.fileListto = []; |
| | | this.invoicefileListto = []; |
| | | this.pdfimg = ""; |
| | | this.invoicepdfimg = []; |
| | | this.pdfimgsrcList = []; |
| | | this.invoicepdfimgsrcList = []; |
| | | this.tableDatatop.push(row); |
| | | this.atpresent = index; |
| | | this.pdfVisible = true; |
| | | |
| | | if (this.donorchargeorgans[index].annexFilesList) { |
| | | const fetchPromises = this.donorchargeorgans[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.previewpdf = true; |
| | | this.pdftitle = ""; |
| | | } |
| | | |
| | | this.pdftitle = "共" + this.pdfimgsrcList.length + "项"; |
| | | |
| | | console.log(this.fileListto, "this.fileListto"); |
| | | console.log( |
| | | this.donorchargeorgans[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") { |
| | | console.log(item, "展示"); |
| | | this.previewpdf = true; |
| | | if (item.url) { |
| | | this.pdfimg = item.url; |
| | | } else { |
| | | this.fileListto = []; |
| | | this.pdfimg = ""; |
| | | this.pdftitle = ""; |
| | | } |
| | | |
| | | this.pdftitle = "共" + this.pdfimgsrcList.length + "项"; |
| | | |
| | | console.log(this.fileListto, "this.fileListto"); |
| | | console.log( |
| | | this.donorchargeorgans[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") { |
| | | console.log(item, "展示"); |
| | | this.previewpdf = true; |
| | | if (item.url) { |
| | | this.pdfimg = item.url; |
| | | } else { |
| | | this.pdfimg = ""; |
| | | } |
| | | } else { |
| | | this.hintitle = "当前文件暂不支持预览"; |
| | | this.$modal.msgWarning("当前文件暂不支持预览"); |
| | | this.previewpdf = false; |
| | | } |
| | | }, |
| | | getIndexInArray(arr, obj) { |
| | | return arr.indexOf(obj); |
| | | }, |
| | | // 发票切换 |
| | | handleClick(tab, event) { |
| | | this.pdftitle = "共" + this.pdfimgsrcList.length + "项"; |
| | | }, |
| | | // 点击删除 |
| | | deletedowfile(row) { |
| | | console.log(row); |
| | | let indexvalue = ""; |
| | | 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.donorchargeorgans[this.atpresent].annexFilesList); |
| | | indexvalue = this.donorchargeorgans[ |
| | | this.atpresent |
| | | ].annexFilesList.findIndex(item => item.name == row.name); |
| | | console.log(indexvalue, "删除索引"); |
| | | this.donorchargeorgans[this.atpresent].annexFilesList.splice( |
| | | indexvalue, |
| | | 1 |
| | | ); |
| | | }, |
| | | // 点击上移 |
| | | moveupdowfile(row) { |
| | | 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.donorchargeorgans[ |
| | | this.atpresent |
| | | ].annexFilesList.findIndex(item => item.name == row.name); |
| | | const itemann = this.donorchargeorgans[ |
| | | this.atpresent |
| | | ].annexFilesList.splice(indexann, 1)[0]; // 移除指定索引处的元素,并保存到item变量中 |
| | | this.donorchargeorgans[this.atpresent].annexFilesList.splice( |
| | | indexann - 1, |
| | | 0, |
| | | itemann |
| | | ); // 将itemann插入到索引位置的前一位 |
| | | console.log(indexann, "indexann"); |
| | | console.log(index, "index"); |
| | | |
| | | console.log( |
| | | this.donorchargeorgans[this.atpresent].annexFilesList, |
| | | "annexFilesList" |
| | | ); |
| | | console.log(this.fileListto, "fileListto"); |
| | | // console.log(this.donorchargeorgans[this.atpresent].invoicefilesList,'invoicefilesList'); |
| | | }, |
| | | Downloadfile(row) { |
| | | window.location.href = row.url; |
| | | } else { |
| | | this.hintitle = "当前文件暂不支持预览"; |
| | | this.$modal.msgWarning("当前文件暂不支持预览"); |
| | | this.previewpdf = false; |
| | | } |
| | | } |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .Modifydetailscla { |
| | | padding: 10px; |
| | | |
| | | .boxdiv { |
| | | font-size: 18px; |
| | | padding: 0 30px; |
| | | padding-bottom: 60px; |
| | | |
| | | .top-text { |
| | | text-align: center; |
| | | |
| | | font-size: 23px; |
| | | font-weight: 600; |
| | | margin: 20px 0; |
| | | margin-bottom: 50px; |
| | | } |
| | | |
| | | .dialog-footer { |
| | | text-align: left; |
| | | margin-top: 10px; |
| | | } |
| | | }, |
| | | getIndexInArray(arr, obj) { |
| | | return arr.indexOf(obj); |
| | | }, |
| | | // 发票切换 |
| | | handleClick(tab, event) { |
| | | this.pdftitle = "共" + this.pdfimgsrcList.length + "项"; |
| | | }, |
| | | // 点击删除 |
| | | deletedowfile(row) { |
| | | console.log(row); |
| | | let indexvalue = ""; |
| | | 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.donorchargeorgans[this.atpresent].annexFilesList); |
| | | indexvalue = this.donorchargeorgans[ |
| | | this.atpresent |
| | | ].annexFilesList.findIndex(item => item.name == row.name); |
| | | console.log(indexvalue, "删除索引"); |
| | | this.donorchargeorgans[this.atpresent].annexFilesList.splice( |
| | | indexvalue, |
| | | 1 |
| | | ); |
| | | }, |
| | | // 点击上移 |
| | | moveupdowfile(row) { |
| | | 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.donorchargeorgans[ |
| | | this.atpresent |
| | | ].annexFilesList.findIndex(item => item.name == row.name); |
| | | const itemann = this.donorchargeorgans[ |
| | | this.atpresent |
| | | ].annexFilesList.splice(indexann, 1)[0]; // 移除指定索引处的元素,并保存到item变量中 |
| | | this.donorchargeorgans[this.atpresent].annexFilesList.splice( |
| | | indexann - 1, |
| | | 0, |
| | | itemann |
| | | ); // 将itemann插入到索引位置的前一位 |
| | | console.log(indexann, "indexann"); |
| | | console.log(index, "index"); |
| | | |
| | | console.log( |
| | | this.donorchargeorgans[this.atpresent].annexFilesList, |
| | | "annexFilesList" |
| | | ); |
| | | console.log(this.fileListto, "fileListto"); |
| | | // console.log(this.donorchargeorgans[this.atpresent].invoicefilesList,'invoicefilesList'); |
| | | }, |
| | | Downloadfile(row) { |
| | | window.location.href = row.url; |
| | | } |
| | | } |
| | | |
| | | .upload-demo { |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .Modifydetailscla { |
| | | padding: 10px; |
| | | |
| | | .boxdiv { |
| | | font-size: 18px; |
| | | padding: 0 30px; |
| | | padding-bottom: 60px; |
| | | |
| | | .top-text { |
| | | text-align: center; |
| | | |
| | | font-size: 23px; |
| | | font-weight: 600; |
| | | margin: 20px 0; |
| | | margin-bottom: 50px; |
| | | } |
| | | |
| | | .dialog-footer { |
| | | text-align: left; |
| | | margin-top: 10px; |
| | | } |
| | | } |
| | | } |
| | | |
| | | .upload-demo { |
| | | text-align: center; |
| | | } |
| | | |
| | | .pdfimg { |
| | | display: flex; // text-align: center; |
| | | width: 100%; |
| | | height: 600px; |
| | | |
| | | .box-pdf { |
| | | width: 400px; |
| | | padding-top: 20px; |
| | | margin-right: 30px; |
| | | border: 1px solid #dcdfe6; |
| | | -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), |
| | | 0 0 6px 0 rgba(0, 0, 0, 0.04); |
| | | box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1); // <- Add this to fix. |
| | | } |
| | | |
| | | .pdftit { |
| | | width: 200px; |
| | | padding: 20px; |
| | | font-size: 18px; |
| | | } |
| | | |
| | | .pdftit:hover { |
| | | background: #c0cef7; |
| | | } |
| | | |
| | | .pdfimgmin { |
| | | width: 60%; |
| | | |
| | | img { |
| | | width: 100%; |
| | | } |
| | | } |
| | | |
| | | .pdfimgmins { |
| | | font-size: 28px; |
| | | width: 60%; |
| | | text-align: center; |
| | | } |
| | | |
| | | .pdfimg { |
| | | display: flex; // text-align: center; |
| | | width: 100%; |
| | | height: 600px; |
| | | |
| | | .box-pdf { |
| | | width: 400px; |
| | | padding-top: 20px; |
| | | margin-right: 30px; |
| | | } |
| | | |
| | | .headlines { |
| | | font-size: 25px; |
| | | display: flex; |
| | | width: 96%; |
| | | justify-content: space-between; |
| | | padding-left: 5px; |
| | | margin-bottom: 10px; |
| | | border-left: 5px solid rgb(65, 161, 190); |
| | | } |
| | | |
| | | .button-delete { |
| | | color: rgb(236, 69, 69); |
| | | } |
| | | |
| | | .examine-jic { |
| | | .headline { |
| | | font-size: 24px; |
| | | border-left: 5px solid #41a1be; |
| | | padding-left: 5px; |
| | | margin-bottom: 10px; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | |
| | | .Add-details { |
| | | font-size: 18px; |
| | | color: #02a7f0; |
| | | cursor: pointer; |
| | | } |
| | | } |
| | | |
| | | .jic-value { |
| | | font-size: 20px; |
| | | border-top: 1px solid #a7abac; |
| | | padding: 10px; |
| | | margin-bottom: 10px; |
| | | |
| | | .details-jic { |
| | | padding: 10px 15px; |
| | | border: 1px solid #dcdfe6; |
| | | -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), |
| | | 0 0 6px 0 rgba(0, 0, 0, 0.04); |
| | | box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1); // <- Add this to fix. |
| | | } |
| | | |
| | | .pdftit { |
| | | width: 200px; |
| | | padding: 20px; |
| | | font-size: 18px; |
| | | } |
| | | |
| | | .pdftit:hover { |
| | | background: #c0cef7; |
| | | } |
| | | |
| | | .pdfimgmin { |
| | | width: 60%; |
| | | |
| | | img { |
| | | width: 100%; |
| | | } |
| | | } |
| | | |
| | | .pdfimgmins { |
| | | font-size: 28px; |
| | | width: 60%; |
| | | text-align: center; |
| | | } |
| | | } |
| | | .headlines { |
| | | font-size: 25px; |
| | | display: flex; |
| | | width: 96%; |
| | | justify-content: space-between; |
| | | padding-left: 5px; |
| | | margin-bottom: 10px; |
| | | border-left: 5px solid rgb(65, 161, 190); |
| | | } |
| | | .button-delete { |
| | | color: rgb(236, 69, 69); |
| | | } |
| | | .examine-jic { |
| | | .headline { |
| | | font-size: 24px; |
| | | border-left: 5px solid #41a1be; |
| | | padding-left: 5px; |
| | | margin-bottom: 10px; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | .Add-details { |
| | | font-size: 18px; |
| | | color: #02a7f0; |
| | | cursor: pointer; |
| | | } |
| | | } |
| | | .jic-value { |
| | | font-size: 20px; |
| | | border-top: 1px solid #a7abac; |
| | | padding: 10px; |
| | | margin-bottom: 10px; |
| | | .details-jic { |
| | | padding: 10px 15px; |
| | | border: 1px solid #dcdfe6; |
| | | -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), |
| | | 0 0 6px 0 rgba(0, 0, 0, 0.04); |
| | | .details-title { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | margin-bottom: 10px; |
| | | div:nth-child(2) { |
| | | color: #02a7f0; |
| | | cursor: pointer; |
| | | } |
| | | } |
| | | .details-renw { |
| | | background: #e4ebfc; |
| | | padding: 15px 5px; |
| | | border-radius: 5px; |
| | | margin-bottom: 20px; |
| | | |
| | | .details-title { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | margin-bottom: 10px; |
| | | |
| | | div:nth-child(2) { |
| | | color: #02a7f0; |
| | | cursor: pointer; |
| | | } |
| | | } |
| | | |
| | | .details-renw { |
| | | background: #e4ebfc; |
| | | padding: 15px 5px; |
| | | border-radius: 5px; |
| | | margin-bottom: 20px; |
| | | } |
| | | } |
| | | } |
| | | ::v-deep .el-input.is-disabled .el-input__inner { |
| | | background-color: #F5F7FA; |
| | | border-color: #dfe4ed; |
| | | color: #000000; |
| | | cursor: not-allowed; |
| | | } |
| | | |
| | | ::v-deep .el-input--medium .el-input__inner { |
| | | height: 36px; |
| | | line-height: 36px; |
| | | text-align: center; |
| | | } |
| | | |
| | | ::v-deep .el-alert__title { |
| | | font-size: 20px; |
| | | line-height: 20px; |
| | | } |
| | | </style> |
| | | |
| | | |
| | | ::v-deep .el-input.is-disabled .el-input__inner { |
| | | background-color: #F5F7FA; |
| | | border-color: #dfe4ed; |
| | | color: #000000; |
| | | cursor: not-allowed; |
| | | } |
| | | |
| | | ::v-deep .el-input--medium .el-input__inner { |
| | | height: 36px; |
| | | line-height: 36px; |
| | | text-align: center; |
| | | } |
| | | |
| | | ::v-deep .el-alert__title { |
| | | font-size: 20px; |
| | | line-height: 20px; |
| | | } |
| | | </style> |