From 2698387e653c6a25059c3ae9976f18b814eba892 Mon Sep 17 00:00:00 2001
From: WXL <wl_5969728@163.com>
Date: 星期五, 12 九月 2025 15:16:46 +0800
Subject: [PATCH] 医疗权限
---
src/views/project/fundcheck/ethicalExpertFeeCheck/index.vue | 432 +++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 331 insertions(+), 101 deletions(-)
diff --git a/src/views/project/fundcheck/ethicalExpertFeeCheck/index.vue b/src/views/project/fundcheck/ethicalExpertFeeCheck/index.vue
index 8bb8424..9dd649e 100644
--- a/src/views/project/fundcheck/ethicalExpertFeeCheck/index.vue
+++ b/src/views/project/fundcheck/ethicalExpertFeeCheck/index.vue
@@ -8,42 +8,33 @@
label-width="120px"
>
<el-row>
- <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="鐢宠缁撴潫鏃ユ湡"
+ <el-col :span="5">
+ <el-form-item label="鎹愮尞妗堜緥" prop="donorname" style="float: left">
+ <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="棰勫鐘舵��" prop="checkstatus" style="float: left">
+ <el-select
+ v-model="queryParams.checkstatus"
+ placeholder="璇烽�夋嫨"
+ style="width: 100%"
>
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="5">
- <el-form-item label="閲戦" prop="money" style="float: left">
- <el-input
- v-model="queryParams.money"
- placeholder="璇疯緭鍏ョ敵璇蜂汉閲戦"
- clearable
- size="small"
- @keyup.enter.native="flowconclusion"
- />
- </el-form-item>
- </el-col>
- <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-option
+ v-for="item in checkmaterials"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
</el-form-item>
</el-col>
<el-col :span="5">
@@ -63,6 +54,46 @@
</el-select>
</el-form-item>
</el-col>
+ <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"
+ @keyup.enter.native="flowconclusion"
+ />
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鐢宠鏃ユ湡" prop="applyTime">
+ <el-date-picker
+ format="yyyy-MM-dd"
+ @change="selectapplication"
+ value-format="yyyy-MM-dd"
+ v-model="applyTime"
+ type="daterange"
+ range-separator="鑷�"
+ start-placeholder="鐢宠寮�濮嬫棩鏈�"
+ end-placeholder="鐢宠缁撴潫鏃ユ湡"
+ @keyup.enter.native="flowconclusion"
+ >
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
<el-col :span="6">
<el-button
type="primary"
@@ -77,39 +108,56 @@
</el-col>
</el-row>
</el-form>
+ <el-row>
+ <el-col :span="8">
+ <div style="margin-bottom: 15px;">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-circle-check"
+ size="mini"
+ @click="Totalcalculation(1)"
+ >璁$◣鍚庡悎璁�</el-button
+ >
+ <el-button
+ icon="el-icon-remove-outline"
+ type="success"
+ plain
+ size="mini"
+ @click="Totalcalculation(0)"
+ >璁$◣鍓嶅悎璁�</el-button
+ >
+ </div>
+ </el-col>
+ </el-row>
<el-form ref="infoform" label-width="100px">
<el-row>
<el-table
v-loading="loading"
+ ref="multipleTable"
+ tooltip-effect="dark"
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 type="selection" width="45"> </el-table-column>
+
+ <el-table-column
+ label="鎶ラ攢鍗曞彿"
+ align="center"
+ prop="bh"
+ width="150px"
+ />
<el-table-column
label="鐢宠鏃ユ湡"
width="120"
align="center"
- prop="createTime"
+ 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="username"
- width="150px"
- />
<el-table-column
label="鐢宠閲戦"
align="center"
@@ -117,22 +165,24 @@
width="200px"
/>
<el-table-column
- label="鎵�灞炵粍鍒�"
+ label="缁忓姙浜�"
align="center"
- prop="deptmentname"
- width="200px"
- />
- <el-table-column
- label="缁勯暱"
- align="center"
- prop="managername"
+ prop="username"
width="150px"
/>
- <!-- <el-table-column label="宸ヤ綔鍗曚綅" align="center" prop="unitname" width="230px" /> -->
- <!-- <el-table-column label="鑱旂郴鐢佃瘽" align="center" prop="phone" width="160" /> -->
- <!-- <el-table-column label="绋庡悗閲戦" align="center" prop="taxedcost" width="120px" />
- <el-table-column label="鐢宠閲戦" align="center" prop="amountrequested" width="120px" />
- <el-table-column label="棰勬敮璐圭敤" align="center" prop="prepaidamount" width="120px" /> -->
+ <el-table-column
+ label="鐢宠鏉愭枡鐘舵��"
+ width="140"
+ align="center"
+ prop="checkFlag"
+ >
+ <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"
@@ -147,6 +197,28 @@
</template>
</el-table-column>
<el-table-column
+ label="涓◣璁$畻鎯呭喌"
+ align="center"
+ prop="recordstatus"
+ width="200"
+ >
+ <template slot-scope="scope">
+ <dict-tag :options="dict.type.sys_tax" :value="scope.row.istax" />
+ </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"
@@ -160,7 +232,7 @@
fixed="right"
align="center"
class-name="small-padding fixed-width"
- width="160px"
+ width="260px"
>
<template slot-scope="scope">
<el-button
@@ -171,6 +243,7 @@
@click="handleDetail(scope.row)"
>璇︽儏</el-button
>
+
<el-button
v-if="scope.row.checkFlag == 1"
size="mini"
@@ -184,7 +257,7 @@
size="mini"
type="text"
icon="el-icon-download"
- @click="dayin(scope.row.id)"
+ @click="totaldayin(scope.row.id)"
>涓嬭浇</el-button
>
<!-- <el-popover placement="right" width="400" trigger="click">
@@ -552,12 +625,12 @@
</el-row>
<el-row style="margin-top: 25px; margin-bottom: 5px">
<el-col :span="7">
- <el-form-item label="鐢宠鏃ユ湡" prop="createTime">
+ <el-form-item label="鐢宠鏃ユ湡" prop="applyTime">
<!-- <el-input v-model="form.donorno" placeholder="璇疯緭鍏ョ敵璇锋棩鏈�" /> -->
<el-date-picker
clearable
style="width: 100%"
- v-model="form.createTime"
+ v-model="form.applyTime"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="鐢宠鏃ユ湡"
@@ -664,7 +737,8 @@
getdownloadBX,
checkfund,
listbypower,
- addFundSharedInfo
+ addFundSharedInfo,
+ TotalcalculationFn
} from "@/api/project/fund";
import {
onelistFunds,
@@ -711,6 +785,10 @@
import Li_area_select from "@/components/Address";
import OrgSelecter from "@/views/project/components/orgselect";
import { getUserProfile } from "@/api/system/user";
+import { getToken } from "@/utils/auth";
+
+// 瀵煎叆鏈湴瀛樺偍鐨勬柟娉�
+import { setItem, grtItem, removeItem } from "@/utils/storage.js";
export default {
components: {
@@ -728,7 +806,9 @@
"sys_ConsolationType",
"sys_fund_type",
"sys_finsubject",
- "sys_financeitemtype"
+ "sys_financeitemtype",
+ "sys_stage_type",
+ "sys_tax"
],
data() {
return {
@@ -770,6 +850,9 @@
exportLoading: false,
// 閫変腑鏁扮粍
ids: [],
+ overallids: [], //鎬婚�変腑
+ overallidsvalue: [], //鎬婚�変腑瀵硅薄
+
// 闈炲崟涓鐢�
single: true,
// 闈炲涓鐢�
@@ -785,6 +868,9 @@
//鎹愮尞妗堜緥鍒楄〃鏁版嵁
// donationCaseTableData:[],
donatebaseinfoList: [],
+ headers: {
+ Authorization: "Bearer " + getToken()
+ },
gridData: [
{
date: "2016-05-02",
@@ -824,6 +910,21 @@
label: "鍏ㄩ儴"
}
],
+ checkmaterials: [
+ {
+ value: 1,
+ label: "鏉愭枡寰呭鏍�"
+ },
+ {
+ value: 2,
+ label: "瀹℃煡閫氳繃绛夊緟閭瘎绾歌川鏉愭枡"
+ },
+ {
+ value: 3,
+ label: "宸叉敹鍒扮焊璐ㄦ潗鏂�"
+ }
+ ],
+
// 鏌ヨ鍙傛暟
queryParams: {
pageNum: 1,
@@ -842,7 +943,7 @@
username: [
{ required: true, message: "璇疯緭鍏ョ敵璇蜂汉濮撳悕", trigger: "blur" }
],
- createTime: [
+ applyTime: [
{ required: true, message: "璇疯緭鍏ョ敵璇锋棩鏈�", trigger: "blur" }
],
amountrequested: [
@@ -912,6 +1013,11 @@
this.getUsermsg();
},
mounted() {
+ if (grtItem("ethicalExpertFeeCheck")) {
+ this.queryParams = grtItem("ethicalExpertFeeCheck");
+ this.queryParams.APPLICATIONBEGTIME = "";
+ this.queryParams.APPLICATIONENDTIME = "";
+ }
this.selectReporters();
this.getlistOrganization();
//this.getlistUser();
@@ -920,14 +1026,16 @@
},
methods: {
selectapplication() {
- console.log("鏃堕棿", this.createTime);
- this.queryParams.APPLICATIONBEGTIME = this.createTime[0];
- this.queryParams.APPLICATIONENDTIME = this.createTime[1];
+ console.log("鏃堕棿", this.applyTime);
+ this.queryParams.APPLICATIONBEGTIME = this.applyTime[0];
+ this.queryParams.APPLICATIONENDTIME = this.applyTime[1];
// this.getlistbypower()
},
getlistbypower() {
this.loading = true;
listbypower(this.queryParams).then(res => {
+ removeItem("ethicalExpertFeeCheck");
+ setItem("ethicalExpertFeeCheck", this.queryParams);
//console.log("鏍规嵁鏉冮檺鏄剧ず鍒楄〃", res);
this.loading = false;
let list = res.rows;
@@ -953,11 +1061,20 @@
return;
}
checkfund(checkfundobj).then(res => {
- console.log("瀹℃牳璐圭敤", res);
- this.dialogOpen = false;
- this.reset();
- this.$modal.msgSuccess("瀹℃牳瀹屾垚!");
- this.getlistbypower();
+ if (res.code == 200) {
+ console.log("瀹℃牳璐圭敤", res);
+ this.dialogOpen = false;
+ this.reset();
+ this.$modal.msgSuccess("瀹℃牳瀹屾垚!");
+ this.getlistbypower();
+ } else {
+ this.dialogOpen = false;
+ if (res.msg) {
+ this.$modal.msgError("鎿嶄綔澶辫");
+ } else {
+ this.$modal.msgError(res.msg);
+ }
+ }
});
},
getlistUser() {
@@ -1000,29 +1117,41 @@
totaldayin(e) {
// const id =this.row.id
getdownloadBX(e).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);
});
- }
});
},
isopenvalue(index) {
this.isopen = index;
},
-
tojust(e) {
let username = "111";
getFund(e).then(res => {
@@ -1199,9 +1328,109 @@
},
// 澶氶�夋閫変腑鏁版嵁
handleSelectionChange(selection) {
- this.ids = selection.map(item => item.id);
- this.single = selection.length !== 1;
- this.multiple = !selection.length;
+ let xuanzlist = selection.map(item => item.id);
+ if (this.ids.length <= selection.length) {
+ this.ids = xuanzlist;
+ } else {
+ this.ids.forEach(item => {
+ if (xuanzlist.includes(item)) {
+ } else {
+ if (this.overallids.length == 1) {
+ this.overallids = [];
+ } else {
+ this.overallids.splice(this.overallids.indexOf(item), 1);
+ }
+ if (this.overallidsvalue.length == 1) {
+ this.overallidsvalue = [];
+ } else {
+ this.overallidsvalue.splice(
+ this.overallidsvalue.indexOf(item),
+ 1
+ );
+ }
+ this.ids.splice(this.ids.indexOf(item), 1);
+ }
+ });
+ }
+ console.log(this.ids);
+ this.ids.forEach(item => {
+ if (this.overallids.includes(item)) {
+ console.log("3 is in the array");
+ } else {
+ this.overallids.push(item);
+ const obj = selection.find(obj => obj.id === item);
+ console.log(obj);
+ this.overallidsvalue.push(obj);
+ }
+ });
+ console.log(this.overallids);
+ },
+ // 鍒囨崲椤靛悗鎭㈠閫変腑
+ Restorecheck() {
+ console.log(this.donateconsolationfundList);
+ console.log(this.overallids);
+ const overlap = this.donateconsolationfundList.filter(value => {
+ return this.overallids.includes(value.id);
+ });
+ // 淇濇寔ids鍜屽綋鍓嶉〉闈㈢殑鍚屾鎬�
+ this.ids = overlap.map(item => item.id);
+ console.log(overlap, "褰撳墠椤甸�変腑鏁版嵁");
+ this.toggleSelection(overlap);
+ },
+ // 鎸傝浇閫夋嫨鐘舵��
+ toggleSelection(rows) {
+ console.log(rows);
+ if (rows) {
+ this.$nextTick(() => {
+ rows.forEach(row => {
+ console.log(row);
+ this.$refs.multipleTable.toggleRowSelection(row, true);
+ console.log(1);
+ });
+ });
+ } else {
+ this.$refs.multipleTable.clearSelection();
+ }
+ },
+ Totalcalculation(tot) {
+ console.log(tot);
+ let bojite = {
+ fundids: this.overallids,
+ isTaxAfter: tot
+ };
+ if (tot == 0) {
+ TotalcalculationFn(bojite)
+ .then(row => {
+ console.log(row.msg);
+ if (row.code == 200) {
+ this.$modal.msgSuccess(row.msg);
+ } else {
+ console.log(123);
+ this.$modal.msgError(row.msg);
+ }
+ })
+ .catch(error => {
+ this.$modal.msgError(error);
+ });
+ } else {
+ console.log(this.overallidsvalue);
+ const hasValue = this.overallidsvalue.every(obj => obj.istax == 1);
+ if (hasValue) {
+ TotalcalculationFn(bojite)
+ .then(row => {
+ if (row.code == 200) {
+ this.$modal.msgSuccess(row.msg);
+ } else {
+ this.$modal.msgError(row.msg);
+ }
+ })
+ .catch(error => {
+ this.$modal.msgError(error);
+ });
+ } else {
+ this.$modal.msgError("璇烽�夋嫨绠楃◣鍚庣殑鏁版嵁杩涜鍚堝苟璁$畻");
+ }
+ }
},
/** 鏂板鎸夐挳鎿嶄綔 */
handleAdd() {
@@ -1214,7 +1443,7 @@
this.form.donorno = this.curCase.donorno;
this.form.name = this.curCase.name;
this.form.infoid = this.curCase.id;
- // this.form.createTime = nowdate;
+ // this.form.applyTime = nowdate;
//this.open = true;
//this.initFundApplyForm();
this.fundDetailArr = [];
@@ -1228,7 +1457,8 @@
});
}
},
- /** 淇敼鎸夐挳鎿嶄綔 */
+
+ /** 瀹℃牳鎸夐挳鎿嶄綔 */
handleCheck(row) {
this.$router.push({
path: "/finance/applyDetail/",
@@ -1644,7 +1874,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