From 30c170388fb4d26df6befff68b54e3d9c7ad2ce3 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期一, 28 八月 2023 10:52:50 +0800
Subject: [PATCH] 更改问题
---
src/views/login.vue | 99 ++++-
src/views/project/fund/applyDetail/index.vue | 750 ++++++++++++++++++++++++++++++++++++++-----------
2 files changed, 642 insertions(+), 207 deletions(-)
diff --git a/src/views/login.vue b/src/views/login.vue
index 113f8c7..40d3760 100644
--- a/src/views/login.vue
+++ b/src/views/login.vue
@@ -1,25 +1,43 @@
<template>
<div class="login">
- <el-form ref="loginForm" :model="loginForm" :rules="loginRules" class="login-form">
+ <el-form
+ ref="loginForm"
+ :model="loginForm"
+ :rules="loginRules"
+ class="login-form"
+ >
<h3 class="title">娴欐睙鐪丱PO鏁板瓧鍖栫鐞嗗钩鍙�</h3>
<el-form-item prop="username">
- <el-input v-model="loginForm.username" type="text" auto-complete="off" placeholder="璐﹀彿">
- <svg-icon slot="prefix" icon-class="user" class="el-input__icon input-icon" />
+ <el-input
+ v-model="loginForm.username"
+ type="text"
+ auto-complete="off"
+ placeholder="璐﹀彿"
+ >
+ <svg-icon
+ slot="prefix"
+ icon-class="user"
+ class="el-input__icon input-icon"
+ />
</el-input>
</el-form-item>
<el-form-item prop="password">
<el-input
v-model="loginForm.password"
type="password"
- auto-complete="off"
+ auto-complete="off"
@focus="tip"
placeholder="瀵嗙爜"
@keyup.enter.native="handleLogin"
>
- <svg-icon slot="prefix" icon-class="password" class="el-input__icon input-icon" />
+ <svg-icon
+ slot="prefix"
+ icon-class="password"
+ class="el-input__icon input-icon"
+ />
</el-input>
</el-form-item>
- <br>
+ <br />
<el-form-item prop="code" v-if="captchaOnOff">
<el-input
v-model="loginForm.code"
@@ -28,13 +46,21 @@
style="width: 63%"
@keyup.enter.native="handleLogin"
>
- <svg-icon slot="prefix" icon-class="validCode" class="el-input__icon input-icon" />
+ <svg-icon
+ slot="prefix"
+ icon-class="validCode"
+ class="el-input__icon input-icon"
+ />
</el-input>
<div class="login-code">
- <img :src="codeUrl" @click="getCode" class="login-code-img"/>
+ <img :src="codeUrl" @click="getCode" class="login-code-img" />
</div>
</el-form-item>
- <el-checkbox v-model="loginForm.rememberMe" style="margin:0px 0px 25px 0px;">璁颁綇瀵嗙爜</el-checkbox>
+ <el-checkbox
+ v-model="loginForm.rememberMe"
+ style="margin:0px 0px 25px 0px;"
+ >璁颁綇瀵嗙爜</el-checkbox
+ >
<el-form-item style="width:100%;">
<el-button
:loading="loading"
@@ -47,7 +73,9 @@
<span v-else>鐧� 褰� 涓�...</span>
</el-button>
<div style="float: right;" v-if="register">
- <router-link class="link-type" :to="'/register'">绔嬪嵆娉ㄥ唽</router-link>
+ <router-link class="link-type" :to="'/register'"
+ >绔嬪嵆娉ㄥ唽</router-link
+ >
</div>
</el-form-item>
</el-form>
@@ -61,7 +89,7 @@
<script>
import { getCodeImg } from "@/api/login";
import Cookies from "js-cookie";
-import { encrypt, decrypt } from '@/utils/jsencrypt'
+import { encrypt, decrypt } from "@/utils/jsencrypt";
export default {
name: "Login",
@@ -81,8 +109,13 @@
{ required: true, trigger: "blur", message: "璇疯緭鍏ユ偍鐨勮处鍙�" }
],
password: [
- { required: true, trigger: "blur", message: "瀵嗙爜蹇呴』鍖呭惈澶у皬鍐欏瓧姣嶃�佹暟瀛椼�佺壒娈婂瓧绗︿腑鐨勮嚦灏戜笁绉嶄笖闀垮害澶т簬绛変簬8浣�" }
- ],
+ {
+ required: true,
+ trigger: "blur",
+ message:
+ "瀵嗙爜蹇呴』鍖呭惈澶у皬鍐欏瓧姣嶃�佹暟瀛椼�佺壒娈婂瓧绗︿腑鐨勮嚦灏戜笁绉嶄笖闀垮害澶т簬绛変簬8浣�"
+ }
+ ]
// code: [{ required: true, trigger: "change", message: "璇疯緭鍏ラ獙璇佺爜" }]
},
loading: false,
@@ -106,12 +139,13 @@
this.getCookie();
},
methods: {
- tip(){
+ tip() {
//console.log('awdawd',鑱氱劍);
},
getCode() {
getCodeImg().then(res => {
- this.captchaOnOff = res.captchaOnOff === undefined ? true : res.captchaOnOff;
+ this.captchaOnOff =
+ res.captchaOnOff === undefined ? true : res.captchaOnOff;
if (this.captchaOnOff) {
this.codeUrl = "data:image/gif;base64," + res.img;
this.loginForm.uuid = res.uuid;
@@ -121,10 +155,11 @@
getCookie() {
const username = Cookies.get("username");
const password = Cookies.get("password");
- const rememberMe = Cookies.get('rememberMe')
+ const rememberMe = Cookies.get("rememberMe");
this.loginForm = {
username: username === undefined ? this.loginForm.username : username,
- password: password === undefined ? this.loginForm.password : decrypt(password),
+ password:
+ password === undefined ? this.loginForm.password : decrypt(password),
rememberMe: rememberMe === undefined ? false : Boolean(rememberMe)
};
},
@@ -134,21 +169,29 @@
this.loading = true;
if (this.loginForm.rememberMe) {
Cookies.set("username", this.loginForm.username, { expires: 30 });
- Cookies.set("password", encrypt(this.loginForm.password), { expires: 30 });
- Cookies.set('rememberMe', this.loginForm.rememberMe, { expires: 30 });
+ Cookies.set("password", encrypt(this.loginForm.password), {
+ expires: 30
+ });
+ Cookies.set("rememberMe", this.loginForm.rememberMe, {
+ expires: 30
+ });
} else {
Cookies.remove("username");
Cookies.remove("password");
- Cookies.remove('rememberMe');
+ Cookies.remove("rememberMe");
}
- this.$store.dispatch("Login", this.loginForm).then(() => {
- this.$router.push({ path: this.redirect || "/" }).catch(()=>{});
- }).catch(() => {
- this.loading = false;
- if (this.captchaOnOff) {
- this.getCode();
- }
- });
+ this.$store
+ .dispatch("Login", this.loginForm)
+ .then(() => {
+ this.$router.push({ path: this.redirect || "/" }).catch(() => {});
+ })
+ .catch(() => {
+ this.loading = false;
+ this.$message.error("鐧婚檰澶辫触璇烽噸璇曘��");
+ if (this.captchaOnOff) {
+ this.getCode();
+ }
+ });
}
});
}
diff --git a/src/views/project/fund/applyDetail/index.vue b/src/views/project/fund/applyDetail/index.vue
index 8eb3fcd..7d0a854 100644
--- a/src/views/project/fund/applyDetail/index.vue
+++ b/src/views/project/fund/applyDetail/index.vue
@@ -7,28 +7,53 @@
<el-row>
<el-col :span="5">
<el-form-item label="鐢宠鏃ユ湡" prop="createTime">
- <el-date-picker clearable style="width: 100%" v-model="form.createTime" type="date"
- value-format="yyyy-MM-dd HH:mm:ss" placeholder="鐢宠鏃ユ湡">
+ <el-date-picker
+ clearable
+ style="width: 100%"
+ v-model="form.createTime"
+ type="date"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ placeholder="鐢宠鏃ユ湡"
+ >
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="缁忓姙浜�" prop="username">
- <el-select v-model="form.username" placeholder="鐢宠浜�" clearable filterable allow-create style="width: 100%"
- @change="getUserAccount">
- <el-option v-for="dict in userlist" :key="dict.index" :label="dict.nickname"
- :value="dict.nickname"></el-option>
+ <el-select
+ v-model="form.username"
+ placeholder="鐢宠浜�"
+ clearable
+ filterable
+ allow-create
+ style="width: 100%"
+ @change="getUserAccount"
+ >
+ <el-option
+ v-for="dict in userlist"
+ :key="dict.index"
+ :label="dict.nickname"
+ :value="dict.nickname"
+ ></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="鎵�灞炵粍鍒�" prop="deptmentname">
- <el-input v-model="form.deptmentname" placeholder="璇疯緭鍏ユ墍灞炵粍鍒�" clearable />
+ <el-input
+ v-model="form.deptmentname"
+ placeholder="璇疯緭鍏ユ墍灞炵粍鍒�"
+ clearable
+ />
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="缁勯暱" prop="managername">
- <el-input v-model="form.managername" placeholder="璇疯緭鍏ョ粍闀�" clearable />
+ <el-input
+ v-model="form.managername"
+ placeholder="璇疯緭鍏ョ粍闀�"
+ clearable
+ />
</el-form-item>
</el-col>
</el-row>
@@ -50,10 +75,13 @@
<el-col :span="5">
<el-form-item label="閾惰鍚嶇О" prop="bankname">
<el-input v-model="form.bankname" placeholder="璇疯緭鍏ラ摱琛屽悕绉�" />
- </el-form-item>
- </el-col><el-col :span="5">
+ </el-form-item> </el-col
+ ><el-col :span="5">
<el-form-item label="閾惰璐﹀彿" prop="bankcardno">
- <el-input v-model="form.bankcardno" placeholder="璇疯緭鍏ラ摱琛岃处鍙�" />
+ <el-input
+ v-model="form.bankcardno"
+ placeholder="璇疯緭鍏ラ摱琛岃处鍙�"
+ />
</el-form-item>
</el-col>
<el-col :span="5">
@@ -72,9 +100,14 @@
-->
<el-col :span="5">
<el-form-item label="鐢宠閲戦" prop="pretaxcost">
- <el-input v-model="form.pretaxcost" placeholder="绋庡墠閲戦鍚堣" :disabled="true" />
+ <el-input
+ v-model="form.pretaxcost"
+ placeholder="绋庡墠閲戦鍚堣"
+ :disabled="true"
+ />
</el-form-item>
- </el-col> <!--
+ </el-col>
+ <!--
<el-col :span="5">
<el-form-item label="搴旂即绋�" prop="taxcost" v-if="businessType == '1' || businessType == '2'">
<el-input v-model="form.taxcost" placeholder="搴旂即绋庨噾棰濆悎璁�" :disabled="true" />
@@ -92,7 +125,11 @@
</el-col>
<el-col :span="5">
<el-form-item label="鎹愮尞鑰�" prop="name">
- <el-input :disabled="true" v-model="form.donorname" placeholder="璇疯緭鍏ユ崘鐚�呭鍚�" />
+ <el-input
+ :disabled="true"
+ v-model="form.donorname"
+ placeholder="璇疯緭鍏ユ崘鐚�呭鍚�"
+ />
</el-form-item>
</el-col>
<!--
@@ -108,14 +145,28 @@
<el-row style="margin-top: 5px; margin-bottom: 5px" />
<el-row style="margin-bottom: 10px" v-if="businessType == '1'">
<el-col :span="4">
- <el-button @click.native.prevent="importFeeItems" type="primary" size="small">
+ <el-button
+ @click.native.prevent="importFeeItems"
+ type="primary"
+ size="small"
+ >
瀵煎叆鏈嶅姟椤圭洰
</el-button>
</el-col>
</el-row>
<el-row>
- <el-table :data="rbDetails" v-loading="loading" border highlight-current-row>
- <el-table-column prop="orderno" align="center" label="搴忓彿" width="65">
+ <el-table
+ :data="rbDetails"
+ v-loading="loading"
+ border
+ highlight-current-row
+ >
+ <el-table-column
+ prop="orderno"
+ align="center"
+ label="搴忓彿"
+ width="65"
+ >
<template slot-scope="scope">
<el-input v-model="scope.row.orderno" placeholder="搴忓彿" />
</template>
@@ -124,50 +175,125 @@
<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" label="鏈嶅姟绫诲瀷" width="200">
+ <el-table-column
+ prop="applytype"
+ align="center"
+ label="鏈嶅姟绫诲瀷"
+ width="200"
+ >
<template slot-scope="scope">
- <el-select v-model="scope.row.applytype" placeholder="鏈嶅姟绫诲瀷" @change="verifyFeeItemType(scope.row)">
- <el-option v-for="dict in rowfeeItemTypes" :key="dict.index" :label="dict.label"
- :value="dict.value"></el-option>
+ <el-select
+ v-model="scope.row.applytype"
+ placeholder="鏈嶅姟绫诲瀷"
+ @change="verifyFeeItemType(scope.row)"
+ >
+ <el-option
+ v-for="dict in rowfeeItemTypes"
+ :key="dict.index"
+ :label="dict.label"
+ :value="dict.value"
+ ></el-option>
</el-select>
</template>
</el-table-column>
- <el-table-column prop="itemid" align="center" label="鏈嶅姟椤圭洰" width="260">
+ <el-table-column
+ prop="itemid"
+ align="center"
+ label="鏈嶅姟椤圭洰"
+ width="260"
+ >
<template slot-scope="scope">
- <el-select v-model="scope.row.itemid" placeholder="鏈嶅姟椤圭洰" filterable @change="verifyFeeItem(scope.row)"
- :filter-method="val => searchItemType(val, scope)">
- <el-option v-for="dict in scope.row.itemlist" :key="dict.index" :label="dict.itemName"
- :value="dict.id"></el-option>
+ <el-select
+ v-model="scope.row.itemid"
+ placeholder="鏈嶅姟椤圭洰"
+ filterable
+ @change="verifyFeeItem(scope.row)"
+ :filter-method="val => searchItemType(val, scope)"
+ >
+ <el-option
+ v-for="dict in scope.row.itemlist"
+ :key="dict.index"
+ :label="dict.itemName"
+ :value="dict.id"
+ ></el-option>
</el-select>
</template>
</el-table-column>
- <el-table-column prop="servicesscope" align="center" label="鏈嶅姟璇存槑" v-if="form.applytype == '1'" width="180">
+ <el-table-column
+ prop="servicesscope"
+ align="center"
+ label="鏈嶅姟璇存槑"
+ v-if="form.applytype == '1'"
+ width="180"
+ >
<template slot-scope="scope">
- <el-select v-model="scope.row.servicesscope" placeholder="鏈嶅姟璇存槑" clearable allow-create filterable
- @change="verifyFeeRemark(scope.row)">
- <el-option v-for="dict in scope.row.rowfeeblocks" :key="dict.servicesscope" :label="dict.remark"
- :value="dict.servicesscope"></el-option>
+ <el-select
+ v-model="scope.row.servicesscope"
+ placeholder="鏈嶅姟璇存槑"
+ clearable
+ allow-create
+ filterable
+ @change="verifyFeeRemark(scope.row)"
+ >
+ <el-option
+ v-for="dict in scope.row.rowfeeblocks"
+ :key="dict.servicesscope"
+ :label="dict.remark"
+ :value="dict.servicesscope"
+ ></el-option>
</el-select>
</template>
</el-table-column>
- <el-table-column prop="price" align="center" label="鍗曚环" width="120" v-if="businessType == 4">
+ <el-table-column
+ prop="price"
+ align="center"
+ label="鍗曚环"
+ width="120"
+ v-if="businessType == 4"
+ >
<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="120" v-if="businessType == 4">
+ <el-table-column
+ prop="quantity"
+ align="center"
+ label="鏁伴噺"
+ width="120"
+ v-if="businessType == 4"
+ >
<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>
- <el-table-column v-if="businessType == 2 || businessType == 3 || businessType == 4 || ismanager == true"
- prop="amount" align="center" :label=amountLabel width="120">
+ <el-table-column
+ v-if="
+ businessType == 2 ||
+ businessType == 3 ||
+ businessType == 4 ||
+ ismanager == true
+ "
+ prop="amount"
+ align="center"
+ :label="amountLabel"
+ width="120"
+ >
<template slot-scope="scope">
<!--
<el-select v-model="scope.row.amount" placeholder="绋庡墠閲戦" clearable filterable allow-create
@@ -179,18 +305,37 @@
<el-input v-model="scope.row.amount" placeholder="閲戦" />
</template>
</el-table-column>
- <el-table-column prop="taxedamount" align="center" label="绋庡悗閲戦" width="120" v-if="(this.ismanager == true) &
- (form.applytype == '1' || form.applytype == '2')
- ">
+ <el-table-column
+ prop="taxedamount"
+ align="center"
+ label="绋庡悗閲戦"
+ width="120"
+ v-if="
+ (this.ismanager == true) &
+ (form.applytype == '1' || form.applytype == '2')
+ "
+ >
<template slot-scope="scope">
- <el-input v-model="scope.row.taxedamount" placeholder="绋庡悗閲戦" />
+ <el-input
+ v-model="scope.row.taxedamount"
+ placeholder="绋庡悗閲戦"
+ />
</template>
</el-table-column>
- <el-table-column prop="beneficiaryname" align="center" label="濮撳悕" width="120"
- v-if="form.applytype == '1' || form.applytype == '2'">
+ <el-table-column
+ prop="beneficiaryname"
+ align="center"
+ label="濮撳悕"
+ width="120"
+ v-if="form.applytype == '1' || form.applytype == '2'"
+ >
<template slot-scope="scope">
- <el-button type="primary" plain @click="ShowDetailDialog(scope, 'expert')">{{ scope.row.beneficiaryname
- }}</el-button>
+ <el-button
+ type="primary"
+ plain
+ @click="ShowDetailDialog(scope, 'expert')"
+ >{{ scope.row.beneficiaryname }}</el-button
+ >
<!-- <el-select
filterable
allow-create
@@ -210,10 +355,19 @@
</el-select> -->
</template>
</el-table-column>
- <el-table-column prop="unitno" align="center" label="鍗曚綅鍚嶇О" width="250">
+ <el-table-column
+ prop="unitno"
+ align="center"
+ label="鍗曚綅鍚嶇О"
+ width="250"
+ >
<template slot-scope="scope">
- <el-button type="primary" plain @click="ShowDetailDialog(scope, 'unit')">{{ scope.row.unitname
- }}</el-button>
+ <el-button
+ type="primary"
+ plain
+ @click="ShowDetailDialog(scope, 'unit')"
+ >{{ scope.row.unitname }}</el-button
+ >
<!-- <el-select
v-model="scope.row.unitno"
placeholder="鍗曚綅"
@@ -230,26 +384,54 @@
</el-select> -->
</template>
</el-table-column>
- <el-table-column prop="title" align="center" label="鑱岀О" width="120"
- v-if="form.applytype == '1' || form.applytype == '2'">
+ <el-table-column
+ prop="title"
+ align="center"
+ label="鑱岀О"
+ width="120"
+ v-if="form.applytype == '1' || form.applytype == '2'"
+ >
<template slot-scope="scope">
<el-input v-model="scope.row.title" placeholder="鑱岀О" />
</template>
</el-table-column>
- <el-table-column prop="idcardno" align="center" label="韬唤璇佸彿" width="200"
- v-if="form.applytype == '1' || form.applytype == '2'">
+ <el-table-column
+ prop="idcardno"
+ align="center"
+ label="韬唤璇佸彿"
+ width="200"
+ v-if="form.applytype == '1' || form.applytype == '2'"
+ >
<template slot-scope="scope">
<el-input v-model="scope.row.idcardno" placeholder="韬唤璇佸彿" />
</template>
</el-table-column>
- <el-table-column prop="depositbank" align="center" label="寮�鎴烽摱琛�" width="200" v-if="form.applytype != '4'">
+ <el-table-column
+ prop="depositbank"
+ align="center"
+ label="寮�鎴烽摱琛�"
+ width="200"
+ v-if="form.applytype != '4'"
+ >
<template slot-scope="scope">
- <el-input v-model="scope.row.depositbank" placeholder="寮�鎴烽摱琛�" />
+ <el-input
+ v-model="scope.row.depositbank"
+ placeholder="寮�鎴烽摱琛�"
+ />
</template>
</el-table-column>
- <el-table-column prop="bankcardno" align="center" label="閾惰甯愬彿" width="210" v-if="form.applytype != '4'">
+ <el-table-column
+ prop="bankcardno"
+ align="center"
+ label="閾惰甯愬彿"
+ width="210"
+ v-if="form.applytype != '4'"
+ >
<template slot-scope="scope">
- <el-input v-model="scope.row.bankcardno" placeholder="閾惰甯愬彿" />
+ <el-input
+ v-model="scope.row.bankcardno"
+ placeholder="閾惰甯愬彿"
+ />
</template>
</el-table-column>
<el-table-column prop="remark" align="center" label="澶囨敞">
@@ -257,18 +439,39 @@
<el-input v-model="scope.row.remark" placeholder="澶囨敞" />
</template>
</el-table-column>
- <el-table-column fixed="right" align="center" label="鎿嶄綔" width="180">
+ <el-table-column
+ fixed="right"
+ align="center"
+ label="鎿嶄綔"
+ width="180"
+ >
<template slot-scope="scope">
- <el-button type="text" size="mini" @click="addRow(scope.$index)"
- v-if="operationType == 'add' || operationType == 'update'">鏂板</el-button>
- <el-button @click.native.prevent="
- deleteRows(scope.row, scope.$index, rbDetails)
- " type="text" size="small" v-if="operationType == 'add' || operationType == 'update'">
+ <el-button
+ type="text"
+ size="mini"
+ @click="addRow(scope.$index)"
+ v-if="operationType == 'add' || operationType == 'update'"
+ >鏂板</el-button
+ >
+ <el-button
+ @click.native.prevent="
+ deleteRows(scope.row, scope.$index, rbDetails)
+ "
+ type="text"
+ size="small"
+ v-if="operationType == 'add' || operationType == 'update'"
+ >
鍒犻櫎
</el-button>
- <el-button @click.native.prevent="
- Filepopup(scope.$index, rbDetails, scope.row)
- " type="text" size="small" v-if="businessType == 3 || businessType == 4">绁ㄦ嵁</el-button>
+ <el-button
+ @click.native.prevent="
+ Filepopup(scope.$index, rbDetails, scope.row)
+ "
+ type="text"
+ size="small"
+ v-if="businessType == 3 || businessType == 4"
+ >绁ㄦ嵁</el-button
+ >
</template>
</el-table-column>
</el-table>
@@ -316,31 +519,77 @@
-->
<el-row>
<el-col :span="12">
- <el-form-item label="璐圭敤鐢宠闄勪欢" align="left" prop="annexbankcard" v-if="businessType == 0">
- <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)
- " :on-preview="downFile" :disabled="operationType == 'detail'" :on-error="handleUploadError"
- :on-exceed="handleExceed" :on-remove="remove" accept="image/*,.pdf">
- <el-button :disabled="operationType == 'detail'" size="small" type="primary">涓婁紶绁ㄦ嵁</el-button>
+ <el-form-item
+ label="璐圭敤鐢宠闄勪欢"
+ align="left"
+ prop="annexbankcard"
+ v-if="businessType == 0"
+ >
+ <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)
+ "
+ :on-preview="downFile"
+ :disabled="operationType == 'detail'"
+ :on-error="handleUploadError"
+ :on-exceed="handleExceed"
+ :on-remove="remove"
+ accept="image/*,.pdf"
+ >
+ <el-button
+ :disabled="operationType == 'detail'"
+ size="small"
+ type="primary"
+ >涓婁紶绁ㄦ嵁</el-button
+ >
</el-upload>
</el-form-item>
</el-col>
</el-row>
<el-row v-if="operationType == 'detail' || operationType == 'check'">
<el-table :data="fundflowList" border>
- <el-table-column label="瀹℃牳鏃ユ湡" align="center" width="160" prop="createTime" />
- <el-table-column label="瀹℃牳浜�" align="center" width="120" prop="checkusername" />
- <el-table-column label="瀹℃牳缁撴灉" align="center" width="200" prop="flowconclusion">
+ <el-table-column
+ label="瀹℃牳鏃ユ湡"
+ align="center"
+ width="160"
+ prop="createTime"
+ />
+ <el-table-column
+ label="瀹℃牳浜�"
+ align="center"
+ width="120"
+ prop="checkusername"
+ />
+ <el-table-column
+ label="瀹℃牳缁撴灉"
+ align="center"
+ width="200"
+ prop="flowconclusion"
+ >
<template slot-scope="scope">
<span v-if="scope.row.flowconclusion == 1">閫氳繃</span>
<span v-if="scope.row.flowconclusion == 2">涓嶉�氳繃</span>
</template>
</el-table-column>
- <el-table-column label="瀹℃牳澶囨敞" align="center" prop="flowcontent" />
+ <el-table-column
+ label="瀹℃牳澶囨敞"
+ align="center"
+ prop="flowcontent"
+ />
</el-table>
</el-row>
- <el-row style="margin-top: 25px; margin-bottom: 5px" v-if="operationType == 'check'">
+ <el-row
+ style="margin-top: 25px; margin-bottom: 5px"
+ v-if="operationType == 'check'"
+ >
<el-col :span="7">
<el-form-item label="瀹℃牳缁撴灉" align="left">
<el-radio-group v-model="checkObj.flowlevelone" align="left">
@@ -359,15 +608,30 @@
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="submitForm"
- v-if="operationType == 'add' || operationType == 'update'">鎻愪氦淇濆瓨</el-button>
- <el-button type="primary" @click="checksubmit" v-if="operationType == 'check'">鎻愪氦瀹℃牳</el-button>
+ <el-button
+ type="primary"
+ @click="submitForm"
+ v-if="operationType == 'add' || operationType == 'update'"
+ >鎻愪氦淇濆瓨</el-button
+ >
+ <el-button
+ type="primary"
+ @click="checksubmit"
+ v-if="operationType == 'check'"
+ >鎻愪氦瀹℃牳</el-button
+ >
<el-button @click="cancel">鍏� 闂�</el-button>
</div>
</div>
- <el-dialog :visible.sync="showSelectionDialog" :close-on-click-modal="false" :title="'鍗曚綅/涓撳淇℃伅閫夋嫨'" width="500px"
- style="text-align: center" v-loading="loading">
+ <el-dialog
+ :visible.sync="showSelectionDialog"
+ :close-on-click-modal="false"
+ :title="'鍗曚綅/涓撳淇℃伅閫夋嫨'"
+ width="500px"
+ style="text-align: center"
+ v-loading="loading"
+ >
<el-form ref="funddetailForm" :model="funddetailForm">
<el-row>
<el-col :span="24" v-if="selectionType == 'expert'">
@@ -378,29 +642,77 @@
</el-radio-group>
</el-form-item>
</el-col>
- <el-col :span="24" v-if="selectionType == 'expert' && expertfrom == '1'">
- <el-form-item label="涓撳濮撳悕" prop="beneficiaryname" label-width="80px">
- <el-select filterable allow-create ref="beneficiaryname" default-first-option
- v-model="funddetailForm.beneficiaryname" placeholder="璇烽�夋嫨" style="width: 100%">
- <el-option v-for="item in expertlist" :key="item.expertNo" :label="item.exportName"
- :value="item.exportName">
+ <el-col
+ :span="24"
+ v-if="selectionType == 'expert' && expertfrom == '1'"
+ >
+ <el-form-item
+ label="涓撳濮撳悕"
+ prop="beneficiaryname"
+ label-width="80px"
+ >
+ <el-select
+ filterable
+ allow-create
+ ref="beneficiaryname"
+ default-first-option
+ v-model="funddetailForm.beneficiaryname"
+ placeholder="璇烽�夋嫨"
+ style="width: 100%"
+ >
+ <el-option
+ v-for="item in expertlist"
+ :key="item.expertNo"
+ :label="item.exportName"
+ :value="item.exportName"
+ >
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24" v-if="selectionType == 'unit'">
- <el-form-item label="鍗曚綅鍚嶇О" prop="unitno" label-width="120px" v-if="businessType == 1 || businessType == 2">
- <el-select v-model="funddetailForm.unitno" placeholder="鍗曚綅鍚嶇О" clearable filterable allow-create
- style="width: 100%">
- <el-option v-for="(spec, index) in unitList" :key="index" :label="spec.organizationname"
- :value="spec.organizationid"></el-option>
+ <el-form-item
+ label="鍗曚綅鍚嶇О"
+ prop="unitno"
+ label-width="120px"
+ v-if="businessType == 1 || businessType == 2"
+ >
+ <el-select
+ v-model="funddetailForm.unitno"
+ placeholder="鍗曚綅鍚嶇О"
+ clearable
+ filterable
+ allow-create
+ style="width: 100%"
+ >
+ <el-option
+ v-for="(spec, index) in unitList"
+ :key="index"
+ :label="spec.organizationname"
+ :value="spec.organizationid"
+ ></el-option>
</el-select>
</el-form-item>
- <el-form-item label="鍙戠エ鍗曚綅鍚嶇О" prop="unitno" label-width="120px" v-if="businessType == 3 || businessType == 4">
- <el-select v-model="funddetailForm.unitno" placeholder="鍗曚綅鍚嶇О" clearable filterable allow-create
- style="width: 100%">
- <el-option v-for="(item, index) in feeUnitList" :key="index" :label="item.reportName"
- :value="item.reportNo"></el-option>
+ <el-form-item
+ label="鍙戠エ鍗曚綅鍚嶇О"
+ prop="unitno"
+ label-width="120px"
+ v-if="businessType == 3 || businessType == 4"
+ >
+ <el-select
+ v-model="funddetailForm.unitno"
+ placeholder="鍗曚綅鍚嶇О"
+ clearable
+ filterable
+ allow-create
+ style="width: 100%"
+ >
+ <el-option
+ v-for="(item, index) in feeUnitList"
+ :key="index"
+ :label="item.reportName"
+ :value="item.reportNo"
+ ></el-option>
</el-select>
</el-form-item>
</el-col>
@@ -408,22 +720,43 @@
<el-row>
<el-col :span="12" v-if="expertfrom == '2'">
<el-form-item label="涓撳濮撳悕" prop="expertname" label-width="80px">
- <el-input v-model="funddetailForm.expertname" placeholder="蹇呭~椤�" />
+ <el-input
+ v-model="funddetailForm.expertname"
+ placeholder="蹇呭~椤�"
+ />
</el-form-item>
</el-col>
<el-col :span="12" v-if="expertfrom == '2'">
- <el-form-item label="鑱� 绉�" prop="experttitle" label-width="80px">
- <el-select v-model="funddetailForm.experttitle" placeholder="蹇呭~椤�">
- <el-option v-for="dict in dict.type.sys_professionaltitle" :key="dict.value" :label="dict.label"
- :value="dict.label"></el-option>
+ <el-form-item
+ label="鑱� 绉�"
+ prop="experttitle"
+ label-width="80px"
+ >
+ <el-select
+ v-model="funddetailForm.experttitle"
+ placeholder="蹇呭~椤�"
+ >
+ <el-option
+ v-for="dict in dict.type.sys_professionaltitle"
+ :key="dict.value"
+ :label="dict.label"
+ :value="dict.label"
+ ></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24" v-if="expertfrom == '2'">
- <el-form-item label="韬唤璇佸彿" prop="expertidcardno" label-width="80px">
- <el-input v-model="funddetailForm.expertidcardno" placeholder="蹇呭~椤�" />
+ <el-form-item
+ label="韬唤璇佸彿"
+ prop="expertidcardno"
+ label-width="80px"
+ >
+ <el-input
+ v-model="funddetailForm.expertidcardno"
+ placeholder="蹇呭~椤�"
+ />
</el-form-item>
</el-col>
</el-row>
@@ -441,41 +774,91 @@
-->
<el-row>
<el-col :span="24" v-if="expertfrom == '2'">
- <el-form-item label="鍗曚綅鍚嶇О" prop="expertunitno" label-width="80px">
- <el-select v-model="funddetailForm.expertunitno" placeholder="鍗曚綅鍚嶇О" clearable filterable allow-create
- style="width: 100%">
- <el-option v-for="(spec, index) in unitList" :key="index" :label="spec.organizationname"
- :value="spec.organizationid"></el-option>
- </el-select> </el-form-item></el-col>
+ <el-form-item
+ label="鍗曚綅鍚嶇О"
+ prop="expertunitno"
+ label-width="80px"
+ >
+ <el-select
+ v-model="funddetailForm.expertunitno"
+ placeholder="鍗曚綅鍚嶇О"
+ clearable
+ filterable
+ allow-create
+ style="width: 100%"
+ >
+ <el-option
+ v-for="(spec, index) in unitList"
+ :key="index"
+ :label="spec.organizationname"
+ :value="spec.organizationid"
+ ></el-option>
+ </el-select> </el-form-item
+ ></el-col>
</el-row>
<el-row>
<el-col :span="24" v-if="expertfrom == '2'">
- <el-form-item label="寮�鎴烽摱琛�" prop="expertdepositbank" label-width="80px">
- <el-input v-model="funddetailForm.expertdepositbank" placeholder="蹇呭~椤�" />
+ <el-form-item
+ label="寮�鎴烽摱琛�"
+ prop="expertdepositbank"
+ label-width="80px"
+ >
+ <el-input
+ v-model="funddetailForm.expertdepositbank"
+ placeholder="蹇呭~椤�"
+ />
</el-form-item>
</el-col>
<el-col :span="24" v-if="expertfrom == '2'">
- <el-form-item label="閾惰鍗″彿" prop="expertbankcardno" label-width="80px">
- <el-input v-model="funddetailForm.expertbankcardno" placeholder="蹇呭~椤�" />
+ <el-form-item
+ label="閾惰鍗″彿"
+ prop="expertbankcardno"
+ label-width="80px"
+ >
+ <el-input
+ v-model="funddetailForm.expertbankcardno"
+ placeholder="蹇呭~椤�"
+ />
</el-form-item>
</el-col>
</el-row>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="showSelectionDialog = false">鍙� 娑�</el-button>
- <el-button type="primary" @click="ConfirmDetailDialog()">纭� 瀹�</el-button>
+ <el-button type="primary" @click="ConfirmDetailDialog()"
+ >纭� 瀹�</el-button
+ >
</span>
</el-dialog>
<el-dialog :title="pdftitle" :visible.sync="pdfVisible" width="50%">
<div class="pdfimg">
<div class="box-pdf">
<div>
- <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="fileListto" multiple
- :limit="20" :headers="headers" :on-success="(response, file, fileList) =>
- uploadSccess(response, file, fileList)
- " :on-preview="downFile" :disabled="operationType == 'detail'" :on-error="handleUploadError"
- :on-exceed="handleExceed" :on-remove="remove" accept="image/*,.pdf">
- <el-button :disabled="operationType == 'detail'" size="small" type="primary">涓婁紶绁ㄦ嵁</el-button>
+ <el-upload
+ size="mini"
+ class="upload-demo"
+ :action="uploadFileUrl"
+ :file-list="fileListto"
+ multiple
+ :limit="20"
+ :headers="headers"
+ :on-success="
+ (response, file, fileList) =>
+ uploadSccess(response, file, fileList)
+ "
+ :on-preview="downFile"
+ :disabled="operationType == 'detail'"
+ :on-error="handleUploadError"
+ :on-exceed="handleExceed"
+ :on-remove="remove"
+ accept="image/*,.pdf"
+ >
+ <el-button
+ :disabled="operationType == 'detail'"
+ size="small"
+ type="primary"
+ >涓婁紶绁ㄦ嵁</el-button
+ >
</el-upload>
</div>
<!-- <div
@@ -489,7 +872,13 @@
</div>
<div v-if="this.previewpdf" class="pdfimgmin">
- <img :src="pdfimg" />
+ <!-- <img :src="pdfimg" /> -->
+ <el-image
+ style="width: 100px; height: 100px"
+ :src="pdfimg"
+ :preview-src-list="pdfimgsrcList"
+ >
+ </el-image>
</div>
<div v-else class="pdfimgmins">{{ hintitle }}</div>
</div>
@@ -650,7 +1039,6 @@
totalAfterTaxAmount: 0.0,
totalAmount: 0.0,
-
//璐圭敤绫诲瀷鏁扮粍
feeItemTypes: [],
@@ -727,7 +1115,7 @@
checkObj: {
flowlevelone: null,
flowconclusion: null,
- fundid: null,
+ fundid: null
},
// 鏌ヨ鍙傛暟
@@ -783,6 +1171,7 @@
//绁ㄦ嵁鏂囦欢
pdftitle: "",
pdfimg: "",
+ pdfimgsrcList: [],
pdfVisible: false,
previewpdf: false,
hintitle: "閫変腑宸︿晶宸蹭笂浼犳枃浠堕瑙堟煡鐪�",
@@ -856,22 +1245,19 @@
// if (!this.businessType && !this.operationType) {
if (this.businessType == "1") {
- this.businessName = "涓撳鍔冲姟璐圭敵璇峰崟"
- this.amountLabel = "绋庡墠閲戦"
+ this.businessName = "涓撳鍔冲姟璐圭敵璇峰崟";
+ this.amountLabel = "绋庡墠閲戦";
this.getUnitList();
- }
- else if (this.businessType == "2") {
+ } else if (this.businessType == "2") {
this.businessName = "浼︾悊涓撳鍔冲姟璐圭敵璇峰崟";
- this.amountLabel = "绋庡墠閲戦"
+ this.amountLabel = "绋庡墠閲戦";
this.getUnitList();
- }
- else if (this.businessType == "3") {
+ } else if (this.businessType == "3") {
this.businessName = "鍖诲鎴愭湰鎶ラ攢鍗�";
- this.amountLabel = "閲戦"
- }
- else if (this.businessType == "4") {
+ this.amountLabel = "閲戦";
+ } else if (this.businessType == "4") {
this.businessName = "鍔炲叕璐圭敤鎶ラ攢鍗�";
- this.amountLabel = "閲戦"
+ this.amountLabel = "閲戦";
// this.getBaseInfoList();
}
@@ -883,16 +1269,13 @@
console.log("this.curCase", this.curCase);
}
this.handleAdd();
- }
- else if (this.operationType == "update") {
+ } else if (this.operationType == "update") {
this.title = this.businessName + "淇敼";
this.handleUpdate();
- }
- else if (this.operationType == "detail") {
+ } else if (this.operationType == "detail") {
this.title = this.businessName + "鏌ョ湅";
this.handleDetail();
- }
- else if (this.operationType == "check") {
+ } else if (this.operationType == "check") {
this.title = this.businessName + "瀹℃牳";
this.handleCheck();
}
@@ -1004,7 +1387,7 @@
}
});
- //涓氬姟娴佺▼
+ //涓氬姟娴佺▼
let listFundflowparams = {
fundid: this.curId,
fundtype: 2
@@ -1046,7 +1429,7 @@
}
});
- //涓氬姟娴佺▼
+ //涓氬姟娴佺▼
let listFundflowparams = {
fundid: this.curId,
fundtype: 2
@@ -1055,14 +1438,13 @@
this.fundflowList = res.rows;
});
});
-
},
/** 鍒犻櫎鎸夐挳鎿嶄綔 */
handleDelete() {
this.$modal
.confirm("鏄惁纭鍒犻櫎璇ヨ褰曪紵")
- .then(function () {
+ .then(function() {
return delFund(this.curId);
})
.then(() => {
@@ -1077,7 +1459,7 @@
this.getfundList();
this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
})
- .catch(() => { });
+ .catch(() => {});
},
/** 涓婃姤鎸夐挳鎿嶄綔 */
@@ -1130,8 +1512,8 @@
if (tempDetail.itemid == null) {
this.$modal.msgWarning(
"鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
- (k + 1).toString() +
- "琛岀殑鏈嶅姟椤圭洰鏈�夋嫨锛岃鍏堥�夋嫨鏈嶅姟椤圭洰鍚庡啀鎻愪氦淇濆瓨锛�"
+ (k + 1).toString() +
+ "琛岀殑鏈嶅姟椤圭洰鏈�夋嫨锛岃鍏堥�夋嫨鏈嶅姟椤圭洰鍚庡啀鎻愪氦淇濆瓨锛�"
);
return;
}
@@ -1140,17 +1522,20 @@
if (tempDetail.servicesscope == null) {
this.$modal.msgWarning(
"鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
- (k + 1).toString() +
- "琛岀殑璐圭敤璇存槑鏈�夋嫨,璇烽�夋嫨璐圭敤璇存槑鍚庡啀鎻愪氦淇濆瓨锛�"
+ (k + 1).toString() +
+ "琛岀殑璐圭敤璇存槑鏈�夋嫨,璇烽�夋嫨璐圭敤璇存槑鍚庡啀鎻愪氦淇濆瓨锛�"
);
return;
}
- if (tempDetail.beneficiaryno == null || tempDetail.beneficiaryno == "鐐瑰嚮閫夋嫨") {
+ if (
+ tempDetail.beneficiaryno == null ||
+ tempDetail.beneficiaryno == "鐐瑰嚮閫夋嫨"
+ ) {
this.$modal.msgWarning(
"鏈嶅姟椤圭洰琛ㄤ腑锛岀" +
- (k + 1).toString() +
- "琛岀殑鏈嶅姟浜哄憳濮撳悕涓洪�夋嫨,璇烽�夋嫨浜哄憳鍚庡啀鎻愪氦淇濆瓨锛�"
+ (k + 1).toString() +
+ "琛岀殑鏈嶅姟浜哄憳濮撳悕涓洪�夋嫨,璇烽�夋嫨浜哄憳鍚庡啀鎻愪氦淇濆瓨锛�"
);
return;
}
@@ -1297,8 +1682,8 @@
//鍏抽棴绐楀彛
// this.loading = false;
- // this.getfundList();
- this.$store.dispatch('tagsView/delView', this.$route)
+ // this.getfundList();
+ this.$store.dispatch("tagsView/delView", this.$route);
this.$router.go(-1);
}
});
@@ -1310,13 +1695,13 @@
// fundid: this.checkObj.fundid,
fundid: this.curId,
flowconclusion: this.checkObj.flowlevelone,
- flowcontent: this.checkObj.flowconclusion,
+ flowcontent: this.checkObj.flowconclusion
};
- checkfund(checkFundObj).then((res) => {
+ checkfund(checkFundObj).then(res => {
//鍏抽棴绐楀彛
this.reset();
this.$modal.msgSuccess("瀹℃牳瀹屾垚!");
- this.$store.dispatch('tagsView/delView', this.$route)
+ this.$store.dispatch("tagsView/delView", this.$route);
this.$router.go(-1);
});
},
@@ -1324,7 +1709,7 @@
// 鍙栨秷鎸夐挳
cancel() {
// this.reset();
- this.$store.dispatch('tagsView/delView', this.$route)
+ this.$store.dispatch("tagsView/delView", this.$route);
this.$router.go(-1);
},
@@ -1333,7 +1718,11 @@
getUserProfile().then(res => {
this.userprofile = res.data;
this.standardlevel = res.data.standardlevel;
- if (this.userprofile.userName == "admin" || this.userprofile.userName == "001" || this.userprofile.userName == "047") {
+ if (
+ this.userprofile.userName == "admin" ||
+ this.userprofile.userName == "001" ||
+ this.userprofile.userName == "047"
+ ) {
this.ismanager = true;
} else {
this.ismanager = false;
@@ -1394,7 +1783,7 @@
getUserAccount() {
this.personlist.map(res => {
if (res.username == this.form.username) {
- this.form.bankname = res.depositbank;//res.branchbankname銆乺es.depositbank;
+ this.form.bankname = res.depositbank; //res.branchbankname銆乺es.depositbank;
this.form.bankcardno = res.bankcardno;
this.form.phone = res.telephone;
}
@@ -1773,7 +2162,7 @@
},
//璁$畻涓◣
- calculateTax() { },
+ calculateTax() {},
//璁$畻鎬婚噾棰�
sumTotalFee(row) {
@@ -1868,7 +2257,7 @@
},
//鏂囦欢涓婁紶
- handleUploadError() { },
+ handleUploadError() {},
/** 涓嬭浇鏂囦欢鎸夐挳鎿嶄綔 */
downFile(item) {
@@ -1943,6 +2332,8 @@
this.previewpdf = true;
if (item.url) {
this.pdfimg = item.url;
+ this.pdfimgsrcList = [];
+ this.pdfimgsrcList.push(item.url);
} else {
this.pdfimg = item.response.url;
}
@@ -2001,7 +2392,8 @@
} else {
//淇濆瓨鏂板涓撳
this.expertform.id = null;
- this.expertform.userno = this.personlist[this.personlist.length - 1].id + 1;
+ this.expertform.userno =
+ this.personlist[this.personlist.length - 1].id + 1;
this.expertform.usertype = "expert";
this.expertform.username = this.funddetailForm.expertname;
this.expertform.idcardno = this.funddetailForm.expertidcardno;
@@ -2098,7 +2490,7 @@
this.rbDetails[tempIndex] = singleDetail;
this.showSelectionDialog = false;
- },
+ }
},
//鐢熷懡鍛ㄦ湡 - 鍒涘缓瀹屾垚锛堝彲浠ヨ闂綋鍓峵his瀹炰緥锛�
@@ -2115,13 +2507,13 @@
// this.getFeeUnitList();
},
- beforeCreate() { }, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠
- beforeMount() { }, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠
- beforeUpdate() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠
- updated() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗
- beforeDestroy() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓�
- destroyed() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴�
- activated() { }, //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂
+ beforeCreate() {}, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠
+ beforeMount() {}, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠
+ beforeUpdate() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠
+ updated() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗
+ beforeDestroy() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓�
+ destroyed() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴�
+ activated() {} //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂
};
</script>
--
Gitblit v1.9.3