From a05bad345de643abb06ea743c4bb92c329b21d8d Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期二, 12 三月 2024 11:25:45 +0800 Subject: [PATCH] 11 --- src/views/project/donationdetails/index.vue | 91 ++++--- src/views/project/fund/performancedetails/index.vue | 52 ++++ src/api/project/statistics.js | 34 ++ src/views/project/statistics/caseStatistics/index.vue | 27 ++ src/views/project/statistics/chargeStatistics/index.vue | 27 ++ src/views/project/statistics/applyStatistics/index.vue | 27 ++ src/views/project/statistics/performanceStaristics/index.vue | 423 +++++++++++++++++++++++++++++++++++ 7 files changed, 643 insertions(+), 38 deletions(-) diff --git a/src/api/project/statistics.js b/src/api/project/statistics.js new file mode 100644 index 0000000..9bc1b38 --- /dev/null +++ b/src/api/project/statistics.js @@ -0,0 +1,34 @@ +import request from '@/utils/request' + +// 鏌ヨ妗堜緥缁熻 +export function listanlstatistics(query) { + return request({ + url: '/project/spstatcase/spStatCaselist', + method: 'get', + params: query + }) +} +// 鏌ヨ缁╂晥缁熻 +export function listjixstatistics(query) { + return request({ + url: '/project/funddetail/getListBySpStatBonus', + method: 'get', + params: query + }) + } + // 鏌ヨ鎶ラ攢缁熻 +export function listbxiaostatistics(query) { + return request({ + url: '/project/spstatexpense/spStatExpenselist', + method: 'get', + params: query + }) + } + // 鏌ヨ鏀惰垂缁熻 +export function listsfeistatistics(query) { + return request({ + url: '/project/donorchargeorgan/getListBySpStatChange', + method: 'get', + params: query + }) + } \ No newline at end of file diff --git a/src/views/project/donationdetails/index.vue b/src/views/project/donationdetails/index.vue index 2fe2221..1ba20d7 100644 --- a/src/views/project/donationdetails/index.vue +++ b/src/views/project/donationdetails/index.vue @@ -8,18 +8,18 @@ <el-step title="娼滃湪鎹愮尞" icon="el-icon-user"> <template slot="description" - v-if="Processdata.donatebaseinfo.createtime" + v-if="donatebaseinfo.createtime" > <p> 鎻愪氦锛�<span - >{{ Processdata.donatebaseinfo.createperson }} - {{ parseTime(Processdata.donatebaseinfo.createtime) }}</span + >{{ donatebaseinfo.createperson }} + {{ parseTime(donatebaseinfo.createtime) }}</span > </p> <p> 鏇存柊锛�<span - >{{ Processdata.donatebaseinfo.updateperson }} - {{ parseTime(Processdata.donatebaseinfo.updatetime) }}</span + >{{ donatebaseinfo.updateperson }} + {{ parseTime(donatebaseinfo.updatetime) }}</span > </p> </template> @@ -31,21 +31,21 @@ > <template slot="description" - v-if="Processdata.medicalevaluation.createtime" + v-if="medicalevaluation.createtime" > <p> 鎻愪氦锛�<span> - {{ Processdata.medicalevaluation.createperson }} + {{ medicalevaluation.createperson }} {{ - parseTime(Processdata.medicalevaluation.createtime) + parseTime(medicalevaluation.createtime) }}</span > </p> <p> 鏇存柊锛�<span> - {{ Processdata.medicalevaluation.updateperson }} + {{ medicalevaluation.updateperson }} {{ - parseTime(Processdata.medicalevaluation.updatetime) + parseTime(medicalevaluation.updatetime) }}</span > </p> @@ -58,21 +58,21 @@ > <template slot="description" - v-if="Processdata.relativesconfirmation.createtime" + v-if="relativesconfirmation.createtime" > <p> 鎻愪氦锛�<span> - {{ Processdata.relativesconfirmation.createperson }} + {{ relativesconfirmation.createperson }} {{ - parseTime(Processdata.relativesconfirmation.createtime) + parseTime(relativesconfirmation.createtime) }}</span > </p> <p> 鏇存柊锛�<span> - {{ Processdata.relativesconfirmation.updateperson }} + {{ relativesconfirmation.updateperson }} {{ - parseTime(Processdata.relativesconfirmation.updatetime) + parseTime(relativesconfirmation.updatetime) }}</span > </p> @@ -85,21 +85,21 @@ > <template slot="description" - v-if="Processdata.donateflowcharts.createtime" + v-if="donateflowcharts.createtime" > <p> 鎻愪氦锛�<span> - {{ Processdata.donateflowcharts.createperson }} + {{ donateflowcharts.createperson }} {{ - parseTime(Processdata.donateflowcharts.createtime) + parseTime(donateflowcharts.createtime) }}</span > </p> <p> 鏇存柊锛�<span> - {{ Processdata.donateflowcharts.updateperson }} + {{ donateflowcharts.updateperson }} {{ - parseTime(Processdata.donateflowcharts.updatetime) + parseTime(donateflowcharts.updatetime) }}</span > </p> @@ -112,21 +112,21 @@ > <template slot="description" - v-if="Processdata.donateorgansService.createtime" + v-if="donateorgansService.createtime" > <p> 鎻愪氦锛�<span> - {{ Processdata.donateorgansService.createperson }} + {{ donateorgansService.createperson }} {{ - parseTime(Processdata.donateorgansService.createtime) + parseTime(donateorgansService.createtime) }}</span > </p> <p> 鏇存柊锛�<span> - {{ Processdata.donateorgansService.updateperson }} + {{ donateorgansService.updateperson }} {{ - parseTime(Processdata.donateorgansService.updatetime) + parseTime(donateorgansService.updatetime) }}</span > </p> @@ -139,21 +139,21 @@ > <template slot="description" - v-if="Processdata.donationwitness.createtime" + v-if="donationwitness.createtime" > <p> 鎻愪氦锛�<span> - {{ Processdata.donationwitness.createperson }} + {{ donationwitness.createperson }} {{ - parseTime(Processdata.donationwitness.createtime) + parseTime(donationwitness.createtime) }}</span > </p> <p> 鏇存柊锛�<span> - {{ Processdata.donationwitness.updateperson }} + {{ donationwitness.updateperson }} {{ - parseTime(Processdata.donationwitness.updatetime) + parseTime(donationwitness.updatetime) }}</span > </p> @@ -166,21 +166,21 @@ > <template slot="description" - v-if="Processdata.donatecompletioninfo.createtime" + v-if="donatecompletioninfo.createtime" > <p> 鎻愪氦锛�<span> - {{ Processdata.donatecompletioninfo.createperson }} + {{ donatecompletioninfo.createperson }} {{ - parseTime(Processdata.donatecompletioninfo.createtime) + parseTime(donatecompletioninfo.createtime) }}</span > </p> <p> 鏇存柊锛�<span> - {{ Processdata.donatecompletioninfo.updateperson }} + {{ donatecompletioninfo.updateperson }} {{ - parseTime(Processdata.donatecompletioninfo.updatetime) + parseTime(donatecompletioninfo.updatetime) }}</span > </p> @@ -2611,7 +2611,13 @@ showTerminationBtn: 0, //缁堟鐘舵�� 0-鏈粓姝� 1-宸茬粓姝� // 娴佺▼鏁版嵁锛歞onatebaseinfo[createtime,updatetime]銆乵edicalevaluation銆乺elativesconfirmation銆乨onateflowcharts銆乨onateorgansService銆乨onationwitness銆乨onatecompletioninfo Processdata: {}, - + donatebaseinfo:{}, + medicalevaluation:{}, + relativesconfirmation:{}, + donateflowcharts:{}, + donateorgansService:{}, + donationwitness:{}, + donatecompletioninfo:{}, //鐪佸競鍖洪粯璁ゅ�艰缃紝鍙负绌� searchAddress: { sheng: "", @@ -2799,7 +2805,18 @@ Getbasicinformation() { // 宸︿晶娴佺▼鏁版嵁 getDonatebaseinfoflow(this.infoid).then(res => { - this.Processdata = res.data; + if (res.code==200) { + this.Processdata = res.data; + this.donatebaseinfo=this.Processdata.donatecompletioninfo; + this.medicalevaluation=this.Processdata.donatecompletioninfo; + this.relativesconfirmation=this.Processdata.donatecompletioninfo; + this.donateflowcharts=this.Processdata.donatecompletioninfo; + this.donateorgansService=this.Processdata.donatecompletioninfo; + this.donationwitness=this.Processdata.donatecompletioninfo; + this.donatecompletioninfo=this.Processdata.donatecompletioninfo; + }else{ + this.$message.error('渚ц竟鏍忎俊鎭幏鍙栧け璐�'); + } }); // 琛ㄥ崟鏁版嵁 diff --git a/src/views/project/fund/performancedetails/index.vue b/src/views/project/fund/performancedetails/index.vue index d51f2ee..00a33d7 100644 --- a/src/views/project/fund/performancedetails/index.vue +++ b/src/views/project/fund/performancedetails/index.vue @@ -196,6 +196,11 @@ :value="dict.id" ></el-option> </el-select> + <!-- <el-cascader + v-model="scope.row.applytype" + :options="aaoptions" + :show-all-levels="false" + ></el-cascader> --> </template> </el-table-column> <el-table-column @@ -985,7 +990,52 @@ //琛岃褰曠殑璐圭敤绫诲瀷鏁扮粍 rowfeeItemTypes: [{ label: "绠$悊鎴愭湰", value: "9" }], - + aaoptions: [ + { + value: "niandu", + label: "骞村害" + }, + { + value: "jidu", + label: "瀛e害", + children: [ + { + value: "2024-03-31", + label: "绗竴瀛e害" + }, + { + value: "2024-6-30", + label: "绗簩瀛e害" + }, + { + value: "2024-9-30", + label: "绗笁瀛e害" + }, + { + value: "2024-12-31", + label: "绗洓瀛e害" + } + ] + }, + { + value: "yuedu", + label: "鏈堝害", + children: [ + { label: "涓�鏈�", value: new Date(2024, 0 + 1, 0).getDate() }, + { label: "浜屾湀", value: new Date(2024, 1 + 1, 0).getDate() }, + { label: "涓夋湀", value: new Date(2024, 2 + 1, 0).getDate() }, + { label: "鍥涙湀", value: new Date(2024, 3 + 1, 0).getDate() }, + { label: "浜旀湀", value: new Date(2024, 4 + 1, 0).getDate() }, + { label: "鍏湀", value: new Date(2024, 5 + 1, 0).getDate() }, + { label: "涓冩湀", value: new Date(2024, 6 + 1, 0).getDate() }, + { label: "鍏湀", value: new Date(2024, 7 + 1, 0).getDate() }, + { label: "涔濇湀", value: new Date(2024, 8 + 1, 0).getDate() }, + { label: "鍗佹湀", value: new Date(2024, 9 + 1, 0).getDate() }, + { label: "鍗佷竴鏈�", value: new Date(2024, 10 + 1, 0).getDate() }, + { label: "鍗佷簩鏈�", value: new Date(2024, 11 + 1, 0).getDate() } + ] + } + ], //璐圭敤璇存槑 feeBlocks: [], diff --git a/src/views/project/statistics/applyStatistics/index.vue b/src/views/project/statistics/applyStatistics/index.vue new file mode 100644 index 0000000..812a35d --- /dev/null +++ b/src/views/project/statistics/applyStatistics/index.vue @@ -0,0 +1,27 @@ +<template> + <div> +鎶ラ攢 + </div> +</template> + +<script> +export default { + data () { + return { + + } + }, + + created () { + + }, + + methods: { + + } +} +</script> + +<style lang='scss' scoped> + +</style> diff --git a/src/views/project/statistics/caseStatistics/index.vue b/src/views/project/statistics/caseStatistics/index.vue new file mode 100644 index 0000000..001ddff --- /dev/null +++ b/src/views/project/statistics/caseStatistics/index.vue @@ -0,0 +1,27 @@ +<template> + <div> +妗堜緥 + </div> +</template> + +<script> +export default { + data () { + return { + + } + }, + + created () { + + }, + + methods: { + + } +} +</script> + +<style lang='scss' scoped> + +</style> diff --git a/src/views/project/statistics/chargeStatistics/index.vue b/src/views/project/statistics/chargeStatistics/index.vue new file mode 100644 index 0000000..c8b9597 --- /dev/null +++ b/src/views/project/statistics/chargeStatistics/index.vue @@ -0,0 +1,27 @@ +<template> + <div> +鏀惰垂 + </div> +</template> + +<script> +export default { + data () { + return { + + } + }, + + created () { + + }, + + methods: { + + } +} +</script> + +<style lang='scss' scoped> + +</style> diff --git a/src/views/project/statistics/performanceStaristics/index.vue b/src/views/project/statistics/performanceStaristics/index.vue new file mode 100644 index 0000000..d5ce8e4 --- /dev/null +++ b/src/views/project/statistics/performanceStaristics/index.vue @@ -0,0 +1,423 @@ +<!-- --> +<template> + <div class="app-container"> + 缁╂晥 + <el-form + :model="queryParams" + ref="queryForm" + :inline="true" + label-width="70px" + > + <el-row :gutter="8"> + <el-col :span="6"> + <el-form-item label="涓氬姟浜哄憳" prop="name"> + <el-input + v-model="queryParams.name" + placeholder="璇疯緭鍏ュ鍚�" + clearable + size="small" + @keyup.enter.native="handleQuery" + /> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item align="left" label="涓氬姟缁�" prop="treatmenthospitalno"> + <org-selecter + ref="orgSelecter" + :org-type="'3'" + v-model="queryParams.treatmenthospitalno" + /> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item label="妗堜緥鐘舵��"> + <el-select + v-model="queryParams.reporterno" + placeholder="璇烽�夋嫨妗堜緥鐘舵��" + > + <el-option + v-for="item in reportlist" + :key="item.index" + :label="item.reportername" + :value="item.reporterno" + > + </el-option> + </el-select> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="8"> + <el-col :span="12"> + <el-form-item label="缁熻鏃ユ湡"> + <el-date-picker + style="width: 100%" + v-model="selecttime" + type="monthrange" + range-separator="鑷�" + start-placeholder="寮�濮嬫湀浠�" + end-placeholder="缁撴潫鏈堜唤" + value-format="yyyy-MM-dd" + @change="getTimeList" + > + </el-date-picker> + </el-form-item> + </el-col> + + <el-col :span="6"> + <el-form-item> + <el-button + type="primary" + icon="el-icon-search" + size="mini" + @click="handleQuery" + >鎼滅储</el-button + > + <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" + >閲嶇疆</el-button + > + </el-form-item> + </el-col> + </el-row> + </el-form> + + <!--<el-table v-loading="loading" border :data="donatebaseinfoList"> --> + <el-table v-loading="loading" border :data="jxidata"> + <el-table-column label="搴忓彿" align="center" prop="id" width="100"> + </el-table-column> + + <el-table-column label="缁熻鏈堜唤" align="center" prop="name" /> + + <el-table-column label="涓氬姟缁�" align="center" prop="name"> + </el-table-column> + <el-table-column label="涓撹亴浜哄憳" align="center" prop="age" /> + + <el-table-column + label="妗堜緥鏁伴噺" + align="center" + prop="treatmenthospitalname" + /> + + <el-table-column + label="鎿嶄綔" + align="center" + class-name="small-padding fixed-width" + fixed="right" + > + <template slot-scope="scope"> + <!-- v-if="scope.row.recordstate==2" + --> + <el-button + size="mini" + type="text" + icon="el-icon-edit" + @click="handleAdd(scope.row)" + >鍖诲璇勪及</el-button + > + </template> + </el-table-column> + </el-table> + + <pagination + v-show="total > 0" + :total="total" + :page.sync="queryParams.pageNum" + :limit.sync="queryParams.pageSize" + @pagination="getList" + /> + + <!-- 娣诲姞鎴栦慨鏀瑰灞炵‘璁ゅ璇濇 --> + </div> +</template> + +<script> +//杩欓噷鍙互瀵煎叆鍏朵粬鏂囦欢锛堟瘮濡傦細缁勪欢锛屽伐鍏穓s锛岀涓夋柟鎻掍欢js锛宩son鏂囦欢锛屽浘鐗囨枃浠剁瓑绛夛級 +//渚嬪锛歩mport 銆婄粍浠跺悕绉般�� from '銆婄粍浠惰矾寰勩��'; + +import { + listDonatebaseinfo, + getDonatebaseinfo, + addDonatebaseinfo, + updateDonatebaseinfo +} from "@/api/project/donatebaseinfo"; + +import { + listsfeistatistics, + listbxiaostatistics, + listjixstatistics, + listanlstatistics +} from "@/api/project/statistics"; + +import { listUser } from "@/api/project/organization"; + +import Li_area_select from "@/components/Address"; +import OrgSelecter from "@/views/project/components/orgselect"; +import AnnexUpload from "@/views/project/components/annexupload"; + +export default { + //import寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� + components: { + Li_area_select, + OrgSelecter, + AnnexUpload + }, + name: "Medicalevaluation", + dicts: [], + data() { + //杩欓噷瀛樻斁鏁版嵁 + return { + starttime: "", + endtime: "", + countyname: "", + cuuntry: "", + + selecttime: "", + reportervalue: "", + reportlist: [], + //鐪佸競鍖� + //榛樿鍊艰缃紝鍙负绌� + searchAddress: { + sheng: "", + shi: "", + qu: "", + organizationname: null + }, + provinceData: [ + { label: "鍏ㄩ儴", value: "" }, + { label: "鏉窞甯�", value: "1" }, + { label: "瀹佹尝甯�", value: "2" }, + { label: "娓╁窞甯�", value: "3" }, + { label: "鍢夊叴甯�", value: "4" }, + { label: "婀栧窞甯�", value: "5" }, + { label: "缁嶅叴甯�", value: "6" }, + { label: "閲戝崕甯�", value: "7" }, + { label: "琛㈠窞甯�", value: "8" }, + { label: "鑸熷北甯�", value: "9" }, + { label: "鍙板窞甯�", value: "A" }, + { label: "涓芥按甯�", value: "B" } + ], + residenceAddresss: { + sheng: "娴欐睙鐪�", + shi: "", + qu: "" + }, + registerAddresss: { + sheng: "娴欐睙鐪�", + shi: "", + qu: "" + }, + defultAddresss: { + sheng: "娴欐睙鐪�", + shi: "", + qu: "" + }, + // 閬僵灞� + loading: false, + // 瀵煎嚭閬僵灞� + exportLoading: false, + // 閫変腑鏁扮粍 + ids: [], + // 闈炲崟涓鐢� + single: true, + // 闈炲涓鐢� + multiple: true, + // 鏄剧ず鎼滅储鏉′欢 + showSearch: true, + // 鎬绘潯鏁� + total: 0, + // 鎹愮尞鍩虹琛ㄦ牸鏁版嵁 + donatebaseinfoList: [], + // 鎹愮尞鍩虹琛ㄦ牸鏁版嵁 + jxidata: [], + // 寮瑰嚭灞傛爣棰� + title: "", + // 鏄惁鏄剧ず寮瑰嚭灞� + open: false, + // 鑾峰彇缁勭粐鍚嶇О鏃堕棿鑼冨洿 + daterangeReporttime: [], + // 鏌ヨ鍙傛暟 + queryParams: { + pabonustype: null, + pageNum: 1, + pageSize: 10 + }, + + // 琛ㄥ崟鍙傛暟 + form: {}, + // 琛ㄥ崟鏍¢獙 + rules: {}, + //褰撳墠閫変腑鎹愮尞妗堜緥 + curCase: {}, + //娴佺▼鍚嶇О + flowname: "鎹愮尞鍖诲璇勪及", + //娴佺▼鍚嶇О-浼︾悊瀹℃煡 + annexno: "", + confirmationform: {}, + //鏄惁鏄剧ず纭鐧昏琛� + isShowConfirmationDialog: false, + //纭鐧昏琛╰itle + confirmationTitle: "" + }; + }, + //鐩戝惉灞炴�� 绫讳技浜巇ata姒傚康 + computed: {}, + activated() {}, + mounted() {}, + + //鐩戞帶data涓殑鏁版嵁鍙樺寲 + watch: {}, + //鏂规硶闆嗗悎 + methods: { + getTimeList(e) { + if (this.selecttime != 0) { + this.endtime = this.selecttime[1]; + this.starttime = this.selecttime[0]; + // if (this.endtime == this.starttime) { + let num = Number(this.endtime.slice(5, 7)); + if (num < 9) { + let mon = Number(this.endtime.slice(6, 7)); + this.endtime = + this.endtime.slice(0, 5) + + "0" + + (mon + 1) + + "-" + + "01" + + " " + + "00" + + ":" + + "00" + + ":" + + "00"; + } + // this.endtime=this.endtime.slice(0,5)骞� + else if (num >= 10) { + this.endtime = + this.endtime.slice(0, 5) + + (num + 1) + + "-" + + "01" + + " " + + "00" + + ":" + + "00" + + ":" + + "00"; + } else { + this.endtime = + this.endtime.slice(0, 5) + + "10" + + "-" + + "01" + + " " + + "00" + + ":" + + "00" + + ":" + + "00"; + } + this.starttime = this.starttime + " " + "00" + ":" + "00" + ":" + "00"; + // } + } else { + // this.starttime = "1998-01-01 00:00:00"; + // this.endtime = "2998-01-01 00:00:00"; + } + }, + LoadReportList() { + listDonatebaseinfo().then(res => { + let list = res.rows; + let reportlist = []; + list.forEach(item => { + reportlist.push({ + reporterno: item.reporterno, + reportername: item.reportername + }); + }); + + if (reportlist != 0) { + reportlist = this.resetArr(reportlist); + this.reportlist = reportlist; + } + }); + }, + resetArr(Arr) { + var hash = {}; + Arr = Arr.reduce(function(arr, current) { + hash[current.reporterno] + ? "" + : (hash[current.reporterno] = true && arr.push(current)); + return arr; + }, []); + return Arr; + }, + + /** 鏌ヨ鎹愮尞鍩虹鍒楄〃 */ + getList() { + listjixstatistics(this.queryParams).then(res => { + this.jxidata = res.rows; + }); + }, + + // 琛ㄥ崟閲嶇疆 + reset() { + this.form = {}; + }, + /** 鎼滅储鎸夐挳鎿嶄綔 */ + handleQuery() { + this.queryParams.pageNum = 1; + this.getList(); + }, + /** 閲嶇疆鎸夐挳鎿嶄綔 */ + resetQuery() { + this.daterangeReporttime = []; + + this.reportervalue = ""; + + this.form.treatmenthospitalno = ""; + + this.queryParams = { + doname: null, + pageNum: 1, + pageSize: 10, + name: null, + idcardno: null, + residenceprovince: null, + residencecity: null, + residencetown: null, + // "2" + recordstate: null, + treatmenthospitalname: null, + donorno: null, + acquisitiontissueno: null, + reportername: null, + reporttime: null, + city: null + }; + this.selecttime = []; + this.getTimeList(); + this.searchAddress = { + sheng: "", + shi: "", + qu: "", + organizationname: null + }; + + this.resetForm("queryForm"); + this.handleQuery(); + } + }, + + //鐢熷懡鍛ㄦ湡 - 鍒涘缓瀹屾垚锛堝彲浠ヨ闂綋鍓峵his瀹炰緥锛� + created() { + //鑾峰彇鍒楄〃 + this.getList(); + } + // //鐢熷懡鍛ㄦ湡 - 鎸傝浇瀹屾垚锛堝彲浠ヨ闂瓺OM鍏冪礌锛� + // mounted() {}, + // beforeCreate() {}, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠 + // beforeMount() {}, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠 + // beforeUpdate() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠 + // updated() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗 + // beforeDestroy() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓� + // destroyed() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴� + // activated() {}, //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂 +}; +</script> -- Gitblit v1.9.3