| | |
| | | <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="addAllItems" type="primary" size="small"> |
| | | <el-button @click.native.prevent="importFeeItems" type="primary" size="small"> |
| | | 导入服务项目 |
| | | </el-button> |
| | | </el-col> |
| | |
| | | <el-input v-model="scope.row.orderno" placeholder="序号" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="applytype" align="center" label="费用类型" width="200"> |
| | | <!-- |
| | | <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"> |
| | | <template slot-scope="scope"> |
| | | <el-select v-model="scope.row.applytype" placeholder="费用类型" @change="loadItemType(scope.row)"> |
| | | <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> |
| | | </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)" |
| | | <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> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="itemcode" align="center" label="项目编号" show-overflow-tooltip="" |
| | | v-if="form.applytype == '1'"> |
| | | </el-table-column> |
| | | <el-table-column prop="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 |
| | | <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-input v-model="scope.row.taxedamount" placeholder="税后金额" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="beneficiaryname" align="center" label="姓名" width="100" |
| | | <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, 'name')">{{ scope.row.beneficiaryname |
| | | <el-button type="primary" plain @click="ShowDetailDialog(scope, 'expert')">{{ scope.row.beneficiaryname |
| | | }}</el-button> |
| | | <!-- <el-select |
| | | filterable |
| | | allow-create |
| | | ref="getReportname" |
| | | default-first-option |
| | | @change="selectpersonmsg(scope.row)" |
| | | @change="selectExpert(scope.row)" |
| | | v-model="scope.row.beneficiaryname" |
| | | placeholder="请选择" |
| | | > |
| | |
| | | </el-select> --> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="unitno" align="center" label="单位名称" v-if="form.applytype != '4'"> |
| | | <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-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 @click="cancel" v-if="operationType == 'detail'">退 出</el-button> |
| | | <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 @click="cancel">关 闭</el-button> |
| | | </div> |
| | | </div> |
| | | |
| | | <el-dialog :visible.sync="showDetailInfoDialog" :close-on-click-modal="false" :title="'单位/专家信息选择'" width="500px" |
| | | <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="showDetailInfoType == 'name'"> |
| | | <el-col :span="24" v-if="selectionType == 'expert'"> |
| | | <el-form-item label="请选择专家信息:" prop="expertfrom"> |
| | | <el-radio-group v-model="expertfrom" style="margin-bottom: 0"> |
| | | <el-radio label="1">专家库</el-radio> |
| | |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="24" v-if="showDetailInfoType == 'name' && expertfrom == '1'"> |
| | | <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.reportNo" :label="item.reportName" |
| | | :value="item.reportName"> |
| | | <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="showDetailInfoType == 'unit'"> |
| | | <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-row> |
| | | </el-form> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="showDetailInfoDialog = false">取 消</el-button> |
| | | <el-button @click="showSelectionDialog = false">取 消</el-button> |
| | | <el-button type="primary" @click="ConfirmDetailDialog()">确 定</el-button> |
| | | </span> |
| | | </el-dialog> |
| | |
| | | //专家费选择:1是专家库,2是新增 |
| | | expertfrom: "1", |
| | | |
| | | //捐献案例列表数据 |
| | | donatebaseinfoList: [], |
| | | //捐献案例列表 |
| | | donateList: [], |
| | | |
| | | // 捐献人道慰问金表格数据 |
| | | donateconsolationfundList: [], |
| | | //费用明细列表 |
| | | rbDetails: [], |
| | | formData: {}, |
| | |
| | | totalAfterTaxAmount: 0.0, |
| | | totalAmount: 0.0, |
| | | |
| | | //行记录的费用类型数组 |
| | | rowfeeItemTypes: [], |
| | | |
| | | //费用类型数组 |
| | | feeItemTypes: [], |
| | | |
| | | //行记录的费用类型数组 |
| | | rowfeeItemTypes: [], |
| | | |
| | | //费用说明 |
| | | rowfeeblocks: [], |
| | | |
| | | fundflowList: [], |
| | | |
| | | showDetailInfoDialog: false, |
| | | showDetailInfoType: "", |
| | | //专家/单位选择:expert/unit |
| | | selectionType: "", |
| | | showSelectionDialog: false, |
| | | |
| | | // 表单校验 |
| | | rules: { |
| | |
| | | computed: {}, |
| | | //监控data中的数据变化 |
| | | watch: {}, |
| | | //生命周期 - 创建完成(可以访问当前this实例) |
| | | |
| | | created() { |
| | | //获取路由参数 |
| | | this.getroute(); |
| | | this.getUserProfile(); |
| | | this.getFeeUnitList(); |
| | | }, |
| | | |
| | | //生命周期 - 挂载完成(可以访问DOM元素) |
| | | mounted() { |
| | | this.getUserList(); |
| | | this.getBaseInfoList(); |
| | | this.getExternalList(); |
| | | }, |
| | | |
| | | beforeCreate() { }, //生命周期 - 创建之前 |
| | | beforeMount() { }, //生命周期 - 挂载之前 |
| | | beforeUpdate() { }, //生命周期 - 更新之前 |
| | | updated() { }, //生命周期 - 更新之后 |
| | | beforeDestroy() { }, //生命周期 - 销毁之前 |
| | | destroyed() { }, //生命周期 - 销毁完成 |
| | | activated() { }, //如果页面有keep-alive缓存功能,这个函数会触发 |
| | | |
| | | //方法集合 |
| | | methods: { |
| | | // 表单重置 |
| | |
| | | this.curId = this.$route.query.id; |
| | | this.businessType = this.$route.query.businessType; |
| | | this.operationType = this.$route.query.operationType; |
| | | console.log(this.businessType, this.operationType); |
| | | |
| | | //获取费用项目类型 |
| | | this.getFundType(); |
| | | this.getFeeTypes(); |
| | | |
| | | // if (!this.businessType && !this.operationType) { |
| | | if (this.businessType == "1") { |
| | | this.curCase = this.$route.query.curCase; |
| | | this.businessName = "专家劳务费申请单"; |
| | | } else if (this.businessType == "2") { |
| | | this.businessName = "专家劳务费申请单" |
| | | this.getUnitList(); |
| | | } |
| | | else if (this.businessType == "2") { |
| | | this.curCase = this.$route.query.curCase; |
| | | this.businessName = "伦理专家劳务费申请单"; |
| | | } else if (this.businessType == "3") { |
| | | if (this.operationType != "check") { this.curCase = this.$route.query.curCase; } |
| | | this.getUnitList(); |
| | | } |
| | | else if (this.businessType == "3") { |
| | | if (this.operationType != "check") { |
| | | this.curCase = this.$route.query.curCase; |
| | | } |
| | | this.businessName = "医学成本报销单"; |
| | | } else if (this.businessType == "4") { |
| | | this.businessName = "杂项费用报销单"; |
| | | } |
| | | else if (this.businessType == "4") { |
| | | this.businessName = "办公费用报销单"; |
| | | |
| | | // this.getBaseInfoList(); |
| | | } |
| | | |
| | | if (this.operationType == "add") { |
| | | this.title = this.businessName + "新建"; |
| | | 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.istrue += 2; |
| | | this.reset(); |
| | | |
| | | /** businessType:1:专家费;2:伦理专家费;3:医学成本;4:杂项费用*/ |
| | | /** businessType:1:专家费;2:伦理专家费;3:医学成本;4:办公费用*/ |
| | | this.form.applytype = this.businessType; |
| | | if ( |
| | | this.businessType == "1" || |
| | |
| | | if (this.rbDetails.length > 0) { |
| | | for (let m = 0; m < this.rbDetails.length; m++) { |
| | | this.rbDetails[m].itemlist = []; |
| | | this.getitemlist(m, this.rbDetails[m]); |
| | | this.getFeeItems(m, this.rbDetails[m]); |
| | | |
| | | //获取费用项目的详细信息 |
| | | this.rbDetails[m].rowfeeblocks = []; |
| | |
| | | |
| | | //业务明细 |
| | | 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.getitemlist(m, this.rbDetails[m]); |
| | | this.getFeeItems(m, this.rbDetails[m]); |
| | | this.rbDetails[m].rowfeeblocks = []; |
| | | this.rbDetails[m].rowfeeblocks.push({ |
| | | expense: this.rbDetails[m].expense, |
| | |
| | | this.rbDetails = res.data; |
| | | for (let m = 0; m < this.rbDetails.length; m++) { |
| | | this.rbDetails[m].itemlist = []; |
| | | this.getitemlist(m, this.rbDetails[m]); |
| | | this.getFeeItems(m, this.rbDetails[m]); |
| | | this.rbDetails[m].rowfeeblocks = []; |
| | | this.rbDetails[m].rowfeeblocks.push({ |
| | | expense: this.rbDetails[m].expense, |
| | |
| | | return; |
| | | } |
| | | |
| | | if (this.businessType == "1" || this.businessType == "2") { |
| | | if (this.businessType == "1") { |
| | | if (tempDetail.servicesscope == null) { |
| | | this.$modal.msgWarning( |
| | | "服务项目表中,第" + |
| | |
| | | return; |
| | | } |
| | | |
| | | if (tempDetail.beneficiaryno == null) { |
| | | if (tempDetail.beneficiaryno == null || tempDetail.beneficiaryno == "点击选择") { |
| | | this.$modal.msgWarning( |
| | | "服务项目表中,第" + |
| | | (k + 1).toString() + |
| | |
| | | return; |
| | | } |
| | | } |
| | | |
| | | // //判断单位 unitSel |
| | | // try { |
| | | // let unitIndex = this.unitList.findIndex( |
| | |
| | | |
| | | //附件处理 |
| | | let list = this.fileList; |
| | | console.log(list); |
| | | // if (list.length > 0) { |
| | | // this.form.annexfiles = list.map(item => item.url).join(","); |
| | | // } |
| | |
| | | |
| | | addorupdateFund(this.form).then(response => { |
| | | if (response.code === 200) { |
| | | this.selectDonotor(this.curCase); |
| | | this.$modal.msgSuccess("申请单保存成功!"); |
| | | } else { |
| | | this.$modal.msgError("申请单保存失败:" + response.msg); |
| | |
| | | //关闭窗口 |
| | | // this.loading = false; |
| | | // this.getfundList(); |
| | | // this.selectDonotor(this.curCase); |
| | | this.$router.go(-1); |
| | | } |
| | | }); |
| | |
| | | } else { |
| | | this.ismanager = false; |
| | | } |
| | | // this.form.applytype = this.businessType; |
| | | // this.form.createTime = new Date(); |
| | | 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(); |
| | | }); |
| | | }, |
| | | |
| | | //获取系统用户列表 |
| | | getUserList() { |
| | | listUser().then(res => { |
| | | this.userlist = res.data; |
| | | }); |
| | | }, //获取系统用户列表 |
| | | getUserList() { |
| | | listUser().then(res => { |
| | | this.userlist = res.data; |
| | |
| | | }); |
| | | }, |
| | | |
| | | //获取捐献案例列表 |
| | | getBaseInfoList() { |
| | | this.loading = true; |
| | | listDonatebaseinfo(this.queryParams).then(response => { |
| | | this.donateList = response.rows; |
| | | this.total = response.total; |
| | | this.loading = false; |
| | | }); |
| | | }, |
| | | |
| | | //获取费用类型 |
| | | getFundType() { |
| | | getFeeTypes() { |
| | | getFundTypeAll(this.businessType).then(res => { |
| | | let dataList = res.data; |
| | | this.feeItemTypes = dataList; |
| | |
| | | }); |
| | | }, |
| | | |
| | | getitemlist(rowindex, row) { |
| | | getFeeItems(rowindex, row) { |
| | | let list = this.feeItemTypes.filter(r => r.itemType == row.applytype); |
| | | row.itemlist = list[0].itemDetails; |
| | | this.$set(this.rbDetails, rowindex, row); |
| | |
| | | // }); |
| | | }, |
| | | |
| | | //获取捐献案例列表 |
| | | getBaseInfoList() { |
| | | this.loading = true; |
| | | listDonatebaseinfo(this.queryParams).then(response => { |
| | | this.donatebaseinfoList = response.rows; |
| | | this.total = response.total; |
| | | this.loading = false; |
| | | }); |
| | | }, |
| | | //获取申请单信息 |
| | | getfundList() { |
| | | this.loading = true; |
| | | this.reset(); |
| | | this.fundQueryParam.infoid = this.curCase.id; |
| | | listFund(this.fundQueryParam).then(response => { |
| | | this.loading = false; |
| | | this.donateconsolationfundList = response.rows; |
| | | }); |
| | | //加载服务项目 |
| | | loadFeeItems(row) { |
| | | let list = this.feeItemTypes.filter(r => r.itemType == row.applytype); |
| | | row.itemlist = list[0].itemDetails; |
| | | row.itemid = null; |
| | | this.$forceUpdate(); |
| | | //this.loading = true; |
| | | // getItemNames(row.applytype).then((res) => { |
| | | // this.loading = false; |
| | | // row.itemid = null; |
| | | // row.itemlist = res.data; |
| | | // this.$forceUpdate(); |
| | | // }); |
| | | }, |
| | | |
| | | //获取费用项目的备注信息 |
| | |
| | | }); |
| | | }, |
| | | |
| | | //筛查出对应的费用项目 |
| | | searchItemType(val, scope) { |
| | | let result = []; |
| | | if (val != "") { |
| | | let tempitemlist = scope.row.itemlist; |
| | | for (let i = 0; i < tempitemlist.length; i++) { |
| | | let pym = tempitemlist[i].itempinyin; |
| | | if (pym != null && pym != undefined && pym != "") { |
| | | if (pym.indexOf(val) != -1) { |
| | | result.push(tempitemlist[i]); |
| | | } |
| | | } |
| | | } |
| | | scope.row.itemlist = result; |
| | | } else { |
| | | getItemNames(scope.row.applytype).then(res => { |
| | | scope.row.itemlist = res.data; |
| | | //this.$set(this.rbDetails, rowindex, row); |
| | | }); |
| | | } |
| | | }, |
| | | //合计费用 |
| | | selectamount(row) { |
| | | this.rowfeeblocks.forEach((item, i) => { |
| | |
| | | }); |
| | | }, |
| | | |
| | | //点击捐献案例列表触发方法 |
| | | selectDonotor(row, column, event) { |
| | | this.curCase = row; |
| | | this.getfundList(); |
| | | selectExpert(row) { |
| | | // if(row.beneficiaryname) |
| | | this.personlist.map(res => { |
| | | if (row.beneficiaryname == res.username) { |
| | | row.beneficiaryno = res.userno; |
| | | row.beneficiaryname = res.username; |
| | | row.bankcardno = res.bankcardno; |
| | | row.branchbankname = res.branchbankname; |
| | | row.depositbank = res.depositbank; |
| | | row.idcardno = res.idcardno; |
| | | row.phone = res.phonenumber; |
| | | row.title = res.title; |
| | | row.unitname = res.unitname; |
| | | row.unitno = res.unitno; |
| | | } else { |
| | | row.beneficiaryno = row.beneficiaryname; |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | //导入所有项目 |
| | | addAllItems() { |
| | | importFeeItems() { |
| | | this.loading = true; |
| | | this.rbDetails = this.rbDetails.filter( |
| | | r => r.applytype != "" && r.applytype != null |
| | |
| | | // }); |
| | | }, |
| | | |
| | | addAll(row, i, arr) { |
| | | row.itemlist.map(res => { |
| | | if (res.id !== row.itemid) { |
| | | let a = arr.length; |
| | | this.addRow(); |
| | | arr[a].itemlist = row.itemlist; |
| | | arr[a].applytype = row.applytype; |
| | | arr[a].itemid = res.id; |
| | | |
| | | getdetailsByItemId(arr[a].itemid).then(res => { |
| | | let fundmsg = res.data; |
| | | let rowfeeblocks = []; |
| | | fundmsg.forEach(item => { |
| | | rowfeeblocks.push({ |
| | | expense: item.expense, |
| | | expensedescribe: item.expensedescribe, |
| | | remark: item.expensedescribe, |
| | | servicesscope: item.id |
| | | }); |
| | | }); |
| | | row.rowfeeblocks = rowfeeblocks; |
| | | }); |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | //新增一行 |
| | | addRow(rowIndex) { |
| | | let rowData = { |
| | |
| | | } |
| | | for (let i = 0; i < this.rbDetails.length; i++) { |
| | | this.rbDetails[i].orderno = i + 1; |
| | | } |
| | | }, |
| | | |
| | | //加载服务项目 |
| | | loadItemType(row) { |
| | | let list = this.feeItemTypes.filter(r => r.itemType == row.applytype); |
| | | row.itemlist = list[0].itemDetails; |
| | | row.itemid = null; |
| | | this.$forceUpdate(); |
| | | //this.loading = true; |
| | | // getItemNames(row.applytype).then((res) => { |
| | | // this.loading = false; |
| | | // row.itemid = null; |
| | | // row.itemlist = res.data; |
| | | // this.$forceUpdate(); |
| | | // }); |
| | | }, |
| | | |
| | | selectpersonmsg(row) { |
| | | // if(row.beneficiaryname) |
| | | this.personlist.map(res => { |
| | | if (row.beneficiaryname == res.username) { |
| | | row.beneficiaryno = res.userno; |
| | | row.beneficiaryname = res.username; |
| | | row.bankcardno = res.bankcardno; |
| | | row.branchbankname = res.branchbankname; |
| | | row.depositbank = res.depositbank; |
| | | row.idcardno = res.idcardno; |
| | | row.phone = res.phonenumber; |
| | | row.title = res.title; |
| | | row.unitname = res.unitname; |
| | | row.unitno = res.unitno; |
| | | } else { |
| | | row.beneficiaryno = row.beneficiaryname; |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | //筛查出对应的费用项目 |
| | | searchItemType(val, scope) { |
| | | let result = []; |
| | | if (val != "") { |
| | | let tempitemlist = scope.row.itemlist; |
| | | for (let i = 0; i < tempitemlist.length; i++) { |
| | | let pym = tempitemlist[i].itempinyin; |
| | | if (pym != null && pym != undefined && pym != "") { |
| | | if (pym.indexOf(val) != -1) { |
| | | result.push(tempitemlist[i]); |
| | | } |
| | | } |
| | | } |
| | | scope.row.itemlist = result; |
| | | } else { |
| | | getItemNames(scope.row.applytype).then(res => { |
| | | scope.row.itemlist = res.data; |
| | | //this.$set(this.rbDetails, rowindex, row); |
| | | }); |
| | | } |
| | | }, |
| | | |
| | |
| | | }, |
| | | |
| | | mixExport(scope) { |
| | | this.dayin(scope.row.id); |
| | | //this.totaldayin(id); |
| | | this.print(scope.row.id); |
| | | //this.totalprint(id); |
| | | }, |
| | | |
| | | //专家费劳务打印 |
| | | dayin(id) { |
| | | print(id) { |
| | | getdownloadLW(id).then(res => { |
| | | if (res.downloadUrl) { |
| | | var fileUrl = res; |
| | |
| | | }, |
| | | |
| | | //汇总打印 |
| | | totaldayin(e) { |
| | | totalprint(e) { |
| | | // const id =this.row.id |
| | | getdownloadBX(e).then(res => { |
| | | if (res.downloadUrl) { |
| | |
| | | |
| | | //专家/医疗机构/费用报销机构选择 |
| | | ShowDetailDialog(spoce, showType) { |
| | | this.selectionType = showType; |
| | | this.expertfrom = "1"; |
| | | |
| | | this.funddetailForm.index = spoce.$index; |
| | | this.funddetailForm.beneficiaryname = spoce.row.beneficiaryname; |
| | | this.funddetailForm.beneficiaryno = spoce.row.beneficiaryno; |
| | | this.funddetailForm.beneficiaryname = spoce.row.beneficiaryname; |
| | | this.funddetailForm.unitno = spoce.row.unitno; |
| | | this.funddetailForm.unitname = spoce.row.unitname; |
| | | this.funddetailForm.expertname = ""; |
| | |
| | | this.funddetailForm.expertdepositbank = ""; |
| | | this.funddetailForm.expertbankcardno = ""; |
| | | |
| | | this.showDetailInfoDialog = true; |
| | | this.showDetailInfoType = showType; |
| | | this.showSelectionDialog = true; |
| | | }, |
| | | |
| | | //专家/医疗机构/费用报销机构选择 |
| | | ConfirmDetailDialog() { |
| | | let tempIndex = this.funddetailForm.index; |
| | | let tempName = this.funddetailForm.beneficiaryname; |
| | | let tempExpertName = this.funddetailForm.beneficiaryname; |
| | | let tempUnitname = this.funddetailForm.unitname; |
| | | let singleDetail = this.rbDetails[tempIndex]; |
| | | |
| | | if (this.showDetailInfoType == "name") { |
| | | if (this.selectionType == "expert") { |
| | | if (this.expertfrom == "1") { |
| | | //从专家列表获取信息 |
| | | this.personlist.map(res => { |
| | | if (tempName == res.username) { |
| | | if (tempExpertName == res.username) { |
| | | singleDetail.beneficiaryno = res.userno; |
| | | singleDetail.beneficiaryname = res.username; |
| | | singleDetail.bankcardno = res.bankcardno; |
| | |
| | | } 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; |
| | |
| | | } |
| | | }); |
| | | } |
| | | } else if (this.showDetailInfoType == "unit") { |
| | | } else if (this.selectionType == "unit") { |
| | | singleDetail.unitno = this.funddetailForm.unitno; |
| | | if (this.businessType == 1 || this.businessType == 2) { |
| | | try { |
| | |
| | | } |
| | | |
| | | this.rbDetails[tempIndex] = singleDetail; |
| | | this.showDetailInfoDialog = false; |
| | | } |
| | | } |
| | | this.showSelectionDialog = false; |
| | | }, |
| | | }, |
| | | |
| | | //生命周期 - 创建完成(可以访问当前this实例) |
| | | created() { |
| | | //获取路由参数 |
| | | this.getroute(); |
| | | this.getUserProfile(); |
| | | this.getUserList(); |
| | | }, |
| | | |
| | | //生命周期 - 挂载完成(可以访问DOM元素) |
| | | mounted() { |
| | | this.getExternalList(); |
| | | // this.getFeeUnitList(); |
| | | }, |
| | | |
| | | beforeCreate() { }, //生命周期 - 创建之前 |
| | | beforeMount() { }, //生命周期 - 挂载之前 |
| | | beforeUpdate() { }, //生命周期 - 更新之前 |
| | | updated() { }, //生命周期 - 更新之后 |
| | | beforeDestroy() { }, //生命周期 - 销毁之前 |
| | | destroyed() { }, //生命周期 - 销毁完成 |
| | | activated() { }, //如果页面有keep-alive缓存功能,这个函数会触发 |
| | | }; |
| | | </script> |
| | | |
| | |
| | | <el-card shadow="naver"> |
| | | <el-form ref="infoform" label-width="100px"> |
| | | <el-row :gutter="4" align="right" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" |
| | | v-hasPermi="['project:ethicalfund:add']">伦理审查专家费申请</el-button> |
| | | </el-col> |
| | | <el-col :span="9"> |
| | | <el-form-item label="捐献编号"> |
| | | <el-input v-model="curCase.donorno" :disabled="true"></el-input> |
| | |
| | | <el-input v-model="curCase.name" :disabled="true"></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col> </el-col> |
| | | </el-row> |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" |
| | | v-hasPermi="['project:ethicalfund:add']">新增申请单</el-button> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-table v-loading="loading" border :data="donateconsolationfundList"> |
| | |
| | | <el-row> |
| | | <el-col :span="24"> |
| | | <el-form-item label="申请附件:" align="left" prop="annexbankcard"> |
| | | <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="fileList" multiple :limit="20" |
| | | :headers="headers" :on-success="(response, file, fileList) => |
| | | <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='dialogType == "detail"' :on-error="handleUploadError" |
| | | :on-exceed="handleExceed" :on-remove="remove" accept="image/*,.pdf"> |
| | |
| | | }, |
| | | }; |
| | | }, |
| | | |
| | | //监听属性 类似于data概念 |
| | | computed: {}, |
| | | //监控data中的数据变化 |
| | | watch: {}, |
| | | |
| | | //方法集合 |
| | | methods: { |
| | | ShowDetailDialog(spoce, showType) { |
| | | this.funddetailForm.index = spoce.$index; |
| | | this.funddetailForm.beneficiaryno = spoce.row.beneficiaryno; |
| | | this.funddetailForm.beneficiaryname = spoce.row.beneficiaryname; |
| | | this.funddetailForm.unitno = spoce.row.unitno; |
| | | this.funddetailForm.unitname = spoce.row.unitname; |
| | | this.detailInfoDialogShow = true; |
| | | this.detailInfoDialogShowType = showType; |
| | | /** 搜索按钮操作 */ |
| | | handleQuery() { |
| | | this.queryParams.pageNum = 1; |
| | | this.getList(); |
| | | }, |
| | | ConfirmDetailDialog() { |
| | | let tempIndex = this.funddetailForm.index; |
| | | let tempName = this.funddetailForm.beneficiaryname; |
| | | let tempUnitname = this.funddetailForm.unitname; |
| | | let singleDetail = this.fundDetailArr[tempIndex]; |
| | | if (this.detailInfoDialogShowType == "name") { |
| | | this.personlist.map((res) => { |
| | | if (tempName == res.username) { |
| | | singleDetail.beneficiaryno = res.userno; |
| | | singleDetail.beneficiaryname = res.username; |
| | | singleDetail.bankcardno = res.bankcardno; |
| | | singleDetail.branchbankname = res.branchbankname; |
| | | singleDetail.depositbank = res.depositbank; |
| | | singleDetail.idcardno = res.idcardno; |
| | | singleDetail.phone = res.telephone; |
| | | singleDetail.title = res.title; |
| | | singleDetail.unitname = res.unitname; |
| | | singleDetail.unitno = parseInt(res.unitno); |
| | | } else { |
| | | singleDetail.beneficiaryname = tempName; |
| | | singleDetail.beneficiaryno = tempName; |
| | | |
| | | /** 重置按钮操作 */ |
| | | resetQuery() { |
| | | this.daterangeReporttime = []; |
| | | |
| | | this.resetForm("queryForm"); |
| | | this.handleQuery(); |
| | | }, |
| | | /** 新增按钮操作 */ |
| | | handleAdd() { |
| | | if (this.curCase.id) { |
| | | this.$router.push({ |
| | | path: "/finance/applyDetail/", |
| | | query: { |
| | | id: 0, |
| | | businessType: "2", |
| | | operationType: "add", |
| | | curCase: this.curCase |
| | | } |
| | | }); |
| | | } else if (this.detailInfoDialogShowType == "unit") { |
| | | singleDetail.unitno = this.funddetailForm.unitno; |
| | | try { |
| | | let unitIndex = this.unitList.findIndex( |
| | | (item) => singleDetail.unitno == item.organizationid |
| | | ); |
| | | if (unitIndex > -1) { |
| | | singleDetail.unitname = this.unitList[unitIndex].organizationname; |
| | | } else { |
| | | singleDetail.unitname = singleDetail.unitno; |
| | | const h = this.$createElement; |
| | | this.$message({ |
| | | message: h("p", null, [h("span", null, "请在左边的捐献案例表选择需要操作的案例!")]), |
| | | }); |
| | | } |
| | | } catch { |
| | | singleDetail.unitname = singleDetail.unitno; |
| | | return; |
| | | |
| | | |
| | | if (this.curCase.id) { |
| | | this.istrue += 2; |
| | | this.reset(); |
| | | this.dialogOpen = true; |
| | | this.title = "添加费用申请"; |
| | | this.dialogType = "edit"; |
| | | this.queryParams.params = {}; |
| | | |
| | | this.form.infoid = this.curCase.id; |
| | | this.form.donorno = this.curCase.donorno; |
| | | this.form.donorname = this.curCase.name; |
| | | this.form.username = this.defaultperson.nickName; |
| | | this.form.userno = this.defaultperson.userName; |
| | | |
| | | this.form.deptmentname = this.defaultperson.dept.deptName; |
| | | this.form.deptmentno = this.defaultperson.dept.deptId; |
| | | this.form.managername = this.defaultperson.dept.leader; |
| | | // this.form.createTime = nowdate; |
| | | //this.open = true; |
| | | //this.initFundApplyForm(); |
| | | this.fundDetailArr = []; |
| | | this.fundflowList = []; |
| | | this.addRow(); |
| | | } else { |
| | | const h = this.$createElement; |
| | | this.$message({ |
| | | message: h("p", null, [h("span", null, "请先选择左方捐献案例 ")]), |
| | | }); |
| | | } |
| | | } |
| | | this.fundDetailArr[tempIndex] = singleDetail; |
| | | this.detailInfoDialogShow = false; |
| | | }, |
| | | /** 修改按钮操作 */ |
| | | handleUpdate(row) { |
| | | this.$router.push({ |
| | | path: "/finance/applyDetail/", |
| | | query: { |
| | | id: row.id, |
| | | businessType: "2", |
| | | operationType: "update", |
| | | curCase: this.curCase |
| | | } |
| | | }); |
| | | return; |
| | | |
| | | this.isopen = 0; |
| | | this.reset(); |
| | | this.queryParams.params = {}; |
| | | this.dialogOpen = true; |
| | | this.title = "修改费用申请"; |
| | | this.dialogType = "edit"; |
| | | |
| | | const id = row.id || this.ids; |
| | | getFund(id).then((response) => { |
| | | this.form = response.data; |
| | | //附件处理 |
| | | this.fileList = this.form.annexbankcard ? this.form.annexbankcard.split(",").map(item => ({ url: item, name: item })) : [] |
| | | |
| | | getownFundDetail(id).then(async (res) => { |
| | | this.fundDetailArr = res.data; |
| | | for (let m = 0; m < this.fundDetailArr.length; m++) { |
| | | this.fundDetailArr[m].itemArr = []; |
| | | this.getItemArr(m, this.fundDetailArr[m]); |
| | | } |
| | | }); |
| | | }); |
| | | }, |
| | | |
| | | /** 查看按钮操作 */ |
| | | handleDetail(row) { |
| | | this.$router.push({ |
| | | path: "/finance/applyDetail/", |
| | | query: { |
| | | id: row.id, |
| | | businessType: "2", |
| | | operationType: "detail", |
| | | curCase: this.curCase |
| | | } |
| | | }); |
| | | return; |
| | | |
| | | this.isopen = 0; |
| | | this.reset(); |
| | | this.queryParams.params = {}; |
| | | this.dialogOpen = true; |
| | | this.title = "查看费用申请"; |
| | | this.dialogType = "detail"; |
| | | const id = row.id || this.ids; |
| | | |
| | | getFund(id).then((response) => { |
| | | this.form = response.data; |
| | | let listFundflowparams = { |
| | | fundid: row.id, |
| | | fundtype: 2, |
| | | }; |
| | | //附件处理 |
| | | this.fileList = this.form.annexbankcard ? this.form.annexbankcard.split(",").map(item => ({ url: item, name: item })) : [] |
| | | |
| | | listFundflow(listFundflowparams).then((res) => { |
| | | this.fundflowList = res.rows; |
| | | }); |
| | | getownFundDetail(id).then((res) => { |
| | | this.fundDetailArr = res.data; |
| | | for (let m = 0; m < this.fundDetailArr.length; m++) { |
| | | this.fundDetailArr[m].itemArr = []; |
| | | this.getItemArr(m, this.fundDetailArr[m]); |
| | | this.fundDetailArr[m].fundblock = []; |
| | | this.fundDetailArr[m].fundblock.push({ |
| | | expense: this.fundDetailArr[m].expense, |
| | | expensedescribe: this.fundDetailArr[m].servicesscopename, |
| | | remark: this.fundDetailArr[m].servicesscope, |
| | | servicesscope: this.fundDetailArr[m].servicesscope, |
| | | }); |
| | | } |
| | | }); |
| | | }); |
| | | }, |
| | | |
| | | /** 删除按钮操作 */ |
| | | handleDelete(row) { |
| | | const ids = row.id || this.ids; |
| | | this.$modal |
| | | .confirm("是否确认删除该记录?") |
| | | .then(function () { |
| | | return delFund(ids); |
| | | }) |
| | | .then(() => { |
| | | getownFundDetail(ids).then((res) => { |
| | | let listdetails = res.data; |
| | | for (let i = 0; i < listdetails.length; i++) { |
| | | delFunddetail(listdetails[i].id); |
| | | } |
| | | }); |
| | | // this.getList(); |
| | | this.getfundList(); |
| | | this.$modal.msgSuccess("删除成功"); |
| | | }) |
| | | .catch(() => { }); |
| | | }, |
| | | /** 上报按钮操作 */ |
| | | handleup(row) { |
| | | this.$confirm("是否确认将登记记录上报?", "提示", { |
| | | confirmButtonText: "确定", |
| | |
| | | }); |
| | | }); |
| | | }, |
| | | getUsermsg() { |
| | | getUserProfile().then((response) => { |
| | | this.defaultperson = response.data; |
| | | this.standardlevel = response.data.standardlevel; |
| | | }); |
| | | }, |
| | | /** 搜索按钮操作 */ |
| | | handleQuery() { |
| | | this.queryParams.pageNum = 1; |
| | | this.getList(); |
| | | }, |
| | | /** 重置按钮操作 */ |
| | | resetQuery() { |
| | | this.daterangeReporttime = []; |
| | | |
| | | this.resetForm("queryForm"); |
| | | this.handleQuery(); |
| | | }, |
| | | /** 查询捐献人道慰问金列表 */ |
| | | getList() { |
| | | this.loading = true; |
| | | this.queryParams.params = {}; |
| | | if (null != this.daterangeReporttime && "" != this.daterangeReporttime) { |
| | | this.queryParams.params["beginReporttime"] = |
| | | this.daterangeReporttime[0]; |
| | | this.queryParams.params["endReporttime"] = this.daterangeReporttime[1]; |
| | | } |
| | | // this.queryParams.residencetown = this.$refs.areaSelect.getQu(); |
| | | listDonatebaseinfo(this.queryParams).then((response) => { |
| | | this.donatebaseinfoList = response.rows; |
| | | this.total = response.total; |
| | | this.loading = false; |
| | | }); |
| | | }, |
| | | |
| | | getBaseInfoList() { |
| | | this.loading = true; |
| | | listDonatebaseinfo(this.queryParams).then((response) => { |
| | | this.donatebaseinfoList = response.rows; |
| | | this.total = response.total; |
| | | this.loading = false; |
| | | }); |
| | | }, |
| | | |
| | | /** 新增按钮操作 */ |
| | | handleAdd() { |
| | | if (this.curCase.id) { |
| | | this.istrue += 2; |
| | | this.reset(); |
| | | this.dialogOpen = true; |
| | | this.title = "添加费用申请"; |
| | | this.dialogType = "edit"; |
| | | this.queryParams.params = {}; |
| | | |
| | | this.form.infoid = this.curCase.id; |
| | | this.form.donorno = this.curCase.donorno; |
| | | this.form.donorname = this.curCase.name; |
| | | this.form.username = this.defaultperson.nickName; |
| | | this.form.userno = this.defaultperson.userName; |
| | | |
| | | this.form.deptmentname = this.defaultperson.dept.deptName; |
| | | this.form.deptmentno = this.defaultperson.dept.deptId; |
| | | this.form.managername = this.defaultperson.dept.leader; |
| | | // this.form.createTime = nowdate; |
| | | //this.open = true; |
| | | //this.initFundApplyForm(); |
| | | this.fundDetailArr = []; |
| | | this.fundflowList = []; |
| | | this.addRow(); |
| | | } else { |
| | | const h = this.$createElement; |
| | | this.$message({ |
| | | message: h("p", null, [h("span", null, "请先选择左方捐献案例 ")]), |
| | | }); |
| | | } |
| | | }, |
| | | //点击捐献案例列表触发方法 |
| | | selectDonotor(row, column, event) { |
| | | this.curCase = row; |
| | | this.getfundList(); |
| | | }, |
| | | getfundList() { |
| | | this.loading = true; |
| | | this.reset(); |
| | | this.fundQueryParam.infoid = this.curCase.id; |
| | | listFund(this.fundQueryParam).then((response) => { |
| | | this.loading = false; |
| | | this.donateconsolationfundList = response.rows; |
| | | }); |
| | | }, |
| | | |
| | | select(row) { |
| | | row.itemArr.map((res) => { |
| | | if (row.itemid === res.id) { |
| | | row.remark = res.itemDescribe; |
| | | row.itemcode = res.itemCode; |
| | | } |
| | | }); |
| | | var repeatNum = 0; |
| | | this.fundDetailArr.map((res) => { |
| | | if (res.applytype === row.applytype && res.itemid == row.itemid) { |
| | | repeatNum++; |
| | | } |
| | | }); |
| | | if (repeatNum > 1) { |
| | | this.$modal.msgWarning("您已经提交过服务项目"); |
| | | } |
| | | |
| | | getdetailsByItemId(row.itemid).then((res) => { |
| | | let fundmsg = res.data; |
| | | let fundblock = []; |
| | | fundmsg.forEach((item) => { |
| | | fundblock.push({ |
| | | expense: item.expense, |
| | | expensedescribe: item.expensedescribe, |
| | | remark: item.expensedescribe, |
| | | servicesscope: item.id, |
| | | }); |
| | | }); |
| | | |
| | | row.fundblock = fundblock; |
| | | row.servicesscope = null; |
| | | row.servicesscopename = ""; |
| | | }); |
| | | }, |
| | | // 取消按钮 |
| | | cancel() { |
| | | this.dialogOpen = false; |
| | | this.reset(); |
| | | }, |
| | | |
| | | // 表单重置 |
| | | reset() { |
| | | this.form = { |
| | | id: null, |
| | | recordstatus: "-1", |
| | | username: null, |
| | | userno: null, |
| | | infoid: null, |
| | | donorno: null, |
| | | delFlag: null, |
| | | createBy: null, |
| | | createTime: null, |
| | | updateBy: null, |
| | | updateTime: null, |
| | | familyrelations: null, |
| | | name: null, |
| | | doname: null, |
| | | unitname: null, |
| | | unitno: null, |
| | | sex: null, |
| | | idcardtype: null, |
| | | idcardno: null, |
| | | phone: null, |
| | | donorname: null, |
| | | depositbank: null, |
| | | bankprovince: null, |
| | | bankprovincename: null, |
| | | bankcity: null, |
| | | bankcityname: null, |
| | | banktown: null, |
| | | banktownname: null, |
| | | branchbankname: null, |
| | | bankcardno: null, |
| | | annexbankcard: null, |
| | | annexregistform: null, |
| | | consolationmoney: null, |
| | | applytype: "2", |
| | | servicetypename: null, |
| | | servicesscopename: null, |
| | | pretaxcost: null, |
| | | taxedcost: null, |
| | | }; |
| | | this.resetForm("form"); |
| | | //清空附件 |
| | | this.fileList = [] |
| | | }, |
| | | |
| | | //新增一行 |
| | | addRow(rowIndex) { |
| | | let rowData = { |
| | | orderno: null, |
| | | id: null, |
| | | fundid: null, |
| | | beneficiaryname: "点击选择", |
| | | beneficiaryno: null, |
| | | unitname: "点击选择", |
| | | unitno: null, |
| | | uintuserno: null, |
| | | title: null, |
| | | idcardtype: null, |
| | | idcardno: null, |
| | | sex: null, |
| | | familyrelations: null, |
| | | phone: null, |
| | | depositbank: null, |
| | | bankcardno: null, |
| | | branchbankname: null, |
| | | annexbankcard: null, |
| | | annexregistform: null, |
| | | applytype: null, |
| | | itemid: null, |
| | | itemname: null, |
| | | itemtype: null, |
| | | amount: null, |
| | | prepaidamount: null, |
| | | taxamount: null, |
| | | invoicecount: null, |
| | | taxedamount: null, |
| | | attachcount: null, |
| | | remark: null, |
| | | recordstatus: "-1", |
| | | delFlag: null, |
| | | createBy: null, |
| | | createTime: null, |
| | | updateBy: null, |
| | | updateTime: null, |
| | | uploadflag: null, |
| | | uploadtime: null, |
| | | itemArr: [], |
| | | }; |
| | | if (rowIndex == undefined || rowIndex == null || rowIndex < 0) { |
| | | this.fundDetailArr.push(rowData); |
| | | } else { |
| | | this.fundDetailArr.splice(rowIndex + 1, 0, rowData); |
| | | } |
| | | for (let i = 0; i < this.fundDetailArr.length; i++) { |
| | | this.fundDetailArr[i].orderno = i + 1; |
| | | } |
| | | }, |
| | | |
| | | //加载服务项目 |
| | | LoadItemTypeArr(row) { |
| | | let list = this.fundtypeArrAll.filter((r) => r.itemType == row.applytype); |
| | | row.itemArr = list[0].itemDetails; |
| | | row.itemid = null; |
| | | this.$forceUpdate(); |
| | | //this.loading = true; |
| | | // getItemNames(row.applytype).then((res) => { |
| | | // this.loading = false; |
| | | // row.itemid = null; |
| | | // row.itemArr = res.data; |
| | | // this.$forceUpdate(); |
| | | // }); |
| | | /** 导出按钮操作 */ |
| | | handleExport() { |
| | | const queryParams = this.queryParams; |
| | | this.$modal |
| | | .confirm("是否确认导出所有报销申请数据项?") |
| | | .then(() => { |
| | | this.exportLoading = true; |
| | | return exportReimbursement(queryParams); |
| | | }) |
| | | .then(response => { |
| | | this.$download.name(response.msg); |
| | | this.exportLoading = false; |
| | | }) |
| | | .catch(() => { }); |
| | | }, |
| | | |
| | | /** 提交按钮 */ |
| | |
| | | } |
| | | }); |
| | | }, |
| | | /** 取消按钮 */ |
| | | cancel() { |
| | | this.dialogOpen = false; |
| | | this.reset(); |
| | | }, |
| | | |
| | | |
| | | //获取所有用户列表 |
| | | getUsermsg() { |
| | | getUserProfile().then((response) => { |
| | | this.defaultperson = response.data; |
| | | this.standardlevel = response.data.standardlevel; |
| | | }); |
| | | }, |
| | | |
| | | /** 查询捐献人道慰问金列表 */ |
| | | getList() { |
| | | this.loading = true; |
| | | this.queryParams.params = {}; |
| | | if (null != this.daterangeReporttime && "" != this.daterangeReporttime) { |
| | | this.queryParams.params["beginReporttime"] = |
| | | this.daterangeReporttime[0]; |
| | | this.queryParams.params["endReporttime"] = this.daterangeReporttime[1]; |
| | | } |
| | | // this.queryParams.residencetown = this.$refs.areaSelect.getQu(); |
| | | listDonatebaseinfo(this.queryParams).then((response) => { |
| | | this.donatebaseinfoList = response.rows; |
| | | this.total = response.total; |
| | | this.loading = false; |
| | | }); |
| | | }, |
| | | |
| | | //获取捐献案例列表 |
| | | getBaseInfoList() { |
| | | this.loading = true; |
| | | listDonatebaseinfo(this.queryParams).then((response) => { |
| | | this.donatebaseinfoList = response.rows; |
| | | this.total = response.total; |
| | | this.loading = false; |
| | | }); |
| | | }, |
| | | |
| | | //点击捐献案例列表触发方法 |
| | | selectDonotor(row, column, event) { |
| | | this.curCase = row; |
| | | this.getfundList(); |
| | | }, |
| | | |
| | | //获取案例专家费用申请单 |
| | | getfundList() { |
| | | this.loading = true; |
| | | this.reset(); |
| | | this.fundQueryParam.infoid = this.curCase.id; |
| | | listFund(this.fundQueryParam).then((response) => { |
| | | this.loading = false; |
| | | this.donateconsolationfundList = response.rows; |
| | | }); |
| | | }, |
| | | |
| | | select(row) { |
| | | row.itemArr.map((res) => { |
| | | if (row.itemid === res.id) { |
| | | row.remark = res.itemDescribe; |
| | | row.itemcode = res.itemCode; |
| | | } |
| | | }); |
| | | var repeatNum = 0; |
| | | this.fundDetailArr.map((res) => { |
| | | if (res.applytype === row.applytype && res.itemid == row.itemid) { |
| | | repeatNum++; |
| | | } |
| | | }); |
| | | if (repeatNum > 1) { |
| | | this.$modal.msgWarning("您已经提交过服务项目"); |
| | | } |
| | | |
| | | getdetailsByItemId(row.itemid).then((res) => { |
| | | let fundmsg = res.data; |
| | | let fundblock = []; |
| | | fundmsg.forEach((item) => { |
| | | fundblock.push({ |
| | | expense: item.expense, |
| | | expensedescribe: item.expensedescribe, |
| | | remark: item.expensedescribe, |
| | | servicesscope: item.id, |
| | | }); |
| | | }); |
| | | |
| | | row.fundblock = fundblock; |
| | | row.servicesscope = null; |
| | | row.servicesscopename = ""; |
| | | }); |
| | | }, |
| | | |
| | | // 表单重置 |
| | | reset() { |
| | | this.form = { |
| | | id: null, |
| | | recordstatus: "-1", |
| | | username: null, |
| | | userno: null, |
| | | infoid: null, |
| | | donorno: null, |
| | | delFlag: null, |
| | | createBy: null, |
| | | createTime: null, |
| | | updateBy: null, |
| | | updateTime: null, |
| | | familyrelations: null, |
| | | name: null, |
| | | doname: null, |
| | | unitname: null, |
| | | unitno: null, |
| | | sex: null, |
| | | idcardtype: null, |
| | | idcardno: null, |
| | | phone: null, |
| | | donorname: null, |
| | | depositbank: null, |
| | | bankprovince: null, |
| | | bankprovincename: null, |
| | | bankcity: null, |
| | | bankcityname: null, |
| | | banktown: null, |
| | | banktownname: null, |
| | | branchbankname: null, |
| | | bankcardno: null, |
| | | annexbankcard: null, |
| | | annexregistform: null, |
| | | consolationmoney: null, |
| | | applytype: "2", |
| | | servicetypename: null, |
| | | servicesscopename: null, |
| | | pretaxcost: null, |
| | | taxedcost: null, |
| | | }; |
| | | this.resetForm("form"); |
| | | //清空附件 |
| | | this.fileList = [] |
| | | }, |
| | | |
| | | //新增一行 |
| | | addRow(rowIndex) { |
| | | let rowData = { |
| | | orderno: null, |
| | | id: null, |
| | | fundid: null, |
| | | beneficiaryname: "点击选择", |
| | | beneficiaryno: null, |
| | | unitname: "点击选择", |
| | | unitno: null, |
| | | uintuserno: null, |
| | | title: null, |
| | | idcardtype: null, |
| | | idcardno: null, |
| | | sex: null, |
| | | familyrelations: null, |
| | | phone: null, |
| | | depositbank: null, |
| | | bankcardno: null, |
| | | branchbankname: null, |
| | | annexbankcard: null, |
| | | annexregistform: null, |
| | | applytype: null, |
| | | itemid: null, |
| | | itemname: null, |
| | | itemtype: null, |
| | | amount: null, |
| | | prepaidamount: null, |
| | | taxamount: null, |
| | | invoicecount: null, |
| | | taxedamount: null, |
| | | attachcount: null, |
| | | remark: null, |
| | | recordstatus: "-1", |
| | | delFlag: null, |
| | | createBy: null, |
| | | createTime: null, |
| | | updateBy: null, |
| | | updateTime: null, |
| | | uploadflag: null, |
| | | uploadtime: null, |
| | | itemArr: [], |
| | | }; |
| | | if (rowIndex == undefined || rowIndex == null || rowIndex < 0) { |
| | | this.fundDetailArr.push(rowData); |
| | | } else { |
| | | this.fundDetailArr.splice(rowIndex + 1, 0, rowData); |
| | | } |
| | | for (let i = 0; i < this.fundDetailArr.length; i++) { |
| | | this.fundDetailArr[i].orderno = i + 1; |
| | | } |
| | | }, |
| | | |
| | | //加载服务项目 |
| | | LoadItemTypeArr(row) { |
| | | let list = this.fundtypeArrAll.filter((r) => r.itemType == row.applytype); |
| | | row.itemArr = list[0].itemDetails; |
| | | row.itemid = null; |
| | | this.$forceUpdate(); |
| | | //this.loading = true; |
| | | // getItemNames(row.applytype).then((res) => { |
| | | // this.loading = false; |
| | | // row.itemid = null; |
| | | // row.itemArr = res.data; |
| | | // this.$forceUpdate(); |
| | | // }); |
| | | }, |
| | | |
| | | |
| | | selectremark(row) { |
| | | this.fundblock.forEach((item, i) => { |
| | | if (item.expensedescribe === row.servicesscopename) { |
| | |
| | | }); |
| | | }, |
| | | |
| | | /** 修改按钮操作 */ |
| | | handleUpdate(row) { |
| | | this.isopen = 0; |
| | | this.reset(); |
| | | this.queryParams.params = {}; |
| | | this.dialogOpen = true; |
| | | this.title = "修改费用申请"; |
| | | this.dialogType = "edit"; |
| | | |
| | | const id = row.id || this.ids; |
| | | getFund(id).then((response) => { |
| | | this.form = response.data; |
| | | //附件处理 |
| | | this.fileList = this.form.annexbankcard ? this.form.annexbankcard.split(",").map(item => ({ url: item, name: item })) : [] |
| | | |
| | | getownFundDetail(id).then(async (res) => { |
| | | this.fundDetailArr = res.data; |
| | | for (let m = 0; m < this.fundDetailArr.length; m++) { |
| | | this.fundDetailArr[m].itemArr = []; |
| | | this.getItemArr(m, this.fundDetailArr[m]); |
| | | } |
| | | }); |
| | | }); |
| | | }, |
| | | |
| | | /** 查看按钮操作 */ |
| | | handleDetail(row) { |
| | | this.isopen = 0; |
| | | this.reset(); |
| | | this.queryParams.params = {}; |
| | | this.dialogOpen = true; |
| | | this.title = "查看费用申请"; |
| | | this.dialogType = "detail"; |
| | | const id = row.id || this.ids; |
| | | |
| | | getFund(id).then((response) => { |
| | | this.form = response.data; |
| | | let listFundflowparams = { |
| | | fundid: row.id, |
| | | fundtype: 2, |
| | | }; |
| | | //附件处理 |
| | | this.fileList = this.form.annexbankcard ? this.form.annexbankcard.split(",").map(item => ({ url: item, name: item })) : [] |
| | | |
| | | listFundflow(listFundflowparams).then((res) => { |
| | | this.fundflowList = res.rows; |
| | | }); |
| | | getownFundDetail(id).then((res) => { |
| | | this.fundDetailArr = res.data; |
| | | for (let m = 0; m < this.fundDetailArr.length; m++) { |
| | | this.fundDetailArr[m].itemArr = []; |
| | | this.getItemArr(m, this.fundDetailArr[m]); |
| | | this.fundDetailArr[m].fundblock = []; |
| | | this.fundDetailArr[m].fundblock.push({ |
| | | expense: this.fundDetailArr[m].expense, |
| | | expensedescribe: this.fundDetailArr[m].servicesscopename, |
| | | remark: this.fundDetailArr[m].servicesscope, |
| | | servicesscope: this.fundDetailArr[m].servicesscope, |
| | | }); |
| | | } |
| | | }); |
| | | }); |
| | | }, |
| | | |
| | | handleDelete(row) { |
| | | const ids = row.id || this.ids; |
| | | this.$modal |
| | | .confirm("是否确认删除该记录?") |
| | | .then(function () { |
| | | return delFund(ids); |
| | | }) |
| | | .then(() => { |
| | | getownFundDetail(ids).then((res) => { |
| | | let listdetails = res.data; |
| | | for (let i = 0; i < listdetails.length; i++) { |
| | | delFunddetail(listdetails[i].id); |
| | | } |
| | | }); |
| | | // this.getList(); |
| | | this.getfundList(); |
| | | this.$modal.msgSuccess("删除成功"); |
| | | }) |
| | | .catch(() => { }); |
| | | }, |
| | | |
| | | deleteRows(row, index, rows) { |
| | | this.$confirm("是否确认删除?", "提示", { |
| | |
| | | }); |
| | | }, |
| | | |
| | | //汇总打印 |
| | | //下载打印 |
| | | totaldayin(e) { |
| | | // const id =this.row.id |
| | | getdownloadBX(e).then((res) => { |
| | |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | selectReporters() { |
| | | //专家人员列表 |
| | | let arr = ["zzry"]; |
| | |
| | | }); |
| | | } |
| | | }, |
| | | |
| | | getlistExternalperson() { |
| | | listExternalperson().then((res) => { |
| | | this.personlist = res.rows; |
| | |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | getUnitList() { |
| | | listOrganization(3).then((response) => { |
| | | for (let i = 0; i < response.rows.length; i++) { |
| | | this.unitList.push({ |
| | | organizationid: response.rows[i].organizationid, |
| | | organizationname: response.rows[i].organizationname, |
| | | }); |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | SearchItem(val, scope) { |
| | | let result = []; |
| | | if (val != "") { |
| | |
| | | //this.$set(this.fundDetailArr, rowindex, row); |
| | | }); |
| | | } |
| | | }, |
| | | |
| | | getUnitList() { |
| | | listOrganization(3).then((response) => { |
| | | for (let i = 0; i < response.rows.length; i++) { |
| | | this.unitList.push({ |
| | | organizationid: response.rows[i].organizationid, |
| | | organizationname: response.rows[i].organizationname, |
| | | }); |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | addAlls() { |
| | |
| | | a.href = url; |
| | | a.dispatchEvent(event); |
| | | }, |
| | | |
| | | ShowDetailDialog(spoce, showType) { |
| | | this.funddetailForm.index = spoce.$index; |
| | | this.funddetailForm.beneficiaryno = spoce.row.beneficiaryno; |
| | | this.funddetailForm.beneficiaryname = spoce.row.beneficiaryname; |
| | | this.funddetailForm.unitno = spoce.row.unitno; |
| | | this.funddetailForm.unitname = spoce.row.unitname; |
| | | this.detailInfoDialogShow = true; |
| | | this.detailInfoDialogShowType = showType; |
| | | }, |
| | | ConfirmDetailDialog() { |
| | | let tempIndex = this.funddetailForm.index; |
| | | let tempName = this.funddetailForm.beneficiaryname; |
| | | let tempUnitname = this.funddetailForm.unitname; |
| | | let singleDetail = this.fundDetailArr[tempIndex]; |
| | | if (this.detailInfoDialogShowType == "name") { |
| | | this.personlist.map((res) => { |
| | | if (tempName == res.username) { |
| | | singleDetail.beneficiaryno = res.userno; |
| | | singleDetail.beneficiaryname = res.username; |
| | | singleDetail.bankcardno = res.bankcardno; |
| | | singleDetail.branchbankname = res.branchbankname; |
| | | singleDetail.depositbank = res.depositbank; |
| | | singleDetail.idcardno = res.idcardno; |
| | | singleDetail.phone = res.telephone; |
| | | singleDetail.title = res.title; |
| | | singleDetail.unitname = res.unitname; |
| | | singleDetail.unitno = parseInt(res.unitno); |
| | | } else { |
| | | singleDetail.beneficiaryname = tempName; |
| | | singleDetail.beneficiaryno = tempName; |
| | | } |
| | | }); |
| | | } else if (this.detailInfoDialogShowType == "unit") { |
| | | singleDetail.unitno = this.funddetailForm.unitno; |
| | | try { |
| | | let unitIndex = this.unitList.findIndex( |
| | | (item) => singleDetail.unitno == item.organizationid |
| | | ); |
| | | if (unitIndex > -1) { |
| | | singleDetail.unitname = this.unitList[unitIndex].organizationname; |
| | | } else { |
| | | singleDetail.unitname = singleDetail.unitno; |
| | | } |
| | | } catch { |
| | | singleDetail.unitname = singleDetail.unitno; |
| | | } |
| | | } |
| | | this.fundDetailArr[tempIndex] = singleDetail; |
| | | this.detailInfoDialogShow = false; |
| | | }, |
| | | }, |
| | | |
| | | //生命周期 - 创建完成(可以访问当前this实例) |
| | | created() { |
| | | this.getUnitList(); |
| | |
| | | beforeDestroy() { }, //生命周期 - 销毁之前 |
| | | destroyed() { }, //生命周期 - 销毁完成 |
| | | activated() { }, //如果页面有keep-alive缓存功能,这个函数会触发 |
| | | |
| | | }; |
| | | </script> |
| | | <style scoped> |
| | |
| | | <el-card shadow="naver"> |
| | | <el-form ref="infoform" label-width="100px"> |
| | | <el-row :gutter="4" align="right" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" |
| | | v-hasPermi="['project:expretfund:add']">专家费用申请</el-button> |
| | | </el-col> |
| | | <el-col :span="9"> |
| | | <el-form-item label="捐献编号"> |
| | | <el-input v-model="curCase.donorno" :disabled="true"></el-input> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col> |
| | | <!-- <el-button round @click='totaldayin'>下载</el-button> --> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" |
| | | v-hasPermi="['project:expretfund:add']">新增申请单</el-button> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | |
| | | /** 新增按钮操作 */ |
| | | handleAdd() { |
| | | if (this.curCase.id) { |
| | | this.$router.push({ |
| | | path: "/finance/applyDetail/", |
| | | query: { |
| | | id: 0, |
| | | businessType: "1", |
| | | operationType: "add", |
| | | curCase: this.curCase |
| | | } |
| | | }); |
| | | } else { |
| | | const h = this.$createElement; |
| | | this.$message({ |
| | | message: h("p", null, [h("span", null, "请在左边的捐献案例表选择需要操作的案例!")]), |
| | | }); |
| | | } |
| | | return; |
| | | |
| | | if (this.curCase.id) { |
| | | this.istrue += 2; |
| | | this.reset(); |
| | | this.queryParams.params = {}; |
| | |
| | | |
| | | /** 修改按钮操作 */ |
| | | handleUpdate(row) { |
| | | this.$router.push({ |
| | | path: "/finance/applyDetail/", |
| | | query: { |
| | | id: row.id, |
| | | businessType: "1", |
| | | operationType: "update", |
| | | curCase: this.curCase |
| | | } |
| | | }); |
| | | return; |
| | | |
| | | this.isopen = 0; |
| | | this.reset(); |
| | | this.queryParams.params = {}; |
| | |
| | | |
| | | /** 查看按钮操作 */ |
| | | handleDetail(row) { |
| | | this.$router.push({ |
| | | path: "/finance/applyDetail/", |
| | | query: { |
| | | id: row.id, |
| | | businessType: "1", |
| | | operationType: "detail", |
| | | curCase: this.curCase |
| | | } |
| | | }); |
| | | return; |
| | | |
| | | this.isopen = 0; |
| | | this.reset(); |
| | | this.queryParams.params = {}; |
| | |
| | | //查找是否存在登记完成记录 |
| | | //判断是否存在上报记录 |
| | | row.recordstatus = 0; |
| | | console.log("updateFund", row); |
| | | updateFund(row).then((response) => { |
| | | if (response.code == 200) { |
| | | this.$message({ |
| | |
| | | |
| | | this.totalAfterTaxAmount += parseFloat(tempDetail.taxedamount); |
| | | this.totalAmount += parseFloat(tempDetail.amount); |
| | | console.log("1", this.amount); |
| | | } |
| | | }); |
| | | } |
| | |
| | | //从专家列表获取信息 |
| | | this.personlist.map((res) => { |
| | | if (tempName == res.username) { |
| | | console.log("选择专家", res); |
| | | singleDetail.beneficiaryno = res.userno; |
| | | singleDetail.beneficiaryname = res.username; |
| | | singleDetail.bankcardno = res.bankcardno; |
| | |
| | | |
| | | listExternalperson().then((res) => { |
| | | this.personlist = res.rows; |
| | | console.log("new personlist", this.personlist); |
| | | //从专家列表获取信息 |
| | | this.personlist.map((res) => { |
| | | if (res.username == this.funddetailForm.expertname) { |
| | | console.log("新增专家", res); |
| | | singleDetail.beneficiaryno = res.userno; |
| | | singleDetail.beneficiaryname = res.username; |
| | | singleDetail.bankcardno = res.bankcardno; |
| | |
| | | //获取当前用户信息 |
| | | getUsermsg() { |
| | | getUserProfile().then((response) => { |
| | | console.log("getUserProfile", response); |
| | | this.defaultperson = response.data; |
| | | this.standardlevel = response.data.standardlevel; |
| | | if (this.defaultperson.createBy == "admin" || this.defaultperson.createBy == "001" || this.defaultperson.createBy == "002") { |
| | |
| | | row.itemcode = res.itemCode; |
| | | } |
| | | }); |
| | | if (this.businessType == '1') { |
| | | var repeatNum = 0; |
| | | this.fundDetails.map((res) => { |
| | | if (res.applytype === row.applytype && res.itemid == row.itemid) { |
| | |
| | | }); |
| | | if (repeatNum > 1) { |
| | | this.$modal.msgWarning("您已经提交过该服务项目了"); |
| | | } |
| | | } |
| | | |
| | | //获取费用项目的详细信息 |
| | |
| | | } |
| | | // this.queryParams.residencetown = this.$refs.areaSelect.getQu(); |
| | | |
| | | console.log("111", this.queryParams); |
| | | listDonatebaseinfo(this.queryParams).then((response) => { |
| | | this.donatebaseinfoList = response.rows; |
| | | this.total = response.total; |
| | |
| | | |
| | | getUserList() { |
| | | listUser().then((res) => { |
| | | console.log("listUser", res); |
| | | this.userlist = res.data; |
| | | }); |
| | | }, |
| | |
| | | <el-card shadow="naver"> |
| | | <el-form ref="infoform" label-width="100px"> |
| | | <el-row :gutter="4" align="right" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" |
| | | v-hasPermi="['project:medicalfund:add']">医学成本申请</el-button> |
| | | </el-col> |
| | | |
| | | <el-col :span="9"> |
| | | <el-form-item label="捐献编号"> |
| | | <el-input v-model="curCase.donorno" :disabled="true"></el-input> |
| | |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col> </el-col> |
| | | </el-row> |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd" |
| | | v-hasPermi="['project:medicalfund:add']">新增申请单</el-button> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-table v-loading="loading" border :data="donateconsolationfundList"> |
| | |
| | | |
| | | /** 新增按钮操作 */ |
| | | handleAdd() { |
| | | if (this.curCase.id) { |
| | | this.$router.push({ |
| | | path: "/finance/applyDetail/", |
| | | query: { |
| | |
| | | curCase: this.curCase |
| | | } |
| | | }); |
| | | } else { |
| | | const h = this.$createElement; |
| | | this.$message({ |
| | | message: h("p", null, [h("span", null, "请在左边的捐献案例表选择需要操作的案例!")]), |
| | | }); |
| | | } |
| | | return; |
| | | |
| | | if (this.curCase.id) { |
| | |
| | | @click="handleExport">导出</el-button> |
| | | </el-col> |
| | | <!-- v-hasPermi="['project:medicalfund:export']" --> |
| | | <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> |
| | | <!-- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> --> |
| | | </el-row> |
| | | <el-table v-loading="loading" border :data="donateconsolationfundList"> |
| | | <el-table-column label="申请日期" align="center" prop="createTime" width="180px"> |
| | |
| | | }); |
| | | }, |
| | | |
| | | /** 导出按钮操作 */ |
| | | handleExport() { |
| | | const queryParams = this.queryParams; |
| | | this.$modal |
| | | .confirm("是否确认导出所有报销申请数据项?") |
| | | .then(() => { |
| | | this.exportLoading = true; |
| | | return exportReimbursement(queryParams); |
| | | }) |
| | | .then(response => { |
| | | this.$download.name(response.msg); |
| | | this.exportLoading = false; |
| | | }) |
| | | .catch(() => {}); |
| | | }, |
| | | |
| | | handleDelete(row) { |
| | | const ids = row.id || this.ids; |
| | | this.$modal |
| | |
| | | <el-table-column label="操作" fixed="right" align="center" class-name="small-padding fixed-width" width="260px"> |
| | | <template slot-scope="scope"> |
| | | <el-button v-if="scope.row.checkFlag == 1" size="mini" type="text" icon="el-icon-edit" |
| | | @click="handleUpdate(scope.row)">审核</el-button> |
| | | @click="handleCheck(scope.row)">审核</el-button> |
| | | <!-- v-hasPermi="['project:donateconsolationfund:edit']" --> |
| | | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleShow(scope.row)">详情</el-button> |
| | | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleDetail(scope.row)">查看</el-button> |
| | | <el-button size="mini" type="text" icon="el-icon-download" @click="totaldayin(scope.row.id)">下载</el-button> |
| | | <!-- v-hasPermi="['project:donateconsolationfund:download']" --> |
| | | |
| | |
| | | } |
| | | }, |
| | | /** 修改按钮操作 */ |
| | | handleUpdate(row) { |
| | | handleCheck(row) { |
| | | this.$router.push({ |
| | | path: "/finance/applyDetail/", |
| | | query: { |
| | |
| | | }, |
| | | |
| | | //查看审核详情 |
| | | handleShow(row) { |
| | | handleDetail(row) { |
| | | this.$router.push({ |
| | | path: "/finance/applyDetail/", |
| | | query: { |
| | | id: row.id, |
| | | businessType: "3", |
| | | operationType: "detail" |
| | | } |
| | | }); |
| | | return; |
| | | |
| | | this.isopen = 0; |
| | | this.reset(); |
| | | this.queryParams.params = {}; |
| | |
| | | <template> |
| | | <div class="app-container"> |
| | | <el-form |
| | | :model="queryParams" |
| | | ref="queryForm" |
| | | :inline="true" |
| | | v-show="showSearch" |
| | | label-width="68px" |
| | | > |
| | | <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px"> |
| | | <el-row> |
| | | <!-- |
| | | <el-col :span="6"> |
| | |
| | | --> |
| | | <el-col :span="6"> |
| | | <el-form-item label="经办人" prop="username"> |
| | | <el-input |
| | | v-model="queryParams.username" |
| | | placeholder="请输入经办人" |
| | | clearable |
| | | size="small" |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | <el-input v-model="queryParams.username" placeholder="请输入经办人" clearable size="small" |
| | | @keyup.enter.native="handleQuery" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <el-form-item label="报销日期" prop="createTime"> |
| | | <el-date-picker |
| | | format="yyyy-MM-dd" |
| | | value-format="yyyy-MM-dd" |
| | | v-model="value1" |
| | | type="daterange" |
| | | @blur="onpick" |
| | | range-separator="至" |
| | | start-placeholder="报销开始日期" |
| | | end-placeholder="报销结束日期" |
| | | @keyup.enter.native="handleQuery" |
| | | > |
| | | <el-date-picker format="yyyy-MM-dd" value-format="yyyy-MM-dd" v-model="value1" type="daterange" @blur="onpick" |
| | | range-separator="至" start-placeholder="报销开始日期" end-placeholder="报销结束日期" @keyup.enter.native="handleQuery"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <el-form-item label="审核状态" prop="recordstatus"> |
| | | <el-input |
| | | v-model="queryParams.recordstatus" |
| | | placeholder="请选择审核状态" |
| | | clearable |
| | | size="small" |
| | | v-if="0" |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | <el-select |
| | | v-model="queryParams.recordstatus" |
| | | placeholder="请选择审核状态" |
| | | clearable |
| | | size="small" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_recordstatus" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | <el-input v-model="queryParams.recordstatus" placeholder="请选择审核状态" clearable size="small" v-if="0" |
| | | @keyup.enter.native="handleQuery" /> |
| | | <el-select v-model="queryParams.recordstatus" placeholder="请选择审核状态" clearable size="small"> |
| | | <el-option v-for="dict in dict.type.sys_recordstatus" :key="dict.value" :label="dict.label" |
| | | :value="dict.value" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="4"> |
| | | <el-form-item> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-search" |
| | | size="mini" |
| | | @click="handleQuery" |
| | | >搜索</el-button |
| | | > |
| | | <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" |
| | | >重置</el-button |
| | | > |
| | | <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> |
| | | <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="primary" |
| | | plain |
| | | icon="el-icon-plus" |
| | | size="mini" |
| | | @click="handleAdd" |
| | | >新增</el-button |
| | | > |
| | | <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd">新增</el-button> |
| | | <!-- v-hasPermi="['project:funddetail:add']" --> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="warning" |
| | | plain |
| | | icon="el-icon-download" |
| | | size="mini" |
| | | :loading="exportLoading" |
| | | @click="handleExport" |
| | | >导出</el-button |
| | | > |
| | | <el-button type="warning" plain icon="el-icon-download" size="mini" :loading="exportLoading" |
| | | @click="handleExport">导出</el-button> |
| | | </el-col> |
| | | <!-- v-hasPermi="['project:funddetail:export']" --> |
| | | <right-toolbar |
| | | :showSearch.sync="showSearch" |
| | | @queryTable="getList" |
| | | ></right-toolbar> |
| | | <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> |
| | | </el-row> |
| | | |
| | | <el-table |
| | | border |
| | | v-loading="loading" |
| | | :data="reimbursementList" |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <el-table border v-loading="loading" :data="reimbursementList" @selection-change="handleSelectionChange"> |
| | | <!-- <el-table-column type="selection" width="55" align="center" /> |
| | | <el-table-column label="报销人类别" width="120" align="center" prop="costtype"> |
| | | <template slot-scope="scope"> |
| | | <dict-tag :options="dict.type.sys_travelexpensebelong" :value="scope.row.costtype" /> |
| | | </template> |
| | | </el-table-column>--> |
| | | <el-table-column |
| | | label="申请时间" |
| | | width="150" |
| | | align="center" |
| | | prop="createTime" |
| | | > |
| | | <el-table-column label="申请时间" width="150" align="center" prop="createTime"> |
| | | <template slot-scope="scope"> |
| | | <span>{{ parseTime(scope.row.createTime, "{y}-{m}-{d}") }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="审核状态" |
| | | align="center" |
| | | prop="recordstatus" |
| | | width="160" |
| | | > |
| | | <el-table-column label="审核状态" align="center" prop="recordstatus" width="160"> |
| | | <template slot-scope="scope"> |
| | | <dict-tag |
| | | :options="dict.type.sys_recordstatus" |
| | | :value="scope.row.recordstatus" |
| | | /> |
| | | <dict-tag :options="dict.type.sys_recordstatus" :value="scope.row.recordstatus" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="经办人" |
| | | width="150" |
| | | align="center" |
| | | prop="username" |
| | | /> |
| | | <el-table-column label="经办人" width="150" align="center" prop="username" /> |
| | | <!-- |
| | | <el-table-column label="出差人" width="180" align="center" prop="travelers"> |
| | | </el-table-column>--> |
| | | <el-table-column |
| | | label="报销金额" |
| | | width="150" |
| | | align="center" |
| | | prop="amountrequested" |
| | | > |
| | | <el-table-column label="报销金额" width="150" align="center" prop="amountrequested"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="所属组别" |
| | | width="150" |
| | | align="center" |
| | | prop="deptmentname" |
| | | /> |
| | | <el-table-column |
| | | label="组长" |
| | | width="150" |
| | | align="center" |
| | | prop="managername" |
| | | /> |
| | | <el-table-column label="所属组别" width="150" align="center" prop="deptmentname" /> |
| | | <el-table-column label="组长" width="150" align="center" prop="managername" /> |
| | | <el-table-column label="出差事由" align="center" prop="reason" /> |
| | | <!-- <el-table-column label="联系电话" width="120" align="center" prop="phone"> |
| | | </el-table-column> |
| | |
| | | </el-table-column> |
| | | <el-table-column label="报销合计" align="center" prop="financechecher"/>--> |
| | | <!-- <el-table-column label="财务审核" width="120" align="center" prop="financechecher" /> --> |
| | | <el-table-column |
| | | label="捐献者" |
| | | width="150" |
| | | align="center" |
| | | prop="donorname" |
| | | /> |
| | | <el-table-column |
| | | label="操作" |
| | | align="center" |
| | | fixed="right" |
| | | class-name="small-padding fixed-width" |
| | | width="210" |
| | | > |
| | | <el-table-column label="捐献者" width="150" align="center" prop="donorname" /> |
| | | <el-table-column label="操作" align="center" fixed="right" class-name="small-padding fixed-width" width="210"> |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | | v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-upload2" |
| | | @click="handleup(scope.row)" |
| | | >上报</el-button |
| | | > |
| | | <el-button |
| | | v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-edit" |
| | | @click="handleUpdate(scope.row)" |
| | | >修改</el-button |
| | | > |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-edit" |
| | | @click="handleDetail(scope.row)" |
| | | >查看</el-button |
| | | > |
| | | <el-button v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" size="mini" type="text" |
| | | icon="el-icon-upload2" @click="handleup(scope.row)">上报</el-button> |
| | | <el-button v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" size="mini" type="text" |
| | | icon="el-icon-edit" @click="handleUpdate(scope.row)">修改</el-button> |
| | | <el-button size="mini" type="text" icon="el-icon-edit" @click="handleDetail(scope.row)">查看</el-button> |
| | | <!-- v-hasPermi="['project:funddetail:edit']" --> |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-download" |
| | | @click="gettable(scope.row)" |
| | | > |
| | | <el-button size="mini" type="text" icon="el-icon-download" @click="gettable(scope.row)"> |
| | | 下载 |
| | | </el-button> |
| | | <!-- v-hasPermi="['project:funddetail:edit']" --> |
| | | <el-button |
| | | v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-delete" |
| | | @click="handleDelete(scope.row)" |
| | | >删除</el-button |
| | | > |
| | | <el-button v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" size="mini" type="text" |
| | | icon="el-icon-delete" @click="handleDelete(scope.row)">删除</el-button> |
| | | <!-- v-hasPermi="['project:funddetail:remove']" --> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <!-- v-hasPermi="['project:donateconsolationfund:edit']" --> |
| | | |
| | | <pagination |
| | | v-show="total > 0" |
| | | :total="total" |
| | | :page.sync="queryParams.pageNum" |
| | | :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" |
| | | /> |
| | | <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" /> |
| | | |
| | | <!-- 添加或修改费用申请明细对话框 --> |
| | | <el-dialog |
| | | :title="title" |
| | | :visible.sync="open" |
| | | :close-on-click-modal="false" |
| | | width="1400px" |
| | | append-to-body |
| | | @close="reset" |
| | | > |
| | | <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="1400px" append-to-body |
| | | @close="reset"> |
| | | <el-form ref="form" :model="form" :rules="rules" label-width="120px"> |
| | | <el-row |
| | | ><el-col :span="5"> |
| | | <el-row><el-col :span="5"> |
| | | <el-form-item label="申请日期" prop="createTime"> |
| | | <el-date-picker |
| | | style="width: 100%" |
| | | v-model="form.createTime" |
| | | type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="申请日期" |
| | | > |
| | | <el-date-picker 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" |
| | | clearable |
| | | filterable |
| | | allow-create |
| | | ref="getReportname" |
| | | default-first-option |
| | | placeholder="请选择" |
| | | > |
| | | <el-option |
| | | v-for="item in personsList" |
| | | :key="item.reportNo" |
| | | :label="item.reportName" |
| | | :value="item.reportName" |
| | | > |
| | | <el-select v-model="form.username" clearable filterable allow-create ref="getReportname" |
| | | default-first-option placeholder="请选择"> |
| | | <el-option v-for="item in personsList" :key="item.reportNo" :label="item.reportName" |
| | | :value="item.reportName"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="捐献者" prop="infoid"> |
| | | <el-select |
| | | v-model="form.infoid" |
| | | @change="selectbaseinfo" |
| | | filterable |
| | | placeholder="请选择捐献者" |
| | | > |
| | | <el-option |
| | | v-for="item in baselist" |
| | | :key="item.index" |
| | | :label="item.name" |
| | | :value="item.infoid" |
| | | > |
| | | <el-select v-model="form.infoid" @change="selectbaseinfo" filterable placeholder="请选择捐献者"> |
| | | <el-option v-for="item in baselist" :key="item.index" :label="item.name" :value="item.infoid"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | <el-row style="margin-top: 10px"> |
| | | <el-col :span="5"> |
| | | <el-form-item label="报销金额" prop="amountrequested"> |
| | | <el-input |
| | | :disabled="true" |
| | | v-model="form.amountrequested" |
| | | placeholder="报销合计金额" |
| | | /> |
| | | <el-input :disabled="true" v-model="form.amountrequested" placeholder="报销合计金额" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="10"> |
| | | <el-form-item label="大写金额" prop="bigstrmoney"> |
| | | <el-input |
| | | :disabled="true" |
| | | v-model="form.bigstrmoney" |
| | | placeholder="报销大写金额" |
| | | /> |
| | | </el-form-item> </el-col |
| | | ><el-col :span="5"> |
| | | <el-input :disabled="true" v-model="form.bigstrmoney" placeholder="报销大写金额" /> |
| | | </el-form-item> </el-col><el-col :span="5"> |
| | | <el-form-item label="审核状态" prop="flowlevel"> |
| | | <el-select |
| | | v-model="form.recordstatus" |
| | | placeholder="请选择审核状态" |
| | | clearable |
| | | :disabled="true" |
| | | size="small" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_recordstatus" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | <el-select v-model="form.recordstatus" placeholder="请选择审核状态" clearable :disabled="true" size="small"> |
| | | <el-option v-for="dict in dict.type.sys_recordstatus" :key="dict.value" :label="dict.label" |
| | | :value="dict.value" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | </el-row> |
| | | <el-row> |
| | | <el-table :data="rbDetails" border highlight-current-row> |
| | | <el-table-column |
| | | prop="orderno" |
| | | slot="" |
| | | label="序号" |
| | | align="center" |
| | | fixed |
| | | width="65" |
| | | > |
| | | <el-table-column prop="orderno" slot="" label="序号" align="center" fixed width="65"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.orderno" placeholder="序号" /> |
| | | </template> |
| | | </el-table-column> |
| | | <!--主键、外不展示--> |
| | | <el-table-column |
| | | prop="id" |
| | | slot="" |
| | | label="主键" |
| | | align="center" |
| | | fixed |
| | | width="95" |
| | | v-if="false" |
| | | > |
| | | <el-table-column prop="id" slot="" label="主键" align="center" fixed width="95" v-if="false"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.id" placeholder="id" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="rbid" |
| | | slot="" |
| | | label="外键" |
| | | align="center" |
| | | fixed |
| | | width="95" |
| | | v-if="false" |
| | | > |
| | | <el-table-column prop="rbid" slot="" label="外键" align="center" fixed width="95" v-if="false"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.rbid" placeholder="rbid" /> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="persontype" |
| | | slot="" |
| | | label="人员类别" |
| | | align="center" |
| | | fixed |
| | | width="130" |
| | | > |
| | | <el-table-column prop="persontype" slot="" label="人员类别" align="center" fixed width="130"> |
| | | <template slot-scope="scope"> |
| | | <el-select |
| | | v-model="scope.row.persontype" |
| | | value-key="value" |
| | | placeholder="人员类别" |
| | | @change="getPersons(scope.row)" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_travelexpensebelong" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.label" |
| | | ></el-option> |
| | | <el-select v-model="scope.row.persontype" value-key="value" placeholder="人员类别" |
| | | @change="getPersons(scope.row)"> |
| | | <el-option v-for="dict in dict.type.sys_travelexpensebelong" :key="dict.value" :label="dict.label" |
| | | :value="dict.label"></el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="personname" |
| | | slot="" |
| | | label="费用人员" |
| | | align="center" |
| | | fixed |
| | | width="110" |
| | | > |
| | | <el-table-column prop="personname" slot="" label="费用人员" align="center" fixed width="110"> |
| | | <template slot-scope="scope"> |
| | | <el-select |
| | | v-model="scope.row.personname" |
| | | clearable |
| | | filterable |
| | | allow-create |
| | | default-first-option |
| | | placeholder="请选择" |
| | | @focus1="getPersons(scope.row)" |
| | | > |
| | | <el-option |
| | | v-for="item in personsSel" |
| | | :key="item.reportNo" |
| | | :label="item.reportName" |
| | | :value="item.reportName" |
| | | > |
| | | <el-select v-model="scope.row.personname" clearable filterable allow-create default-first-option |
| | | placeholder="请选择" @focus1="getPersons(scope.row)"> |
| | | <el-option v-for="item in personsSel" :key="item.reportNo" :label="item.reportName" |
| | | :value="item.reportName"> |
| | | </el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="starttime" |
| | | slot="" |
| | | label="开始日期" |
| | | fixed |
| | | align="center" |
| | | width="150" |
| | | > |
| | | <el-table-column prop="starttime" slot="" label="开始日期" fixed align="center" width="150"> |
| | | <template slot-scope="scope"> |
| | | <el-date-picker |
| | | :picker-options="{ |
| | | <el-date-picker :picker-options="{ |
| | | disabledDate: time => { |
| | | if (scope.row.endtime) { |
| | | return ( |
| | |
| | | ); |
| | | } |
| | | } |
| | | }" |
| | | clearable |
| | | size="small" |
| | | style="width: 100%" |
| | | v-model="scope.row.starttime" |
| | | type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="开始日期" |
| | | @blur="getdays(scope.row)" |
| | | > |
| | | }" clearable size="small" style="width: 100%" v-model="scope.row.starttime" type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" placeholder="开始日期" @blur="getdays(scope.row)"> |
| | | </el-date-picker> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="endtime" |
| | | slot="" |
| | | label="结束日期" |
| | | align="center" |
| | | fixed |
| | | width="150" |
| | | > |
| | | <el-table-column prop="endtime" slot="" label="结束日期" align="center" fixed width="150"> |
| | | <template slot-scope="scope"> |
| | | <el-date-picker |
| | | :picker-options="{ |
| | | <el-date-picker :picker-options="{ |
| | | disabledDate: time => { |
| | | if (scope.row.starttime) { |
| | | return ( |
| | |
| | | ); |
| | | } |
| | | } |
| | | }" |
| | | clearable |
| | | size="small" |
| | | style="width: 100%" |
| | | v-model="scope.row.endtime" |
| | | type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="结束日期" |
| | | @blur="getdays(scope.row)" |
| | | > |
| | | }" clearable size="small" style="width: 100%" v-model="scope.row.endtime" type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" placeholder="结束日期" @blur="getdays(scope.row)"> |
| | | </el-date-picker> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="departure" |
| | | slot="" |
| | | label="出发地" |
| | | align="center" |
| | | width="100" |
| | | > |
| | | <el-table-column prop="departure" slot="" label="出发地" align="center" width="100"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.departure" placeholder="出发地" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="到达地" |
| | | prop="destination" |
| | | align="center" |
| | | width="140" |
| | | > |
| | | <el-table-column label="到达地" prop="destination" align="center" width="140"> |
| | | <template slot-scope="scope"> |
| | | <!-- <el-input v-model="scope.row.destination" placeholder="到达地" @blur="getallowance(scope.row)" /> --> |
| | | <el-select |
| | | filterable |
| | | allow-create |
| | | v-model="scope.row.destination" |
| | | value-key="value" |
| | | placeholder="到达地" |
| | | @change="getallowance(scope.row)" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_area_name" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.label" |
| | | ></el-option> |
| | | <el-select filterable allow-create v-model="scope.row.destination" value-key="value" placeholder="到达地" |
| | | @change="getallowance(scope.row)"> |
| | | <el-option v-for="dict in dict.type.sys_area_name" :key="dict.value" :label="dict.label" |
| | | :value="dict.label"></el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="days" label="天数" width="65" align="center"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.days" |
| | | @blur="getallowance(scope.row)" |
| | | placeholder="天数" |
| | | /> |
| | | <el-input v-model="scope.row.days" @blur="getallowance(scope.row)" placeholder="天数" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="traffictype" |
| | | label="出发交通工具" |
| | | align="center" |
| | | width="100" |
| | | > |
| | | <el-table-column prop="traffictype" label="出发交通工具" align="center" width="100"> |
| | | <template slot-scope="scope"> |
| | | <el-select |
| | | v-model="scope.row.traffictype" |
| | | placeholder="出发交通工具" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_traffictype" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.label" |
| | | ></el-option> |
| | | <el-select v-model="scope.row.traffictype" placeholder="出发交通工具"> |
| | | <el-option v-for="dict in dict.type.sys_traffictype" :key="dict.value" :label="dict.label" |
| | | :value="dict.label"></el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="traffictype2" |
| | | label="返回交通工具" |
| | | align="center" |
| | | width="100" |
| | | > |
| | | <el-table-column prop="traffictype2" label="返回交通工具" align="center" width="100"> |
| | | <template slot-scope="scope"> |
| | | <el-select |
| | | v-model="scope.row.traffictype2" |
| | | placeholder="返回交通工具" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_traffictype" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.label" |
| | | ></el-option> |
| | | <el-select v-model="scope.row.traffictype2" placeholder="返回交通工具"> |
| | | <el-option v-for="dict in dict.type.sys_traffictype" :key="dict.value" :label="dict.label" |
| | | :value="dict.label"></el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="trafficexpense" |
| | | label="交通费" |
| | | align="center" |
| | | width="80" |
| | | > |
| | | <el-table-column prop="trafficexpense" label="交通费" align="center" width="80"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.trafficexpense" |
| | | placeholder="交通费" |
| | | @blur=" |
| | | val => { |
| | | <el-input v-model="scope.row.trafficexpense" placeholder="交通费" @blur="val => { |
| | | sumRowFee(scope.row); |
| | | } |
| | | " |
| | | /> |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | <!-- |
| | |
| | | </template> |
| | | </el-table-column> |
| | | --> |
| | | <el-table-column |
| | | prop="hotelexpense" |
| | | label="住宿费" |
| | | align="center" |
| | | width="80" |
| | | > |
| | | <el-table-column prop="hotelexpense" label="住宿费" align="center" width="80"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.hotelexpense" |
| | | placeholder="住宿费" |
| | | @blur=" |
| | | val => { |
| | | <el-input v-model="scope.row.hotelexpense" placeholder="住宿费" @blur="val => { |
| | | sumRowFee(scope.row); |
| | | } |
| | | " |
| | | /> |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="foodexpenses" |
| | | label="餐费报销" |
| | | align="center" |
| | | width="80" |
| | | > |
| | | <el-table-column prop="foodexpenses" label="餐费报销" align="center" width="80"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.foodexpenses" |
| | | placeholder="伙食费报销" |
| | | @blur=" |
| | | val => { |
| | | <el-input v-model="scope.row.foodexpenses" placeholder="伙食费报销" @blur="val => { |
| | | sumRowFee(scope.row); |
| | | } |
| | | " |
| | | /> |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="foodallowance" |
| | | label="伙食补助" |
| | | align="center" |
| | | width="80" |
| | | > |
| | | <el-table-column prop="foodallowance" label="伙食补助" align="center" width="80"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.foodallowance" |
| | | placeholder="伙食费补助" |
| | | @blur=" |
| | | val => { |
| | | <el-input v-model="scope.row.foodallowance" placeholder="伙食费补助" @blur="val => { |
| | | sumRowFee(scope.row); |
| | | } |
| | | " |
| | | /> |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="otherexpense" |
| | | label="公杂费补助" |
| | | align="center" |
| | | width="80" |
| | | > |
| | | <el-table-column prop="otherexpense" label="公杂费补助" align="center" width="80"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.otherexpense" |
| | | placeholder="杂费" |
| | | @blur=" |
| | | val => { |
| | | <el-input v-model="scope.row.otherexpense" placeholder="杂费" @blur="val => { |
| | | sumRowFee(scope.row); |
| | | } |
| | | " |
| | | /> |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="otherfeeamount" |
| | | label="其他费用" |
| | | align="center" |
| | | width="90" |
| | | > |
| | | <el-table-column prop="otherfeeamount" label="其他费用" align="center" width="90"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.otherfeeamount" |
| | | placeholder="其他费用" |
| | | @blur=" |
| | | val => { |
| | | <el-input v-model="scope.row.otherfeeamount" placeholder="其他费用" @blur="val => { |
| | | sumRowFee(scope.row); |
| | | } |
| | | " |
| | | /> |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="departure" |
| | | slot="" |
| | | label="其他费用说明" |
| | | align="center" |
| | | width="120" |
| | | > |
| | | <el-table-column prop="departure" slot="" label="其他费用说明" align="center" width="120"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.otherfeedesc" |
| | | placeholder="其他费用说明" |
| | | /> |
| | | <el-input v-model="scope.row.otherfeedesc" placeholder="其他费用说明" /> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="total" |
| | | label="合计" |
| | | align="center" |
| | | width="110" |
| | | > |
| | | <el-table-column prop="total" label="合计" align="center" width="110"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.total" placeholder="合计" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | fixed="right" |
| | | label="操作" |
| | | align="center" |
| | | width="120" |
| | | v-if="dialogType == 'edit'" |
| | | > |
| | | <el-table-column fixed="right" label="操作" align="center" width="120" v-if="dialogType == 'edit'"> |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | | type="text" |
| | | size="mini" |
| | | @click="addDetailRow(scope.$index)" |
| | | >新增</el-button |
| | | > |
| | | <el-button |
| | | @click.native.prevent=" |
| | | <el-button type="text" size="mini" @click="addDetailRow(scope.$index)">新增</el-button> |
| | | <el-button @click.native.prevent=" |
| | | deleteDetailRow(scope.$index, rbDetails, scope.row) |
| | | " |
| | | type="text" |
| | | size="small" |
| | | > |
| | | " type="text" size="small"> |
| | | 删除 |
| | | </el-button> |
| | | </template> |
| | |
| | | </el-row> |
| | | <el-row style="margin-top: 30px"> |
| | | <el-table :data="rbPayees" border highlight-current-row> |
| | | <el-table-column |
| | | prop="orderno" |
| | | slot="" |
| | | label="序号" |
| | | align="center" |
| | | fixed |
| | | width="65" |
| | | > |
| | | <el-table-column prop="orderno" slot="" label="序号" align="center" fixed width="65"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.orderno" placeholder="序号" /> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <!--主键、外键不展示--> |
| | | <el-table-column |
| | | prop="id" |
| | | slot="" |
| | | label="主键" |
| | | align="center" |
| | | fixed |
| | | width="95" |
| | | v-if="false" |
| | | > |
| | | <el-table-column prop="id" slot="" label="主键" align="center" fixed width="95" v-if="false"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.id" placeholder="id" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="rbid" |
| | | slot="" |
| | | label="外键" |
| | | align="center" |
| | | fixed |
| | | width="95" |
| | | v-if="false" |
| | | > |
| | | <el-table-column prop="rbid" slot="" label="外键" align="center" fixed width="95" v-if="false"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.rbid" placeholder="rbid" /> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="persontype" |
| | | slot="" |
| | | label="人员类别" |
| | | align="center" |
| | | fixed |
| | | width="130" |
| | | > |
| | | <el-table-column prop="persontype" slot="" label="人员类别" align="center" fixed width="130"> |
| | | <template slot-scope="scope"> |
| | | <el-select |
| | | v-model="scope.row.persontype" |
| | | value-key="value" |
| | | placeholder="人员类别" |
| | | @change="getPersons(scope.row)" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_travelexpensebelong" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.label" |
| | | ></el-option> |
| | | <el-select v-model="scope.row.persontype" value-key="value" placeholder="人员类别" |
| | | @change="getPersons(scope.row)"> |
| | | <el-option v-for="dict in dict.type.sys_travelexpensebelong" :key="dict.value" :label="dict.label" |
| | | :value="dict.label"></el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="personname" |
| | | slot="" |
| | | label="收款人" |
| | | align="center" |
| | | fixed |
| | | width="110" |
| | | > |
| | | <el-table-column prop="personname" slot="" label="收款人" align="center" fixed width="110"> |
| | | <template slot-scope="scope"> |
| | | <el-select |
| | | v-model="scope.row.personname" |
| | | clearable |
| | | filterable |
| | | allow-create |
| | | ref="getReportname" |
| | | default-first-option |
| | | placeholder="请选择" |
| | | @change="getAccountinfo2(scope.row, scope.row.persontype)" |
| | | > |
| | | <el-option |
| | | v-for="item in personsSel" |
| | | :key="item.reportNo" |
| | | :label="item.reportName" |
| | | :value="item.reportName" |
| | | > |
| | | <el-select v-model="scope.row.personname" clearable filterable allow-create ref="getReportname" |
| | | default-first-option placeholder="请选择" @change="getAccountinfo2(scope.row, scope.row.persontype)"> |
| | | <el-option v-for="item in personsSel" :key="item.reportNo" :label="item.reportName" |
| | | :value="item.reportName"> |
| | | </el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="bankname" |
| | | slot="" |
| | | label="银行名称" |
| | | align="center" |
| | | fixed |
| | | width="200" |
| | | > |
| | | <el-table-column prop="bankname" slot="" label="银行名称" align="center" fixed width="200"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.bankname" placeholder="银行名称" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="bankcardno" |
| | | slot="" |
| | | label="银行卡号" |
| | | align="center" |
| | | fixed |
| | | width="200" |
| | | > |
| | | <el-table-column prop="bankcardno" slot="" label="银行卡号" align="center" fixed width="200"> |
| | | <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="amount" |
| | | slot="" |
| | | label="打款金额" |
| | | align="center" |
| | | fixed |
| | | width="130" |
| | | > |
| | | <el-table-column prop="amount" slot="" label="打款金额" align="center" fixed width="130"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.amount" placeholder="打款金额" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="remark" |
| | | slot="" |
| | | label="请款说明" |
| | | align="center" |
| | | fixed |
| | | width="280" |
| | | > |
| | | <el-table-column prop="remark" slot="" label="请款说明" align="center" fixed width="280"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.remark" placeholder="说明" /> |
| | | </template> </el-table-column |
| | | ><el-table-column |
| | | prop="paiddate" |
| | | slot="" |
| | | label="打款日期" |
| | | fixed |
| | | align="center" |
| | | width="150" |
| | | > |
| | | </template> </el-table-column><el-table-column prop="paiddate" slot="" label="打款日期" fixed align="center" |
| | | width="150"> |
| | | <template slot-scope="scope"> |
| | | <el-date-picker |
| | | clearable |
| | | size="small" |
| | | style="width: 100%" |
| | | v-model="scope.row.paiddate" |
| | | type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="打款日期" |
| | | :disabled="true" |
| | | > |
| | | <el-date-picker clearable size="small" style="width: 100%" v-model="scope.row.paiddate" type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" placeholder="打款日期" :disabled="true"> |
| | | </el-date-picker> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="操作" |
| | | align="center" |
| | | width="100" |
| | | v-if="dialogType == 'edit'" |
| | | > |
| | | <el-table-column label="操作" align="center" width="100" v-if="dialogType == 'edit'"> |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | | type="text" |
| | | size="mini" |
| | | @click="addPayeeRow(scope.$index)" |
| | | >新增</el-button |
| | | > |
| | | <el-button |
| | | @click.native.prevent=" |
| | | <el-button type="text" size="mini" @click="addPayeeRow(scope.$index)">新增</el-button> |
| | | <el-button @click.native.prevent=" |
| | | deletePayeeRow(scope.$index, rbPayees, scope.row) |
| | | " |
| | | type="text" |
| | | size="small" |
| | | > |
| | | " type="text" size="small"> |
| | | 删除 |
| | | </el-button> |
| | | </template> |
| | |
| | | --> |
| | | <el-form-item label="文件上传" align="left" prop="annexfiles"> |
| | | <!-- <file-upload ref="fileUpload" :fileType=fileType :limit="1" :on-success="handleUploadSuccess"></file-upload> --> |
| | | <el-upload |
| | | size="mini" |
| | | class="upload-demo" |
| | | :action="uploadFileUrl" |
| | | :file-list="fileList" |
| | | multiple |
| | | :limit="20" |
| | | :headers="headers" |
| | | :on-success=" |
| | | (response, file, fileList) => |
| | | <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="dialogType == 'detail'" |
| | | :on-error="handleUploadError" |
| | | :on-exceed="handleExceed" |
| | | :on-remove="remove" |
| | | accept="image/*,.pdf" |
| | | > |
| | | <el-button |
| | | :disabled="dialogType == 'detail'" |
| | | size="small" |
| | | type="primary" |
| | | >上传</el-button |
| | | > |
| | | " :on-preview="downFile" :disabled="dialogType == 'detail'" :on-error="handleUploadError" |
| | | :on-exceed="handleExceed" :on-remove="remove" accept="image/*,.pdf"> |
| | | <el-button :disabled="dialogType == 'detail'" size="small" type="primary">上传</el-button> |
| | | </el-upload> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row v-if="dialogType == 'detail'"> |
| | | <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="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> |
| | | <el-table-column |
| | | label="审核备注" |
| | | align="center" |
| | | prop="flowcontent" |
| | | /> |
| | | <el-table-column label="审核备注" align="center" prop="flowcontent" /> |
| | | </el-table> |
| | | </el-row> |
| | | </el-form> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button |
| | | type="primary" |
| | | @click="submitForm" |
| | | v-if="dialogType == 'edit'" |
| | | >保 存</el-button |
| | | > |
| | | <el-button type="primary" @click="submitForm" v-if="dialogType == 'edit'">保 存</el-button> |
| | | <el-button @click="cancel">取 消</el-button> |
| | | </div> |
| | | </el-dialog> |
| | |
| | | <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-row><el-col :span="5"> |
| | | <el-form-item label="申请日期" prop="createTime"> |
| | | <el-date-picker |
| | | style="width: 100%" |
| | | v-model="form.createTime" |
| | | type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="申请日期" |
| | | > |
| | | <el-date-picker 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" |
| | | clearable |
| | | filterable |
| | | allow-create |
| | | ref="getReportname" |
| | | default-first-option |
| | | placeholder="请选择" |
| | | > |
| | | <el-option |
| | | v-for="item in personsList" |
| | | :key="item.reportNo" |
| | | :label="item.reportName" |
| | | :value="item.reportName" |
| | | > |
| | | <el-select v-model="form.username" clearable filterable allow-create ref="getReportname" |
| | | default-first-option placeholder="请选择"> |
| | | <el-option v-for="item in personsList" :key="item.reportNo" :label="item.reportName" |
| | | :value="item.reportName"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | </el-col> |
| | | <el-col :span="5"> |
| | | <el-form-item label="捐献者" prop="infoid"> |
| | | <el-select |
| | | v-model="form.infoid" |
| | | @change="selectbaseinfo" |
| | | filterable |
| | | placeholder="请选择捐献者" |
| | | > |
| | | <el-option |
| | | v-for="item in baselist" |
| | | :key="item.index" |
| | | :label="item.name" |
| | | :value="item.infoid" |
| | | > |
| | | <el-select v-model="form.infoid" @change="selectbaseinfo" filterable placeholder="请选择捐献者"> |
| | | <el-option v-for="item in baselist" :key="item.index" :label="item.name" :value="item.infoid"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | <el-row style="margin-top: 10px"> |
| | | <el-col :span="5"> |
| | | <el-form-item label="报销金额" prop="amountrequested"> |
| | | <el-input |
| | | :disabled="true" |
| | | v-model="form.amountrequested" |
| | | placeholder="报销合计金额" |
| | | /> |
| | | <el-input :disabled="true" v-model="form.amountrequested" placeholder="报销合计金额" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="10"> |
| | | <el-form-item label="大写金额" prop="bigstrmoney"> |
| | | <el-input |
| | | :disabled="true" |
| | | v-model="form.bigstrmoney" |
| | | placeholder="报销大写金额" |
| | | /> |
| | | </el-form-item> </el-col |
| | | ><el-col :span="5"> |
| | | <el-input :disabled="true" v-model="form.bigstrmoney" placeholder="报销大写金额" /> |
| | | </el-form-item> </el-col><el-col :span="5"> |
| | | <el-form-item label="审核状态" prop="flowlevel"> |
| | | <el-select |
| | | v-model="form.recordstatus" |
| | | placeholder="请选择审核状态" |
| | | clearable |
| | | :disabled="true" |
| | | size="small" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_recordstatus" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | <el-select v-model="form.recordstatus" placeholder="请选择审核状态" clearable :disabled="true" size="small"> |
| | | <el-option v-for="dict in dict.type.sys_recordstatus" :key="dict.value" :label="dict.label" |
| | | :value="dict.value" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | </el-row> |
| | | --> |
| | | <el-row style="margin-top: 25px; margin-bottom: 5px"> |
| | | <el-col :span="20">报销明细录入:</el-col> |
| | | <el-col :span="20">报销明细</el-col> |
| | | </el-row> |
| | | <el-row> |
| | | <el-table |
| | | :data="rbDetails" |
| | | border |
| | | highlight-current-row |
| | | :summary-method="getSummaries" |
| | | show-summary |
| | | > |
| | | <el-table-column |
| | | prop="orderno" |
| | | slot="" |
| | | label="序号" |
| | | align="center" |
| | | fixed |
| | | width="65" |
| | | > |
| | | <el-table :data="rbDetails" border highlight-current-row :summary-method="getSummaries" show-summary> |
| | | <el-table-column prop="orderno" slot="" label="序号" align="center" fixed width="65"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.orderno" placeholder="序号" /> |
| | | </template> |
| | | </el-table-column> |
| | | <!--主键、外不展示--> |
| | | <el-table-column |
| | | prop="id" |
| | | slot="" |
| | | label="主键" |
| | | align="center" |
| | | fixed |
| | | width="95" |
| | | v-if="false" |
| | | > |
| | | <el-table-column prop="id" slot="" label="主键" align="center" fixed width="95" v-if="false"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.id" placeholder="id" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="rbid" |
| | | slot="" |
| | | label="外键" |
| | | align="center" |
| | | fixed |
| | | width="95" |
| | | v-if="false" |
| | | > |
| | | <el-table-column prop="rbid" slot="" label="外键" align="center" fixed width="95" v-if="false"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.rbid" placeholder="rbid" /> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="persontype" |
| | | slot="" |
| | | label="人员类别" |
| | | align="center" |
| | | fixed |
| | | width="130" |
| | | > |
| | | <el-table-column prop="persontype" slot="" label="人员类别" align="center" fixed width="130"> |
| | | <template slot-scope="scope"> |
| | | <el-select |
| | | v-model="scope.row.persontype" |
| | | value-key="value" |
| | | placeholder="人员类别" |
| | | @change="getPersons(scope.row)" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_travelexpensebelong" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.label" |
| | | ></el-option> |
| | | <el-select v-model="scope.row.persontype" value-key="value" placeholder="人员类别" |
| | | @change="getPersons(scope.row)"> |
| | | <el-option v-for="dict in dict.type.sys_travelexpensebelong" :key="dict.value" :label="dict.label" |
| | | :value="dict.label"></el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="personname" |
| | | slot="" |
| | | label="费用人员" |
| | | align="center" |
| | | fixed |
| | | width="110" |
| | | > |
| | | <el-table-column prop="personname" slot="" label="费用人员" align="center" fixed width="110"> |
| | | <template slot-scope="scope"> |
| | | <el-select |
| | | v-model="scope.row.personname" |
| | | clearable |
| | | filterable |
| | | allow-create |
| | | default-first-option |
| | | placeholder="请选择" |
| | | @focus1="getPersons(scope.row)" |
| | | > |
| | | <el-option |
| | | v-for="item in personsSel" |
| | | :key="item.reportNo" |
| | | :label="item.reportName" |
| | | :value="item.reportName" |
| | | > |
| | | <el-select v-model="scope.row.personname" clearable filterable allow-create default-first-option |
| | | placeholder="请选择" @focus1="getPersons(scope.row)"> |
| | | <el-option v-for="item in personsSel" :key="item.reportNo" :label="item.reportName" |
| | | :value="item.reportName"> |
| | | </el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="starttime" |
| | | slot="" |
| | | label="开始日期" |
| | | fixed |
| | | align="center" |
| | | width="150" |
| | | > |
| | | <el-table-column prop="starttime" slot="" label="开始日期" fixed align="center" width="150"> |
| | | <template slot-scope="scope"> |
| | | <el-date-picker |
| | | :picker-options="{ |
| | | <el-date-picker :picker-options="{ |
| | | disabledDate: time => { |
| | | if (scope.row.endtime) { |
| | | return ( |
| | |
| | | ); |
| | | } |
| | | } |
| | | }" |
| | | clearable |
| | | size="small" |
| | | style="width: 100%" |
| | | v-model="scope.row.starttime" |
| | | type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="开始日期" |
| | | @blur="getdays(scope.row)" |
| | | > |
| | | }" clearable size="small" style="width: 100%" v-model="scope.row.starttime" type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" placeholder="开始日期" @blur="getdays(scope.row)"> |
| | | </el-date-picker> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="endtime" |
| | | slot="" |
| | | label="结束日期" |
| | | align="center" |
| | | fixed |
| | | width="150" |
| | | > |
| | | <el-table-column prop="endtime" slot="" label="结束日期" align="center" fixed width="150"> |
| | | <template slot-scope="scope"> |
| | | <el-date-picker |
| | | :picker-options="{ |
| | | <el-date-picker :picker-options="{ |
| | | disabledDate: time => { |
| | | if (scope.row.starttime) { |
| | | return ( |
| | |
| | | ); |
| | | } |
| | | } |
| | | }" |
| | | clearable |
| | | size="small" |
| | | style="width: 100%" |
| | | v-model="scope.row.endtime" |
| | | type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="结束日期" |
| | | @blur="getdays(scope.row)" |
| | | > |
| | | }" clearable size="small" style="width: 100%" v-model="scope.row.endtime" type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" placeholder="结束日期" @blur="getdays(scope.row)"> |
| | | </el-date-picker> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="departure" |
| | | slot="" |
| | | label="出发地" |
| | | align="center" |
| | | width="100" |
| | | > |
| | | <el-table-column prop="departure" slot="" label="出发地" align="center" width="100"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.departure" placeholder="出发地" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="到达地" |
| | | prop="destination" |
| | | align="center" |
| | | width="140" |
| | | > |
| | | <el-table-column label="到达地" prop="destination" align="center" width="140"> |
| | | <template slot-scope="scope"> |
| | | <!-- <el-input v-model="scope.row.destination" placeholder="到达地" @blur="getallowance(scope.row)" /> --> |
| | | <el-select |
| | | filterable |
| | | allow-create |
| | | v-model="scope.row.destination" |
| | | value-key="value" |
| | | placeholder="到达地" |
| | | @change="getallowance(scope.row)" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_area_name" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.label" |
| | | ></el-option> |
| | | <el-select filterable allow-create v-model="scope.row.destination" value-key="value" placeholder="到达地" |
| | | @change="getallowance(scope.row)"> |
| | | <el-option v-for="dict in dict.type.sys_area_name" :key="dict.value" :label="dict.label" |
| | | :value="dict.label"></el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="days" label="天数" width="65" align="center"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.days" |
| | | @blur="getallowance(scope.row)" |
| | | placeholder="天数" |
| | | /> |
| | | <el-input v-model="scope.row.days" @blur="getallowance(scope.row)" placeholder="天数" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="traffictype" |
| | | label="出发交通工具" |
| | | align="center" |
| | | width="100" |
| | | > |
| | | <el-table-column prop="traffictype" label="出发交通工具" align="center" width="100"> |
| | | <template slot-scope="scope"> |
| | | <el-select |
| | | v-model="scope.row.traffictype" |
| | | placeholder="出发交通工具" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_traffictype" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.label" |
| | | ></el-option> |
| | | <el-select v-model="scope.row.traffictype" placeholder="出发交通工具"> |
| | | <el-option v-for="dict in dict.type.sys_traffictype" :key="dict.value" :label="dict.label" |
| | | :value="dict.label"></el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="traffictype2" |
| | | label="返回交通工具" |
| | | align="center" |
| | | width="100" |
| | | > |
| | | <el-table-column prop="traffictype2" label="返回交通工具" align="center" width="100"> |
| | | <template slot-scope="scope"> |
| | | <el-select |
| | | v-model="scope.row.traffictype2" |
| | | placeholder="返回交通工具" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_traffictype" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.label" |
| | | ></el-option> |
| | | <el-select v-model="scope.row.traffictype2" placeholder="返回交通工具"> |
| | | <el-option v-for="dict in dict.type.sys_traffictype" :key="dict.value" :label="dict.label" |
| | | :value="dict.label"></el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="trafficexpense" |
| | | label="交通费" |
| | | align="center" |
| | | width="80" |
| | | > |
| | | <el-table-column prop="trafficexpense" label="交通费" align="center" width="80"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.trafficexpense" |
| | | placeholder="交通费" |
| | | @blur=" |
| | | val => { |
| | | <el-input v-model="scope.row.trafficexpense" placeholder="交通费" @blur="val => { |
| | | sumRowFee(scope.row); |
| | | } |
| | | " |
| | | /> |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | <!-- |
| | |
| | | </template> |
| | | </el-table-column> |
| | | --> |
| | | <el-table-column |
| | | prop="hotelexpense" |
| | | label="住宿费" |
| | | align="center" |
| | | width="80" |
| | | > |
| | | <el-table-column prop="hotelexpense" label="住宿费" align="center" width="80"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.hotelexpense" |
| | | placeholder="住宿费" |
| | | @blur=" |
| | | val => { |
| | | <el-input v-model="scope.row.hotelexpense" placeholder="住宿费" @blur="val => { |
| | | sumRowFee(scope.row); |
| | | } |
| | | " |
| | | /> |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="foodexpenses" |
| | | label="餐费报销" |
| | | align="center" |
| | | width="80" |
| | | > |
| | | <el-table-column prop="foodexpenses" label="餐费报销" align="center" width="80"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.foodexpenses" |
| | | placeholder="伙食费报销" |
| | | @blur=" |
| | | val => { |
| | | <el-input v-model="scope.row.foodexpenses" placeholder="伙食费报销" @blur="val => { |
| | | sumRowFee(scope.row); |
| | | } |
| | | " |
| | | /> |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="foodallowance" |
| | | label="伙食补助" |
| | | align="center" |
| | | width="80" |
| | | > |
| | | <el-table-column prop="foodallowance" label="伙食补助" align="center" width="80"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.foodallowance" |
| | | placeholder="伙食费补助" |
| | | @blur=" |
| | | val => { |
| | | <el-input v-model="scope.row.foodallowance" placeholder="伙食费补助" @blur="val => { |
| | | sumRowFee(scope.row); |
| | | } |
| | | " |
| | | /> |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="otherexpense" |
| | | label="公杂费补助" |
| | | align="center" |
| | | width="80" |
| | | > |
| | | <el-table-column prop="otherexpense" label="公杂费补助" align="center" width="80"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.otherexpense" |
| | | placeholder="杂费" |
| | | @blur=" |
| | | val => { |
| | | <el-input v-model="scope.row.otherexpense" placeholder="杂费" @blur="val => { |
| | | sumRowFee(scope.row); |
| | | } |
| | | " |
| | | /> |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="otherfeeamount" |
| | | label="其他费用" |
| | | align="center" |
| | | width="90" |
| | | > |
| | | <el-table-column prop="otherfeeamount" label="其他费用" align="center" width="90"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.otherfeeamount" |
| | | placeholder="其他费用" |
| | | @blur=" |
| | | val => { |
| | | <el-input v-model="scope.row.otherfeeamount" placeholder="其他费用" @blur="val => { |
| | | sumRowFee(scope.row); |
| | | } |
| | | " |
| | | /> |
| | | " /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="departure" |
| | | slot="" |
| | | label="其他费用说明" |
| | | align="center" |
| | | width="120" |
| | | > |
| | | <el-table-column prop="departure" slot="" label="其他费用说明" align="center" width="120"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | v-model="scope.row.otherfeedesc" |
| | | placeholder="其他费用说明" |
| | | /> |
| | | <el-input v-model="scope.row.otherfeedesc" placeholder="其他费用说明" /> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="total" |
| | | label="合计" |
| | | align="center" |
| | | width="110" |
| | | fixed="right" |
| | | > |
| | | <el-table-column prop="total" label="合计" align="center" width="110" fixed="right"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.total" placeholder="合计" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | fixed="right" |
| | | label="操作" |
| | | align="center" |
| | | width="120" |
| | | > |
| | | <el-table-column fixed="right" label="操作" align="center" width="120"> |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | | type="text" |
| | | size="mini" |
| | | @click="addDetailRow(scope.$index)" |
| | | v-if="dialogType == 'edit'" |
| | | >新增</el-button |
| | | > |
| | | <el-button |
| | | @click.native.prevent=" |
| | | <el-button type="text" size="mini" @click="addDetailRow(scope.$index)" |
| | | v-if="operationType == 'edit'">新增</el-button> |
| | | <el-button @click.native.prevent=" |
| | | deleteDetailRow(scope.$index, rbDetails, scope.row) |
| | | " |
| | | type="text" |
| | | size="small" |
| | | v-if="dialogType == 'edit'" |
| | | >删除</el-button |
| | | > |
| | | <el-button |
| | | @click.native.prevent=" |
| | | " type="text" size="small" v-if="operationType == 'edit'">删除</el-button> |
| | | <el-button @click.native.prevent=" |
| | | Filepopup(scope.$index, rbDetails, scope.row) |
| | | " |
| | | type="text" |
| | | size="small" |
| | | >票据</el-button |
| | | > |
| | | " type="text" size="small">票据</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-row> |
| | | <el-row style="margin-top: 25px; margin-bottom: 5px"> |
| | | <el-col :span="20">报销请款明细:</el-col> |
| | | <el-col :span="20">打款明细</el-col> |
| | | </el-row> |
| | | <el-row style="margin-top: 30px"> |
| | | <el-table |
| | | :data="rbPayees" |
| | | border |
| | | highlight-current-row |
| | | :summary-method="getSummaries" |
| | | show-summary |
| | | > |
| | | <el-table-column |
| | | prop="orderno" |
| | | slot="" |
| | | label="序号" |
| | | align="center" |
| | | fixed |
| | | width="65" |
| | | > |
| | | <el-row style="margin-top: 5px"> |
| | | <el-table :data="rbPayees" border highlight-current-row :summary-method="getSummaries" show-summary> |
| | | <el-table-column prop="orderno" slot="" label="序号" align="center" fixed width="65"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.orderno" placeholder="序号" /> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <!--主键、外键不展示--> |
| | | <el-table-column |
| | | prop="id" |
| | | slot="" |
| | | label="主键" |
| | | align="center" |
| | | fixed |
| | | width="95" |
| | | v-if="false" |
| | | > |
| | | <el-table-column prop="id" slot="" label="主键" align="center" fixed width="95" v-if="false"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.id" placeholder="id" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="rbid" |
| | | slot="" |
| | | label="外键" |
| | | align="center" |
| | | fixed |
| | | width="95" |
| | | v-if="false" |
| | | > |
| | | <el-table-column prop="rbid" slot="" label="外键" align="center" fixed width="95" v-if="false"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.rbid" placeholder="rbid" /> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="persontype" |
| | | slot="" |
| | | label="人员类别" |
| | | align="center" |
| | | fixed |
| | | width="130" |
| | | > |
| | | <el-table-column prop="persontype" slot="" label="人员类别" align="center" fixed width="130"> |
| | | <template slot-scope="scope"> |
| | | <el-select |
| | | v-model="scope.row.persontype" |
| | | value-key="value" |
| | | placeholder="人员类别" |
| | | @change="getPersons(scope.row)" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_travelexpensebelong" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.label" |
| | | ></el-option> |
| | | <el-select v-model="scope.row.persontype" value-key="value" placeholder="人员类别" |
| | | @change="getPersons(scope.row)"> |
| | | <el-option v-for="dict in dict.type.sys_travelexpensebelong" :key="dict.value" :label="dict.label" |
| | | :value="dict.label"></el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="personname" |
| | | slot="" |
| | | label="收款人" |
| | | align="center" |
| | | fixed |
| | | width="110" |
| | | > |
| | | <el-table-column prop="personname" slot="" label="收款人" align="center" fixed width="110"> |
| | | <template slot-scope="scope"> |
| | | <el-select |
| | | v-model="scope.row.personname" |
| | | clearable |
| | | filterable |
| | | allow-create |
| | | ref="getReportname" |
| | | default-first-option |
| | | placeholder="请选择" |
| | | @change="getAccountinfo2(scope.row, scope.row.persontype)" |
| | | > |
| | | <el-option |
| | | v-for="item in personsSel" |
| | | :key="item.reportNo" |
| | | :label="item.reportName" |
| | | :value="item.reportName" |
| | | > |
| | | <el-select v-model="scope.row.personname" clearable filterable allow-create ref="getReportname" |
| | | default-first-option placeholder="请选择" @change="getAccountinfo2(scope.row, scope.row.persontype)"> |
| | | <el-option v-for="item in personsSel" :key="item.reportNo" :label="item.reportName" |
| | | :value="item.reportName"> |
| | | </el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="bankname" |
| | | slot="" |
| | | label="银行名称" |
| | | align="center" |
| | | fixed |
| | | width="200" |
| | | > |
| | | <el-table-column prop="bankname" slot="" label="银行名称" align="center" fixed width="200"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.bankname" placeholder="银行名称" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="bankcardno" |
| | | slot="" |
| | | label="银行卡号" |
| | | align="center" |
| | | fixed |
| | | width="200" |
| | | > |
| | | <el-table-column prop="bankcardno" slot="" label="银行卡号" align="center" fixed width="200"> |
| | | <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="amount" |
| | | slot="" |
| | | label="打款金额" |
| | | align="center" |
| | | fixed |
| | | width="130" |
| | | > |
| | | <el-table-column prop="amount" slot="" label="打款金额" align="center" fixed width="130"> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.amount" placeholder="打款金额" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="remark" |
| | | slot="" |
| | | label="请款说明" |
| | | align="center" |
| | | fixed |
| | | > |
| | | <el-table-column prop="remark" slot="" label="请款说明" align="center" fixed> |
| | | <template slot-scope="scope"> |
| | | <el-input v-model="scope.row.remark" placeholder="说明" /> |
| | | </template> |
| | |
| | | </el-date-picker> |
| | | </template> |
| | | </el-table-column>--> |
| | | <el-table-column |
| | | label="操作" |
| | | align="center" |
| | | width="100" |
| | | v-if="dialogType == 'edit'" |
| | | > |
| | | <el-table-column label="操作" align="center" width="100" v-if="operationType == 'edit'"> |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | | type="text" |
| | | size="mini" |
| | | @click="addPayeeRow(scope.$index)" |
| | | >新增</el-button |
| | | > |
| | | <el-button |
| | | @click.native.prevent=" |
| | | <el-button type="text" size="mini" @click="addPayeeRow(scope.$index)">新增</el-button> |
| | | <el-button @click.native.prevent=" |
| | | deletePayeeRow(scope.$index, rbPayees, scope.row) |
| | | " |
| | | type="text" |
| | | size="small" |
| | | > |
| | | " type="text" size="small"> |
| | | 删除 |
| | | </el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-row> |
| | | |
| | | <el-row v-if="dialogType == 'detail' || dialogType == 'check'"> |
| | | <el-row style="margin-top: 25px; margin-bottom: 5px" v-if="operationType != 'edit'"> |
| | | <el-col :span="20">审核记录</el-col> |
| | | </el-row> |
| | | <el-row v-if="operationType != 'edit'"> |
| | | <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="150" prop="checkusername" /> |
| | | <el-table-column label="审核日期" align="center" width="200" 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> |
| | | <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="dialogType == '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-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row v-if="dialogType == 'check'"> |
| | | <el-row v-if="operationType == 'check'"> |
| | | <el-col :span="17"> |
| | | <el-form-item label="审核备注" align="left"> |
| | | <el-input v-model="checkObj.flowconclusion" placeholder="备注" /> |
| | |
| | | </el-row> |
| | | </el-form> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button |
| | | type="primary" |
| | | @click="submitForm" |
| | | v-if="dialogType == 'edit'" |
| | | >保 存</el-button |
| | | > |
| | | <el-button |
| | | type="primary" |
| | | @click="checksubmit" |
| | | v-if="dialogType == 'check'" |
| | | >提 交</el-button |
| | | > |
| | | <el-button type="primary" @click="submitForm" v-if="operationType == 'edit'">保 存</el-button> |
| | | <el-button type="primary" @click="checksubmit" v-if="operationType == 'check'">提 交</el-button> |
| | | <!--<el-button @click="cancel">退 出</el-button>--> |
| | | </div> |
| | | </div> |
| | |
| | | <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) => |
| | | <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="dialogType == 'detail'" |
| | | :on-error="handleUploadError" |
| | | :on-exceed="handleExceed" |
| | | :on-remove="remove" |
| | | accept="image/*,.pdf" |
| | | > |
| | | <el-button |
| | | :disabled="dialogType == 'detail'" |
| | | size="small" |
| | | type="primary" |
| | | >上传</el-button |
| | | > |
| | | " :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> |
| | | </div> |
| | | <!-- <div |
| | |
| | | defaultperson: {}, |
| | | fundflowList: [], |
| | | showApproveRecordDialog: false, |
| | | dialogType: "edit", |
| | | operationType: "edit", |
| | | |
| | | //上传发票文件路径 |
| | | uploadFileUrl: process.env.VUE_APP_BASE_API + "/common/upload", |
| | |
| | | this.reset(); |
| | | // this.open = true; |
| | | this.title = "新增差旅申请单"; |
| | | this.dialogType = "edit"; |
| | | this.operationType = "edit"; |
| | | this.fundflowList = []; |
| | | |
| | | console.log(this.title, this.defaultperson); |
| | |
| | | // query: { id: ids } |
| | | // }); |
| | | |
| | | this.dialogType = "edit"; |
| | | this.operationType = "edit"; |
| | | this.reset(); |
| | | // this.open = true; |
| | | this.title = "报销申请修改"; |
| | |
| | | |
| | | /** 查看按钮操作 */ |
| | | handleDetail(ids) { |
| | | this.dialogType = "detail"; |
| | | this.operationType = "detail"; |
| | | this.title = "报销申请详情"; |
| | | |
| | | this.reset(); |
| | |
| | | |
| | | /** 审核按钮操作 */ |
| | | handleCheck(ids) { |
| | | this.dialogType = "check"; |
| | | this.operationType = "check"; |
| | | this.title = "报销申请详情"; |
| | | |
| | | this.reset(); |