From 3873d3c350c8c1edd7bfdc8afe08c9e78f56d968 Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期四, 22 十月 2026 23:24:20 +0800
Subject: [PATCH] 调整费用申请模式
---
src/views/project/fund/expertFeeApply/index.vue | 674 +++++++++++++++++++++++++++++++++++--------------------
1 files changed, 423 insertions(+), 251 deletions(-)
diff --git a/src/views/project/fund/expertFeeApply/index.vue b/src/views/project/fund/expertFeeApply/index.vue
index 4776252..0cd2053 100644
--- a/src/views/project/fund/expertFeeApply/index.vue
+++ b/src/views/project/fund/expertFeeApply/index.vue
@@ -1,124 +1,67 @@
<!-- -->
<template>
<div class="app-container">
- <el-form
- :model="queryParams"
- ref="queryForm"
- :inline="true"
- label-width="70px"
- >
- <el-row align="left">
- <el-col :span="6">
- <el-form-item label="濮撳悕" prop="name">
- <el-input
- v-model="queryParams.name"
- placeholder="璇疯緭鍏ュ鍚�"
- clearable
- size="small"
- @keyup.enter.native="handleQuery"
- />
- </el-form-item>
- </el-col>
- <el-col :span="6">
- <el-form-item label="鎹愮尞杩涘害" prop="recordstate">
- <el-select
- v-model="queryParams.recordstate"
- placeholder="璇烽�夋嫨璁板綍鐘舵��"
- clearable
- size="small"
- >
- <el-option
- v-for="dict in dict.type.sys_DonationStatus"
- :key="dict.value"
- :label="dict.label"
- :value="dict.value"
- />
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="6">
- <el-form-item label="鎹愮尞鑰�" prop="name">
- <el-input
- v-model="queryParams.donorname"
- placeholder="璇疯緭鍏ユ崘鐚�呭鍚�"
- clearable
- size="small"
- @keyup.enter.native="handleQuery"
- />
- </el-form-item>
- </el-col>
- <el-col :span="6">
- <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-col>
- </el-row>
- </el-form>
<el-row>
- <el-col :span="6">
- <el-card shadow="never">
- <!-- 鎹愮尞妗堜緥鍒楄〃 -->
- <el-row>
- <el-col :span="10">
- <el-row type="flex" :gutter="10" align="right" class="mb8">
- </el-row>
- </el-col>
- </el-row>
- <el-table
- v-loading="loading"
- highlight-current-row
- :data="donatebaseinfoList"
- @row-click="selectDonotor"
- >
- <!-- <el-table-column label="鎹愮尞缂栧彿" align="center" prop="donorno" /> -->
- <el-table-column label="鎹愮尞杩涘害" align="center" prop="recordstate">
- <template slot-scope="scope">
- <dict-tag
- :options="dict.type.sys_DonationStatus"
- :value="scope.row.recordstate"
- :key="dict.value"
- />
- <!-- :label="dict.label" -->
- </template>
- </el-table-column>
- <el-table-column label="濮撳悕" align="center" prop="name" />
- </el-table>
- <pagination
- v-show="total > 0"
- :total="total"
- small
- :page.sync="queryParams.pageNum"
- :limit.sync="queryParams.pageSize"
- @pagination="getBaseInfoList"
- />
- </el-card>
- </el-col>
- <el-col :span="18">
+ <el-col :span="24">
<el-card shadow="naver">
<el-form ref="infoform" label-width="100px">
- <el-row :gutter="4" align="right" class="mb8">
- <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 :span="9">
- <el-form-item label="濮撳悕">
- <el-input v-model="curCase.name" :disabled="true"></el-input>
- </el-form-item>
- </el-col>
- <el-col> </el-col>
- </el-row>
+ <!-- 鎶ラ攢鍗曠瓫閫夛細鎹愮尞鑰呫�佸鎵圭姸鎬� -->
+ <el-form
+ class="opo-query-form"
+ :model="fundQueryParam"
+ ref="fundQueryForm"
+ :inline="true"
+ label-width="82px"
+ >
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="鎹愮尞鑰�" prop="donorname">
+ <el-input
+ v-model="fundQueryParam.donorname"
+ placeholder="璇疯緭鍏ユ崘鐚�呭鍚�"
+ clearable
+ size="small"
+ @keyup.enter.native="handleQueryFund"
+ />
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="瀹℃壒鐘舵��" prop="recordstatus">
+ <el-select
+ v-model="fundQueryParam.recordstatus"
+ placeholder="璇烽�夋嫨瀹℃壒鐘舵��"
+ clearable
+ size="small"
+ style="width: 100%"
+ >
+ <el-option
+ v-for="dict in dict.type.sys_recordstatus"
+ :key="dict.value"
+ :label="dict.label"
+ :value="Number(dict.value)"
+ />
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label-width="10px">
+ <el-button
+ type="primary"
+ icon="el-icon-search"
+ size="small"
+ @click="handleQueryFund"
+ >鎼滅储</el-button
+ >
+ <el-button
+ icon="el-icon-refresh"
+ size="small"
+ @click="resetFundQuery"
+ >閲嶇疆</el-button
+ >
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
@@ -137,16 +80,17 @@
v-loading="loading"
border
:data="donateconsolationfundList"
+ :row-class-name="rowClassName"
>
<el-table-column
label="鐢宠鏃ユ湡"
align="center"
- prop="createTime"
+ prop="applyTime"
width="180px"
>
<template slot-scope="scope">
<span>{{
- parseTime(scope.row.createTime, "{y}-{m}-{d}")
+ parseTime(scope.row.applyTime, "{y}-{m}-{d}")
}}</span>
</template>
</el-table-column>
@@ -156,11 +100,17 @@
prop="username"
width="120px"
/>
- <el-table-column
+ <!-- <el-table-column
label="鐢宠閲戦"
align="center"
prop="pretaxcost"
width="200px"
+ /> -->
+ <el-table-column
+ label="鎹愮尞浜�"
+ align="center"
+ prop="donorname"
+ width="120px"
/>
<el-table-column
label="缁勯暱"
@@ -186,10 +136,23 @@
/>
</template>
</el-table-column>
- <!--
- <el-table-column label="鐢宠閲戦" align="center" prop="amountrequested" width="120px" />
+ <el-table-column
+ label="鏉愭枡棰勫鐘舵��"
+ width="140"
+ align="center"
+ prop="checkstatus"
+ >
+ <template slot-scope="scope">
+ <dict-tag
+ :options="dict.type.sys_stage_type"
+ :value="scope.row.checkstatus"
+ />
+ </template>
+ </el-table-column>
+ <!--
+ <el-table-column label="鐢宠閲戦" align="center" prop="amountrequested" width="120px" />
<el-table-column label="鑱旂郴鐢佃瘽" align="center" prop="phone" width="150px" />
- <el-table-column label="宸ヤ綔鍗曚綅" align="center" prop="unitname" width="220px" />
+ <el-table-column label="宸ヤ綔鍗曚綅" align="center" prop="unitname" width="220px" />
-->
<el-table-column
label="鎿嶄綔"
@@ -236,9 +199,10 @@
"
size="mini"
type="text"
- icon="el-icon-delete"
@click="handleDelete(scope.row)"
- >鍒犻櫎</el-button
+ ><span class="button-delete"
+ ><i class="el-icon-delete"></i>鍒犻櫎</span
+ ></el-button
>
<!-- v-hasPermi="['project:expretfund:delete']" -->
<!-- <el-button
@@ -251,12 +215,142 @@
<!-- v-hasPermi="['project:expretfund:download']" -->
</template>
</el-table-column>
+ <!-- 2026-10-22锛氭寜瑕佹眰闅愯棌銆屽姛鑳姐�嶅垪锛堢嚎涓嬫姤閿�锛夛紝闇�瑕佹椂鍙栨秷娉ㄩ噴鍗冲彲鎭㈠ -->
+ <!--
+ <el-table-column
+ fixed="right"
+ align="center"
+ width="120"
+ label="鍔熻兘"
+ >
+ <template slot-scope="scope">
+ <el-button size="mini" v-if="scope.row.uploadStates == 1"
+ >绾夸笅宸叉姤閿�</el-button
+ >
+ <el-button
+ size="mini"
+ type="success"
+ v-else-if="scope.row.uploadStates == 0"
+ @click="Dooffline(scope.$index, scope.row)"
+ >绾夸笅鎶ラ攢</el-button
+ >
+ </template>
+ </el-table-column>
+ -->
</el-table>
+ <!-- 鏈�夋嫨妗堜緥鏃跺睍绀鸿鐧诲綍浜哄叏閮ㄤ笓瀹跺姵鍔″崟鎹紝瓒呰繃涓�椤靛彲鐢ㄥ垎椤电炕鐪� -->
+ <pagination
+ v-show="fundTotal > 0"
+ :total="fundTotal"
+ small
+ :page.sync="fundQueryParam.pageNum"
+ :limit.sync="fundQueryParam.pageSize"
+ @pagination="listFundData"
+ />
</el-row>
</el-form>
</el-card>
</el-col>
</el-row>
+
+ <!-- 鏂板鐢宠鍗曞墠鍏堥�夋嫨鎹愮尞妗堜緥锛堝師宸︿晶妗堜緥鍒楄〃绉诲埌杩欓噷锛� -->
+ <el-dialog
+ title="閫夋嫨鎹愮尞妗堜緥"
+ :visible.sync="caseDialogVisible"
+ width="760px"
+ append-to-body
+ >
+ <el-form
+ class="opo-query-form"
+ :model="queryParams"
+ ref="queryForm"
+ :inline="true"
+ label-width="70px"
+ >
+ <el-row>
+ <el-col :span="8">
+ <el-form-item label="濮撳悕" prop="name">
+ <el-input
+ v-model="queryParams.name"
+ placeholder="璇疯緭鍏ュ鍚�"
+ clearable
+ size="small"
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鎹愮尞杩涘害" prop="recordstate">
+ <el-select
+ v-model="queryParams.recordstate"
+ placeholder="璇烽�夋嫨璁板綍鐘舵��"
+ clearable
+ size="small"
+ style="width: 100%"
+ >
+ <el-option
+ v-for="dict in dict.type.sys_DonationStatus"
+ :key="dict.value"
+ :label="dict.label"
+ :value="dict.value"
+ />
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label-width="10px">
+ <el-button
+ type="primary"
+ icon="el-icon-search"
+ size="small"
+ @click="handleQuery"
+ >鎼滅储</el-button
+ >
+ <el-button icon="el-icon-refresh" size="small" @click="resetQuery"
+ >閲嶇疆</el-button
+ >
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <el-table
+ ref="caseTable"
+ v-loading="loading"
+ border
+ height="380"
+ highlight-current-row
+ :data="donatebaseinfoList"
+ @row-click="selectDonotor"
+ >
+ <el-table-column label="鎹愮尞杩涘害" align="center" prop="recordstate">
+ <template slot-scope="scope">
+ <dict-tag
+ :options="dict.type.sys_DonationStatus"
+ :value="scope.row.recordstate"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column label="濮撳悕" align="center" prop="name" />
+ <el-table-column label="鎿嶄綔" align="center" width="90">
+ <template slot-scope="scope">
+ <el-button type="text" size="mini" @click="selectDonotor(scope.row)"
+ >閫夋嫨</el-button
+ >
+ </template>
+ </el-table-column>
+ </el-table>
+ <pagination
+ v-show="total > 0"
+ :total="total"
+ small
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getBaseInfoList"
+ />
+ <div slot="footer" class="dialog-footer">
+ <el-button @click="caseDialogVisible = false">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
<!-- 娣诲姞鎴栦慨鏀硅垂鐢ㄧ敵璇峰崟 -->
<el-dialog
@@ -276,12 +370,12 @@
>
<el-row style="text-align: left">
<el-col :span="5">
- <el-form-item label="鐢宠鏃ユ湡" prop="createTime">
+ <el-form-item label="鐢宠鏃ユ湡" prop="applyTime">
<el-date-picker
clearable
style="width: 100%"
- v-model="form.createTime"
- type="date"
+ v-model="form.applyTime"
+ type="date" format="yyyy-MM-dd"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="鐢宠鏃ユ湡"
>
@@ -389,10 +483,10 @@
</el-form-item>
</el-col>-->
<el-col :span="5">
- <el-form-item label="鎹愮尞鑰�" prop="name">
+ <el-form-item label="鎹愮尞鑰�" prop="donorname">
<el-input
:disabled="true"
- v-model="form.name"
+ v-model="form.donorname"
placeholder="璇疯緭鍏ユ崘鐚�呭鍚�"
/>
</el-form-item>
@@ -741,21 +835,23 @@
type="text"
size="small"
>
- 鍒犻櫎
+ <span class="button-delete"
+ ><i class="el-icon-delete"></i>鍒犻櫎</span
+ >
</el-button>
</template>
</el-table-column>
</el-table>
</el-row>
<!--
- <el-row>
+ <el-row>
<el-col :span="7">
<el-form-item label="棰勬敮閲戦" prop="prepaidamount">
<el-input v-model="form.prepaidamount" placeholder="鐢宠閲戦" />
</el-form-item>
- </el-col>
- </el-row>
- <el-row>
+ </el-col>
+ </el-row>
+ <el-row>
<el-col :span="7">
<el-form-item label="OPO涓績绛惧瓧" prop="opochecker">
<el-input v-model="form.opochecker" placeholder="opo涓績绛惧瓧" />
@@ -988,7 +1084,7 @@
:value="dict.value"></el-option>
</el-select>
</el-form-item>
- </el-col>
+ </el-col>
</el-row>
-->
<el-row>
@@ -1074,7 +1170,8 @@
getdownloadYX,
getdownloadBX,
addorupdateFund,
- getdetailsByItemId
+ getdetailsByItemId,
+ validateExpertFee
} from "@/api/project/fund";
import {
@@ -1116,12 +1213,12 @@
updateExternalperson,
exportExternalperson
} from "@/api/project/externalperson";
-
import { getUserProfile } from "@/api/system/user";
import Li_area_select from "@/components/Address";
import OrgSelecter from "@/views/project/components/orgselect";
import elementIcons from "../../../components/icons/element-icons";
import { getToken } from "@/utils/auth";
+import { moneySum, moneyAdd, moneySub, moneyMul, moneyRound } from "@/utils/money";
export default {
//import寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢�
@@ -1144,7 +1241,8 @@
//"sys_financeitemtype",
//"sys_expensetype",
"sys_recordstatus",
- "sys_professionaltitle"
+ "sys_professionaltitle",
+ "sys_stage_type"
],
data() {
@@ -1174,11 +1272,16 @@
},
fundQueryParam: {
pageNum: 1,
- pageSize: 100,
+ pageSize: 10,
infoid: null,
applytype: "1",
- createBy: null
+ createBy: null,
+ // 鎶ラ攢鍗曠瓫閫夋潯浠�
+ donorname: null,
+ recordstatus: null
},
+ // 鍙充晶鎶ラ攢鍗曟�绘暟锛堢敤浜庡垎椤碉級
+ fundTotal: 0,
// 琛ㄥ崟鍙傛暟
form: {},
//鎵�鏈変汉鍛樿〃
@@ -1211,7 +1314,7 @@
username: [
{ required: true, message: "璇疯緭鍏ョ敵璇蜂汉", trigger: "blur" }
],
- createTime: [
+ applyTime: [
{ required: true, message: "璇疯緭鍏ョ敵璇锋棩鏈�", trigger: "blur" }
],
deptmentname: [
@@ -1227,6 +1330,9 @@
donatebaseinfoList: [],
//褰撳墠閫変腑鎹愮尞妗堜緥
curCase: {},
+ // 銆岄�夋嫨鎹愮尞妗堜緥銆嶅璇濇锛堟柊澧炵敵璇峰崟鏃朵娇鐢級
+ caseDialogVisible: false,
+ casePickerMode: "",
//鏄惁鏄剧ず璐圭敤鐢宠寮圭獥
dialogOpen: false,
// title: "",
@@ -1322,11 +1428,12 @@
watch: {},
//鐢熷懡鍛ㄦ湡 - 鍒涘缓瀹屾垚锛堝彲浠ヨ闂綋鍓峵his瀹炰緥锛�
created() {
- this.getList();
- this.getBaseInfoList();
+ // 妗堜緥鍒楄〃宸茬Щ鍏ャ�岄�夋嫨鎹愮尞妗堜緥銆嶅璇濇锛屾墦寮�瀵硅瘽妗嗘椂鍐嶆煡璇�
this.getCurFundType();
this.getUserList();
this.getUnitList();
+ // 棣栧睆灞曠ず褰撳墠鐧诲綍浜虹殑鍏ㄩ儴涓撳鍔冲姟鍗曟嵁
+ this.allgetfundList();
},
//鐢熷懡鍛ㄦ湡 - 鎸傝浇瀹屾垚锛堝彲浠ヨ闂瓺OM鍏冪礌锛�
@@ -1358,58 +1465,36 @@
this.resetForm("queryForm");
this.handleQuery();
},
+ Dooffline(a, value) {
+ value.uploadStates = 1;
+ value.notes = "绾夸笅宸叉姤閿�";
+ addorupdateFund(value).then(res => {
+ if (res.code == 200) {
+ this.$modal.msgSuccess("璁板綍鎴愬姛");
+ } else {
+ this.$modal.msgError(res.msg);
+ }
+ });
+ },
- /** 鏂板鎸夐挳鎿嶄綔 */
+ /** 鏂板鎸夐挳鎿嶄綔锛氬厛寮瑰嚭銆岄�夋嫨鎹愮尞妗堜緥銆嶅璇濇 */
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;
+ this.casePickerMode = "add";
+ this.caseDialogVisible = true;
+ this.getBaseInfoList();
+ },
- if (this.curCase.id) {
- this.istrue += 2;
- this.reset();
- 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.phone = this.defaultperson.phonenumber;
- 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.fundDetails = [];
- this.addRow();
- this.dialogOpen = true;
- this.dialogType = "edit";
- this.title = "璐圭敤鐢宠";
- } else {
- const h = this.$createElement;
- this.$message({
- message: h("p", null, [h("span", null, "璇峰厛閫夋嫨宸︽柟鎹愮尞妗堜緥 ")])
- });
- }
+ /** 鎼哄甫宸查�夋渚嬭烦杞埌鐢宠鍗曞~鍐欓〉 */
+ goApplyAdd() {
+ this.$router.push({
+ path: "/finance/applyDetail/",
+ query: {
+ id: 0,
+ businessType: "1",
+ operationType: "add",
+ curCase: this.curCase
+ }
+ });
},
/** 淇敼鎸夐挳鎿嶄綔 */
@@ -1559,6 +1644,7 @@
/** 涓婃姤鎸夐挳鎿嶄綔 */
handleUp(row) {
+ console.log(row);
this.$confirm("鏄惁纭灏嗙櫥璁拌褰曚笂鎶ワ紵", "鎻愮ず", {
confirmButtonText: "纭畾",
cancelButtonText: "鍙栨秷",
@@ -1568,6 +1654,20 @@
//鏌ユ壘鏄惁瀛樺湪鐧昏瀹屾垚璁板綍
//鍒ゆ柇鏄惁瀛樺湪涓婃姤璁板綍
row.recordstatus = 0;
+ var currenttime = new Date();
+ row.applyTime =
+ currenttime.getFullYear() +
+ "-" +
+ (currenttime.getMonth() + 1) +
+ "-" +
+ currenttime.getDate() +
+ " " +
+ currenttime.getHours() +
+ ":" +
+ currenttime.getMinutes() +
+ ":" +
+ currenttime.getSeconds();
+
updateFund(row).then(response => {
if (response.code == 200) {
this.$message({
@@ -1681,7 +1781,7 @@
}
this.fundDetails[i] = tempDetail;
/*
- //璁$畻涓◣
+ //璁$畻涓◣
//if (isNaN(parseFloat(tempDetail.taxedamount)))
//鑾峰彇鍙傛暟
this.taxParam.beneficiaryNo = tempDetail.beneficiaryno;
@@ -1760,21 +1860,37 @@
// });
}
- addorupdateFund(this.form).then(response => {
- if (response.code === 200) {
- this.selectDonotor(this.curCase);
- this.$modal.msgSuccess("涓撳鍔冲姟璐逛繚瀛樻垚鍔燂紒");
- } else {
- this.$modal.msgError("涓撳鍔冲姟璐逛繚瀛樺け璐ワ細" + response.msg);
- }
- });
+ // 淇濆瓨鍓嶅厛鍋氫笓瀹跺姵鍔¤垂 9 鏉¤垂鐢ㄦ帶鍒舵牎楠岋紙鍚屼竴妗堜緥绱锛�
+ validateExpertFee(this.form).then(valid => {
+ const errors = (valid && valid.errors) || [];
+ const warnings = (valid && valid.warnings) || [];
- //鍏抽棴绐楀彛
- this.loading = false;
- this.dialogOpen = false;
- // this.getfundList();
- this.getList();
- this.selectDonotor(this.curCase);
+ // warnings锛堣鍒� 5銆�6锛変粎鎻愮ず锛屼笉闃绘柇淇濆瓨
+ if (warnings.length > 0) {
+ this.$modal.msgWarning(warnings.join("锛�"));
+ }
+
+ // errors 闃绘柇淇濆瓨锛屼繚鐣欑獥鍙h缁忓姙浜哄厛淇
+ if (errors.length > 0) {
+ this.$modal.msgError(errors.join("锛�"));
+ this.loading = false;
+ return;
+ }
+
+ addorupdateFund(this.form).then(response => {
+ if (response.code === 200) {
+ //鍏抽棴绐楀彛
+ this.loading = false;
+ this.dialogOpen = false;
+ this.selectDonotor(this.curCase);
+ this.$modal.msgSuccess("涓撳鍔冲姟璐逛繚瀛樻垚鍔燂紒");
+ this.getList();
+ } else {
+ this.$modal.msgError("涓撳鍔冲姟璐逛繚瀛樺け璐ワ細" + response.msg);
+ this.loading = false;
+ }
+ });
+ });
}
});
},
@@ -1964,7 +2080,7 @@
this.standardlevel = response.data.standardlevel;
if (
this.defaultperson.createBy == "admin" ||
- this.defaultperson.createBy == "001" ||
+ this.defaultperson.createBy == "053" ||
this.defaultperson.createBy == "002"
) {
this.ismanager = true;
@@ -2088,17 +2204,57 @@
//鐐瑰嚮鎹愮尞妗堜緥鍒楄〃瑙﹀彂鏂规硶
selectDonotor(row, column, event) {
this.curCase = row;
- this.getfundList();
+ if (this.casePickerMode === "add") {
+ // 浠庛�屾柊澧炵敵璇峰崟銆嶈繘鍏ワ細閫夊畬妗堜緥鐩存帴璺冲埌鐢宠鍗曞~鍐欓〉
+ this.casePickerMode = "";
+ this.caseDialogVisible = false;
+ this.goApplyAdd();
+ }
},
-
- getfundList() {
- this.loading = true;
+ allgetfundList() {
+ // 妫�绱㈠叏閮細鍙栨秷宸︿晶妗堜緥閫夋嫨涓庣瓫閫夋潯浠讹紝鏌ヨ褰撳墠鐧诲綍浜虹殑鍏ㄩ儴涓撳鍔冲姟鍗曟嵁
+ this.curCase = {};
+ if (this.$refs.caseTable) {
+ this.$refs.caseTable.setCurrentRow();
+ }
this.reset();
- this.fundQueryParam.infoid = this.curCase.id;
+ this.fundQueryParam.infoid = null;
+ this.fundQueryParam.donorname = null;
+ this.fundQueryParam.recordstatus = null;
+ this.fundQueryParam.pageNum = 1;
+ this.listFundData();
+ },
+ /** 鎶ラ攢鍗曠瓫閫夛細鎼滅储 */
+ handleQueryFund() {
+ this.fundQueryParam.pageNum = 1;
+ this.listFundData();
+ },
+ /** 鎶ラ攢鍗曠瓫閫夛細閲嶇疆锛堟竻绌烘潯浠朵笌宸查�夋渚嬶紝鍥炲埌璇ョ櫥褰曚汉鍏ㄩ儴鍗曟嵁锛� */
+ resetFundQuery() {
+ this.fundQueryParam.donorname = null;
+ this.fundQueryParam.recordstatus = null;
+ this.allgetfundList();
+ },
+ /**
+ * 鎸夊綋鍓� fundQueryParam 鏌ヨ鍙充晶鎶ラ攢鍗曞垪琛�
+ * infoid 涓虹┖ = 褰撳墠鐧诲綍浜虹殑鍏ㄩ儴璇ョ被鍨嬪崟鎹紱鏈夊�� = 鎸囧畾妗堜緥
+ */
+ listFundData() {
+ this.loading = true;
listFund(this.fundQueryParam).then(response => {
this.loading = false;
this.donateconsolationfundList = response.rows;
+ this.fundTotal = response.total;
});
+ },
+ getfundList() {
+ this.reset();
+ // 閫変腑妗堜緥鍚庢寜妗堜緥灞曠ず锛屽悓鏃舵竻鎺夊垪琛ㄧ瓫閫夋潯浠讹紝閬垮厤涓や釜鏉′欢鍙犲姞瀵艰嚧绌哄垪琛�
+ this.fundQueryParam.donorname = null;
+ this.fundQueryParam.recordstatus = null;
+ this.fundQueryParam.infoid = this.curCase.id;
+ this.fundQueryParam.pageNum = 1;
+ this.listFundData();
},
//瀵煎叆鎵�鏈夐」鐩�
@@ -2379,43 +2535,34 @@
//璁$畻涓◣
calculateTax() {},
- //璁$畻鎬婚噾棰�
+ //璁$畻鎬婚噾棰濓紙閲戦涓�寰嬭蛋绮剧‘杩愮畻锛�
sumTotalFee(row) {
- let allSum = 0;
+ const detailsArr = [];
if (this.form.applytype != null) {
for (let i = 0; i < this.fundDetails.length; i++) {
+ const detail = this.fundDetails[i];
let totalFee = 0;
- let taxFee = 0;
if (this.form.applytype == 1 || this.form.applytype == 2) {
- //璁$畻褰撳墠鎶ラ攢鍐呭璐圭敤鍚堣
- if (!isNaN(parseFloat(this.fundDetails[i].amount))) {
- totalFee += parseFloat(this.fundDetails[i].amount);
- taxFee += parseFloat(this.fundDetails[i].amount);
+ //璁$畻褰撳墠鎶ラ攢鍐呭璐圭敤鍚堣锛氱◣鍓� - 鎵g◣
+ if (!isNaN(parseFloat(detail.amount))) {
+ totalFee = moneyAdd(totalFee, detail.amount);
}
- if (!isNaN(parseFloat(this.fundDetails[i].taxamount))) {
- totalFee -= parseFloat(this.fundDetails[i].taxamount);
- taxFee -= parseFloat(this.fundDetails[i].taxamount);
+ if (!isNaN(parseFloat(detail.taxamount))) {
+ totalFee = moneySub(totalFee, detail.taxamount);
}
} else if (this.form.applytype == 3) {
if (
- !isNaN(parseFloat(this.fundDetails[i].price)) &&
- !isNaN(parseFloat(this.fundDetails[i].quantity))
+ !isNaN(parseFloat(detail.price)) &&
+ !isNaN(parseFloat(detail.quantity))
) {
- totalFee +=
- parseFloat(this.fundDetails[i].price) *
- parseFloat(this.fundDetails[i].quantity);
+ totalFee = moneyMul(detail.price, detail.quantity);
}
}
-
- //绋庡墠銆佺◣鍚庨渶瑕佺嫭绔嬪綍鍏�
- // if (!isNaN(parseFloat(taxFee))) {
- // this.fundDetails[i].taxedamount = taxFee.toFixed(2);
- // }
-
- allSum += totalFee;
+ detailsArr.push(totalFee);
}
}
- // this.form.amountrequested = allSum.toFixed(2);
+ // 鍚堣浠嶅湪纭鍙e緞鍚庡惎鐢紱鍏堜繚璇佽绠楁湰韬槸绮剧‘鐨�
+ // this.form.amountrequested = moneyRound(moneySum(detailsArr)).toFixed(2);
// this.$forceUpdate();
},
@@ -2456,22 +2603,35 @@
//涓撳璐瑰姵鍔℃墦鍗�
dayin(id) {
getdownloadLW(id).then(res => {
- if (res.downloadUrl) {
- var fileUrl = res;
- //鑾峰彇褰撳墠缃戝潃
- var urlBase = process.env.VUE_APP_BASE_API;
- var curWWWPath = window.document.location.href;
- var pos = curWWWPath.indexOf(window.document.location.pathname);
- // 鍒涘缓a鏍囩
- var aEle = document.createElement("a");
- aEle.href =
- curWWWPath.substring(0, pos) + urlBase + fileUrl["downloadUrl"];
- aEle.click();
- this.$alert("涓嬭浇鎴愬姛", "鎻愮ず", {
- confirmButtonText: "纭畾",
- type: "success"
+ var fileUrl = res;
+ //鑾峰彇褰撳墠缃戝潃
+ var urlBase = process.env.VUE_APP_BASE_API;
+ var curWWWPath = window.document.location.href;
+ var pos = curWWWPath.indexOf(window.document.location.pathname);
+ // 鍒涘缓a鏍囩
+ var aEle = document.createElement("a");
+ aEle.href =
+ curWWWPath.substring(0, pos) + urlBase + fileUrl["downloadUrl"];
+ console.log(aEle.href);
+ // 娣诲姞Authorization澶撮儴
+ fetch(aEle.href, {
+ headers: this.headers
+ })
+ .then(response => {
+ // 灏嗘枃浠朵笅杞介摼鎺ヤ綔涓篵lob瀵硅薄杩涜涓嬭浇
+ return response.blob();
+ })
+ .then(blob => {
+ const url = window.URL.createObjectURL(new Blob([blob]));
+ console.log(url);
+ const link = document.createElement("a");
+ link.href = url;
+ const name = fileUrl["downloadName"];
+ link.setAttribute("download", name); // 鏇挎崲file.pdf涓哄疄闄呯殑鏂囦欢鍚�
+ document.body.appendChild(link);
+ link.click();
+ link.parentNode.removeChild(link);
});
- }
});
},
@@ -2529,10 +2689,22 @@
} else {
console.log(response.msg);
}
+ },
+ rowClassName({ row, column, rowIndex, columnIndex }) {
+ if (row.recordstatus == -1 && row.backflowlevel != null) {
+ return "error-row";
+ }
+ return "";
}
}
};
</script>
-<style scoped>
+<style lang="scss" scoped>
/* @import url(); 寮曞叆鍏叡css绫� */
+.button-delete {
+ color: rgb(236, 69, 69);
+}
+::v-deep.el-table .error-row {
+ background: #fcebeb;
+}
</style>
--
Gitblit v1.9.3