diff --git a/MobileWebSite/src/api/details-of-childcare-fees.js b/MobileWebSite/src/api/details-of-childcare-fees.js index 4680da15ab28ca9559d02ba51a45b662fd224adc..fe20b3d7b90c8fc33d1fa4bdd5c2598cf67a9d4d 100644 --- a/MobileWebSite/src/api/details-of-childcare-fees.js +++ b/MobileWebSite/src/api/details-of-childcare-fees.js @@ -53,6 +53,10 @@ class detailsOfChildcareFees { static view(id) { return request.post(`/childcarefeeapply/pc/v1/view/${id}`); } + //11.涓汉鍙戞斁鏄庣粏-鍒嗛〉 + static pageGrantDetailList(data) { + return request.post('/childcarefeedetail/pc/v1/pageGrantDetailList', data); + } } export default detailsOfChildcareFees; diff --git a/MobileWebSite/src/views/view-childcare-fees/components/mobile.vue b/MobileWebSite/src/views/view-childcare-fees/components/mobile.vue index 294dc01e50adb3970eb8aa0948000965c1ca8362..0f8be32516a38412ec2ff6e8632d43067c2490a8 100644 --- a/MobileWebSite/src/views/view-childcare-fees/components/mobile.vue +++ b/MobileWebSite/src/views/view-childcare-fees/components/mobile.vue @@ -62,6 +62,7 @@ size="small" round hairline + v-if="item.state == 2" @click="handleDetail(item)" >鍙戞斁鏄庣粏</van-button > @@ -235,8 +236,8 @@ export default { }); }; //鑾峰彇鍙戞斁鏄庣粏 - const pageList = () => { - DetailsOfChildcareFees.pageList(state.formDate).then((res) => { + const pageGrantDetailList = () => { + DetailsOfChildcareFees.pageGrantDetailList(state.formDate).then((res) => { state.monthList = state.monthList.concat(res.data); state.totalPages = res.total; if (state.showDetail == false && state.monthList.length > 0) { @@ -258,7 +259,7 @@ export default { //鐐瑰嚮鍙戞斁鏄庣粏 const handleDetail = (item) => { state.formDate.applyId = item.id; - pageList(); + pageGrantDetailList(); }; //鍏抽棴寮圭獥 const closeDetail = () => { @@ -288,7 +289,7 @@ export default { return; } state.formDate.pageIndex = Number(state.formDate.pageIndex) + 1; - pageList(); + pageGrantDetailList(); } }; //鎼滅储 @@ -298,7 +299,7 @@ export default { state.downShow = false; const scrollDom = document.querySelector('#all'); scrollDom.removeEventListener('scroll', scrollHandler); - pageList(); + pageGrantDetailList(); }; const formatter = (type, val) => { if (type === 'year') { @@ -384,7 +385,7 @@ export default { Moment, ...toRefs(state), list, - pageList, + pageGrantDetailList, handleDetail, closeDetail, scrollHandler, diff --git a/MobileWebSite/src/views/view-childcare-fees/components/pc.vue b/MobileWebSite/src/views/view-childcare-fees/components/pc.vue index 3647899158bd79fcec1b41a3879438328e2a3878..8fd2cae95d722d9ea0c0342ae7ea21fa256b0cf2 100644 --- a/MobileWebSite/src/views/view-childcare-fees/components/pc.vue +++ b/MobileWebSite/src/views/view-childcare-fees/components/pc.vue @@ -118,10 +118,16 @@ </div> </template> </el-table-column> - <el-table-column label="鎿嶄綔" header-align="center"> + <el-table-column + label="鎿嶄綔" + header-align="center" + > <template #default="scope"> <el-button type="plain" @click="jump(scope.row)">璇︽儏</el-button> - <el-button type="primary" @click="handleDetail(scope.row)" + <el-button + type="primary" + @click="handleDetail(scope.row)" + v-if="scope.row.state == 2" >鍙戞斁鏄庣粏</el-button > </template> @@ -156,7 +162,12 @@ prop="applyYearMonth" align="center" ></el-table-column> - <el-table-column label="搴斿彂閲戦" prop="payAmount" align="right"> + <el-table-column + label="搴斿彂閲戦" + prop="payAmount" + align="right" + header-align="center" + > <template #default="scope"> {{ scope.row.payAmount @@ -213,13 +224,15 @@ export default { }); }; //鑾峰彇鍙戞斁鏄庣粏 - const pageList = () => { - DetailsOfChildcareFees.pageList(state.queryInfo).then((res) => { - state.tableDateDialog = res.data; - state.total = res.total; - state.pageCount = res.pageCount; - state.dialogVisible = true; - }); + const pageGrantDetailList = () => { + DetailsOfChildcareFees.pageGrantDetailList(state.queryInfo).then( + (res) => { + state.tableDateDialog = res.data; + state.total = res.total; + state.pageCount = res.pageCount; + state.dialogVisible = true; + } + ); }; const stateTotext = (v) => { if (v == 0) { @@ -243,10 +256,10 @@ export default { }; const handleDetail = (val) => { state.queryInfo.applyId = val.id; - pageList(); + pageGrantDetailList(); }; const handleCurrentChange = () => { - pageList(); + pageGrantDetailList(); }; //璺宠浆鍒扮敵璇峰~鎶� const jump = (v) => { @@ -270,7 +283,7 @@ export default { list, stateTotext, stateTocolor, - pageList, + pageGrantDetailList, handleDetail, handleCurrentChange, jump, diff --git a/PublicPCWeb/src/api/InquiryChildcare.js b/PublicPCWeb/src/api/InquiryChildcare.js index 87483f13cfc5b0733d7e4684b8d2addb62ae9091..6db5308a814cd0bdd77cbd47cc935bd43192fdb5 100644 --- a/PublicPCWeb/src/api/InquiryChildcare.js +++ b/PublicPCWeb/src/api/InquiryChildcare.js @@ -1,6 +1,7 @@ import request from '@/core/base/request'; +import { Base } from '@/api/base/base'; -class InquiryChildcare { +class InquiryChildcare extends Base { //鎵樺辜璐瑰彂鏀炬煡璇� static statisticsPageList(data) { return request.post('/queryStatistics/pc/v1/statisticsPageList', data); @@ -78,6 +79,21 @@ class InquiryChildcare { static audit(data) { return request.post('/childcarefeeapply/pc/v1/audit', data); } + //涓汉鍙戞斁鏄庣粏-鍒嗛〉 + static pageDetailList(data) { + return request.post('/childcarefeedetail/pc/v1/pageGrantDetailList', data); + } + //瀵煎嚭 + static expert(data) { + return request({ + url: '/childcarefeeapply/pc/v1/expert', + method: 'POST', + responseType: 'blob', + data + }).then(res => { + super.downloadFile(res); + }); + } } export default InquiryChildcare; diff --git a/PublicPCWeb/src/views/application-form-query/index.vue b/PublicPCWeb/src/views/application-form-query/index.vue index 171050d1a287fdd122af1e81c672e3f65c51ab3f..c4b9d703b0b718ca4469acaefdb02de7499df613 100644 --- a/PublicPCWeb/src/views/application-form-query/index.vue +++ b/PublicPCWeb/src/views/application-form-query/index.vue @@ -67,11 +67,7 @@ <el-card> <div style="margin-bottom: 10px"> <el-button @click="view">鏌ョ湅</el-button> - <el-button - class="fast-reimbursement-button" - @click="viewDistributionPlan" - >鏌ョ湅鍙戞斁璁″垝</el-button - > + <el-button type="warning" @click="download">瀵煎嚭</el-button> </div> <el-table :data="data.tableData" @@ -91,7 +87,11 @@ max-height="400px" style="border: 1px solid #ebeef5" > - <el-table-column prop="employeeName" label="鐢宠浜�"></el-table-column> + <el-table-column prop="employeeName,employeeCode" label="鐢宠浜�"> + <template #default="scope"> + {{ scope.row.employeeCode + '-' + scope.row.employeeName }} + </template> + </el-table-column> <el-table-column prop="employeeTypeName" label="鏁欏伐绫诲瀷"> </el-table-column> <el-table-column prop="childName" label="瀛愬コ濮撳悕"> </el-table-column> @@ -153,6 +153,16 @@ </div> </template> </el-table-column> + <el-table-column label="鎿嶄綔"> + <template #default="scope"> + <el-button + v-if="scope.row.state != '-1'" + class="fast-reimbursement-button" + @click="viewDistributionPlan(scope.row)" + >鏌ョ湅鍙戞斁璁″垝</el-button + > + </template> + </el-table-column> </el-table> </el-card> <el-card> @@ -318,7 +328,7 @@ </el-form-item> </el-form> <template #footer> - <el-button size="large">鍙栨秷</el-button> + <el-button size="large" @click="uploadClose">鍙栨秷</el-button> <el-button class="fast-reimbursement-button" size="large" @click="save" >纭</el-button > @@ -374,7 +384,7 @@ const data = reactive({ payAmount: '', }, options: [ - { value: 0, label: '鏈彁浜�' }, + // { value: 0, label: '鏈彁浜�' }, { value: 1, label: '鎻愪氦' }, { value: 2, label: '瀹℃牳' }, { value: -1, label: '椹冲洖' }, @@ -402,13 +412,8 @@ const view = () => { } }; //鐐瑰嚮鏌ョ湅鍙戞斁璁″垝 -const viewDistributionPlan = () => { - if (!data.rowObj.id) { - return ElMessage({ - message: '璇烽€夋嫨鐢虫姤鍗�', - type: 'warning', - }); - } +const viewDistributionPlan = (row) => { + data.rowObj = row; data.loanShow = true; pageListsa(); }; @@ -551,6 +556,17 @@ const uploadClose = () => { payAmount: '', }), (data.fileName = ''); + data.addDistribution = false; +}; +const download = () => { + if (!data.rowObj.id) { + return ElMessage({ + message: '璇烽€夋嫨鐢虫姤鍗�', + type: 'warning', + }); + } else { + InquiryChildcare.expert(data.rowObj); + } }; </script> diff --git a/PublicPCWeb/src/views/batch-generation/index.vue b/PublicPCWeb/src/views/batch-generation/index.vue index e1aea196f5d7bd6e65ac6ff9a6a04f66624acba6..06934f04a466bf0221335d289aba96f1f9080410 100644 --- a/PublicPCWeb/src/views/batch-generation/index.vue +++ b/PublicPCWeb/src/views/batch-generation/index.vue @@ -124,11 +124,9 @@ <el-button type="danger" v-if=" - scope.row.salaryDeclareState != 1 && - scope.row.salaryDeclareState != 2 && - scope.row.salaryDeclareState != 3 && - scope.row.salaryDeclareState != 4 && - scope.row.salaryDeclareState + scope.row.salaryDeclareState == 0 && + scope.row.salaryDeclareState == 5 && + scope.row.salaryDeclareState == 6 " @click="revokeClick(scope.row)" >鎾ら攢</el-button @@ -277,7 +275,7 @@ </div> </template> <script setup> -import {onMounted, reactive, ref} from 'vue'; +import { onMounted, reactive, ref } from 'vue'; import InquiryChildcare from '@/api/InquiryChildcare'; import { moneyFormat } from '@/utils'; import moment from 'moment'; @@ -323,8 +321,8 @@ const createGrant = () => { pageList(); }); }; -onMounted(()=>{ - pageList() +onMounted(() => { + pageList(); }); //鎼滅储 const pageList = () => { diff --git a/PublicPCWeb/src/views/reimbursement/index.vue b/PublicPCWeb/src/views/reimbursement/index.vue index 5d9d6b8e9adf14217cb9e9fd92aa95c5e68ad875..5e5714d3efb5449fddaad983567f0d22d391c064 100644 --- a/PublicPCWeb/src/views/reimbursement/index.vue +++ b/PublicPCWeb/src/views/reimbursement/index.vue @@ -72,7 +72,7 @@ <div class="borthImg"> <div class="title">鍑虹敓璇佹槑</div> <div class="img" v-for="item in imgList" :key="item"> - <el-image + <div v-if=" item.fileType && (item.fileType == 'jpg' || @@ -82,16 +82,43 @@ item.fileType == 'png' || item.fileType == 'PNG') " - style="width: 100%; height: 113px" - :src="`data:image/jpg;base64,${item.birthCertificateBase64}`" - fit="contain" - :max-scale="7" - :min-scale="0.2" - :preview-src-list="srcListBorth" - /> - <el-button v-else type="primary" @click="downBorth(item)" - >涓嬭浇鏌ョ湅</el-button > + <el-image + style="width: 100%; height: 113px" + :src="`data:image/jpg;base64,${item.birthCertificateBase64}`" + fit="contain" + :max-scale="7" + :min-scale="0.2" + :preview-src-list="srcListBorth" + /> + </div> + <div + v-if=" + !( + item.fileType && + (item.fileType == 'jpg' || + item.fileType == 'JPG' || + item.fileType == 'jpeg' || + item.fileType == 'JPEG' || + item.fileType == 'png' || + item.fileType == 'PNG') + ) + " + class="textBox" + > + <el-icon :size="60"><Document /></el-icon> + <el-tooltip + class="box-item" + effect="light" + :content="item.fileName" + placement="top" + > + <div class="text">{{ item.fileName }}</div> + </el-tooltip> + <el-button @click="downBorth(item)" type="primary" + >鐐瑰嚮涓嬭浇</el-button + > + </div> </div> </div> <div class="borthImg"> @@ -167,13 +194,38 @@ :min-scale="0.2" :preview-src-list="srcListInvoice" /> - <div class="nullify-box" v-if="item.ocrResult"> - <marquee>{{ item.ocrResult }}</marquee> - </div> </div> - <el-button v-else type="primary" @click="downInvoice(item)" - >涓嬭浇鏌ョ湅</el-button + + <div class="nullify-box" v-if="item.ocrResult"> + <marquee>{{ item.ocrResult }}</marquee> + </div> + <div + v-if=" + !( + item.fileType && + (item.fileType == 'jpg' || + item.fileType == 'JPG' || + item.fileType == 'jpeg' || + item.fileType == 'JPEG' || + item.fileType == 'png' || + item.fileType == 'PNG') + ) + " + class="textBox" > + <el-icon :size="60"><Document /></el-icon> + <el-tooltip + class="box-item" + effect="light" + :content="item.fileName" + placement="top" + > + <div class="text">{{ item.fileName }}</div> + </el-tooltip> + <el-button @click="downInvoice(item)" type="primary" + >鐐瑰嚮涓嬭浇</el-button + > + </div> </div> <div class="right"> <el-form inline label-position="top"> @@ -224,10 +276,15 @@ padding: 10px 30px 10px 10px; " > - <el-button type="danger" size="large" @click="reject">椹冲洖</el-button> - <el-button type="primary" size="large" @click="audit" + <el-button type="danger" size="large" @click="reject" v-if="state == 1" + >椹冲洖</el-button + > + <el-button type="primary" size="large" @click="audit" v-if="state == 1" >瀹℃壒閫氳繃</el-button > + <el-button type="primary" size="large" @click="back" v-if="state != 1" + >杩斿洖</el-button + > </el-card> </div> <!-- 椹冲洖 --> @@ -292,6 +349,7 @@ export default { ocrCheck: '', borthOcrMessage: '', ocrCheckInvoice: '', + state: '', }); onBeforeMount(() => { view(); @@ -301,6 +359,7 @@ export default { state.imgList = []; state.srcListInvoice = []; InquiryChildcare.view(route.query.id).then((res) => { + state.state = res.data[0].state; state.formData = { employeeCode: res.data[0].employeeCode, employeeName: res.data[0].employeeName, @@ -390,6 +449,10 @@ export default { router.push('/application-form-query'); }); }; + //杩斿洖 + const back = () => { + router.push('/application-form-query'); + }; //涓嬭浇PDF绛夋牸寮忓嚭鐢熻瘉鏄� const downBorth = (item) => { downloadBase64File(item.birthCertificateBase64, item.fileName); @@ -405,6 +468,7 @@ export default { reject, rejection, audit, + back, downBorth, downInvoice, }; @@ -497,6 +561,18 @@ export default { top: 5px; right: 5px; } + .textBox { + height: 100px; + width: 100%; + text-align: center; + padding: 0px 20px; + .text { + width: 100%; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + } + } } } .invoice { @@ -524,6 +600,18 @@ export default { color: #fff; width: 100%; } + .textBox { + height: 100px; + width: 100%; + text-align: center; + padding: 0px 20px; + .text { + width: 100%; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + } + } } .right { padding: 20px;