diff --git a/WebSite/src/views/home/components/Person-in-charge-of-public-institution/index.vue b/WebSite/src/views/home/components/Person-in-charge-of-public-institution/index.vue index 2f871335620fd1d40d13f4f9bf7dda70fdb1c758..b0db50ddb3a941c94f106705a55152c27b053b7f 100644 --- a/WebSite/src/views/home/components/Person-in-charge-of-public-institution/index.vue +++ b/WebSite/src/views/home/components/Person-in-charge-of-public-institution/index.vue @@ -955,7 +955,7 @@ export default { state.code = '01'; } else if (e.name == '娴姩棰濆害') { state.code = '02'; - } else if (e.name == '骞翠腑娴姩') { + } else if (e.name == '骞翠腑鍥哄畾') { state.code = '011'; } else { state.code = '021'; diff --git a/WebSite/src/views/home/index.vue b/WebSite/src/views/home/index.vue index e00bc0dc0eb29c6c3930799337d0439e43c4b84c..333683c34f53218228379bff44a2a60e9b060514 100644 --- a/WebSite/src/views/home/index.vue +++ b/WebSite/src/views/home/index.vue @@ -82,7 +82,7 @@ export default { let week = WEEK[moment().day()]; let shi = moment().format('HH:ss:mm'); const data = reactive({ - currentPage: 'financialDataAnalysisHomePage', //financial-data-analysis-home-page,PersonInChargeOfPublicInstitution + currentPage: 'financialDataAnalysisHomePage', //financialDataAnalysisHomePage,PersonInChargeOfPublicInstitution param: {}, count: '' diff --git a/WebSite/src/views/portal/components/certain_list.vue b/WebSite/src/views/portal/components/certain_list.vue index ee191340fc6e9160c2132c27a79bc0cc0f3908e4..b7ec18cc33397c9fe863dbef8f68bad4f29bb426 100644 --- a/WebSite/src/views/portal/components/certain_list.vue +++ b/WebSite/src/views/portal/components/certain_list.vue @@ -74,7 +74,7 @@ </div> <div class="unit"> 鍗曚綅: - <el-select v-model="unit" placeholder="" @change="changeMoney"> + <el-select v-model="formData.amountUnit" placeholder="" @change="changeMoney"> <el-option label="鍏�" :value="1" /> <el-option label="涓囧厓" :value="2" /> </el-select> @@ -85,8 +85,7 @@ border stripe style="width: 100%" - :header-cell-style="{ backgroundColor: '#fafafa' }" - header-align="center" + :header-cell-style="{ backgroundColor: '#fafafa','text-align':'center' }" > <el-table-column label="搴忓彿" type="index"></el-table-column> <el-table-column label="椤圭洰缂栧彿" prop="projectCode"></el-table-column> @@ -214,17 +213,7 @@ export default { value: '021', }, ], - tableData: [ - { - name: '123', - }, - { - name: '456', - }, - { - name: '789', - }, - ], + tableData: [], isChecked: false, }); onMounted(() => { @@ -262,7 +251,7 @@ export default { const renderHeader = () => { return ( <div> - <span>鎵ц杩涘害</span> + <span style="margin-right:7px">鎵ц杩涘害</span> <el-checkbox onchecked="isChecked" onChange={() => a()} /> <span>鍚€熸</span> </div> @@ -299,11 +288,12 @@ export default { <style lang="scss" scoped> .home-container { background-color: white; + height: 84vh; .header .title { text-align: center; font-weight: 700; font-size: 20px; - margin: 0px 20px 20px 5px; + margin: 20px 20px 20px 5px; } .header .right { float: right; @@ -351,7 +341,7 @@ export default { font-size: 12px; padding: 0 25px 0 0; ::v-deep .el-select .el-input { - width: 50px !important; + width: 62px !important; } } } diff --git a/WebSite/src/views/portal/components/conference_fees.vue b/WebSite/src/views/portal/components/conference_fees.vue index e162b0c5c3c166d010abc02f8962f244ee2dae47..7d9c6c3cfb812dd70107e4964cbdeb20a631fea7 100644 --- a/WebSite/src/views/portal/components/conference_fees.vue +++ b/WebSite/src/views/portal/components/conference_fees.vue @@ -79,7 +79,7 @@ export default { children: [ { prop: 'compareOpenBudgetTotal', - label: '涓庡勾鍒濋绠楁暟澧炲噺棰�', + label: '涓庡勾鍒濋绠楁暟澧炲噺棰�(褰撳勾鎵ц鏁� - 骞村垵棰勭畻鏁�)', }, ], }, @@ -88,7 +88,7 @@ export default { children: [ { prop: 'compareLastYearExpendTotal', - label: '涓庝笂骞村悓鏈熷鍑忛', + label: '涓庝笂骞村悓鏈熷鍑忛(褰撳勾鎵ц鏁� - 涓婂勾鍚屾湡鎵ц鏁�)', }, ], }, @@ -106,11 +106,11 @@ export default { Data: [ { name: '鍚堣鏁�', - previousBudgetTotal: '111', - changeBudgetTotal: '111', - lastYearExpendTotal: '111', - expendTotal: '111', - noPassNum: '111', + previousBudgetTotal: '', + changeBudgetTotal: '', + lastYearExpendTotal: '', + expendTotal: '', + noPassNum: '', }, { name: '涓€绫讳細璁�', @@ -138,11 +138,11 @@ export default { }, { name: '鍥涚被浼氳', - previousBudgetTotal: '111', - changeBudgetTotal: '111', - lastYearExpendTotal: '111', - expendTotal: '111', - noPassNum: '111', + previousBudgetTotal: '', + changeBudgetTotal: '', + lastYearExpendTotal: '', + expendTotal: '', + noPassNum: '', }, ], }, @@ -178,11 +178,12 @@ export default { <style lang="scss" scoped> .home-container { background-color: white; + height: 84vh; .header .title { text-align: center; font-weight: 700; font-size: 20px; - margin: 0px 20px 20px 5px; + margin: 20px 20px 20px 5px; } .header .right { float: right; diff --git a/WebSite/src/views/portal/components/department.vue b/WebSite/src/views/portal/components/department.vue index 87b6d6cc14ad7b61ddb715fe59f9b6b73ed0816f..61003b327b9f52931add95651251474dbb694df1 100644 --- a/WebSite/src/views/portal/components/department.vue +++ b/WebSite/src/views/portal/components/department.vue @@ -33,7 +33,7 @@ /> </el-select> </el-form-item> - <el-form-item> + <el-form-item style="width:120px"> <el-date-picker v-model="YearMonth" type="month" @@ -89,7 +89,7 @@ border stripe style="width: 100%" - :header-cell-style="{ backgroundColor: '#fafafa' }" + :header-cell-style="{ backgroundColor: '#fafafa','text-align':'center' }" > <el-table-column label="搴忓彿" type="index"></el-table-column> <el-table-column label="椤圭洰缂栧彿" prop="projectCode"></el-table-column> @@ -106,24 +106,28 @@ <el-table-column label="鏈熷垵浣欓" prop="previousAmount" + align="right" ></el-table-column> - <el-table-column label="鏈勾鎷ㄦ" prop="appropAmount"></el-table-column> + <el-table-column label="鏈勾鎷ㄦ" prop="appropAmount" align="right"></el-table-column> <el-table-column label="鏈勾璋冩暣" prop="changeAppropAmount" + align="right" ></el-table-column> - <el-table-column label="鏈勾鏀跺叆" prop="incomeAmount"></el-table-column> - <el-table-column label="鏈勾鏀嚭" prop="expendAmount"></el-table-column> + <el-table-column label="鏈勾鏀跺叆" prop="incomeAmount" align="right"></el-table-column> + <el-table-column label="鏈勾鏀嚭" prop="expendAmount" align="right"></el-table-column> <el-table-column label="鏈熸湯浣欓" prop="endBudgetAmount" + align="right" ></el-table-column> - <el-table-column label="鍊熸浣欓" prop="loanAmount"></el-table-column> + <el-table-column label="鍊熸浣欓" prop="loanAmount" align="right"></el-table-column> <el-table-column label="鎵ц杩涘害 鍚€熸" prop="implementRate" :render-header="renderHeader" width="120" + align="center" ></el-table-column> </el-table> </div> @@ -183,17 +187,7 @@ export default { }, ], departmentList: [], - tableData: [ - { - name: '123', - }, - { - name: '456', - }, - { - name: '789', - }, - ], + tableData: [], isChecked: false, }); onMounted(() => { @@ -242,7 +236,7 @@ export default { const renderHeader = () => { return ( <div> - <span>鎵ц杩涘害</span> + <span style="margin-right:7px">鎵ц杩涘害</span> <el-checkbox onchecked="isChecked" onChange={() => a()} /> <span>鍚€熸</span> </div> @@ -283,11 +277,12 @@ export default { <style lang="scss" scoped> .home-container { background-color: white; + height: 84vh; .header .title { text-align: center; font-weight: 700; font-size: 20px; - margin: 0px 20px 20px 5px; + margin: 20px 20px 20px 5px; } .header .right { float: right; @@ -335,7 +330,7 @@ export default { font-size: 12px; padding: 0 25px 0 0; ::v-deep .el-select .el-input { - width: 50px !important; + width: 62px !important; } } } diff --git a/WebSite/src/views/portal/components/fees_sideTable.vue b/WebSite/src/views/portal/components/fees_sideTable.vue index 2d8d015a66c5b3a0177963c5a673b114396e6f55..60580ee301fd038ed403971395b58c1d31f9db69 100644 --- a/WebSite/src/views/portal/components/fees_sideTable.vue +++ b/WebSite/src/views/portal/components/fees_sideTable.vue @@ -13,9 +13,8 @@ <div class="body"> <div class="left"> <div class="buttonBox"> - <span style="border:1px solid #f0f2f5">鍗曚綅鍒楄〃</span> - <!-- <el-button class="button2" @click="clickAll">鍏ㄩ儴</el-button> --> - <el-button text bg @click="clickAll">鍏ㄩ儴</el-button> + <span style="margin-right: 20px;">鍗曚綅鍒楄〃</span> + <el-button type="primary" @click="clickAll">鍏ㄩ儴</el-button> </div> <div class="box"> <el-table @@ -29,7 +28,13 @@ @row-click="handleRow" > <el-table-column type="index" label="搴忓彿" width="80" /> - <el-table-column label="鍗曚綅鍚嶇О" prop="companyName" width="150" /> + <el-table-column + label="鍗曚綅鍚嶇О" + prop="companyName" + width="150" + header-align="center" + align="center" + /> <el-table-column label="鎵ц鐜�" prop="implementRate" @@ -117,7 +122,7 @@ export default { children: [ { prop: 'compareOpenBudgetTotal', - label: '涓庡勾鍒濋绠楁暟澧炲噺棰�', + label: '涓庡勾鍒濋绠楁暟澧炲噺棰�(褰撳勾鎵ц鏁� - 骞村垵棰勭畻鏁�)', }, ], }, @@ -126,7 +131,7 @@ export default { children: [ { prop: 'compareLastYearExpendTotal', - label: '涓庝笂骞村悓鏈熷鍑忛', + label: '涓庝笂骞村悓鏈熷鍑忛(褰撳勾鎵ц鏁� - 涓婂勾鍚屾湡鎵ц鏁�)', }, ], }, @@ -144,11 +149,11 @@ export default { Data: [ { name: '鍚堣鏁�', - previousBudgetTotal: '111', - changeBudgetTotal: '111', - lastYearExpendTotal: '111', - expendTotal: '111', - noPassNum: '111', + previousBudgetTotal: '', + changeBudgetTotal: '', + lastYearExpendTotal: '', + expendTotal: '', + noPassNum: '', }, { name: '涓€绫讳細璁�', @@ -176,11 +181,11 @@ export default { }, { name: '鍥涚被浼氳', - previousBudgetTotal: '111', - changeBudgetTotal: '111', - lastYearExpendTotal: '111', - expendTotal: '111', - noPassNum: '111', + previousBudgetTotal: '', + changeBudgetTotal: '', + lastYearExpendTotal: '', + expendTotal: '', + noPassNum: '', }, ], }, @@ -216,7 +221,10 @@ export default { }); }; const toBack = () => { - context.emit('switch-page', 'implementation', props.states); + context.emit('switch-page', 'implementation', { + ...props.states, + num: '1', + }); }; const arraySpanMethod = (row) => { console.log(row.rowIndex, row.columnIndex); @@ -255,7 +263,6 @@ export default { getOfficialBusinessBudgetDetail(); }; const clickI = (row) => { - console.log(row); data.companyName = row.companyName; data.columnList[0].label = row.companyName; data.columnList[2].label = row.companyCode; @@ -263,6 +270,8 @@ export default { }; const clickAll = () => { data.companyName = ''; + data.columnList[0].label = ''; + data.columnList[2].label = ''; getOfficialBusinessBudgetDetail(); }; const sortMethod = (a, b) => { @@ -290,11 +299,13 @@ export default { <style lang="scss" scoped> .home-container { background-color: white; + height: 84vh; .header .title { text-align: center; font-weight: 700; font-size: 20px; - margin: 0px 20px 20px 5px; + margin: 0px 20px 0px 5px; + line-height: 85px; } .header .right { float: right; @@ -308,11 +319,14 @@ export default { float: left; border: 1px solid #dcdcdc; flex: 1; + .buttonBox{ + line-height: 38px; + } } .right { float: right; flex: 4; - padding: 40px 10px; + padding: 0px 10px; } .year { float: right; @@ -330,5 +344,8 @@ export default { background-color: red !important; color: green !important; } + ::v-deep .el-button>span { + font-size: 16px !important; + } } </style> \ No newline at end of file diff --git a/WebSite/src/views/portal/components/funding.vue b/WebSite/src/views/portal/components/funding.vue index 0bde015761cf18dbf1607bc6195dda5d64071175..1fbf48ded338a7908f4ddb6ed32c002fe966f456 100644 --- a/WebSite/src/views/portal/components/funding.vue +++ b/WebSite/src/views/portal/components/funding.vue @@ -51,7 +51,7 @@ placeholder="鍗曚綅鍚嶇О" size="small" clearable - style="width: 228px" + style="width: 270px" > <el-option v-for="(item, index) in companyNameList" @@ -103,12 +103,15 @@ </div> <div class="table"> <el-table + v-if="isDetail == 0" :data="tableData" border stripe style="width: 100%" - :header-cell-style="{ backgroundColor: '#fafafa' }" - header-align="center" + :header-cell-style="{ + backgroundColor: '#fafafa', + 'text-align': 'center', + }" > <el-table-column label="搴忓彿" type="index"></el-table-column> <el-table-column label="鍗曚綅鍚嶇О" prop="companyName" width="220"> @@ -220,6 +223,76 @@ </template> </el-table-column> </el-table> + <el-table + v-if="isDetail == 1" + :data="tableDataDetail" + border + stripe + style="width: 100%" + :header-cell-style="{ + backgroundColor: '#fafafa', + 'text-align': 'center', + }" + > + <el-table-column label="搴忓彿" type="index"></el-table-column> + <el-table-column label="椤圭洰缂栧彿" prop="projectCode"></el-table-column> + <el-table-column + label="椤圭洰鍚嶇О" + prop="projectName" + width="220" + ></el-table-column> + <el-table-column label="鎵€灞炵粡璐�" prop="budgetType"></el-table-column> + <el-table-column + label="璧勯噾鏉ユ簮" + prop="fundSourceName" + ></el-table-column> + <el-table-column + label="鎵€灞為儴闂�" + prop="departmentName" + ></el-table-column> + <el-table-column + label="鏈熷垵浣欓" + prop="previousAmount" + align="right" + ></el-table-column> + <el-table-column + label="鏈勾鎷ㄦ" + prop="appropAmount" + align="right" + ></el-table-column> + <el-table-column + label="鏈勾璋冩暣" + prop="changeAppropAmount" + align="right" + ></el-table-column> + <el-table-column + label="鏈勾鏀跺叆" + prop="incomeAmount" + align="right" + ></el-table-column> + <el-table-column + label="鏈勾鏀嚭" + prop="expendAmount" + align="right" + ></el-table-column> + <el-table-column + label="鏈熸湯浣欓" + prop="endBudgetAmount" + align="right" + ></el-table-column> + <el-table-column + label="鍊熸浣欓" + prop="loanAmount" + align="right" + ></el-table-column> + <el-table-column + label="鎵ц杩涘害 鍚€熸" + prop="implementRate" + :render-header="renderHeader2" + width="120" + align="center" + ></el-table-column> + </el-table> </div> <Pagination style="padding: 0 25px" @@ -233,14 +306,12 @@ <script> import { reactive, toRefs, onMounted } from 'vue'; import Pagination from '@/components/Pagination/index.vue'; -//import FundingDetails from './funding_details.vue'; import newTableApi from '@/api/newTableApi.js'; export default { name: 'Funding', components: { Pagination, - // FundingDetails, }, props: { states: Object, @@ -251,6 +322,7 @@ export default { YearMonth: '', formData: { fundType: '01', + fundCode: '', year: '', month: '', companyName: '', @@ -290,47 +362,10 @@ export default { value: '03', }, ], - tableData: [ - { - fundCode: '111', - appropAmount: 0, - budgetType: '浜哄憳缁忚垂銆佸叕鐢ㄧ粡璐广€侀」鐩粡璐�', - budgetTypeName: '', - changeAppropAmount: 0, - departmentName: '', - endBudgetAmount: 0, - expendAmount: 0, - fundName: '鎵€灞炵粡璐�', - fundSource: '', - fundSourceName: '', - implementRate: 0, - incomeAmount: 0, - loanAmount: 0, - previousAmount: 0, - projectCode: '', - projectName: '', - }, - { - fundCode: '222', - appropAmount: 0, - budgetType: '浜哄憳缁忚垂銆佸叕鐢ㄧ粡璐广€侀」鐩粡璐�', - budgetTypeName: '', - changeAppropAmount: 0, - departmentName: '', - endBudgetAmount: 0, - expendAmount: 0, - fundName: '鎵€灞炵粡璐�', - fundSource: '', - fundSourceName: '', - implementRate: 0, - incomeAmount: 0, - loanAmount: 0, - previousAmount: 0, - projectCode: '', - projectName: '', - }, - ], + tableData: [], + tableDataDetail: [], isChecked: false, + isDetail: 0, }); onMounted(() => { console.log(props, 'funding'); @@ -361,30 +396,57 @@ export default { const changePage = (val) => { data.formData.pageNo = val.page; data.formData.pageSize = val.limit; - getCompanyFundDetail(); + if (data.isDetail == 0) { + getCompanyFundDetail(); + } else { + getCompanyFundProjectDetail(); + } }; const toBack = () => { - context.emit('switch-page', 'committees', props.states); + context.emit('switch-page', 'committees', { ...props.states, num: '2' }); }; const clickJump = (row) => { - context.emit('switch-page', 'FundingDetails', { - ...props.states, - fundCode: row.fundCode, - year: data.YearMonth, + data.formData.fundCode = row.fundCode; + data.isDetail = 1; + data.formData.pageNo = 1; + data.formData.pageSize = 10; + getCompanyFundProjectDetail(); + }; + const getCompanyFundProjectDetail = () => { + data.formData.year = Number(data.YearMonth.split('-')[0]); + data.formData.month = data.YearMonth.split('-')[1] + ? Number(data.YearMonth.split('-')[1]) + : ''; + newTableApi.getCompanyFundProjectDetail(data.formData).then((res) => { + data.tableDataDetail = res.data; + data.total = res.total; }); }; const query = () => { + data.isDetail = 0; + data.formData.fundCode = ''; + data.formData.pageNo = 1; + data.formData.pageSize = 10; getCompanyFundDetail(); }; const renderHeader = () => { return ( <div> - <span>鎵ц杩涘害</span> + <span style="margin-right:7px">鎵ц杩涘害</span> <el-checkbox onchecked="isChecked" onChange={() => a()} /> <span>鍚€熸</span> </div> ); }; + const renderHeader2 = () => { + return ( + <div> + <span style="margin-right:7px">鎵ц杩涘害</span> + <el-checkbox onchecked="isChecked" onChange={() => a2()} /> + <span>鍚€熸</span> + </div> + ); + }; const a = () => { if (data.isChecked == false) { data.formData.isContainLoan = true; @@ -396,9 +458,24 @@ export default { data.isChecked = false; } }; + const a2 = () => { + if (data.isChecked == false) { + data.formData.isContainLoan = true; + getCompanyFundProjectDetail(); + data.isChecked = true; + } else { + data.formData.isContainLoan = false; + getCompanyFundProjectDetail(); + data.isChecked = false; + } + }; const changeMoney = (val) => { data.formData.amountUnit = val; - getCompanyFundDetail(); + if (data.isDetail == 0) { + getCompanyFundDetail(); + } else { + getCompanyFundProjectDetail(); + } }; return { ...toRefs(data), @@ -407,9 +484,12 @@ export default { changePage, toBack, clickJump, + getCompanyFundProjectDetail, query, renderHeader, + renderHeader2, a, + a2, changeMoney, }; }, @@ -418,11 +498,12 @@ export default { <style lang="scss" scoped> .home-container { background-color: white; + height: 84vh; .header .title { text-align: center; font-weight: 700; font-size: 20px; - margin: 0px 20px 20px 5px; + margin: 20px 20px 20px 5px; } .header .right { float: right; @@ -464,7 +545,7 @@ export default { font-size: 12px; padding: 0 25px 0 0; ::v-deep .el-select .el-input { - width: 50px !important; + width: 62px !important; } } } diff --git a/WebSite/src/views/portal/components/funding_details.vue b/WebSite/src/views/portal/components/funding_details.vue deleted file mode 100644 index 2a137d4b9136736fd2089ca2c3f33e20fbea76a6..0000000000000000000000000000000000000000 --- a/WebSite/src/views/portal/components/funding_details.vue +++ /dev/null @@ -1,359 +0,0 @@ -<template> - <div class="home-container"> - <div class="header"> - <div style="height: 20px"></div> - <div class="title"> - {{ title }} - <div class="right" @click="toBack" style="cursor: pointer"> - <i class="fa fa-arrow-left" aria-hidden="true"></i> - <span>杩斿洖</span> - </div> - </div> - </div> - <div class="top"> - <div class="top_title"> - <div class="line"></div> - 绛涢€夋潯浠� - </div> - <el-form :model="formData" inline> - <el-form-item> - <el-select - v-model="formData.fundType" - class="m-2" - placeholder="鍏ㄩ儴璧勯噾" - size="small" - clearable - > - <el-option - v-for="(item, index) in fundTypeList" - :key="index" - :label="item.name" - :value="item.value" - class="mms" - /> - </el-select> - </el-form-item> - <el-form-item style="width: 120px"> - <el-date-picker - v-model="YearMonth" - type="month" - format="YYYY-MM" - placeholder="璇烽€夋嫨骞存湀" - :clearable="true" - :editable="false" - value-format="YYYY-MM" - /> - </el-form-item> - <el-form-item> - <el-select - v-model="formData.companyName" - class="m-2" - placeholder="鍗曚綅鍚嶇О" - size="small" - clearable - style="width: 228px" - > - <el-option - v-for="(item, index) in companyNameList" - :key="index" - :label="item.companyName" - :value="item.companyName" - class="mms" - /> - </el-select> - </el-form-item> - <el-form-item> - <el-select - v-model="formData.budgetType" - class="m-2" - placeholder="" - size="small" - clearable - > - <el-option - v-for="(item, index) in budgetTypeList" - :key="index" - :label="item.name" - :value="item.value" - class="mms" - /> - </el-select> - </el-form-item> - <el-form-item> - <el-button type="primary" @click="query">鏌ヨ</el-button> - </el-form-item> - </el-form> - </div> - <div class="top"> - <div class="top_title2"> - <div class="line"></div> - 璇︾粏鏁版嵁 - </div> - </div> - <div class="unit"> - 鍗曚綅: - <el-select - v-model="formData.amountUnit" - placeholder="" - @change="changeMoney" - > - <el-option label="鍏�" :value="1" /> - <el-option label="涓囧厓" :value="2" /> - </el-select> - </div> - <div class="table"> - <el-table - :data="tableData" - border - stripe - style="width: 100%" - :header-cell-style="{ backgroundColor: '#fafafa' }" - header-align="center" - > - <el-table-column label="搴忓彿" type="index"></el-table-column> - <el-table-column label="椤圭洰缂栧彿" prop="projectCode"></el-table-column> - <el-table-column label="椤圭洰鍚嶇О" prop="projectName" width="220"></el-table-column> - <el-table-column label="鎵€灞炵粡璐�" prop="budgetType"></el-table-column> - <el-table-column - label="璧勯噾鏉ユ簮" - prop="fundSourceName" - ></el-table-column> - <el-table-column - label="鎵€灞為儴闂�" - prop="departmentName" - ></el-table-column> - <el-table-column - label="鏈熷垵浣欓" - prop="previousAmount" - align="right" - ></el-table-column> - <el-table-column - label="鏈勾鎷ㄦ" - prop="appropAmount" - align="right" - ></el-table-column> - <el-table-column - label="鏈勾璋冩暣" - prop="changeAppropAmount" - align="right" - ></el-table-column> - <el-table-column - label="鏈勾鏀跺叆" - prop="incomeAmount" - align="right" - ></el-table-column> - <el-table-column - label="鏈勾鏀嚭" - prop="expendAmount" - align="right" - ></el-table-column> - <el-table-column - label="鏈熸湯浣欓" - prop="endBudgetAmount" - align="right" - ></el-table-column> - <el-table-column - label="鍊熸浣欓" - prop="loanAmount" - align="right" - ></el-table-column> - <el-table-column - label="鎵ц杩涘害 鍚€熸" - prop="implementRate" - :render-header="renderHeader" - width="120" - align="center" - ></el-table-column> - </el-table> - </div> - <Pagination - style="padding: 0 25px" - :page="formData.pageNo" - :limit="formData.pageSize" - :total="total" - @pagination="changePage" - /> - </div> -</template> -<script> -import { reactive, toRefs, onMounted } from 'vue'; -import Pagination from '@/components/Pagination/index.vue'; -import newTableApi from '@/api/newTableApi.js'; - -export default { - name: 'FundingDetails', - components: { Pagination }, - props: { - states: Object, - }, // 鐢ㄦ潵瀛樻斁鐖剁粍浠朵紶缁欏瓙缁勪欢鐨勬暟鎹� - setup(props, context) { - const data = reactive({ - title: '缁忚垂(浜哄憳銆侀」鐩€佸叕鐢�)鎵ц鎯呭喌', - YearMonth: '', - formData: { - fundType: '01', - fundCode: '', - year: '', - month: '', - companyName: '', - budgetType: '', - amountUnit: 2, - isContainLoan: false, - pageNo: 1, - pageSize: 10, - }, - total: 9, - fundTypeList: [ - { - name:'鍏ㄩ儴璧勯噾', - value:'' - }, - { - name: '璐㈡斂璧勯噾', - value: '01', - }, - { - name: '闈炶储鏀胯祫閲�', - value: '02', - }, - ], - companyNameList: [], - budgetTypeList: [ - { - name: '浜哄憳', - value: '01', - }, - { - name: '鍏敤', - value: '02', - }, - { - name: '椤圭洰', - value: '03', - }, - ], - tableData: [], - isChecked: 0, - }); - onMounted(() => { - data.formData.fundCode = props.states.fundCode; - data.formData.fundType = props.states.fundType; - data.formData.companyName = props.states.propName.name; - data.formData.budgetType = props.states.budgetType; - data.YearMonth = props.states.year; - getCompanyList(); - getCompanyFundProjectDetail(); - }); - const getCompanyFundProjectDetail = () => { - data.formData.year = Number(data.YearMonth.split('-')[0]); - data.formData.month = data.YearMonth.split('-')[1] - ? Number(data.YearMonth.split('-')[1]) - : ''; - newTableApi.getCompanyFundProjectDetail(data.formData).then((res) => { - data.tableData = res.data; - data.total = res.total; - }); - }; - const getCompanyList = () => { - newTableApi.getCompanyList().then((res) => { - data.companyNameList = res.data; - }); - }; - //鍒嗛〉 - const changePage = (val) => { - data.formData.pageNo = val.page; - data.formData.pageSize = val.limit; - getCompanyFundProjectDetail(); - }; - const toBack = () => { - console.log(props); - context.emit('switch-page', 'Funding', props.states); - }; - const renderHeader = () => { - return ( - <div> - <span>鎵ц杩涘害</span> - <el-checkbox onchecked="isChecked" onChange={() => a()} /> - <span>鍚€熸</span> - </div> - ); - }; - const a = () => { - if (data.isChecked == 0) { - data.formData.isContainLoan = false; - getCompanyFundProjectDetail(); - } else { - data.formData.isContainLoan = true; - getCompanyFundProjectDetail(); - } - }; - const query = () => { - getCompanyFundProjectDetail(); - }; - const changeMoney = (val) => { - data.formData.amountUnit = val; - getCompanyFundProjectDetail(); - }; - return { - ...toRefs(data), - getCompanyFundProjectDetail, - getCompanyList, - changePage, - toBack, - renderHeader, - a, - query, - changeMoney, - }; - }, -}; -</script> -<style lang="scss" scoped> -.home-container { - background-color: white; - .header .title { - text-align: center; - font-weight: 700; - font-size: 20px; - margin: 0px 20px 20px 5px; - } - .header .right { - float: right; - right: 10px; - margin-right: 20px; - font-size: 16px; - font-weight: 500; - } - .top { - padding: 0 25px; - .line { - width: 5px; - height: 18px; - background-color: black; - float: left; - margin-right: 5px; - } - .top_title { - font-weight: 600; - font-size: 16px; - margin-bottom: 20px; - } - .top_title2 { - font-weight: 600; - font-size: 16px; - margin-bottom: 0px; - } - } - .table { - padding: 0 25px; - } - .unit { - float: right; - font-size: 12px; - padding: 0 25px 0 0; - ::v-deep .el-select .el-input { - width: 50px !important; - } - } -} -</style> \ No newline at end of file diff --git a/WebSite/src/views/portal/components/side_table.vue b/WebSite/src/views/portal/components/side_table.vue index c74ae20ac9ef189d63fd98af7dd6e64995cf1043..6bf855cdac75a802a128b4eb65ef21a55892a463 100644 --- a/WebSite/src/views/portal/components/side_table.vue +++ b/WebSite/src/views/portal/components/side_table.vue @@ -1,8 +1,8 @@ <template> <div class="Table-container"> - <div class="buttonBox"> - <el-button class="button1">鍗曚綅鍒楄〃</el-button> - <el-button class="button2" @click="clickAll">鍏ㄩ儴</el-button> + <div class="financial_middle_left-OneDiv colorDiv"> + <span style="margin-right:20px">鍗曚綅鍒楄〃</span> + <span style="cursor: pointer;" @click="clickAll">鍏ㄩ儴</span> </div> <div class="box"> <div class="box1"> @@ -15,16 +15,21 @@ }" @row-click="handleRow" :highlight-current-row="highlight" - header-align="center" > - <el-table-column type="index" label="搴忓彿" /> - <el-table-column label="鍗曚綅鍚嶇О" prop="companyName" width="180" /> + <el-table-column type="index" label="搴忓彿" align="left" /> + <el-table-column + label="鍗曚綅鍚嶇О" + prop="companyName" + width="244" + align="center" + /> <el-table-column label="鎵ц鐜�" prop="implementRate" + width="80" sortable :sort-method="sortMethod" - align="right" + align="center" /> </el-table> </div> @@ -119,7 +124,7 @@ export default { </script> <style lang="scss" scoped> .Table-container { - height: calc(100vh - 195px); + height: calc(100vh - 270px); .buttonBox { width: 100%; background-image: linear-gradient( @@ -127,6 +132,8 @@ export default { rgb(3, 87, 135), rgb(3, 19, 50) ); + line-height: 28.39px; + font-weight: bold; .button1 { color: #56ccff; border: none; @@ -143,7 +150,7 @@ export default { } } .box { - width: 100%; + width: 93%; height: 100%; margin-top: 8px; padding: 0 2px 2px 3px; @@ -154,6 +161,7 @@ export default { .box1 { padding: 4px 2px; height: 98%; + margin-top: 12px; } .bottom { font-size: 10px; diff --git a/WebSite/src/views/portal/components/task_list.vue b/WebSite/src/views/portal/components/task_list.vue index dc011315fd677fcd60714ce6dc95cc4765d99e7d..6389fb9d941bc22323da9a5590bd197cd8bc38cc 100644 --- a/WebSite/src/views/portal/components/task_list.vue +++ b/WebSite/src/views/portal/components/task_list.vue @@ -51,7 +51,7 @@ placeholder="鍗曚綅鍚嶇О" size="small" clearable - style="width: 228px" + style="width: 270px" > <el-option v-for="(item, index) in companyNameList" @@ -107,7 +107,7 @@ border stripe style="width: 100%" - :header-cell-style="{ backgroundColor: '#fafafa' }" + :header-cell-style="{ backgroundColor: '#fafafa','text-align':'center' }" > <el-table-column label="搴忓彿" type="index"></el-table-column> <el-table-column label="鍗曚綅鍚嶇О" prop="companyName" width="220"></el-table-column> @@ -125,24 +125,28 @@ <el-table-column label="鏈熷垵浣欓" prop="previousAmount" + align="right" ></el-table-column> - <el-table-column label="鏈勾鎷ㄦ" prop="appropAmount"></el-table-column> + <el-table-column label="鏈勾鎷ㄦ" prop="appropAmount" align="right"></el-table-column> <el-table-column label="鏈勾璋冩暣" prop="changeAppropAmount" + align="right" ></el-table-column> - <el-table-column label="鏈勾鏀跺叆" prop="incomeAmount"></el-table-column> - <el-table-column label="鏈勾鏀嚭" prop="expendAmount"></el-table-column> + <el-table-column label="鏈勾鏀跺叆" prop="incomeAmount" align="right"></el-table-column> + <el-table-column label="鏈勾鏀嚭" prop="expendAmount" align="right"></el-table-column> <el-table-column label="鏈熸湯浣欓" prop="endBudgetAmount" + align="right" ></el-table-column> - <el-table-column label="鍊熸浣欓" prop="loanAmount"></el-table-column> + <el-table-column label="鍊熸浣欓" prop="loanAmount" align="right"></el-table-column> <el-table-column label="鎵ц杩涘害 鍚€熸" prop="implementRate" :render-header="renderHeader" width="120" + align="center" ></el-table-column> </el-table> </div> @@ -215,17 +219,7 @@ export default { value: '021', }, ], - tableData: [ - { - name: '123', - }, - { - name: '456', - }, - { - name: '789', - }, - ], + tableData: [], isChecked: false, }); onMounted(() => { @@ -265,12 +259,12 @@ export default { getTaskListProjectDetail(); }; const toBack = () => { - context.emit('switch-page', 'task-list-execution-status', props.states); + context.emit('switch-page', 'task-list-execution-status', {...props.states,num:'3'}); }; const renderHeader = () => { return ( <div> - <span>鎵ц杩涘害</span> + <span style="margin-right:7px">鎵ц杩涘害</span> <el-checkbox onchecked="isChecked" onChange={() => a()} /> <span>鍚€熸</span> </div> @@ -308,11 +302,12 @@ export default { <style lang="scss" scoped> .home-container { background-color: white; + height: 84vh; .header .title { text-align: center; font-weight: 700; font-size: 20px; - margin: 0px 20px 20px 5px; + margin: 20px 20px 20px 5px; } .header .right { float: right; @@ -349,7 +344,7 @@ export default { font-size: 12px; padding: 0 25px 0 0; ::v-deep .el-select .el-input { - width: 50px !important; + width: 62px !important; } } } diff --git a/WebSite/src/views/portal/components/three.vue b/WebSite/src/views/portal/components/three.vue index 3165363310a0d9d202b38c4a7f7a437a9263f0f3..c6bb4ad94f6fd4e80ac24f2991cdab24b198440e 100644 --- a/WebSite/src/views/portal/components/three.vue +++ b/WebSite/src/views/portal/components/three.vue @@ -88,7 +88,7 @@ export default { children: [ { prop: 'compareOpenBudgetTotal', - label: '涓庡勾鍒濋绠楁暟澧炲噺棰�', + label: '涓庡勾鍒濋绠楁暟澧炲噺棰�(褰撳勾鎵ц鏁� - 骞村垵棰勭畻鏁�)', }, ], }, @@ -97,7 +97,7 @@ export default { children: [ { prop: 'compareLastYearExpendTotal', - label: '涓庝笂骞村悓鏈熷鍑忛', + label: '涓庝笂骞村悓鏈熷鍑忛(褰撳勾鎵ц鏁� - 涓婂勾鍚屾湡鎵ц鏁�)', }, ], }, @@ -180,7 +180,7 @@ export default { }, }); onMounted(() => { - console.log(props.states); + console.log(props.states,11); data.columnList[0].label = props.states.name; data.columnList[2].label = props.states.code; getOfficialBusinessBudgetDetail(); @@ -260,11 +260,12 @@ export default { <style lang="scss" scoped> .home-container { background-color: white; + height: 84vh; .header .title { text-align: center; font-weight: 700; font-size: 20px; - margin: 0px 20px 20px 5px; + margin: 20px 20px 20px 5px; } .header .right { float: right; diff --git a/WebSite/src/views/portal/components/three_sideTable.vue b/WebSite/src/views/portal/components/three_sideTable.vue index 79b74c2ebe454328a5d91e8ed7a53ef410dc8a64..07a7eaebeaa392bba7d7f5652a0fd5dc5e3b67ef 100644 --- a/WebSite/src/views/portal/components/three_sideTable.vue +++ b/WebSite/src/views/portal/components/three_sideTable.vue @@ -1,7 +1,7 @@ <template> <div class="home-container"> <div class="header"> - <div style="height:20px"></div> + <div style="height: 20px"></div> <div class="title"> {{ title }} <div class="right" @click="toBack" style="cursor: pointer"> @@ -13,8 +13,8 @@ <div class="body"> <div class="left"> <div class="buttonBox"> - <el-button class="button1" >鍗曚綅鍒楄〃</el-button> - <el-button class="button2" @click="clickAll">鍏ㄩ儴</el-button> + <span style="margin-right: 20px">鍗曚綅鍒楄〃</span> + <el-button type="primary" @click="clickAll">鍏ㄩ儴</el-button> </div> <div class="box"> <el-table @@ -25,9 +25,16 @@ color: '#60dde7', }" max-height="500px" + @row-click="handleRow" > <el-table-column type="index" label="搴忓彿" width="80" /> - <el-table-column label="鍗曚綅鍚嶇О" prop="companyName" width="150" /> + <el-table-column + label="鍗曚綅鍚嶇О" + prop="companyName" + width="150" + header-align="center" + align="center" + /> <el-table-column label="鎵ц鐜�" prop="implementRate" @@ -36,7 +43,7 @@ :sort-method="sortMethod" > <template #default="scope"> - {{ scope.row.value }} + {{ scope.row.implementRate }} <i class="fas fa-angle-right" @click="clickI(scope.row)"></i> </template> </el-table-column> @@ -95,7 +102,7 @@ export default { const data = reactive({ title: '涓夊叕缁忚垂鎵ц鎯呭喌', year: new Date().getFullYear(), - month: new Date().getMonth() +1 , + month: new Date().getMonth() + 1, day: new Date().getDate(), tableDataSide: [], columnList: [ @@ -104,15 +111,15 @@ export default { children: [ { prop: 'previousBudgetTotal', - label: '骞村垵棰勭畻鏁�' + label: '骞村垵棰勭畻鏁�', }, { prop: 'changeBudgetTotal', - label: '棰勭畻璋冩暣鏁�' + label: '棰勭畻璋冩暣鏁�', }, { prop: 'expendTotal', - label: '褰撳勾1鑷� '+ (new Date().getMonth() + 1) + ' 鏈堜唤鎵ц鏁�', + label: '褰撳勾1鑷� ' + (new Date().getMonth() + 1) + ' 鏈堜唤鎵ц鏁�', }, { prop: 'lastYearExpendTotal', @@ -125,7 +132,7 @@ export default { children: [ { prop: 'compareOpenBudgetTotal', - label: '涓庡勾鍒濋绠楁暟澧炲噺棰�', + label: '涓庡勾鍒濋绠楁暟澧炲噺棰�(褰撳勾鎵ц鏁� - 骞村垵棰勭畻鏁�)', }, ], }, @@ -134,7 +141,7 @@ export default { children: [ { prop: 'compareLastYearExpendTotal', - label: '涓庝笂骞村悓鏈熷鍑忛', + label: '涓庝笂骞村悓鏈熷鍑忛(褰撳勾鎵ц鏁� - 涓婂勾鍚屾湡鎵ц鏁�)', }, ], }, @@ -218,19 +225,19 @@ export default { companyName: '', }); onMounted(() => { - console.log(props.states.propName); - data.companyName = props.states.propName.name - data.columnList[0].label = props.states.propName.name - data.columnList[2].label = props.states.propName.code + console.log(props.states.propName); + data.companyName = props.states.propName.name; + data.columnList[0].label = props.states.propName.name; + data.columnList[2].label = props.states.propName.code; getOfficialBusinessBudget(); getOfficialBusinessBudgetDetail(); }); const getOfficialBusinessBudget = () => { let obj = { - companyName: data.companyName, + companyName: '', fundType: '', requestType: '1', - year:props.states.year + year: props.states.year, }; newTableApi.getOfficialBusinessBudget(obj).then((res) => { data.tableDataSide = res.data[0].companyList; @@ -240,7 +247,7 @@ export default { newTableApi .getOfficialBusinessBudgetDetail({ companyName: data.companyName, - year:data.year + year: data.year, }) .then((res) => { data.tableData.Data[0] = res.data[4]; @@ -263,22 +270,33 @@ export default { }; const clickAll = () => { data.companyName = ''; + data.columnList[0].label = ''; + data.columnList[2].label = ''; + getOfficialBusinessBudgetDetail(); + }; + const handleRow = (row) => { + data.companyName = row.companyName; + data.columnList[0].label = row.companyName; + data.columnList[2].label = row.companyCode; getOfficialBusinessBudgetDetail(); }; const toBack = () => { - context.emit('switch-page', 'implementation',props.states); + context.emit('switch-page', 'implementation', { + ...props.states, + num: '1', + }); }; const arraySpanMethod = (row) => { if (row.rowIndex === 3) { if (row.columnIndex === 0) { return { rowspan: 4, - colspan: 1 + colspan: 1, }; } else { return { rowspan: 0, - colspan: 0 + colspan: 0, }; } } @@ -286,14 +304,14 @@ export default { if (row.columnIndex === 0) { return { rowspan: 1, - colspan: 2 + colspan: 2, }; } } if (row.columnIndex === 1) { return { rowspan: 0, - colspan: 0 + colspan: 0, }; } }; @@ -316,22 +334,25 @@ export default { getOfficialBusinessBudget, getOfficialBusinessBudgetDetail, clickAll, + handleRow, toBack, arraySpanMethod, clickI, sortMethod, }; - } + }, }; </script> <style lang="scss" scoped> .home-container { background-color: white; + height: 84vh; .header .title { text-align: center; font-weight: 700; font-size: 20px; - margin: 0px 20px 20px 5px; + margin: 0px 20px 0px 5px; + line-height: 85px; } .header .right { float: right; @@ -345,11 +366,14 @@ export default { float: left; border: 1px solid #dcdcdc; flex: 1; + .buttonBox { + line-height: 38px; + } } .right { float: right; flex: 4; - padding: 40px 10px; + padding: 0px 10px; } .year { float: right; @@ -358,9 +382,12 @@ export default { .box { min-height: 500px; } - .button1{ + .button1 { cursor: auto; } } + ::v-deep .el-button > span { + font-size: 16px !important; + } } </style> diff --git a/WebSite/src/views/portal/components/unit_funds.vue b/WebSite/src/views/portal/components/unit_funds.vue index 465f29b7c250c31759a01fdb0bfe507236be146a..3b20793bd391fc6ce055b40d9ff0865d4f722f57 100644 --- a/WebSite/src/views/portal/components/unit_funds.vue +++ b/WebSite/src/views/portal/components/unit_funds.vue @@ -34,7 +34,7 @@ /> </el-select> </el-form-item> - <el-form-item> + <el-form-item style="width: 120px"> <el-date-picker v-model="YearMonth" type="month" @@ -86,11 +86,15 @@ </div> <div class="table"> <el-table + v-if="isDetail == 0" :data="tableData" border stripe style="width: 100%" - :header-cell-style="{ backgroundColor: '#fafafa' }" + :header-cell-style="{ + backgroundColor: '#fafafa', + 'text-align': 'center', + }" > <el-table-column label="搴忓彿" type="index"></el-table-column> <el-table-column label="棰勭畻缁忚垂缂栧彿" prop="fundCode"> @@ -128,49 +132,53 @@ </div> </template> </el-table-column> - <el-table-column label="鏈熷垵浣欓" prop="previousAmount"> + <el-table-column label="鏈熷垵浣欓" prop="previousAmount" align="right"> <template #default="scope"> <div class="link-box" @click="clickJump(scope.row)"> {{ scope.row.previousAmount }} </div> </template> </el-table-column> - <el-table-column label="鏈勾鎷ㄦ" prop="appropAmount"> + <el-table-column label="鏈勾鎷ㄦ" prop="appropAmount" align="right"> <template #default="scope"> <div class="link-box" @click="clickJump(scope.row)"> {{ scope.row.appropAmount }} </div> </template> </el-table-column> - <el-table-column label="鏈勾璋冩暣" prop="changeAppropAmount"> + <el-table-column + label="鏈勾璋冩暣" + prop="changeAppropAmount" + align="right" + > <template #default="scope"> <div class="link-box" @click="clickJump(scope.row)"> {{ scope.row.changeAppropAmount }} </div> </template> </el-table-column> - <el-table-column label="鏈勾鏀跺叆" prop="incomeAmount"> + <el-table-column label="鏈勾鏀跺叆" prop="incomeAmount" align="right"> <template #default="scope"> <div class="link-box" @click="clickJump(scope.row)"> {{ scope.row.incomeAmount }} </div> </template> </el-table-column> - <el-table-column label="鏈勾鏀嚭" prop="expendAmount"> + <el-table-column label="鏈勾鏀嚭" prop="expendAmount" align="right"> <template #default="scope"> <div class="link-box" @click="clickJump(scope.row)"> {{ scope.row.expendAmount }} </div> </template> </el-table-column> - <el-table-column label="鏈熸湯浣欓" prop="endBudgetAmount"> + <el-table-column label="鏈熸湯浣欓" prop="endBudgetAmount" align="right"> <template #default="scope"> <div class="link-box" @click="clickJump(scope.row)"> {{ scope.row.endBudgetAmount }} </div> </template> </el-table-column> - <el-table-column label="鍊熸浣欓" prop="loanAmount"> + <el-table-column label="鍊熸浣欓" prop="loanAmount" align="right"> <template #default="scope"> <div class="link-box" @click="clickJump(scope.row)"> {{ scope.row.loanAmount }} @@ -182,6 +190,7 @@ prop="implementRate" :render-header="renderHeader" width="120" + align="center" > <template #default="scope"> <div class="link-box" @click="clickJump(scope.row)"> @@ -190,6 +199,76 @@ </template> </el-table-column> </el-table> + <el-table + v-if="isDetail == 1" + :data="tableDataDetail" + border + stripe + style="width: 100%" + :header-cell-style="{ + backgroundColor: '#fafafa', + 'text-align': 'center', + }" + > + <el-table-column label="搴忓彿" type="index"></el-table-column> + <el-table-column label="椤圭洰缂栧彿" prop="projectCode"></el-table-column> + <el-table-column + label="椤圭洰鍚嶇О" + prop="projectName" + width="220" + ></el-table-column> + <el-table-column label="鎵€灞炵粡璐�" prop="budgetType"></el-table-column> + <el-table-column + label="璧勯噾鏉ユ簮" + prop="fundSourceName" + ></el-table-column> + <el-table-column + label="鎵€灞為儴闂�" + prop="departmentName" + ></el-table-column> + <el-table-column + label="鏈熷垵浣欓" + prop="previousAmount" + align="right" + ></el-table-column> + <el-table-column + label="鏈勾鎷ㄦ" + prop="appropAmount" + align="right" + ></el-table-column> + <el-table-column + label="鏈勾璋冩暣" + prop="changeAppropAmount" + align="right" + ></el-table-column> + <el-table-column + label="鏈勾鏀跺叆" + prop="incomeAmount" + align="right" + ></el-table-column> + <el-table-column + label="鏈勾鏀嚭" + prop="expendAmount" + align="right" + ></el-table-column> + <el-table-column + label="鏈熸湯浣欓" + prop="endBudgetAmount" + align="right" + ></el-table-column> + <el-table-column + label="鍊熸浣欓" + prop="loanAmount" + align="right" + ></el-table-column> + <el-table-column + label="鎵ц杩涘害 鍚€熸" + prop="implementRate" + :render-header="renderHeader2" + width="120" + align="center" + ></el-table-column> + </el-table> </div> <Pagination style="padding: 0 25px" @@ -260,47 +339,9 @@ export default { value: '03', }, ], - tableData: [ - { - fundCode: '111', - appropAmount: 0, - budgetType: '浜哄憳缁忚垂銆佸叕鐢ㄧ粡璐广€侀」鐩粡璐�', - budgetTypeName: '', - changeAppropAmount: 0, - departmentName: '', - endBudgetAmount: 0, - expendAmount: 0, - fundName: '鎵€灞炵粡璐�', - fundSource: '', - fundSourceName: '', - implementRate: 0, - incomeAmount: 0, - loanAmount: 0, - previousAmount: 0, - projectCode: '', - projectName: '', - }, - { - fundCode: '222', - appropAmount: 0, - budgetType: '浜哄憳缁忚垂銆佸叕鐢ㄧ粡璐广€侀」鐩粡璐�', - budgetTypeName: '', - changeAppropAmount: 0, - departmentName: '', - endBudgetAmount: 0, - expendAmount: 0, - fundName: '鎵€灞炵粡璐�', - fundSource: '', - fundSourceName: '', - implementRate: 0, - incomeAmount: 0, - loanAmount: 0, - previousAmount: 0, - projectCode: '', - projectName: '', - }, - ], + tableData: [], isChecked: false, + isDetail: 0, }); onMounted(() => { data.title = props.states.name ? '<' + props.states.name + '>' : ''; @@ -321,11 +362,25 @@ export default { data.total = res.total; }); }; + const getCompanyFundProjectDetail = () => { + data.formData.year = Number(data.YearMonth.split('-')[0]); + data.formData.month = data.YearMonth.split('-')[1] + ? Number(data.YearMonth.split('-')[1]) + : ''; + newTableApi.getCompanyFundProjectDetail(data.formData).then((res) => { + data.tableData = res.data; + data.total = res.total; + }); + }; //鍒嗛〉 const changePage = (val) => { data.formData.pageNo = val.page; data.formData.pageSize = val.limit; - getCompanyFundDetail(); + if (data.isDetail == 0) { + getCompanyFundDetail(); + } else { + getCompanyFundProjectDetail(); + } }; const toBack = () => { context.emit( @@ -335,21 +390,30 @@ export default { ); }; const clickJump = (row) => { - context.emit('switch-page', 'UnitDetails', { - ...props.states, - fundCode: row.fundCode, - year: data.YearMonth, - }); + data.formData.fundCode = row.fundCode; + data.isDetail = 1; + data.formData.pageNo = 1; + data.formData.pageSize = 10; + getCompanyFundProjectDetail(); }; const renderHeader = () => { return ( <div> - <span>鎵ц杩涘害</span> + <span style="margin-right:7px">鎵ц杩涘害</span> <el-checkbox onchecked="isChecked" onChange={() => a()} /> <span>鍚€熸</span> </div> ); }; + const renderHeader2 = () => { + return ( + <div> + <span style="margin-right:7px">鎵ц杩涘害</span> + <el-checkbox onchecked="isChecked" onChange={() => a2()} /> + <span>鍚€熸</span> + </div> + ); + }; const a = () => { if (data.isChecked == false) { data.formData.isContainLoan = true; @@ -361,21 +425,43 @@ export default { data.isChecked = false; } }; + const a2 = () => { + if (data.isChecked == false) { + data.formData.isContainLoan = true; + getCompanyFundProjectDetail(); + data.isChecked = true; + } else { + data.formData.isContainLoan = false; + getCompanyFundProjectDetail(); + data.isChecked = false; + } + }; const query = () => { + data.isDetail = 0; + data.formData.fundCode = ''; + data.formData.pageNo = 1; + data.formData.pageSize = 10; getCompanyFundDetail(); }; const changeMoney = (val) => { data.formData.amountUnit = val; - getCompanyFundDetail(); + if (data.isDetail == 0) { + getCompanyFundDetail(); + } else { + getCompanyFundProjectDetail(); + } }; return { ...toRefs(data), getCompanyFundDetail, + getCompanyFundProjectDetail, changePage, toBack, clickJump, renderHeader, + renderHeader2, a, + a2, query, changeMoney, }; @@ -385,11 +471,12 @@ export default { <style lang="scss" scoped> .home-container { background-color: white; + height: 84vh; .header .title { text-align: center; font-weight: 700; font-size: 20px; - margin: 0px 20px 20px 5px; + margin: 20px 20px 20px 5px; } .header .right { float: right; @@ -437,7 +524,7 @@ export default { font-size: 12px; padding: 0 25px 0 0; ::v-deep .el-select .el-input { - width: 50px !important; + width: 62px !important; } } } diff --git a/WebSite/src/views/portal/components/unit_funds_details.vue b/WebSite/src/views/portal/components/unit_funds_details.vue deleted file mode 100644 index d42723c876745fc16da95d622c20e2ddbca394b9..0000000000000000000000000000000000000000 --- a/WebSite/src/views/portal/components/unit_funds_details.vue +++ /dev/null @@ -1,351 +0,0 @@ -<template> - <div class="home-container"> - <div class="header"> - <div style="height: 20px"></div> - <div class="title"> - <div class="left">鏁版嵁鎴鍒皗{ year }}骞磠{ month }}鏈坽{ day }}鏃�</div> - {{ title }} - <div class="right" @click="toBack" style="cursor: pointer"> - <i class="fa fa-arrow-left" aria-hidden="true"></i> - <span>杩斿洖</span> - </div> - </div> - </div> - <div class="top"> - <div class="top_title"> - <div class="line"></div> - 绛涢€夋潯浠� - </div> - <el-form :model="formData" inline> - <el-form-item> - <el-select - v-model="formData.fundType" - class="m-2" - placeholder="鍏ㄩ儴璧勯噾" - size="small" - clearable - > - <el-option - v-for="(item, index) in fundTypeList" - :key="index" - :label="item.name" - :value="item.value" - class="mms" - /> - </el-select> - </el-form-item> - <el-form-item> - <el-date-picker - v-model="YearMonth" - type="month" - format="YYYY-MM" - placeholder="璇烽€夋嫨骞存湀" - :clearable="true" - :editable="false" - value-format="YYYY-MM" - /> - </el-form-item> - <el-form-item> - <el-select - v-model="formData.companyName" - class="m-2" - placeholder="鍗曚綅鍚嶇О" - size="small" - clearable - > - <el-option - v-for="(item, index) in companyNameList" - :key="index" - :label="item.companyName" - :value="item.companyName" - class="mms" - /> - </el-select> - </el-form-item> - <el-form-item> - <el-select - v-model="formData.budgetType" - class="m-2" - placeholder="鎵€灞炵粡璐�(鍏ㄩ儴)" - size="small" - clearable - > - <el-option - v-for="(item, index) in budgetTypeList" - :key="index" - :label="item.name" - :value="item.value" - class="mms" - /> - </el-select> - </el-form-item> - <el-form-item> - <el-button type="primary" @click="query">鏌ヨ</el-button> - </el-form-item> - </el-form> - </div> - <div class="top"> - <div class="top_title2"> - <div class="line"></div> - 璇︾粏鏁版嵁 - </div> - </div> - <div class="unit"> - 鍗曚綅: - <el-select - v-model="formData.amountUnit" - placeholder="涓囧厓" - @change="changeMoney" - > - <el-option label="鍏�" :value="1" /> - <el-option label="涓囧厓" :value="2" /> - </el-select> - </div> - <div class="table"> - <el-table - :data="tableData" - border - stripe - style="width: 100%" - :header-cell-style="{ backgroundColor: '#fafafa' }" - > - <el-table-column label="搴忓彿" type="index"></el-table-column> - <el-table-column label="椤圭洰缂栧彿" prop="name"></el-table-column> - <el-table-column label="椤圭洰鍚嶇О" prop="name"></el-table-column> - <el-table-column label="鎵€灞炵粡璐�" prop="name"></el-table-column> - <el-table-column label="璧勯噾鏉ユ簮" prop="name"></el-table-column> - <el-table-column label="璧勯噾绫诲瀷" prop="name"></el-table-column> - <el-table-column label="鏈熷垵浣欓" prop="name"></el-table-column> - <el-table-column label="鏈勾鎷ㄦ" prop="name"></el-table-column> - <el-table-column label="鏈勾璋冩暣" prop="name"></el-table-column> - <el-table-column label="鏈勾鏀跺叆" prop="name"></el-table-column> - <el-table-column label="鏈勾鏀嚭" prop="name"></el-table-column> - <el-table-column label="鏈熸湯浣欓" prop="name"></el-table-column> - <el-table-column label="鍊熸浣欓" prop="name"></el-table-column> - <el-table-column - label="鎵ц杩涘害 鍚€熸" - prop="name" - :render-header="renderHeader" - width="120" - ></el-table-column> - </el-table> - </div> - <Pagination - style="padding: 0 25px" - :page="formData.pageNo" - :limit="formData.pageSize" - :total="total" - @pagination="changePage" - /> - </div> -</template> -<script> -import { reactive, toRefs, onMounted } from 'vue'; -import Pagination from '@/components/Pagination/index.vue'; -import newTableApi from '@/api/newTableApi.js'; - -export default { - name: 'UnitDetails', - components: { - Pagination, - }, - props: { - states: Object, - }, // 鐢ㄦ潵鎺ユ敹鐖剁粍浠朵紶缁欏瓙缁勪欢鐨勬暟鎹� - setup(props, context) { - const data = reactive({ - title: '缁忚垂鎵ц鎯呭喌', - year: new Date().getFullYear(), - month: new Date().getMonth() + 1, - day: new Date().getDate(), - YearMonth: '', - formData: { - fundType: '01', - fundCode: '', - year: '', - month: '', - companyName: '', - budgetType: '', - amountUnit: 2, - isContainLoan: false, - pageNo: 1, - pageSize: 10, - }, - total: 9, - fundTypeList: [ - { - name: '鍏ㄩ儴璧勯噾', - value: '', - }, - { - name: '璐㈡斂璧勯噾', - value: '01', - }, - { - name: '闈炶储鏀胯祫閲�', - value: '02', - }, - ], - companyNameList: [], - budgetTypeList: [ - { - name: '浜哄憳', - value: '01', - }, - { - name: '鍏敤', - value: '02', - }, - { - name: '椤圭洰', - value: '03', - }, - ], - tableData: [ - { - name: '123', - }, - { - name: '456', - }, - { - name: '789', - }, - ], - isChecked: false, - }); - onMounted(() => { - console.log(props.states); - data.formData.fundCode = props.states.fundCode; - data.formData.fundType = props.states.fundType; - data.formData.companyName = props.states.name; - data.formData.budgetType = props.states.code; - data.YearMonth = props.states.year; - getCompanyFundProjectDetail(); - getCompanyList(); - }); - const getCompanyFundProjectDetail = () => { - data.formData.year = Number(data.YearMonth.split('-')[0]); - data.formData.month = data.YearMonth.split('-')[1] - ? Number(data.YearMonth.split('-')[1]) - : ''; - newTableApi.getCompanyFundProjectDetail(data.formData).then((res) => { - data.tableData = res.data; - data.total = res.total; - }); - }; - const getCompanyList = () => { - newTableApi.getCompanyList().then((res) => { - data.companyNameList = res.data; - }); - }; - //鍒嗛〉 - const changePage = (val) => { - data.formData.pageNo = val.page; - data.formData.pageSize = val.limit; - getCompanyFundProjectDetail(); - }; - const toBack = () => { - context.emit('switch-page', 'UnitFunds', props.states); - }; - const renderHeader = () => { - return ( - <div> - <span>鎵ц杩涘害</span> - <el-checkbox onchecked="isChecked" onChange={() => a()} /> - <span>鍚€熸</span> - </div> - ); - }; - const a = () => { - if (data.isChecked == false) { - data.formData.isContainLoan = true; - getCompanyFundProjectDetail(); - data.isChecked = true; - } else { - data.formData.isContainLoan = false; - getCompanyFundProjectDetail(); - data.isChecked = false; - } - }; - const query = () => { - getCompanyFundProjectDetail(); - }; - const changeMoney = (val) => { - data.formData.amountUnit = val; - getCompanyFundProjectDetail(); - }; - return { - ...toRefs(data), - getCompanyFundProjectDetail, - getCompanyList, - changePage, - toBack, - renderHeader, - a, - query, - changeMoney, - }; - }, -}; -</script> -<style lang="scss" scoped> -.home-container { - background-color: white; - .header .title { - text-align: center; - font-weight: 700; - font-size: 20px; - margin: 0px 20px 20px 5px; - } - .header .right { - float: right; - margin-right: 20px; - font-size: 16px; - font-weight: 500; - } - .header .left { - float: left; - margin-right: 20px; - font-size: 10px; - font-weight: 600; - } - .top { - padding: 0 25px; - .line { - width: 5px; - height: 18px; - background-color: black; - float: left; - margin-right: 5px; - } - .top_title { - font-weight: 600; - font-size: 16px; - margin-bottom: 20px; - } - .top_title2 { - font-weight: 600; - font-size: 16px; - margin-bottom: 0px; - } - } - .table { - padding: 0 25px; - } - .link-box { - color: blue; - width: 100%; - height: 100%; - cursor: pointer; - } - .unit { - float: right; - font-size: 12px; - padding: 0 25px 0 0; - ::v-deep .el-select .el-input { - width: 50px !important; - } - } -} -</style> \ No newline at end of file diff --git a/WebSite/src/views/portal/index.vue b/WebSite/src/views/portal/index.vue index e2bb247552b9875d8c3f176226e0db7c52cd825e..4e2a26a4afe5ea05d76082fd7704abccaecac9d7 100644 --- a/WebSite/src/views/portal/index.vue +++ b/WebSite/src/views/portal/index.vue @@ -25,10 +25,8 @@ import { onMounted, reactive, toRefs } from 'vue'; import moment from 'moment'; import Home from './components/home.vue'; import Funding from './components/funding.vue'; -import FundingDetails from './components/funding_details.vue'; import Task from './components/task_list.vue'; -import UnitFunds from './components/unit_funds.vue'; -import UnitDetails from './components/unit_funds_details.vue'; +import UnitFunds from './components/unit_funds.vue'; import Certain from './components/certain_list.vue'; import Department from './components/department.vue'; import Three from './components/three.vue'; @@ -42,10 +40,8 @@ export default { components: { Home, Funding, - FundingDetails, Task, UnitFunds, - UnitDetails, Certain, Department, Three, diff --git a/WebSite/src/views/user/index.vue b/WebSite/src/views/user/index.vue index 89e2132cd257ef6d73d6622bcbc80f2913f716f0..176136461d4476fe909eb4ebe86a9e91ba0de124 100644 --- a/WebSite/src/views/user/index.vue +++ b/WebSite/src/views/user/index.vue @@ -16,7 +16,7 @@ <component :is="currentPage" @switch-page="switchPage" - :data="param" + :states="param" ></component> </transition> </div> @@ -28,9 +28,8 @@ import { onMounted } from '@vue/runtime-core'; import PersonInChargeOfPublicInstitution from '../home/components/Person-in-charge-of-public-institution'; import Department from '../portal/components/department'; import UnitFunds from '../portal/components/unit_funds'; -import UnitDetails from '../portal/components/unit_funds_details'; -import FundingDetails from '../portal/components/funding_details'; import Fees from '../portal/components/conference_fees'; +import Three from '../portal/components/three'; import CertainList from '../portal/components/certain_list'; import moment from 'moment'; export default { @@ -38,9 +37,8 @@ export default { PersonInChargeOfPublicInstitution, Department, UnitFunds, - UnitDetails, - FundingDetails, Fees, + Three, CertainList }, setup() {