From d590567cd0a27825f0a948979c6d4da853ad5f16 Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期四, 14 九月 2023 10:55:49 +0800
Subject: [PATCH] 11
---
src/views/project/fund/applyDetail/index.vue | 636 +++++++++++++++++++++++++++++++++++++--------------------
1 files changed, 415 insertions(+), 221 deletions(-)
diff --git a/src/views/project/fund/applyDetail/index.vue b/src/views/project/fund/applyDetail/index.vue
index bdfcf0a..7ae279c 100644
--- a/src/views/project/fund/applyDetail/index.vue
+++ b/src/views/project/fund/applyDetail/index.vue
@@ -47,17 +47,31 @@
}}</el-radio>
</el-form-item>
</el-col>
- <el-col :span="5">
+ <!-- <el-col :span="5">
<el-form-item label="閾惰鍚嶇О" prop="bankname">
<el-input v-model="form.bankname" placeholder="璇疯緭鍏ラ摱琛屽悕绉�" />
- </el-form-item> </el-col><el-col :span="5">
+ </el-form-item> </el-col
+ ><el-col :span="5">
<el-form-item label="閾惰璐﹀彿" prop="bankcardno">
- <el-input v-model="form.bankcardno" placeholder="璇疯緭鍏ラ摱琛岃处鍙�" />
+ <el-input
+ v-model="form.bankcardno"
+ placeholder="璇疯緭鍏ラ摱琛岃处鍙�"
+ />
</el-form-item>
- </el-col>
+ </el-col> -->
<el-col :span="5">
<el-form-item label="鑱旂郴鐢佃瘽" prop="phone">
<el-input v-model="form.phone" placeholder="璇疯緭鍏ヨ仈绯荤數璇�" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="5">
+ <el-form-item label="鎹愮尞鑰�" prop="name">
+ <el-input :disabled="true" v-model="form.donorname" placeholder="璇疯緭鍏ユ崘鐚�呭鍚�" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="5">
+ <el-form-item label="鐢宠閲戦" prop="pretaxcost">
+ <el-input v-model="form.pretaxcost" placeholder="绋庡墠閲戦鍚堣" :disabled="true" />
</el-form-item>
</el-col>
</el-row>
@@ -69,11 +83,7 @@
</el-form-item>
</el-col>
-->
- <el-col :span="5">
- <el-form-item label="鐢宠閲戦" prop="pretaxcost">
- <el-input v-model="form.pretaxcost" placeholder="绋庡墠閲戦鍚堣" :disabled="true" />
- </el-form-item>
- </el-col>
+
<!--
<el-col :span="5">
<el-form-item label="搴旂即绋�" prop="taxcost" v-if="businessType == '1' || businessType == '2'">
@@ -90,11 +100,7 @@
<el-input v-model="form.remark" placeholder="鐢宠璇存槑" />
</el-form-item>
</el-col>
- <el-col :span="5">
- <el-form-item label="鎹愮尞鑰�" prop="name">
- <el-input :disabled="true" v-model="form.donorname" placeholder="璇疯緭鍏ユ崘鐚�呭鍚�" />
- </el-form-item>
- </el-col>
+
<!--
<el-col :span="5">
<el-form-item label="鐢宠鐘舵��" prop="recordstatus">
@@ -113,9 +119,15 @@
</el-button>
</el-col>
</el-row>
+ <el-row v-if="jurisdiction">
+ <!-- <el-alert title="褰撳墠涓烘煡鐪嬬姸鎬侊紝涓嶆敮鎸佷慨鏀瑰瓨鍌ㄣ��" type="warning">
+ </el-alert> -->
+ <el-alert title="褰撳墠涓烘煡鐪嬬姸鎬侊紝涓嶆敮鎸佷慨鏀瑰瓨鍌ㄣ��" type="warning" show-icon>
+ </el-alert>
+ </el-row>
<el-row>
- <el-table :data="rbDetails" v-loading="loading" border highlight-current-row>
- <el-table-column prop="orderno" align="center" label="搴忓彿" width="65">
+ <el-table :data="rbDetails" v-loading="loading" max-height="800" border highlight-current-row>
+ <el-table-column prop="orderno" align="center" label="搴忓彿" width="88">
<template slot-scope="scope">
<el-input v-model="scope.row.orderno" placeholder="搴忓彿" />
</template>
@@ -179,15 +191,20 @@
:value="dict.expense"></el-option>
</el-select>
-->
- <el-input v-model="scope.row.amount" placeholder="閲戦" @blur="val => { calculateTax(scope.row, 'A'); }" />
+ <el-input v-model="scope.row.amount" placeholder="閲戦" @blur="val => {
+ calculateTax(scope.row, 'A');
+ }
+ " />
</template>
</el-table-column>
<el-table-column prop="taxedamount" align="center" label="绋庡悗閲戦" width="120" v-if="(this.ismanager == true) &
(form.applytype == '1' || form.applytype == '2')
">
<template slot-scope="scope">
- <el-input v-model="scope.row.taxedamount" placeholder="绋庡悗閲戦"
- @blur="val => { calculateTax(scope.row, 'B'); }" />
+ <el-input v-model="scope.row.taxedamount" placeholder="绋庡悗閲戦" @blur="val => {
+ calculateTax(scope.row, 'B');
+ }
+ " />
</template>
</el-table-column>
<el-table-column prop="beneficiaryname" align="center" label="濮撳悕" width="120"
@@ -214,9 +231,32 @@
</el-select> -->
</template>
</el-table-column>
- <el-table-column prop="unitno" align="center" label="鍗曚綅鍚嶇О" width="250">
+ <el-table-column prop="unitno" align="center" label="鍗曚綅鍚嶇О" width="250" v-if="form.applytype != '4'">
<template slot-scope="scope">
<el-button type="primary" plain @click="ShowDetailDialog(scope, 'unit')">{{ scope.row.unitname
+ }}</el-button>
+ <!-- <el-select
+ v-model="scope.row.unitno"
+ placeholder="鍗曚綅"
+ clearable
+ filterable
+ allow-create
+ >
+ <el-option
+ v-for="(spec, index) in unitList"
+ :key="index"
+ :label="spec.organizationname"
+ :value="spec.organizationid"
+ ></el-option>
+ </el-select> -->
+ </template>
+ </el-table-column>
+ <el-table-column prop="unitno" align="center" label="鍗曚綅/涓汉" width="250" v-if="form.applytype == '4'">
+ <template slot-scope="scope">
+ <el-button type="primary" plain @click="ShowDetailDialog(scope, 'expert')">{{
+ experthear == "expert"
+ ? scope.row.unitname
+ : scope.row.beneficiaryname
}}</el-button>
<!-- <el-select
v-model="scope.row.unitno"
@@ -246,19 +286,20 @@
<el-input v-model="scope.row.idcardno" placeholder="韬唤璇佸彿" />
</template>
</el-table-column>
- <el-table-column prop="depositbank" align="center" label="寮�鎴烽摱琛�" width="200" v-if="form.applytype != '4'">
+ <el-table-column prop="depositbank" align="center" label="寮�鎴烽摱琛�" width="200">
+ <!-- v-if="form.applytype != '4'" -->
<template slot-scope="scope">
<el-input v-model="scope.row.depositbank" placeholder="寮�鎴烽摱琛�" />
</template>
</el-table-column>
- <el-table-column prop="bankcardno" align="center" label="閾惰甯愬彿" width="210" v-if="form.applytype != '4'">
+ <el-table-column prop="bankcardno" align="center" label="閾惰甯愬彿" width="210">
<template slot-scope="scope">
<el-input v-model="scope.row.bankcardno" placeholder="閾惰甯愬彿" />
</template>
</el-table-column>
- <el-table-column prop="remark" align="center" label="澶囨敞">
+ <el-table-column prop="remark" align="center" width="330" label="澶囨敞">
<template slot-scope="scope">
- <el-input v-model="scope.row.remark" placeholder="澶囨敞" />
+ <el-input type="textarea" :rows="2" v-model="scope.row.remark" placeholder="澶囨敞" />
</template>
</el-table-column>
<el-table-column fixed="right" align="center" label="鎿嶄綔" width="180">
@@ -326,17 +367,42 @@
<el-row>
<el-col :span="12">
<el-form-item label="璐圭敤鐢宠闄勪欢" align="left" prop="annexbankcard" v-if="businessType == 0">
- <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="fileList" multiple
- :limit="20" :headers="headers" :on-success="(response, file, fileList) =>
+ <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="fileListto"
+ :show-file-list="false" multiple drag :headers="headers" :on-success="(response, file, fileList) =>
uploadSccess(response, file, fileList)
" :on-preview="downFile" :disabled="operationType == 'detail'" :on-error="handleUploadError"
- :on-exceed="handleExceed" :on-remove="remove" accept="image/*,.pdf">
- <el-button :disabled="operationType == 'detail'" size="small" type="primary">涓婁紶绁ㄦ嵁</el-button>
+ :on-remove="remove" accept="image/*,.pdf">
+ <i class="el-icon-upload"></i>
+ <div class="el-upload__text">
+ 灏嗙エ鎹嫋鍒版澶勶紝鎴�
+ <em><el-button :disabled="operationType == 'detail'" size="small" type="primary">鐐瑰嚮涓婁紶</el-button></em>
+ </div>
</el-upload>
+ <el-table :data="fileListto" @row-click="downFile" style="width: 100%" height="400">
+ <el-table-column prop="name" :show-overflow-tooltip="true" label="鍚嶇О">
+ <template slot-scope="scope">
+ <i style="color:#409EFF" class=" el-icon-s-order" />{{
+ scope.row.name
+ }}
+ </template>
+ </el-table-column>
+
+ <el-table-column prop="name" width="180" :show-overflow-tooltip="true" label="鍔熻兘">
+ <template slot-scope="scope">
+ <el-button type="primary" size="mini"
+ @click.native.prevent.stop="deletedowfile(scope.row)">鍒犻櫎</el-button>
+ <el-button type="primary" size="mini"
+ @click.native.prevent.stop="moveupdowfile(scope.row)">涓婄Щ</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
</el-form-item>
</el-col>
</el-row>
- <el-row v-if="operationType == 'detail' || operationType == 'check'">
+ <el-row v-if="operationType == 'detail' ||
+ operationType == 'check' ||
+ operationType == 'update'
+ ">
<el-table :data="fundflowList" border>
<el-table-column label="瀹℃牳鏃ユ湡" align="center" width="160" prop="createTime" />
<el-table-column label="瀹℃牳浜�" align="center" width="120" prop="checkusername" />
@@ -377,11 +443,11 @@
</div>
</div>
- <el-dialog :visible.sync="showSelectionDialog" :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="selectionType == 'expert'">
+ <el-row v-if="businessType != 4">
+ <el-col :span="24" v-if="selectionType == 'expert' && businessType != 4">
<el-form-item label="璇烽�夋嫨涓撳淇℃伅锛�" prop="expertfrom">
<el-radio-group v-model="expertfrom" style="margin-bottom: 0">
<el-radio label="1">涓撳搴�</el-radio>
@@ -407,7 +473,7 @@
:value="spec.organizationid"></el-option>
</el-select>
</el-form-item>
- <el-form-item label="鍙戠エ鍗曚綅鍚嶇О" prop="unitno" label-width="120px" v-if="businessType == 3 || businessType == 4">
+ <el-form-item label="鍙戠エ鍗曚綅鍚嶇О" prop="unitno" label-width="120px" v-if="businessType == 3">
<el-select v-model="funddetailForm.unitno" placeholder="鍗曚綅鍚嶇О" clearable filterable allow-create
style="width: 100%">
<el-option v-for="(item, index) in feeUnitList" :key="index" :label="item.reportName"
@@ -416,7 +482,38 @@
</el-form-item>
</el-col>
</el-row>
- <el-row>
+
+ <el-row v-if="businessType == 4">
+ <el-col :span="24">
+ <el-form-item label="璇烽�夋嫨涓撳淇℃伅锛�" prop="experthear">
+ <el-radio-group @change="ShowDetailDialog(spocewl)" v-model="experthear" style="margin-bottom: 0">
+ <el-radio label="unit">浜哄憳閫夐」</el-radio>
+ <el-radio label="expert">鍗曚綅閫夐」</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ <el-col :span="24" v-if="experthear == 'unit'">
+ <el-form-item label="浜哄憳濮撳悕" prop="beneficiaryname" label-width="80px">
+ <el-select filterable allow-create ref="beneficiaryname" default-first-option @change="bbaaccss"
+ v-model="funddetailForm.beneficiaryname" placeholder="璇烽�夋嫨" style="width: 100%">
+ <el-option v-for="item in expertlist" :key="item.expertNo" :label="item.exportName"
+ :value="item.exportName">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="24" v-if="experthear == 'expert'">
+ <el-form-item label="鍗曚綅鍚嶇О" prop="unitno" label-width="120px">
+ <el-select v-model="funddetailForm.unitname" placeholder="鍗曚綅鍚嶇О" @change="bbaaccss" clearable filterable
+ allow-create style="width: 100%">
+ <el-option v-for="(spec, index) in unitList" :key="index" :label="spec.organizationname"
+ :value="spec.organizationname"></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ </el-row>
+
+ <el-row v-if="businessType != 4">
<el-col :span="12" v-if="expertfrom == '2'">
<el-form-item label="涓撳濮撳悕" prop="expertname" label-width="80px">
<el-input v-model="funddetailForm.expertname" placeholder="蹇呭~椤�" />
@@ -431,7 +528,7 @@
</el-form-item>
</el-col>
</el-row>
- <el-row>
+ <el-row v-if="businessType != 4">
<el-col :span="24" v-if="expertfrom == '2'">
<el-form-item label="韬唤璇佸彿" prop="expertidcardno" label-width="80px">
<el-input v-model="funddetailForm.expertidcardno" placeholder="蹇呭~椤�" />
@@ -450,7 +547,7 @@
</el-col>
</el-row>
-->
- <el-row>
+ <el-row v-if="businessType != 4">
<el-col :span="24" v-if="expertfrom == '2'">
<el-form-item label="鍗曚綅鍚嶇О" prop="expertunitno" label-width="80px">
<el-select v-model="funddetailForm.expertunitno" placeholder="鍗曚綅鍚嶇О" clearable filterable allow-create
@@ -459,7 +556,7 @@
:value="spec.organizationid"></el-option>
</el-select> </el-form-item></el-col>
</el-row>
- <el-row>
+ <el-row v-if="businessType != 4">
<el-col :span="24" v-if="expertfrom == '2'">
<el-form-item label="寮�鎴烽摱琛�" prop="expertdepositbank" label-width="80px">
<el-input v-model="funddetailForm.expertdepositbank" placeholder="蹇呭~椤�" />
@@ -477,17 +574,43 @@
<el-button type="primary" @click="ConfirmDetailDialog()">纭� 瀹�</el-button>
</span>
</el-dialog>
- <el-dialog :title="pdftitle" :visible.sync="pdfVisible" width="50%">
+ <el-dialog v-dialogDrags :modal="false" :close-on-click-modal="false" :title="pdftitle" :visible.sync="pdfVisible"
+ width="60%">
<div class="pdfimg">
<div class="box-pdf">
<div>
- <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="fileListto" multiple
- :limit="20" :headers="headers" :on-success="(response, file, fileList) =>
+ <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="fileListto"
+ :show-file-list="false" multiple drag :headers="headers" :on-success="(response, file, fileList) =>
uploadSccess(response, file, fileList)
" :on-preview="downFile" :disabled="operationType == 'detail'" :on-error="handleUploadError"
- :on-exceed="handleExceed" :on-remove="remove" accept="image/*,.pdf">
- <el-button :disabled="operationType == 'detail'" size="small" type="primary">涓婁紶绁ㄦ嵁</el-button>
+ :on-remove="remove" accept="image/*,.pdf">
+ <i class="el-icon-upload"></i>
+ <div class="el-upload__text">
+ 灏嗙エ鎹嫋鍒版澶勶紝鎴�
+ <em><el-button :disabled="operationType == 'detail'" size="small" type="primary">鐐瑰嚮涓婁紶</el-button></em>
+ </div>
+ <!-- <div class="el-upload__tip" slot="tip">
+ 鍙兘涓婁紶jpg/png鏂囦欢锛屼笖涓嶈秴杩�500kb
+ </div> -->
</el-upload>
+ <el-table :data="fileListto" @row-click="downFile" style="width: 100%" height="400">
+ <el-table-column prop="name" :show-overflow-tooltip="true" label="鍚嶇О">
+ <template slot-scope="scope">
+ <i style="color:#409EFF" class=" el-icon-s-order" />{{
+ scope.row.name
+ }}
+ </template>
+ </el-table-column>
+
+ <el-table-column prop="name" width="180" :show-overflow-tooltip="true" label="鍔熻兘">
+ <template slot-scope="scope">
+ <el-button type="primary" size="mini"
+ @click.native.prevent.stop="deletedowfile(scope.row)">鍒犻櫎</el-button>
+ <el-button type="primary" size="mini"
+ @click.native.prevent.stop="moveupdowfile(scope.row)">涓婄Щ</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
</div>
<!-- <div
class="pdftit"
@@ -528,7 +651,7 @@
listDonatebaseinfo,
getDonatebaseinfo
} from "@/api/project/donatebaseinfo";
-
+import debounce from "lodash/debounce";
import {
onelistFund,
listFund,
@@ -587,6 +710,8 @@
exportExternalperson
} from "@/api/project/externalperson";
+import { listItemexpense } from "@/api/project/itemexpense";
+
import { getUserProfile } from "@/api/system/user";
import Li_area_select from "@/components/Address";
import OrgSelecter from "@/views/project/components/orgselect";
@@ -598,7 +723,6 @@
Li_area_select,
OrgSelecter
},
-
name: "fundApply",
dicts: [
@@ -625,9 +749,12 @@
// 瀵煎嚭閬僵灞�
exportLoading: false,
usernamedata: "",
+ jurisdiction: false,
+
// 琛ㄥ崟鍙傛暟
form: {},
-
+ experthear: "",
+ spocewl: "",
//璐圭敤鐢宠琛ㄥ崟title
title: "",
//鐢宠鍗曠被鍨�
@@ -683,9 +810,15 @@
rowfeeItemTypes: [],
//璐圭敤璇存槑
- rowfeeblocks: [],
+<<<<<<< Updated upstream
+ feeBlocks: [],
+=======
+ feeBlockList: [],
+>>>>>>> Stashed changes
fundflowList: [],
+ // 闅忔満鏁�
+ randomnumber: "",
//涓撳/鍗曚綅閫夋嫨锛歟xpert/unit
selectionType: "",
@@ -796,6 +929,16 @@
startTime: ""
},
+ //鏈嶅姟璐圭敤鍙傛暟
+ expenseQueryParams: {
+ pageNum: 1,
+ pageSize: 10000,
+ itemid: null,
+ expense: null,
+ expensedescribe: null,
+ usestate: null,
+ },
+
//闄勪欢鍒楄〃
fileList: [],
fileListto: [],
@@ -819,48 +962,23 @@
Modifyornot: 0 //鏄惁淇敼
};
},
- // vue璺敱鎺у埗椤甸潰鍏抽棴鎻愮ず
- beforeRouteLeave(to, from, next) {
- if (
- JSON.stringify(this.form) == sessionStorage.getItem("apiform") &&
- JSON.stringify(this.rbDetails) == sessionStorage.getItem("apifunddetail")
- ) {
- console.log("cg1");
- sessionStorage.removeItem("apiform");
- sessionStorage.removeItem("apifunddetail");
- //灏辨槸涓婇潰鐨勭姸鎬� 濡傛灉鏄痶rue , 鍒欎笉璇㈤棶鏄惁淇濆瓨, 褰撶劧杩欎釜鏂规硶姣旇緝绗�, 澶у鍙互浣跨敤鏇翠紭闆呯殑鏂瑰紡
- next();
- } else {
- console.log("cg2");
- this.$confirm("绂诲紑椤甸潰 , 鏇存柊鏁版嵁灏嗕笉鍋氫繚瀛�, 璇风‘璁ゅ凡缁忎繚瀛�", "鎻愮ず", {
- confirmButtonText: "纭畾",
- cancelButtonText: "鍙栨秷",
- type: "warning"
- })
- .then(() => {
- sessionStorage.removeItem("apiform");
- sessionStorage.removeItem("apifunddetail");
- this.$router.go(-1);
- next();
- })
- .catch(() => {
- // alert("router")
- });
- }
- },
//鐩戝惉灞炴�� 绫讳技浜巇ata姒傚康
computed: {},
//鐩戞帶data涓殑鏁版嵁鍙樺寲
watch: {},
//鏂规硶闆嗗悎
methods: {
+ bbaaccss(val) {
+ console.log(val);
+ console.log(this.funddetailForm);
+ },
// 娴忚鍣ㄩ〉闈㈠叧闂垨鍒锋柊鎻愮ず
beforeunloadHandler(e) {
if (
(JSON.stringify(this.form) == sessionStorage.getItem("apiform") &&
JSON.stringify(this.rbDetails) ==
- sessionStorage.getItem("apifunddetail")) ||
+ sessionStorage.getItem("apifunddetail")) ||
!sessionStorage.getItem("apifunddetail")
) {
console.log(cg);
@@ -960,6 +1078,7 @@
} else if (this.businessType == "4") {
this.businessName = "鍔炲叕璐圭敤鎶ラ攢鍗�";
this.amountLabel = "閲戦";
+ this.getUnitList();
// this.getBaseInfoList();
}
@@ -976,6 +1095,7 @@
this.handleUpdate();
} else if (this.operationType == "detail") {
this.title = this.businessName + "鏌ョ湅";
+ this.jurisdiction = true;
this.handleDetail();
} else if (this.operationType == "check") {
this.title = this.businessName + "瀹℃牳";
@@ -1033,29 +1153,12 @@
if (this.rbDetails.length > 0) {
for (let m = 0; m < this.rbDetails.length; m++) {
this.rbDetails[m].itemlist = [];
- this.getFeeItems(m, this.rbDetails[m]);
+ this.getRowFeeItems(m, this.rbDetails[m]);
//鑾峰彇璐圭敤椤圭洰鐨勮缁嗕俊鎭�
- this.rbDetails[m].rowfeeblocks = [];
- this.rbDetails[m].rowfeeblocks.push({
- servicesscope: this.rbDetails[m].servicesscope,
- expensedescribe: this.rbDetails[m].servicesscopename,
- expense: this.rbDetails[m].expense,
- remark: this.rbDetails[m].servicesscopename
- });
- // getdetailsByItemId(this.rbDetails[m].itemid).then((res) => {
- // let fundmsg = res.data;
- // fundmsg.forEach((item) => {
- // this.rbDetails[m].rowfeeblocks.push({
- // servicesscope: item.id,
- // expensedescribe: item.expensedescribe,
- // expense: item.expense,
- // remark: item.expensedescribe,
- // });
- // });
- // });
+ this.rbDetails[m].rowfeeblocks = this.feeBlocks.filter(r => r.itemid == this.rbDetails[m].itemid);
}
- console.log("yeil");
+
sessionStorage.removeItem("apifunddetail");
sessionStorage.setItem(
"apifunddetail",
@@ -1065,6 +1168,14 @@
this.addRow(0);
}
});
+ let listFundflowparams = {
+ fundid: this.curId,
+ fundtype: 2
+ };
+ listFundflow(listFundflowparams).then(res => {
+ this.fundflowList = res.rows;
+ });
+ console.log(this.fundflowList);
});
},
@@ -1088,15 +1199,10 @@
this.rbDetails = res.data;
for (let m = 0; m < this.rbDetails.length; m++) {
this.rbDetails[m].itemlist = [];
- this.getFeeItems(m, this.rbDetails[m]);
+ this.getRowFeeItems(m, this.rbDetails[m]);
- this.rbDetails[m].rowfeeblocks = [];
- this.rbDetails[m].rowfeeblocks.push({
- servicesscope: this.rbDetails[m].servicesscope,
- expensedescribe: this.rbDetails[m].servicesscopename,
- expense: this.rbDetails[m].expense,
- remark: this.rbDetails[m].servicesscopename
- });
+ //鑾峰彇璐圭敤椤圭洰鐨勮缁嗕俊鎭�
+ this.rbDetails[m].rowfeeblocks = this.feeBlocks.filter(r => r.itemid == this.rbDetails[m].itemid);
}
if (this.rbDetails.length == 0) {
@@ -1115,7 +1221,7 @@
});
},
- /** 淇敼鎸夐挳鎿嶄綔 */
+ /** 鏌ョ湅鎸夐挳鎿嶄綔 */
handleCheck() {
this.isopen = 0;
this.reset();
@@ -1134,15 +1240,10 @@
this.rbDetails = res.data;
for (let m = 0; m < this.rbDetails.length; m++) {
this.rbDetails[m].itemlist = [];
- this.getFeeItems(m, this.rbDetails[m]);
+ this.getRowFeeItems(m, this.rbDetails[m]);
- this.rbDetails[m].rowfeeblocks = [];
- this.rbDetails[m].rowfeeblocks.push({
- servicesscope: this.rbDetails[m].servicesscope,
- expensedescribe: this.rbDetails[m].servicesscopename,
- expense: this.rbDetails[m].expense,
- remark: this.rbDetails[m].servicesscopename
- });
+ //鑾峰彇璐圭敤椤圭洰鐨勮缁嗕俊鎭�
+ this.rbDetails[m].rowfeeblocks = this.feeBlocks.filter(r => r.itemid == this.rbDetails[m].itemid);
}
if (this.rbDetails.length == 0) {
@@ -1217,9 +1318,24 @@
});
});
},
-
+ generateRandomString(length) {
+ const characters =
+ "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
+ let randomString = "";
+ for (let i = 0; i < length; i++) {
+ randomString += characters.charAt(
+ Math.floor(Math.random() * characters.length)
+ );
+ }
+ return randomString;
+ },
/** 鎻愪氦鎸夐挳 */
- submitForm() {
+ submitForm: debounce(function () {
+ if (!this.randomnumber) {
+ this.randomnumber = this.generateRandomString(9);
+ this.form.randomnumber = this.randomnumber;
+ }
+ console.log(this.randomnumber);
this.$refs["form"].validate(valid => {
if (valid) {
this.formData = this.form;
@@ -1385,10 +1501,11 @@
isNaN(parseFloat(tempDetail.taxamount)) ||
parseFloat(tempDetail.taxamount) == 0
) {
- tempDetail.taxedamount = tempDetail.amount;
+ tempDetail.taxedamount = parseFloat(tempDetail.amount);
} else {
tempDetail.taxedamount =
- tempDetail.amount + tempDetail.taxamount;
+ parseFloat(tempDetail.amount) +
+ parseFloat(tempDetail.taxamount);
}
}
}
@@ -1455,7 +1572,7 @@
this.$router.go(-1);
}
});
- },
+ }, 500),
//瀹℃壒鎻愪氦
checksubmit() {
@@ -1578,13 +1695,16 @@
//鑾峰彇璐圭敤鏈烘瀯鍒楄〃
getFeeUnitList() {
+ console.log("鍗曚綅");
listReportname("org").then(res => {
this.feeUnitList = res.data;
});
+ console.log(this.feeUnitList);
},
//鑾峰彇鍖荤枟鏈烘瀯鍒楄〃
getUnitList() {
+ console.log("鍖荤枟鏈烘瀯");
listOrganization(3).then(response => {
for (let i = 0; i < response.rows.length; i++) {
this.unitList.push({
@@ -1606,11 +1726,15 @@
});
},
- //鑾峰彇璐圭敤绫诲瀷
+ //鑾峰彇鏈嶅姟璐圭敤绫诲瀷銆佹湇鍔¢」鐩�佹湇鍔¤鏄�
getFeeTypes() {
+ //鑾峰彇鏈嶅姟璐圭敤绫诲瀷銆佹湇鍔¢」鐩�
getFundTypeAll(this.businessType).then(res => {
let dataList = res.data;
+ //鑾峰彇鏈嶅姟璐圭敤鏈嶅姟椤圭洰
this.feeItemTypes = dataList;
+
+ //鑾峰彇鏈嶅姟璐圭敤绫诲瀷
this.rowfeeItemTypes = [];
for (let m = 0; m < dataList.length; m++) {
this.rowfeeItemTypes.push({
@@ -1621,18 +1745,30 @@
});
}
});
+
+ //鑾峰彇鏈嶅姟璐圭敤璇存槑鍒楄〃
+ if (this.businessType == '1' || this.businessType == '2') {
+ this.loading = true;
+ listItemexpense(this.expenseQueryParams).then(response => {
+ response.rows.forEach(item => {
+ this.feeBlocks.push({
+ servicesscope: JSON.stringify(item.id),
+ itemid: item.itemid,
+ expense: item.expense,
+ expensedescribe: item.expensedescribe,
+ remark: item.expensedescribe
+ });
+ });
+ this.loading = false;
+ });
+ }
},
- getFeeItems(rowindex, row) {
+ //鑾峰彇鏈嶅姟椤圭洰
+ getRowFeeItems(rowindex, row) {
let list = this.feeItemTypes.filter(r => r.itemType == row.applytype);
row.itemlist = list[0].itemDetails;
this.$set(this.rbDetails, rowindex, row);
- //this.loading = true;
- // getItemNames(row.applytype).then((res) => {
- // this.loading = false;
- // row.itemlist = res.data;
- // this.$set(this.rbDetails, rowindex, row);
- // });
},
//鍔犺浇鏈嶅姟椤圭洰
@@ -1641,13 +1777,6 @@
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();
- // });
},
//鑾峰彇璐圭敤椤圭洰鐨勫娉ㄤ俊鎭�
@@ -1661,21 +1790,20 @@
row.taxedamount = item.expense;
//璁$畻绋庡墠閲戦
- this.calculateTax(row, "B");
-
+ // this.calculateTax(row, "B");
} else {
row.amount = item.expense;
row.taxamount = 0.0;
row.taxedamount = 0.0;
//璁$畻绋庡悗閲戦
- this.calculateTax(row, "A");
+ // this.calculateTax(row, "A");
}
- this.form.serviceFunddetails = 0;
- this.rbDetails.map(item => {
- this.form.serviceFunddetails += item.amount;
- });
+ // this.form.serviceFunddetails = 0;
+ // this.rbDetails.map(item => {
+ // this.form.serviceFunddetails += item.amount;
+ // });
}
});
},
@@ -1703,22 +1831,28 @@
}
//鑾峰彇璐圭敤椤圭洰鐨勮缁嗕俊鎭�
- getdetailsByItemId(row.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;
+ if (this.businessType == "1") {
row.servicesscope = null;
row.servicesscopename = "";
- });
+ row.amount = 0.0;
+ row.taxamount = 0.0;
+ row.taxedamount = 0.0;
+
+ row.rowfeeblocks = this.feeBlocks.filter(r => r.itemid == row.itemid);
+ if (row.rowfeeblocks.length == 1) {
+ row.servicesscope = row.rowfeeblocks[0].servicesscope;
+ row.servicesscopename = row.rowfeeblocks[0].expensedescribe;
+ if (row.servicesscopename.includes("绋庡悗")) {
+ row.amount = 0.0;
+ row.taxamount = 0.0;
+ row.taxedamount = row.rowfeeblocks[0].expense;
+ } else {
+ row.amount = row.rowfeeblocks[0].expense;
+ row.taxamount = 0.0;
+ row.taxedamount = 0.0;
+ }
+ }
+ }
},
//绛涙煡鍑哄搴旂殑璐圭敤椤圭洰
@@ -1742,9 +1876,10 @@
});
}
},
+
//鍚堣璐圭敤
selectamount(row) {
- this.rowfeeblocks.forEach((item, i) => {
+ this.feeBlockList.forEach((item, i) => {
if (item.expense === row.amount) {
row.remark = item.expensedescribe;
}
@@ -1771,7 +1906,6 @@
});
},
-
//璁$畻涓◣锛歵ype(A:宸茬煡绋庡墠閲戦锛岃绠楃◣鍚庨噾棰濓紱B锛氬凡鐭ョ◣鍚庨噾棰濓紝璁$畻绋庡墠閲戦)
calculateTax(row, type) {
//if (isNaN(parseFloat(tempDetail.taxedamount)))
@@ -1779,20 +1913,19 @@
this.taxParam.beneficiaryNo = row.beneficiaryno;
this.taxParam.startTime = this.form.createTime.substring(0, 10);
- if (type == 'A') {
+ if (type == "A") {
// 璁$畻涓◣銆佺◣鍚庨噾棰�
this.taxParam.money = row.amount.toString();
- getTaxByBeneFiciaryNo(this.taxParam).then((res) => {
+ getTaxByBeneFiciaryNo(this.taxParam).then(res => {
if (res.code == 200) {
row.taxamount = res.data;
row.taxedamount = row.amount - row.taxamount;
- this.rbDetails[k] = row;
}
});
} else {
// 璁$畻绋庡墠銆佷釜绋庨噾棰�
this.taxParam.money = row.taxedamount.toString();
- getTaxBeforeByAfterMoney(this.taxParam).then((res) => {
+ getTaxBeforeByAfterMoney(this.taxParam).then(res => {
if (res.code == 200) {
row.taxamount = res.data.nowTax;
row.amount = parseFloat(res.data.nowTaxBeforeMoney);
@@ -1833,23 +1966,27 @@
servicesscopename: ""
};
- //鑾峰彇鏀惰垂椤圭洰鐨勮鏄庝俊鎭�
- getdetailsByItemId(rowData.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
- });
- });
+ //鑾峰彇鏈嶅姟璇存槑淇℃伅
+ rowData.servicesscope = null;
+ rowData.servicesscopename = "";
+ rowData.amount = 0.0;
+ rowData.taxamount = 0.0;
+ rowData.taxedamount = 0.0;
- rowData.rowfeeblocks = rowfeeblocks;
- rowData.servicesscope = null;
- rowData.servicesscopename = "";
- });
+ rowData.rowfeeblocks = this.feeBlocks.filter(r => r.itemid == rowData.itemid);
+ if (rowData.rowfeeblocks.length == 1) {
+ rowData.servicesscope = rowData.rowfeeblocks[0].servicesscope;
+ rowData.servicesscopename = rowData.rowfeeblocks[0].expensedescribe;
+ if (rowData.servicesscopename.includes("绋庡悗")) {
+ rowData.amount = 0.0;
+ rowData.taxamount = 0.0;
+ rowData.taxedamount = rowData.rowfeeblocks[0].expense;
+ } else {
+ rowData.amount = rowData.rowfeeblocks[0].expense;
+ rowData.taxamount = 0.0;
+ rowData.taxedamount = 0.0;
+ }
+ }
listAdd.push(rowData);
}
@@ -1857,16 +1994,6 @@
}
this.rbDetails = listAdd;
this.loading = false;
- // let Outerarr = this.rbDetails;
- // Outerarr.map((res) => {
- // let onelist = this.rowfeeItemTypes;
- // onelist.map((item) => {
- // //绗竴灞備笉鐩哥瓑鏃讹紱
- // if (res.applytype !== item.itemType) {
- // this.addRow();
- // }
- // });
- // });
},
unsave() {
@@ -1875,6 +2002,10 @@
},
// 鎺ュ彈鎻愰啋绔嬪埢淇濆瓨
Savenow() {
+ if (!this.randomnumber) {
+ this.randomnumber = this.generateRandomString(9);
+ this.form.randomnumber = this.randomnumber;
+ }
this.Savereminder = false;
this.Reminderquantity = 0;
this.totalquantity = 0;
@@ -1991,7 +2122,7 @@
}
});
}
-
+
// 璁$畻绋庡墠銆佺◣璐广�佺◣鍚庨噾棰�
if (tempDetail.amount == undefined || tempDetail.amount == null || tempDetail.amount == 0 || tempDetail.amount == '') {
//鑾峰彇鍙傛暟
@@ -2043,10 +2174,11 @@
isNaN(parseFloat(tempDetail.taxamount)) ||
parseFloat(tempDetail.taxamount) == 0
) {
- tempDetail.taxedamount = tempDetail.amount;
+ tempDetail.taxedamount = parseFloat(tempDetail.amount);
} else {
tempDetail.taxedamount =
- tempDetail.amount + tempDetail.taxamount;
+ parseFloat(tempDetail.amount) +
+ parseFloat(tempDetail.taxamount);
}
}
}
@@ -2159,10 +2291,10 @@
rowfeeblocks: [],
annexfiles: null
};
- if (this.Reminderquantity >= 5) {
- this.Savereminder = true;
- return;
- }
+ // if (this.Reminderquantity >= 5) {
+ // this.Savereminder = true;
+ // return;
+ // }
if (rowIndex == undefined || rowIndex == null || rowIndex < 0) {
this.rbDetails.push(rowData);
} else {
@@ -2316,14 +2448,14 @@
handleUploadError() { },
/** 涓嬭浇鏂囦欢鎸夐挳鎿嶄綔 */
- downFile(item) {
- const url = process.env.VUE_APP_BASE_API + item.url;
- var a = document.createElement("a");
- var event = new MouseEvent("click");
- a.download = item.name;
- a.href = url;
- a.dispatchEvent(event);
- },
+ // downFile(item) {
+ // const url = process.env.VUE_APP_BASE_API + item.url;
+ // var a = document.createElement("a");
+ // var event = new MouseEvent("click");
+ // a.download = item.name;
+ // a.href = url;
+ // a.dispatchEvent(event);
+ // },
// remove(file) {
// this.fileList.splice(this.fileList.indexOf(file), 1)
@@ -2355,10 +2487,15 @@
//鑾峰彇绁ㄦ嵁淇℃伅浣嶇疆
if (response.code == 200) {
this.form.filename = file.raw.name;
-
+ this.previewpdf = true;
this.$modal.msgSuccess(response.msg);
- // this.fileListto.push({ name: file.name, url: response.fileName });
- this.fileListto.push({ name: file.name, url: response.url });
+ this.fileListto.push({ name: file.name, url: response.fileName });
+ // this.fileListto.push({ name: file.name, url: response.url });
+ this.pdfimgsrcList.push(
+ this.Networkheader + "/prod-api" + response.fileName
+ );
+ this.pdfimg = this.Networkheader + "/prod-api" + response.fileName;
+
this.rbDetails[this.atpresent].annexfilesList = this.fileListto;
} else {
console.log(response.msg);
@@ -2370,11 +2507,15 @@
this.atpresent = index;
this.pdfVisible = true;
if (this.rbDetails[index].annexfilesList) {
+ this.previewpdf = true;
this.fileListto = this.rbDetails[index].annexfilesList;
- // this.pdfimg = this.Networkheader + "/prod-api" + this.fileListto[0].url;
- this.pdfimg = this.fileListto[0].url;
+ this.pdfimg = this.Networkheader + "/prod-api" + this.fileListto[0].url;
+ // this.pdfimg = this.fileListto[0].url;
this.pdfimgsrcList = [];
- this.pdfimgsrcList.push(this.pdfimg);
+ this.fileListto.forEach(item => {
+ this.pdfimgsrcList.push(this.Networkheader + "/prod-api" + item.url);
+ });
+ console.log(this.pdfimgsrcList);
console.log(this.pdfimg);
} else {
this.fileListto = [];
@@ -2382,8 +2523,10 @@
this.pdftitle = "";
}
},
+
// 鐐瑰嚮宸蹭笂浼犳枃浠�
downFile(item) {
+ console.log(item);
this.pdftitle = item.name;
let name = item.name.split(".");
if (name[1] == "pdf") {
@@ -2394,11 +2537,15 @@
this.previewpdf = true;
if (item.url) {
this.pdfimg = this.Networkheader + "/prod-api" + item.url;
- this.pdfimgsrcList = [];
- this.pdfimgsrcList.push(this.pdfimg);
+
+ // if (!this.pdfimgsrcList.includes(this.pdfimg)) {
+ // this.pdfimgsrcList.push(this.pdfimg);
+ // console.log("鍔犲叆");
+ // }
console.log(this.pdfimg);
+ console.log(this.pdfimgsrcList, "imglist");
} else {
- this.pdfimg = this.Networkheader + "/prod-api" + item.response.url;
+ this.pdfimg = this.Networkheader + "/prod-api" + item.url;
}
} else {
this.hintitle = "褰撳墠鏂囦欢鏆備笉鏀寔棰勮";
@@ -2406,10 +2553,43 @@
this.previewpdf = false;
}
},
-
+ getIndexInArray(arr, obj) {
+ return arr.indexOf(obj);
+ },
+ // 鐐瑰嚮鍒犻櫎
+ deletedowfile(row) {
+ console.log(this.fileListto);
+ console.log(row);
+ const indexlist = this.getIndexInArray(
+ this.pdfimgsrcList,
+ this.Networkheader + "/prod-api" + row.url
+ );
+ console.log(indexlist);
+ this.pdfimgsrcList.splice(indexlist, 1);
+ const index = this.getIndexInArray(this.fileListto, row);
+ this.fileListto.splice(index, 1);
+ console.log(index);
+ console.log(this.pdfimgsrcList);
+ },
+ // 鐐瑰嚮涓婄Щ
+ moveupdowfile(row) {
+ const index = this.getIndexInArray(this.fileListto, row);
+ const item = this.fileListto.splice(index, 1)[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
+ this.fileListto.splice(index - 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
+ },
//涓撳/鍖荤枟鏈烘瀯/璐圭敤鎶ラ攢鏈烘瀯閫夋嫨
ShowDetailDialog(spoce, showType) {
+ this.spocewl = spoce;
+ console.log(spoce);
this.selectionType = showType;
+ if (this.businessType == 4 || !showType) {
+ this.selectionType = this.experthear;
+ console.log(this.selectionType);
+ }
+ // if (!showType) {
+ // this.selectionType = this.experthear;
+
+ // }
this.expertfrom = "1";
this.funddetailForm.index = spoce.$index;
@@ -2430,13 +2610,16 @@
//涓撳/鍖荤枟鏈烘瀯/璐圭敤鎶ラ攢鏈烘瀯閫夋嫨
ConfirmDetailDialog() {
+ console.log(this.funddetailForm.tempExpertName);
+ console.log(this.funddetailForm);
let tempIndex = this.funddetailForm.index;
let tempExpertName = this.funddetailForm.beneficiaryname;
let tempUnitname = this.funddetailForm.unitname;
let singleDetail = this.rbDetails[tempIndex];
+ console.log(tempExpertName);
- if (this.selectionType == "expert") {
- if (this.expertfrom == "1") {
+ if (this.selectionType == "expert" || this.businessType == 4) {
+ if (this.expertfrom == "1" || this.experthear == "unit") {
//浠庝笓瀹跺垪琛ㄨ幏鍙栦俊鎭�
this.personlist.map(res => {
if (tempExpertName == res.username) {
@@ -2551,6 +2734,11 @@
}
}
+ // if (this.experthear == "unit") {
+ // singleDetail.unitname = "";
+ // }
+ singleDetail.unitname = this.funddetailForm.unitname;
+ console.log(this.funddetailForm);
this.rbDetails[tempIndex] = singleDetail;
this.showSelectionDialog = false;
}
@@ -2562,6 +2750,7 @@
this.Getnetworkheader();
this.getroute();
this.getExternalList();
+ this.getFeeUnitList();
},
//鐢熷懡鍛ㄦ湡 - 鎸傝浇瀹屾垚锛堝彲浠ヨ闂瓺OM鍏冪礌锛�
@@ -2577,13 +2766,13 @@
// this.getFeeUnitList();
},
- beforeCreate() {}, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠
- beforeMount() {}, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠
- beforeUpdate() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠
- updated() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗
- beforeDestroy() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓�
- destroyed() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴�
- activated() {} //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂
+ beforeCreate() { }, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠
+ beforeMount() { }, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠
+ beforeUpdate() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠
+ updated() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗
+ beforeDestroy() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓�
+ destroyed() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴�
+ activated() { } //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂
};
</script>
@@ -2622,7 +2811,7 @@
height: 600px;
.box-pdf {
- width: 200px;
+ width: 400px;
padding-top: 20px;
margin-right: 30px;
border: 1px solid #dcdfe6;
@@ -2661,4 +2850,9 @@
line-height: 36px;
text-align: center;
}
+
+::v-deep .el-alert__title {
+ font-size: 20px;
+ line-height: 20px;
+}
</style>
--
Gitblit v1.9.3