From c171dda262806192f34effbf989aaded99e45c38 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期五, 28 六月 2024 10:29:33 +0800
Subject: [PATCH] 11
---
src/views/project/travelexpenseapply/travelexpensedetail/index.vue | 167 ++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 122 insertions(+), 45 deletions(-)
diff --git a/src/views/project/travelexpenseapply/travelexpensedetail/index.vue b/src/views/project/travelexpenseapply/travelexpensedetail/index.vue
index ead57ef..b97444d 100644
--- a/src/views/project/travelexpenseapply/travelexpensedetail/index.vue
+++ b/src/views/project/travelexpenseapply/travelexpensedetail/index.vue
@@ -195,7 +195,7 @@
</el-col>
</el-row>
-->
- <!--
+ <!--
<el-row type="flex" :gutter="10" align="right" class="mb8">
<el-col :span="6">
<el-button
@@ -541,7 +541,7 @@
width="120"
>
<template slot-scope="scope">
- <el-input
+ <el-input
v-model="scope.row.foodexpenses"
placeholder="浼欓璐规姤閿�"
@blur="
@@ -909,6 +909,15 @@
</el-radio-group>
</el-form-item>
</el-col>
+ <el-col :span="12">
+ <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>
</el-row>
<el-row
@@ -957,7 +966,7 @@
:visible.sync="pdfVisible"
width="60%"
>
- <div>
+ <div style="margin-bottom: 10px;">
<el-table :data="tableDatatop" style="width: 100%">
<el-table-column prop="orderno" label="搴忓彿"> </el-table-column>
<el-table-column prop="personname" label="璐圭敤浜哄憳">
@@ -986,6 +995,13 @@
</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"
@@ -1636,7 +1652,7 @@
this.tableDatatop = [];
this.fileListto = [];
this.invoicefileListto = [];
- this.pdfimg = [];
+ this.pdfimg = "";
this.invoicepdfimg = [];
this.pdfimgsrcList = [];
this.invoicepdfimgsrcList = [];
@@ -1645,26 +1661,31 @@
this.pdfVisible = true;
if (this.rbDetails[index].annexfilesList) {
- 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)
+ 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;
});
- 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;
- });
+ }
+ );
+
+ 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 = [];
@@ -1673,26 +1694,35 @@
}
//鍙戠エ
if (this.rbDetails[index].invoicefilesList) {
- this.rbDetails[index].invoicefilesList.forEach((value, indexson) => {
- const pdfimg = this.Networkheader + "/prod-api" + value.url;
- fetch(pdfimg, config)
- .then(response => response.blob())
- .then(blob => {
- // 灏嗚幏鍙栫殑鏁版嵁娴佽浆鎹负URL
- this.invoicefileListto.push({
- name: value.name,
- url: URL.createObjectURL(blob)
+ 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;
});
- if (this.invoicefileListto.length == 1) {
- this.invoicepdfimg = URL.createObjectURL(blob);
- }
- this.invoicepdfimgsrcList.push(URL.createObjectURL(blob));
- })
- .catch(error => {
- console.error("Error loading image", error);
- return;
- });
+ }
+ );
+
+ 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
+ );
});
+
this.previewpdf = true;
} else {
this.invoicefileListto = [];
@@ -1700,11 +1730,13 @@
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");
},
// 鐐瑰嚮宸蹭笂浼犳枃浠�
@@ -1796,8 +1828,10 @@
const index = this.getIndexInArray(this.fileListto, row);
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 indexann = this.rbDetails[
+ this.atpresent
+ ].annexfilesList.findIndex(item => item.name == row.name);
const itemann = this.rbDetails[this.atpresent].annexfilesList.splice(
indexann,
1
@@ -1811,8 +1845,10 @@
const index = this.getIndexInArray(this.invoicefileListto, row);
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 indexinvo = this.rbDetails[
+ this.atpresent
+ ].invoicefilesList.findIndex(item => item.name == row.name);
const iteminvo = this.rbDetails[this.atpresent].invoicefilesList.splice(
indexinvo,
1
@@ -2488,6 +2524,47 @@
const rbDetails = [...this.rbDetails];
const rbPayees = [...this.rbPayees];
+ //淇濆瓨鍓嶆牎楠屾暟鎹�
+ for (let k = 0; k < rbDetails.length; k++) {
+ let tempDetail = rbDetails[k];
+ console.log(tempDetail, "tem");
+ if (!tempDetail.persontype) {
+ this.$modal.msgWarning(
+ "鏄庣粏琛ㄤ腑锛岀" +
+ (k + 1).toString() +
+ "琛岀殑浜哄憳绫诲埆鏈�夋嫨锛岃鍏堥�夋嫨浜哄憳绫诲埆鍚庡啀鎻愪氦淇濆瓨锛�"
+ );
+ return;
+ }
+
+ if (!tempDetail.personname) {
+ this.$modal.msgWarning(
+ "鏄庣粏琛ㄤ腑锛岀" +
+ (k + 1).toString() +
+ "琛岀殑璐圭敤浜哄憳鏈�夋嫨,璇烽�夋嫨璐圭敤浜哄憳鍚庡啀鎻愪氦淇濆瓨锛�"
+ );
+ return;
+ }
+
+ if (!tempDetail.starttime) {
+ this.$modal.msgWarning(
+ "鏄庣粏琛ㄤ腑锛岀" +
+ (k + 1).toString() +
+ "琛岀殑寮�濮嬫棩鏈熸湭閫夋嫨,璇烽�夋嫨寮�濮嬫棩鏈熷悗鍐嶆彁浜や繚瀛橈紒"
+ );
+ return;
+ }
+
+ if (!tempDetail.endtime) {
+ this.$modal.msgWarning(
+ "鏄庣粏琛ㄤ腑锛岀" +
+ (k + 1).toString() +
+ "琛岀殑缁撴潫鏃ユ湡濮撳悕涓洪�夋嫨,璇烽�夋嫨缁撴潫鏃ユ湡鍚庡啀鎻愪氦淇濆瓨锛�"
+ );
+ return;
+ }
+ }
+
if (this.form.id != null) {
console.log(this.form);
updateReimbursement(this.form);
--
Gitblit v1.9.3