From fb16e99d60035949b870d0bed7f38b452458000a Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期四, 15 十月 2026 15:10:00 +0800
Subject: [PATCH] 修改了专家费校验和附件名字校验
---
src/views/project/fundcheck/medicalCostCheck/index.vue | 152 ++++++++++++++++++++++++++++++--------------------
1 files changed, 90 insertions(+), 62 deletions(-)
diff --git a/src/views/project/fundcheck/medicalCostCheck/index.vue b/src/views/project/fundcheck/medicalCostCheck/index.vue
index 98d55a0..223b927 100644
--- a/src/views/project/fundcheck/medicalCostCheck/index.vue
+++ b/src/views/project/fundcheck/medicalCostCheck/index.vue
@@ -1,15 +1,15 @@
<template>
<div class="app-container">
- <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="120px">
+ <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="90px">
<el-row align="left">
<el-col :span="5">
<el-form-item label="鎹愮尞妗堜緥" prop="donorname" style="float: left">
- <el-input v-model="queryParams.donorname" placeholder="璇疯緭鍏ョ敵璇蜂汉鎹愮尞鑰�" clearable size="small"
+ <el-input v-model="queryParams.donorname" placeholder="璇疯緭鍏ユ崘鐚��" clearable size="small"
@keyup.enter.native="flowconclusion" />
</el-form-item>
</el-col>
<el-col :span="5">
- <el-form-item label-width="120px" label="棰勫鐘舵��" prop="checkstatus" style="float: left">
+ <el-form-item label-width="90px" label="棰勫鐘舵��" prop="checkstatus" style="float: left">
<el-select v-model="queryParams.checkstatus" placeholder="璇烽�夋嫨" style="width: 100%">
<el-option v-for="item in checkmaterials" :key="item.value" :label="item.label" :value="item.value">
</el-option>
@@ -25,13 +25,21 @@
</el-form-item>
</el-col>
<el-col :span="5">
+ <el-form-item align="left" label="涓氬姟缁�" prop="deptnos">
+ <el-select v-model="queryParams.deptnos" placeholder="璇烽�夋嫨妗堜緥鐘舵��">
+ <el-option v-for="item in deptList" :label="item.deptName" :value="item.deptId">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="5">
<el-form-item label="缁忓姙浜�" prop="APPLICANT" style="float: left">
<el-input v-model="queryParams.APPLICANT" placeholder="璇疯緭鍏ョ粡鍔炰汉" clearable size="small"
@keyup.enter.native="flowconclusion" />
</el-form-item>
</el-col>
- </el-row>
- <el-row>
<el-col :span="5">
<el-form-item label="鎶ラ攢閲戦" prop="money" style="float: left">
<el-input v-model="queryParams.money" placeholder="璇疯緭鍏ョ敵璇蜂汉閲戦" clearable size="small"
@@ -40,9 +48,9 @@
</el-col>
<el-col :span="8">
<el-form-item label="鐢宠鏃ユ湡" prop="createTime">
- <el-date-picker format="yyyy-MM-dd" @change="selectapplication" value-format="yyyy-MM-dd" v-model="createTime"
- type="daterange" range-separator="鑷�" start-placeholder="鐢宠寮�濮嬫棩鏈�" end-placeholder="鐢宠缁撴潫鏃ユ湡"
- @keyup.enter.native="flowconclusion">
+ <el-date-picker format="yyyy-MM-dd" @change="selectapplication" value-format="yyyy-MM-dd HH:mm:ss"
+ v-model="createTime" type="daterange" range-separator="鑷�" start-placeholder="鐢宠寮�濮嬫棩鏈�"
+ end-placeholder="鐢宠缁撴潫鏃ユ湡" @keyup.enter.native="flowconclusion">
</el-date-picker>
</el-form-item>
</el-col>
@@ -56,24 +64,25 @@
</el-form>
<el-form ref="infoform" label-width="100px">
<el-row>
- <el-table v-loading="loading" border :data="donateconsolationfundList" @selection-change="handleSelectionChange">
- <!--
+ <el-table v-loading="loading" border :data="donateconsolationfundList"
+ @selection-change="handleSelectionChange">
+ <!--
<el-table-column label="瀹℃壒鐘舵��" width="120" align="center" prop="checkFlag">
<template slot-scope="scope">
<span v-if="scope.row.checkFlag == 0"><i class="el-icon-check"
style="color: #5fb878; font-weight: bold"></i></span>
<span v-else>寰呭鏍�</span>
</template>
- </el-table-column>
- -->
+</el-table-column>
+-->
<el-table-column label="鎶ラ攢鍗曞彿" align="center" prop="bh" width="150px" />
- <el-table-column label="鐢宠鏃ユ湡" width="180" align="center" prop="createTime">
+ <el-table-column label="鐢宠鏃ユ湡" width="120px" align="center" prop="applyTime">
<template slot-scope="scope">
- <span>{{ parseTime(scope.row.createTime, "{y}-{m}-{d}") }}</span>
+ <span>{{ parseTime(scope.row.applyTime, "{y}-{m}-{d}") }}</span>
</template>
</el-table-column>
- <el-table-column label="鐢宠閲戦" align="center" prop="pretaxcost" width="200px" />
- <el-table-column label="缁忓姙浜�" align="center" prop="username" width="150px" />
+ <el-table-column label="鐢宠閲戦" align="center" prop="pretaxcost" width="120px" />
+ <el-table-column label="缁忓姙浜�" align="center" prop="username" width="90px" />
<!--<el-table-column label="鎹愮尞缂栧彿" align="center" prop="donorno" />-->
<!--
<el-table-column label="棰勬敮璐圭敤" align="center" prop="prepaidamount" width="120px" />
@@ -86,27 +95,28 @@
</el-table-column>
<el-table-column label="璐㈠姟瀹℃牳" align="center" prop="financechecher" width="140" />
-->
- <el-table-column label="鐢宠鏉愭枡鐘舵��" width="140" align="center" prop="checkstatus">
+ <el-table-column label="鏉愭枡棰勫鐘舵��" width="140px" 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="recordstatus" width="180">
+ <el-table-column label="瀹℃壒鐘舵��" align="center" prop="recordstatus" width="140px">
<template slot-scope="scope">
<dict-tag :options="dict.type.sys_recordstatus" :value="scope.row.recordstatus" />
</template>
</el-table-column>
- <el-table-column label="鎵�灞炵粍鍒�" align="center" prop="deptmentname" width="200px" />
- <el-table-column label="缁勯暱" align="center" prop="managername" width="150px" />
- <el-table-column label="鎹愮尞鑰�" align="center" prop="donorname" width="150px" />
+ <el-table-column label="鎵�灞炵粍鍒�" align="center" prop="deptmentname" width="140px" />
+ <el-table-column label="缁勯暱" align="center" prop="managername" width="90px" />
+ <el-table-column label="鎹愮尞鑰�" align="center" prop="donorname" width="90px" />
<el-table-column label="澶囨敞" align="center" prop="remark" />
- <el-table-column label="鎿嶄綔" fixed="right" align="center" class-name="small-padding fixed-width" width="260px">
+ <el-table-column label="鎿嶄綔" fixed="right" align="center" class-name="small-padding fixed-width" width="200px">
<template slot-scope="scope">
<el-button v-if="scope.row.checkFlag == 1" size="mini" type="text" icon="el-icon-edit"
@click="handleCheck(scope.row)">瀹℃牳</el-button>
<!-- v-hasPermi="['project:donateconsolationfund:edit']" -->
<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>
+ <el-button size="mini" type="text" icon="el-icon-download"
+ @click="totaldayin(scope.row.id)">涓嬭浇</el-button>
<!-- v-hasPermi="['project:donateconsolationfund:download']" -->
<!-- 鏂板瀹℃牳椤甸潰 -->
@@ -122,8 +132,8 @@
</el-table-column>
</el-table>
- <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
- @pagination="getlistbypower" />
+ <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize" @pagination="getlistbypower" />
</el-row>
</el-form>
@@ -135,7 +145,7 @@
<el-col :span="5">
<el-form-item label="鐢宠鏃ユ湡" prop="createTime">
<!-- <el-input v-model="form.donorno" placeholder="璇疯緭鍏ョ敵璇锋棩鏈�" /> -->
- <el-date-picker clearable style="width: 100%" v-model="form.createTime" type="date"
+ <el-date-picker clearable style="width: 100%" v-model="form.createTime" type="date" format="yyyy-MM-dd"
value-format="yyyy-MM-dd HH:mm:ss" placeholder="鐢宠鏃ユ湡">
</el-date-picker>
</el-form-item>
@@ -179,12 +189,12 @@
<el-input v-model="form.donorname" placeholder="璇疯緭鍏ユ崘鐚�呭鍚�" clearable :disabled="true" />
</el-form-item>
</el-col>
- <!--
+ <!--
<el-col :span="8">
<el-form-item label="鎹愮尞缂栧彿" prop="donorno">
<el-input disabled v-model="form.donorno" placeholder="璇疯緭鍏ユ崘鐚紪鍙�" clearable />
</el-form-item>
- </el-col>
+ </el-col>
<el-col :span="8">
<el-form-item label="鑱旂郴鐢佃瘽" prop="phone">
<el-input v-model="form.phone" placeholder="璇疯緭鍏ョ敵璇疯�呯殑鑱旂郴鏂瑰紡" clearable />
@@ -288,18 +298,20 @@
<el-table-column prop="price" align="center" label="浠锋牸" width="120" v-if="form.applytype == '3'">
<template slot-scope="scope">
- <el-input v-model="scope.row.price" placeholder="浠锋牸" @blur="val => {
- sumTotalFee(scope.row);
- }
- " />
+ <el-input v-model="scope.row.price" placeholder="浠锋牸" @blur="
+ val => {
+ sumTotalFee(scope.row);
+ }
+ " />
</template>
</el-table-column>
<el-table-column prop="quantity" align="center" label="鏁伴噺" width="80" v-if="form.applytype == '3'">
<template slot-scope="scope">
- <el-input v-model="scope.row.quantity" placeholder="鏁伴噺" @blur="val => {
- sumTotalFee(scope.row);
- }
- " />
+ <el-input v-model="scope.row.quantity" placeholder="鏁伴噺" @blur="
+ val => {
+ sumTotalFee(scope.row);
+ }
+ " />
</template>
</el-table-column>
@@ -371,7 +383,7 @@
<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) =>
- uploadSccess(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>
@@ -409,7 +421,7 @@
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="dundcheck" v-if="dialogType == 'edit'">纭</el-button>
+ <el-button type="primary" :loading="checkSubmitLoading" :disabled="checkSubmitLoading" @click="dundcheck" v-if="dialogType == 'edit'">纭</el-button>
<el-button @click="cancel">鍙栨秷</el-button>
</div>
</el-dialog>
@@ -481,8 +493,10 @@
import Li_area_select from "@/components/Address";
import OrgSelecter from "@/views/project/components/orgselect";
import { getUserProfile } from "@/api/system/user";
+import { listDept } from "@/api/system/dept";
import { getToken } from "@/utils/auth";
import { setItem, grtItem, removeItem } from "@/utils/storage.js";
+import { moneySum, moneyAdd, moneySub, moneyMul, moneyRound } from "@/utils/money";
export default {
components: {
@@ -506,6 +520,7 @@
],
data() {
return {
+ checkSubmitLoading: false,
arrr2: [],
arrr3: [],
//璐圭敤绫诲瀷鏁扮粍
@@ -580,11 +595,11 @@
checkmaterials: [
{
value: 1,
- label: "鏉愭枡寰呭鏍�"
+ label: "寰呭鏍�"
},
{
value: 2,
- label: "瀹℃煡閫氳繃绛夊緟閭瘎绾歌川鏉愭枡"
+ label: "瀹℃煡閫氳繃绛夊緟绾歌川鏉愭枡"
},
{
value: 3,
@@ -685,6 +700,7 @@
this.resetForm();
this.getCurFundType();
this.getUsermsg();
+ this.listDept();
},
mounted() {
if (grtItem("medicalCostCheck")) {
@@ -716,6 +732,7 @@
});
},
dundcheck() {
+ if (this.checkSubmitLoading) return;
// this.$em
this.dialogOpen = false;
let checkfundobj = {
@@ -723,16 +740,28 @@
flowcontent: this.newobj.flowconclusion,
fundid: this.newobj.fundid
};
+ this.checkSubmitLoading = true;
checkfund(checkfundobj).then(res => {
- this.reset();
- this.$modal.msgSuccess("瀹℃牳瀹屾垚!");
- this.getlistbypower();
+ this.checkSubmitLoading = false;
+ if (res.code == 200) {
+ this.reset();
+ this.$modal.msgSuccess("瀹℃牳瀹屾垚!");
+ this.getlistbypower();
+ } else {
+ this.$modal.msgError(res.msg || "鎿嶄綔澶辫触");
+ }
});
},
getlistUser() {
this.queryParams = {};
listUser(this.queryParams).then(res => {
this.userlist = res.data;
+ });
+ },
+ listDept() {
+ listDept({}).then(response => {
+ this.deptList = response.data;
+ this.loading = false;
});
},
getSummaries(param) {
@@ -792,7 +821,7 @@
console.log(url);
const link = document.createElement("a");
link.href = url;
- const name=fileUrl["downloadName"]
+ const name = fileUrl["downloadName"];
link.setAttribute("download", name); // 鏇挎崲file.pdf涓哄疄闄呯殑鏂囦欢鍚�
document.body.appendChild(link);
link.click();
@@ -1415,41 +1444,40 @@
// });
},
- //璁$畻鎬婚噾棰�
+ //璁$畻鎬婚噾棰濓紙閲戦涓�寰嬭蛋绮剧‘杩愮畻锛岀姝� parseFloat 绱姞锛�
sumTotalFee() {
- let allSum = 0;
+ const detailsArr = [];
if (this.form.applytype != null) {
for (let i = 0; i < this.fundDetailArr.length; i++) {
+ const detail = this.fundDetailArr[i];
let totalFee = 0;
let taxFee = 0;
if (this.form.applytype == 1 || this.form.applytype == 2) {
- //璁$畻褰撳墠鎶ラ攢鍐呭璐圭敤鍚堣
- if (!isNaN(parseFloat(this.fundDetailArr[i].amount))) {
- totalFee += parseFloat(this.fundDetailArr[i].amount);
- taxFee += parseFloat(this.fundDetailArr[i].amount);
+ //璁$畻褰撳墠鎶ラ攢鍐呭璐圭敤鍚堣锛氱◣鍓� - 鎵g◣
+ if (!isNaN(parseFloat(detail.amount))) {
+ totalFee = moneyAdd(totalFee, detail.amount);
+ taxFee = moneyAdd(taxFee, detail.amount);
}
- if (!isNaN(parseFloat(this.fundDetailArr[i].taxamount))) {
- totalFee -= parseFloat(this.fundDetailArr[i].taxamount);
- taxFee -= parseFloat(this.fundDetailArr[i].taxamount);
+ if (!isNaN(parseFloat(detail.taxamount))) {
+ totalFee = moneySub(totalFee, detail.taxamount);
+ taxFee = moneySub(taxFee, detail.taxamount);
}
} else if (this.form.applytype == 3) {
if (
- !isNaN(parseFloat(this.fundDetailArr[i].price)) &&
- !isNaN(parseFloat(this.fundDetailArr[i].quantity))
+ !isNaN(parseFloat(detail.price)) &&
+ !isNaN(parseFloat(detail.quantity))
) {
- totalFee +=
- parseFloat(this.fundDetailArr[i].price) *
- parseFloat(this.fundDetailArr[i].quantity);
+ totalFee = moneyMul(detail.price, detail.quantity);
}
}
if (!isNaN(parseFloat(taxFee))) {
- this.fundDetailArr[i].taxedamount = taxFee.toFixed(2);
+ this.fundDetailArr[i].taxedamount = moneyRound(taxFee).toFixed(2);
}
- allSum += totalFee;
+ detailsArr.push(totalFee);
}
}
//this.form.amountrequested = allSum.toFixed(2);
- this.$set(this.form, "amountrequested", allSum.toFixed(2));
+ this.$set(this.form, "amountrequested", moneyRound(moneySum(detailsArr)).toFixed(2));
//this.$forceUpdate();
},
@@ -1524,7 +1552,7 @@
// this.defaultperson = response.data;
// this.standardlevel = response.data.standardlevel;
if (
- response.data.userName === "001" ||
+ response.data.userName === "053" ||
response.data.userName === "002" ||
response.data.userName === "admin"
) {
--
Gitblit v1.9.3