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/fund/applyDetail/index.vue | 1159 ++++++++++++++++++++++++++++++++++-----------------------
1 files changed, 686 insertions(+), 473 deletions(-)
diff --git a/src/views/project/fund/applyDetail/index.vue b/src/views/project/fund/applyDetail/index.vue
index b5bcedd..4d86eb7 100644
--- a/src/views/project/fund/applyDetail/index.vue
+++ b/src/views/project/fund/applyDetail/index.vue
@@ -6,12 +6,22 @@
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<el-col :span="5">
- <el-form-item label="鐢宠鏃ユ湡" prop="createTime">
+ <el-form-item label="鎶ラ攢鍗曞彿" prop="bh">
+ <el-input
+ v-model="form.bh"
+ :disabled="true"
+ placeholder="鎶ラ攢鍗曞彿"
+ clearable
+ />
+ </el-form-item>
+ </el-col>
+ <el-col :span="5">
+ <el-form-item label="鐢宠鏃ユ湡" prop="applyTime">
<el-date-picker
clearable
:disabled="true"
style="width: 100%"
- v-model="form.createTime"
+ v-model="form.applyTime"
type="date"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="鏃� 鏈�"
@@ -40,6 +50,36 @@
</el-form-item>
</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-row>
+ <el-row>
+ <!--
+ <el-col :span="7">
+ <el-form-item label="宸ヤ綔鍗曚綅" prop="unitno">
+ <org-selecter ref="orgSelecter" :org-type="'3'" v-model="form.unitno" />
+ </el-form-item>
+ </el-col>
+ -->
+ <el-col :span="5">
+ <el-form-item label="鐢宠鍗曠被鍨�">
+ <el-radio v-model="form.applytype" :label="businessType">{{
+ businessName
+ }}</el-radio>
+ </el-form-item>
+ </el-col>
+ <el-col :span="5" v-if="ismanager == true">
+ <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="deptmentname">
<el-input
v-model="form.deptmentname"
@@ -58,29 +98,9 @@
</el-form-item>
</el-col>
</el-row>
- <el-row>
- <!--
- <el-col :span="7">
- <el-form-item label="宸ヤ綔鍗曚綅" prop="unitno">
- <org-selecter ref="orgSelecter" :org-type="'3'" v-model="form.unitno" />
- </el-form-item>
- </el-col>
- -->
+ <el-row style="text-align: left">
<el-col :span="5">
- <el-form-item label="鐢宠鍗曠被鍨�">
- <el-radio v-model="form.applytype" :label="businessType">{{
- businessName
- }}</el-radio>
- </el-form-item>
- </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-form-item label="鎹愮尞妗堜緥" prop="name">
<el-input
:disabled="true"
v-model="form.donorname"
@@ -88,24 +108,12 @@
/>
</el-form-item>
</el-col>
- <el-col :span="5" v-if="ismanager == true">
- <el-form-item label="鐢宠閲戦" prop="pretaxcost">
- <el-input
- v-model="form.pretaxcost"
- placeholder="绋庡墠閲戦鍚堣"
- :disabled="true"
- />
- </el-form-item>
- </el-col>
- </el-row>
- <el-row style="text-align: left">
- <el-col :span="8">
+ <el-col :span="10">
<el-form-item label="鐢宠璇存槑" prop="remark">
<el-input v-model="form.remark" placeholder="鐢宠璇存槑" />
</el-form-item>
</el-col>
-
- <!--
+ <!--
<el-col :span="5">
<el-form-item label="鐢宠鐘舵��" prop="recordstatus">
<el-select v-model="form.recordstatus" placeholder="璇烽�夋嫨瀹℃牳鐘舵��" clearable size="small" :disabled="true">
@@ -128,41 +136,45 @@
</el-row>
<el-row>
<el-col :span="3" v-if="businessType == '1'">
- <el-button
- @click.native.prevent="importFeeItems"
- type="primary"
- size="small"
- >
- 瀵煎叆鏈嶅姟椤圭洰
- </el-button>
- </el-col>
- <el-col :span="3">
- <div style="margin-bottom: 15px;" v-if="businessType == 2">
+ <div style="margin-bottom: 15px;">
<el-button
- type="success"
+ type="primary"
icon="el-icon-download"
+ size="small"
+ @click.native.prevent="importFeeItems"
+ >
+ 鎵归噺瀵煎叆鏈嶅姟椤圭洰
+ </el-button>
+ </div>
+ </el-col>
+ <el-col :span="3" v-if="businessType == 2">
+ <div style="margin-bottom: 15px;">
+ <el-button
+ type="primary"
+ icon="el-icon-download"
+ size="small"
@click="Batchentry"
- >鎵归噺褰曞叆</el-button
+ >鎵归噺褰曞叆涓撳</el-button
>
</div>
</el-col>
-
- <el-col :span="3">
- <div
- style="margin-bottom: 15px;"
- v-if="
- userprofile.nickName == '闄堟厱鍗�' &&
- (businessType == '1' || businessType == '2')
- "
- >
+ <!-- <el-col
+ :span="3"
+ v-if="
+ userprofile.nickName == '闄堟厱鍗�' &&
+ (businessType == '1' || businessType == '2')
+ "
+ >
+ <div style="margin-bottom: 15px;">
<el-button
type="success"
icon="el-icon-edit-outline"
+ size="small"
@click="Manualcalculationfn"
>璁$畻涓◣</el-button
>
</div>
- </el-col>
+ </el-col> -->
</el-row>
<el-row>
<el-table
@@ -182,10 +194,6 @@
<el-input v-model="scope.row.orderno" placeholder="搴忓彿" />
</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="applytype"
align="center"
@@ -234,7 +242,7 @@
prop="servicesscope"
align="center"
label="鏈嶅姟璇存槑"
- v-if="form.applytype == '1'"
+ v-if="businessType == '1'"
width="180"
>
<template slot-scope="scope">
@@ -293,27 +301,13 @@
</template>
</el-table-column>
<el-table-column
- v-show="
- businessType == 2 ||
- businessType == 3 ||
- businessType == 4 ||
- ismanager == true
- "
prop="amount"
align="center"
- :label="amountLabel"
+ :label="amountlabel"
width="120"
>
<template slot-scope="scope">
- <el-input
- v-model="scope.row.amount"
- placeholder="閲戦"
- @blur="
- val => {
- calculateTax(scope.row, 'A');
- }
- "
- />
+ <el-input v-model="scope.row.amount" placeholder="閲戦" />
</template>
</el-table-column>
<el-table-column
@@ -321,9 +315,9 @@
align="center"
label="鎵g◣閲戦"
width="120"
- v-show="
- (this.ismanager == true) &
- (form.applytype == '1' || form.applytype == '2')
+ v-if="
+ ismanager == true &&
+ (businessType == '1' || businessType == '2')
"
>
<template slot-scope="scope">
@@ -338,20 +332,15 @@
align="center"
label="绋庡悗閲戦"
width="120"
- v-show="
- (this.ismanager == true) &
- (form.applytype == '1' || form.applytype == '2')
+ v-if="
+ ismanager == true &&
+ (businessType == '1' || businessType == '2')
"
>
<template slot-scope="scope">
<el-input
v-model="scope.row.taxedamount"
placeholder="绋庡悗閲戦"
- @blur="
- val => {
- calculateTax(scope.row, 'B');
- }
- "
/>
</template>
</el-table-column>
@@ -380,7 +369,7 @@
align="center"
label="涓撳鎵�鍦ㄥ崟浣�"
width="250"
- v-if="form.applytype == '1' && form.applytype == '2'"
+ v-if="businessType == '1' || businessType == '2'"
>
<template slot-scope="scope">
<el-button
@@ -393,39 +382,13 @@
>
</template>
</el-table-column>
- <!--
- <el-table-column prop="unitname" align="center" label="鍗曚綅锛堜釜浜猴級鍚嶇О" width="300"
- v-if="form.applytype == '4' || form.applytype == '3'">
- <template slot-scope="scope">
- <el-button type="primary" plain @click="showSelectionDialog(scope, 'account')">{{
- scope.row.unitname
- ? 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="title"
align="center"
label="鑱岀О"
width="120"
- v-if="form.applytype == '1' || form.applytype == '2'"
+ v-if="businessType == '1' || businessType == '2'"
>
<template slot-scope="scope">
<el-input v-model="scope.row.title" placeholder="鑱岀О" />
@@ -436,14 +399,12 @@
align="center"
label="韬唤璇佸彿"
width="200"
- v-if="form.applytype == '1' || form.applytype == '2'"
+ v-if="businessType == '1' || businessType == '2'"
>
<template slot-scope="scope">
- <el-form-item :error="scope.row.error" label-width="0">
+ <el-form-item label-width="0">
<el-input
- :disabled="
- userprofile.nickName != '闄堟厱鍗�' && businessType == 1
- "
+ :disabled="userprofile.nickName != '闄堟厱鍗�'"
v-model.number="scope.row.idcardno"
@input="tableParValueChange1(scope.row)"
placeholder="韬唤璇佸彿"
@@ -459,9 +420,7 @@
>
<template slot-scope="scope">
<el-input
- :disabled="
- userprofile.nickName != '闄堟厱鍗�' && businessType == 1
- "
+ :disabled="userprofile.nickName != '闄堟厱鍗�'"
v-model="scope.row.depositbank"
placeholder="寮�鎴烽摱琛�"
/>
@@ -475,9 +434,7 @@
>
<template slot-scope="scope">
<el-input
- :disabled="
- userprofile.nickName != '闄堟厱鍗�' && businessType == 1
- "
+ :disabled="userprofile.nickName != '闄堟厱鍗�'"
v-model="scope.row.bankcardno"
placeholder="閾惰甯愬彿"
/>
@@ -503,12 +460,7 @@
align="center"
width="330"
label="澶囨敞"
- v-if="
- businessType == 2 ||
- businessType == 3 ||
- businessType == 4 ||
- ismanager == true
- "
+ v-show="ismanager == true"
>
<template slot-scope="scope">
<el-input
@@ -558,7 +510,10 @@
type="text"
size="small"
v-if="
- businessType == 3 || businessType == 2 || businessType == 4
+ businessType == 2 ||
+ businessType == 3 ||
+ businessType == 4 ||
+ businessType == 1
"
>绁ㄦ嵁</el-button
>
@@ -633,7 +588,7 @@
>
<template slot-scope="scope">
<el-button
- type="primary"
+ type="danger"
size="mini"
@click.native.prevent.stop="deletedowfile(scope.row)"
>鍒犻櫎</el-button
@@ -693,12 +648,21 @@
style="margin-top: 25px; margin-bottom: 5px"
v-if="operationType == 'check' && userprofile.nickName == '闄堟厱鍗�'"
>
- <el-col :span="20">
- <el-form-item label="鐢宠鏉愭枡鐘舵��" prop="infoid">
+ <el-col :span="12">
+ <el-form-item label="棰勫鏉愭枡" prop="infoid">
<el-radio-group v-model="form.checkstatus" align="left">
<el-radio :label="1">寰呯敵璇锋潗鏂�</el-radio>
<el-radio :label="2">瀹℃牳閫氳繃绛夊緟閭瘎绾歌川鏉愭枡</el-radio>
<el-radio :label="3">宸叉敹鍒版姤閿�鏉愭枡</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12" v-if="businessType == 1">
+ <el-form-item label="绠楃◣鐘舵��" prop="infoid">
+ <el-radio-group v-model="form.istax" align="left">
+ <el-radio :label="-1">瀹℃牳涓�</el-radio>
+ <el-radio :label="0">鍏佽绠楃◣</el-radio>
+ <el-radio :label="1">宸茬畻绋�</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
@@ -769,11 +733,11 @@
<el-col :span="24">
<el-form-item
label="鍗曚綅鍚嶇О"
- prop="expertunitno"
+ prop="expertunitname"
label-width="120px"
>
<el-select
- v-model="accountselectform.expertunitno"
+ v-model="accountselectform.expertunitname"
placeholder="鍗曚綅鍚嶇О"
clearable
filterable
@@ -784,7 +748,7 @@
v-for="(spec, index) in unitList"
:key="index"
:label="spec.organizationname"
- :value="spec.organizationid"
+ :value="spec.organizationname"
></el-option>
</el-select>
</el-form-item>
@@ -799,8 +763,8 @@
>
<el-radio-group v-model="accountfrom" style="margin-bottom: 0">
<el-radio label="1">浠庤处鎴峰簱</el-radio>
- <el-radio label="2"
- >鏂板璐︽埛锛堟柊澧炲悗闇�瑕佸鏍哥‘璁ゆ墠鑳藉惎鐢級</el-radio
+ <el-radio disabled label="2"
+ >鏂板璐︽埛锛堟柊澧炰笓瀹惰处鎴峰悗闇�瑕佸鏍稿惎鐢ㄦ墠鑳戒娇鐢級</el-radio
>
</el-radio-group>
</el-form-item>
@@ -819,39 +783,45 @@
<el-option
v-for="item in accountlist"
:key="item.id"
- :label="item.username"
- :value="item.username"
+ :label="item.userid"
+ :value="item.id"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
- <el-row v-if="accountfrom == '2'">
- <el-col :span="16"
- ><el-form-item label="鏂板绫诲瀷" prop="usertype">
+ <el-row v-if="selectionType == 'account' && accountfrom == '2'">
+ <el-col :span="24">
+ <el-form-item label="鏂板绫诲瀷" prop="usertype" class="left-align">
<el-radio-group
v-model="accountselectform.usertype"
style="margin-bottom: 0"
+ @change="userTypeChange(accountselectform.usertype)"
>
- <el-radio label="expert">鏂板涓撳璐﹀彿</el-radio>
- <el-radio label="org">鏂板鍗曚綅璐﹀彿</el-radio>
+ <el-radio label="expert">涓撳璐︽埛</el-radio>
+ <el-radio label="org">鍗曚綅璐︽埛</el-radio>
+ <el-radio label="donor">鎹愮尞鑰呬翰灞炶处鎴�</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
- <el-row v-if="accountfrom == '2'">
+ <el-row v-if="selectionType == 'account' && accountfrom == '2'">
<el-col :span="24">
- <el-form-item label="璐﹀彿鍚嶇О" prop="username">
+ <el-form-item label="璐︽埛鍚嶇О" prop="username">
<el-input
v-model="accountselectform.username"
- placeholder="璇疯緭鍏ュ崟浣嶅悕绉版垨涓撳濮撳悕"
+ placeholder="璇疯緭鍏ュ崟浣嶅悕绉帮紝鎴栦笓瀹跺鍚嶏紝鎴栧叾浠栬处鍙�"
/>
</el-form-item>
</el-col>
</el-row>
<el-row
- v-if="accountfrom == '2' && accountselectform.usertype != 'org'"
+ v-if="
+ selectionType == 'account' &&
+ accountfrom == '2' &&
+ accountselectform.usertype != 'org'
+ "
>
<el-col :span="12">
<el-form-item label="韬唤璇佸彿" prop="idcardno">
@@ -861,7 +831,7 @@
/>
</el-form-item>
</el-col>
- <el-col :span="12">
+ <el-col :span="12" v-if="accountselectform.usertype == 'expert'">
<el-form-item label="鑱岀О" prop="title">
<el-select
v-model="accountselectform.title"
@@ -878,7 +848,11 @@
</el-col>
</el-row>
<el-row
- v-if="accountfrom == '2' && accountselectform.usertype != 'org'"
+ v-if="
+ selectionType == 'account' &&
+ accountfrom == '2' &&
+ accountselectform.usertype == 'expert'
+ "
>
<el-col>
<el-form-item label="鎵�鍦ㄥ崟浣�" prop="unitno">
@@ -908,7 +882,7 @@
</el-form-item>
</el-col>
</el-row>
- <el-row v-if="accountfrom == '2'">
+ <el-row v-if="selectionType == 'account' && accountfrom == '2'">
<el-col
><el-form-item label="寮�鎴烽摱琛�" prop="depositbank">
<el-input
@@ -926,7 +900,7 @@
</el-form-item>
</el-col>
</el-row>
- <el-row v-if="accountfrom == '2'">
+ <el-row v-if="selectionType == 'account' && accountfrom == '2'">
<el-col>
<el-form-item label="鑱旂郴鍦板潃" prop="address">
<el-input
@@ -936,7 +910,7 @@
</el-form-item>
</el-col>
</el-row>
- <el-row v-if="accountfrom == '2'">
+ <el-row v-if="selectionType == 'account' && accountfrom == '2'">
<el-col>
<el-form-item label="鑱旂郴鐢佃瘽" prop="telephone">
<el-input
@@ -962,7 +936,7 @@
:visible.sync="pdfVisible"
width="60%"
>
- <div>
+ <div style="margin-bottom: 10px;">
<el-table :data="tableDatatop" style="width: 100%">
<el-table-column
v-if="businessType == 4"
@@ -978,7 +952,7 @@
v-if="businessType == 4"
>
</el-table-column>
- <el-table-column prop="amount" align="center" :label="amountLabel">
+ <el-table-column prop="amount" align="center" :label="amountlabel">
</el-table-column>
<el-table-column
prop="taxedamount"
@@ -1035,14 +1009,20 @@
</el-table-column>
</el-table>
</div>
-
+ <el-alert
+ title="鏂颁笂浼犳枃浠堕渶鍦ㄦ彁浜や繚瀛樺悗鎵嶅彲杩涜妗堜緥鍏宠仈锛屽惁鍒欒涓烘斁寮�"
+ type="error"
+ show-icon
+ close-text="鐭ラ亾浜�"
+ >
+ </el-alert>
<el-tabs
style="margin-top: 20px;"
v-model="activeName"
type="border-card"
@tab-click="handleClick"
>
- <el-tab-pane label="鏅�氶檮浠�" :name="1">
+ <el-tab-pane label="鏅�氶檮浠�" name="common">
<div class="pdfimg">
<div class="box-pdf">
<div>
@@ -1103,7 +1083,7 @@
>
<template slot-scope="scope">
<el-button
- type="primary"
+ type="danger"
size="mini"
@click.native.prevent.stop="deletedowfile(scope.row)"
>鍒犻櫎</el-button
@@ -1134,6 +1114,8 @@
<!-- <img :src="pdfimg" /> -->
<el-image
style="width: 95%; height: 90%"
+ @error="handleImageError"
+ @load="handleImageLoad"
:src="pdfimg"
:preview-src-list="pdfimgsrcList"
>
@@ -1145,7 +1127,7 @@
<div v-else class="pdfimgmins">{{ hintitle }}</div>
</div>
</el-tab-pane>
- <el-tab-pane label="鍙戠エ鏂囦欢" :name="2">
+ <el-tab-pane label="鍙戠エ鏂囦欢" name="invoice">
<div class="pdfimg">
<div class="box-pdf">
<div>
@@ -1237,6 +1219,8 @@
<!-- <img :src="pdfimg" /> -->
<el-image
style="width: 95%; height: 90%"
+ @error="handleImageError"
+ @load="handleImageLoad"
:src="invoicepdfimg"
:preview-src-list="invoicepdfimgsrcList"
>
@@ -1303,6 +1287,8 @@
</template>
<script>
+import store from "@/store";
+
// 'sdaad2123UD2',1 'wsadadwsad',4 'sdadaddad',3 'ssaaddxs',2
//杩欓噷鍙互瀵煎叆鍏朵粬鏂囦欢锛堟瘮濡傦細缁勪欢锛屽伐鍏穓s锛岀涓夋柟鎻掍欢js锛宩son鏂囦欢锛屽浘鐗囨枃浠剁瓑绛夛級
//渚嬪锛歩mport 銆婄粍浠跺悕绉般�� from '銆婄粍浠惰矾寰勩��';
@@ -1367,7 +1353,8 @@
delExternalperson,
addExternalperson,
updateExternalperson,
- exportExternalperson
+ exportExternalperson,
+ getOnlyCode
} from "@/api/project/externalperson";
import { listItemexpense } from "@/api/project/itemexpense";
@@ -1428,7 +1415,7 @@
businessName: "",
//鎿嶄綔绫诲瀷
operationType: "",
-
+ Loadornot: false,
//褰撳墠鍗曟嵁id
curId: 0,
//褰撳墠閫変腑鎹愮尞妗堜緥
@@ -1504,18 +1491,15 @@
selectionScope: "",
//閫夋嫨绫诲瀷锛氫笓瀹讹紙鍗曚綅锛夎处鎴枫�佸伐浣滃崟浣嶏紙account/workunit锛�
selectionType: "",
- //鍙楃泭浜烘爣绛撅細涓撳璐�-涓撳锛堝崟浣嶏級鍚嶇О锛屽尰瀛︽垚鏈�-鍔炲叕-鍗曚綅锛堜釜浜猴級鍚嶇О
- beneficiarylabel: "",
//璐︽埛閫夋嫨锛�1鏄处鎴峰簱锛�2鏄柊澧�
accountfrom: "1",
+ //鍙楃泭浜烘爣绛撅細涓撳璐�-涓撳锛堝崟浣嶏級鍚嶇О锛屽尰瀛︽垚鏈�-鍔炲叕-鍗曚綅锛堜釜浜猴級鍚嶇О
+ beneficiarylabel: "",
//绋庡墠閲戦鏍囬锛氫笓瀹惰垂-绋庡墠閲戦锛涘尰瀛︽垚鏈�佸姙鍏垂鐢�-閲戦
- amountLabel: "绋庡墠閲戦",
+ amountlabel: "绋庡墠閲戦",
// 琛ㄥ崟鏍¢獙
rules: {
- // createTime: [
- // { required: true, message: "璇疯緭鍏ュ~鎶ユ棩鏈�", trigger: "blur" }
- // ],
reason: [
{ required: true, message: "璇疯緭鍏ュ嚭宸簨鐢�", trigger: "blur" }
],
@@ -1523,16 +1507,23 @@
{ required: true, message: "璇疯緭鍏ユ墍灞炰笟鍔$粍", trigger: "blur" }
]
},
+
dialogrules: {
- // expertidcardno: [{ validator: validatePass, trigger: "blur" }],
+ usertype: [
+ { required: true, message: "璇疯緭鍏ヨ处鎴风被鍨�", trigger: "blur" }
+ ],
+ username: [
+ { required: true, message: "璇疯緭鍏ヨ处鎴峰悕绉�", trigger: "blur" }
+ ],
+ idcardno: [
+ { required: true, message: "璇疯緭鍏ヨ韩浠借处鍙�", trigger: "blur" }
+ ],
+ //idcardno: [{ validator: validatePass, trigger: "blur" }],
depositbank: [
{ required: true, message: "璇疯緭鍏ュ紑鎴烽摱琛�", trigger: "change" }
],
bankcardno: [
{ required: true, message: "璇疯緭鍏ラ摱琛屽崱鍙�", trigger: "change" }
- ],
- unitno: [
- { required: true, message: "璇烽�夋嫨鍗曚綅鍚嶇О", trigger: "change" }
]
},
@@ -1551,13 +1542,15 @@
unitno: null,
personnelunitno: null,
address: null,
- telephone: null
+ telephone: null,
+ username: null,
+ userno: null
},
accountform: {
searchValue: null,
id: null,
- userstatus: 1,
+ userstatus: 0,
usertype: null,
pym: null,
@@ -1623,6 +1616,11 @@
username: null,
usertype: null
},
+ // 鏌ヨ鏈�鏂板簭鍙峰弬鏁�
+ seqnoParams: {
+ businessType: "externalperson",
+ datequery: false
+ },
//璁$畻涓◣鍙傛暟
taxParam: {
@@ -1648,9 +1646,10 @@
invoicepdfimg: "",
invoicepdfimgsrcList: [],
invoDatatop: [],
- activeName: 1, //鏂囦欢绫诲瀷
+ activeName: "common", //鏂囦欢绫诲瀷
//涓婁紶闄勪欢璺緞
uploadFileUrl: process.env.VUE_APP_BASE_API + "/common/upload",
+ ICDtoken: getToken(),
//鏂囦欢涓婁紶token
headers: {
Authorization: "Bearer " + getToken()
@@ -1768,22 +1767,22 @@
// if (!this.businessType && !this.operationType) {
if (this.businessType == "1") {
this.businessName = "涓撳鍔冲姟璐圭敵璇峰崟";
- this.amountLabel = "绋庡墠閲戦";
+ this.amountlabel = "绋庡墠閲戦";
this.beneficiarylabel = "涓撳鎴栧崟浣嶅悕绉�";
this.getUnitList();
} else if (this.businessType == "2") {
this.businessName = "浼︾悊涓撳鍔冲姟璐圭敵璇峰崟";
- this.amountLabel = "绋庡墠閲戦";
+ this.amountlabel = "绋庡墠閲戦";
this.beneficiarylabel = "涓撳鎴栧崟浣嶅悕绉�";
this.getUnitList();
} else if (this.businessType == "3") {
this.businessName = "鍖诲鎴愭湰鎶ラ攢鍗�";
- this.amountLabel = "閲戦";
+ this.amountlabel = "閲戦";
this.beneficiarylabel = "鍗曚綅鍚嶇О鎴栦釜浜�";
this.getUnitList();
} else if (this.businessType == "4") {
this.businessName = "鍔炲叕璐圭敤鎶ラ攢鍗�";
- this.amountLabel = "閲戦";
+ this.amountlabel = "閲戦";
this.beneficiarylabel = "鍗曚綅鍚嶇О鎴栦釜浜�";
this.getUnitList();
@@ -1842,11 +1841,8 @@
this.reset();
getFund(this.curId).then(response => {
- console.log(response.data, "鍒濆");
-
this.form = response.data;
sessionStorage.removeItem("apiform");
-
sessionStorage.setItem("apiform", JSON.stringify(this.form));
// this.form.recordstate =-1;
@@ -1894,8 +1890,6 @@
this.reset();
getFund(this.curId).then(response => {
- console.log(response.data, "鍒濆");
-
this.form = response.data;
sessionStorage.removeItem("apiform");
sessionStorage.setItem("apiform", JSON.stringify(this.form));
@@ -1905,7 +1899,7 @@
//涓氬姟鏄庣粏
getownFundDetail(this.curId).then(res => {
this.rbDetails = res.data;
- console.log("this.feeBlocks", this.feeBlocks);
+
for (let m = 0; m < this.rbDetails.length; m++) {
this.rbDetails[m].itemlist = [];
this.getRowFeeItems(m, this.rbDetails[m]);
@@ -1913,10 +1907,6 @@
//鑾峰彇璐圭敤椤圭洰鐨勮缁嗕俊鎭�
this.rbDetails[m].rowfeeblocks = this.feeBlocks.filter(
r => r.itemid == this.rbDetails[m].itemid
- );
- console.log(
- "this.rbDetails[m].rowfeeblocks",
- this.rbDetails[m].rowfeeblocks
);
}
@@ -1942,10 +1932,8 @@
this.reset();
getFund(this.curId).then(response => {
- console.log(response.data, "鍒濆");
this.form = response.data;
sessionStorage.removeItem("apiform");
-
sessionStorage.setItem("apiform", JSON.stringify(this.form));
//闄勪欢澶勭悊
@@ -2022,7 +2010,7 @@
//鍒ゆ柇鏄惁瀛樺湪涓婃姤璁板綍
this.form.recordstatus = 0;
var currenttime = new Date();
- this.form.createTime =
+ this.form.applyTime =
currenttime.getFullYear() +
"-" +
(currenttime.getMonth() + 1) +
@@ -2095,22 +2083,6 @@
);
return;
}
-
- /*
- if (
- tempDetail.idcardno == null &&
- this.businessType != "3" &&
- this.businessType != "4"
- ) {
- console.log(1122);
- this.$modal.msgWarning(
- "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
- (k + 1).toString() +
- "琛岀殑韬唤璇佹湭瀹屽杽锛岃鍏堝~鍐欒韩浠借瘉鍚庡啀鎻愪氦淇濆瓨锛�"
- );
- return;
- }
- */
if (this.businessType == "1") {
if (tempDetail.servicesscope == null) {
@@ -2237,6 +2209,19 @@
// });
} else {
this.form.recordstatus = -1;
+ var currenttime = new Date();
+ this.form.applyTime =
+ currenttime.getFullYear() +
+ "-" +
+ (currenttime.getMonth() + 1) +
+ "-" +
+ currenttime.getDate() +
+ " " +
+ currenttime.getHours() +
+ ":" +
+ currenttime.getMinutes() +
+ ":" +
+ currenttime.getSeconds();
// addorupdateFund(this.form).then((response) => {
// if (response.code === 200) {
@@ -2254,9 +2239,7 @@
sessionStorage.setItem("apiform", JSON.stringify(this.form));
addorupdateFund(this.form)
.then(response => {
- console.log(this.form);
- console.log(response, "淇濆瓨杩斿弬");
- if (response.code === 200) {
+ if (response.code == 200) {
if (this.form.id) {
this.$modal.msgSuccess("鐢宠鍗曚慨鏀规垚鍔燂紒");
this.$router.go(-1);
@@ -2267,7 +2250,7 @@
path: "/finance/applyDetail/",
query: {
id: response.data,
- businessType: "2",
+ businessType: this.businessType,
operationType: "update",
curCase: this.curCase
}
@@ -2290,40 +2273,34 @@
});
}, 500),
- //瀹℃壒鎻愪氦
- // checksubmit() {
- // console.log(this.checkObj.flowlevelone);
- // if (
- // this.form.checkstatus != 3 &&
- // this.userprofile.nickName == "闄堟厱鍗�" &&
- // this.checkObj.flowlevelone == 1
- // ) {
- // this.$modal.msgError("璇烽�夌‘璁ゆ潗鏂欑姸鎬佸凡鏀跺埌锛�");
- // return;
- // }
- // this.Savenow();
- // console.log("淇濆瓨骞跺鎵�");
- // },
checksubmit() {
- console.log(this.checkObj.flowlevelone);
- if (this.userprofile.nickName == "闄堟厱鍗�") {
- //妫�鏌ユ槸鍚︽敹鍒扮焊璐ㄦ潗鏂�
- if (this.form.checkstatus != 3 && this.checkObj.flowlevelone == 1) {
- this.$modal.msgError("璇风‘璁ゆ姤閿�鐨勭焊璐ㄦ潗鏂欏凡缁忔敹鍒帮紒");
+ //妫�鏌ユ槸鍚︽敹鍒扮焊璐ㄦ潗鏂�
+ if (this.checkObj.flowlevelone == 2) {
+ if (!this.checkObj.flowconclusion) {
+ this.$modal.msgError(
+ "璇疯緭鍏ュ鏍镐笉閫氳繃鐨勮鏄庝俊鎭紝鏂逛究缁忓姙浜轰慨鏀圭敵璇峰崟锛�"
+ );
return;
}
+ } else if (this.checkObj.flowlevelone == 1) {
+ if (this.userprofile.nickName == "闄堟厱鍗�") {
+ //妫�鏌ユ槸鍚︽敹鍒扮焊璐ㄦ潗鏂�
+ if (this.form.checkstatus != 3) {
+ this.$modal.msgError("璇峰厛纭鎶ラ攢鐨勭焊璐ㄦ潗鏂欐槸鍚﹀凡缁忔敹鍒帮紒");
+ return;
+ }
- //妫�鏌ヤ釜绋庤绠�
- // if ( (this.form.applytype == "1" || this.form.applytype == "2") && this.form.fundtaxtime == null ) {
- // this.$modal.msgError(
- // "鎻愪氦涓撳璐圭敤鐢宠鍗曘�佷鸡鐞嗕笓瀹剁敵璇疯垂鐢ㄧ敵璇峰崟瀹℃牳锛岄渶瑕佸厛瀹屾垚涓◣璁$畻锛�"
- // );
- // return;
- // }
- if (this.form.applytype == "1" && this.form.fundtaxtime == null) {
- this.$modal.msgError("鎻愪氦涓撳璐圭敤鐢宠鍗曞鏍革紝闇�瑕佸厛瀹屾垚涓◣璁$畻锛�");
- return;
+ //妫�鏌ヤ釜绋庤绠�
+ if (this.form.applytype == "1" && this.form.fundtaxtime == null) {
+ this.$modal.msgError(
+ "璇峰厛瀹屾垚涓撳璐圭敤鐨勪釜绋庤绠楀悗锛屽啀鎻愪氦瀹℃牳閫氳繃锛�"
+ );
+ return;
+ }
}
+ } else {
+ this.$modal.msgError("璇峰厛閫夋嫨瀹℃壒缁撴灉鍐嶆彁浜わ紒");
+ return;
}
this.Savenow();
@@ -2340,12 +2317,12 @@
getUserProfile() {
getUserProfile().then(res => {
this.userprofile = res.data;
- console.log(this.userprofile);
this.standardlevel = res.data.standardlevel;
+
if (
this.userprofile.userName == "admin" ||
- this.userprofile.userName == "001" ||
- this.userprofile.userName == "047"
+ this.userprofile.userName == "053" ||
+ this.userprofile.userName == "047"|| store.getters.rolesor[0].roleSort=='13'
) {
this.ismanager = true;
} else {
@@ -2360,7 +2337,6 @@
this.form.managername = this.userprofile.dept.leader;
this.form.phone = this.userprofile.phonenumber;
// this.form.applytype = this.businessType;
- // this.form.createTime = new Date();
if (this.businessType == "4") {
this.getUserAccount();
@@ -2379,29 +2355,42 @@
//鑾峰彇涓撳銆佸崟浣嶆満鏋勭殑璐︽埛鍒楄〃
getAccountList() {
listExternalperson().then(res => {
- this.accountlist = res.rows;
- /**
- for (let j = 0; j < this.accountlist.length; j++) {
+ // this.accountlist = res.rows;
+ //鑾峰彇鍚敤鐨勮处鎴峰垪琛�
+ for (let j = 0; j < res.rows.length; j++) {
//鍗曚綅璐﹀彿鍒楄〃
- if (this.accountlist[j].usertype == "org") {
- this.feeAccountList.push({
- id: this.accountlist[j].id,
- reportNo: this.accountlist[j].userno,
- reportName: this.accountlist[j].username,
- depositbank: this.accountlist[j].depositbank,
- branchbankname: this.accountlist[j].branchbankname,
- bankcardno: this.accountlist[j].bankcardno
- });
- }
- //涓撳璐﹀彿鍒楄〃
- else if (res.rows[j].usertype == "expert") {
- this.expertAccountList.push({
- expertNo: this.accountlist[j].id,
- exportName: this.accountlist[j].username+"("+this.accountlist[j].id+")"
- });
+ if (res.rows[j].userstatus == "1") {
+ if (res.rows[j].usertype == "org") {
+ this.accountlist.push({
+ id: res.rows[j].id,
+ userno: res.rows[j].userno,
+ username: res.rows[j].username,
+ idcardno: res.rows[j].idcardno,
+ title: res.rows[j].title,
+ depositbank: res.rows[j].depositbank,
+ bankcardno: res.rows[j].bankcardno,
+ unitno: res.rows[j].unitno,
+ unitname: res.rows[j].unitname,
+ userid:
+ res.rows[j].username + "锛�" + res.rows[j].bankcardno + "锛�"
+ });
+ } else {
+ this.accountlist.push({
+ id: res.rows[j].id,
+ userno: res.rows[j].userno,
+ username: res.rows[j].username,
+ idcardno: res.rows[j].idcardno,
+ title: res.rows[j].title,
+ depositbank: res.rows[j].depositbank,
+ bankcardno: res.rows[j].bankcardno,
+ unitno: res.rows[j].unitno,
+ unitname: res.rows[j].unitname,
+ userid:
+ res.rows[j].username + "锛�" + res.rows[j].idcardno + "锛�"
+ });
+ }
}
}
- */
});
},
@@ -2409,7 +2398,7 @@
getUserAccount() {
this.accountlist.map(res => {
if (res.username == this.form.username) {
- this.form.bankname = res.depositbank; //res.branchbankname銆乺es.depositbank;
+ this.form.bankname = res.depositbank;
this.form.bankcardno = res.bankcardno;
this.form.phone = res.telephone;
}
@@ -2421,7 +2410,6 @@
listOrganization(3).then(response => {
for (let i = 0; i < response.rows.length; i++) {
this.unitList.push({
- //organizationid: response.rows[i].organizationid,
organizationid: response.rows[i].id,
organizationname: response.rows[i].organizationname
});
@@ -2480,7 +2468,6 @@
//鑾峰彇鏈嶅姟椤圭洰
getRowFeeItems(rowindex, row) {
let list = this.feeItemTypes.filter(r => r.itemType == row.applytype);
- console.log(list[0]);
row.itemlist = list[0].itemDetails;
this.$set(this.rbDetails, rowindex, row);
},
@@ -2502,22 +2489,11 @@
row.amount = 0.0;
row.taxamount = 0.0;
row.taxedamount = item.expense;
-
- //璁$畻绋庡墠閲戦
- // this.calculateTax(row, "B");
} else {
row.amount = item.expense;
row.taxamount = 0.0;
row.taxedamount = 0.0;
-
- //璁$畻绋庡悗閲戦
- // this.calculateTax(row, "A");
}
-
- // this.form.serviceFunddetails = 0;
- // this.rbDetails.map(item => {
- // this.form.serviceFunddetails += item.amount;
- // });
}
});
},
@@ -2609,7 +2585,6 @@
}
targetValue += parseFloat(this.rbDetails[i].amount); // 鍋囪姣忎釜瀵硅薄涓殑鐗瑰畾鍊煎瓨鍌ㄥ湪'specificValue'灞炴�т笅
}
- console.log(targetValue, "鍚堣");
this.form.pretaxcost = targetValue;
},
@@ -2721,7 +2696,15 @@
this.$modal.msgWarning(
"鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
(k + 1).toString() +
- "琛岀殑鏈嶅姟浜哄憳濮撳悕涓洪�夋嫨,璇烽�夋嫨浜哄憳鍚庡啀鎻愪氦淇濆瓨锛�"
+ "琛岀殑浜哄憳濮撳悕涓虹┖,璇烽�夋嫨浜哄憳鍚庡啀鎻愪氦淇濆瓨锛�"
+ );
+ return;
+ }
+ if (tempDetail.unitname == null) {
+ this.$modal.msgWarning(
+ "鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
+ (k + 1).toString() +
+ "琛岀殑涓撳鍗曚綅涓虹┖,璇烽�夋嫨鍗曚綅鍚庡啀鎻愪氦淇濆瓨锛�"
);
return;
}
@@ -2825,11 +2808,23 @@
flowconclusion: this.checkObj.flowlevelone,
flowcontent: this.checkObj.flowconclusion
};
+ this.$modal.loading("姝e湪鎻愪氦瀹℃牳锛岃绋嶅�欙紒");
checkfund(checkFundObj).then(res => {
- //鍏抽棴绐楀彛
- this.$modal.msgSuccess("瀹℃牳瀹屾垚!");
- this.$store.dispatch("tagsView/delView", this.$route);
- this.$router.go(-1);
+ if (res.code == 200) {
+ //鍏抽棴绐楀彛
+ this.$modal.closeLoading();
+ this.$modal.msgSuccess("瀹℃牳瀹屾垚!");
+ this.$store.dispatch("tagsView/delView", this.$route);
+ this.$router.go(-1);
+ } else {
+ this.$modal.closeLoading();
+
+ if (res.msg) {
+ this.$modal.msgError("鎿嶄綔澶辫");
+ } else {
+ this.$modal.msgError(res.msg);
+ }
+ }
});
}
this.Getnetworkheader();
@@ -2861,7 +2856,6 @@
// 鎵嬪姩璁$畻
Manualcalculationfn() {
ManualCalculation(this.rbDetails).then(res => {
- console.log(res);
if (res.code == 200) {
sessionStorage.removeItem("apiform");
sessionStorage.removeItem("apifunddetail");
@@ -3004,10 +2998,6 @@
rowfeeblocks: [],
annexfiles: null
};
- // if (this.Reminderquantity >= 5) {
- // this.Savereminder = true;
- // return;
- // }
if (rowIndex == undefined || rowIndex == null || rowIndex < 0) {
this.rbDetails.push(rowData);
} else {
@@ -3062,10 +3052,8 @@
.catch(() => {
//鍑犵偣鍙栨秷鐨勬彁绀�
});
-
//鍏ㄩ儴鍒犻櫎鍚庢坊鍔犱竴鏉℃柊琛�
},
-
//璁$畻鎬婚噾棰�
sumTotalFee(row) {
let allSum = 0;
@@ -3139,30 +3127,49 @@
totalprint(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);
});
- }
});
},
- //鏂囦欢涓婁紶
+ handleImageError(e) {
+ // 鍔犺浇澶辫触
+ },
+ handleImageLoad(e) {
+ // 鍥剧墖鍔犺浇鎴愬姛鏃舵墽琛岀殑鎿嶄綔
+ console.log("Image loaded successfully");
+ },
handleUploadError() {},
remove(file, fileList) {
const rbDetails = [...this.rbDetails];
- if (this.activeName == 1) {
+ if (this.activeName == "common") {
this.fileListto.splice(this.fileListto.indexOf(file), 1);
rbDetails[this.atpresent].annexfilesList = this.fileListto;
} else {
@@ -3173,108 +3180,199 @@
uploadSccess(response, file, fileList) {
this.rbDetails;
+ const config = {
+ headers: { Authorization: "Bearer " + this.ICDtoken }
+ };
+ const pdfimg = this.Networkheader + "/prod-api" + response.fileName;
//鑾峰彇绁ㄦ嵁淇℃伅浣嶇疆
- console.log(response);
- console.log(file);
- if (this.activeName == 1) {
+ if (this.activeName == "common") {
if (response.code == 200) {
- // this.form.filename = file.raw.name;
this.previewpdf = true;
+
+ fetch(pdfimg, config)
+ .then(response => response.blob())
+ .then(blob => {
+ // 灏嗚幏鍙栫殑鏁版嵁娴佽浆鎹负URL
+ this.pdfimg = URL.createObjectURL(blob);
+ this.pdfimgsrcList.push(URL.createObjectURL(blob));
+ this.fileListto.push({
+ name: file.name,
+ url: URL.createObjectURL(blob)
+ });
+ })
+ .catch(error => {
+ console.error("Error loading image", error);
+ return;
+ });
+
this.$modal.msgSuccess(response.msg);
- this.fileListto.push({
+
+ console.log(this.fileListto, "鏂板鍚�");
+ if (!this.rbDetails[this.atpresent].annexfilesList) {
+ this.rbDetails[this.atpresent].annexfilesList = [];
+ }
+ this.rbDetails[this.atpresent].annexfilesList.push({
name: file.name,
url: response.fileName
});
- this.pdfimgsrcList.push(
- this.Networkheader + "/prod-api" + response.fileName
- );
- console.log(this.pdfimgsrcList);
this.pdftitle = "鍏�" + this.pdfimgsrcList.length + "椤�";
- this.pdfimg = this.Networkheader + "/prod-api" + response.fileName;
- this.rbDetails[this.atpresent].annexfilesList = this.fileListto;
} else {
console.log(response.msg);
}
} else {
if (response.code == 200) {
- // this.form.filename = file.raw.name;
this.previewpdf = true;
+ fetch(pdfimg, config)
+ .then(response => response.blob())
+ .then(blob => {
+ // 灏嗚幏鍙栫殑鏁版嵁娴佽浆鎹负URL
+ this.invoicepdfimg = URL.createObjectURL(blob);
+ this.invoicepdfimgsrcList.push(URL.createObjectURL(blob));
+ this.invoicefileListto.push({
+ name: file.name,
+ url: URL.createObjectURL(blob)
+ });
+ })
+ .catch(error => {
+ console.error("Error loading image", error);
+ return;
+ });
+
this.$modal.msgSuccess(response.msg);
- this.invoicefileListto.push({
+
+ console.log(this.invoicefileListto, "鏂板鍚�");
+ if (!this.rbDetails[this.atpresent].invoicefilesList) {
+ this.rbDetails[this.atpresent].invoicefilesList = [];
+ }
+ this.rbDetails[this.atpresent].invoicefilesList.push({
name: file.name,
url: response.fileName
});
- this.invoicepdfimgsrcList.push(
- this.Networkheader + "/prod-api" + response.fileName
- );
- console.log(this.invoicepdfimgsrcList);
this.pdftitle = "鍏�" + this.invoicepdfimgsrcList.length + "椤�";
- this.pdfimg = this.Networkheader + "/prod-api" + response.fileName;
- this.rbDetails[
- this.atpresent
- ].invoicefilesList = this.invoicefileListto;
- console.log(this.rbDetails[this.atpresent]);
- } else {
- console.log(response.msg);
}
}
},
// 鐐瑰嚮绁ㄦ嵁
Filepopup(index, rows, row) {
+ const config = {
+ headers: { Authorization: "Bearer " + this.ICDtoken }
+ };
+
this.tableDatatop = [];
+ this.fileListto = [];
+ this.invoicefileListto = [];
+ this.pdfimg = "";
+ this.invoicepdfimg = [];
this.pdfimgsrcList = [];
- this.invoDatatop = [];
this.invoicepdfimgsrcList = [];
- this.invoDatatop.push(row);
this.tableDatatop.push(row);
this.atpresent = index;
this.pdfVisible = true;
- console.log(this.rbDetails[index]);
+
if (this.rbDetails[index].annexfilesList) {
- this.previewpdf = true;
- this.fileListto = this.rbDetails[index].annexfilesList;
- console.log(this.fileListto);
- this.pdfimg = this.Networkheader + "/prod-api" + this.fileListto[0].url;
- this.fileListto.forEach(item => {
- this.pdfimgsrcList.push(this.Networkheader + "/prod-api" + item.url);
+ // this.rbDetails[index].annexfilesList.forEach((value, indexson) => {
+ // const pdfimg = this.Networkheader + "/prod-api" + value.url;
+ // fetch(pdfimg, config)
+ // .then(response => response.blob())
+ // .then(blob => {
+ // // 灏嗚幏鍙栫殑鏁版嵁娴佽浆鎹负URL
+ // this.fileListto.push({
+ // name: value.name,
+ // url: URL.createObjectURL(blob)
+ // });
+ // if (this.fileListto.length == 1) {
+ // this.pdfimg = URL.createObjectURL(blob);
+ // }
+ // this.pdfimgsrcList.push(URL.createObjectURL(blob));
+ // })
+ // .catch(error => {
+ // console.error("Error loading image", error);
+ // return;
+ // });
+ // });
+
+ const fetchPromises = this.rbDetails[index].annexfilesList.map(
+ (value, indexson) => {
+ const pdfimg = this.Networkheader + "/prod-api" + value.url;
+ return fetch(pdfimg, config)
+ .then(response => response.blob())
+ .then(blob => {
+ return {
+ name: value.name,
+ url: URL.createObjectURL(blob)
+ };
+ })
+ .catch(error => {
+ console.error("Error loading image", error);
+ return null;
+ });
+ }
+ );
+
+ Promise.all(fetchPromises).then(fileListto => {
+ this.fileListto = fileListto.filter(item => item !== null);
+ this.pdfimg = this.fileListto[0].url;
+ console.log(this.pdfimg, "pdfimg");
+ this.pdfimgsrcList = this.fileListto.map(item => item.url);
});
+
+ this.previewpdf = true;
} else {
this.fileListto = [];
this.pdfimg = "";
this.pdftitle = "";
}
- // -鍙戠エ鏂囦欢
+ //鍙戠エ
if (this.rbDetails[index].invoicefilesList) {
- this.previewpdf = true;
- this.invoicefileListto = this.rbDetails[index].invoicefilesList;
- console.log(this.invoicefileListto);
- this.invoicepdfimg =
- this.Networkheader + "/prod-api" + this.invoicefileListto[0].url;
- this.invoicefileListto.forEach(item => {
- this.invoicepdfimgsrcList.push(
- this.Networkheader + "/prod-api" + item.url
+ const fetchPromises = this.rbDetails[index].invoicefilesList.map(
+ (value, indexson) => {
+ const pdfimg = this.Networkheader + "/prod-api" + value.url;
+ return fetch(pdfimg, config)
+ .then(response => response.blob())
+ .then(blob => {
+ return {
+ name: value.name,
+ url: URL.createObjectURL(blob)
+ };
+ })
+ .catch(error => {
+ console.error("Error loading image", error);
+ return null;
+ });
+ }
+ );
+
+ Promise.all(fetchPromises).then(invoicefileListto => {
+ this.invoicefileListto = invoicefileListto.filter(
+ item => item !== null
+ );
+ this.invoicepdfimg = this.invoicefileListto[0].url;
+ console.log(this.invoicepdfimg, "invoicepdfimg");
+ this.invoicepdfimgsrcList = this.invoicefileListto.map(
+ item => item.url
);
});
- console.log(this.invoicepdfimgsrcList);
- console.log(this.invoicepdfimg);
+
+ this.previewpdf = true;
} else {
this.invoicefileListto = [];
this.invoicepdfimg = "";
this.pdftitle = "";
}
- if (this.activeName == 1) {
+ if (this.activeName == "common") {
this.pdftitle = "鍏�" + this.pdfimgsrcList.length + "椤�";
} else {
this.pdftitle = "鍏�" + this.invoicepdfimgsrcList.length + "椤�";
}
+ console.log(this.fileListto, "this.fileListto");
+ console.log(this.rbDetails[index].annexfilesList, "annexfilesList");
},
// 鐐瑰嚮宸蹭笂浼犳枃浠�
downFile(item) {
- if (this.activeName == 1) {
- console.log(item, "鐐瑰嚮鏂囦欢鎷縤tem");
+ if (this.activeName == "common") {
this.pdftitle =
"鍏�" + this.pdfimgsrcList.length + "椤癸紝褰撳墠閫変腑" + item.name;
let name = item.name.split(".");
@@ -3283,11 +3381,12 @@
this.previewpdf = false;
this.hintitle = "褰撳墠鏂囦欢鏆備笉鏀寔棰勮";
} else if (name[1] == "jpg" || "png") {
+ console.log(item, "灞曠ず");
this.previewpdf = true;
if (item.url) {
- this.pdfimg = this.Networkheader + "/prod-api" + item.url;
+ this.pdfimg = item.url;
} else {
- this.pdfimg = this.Networkheader + "/prod-api" + item.response.url;
+ this.pdfimg = "";
}
} else {
this.hintitle = "褰撳墠鏂囦欢鏆備笉鏀寔棰勮";
@@ -3295,7 +3394,6 @@
this.previewpdf = false;
}
} else {
- console.log(item, "鐐瑰嚮鏂囦欢鎷縤tem");
this.pdftitle =
"鍏�" + this.invoicepdfimgsrcList.length + "椤癸紝褰撳墠閫変腑" + item.name;
let name = item.name.split(".");
@@ -3306,12 +3404,9 @@
} else if (name[1] == "jpg" || "png") {
this.previewpdf = true;
if (item.url) {
- this.invoicepdfimg = this.Networkheader + "/prod-api" + item.url;
- console.log(this.invoicepdfimg, "pdfimg");
- console.log(this.invoicepdfimgsrcList, "imglist");
+ this.invoicepdfimg = item.url;
} else {
- this.invoicepdfimg =
- this.Networkheader + "/prod-api" + item.response.url;
+ this.invoicepdfimg = "";
}
} else {
this.hintitle = "褰撳墠鏂囦欢鏆備笉鏀寔棰勮";
@@ -3325,7 +3420,7 @@
},
// 鍙戠エ鍒囨崲
handleClick(tab, event) {
- if (this.activeName == 1) {
+ if (this.activeName == "common") {
this.pdftitle = "鍏�" + this.pdfimgsrcList.length + "椤�";
} else {
this.pdftitle = "鍏�" + this.invoicepdfimgsrcList.length + "椤�";
@@ -3333,40 +3428,88 @@
},
// 鐐瑰嚮鍒犻櫎
deletedowfile(row) {
- if (this.activeName == 1) {
- const indexlist = this.getIndexInArray(
- this.pdfimgsrcList,
- this.Networkheader + "/prod-api" + row.url
- );
+ console.log(row);
+ let indexvalue = "";
+ if (this.activeName == "common") {
+ const indexlist = this.getIndexInArray(this.pdfimgsrcList, row.url);
this.pdfimgsrcList.splice(indexlist, 1);
const index = this.getIndexInArray(this.fileListto, row);
this.fileListto.splice(index, 1);
+ console.log(this.rbDetails[this.atpresent].annexfilesList);
+ indexvalue = this.rbDetails[this.atpresent].annexfilesList.findIndex(
+ item => item.name == row.name
+ );
+ console.log(indexvalue, "鍒犻櫎绱㈠紩");
+ this.rbDetails[this.atpresent].annexfilesList.splice(indexvalue, 1);
} else {
const indexlist = this.getIndexInArray(
this.invoicepdfimgsrcList,
- this.Networkheader + "/prod-api" + row.url
+ row.url
);
this.invoicepdfimgsrcList.splice(indexlist, 1);
const index = this.getIndexInArray(this.invoicefileListto, row);
this.invoicefileListto.splice(index, 1);
+ console.log(this.rbDetails[this.atpresent].invoicefilesList);
+ indexvalue = this.rbDetails[this.atpresent].invoicefilesList.findIndex(
+ item => item.name == row.name
+ );
+ console.log(indexvalue, "鍒犻櫎绱㈠紩");
+ this.rbDetails[this.atpresent].invoicefilesList.splice(indexvalue, 1);
}
},
// 鐐瑰嚮涓婄Щ
moveupdowfile(row) {
- if (this.activeName == 1) {
- const index = this.getIndexInArray(this.fileListto, row);
+ if (this.activeName == "common") {
+ const index = this.fileListto.findIndex(item => item.name == row.name);
const item = this.fileListto.splice(index, 1)[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
this.fileListto.splice(index - 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
+
+ const indexann = this.rbDetails[
+ this.atpresent
+ ].annexfilesList.findIndex(item => item.name == row.name);
+ const itemann = this.rbDetails[this.atpresent].annexfilesList.splice(
+ indexann,
+ 1
+ )[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
+ this.rbDetails[this.atpresent].annexfilesList.splice(
+ indexann - 1,
+ 0,
+ itemann
+ ); // 灏唅temann鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
+ console.log(indexann, "indexann");
+ console.log(index, "index");
} else {
- const index = this.getIndexInArray(this.invoicefileListto, row);
+ const index = this.invoicefileListto.findIndex(
+ item => item.name == row.name
+ );
+
const item = this.invoicefileListto.splice(index, 1)[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
this.invoicefileListto.splice(index - 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
+
+ const indexinvo = this.rbDetails[
+ this.atpresent
+ ].invoicefilesList.findIndex(item => item.name == row.name);
+ const iteminvo = this.rbDetails[this.atpresent].invoicefilesList.splice(
+ indexinvo,
+ 1
+ )[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
+ this.rbDetails[this.atpresent].invoicefilesList.splice(
+ indexinvo - 1,
+ 0,
+ iteminvo
+ ); // 灏唅teminvo鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
}
+ console.log(
+ this.rbDetails[this.atpresent].annexfilesList,
+ "annexfilesList"
+ );
+ console.log(this.fileListto, "fileListto");
+ // console.log(this.rbDetails[this.atpresent].invoicefilesList,'invoicefilesList');
},
Downloadfile(row) {
- console.log(row);
- window.location.href = this.Networkheader + "/prod-api" + row.url;
+ window.location.href = row.url;
},
+
//涓撳/鍖荤枟鏈烘瀯/璐圭敤鎶ラ攢鏈烘瀯閫夋嫨
showSelectionDialog(scope, selectiontype) {
this.selectionScope = scope;
@@ -3376,15 +3519,21 @@
if (this.selectionType == "account") {
//榛樿浠庤处鎴峰簱閫夋嫨锛�1,璐︽埛搴擄紱2锛屾柊寤鸿处鎴�
this.accountfrom = "1";
-
+ if (scope.row.idcardno) {
+ this.accountselectform.accountname =
+ scope.row.beneficiaryname + "锛�" + scope.row.idcardno + "锛�";
+ } else {
+ this.accountselectform.accountname =
+ scope.row.beneficiaryname + "锛�" + scope.row.bankcardno + "锛�";
+ }
this.accountselectform.accountno = scope.row.beneficiaryno;
- this.accountselectform.accountname = scope.row.beneficiaryname;
this.accountselectform.expertunitname = "";
this.accountselectform.expertunitno = "";
- this.accountselectform.unitno = "";
- this.accountselectform.unitname = "";
- this.accountselectform.telephone = "";
+
+ this.accountselectform.username = "";
+ this.accountselectform.userno = "";
this.accountselectform.idcardno = "";
+ this.accountselectform.telephone = "";
this.accountselectform.title = "";
this.accountselectform.unitno = "";
this.accountselectform.unitname = "";
@@ -3397,7 +3546,6 @@
this.accountselectform.expertunitname = scope.row.unitname;
this.accountselectform.expertunitno = scope.row.unitno;
}
-
this.showselectiondialog = true;
},
@@ -3408,84 +3556,132 @@
if (this.selectionType == "account") {
if (this.accountfrom == "1") {
//璧嬪�间俊鎭�
- this.accountlist.map(res => {
- if (res.username == this.accountselectform.accountname) {
- console.log(res);
- this.rbDetails[tempIndex].beneficiaryno = res.userno;
- this.rbDetails[tempIndex].beneficiaryname = res.username;
- this.rbDetails[tempIndex].depositbank = res.depositbank;
- this.rbDetails[tempIndex].branchbankname = res.branchbankname;
- this.rbDetails[tempIndex].bankcardno = res.bankcardno;
- this.rbDetails[tempIndex].phone = res.telephone;
+ if (
+ this.rbDetails[tempIndex].userno != this.accountselectform.userno
+ ) {
+ this.accountlist.map(res => {
+ if (res.id == this.accountselectform.accountname) {
+ console.log(res, "res");
+ const hasIdOne = this.rbDetails.some(
+ obj => obj.beneficiaryname == res.username
+ );
+ if (hasIdOne) {
+ this.$modal.msgWarning(
+ "鏈嶅姟椤圭洰琛ㄤ腑锛屼汉鍛樺悕绉帮細" +
+ res.username +
+ "閲嶅锛岃娉ㄦ剰鏍稿淇℃伅锛�"
+ );
+ }
+ this.rbDetails[tempIndex].beneficiaryno = res.userno;
+ this.rbDetails[tempIndex].beneficiaryname = res.username;
+ this.rbDetails[tempIndex].depositbank = res.depositbank;
+ this.rbDetails[tempIndex].branchbankname = res.branchbankname;
+ this.rbDetails[tempIndex].bankcardno = res.bankcardno;
+ this.rbDetails[tempIndex].phone = res.telephone;
- if (res.usertype == "org") {
- this.rbDetails[tempIndex].idcardno = "";
- this.rbDetails[tempIndex].title = "";
- this.rbDetails[tempIndex].unitno = "";
- this.rbDetails[tempIndex].unitname = "";
- } else {
- this.rbDetails[tempIndex].idcardno = res.idcardno;
- this.rbDetails[tempIndex].title = res.title;
- this.rbDetails[tempIndex].unitno = parseInt(res.unitno);
- this.rbDetails[tempIndex].unitname = res.unitname;
- }
- }
- });
- } else if (this.accountfrom == "2") {
- //淇濆瓨鏂板璐﹀彿
- this.accountform.id = null;
- this.accountform.userno =
- this.accountlist[this.accountlist.length - 1].id + 1;
- this.accountform.usertype = this.accountselectform.usertype;
- this.accountform.username = this.accountselectform.username;
- this.accountform.idcardno = this.accountselectform.idcardno;
- this.accountform.sex = null;
- this.accountform.title = this.accountselectform.title;
- this.accountform.telephone = this.accountselectform.telephone;
- this.accountform.address = this.accountselectform.address;
- this.accountform.wbm = null;
- this.accountform.pym = null;
-
- this.accountform.depositbank = this.accountselectform.depositbank;
- this.accountform.bankcardno = this.accountselectform.bankcardno;
- this.accountform.branchbankname = null;
- this.accountform.remark = null;
- this.accountform.del_flag = "0";
- this.accountform.personnelunitno = null;
-
- if (this.accountselectform.usertype != "org") {
- this.accountform.unitno = this.accountselectform.unitno;
- this.unitList.map(res => {
- if (res.organizationid == this.accountform.unitno) {
- this.accountform.unitname = res.organizationname;
+ if (res.usertype == "org") {
+ this.rbDetails[tempIndex].idcardno = "";
+ this.rbDetails[tempIndex].title = "";
+ this.rbDetails[tempIndex].unitno = "";
+ this.rbDetails[tempIndex].unitname = "";
+ } else {
+ this.rbDetails[tempIndex].idcardno = res.idcardno;
+ this.rbDetails[tempIndex].title = res.title;
+ this.rbDetails[tempIndex].unitno = parseInt(res.unitno);
+ this.rbDetails[tempIndex].unitname = res.unitname;
+ }
}
});
- // try {
- // let unitIndex = this.unitList.findIndex(
- // item => this.accountform.unitno == item.organizationid
- // );
- // if (unitIndex > -1) {
- // this.accountform.unitname = this.unitList[unitIndex].organizationname;
- // } else {
- // this.accountform.unitname = this.accountform.unitno;
- // }
- // } catch {
- // this.accountform.unitname = this.accountform.unitno;
- // }
}
- addExternalperson(this.accountform).then(response => {
- if (response.code == 200) {
- //this.$modal.msgSuccess("鏂扮殑涓撳鎴栧崟浣嶈处鎴蜂俊鎭凡娣诲姞鎴愬姛锛�");
- this.accountselectform.accountno = this.accountselectform.userno;
- this.accountselectform.accountname = this.accountselectform.username;
+ } else if (this.accountfrom == "2") {
+ //淇濆瓨鏂板璐﹀彿
+ //鑾峰彇鐢ㄦ埛缂栧彿
+ getOnlyCode(this.seqnoParams).then(res => {
+ this.accountform.userno = res.data.currentvalue;
- //閲嶆柊鑾峰彇璐︽埛鍒楄〃
- listExternalperson().then(res => {
- this.accountlist = res.rows;
+ this.accountform.id = null;
+ this.accountform.usertype = this.accountselectform.usertype;
+ this.accountform.username = this.accountselectform.username;
+ this.accountform.idcardno = this.accountselectform.idcardno;
+ this.accountform.sex = null;
+ this.accountform.title = this.accountselectform.title;
+ this.accountform.telephone = this.accountselectform.telephone;
+ this.accountform.address = this.accountselectform.address;
+ this.accountform.wbm = null;
+ this.accountform.pym = null;
+
+ this.accountform.depositbank = this.accountselectform.depositbank;
+ this.accountform.bankcardno = this.accountselectform.bankcardno;
+ this.accountform.branchbankname = null;
+ this.accountform.remark = null;
+ this.accountform.del_flag = "0";
+ this.accountform.personnelunitno = null;
+
+ if (this.accountselectform.usertype == "expert") {
+ this.accountform.unitno = this.accountselectform.unitno;
+ this.unitList.map(res => {
+ if (res.organizationid == this.accountform.unitno) {
+ this.accountform.unitname = res.organizationname;
+ }
+ });
+ } else {
+ this.accountform.userstatus = 1;
+ }
+
+ addExternalperson(this.accountform).then(response => {
+ if (response.code == 200) {
+ // //閲嶆柊鑾峰彇璐︽埛鍒楄〃
+ // listExternalperson().then(res => {
+ // this.accountlist = res.rows;
+ // });
+
+ console.log("addExternalperson", response.data.id);
+ if (this.accountselectform.usertype == "org") {
+ this.accountlist.push({
+ id: response.data.id,
+ userno: this.accountform.userno,
+ username: this.accountform.username,
+ idcardno: this.accountform.idcardno,
+ title: this.accountform.title,
+ depositbank: this.accountform.depositbank,
+ bankcardno: this.accountform.bankcardno,
+ unitno: this.accountform.unitno,
+ unitname: this.accountform.unitname,
+ userid:
+ this.accountform.username +
+ "锛�" +
+ this.accountform.bankcardno +
+ "锛�"
+ });
+ this.$modal.msgSuccess("鎮ㄥ凡娣诲姞鎴愬姛鏂拌处鎴蜂俊鎭紒");
+ } else {
+ this.accountlist.push({
+ id: response.data.id,
+ userno: this.accountform.userno,
+ username: this.accountform.username,
+ idcardno: this.accountform.idcardno,
+ title: this.accountform.title,
+ depositbank: this.accountform.depositbank,
+ bankcardno: this.accountform.bankcardno,
+ unitno: this.accountform.unitno,
+ unitname: this.accountform.unitname,
+ userid:
+ this.accountform.username +
+ "锛�" +
+ this.accountform.idcardno +
+ "锛�"
+ });
+ this.$modal.msgSuccess(
+ "鎮ㄥ凡娣诲姞鎴愬姛鏂拌处鎴蜂俊鎭�,闇�瑕佸湪璐﹀彿鐘舵�佸惎鐢ㄥ悗鎵嶈兘琚娇鐢紒"
+ );
+ return;
+ }
+ this.accountselectform.accountno = this.accountform.userno;
+ this.accountselectform.accountname = this.accountselectform.username;
//璧嬪�间俊鎭�
this.accountlist.map(res => {
- if (res.username == this.accountselectform.accountname) {
+ if (res.userno == this.accountselectform.accountno) {
this.rbDetails[tempIndex].beneficiaryno = res.userno;
this.rbDetails[tempIndex].beneficiaryname = res.username;
this.rbDetails[tempIndex].depositbank = res.depositbank;
@@ -3507,27 +3703,33 @@
}
}
});
- });
- }
+ }
+ });
});
}
} else if (this.selectionType == "workunit") {
- console.log(tempIndex);
-
- this.rbDetails[
- tempIndex
- ].unitno = this.accountselectform.expertunitno;
- this.unitList.map(res => {
- if (res.organizationid == this.accountform.unitno) {
- this.rbDetails[tempIndex].unitno.unitname = res.organizationname;
- }
- });
+ if (
+ this.rbDetails[tempIndex].unitname !=
+ this.accountselectform.expertunitname
+ ) {
+ this.rbDetails[
+ tempIndex
+ ].unitname = this.accountselectform.expertunitname;
+ this.unitList.map(res => {
+ if (
+ res.organizationname == this.accountselectform.expertunitname
+ ) {
+ this.rbDetails[tempIndex].unitno = res.organizationid;
+ }
+ });
+ }
}
//鍏抽棴绐楀彛
this.showselectiondialog = false;
});
},
+
tableParValueChange(row, tto) {
const regex = /^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[012])(0[1-9]|[12]\d|3[01])\d{3}([0-9]|X)$/;
if (tto) {
@@ -3538,12 +3740,23 @@
}
return;
}
- console.log(11);
+
if (regex.test(row.idcardno)) {
row.error = "";
} else {
row.error = "韬唤璇佸彿鐮佹牸寮忛敊璇�";
}
+ },
+
+ //璐︽埛绫诲瀷閫夋嫨鍙樺寲
+ userTypeChange(type) {
+ if (type == "org") {
+ this.accountselectform.idcardno = "";
+ this.accountselectform.unitno = "";
+ this.accountselectform.unitname = "";
+ this.accountselectform.personnelunitno = "";
+ }
+ // this.$modal.msgWarning(type);
}
},
--
Gitblit v1.9.3