招标解析

This commit is contained in:
cwchen 2025-11-27 10:59:57 +08:00
parent c7e61523c1
commit 16c61cdd1b
4 changed files with 97 additions and 27 deletions

View File

@ -541,6 +541,20 @@ export const dynamicRoutes = [
} }
] ]
}, },
{
path: '/analysisBidView',
component: Layout,
hidden: true,
permissions: ['enterpriseLibrary:analysis:detail'],
children: [
{
path: 'index',
component: () => import('@/views/analysis/components/AnalysisBidView'),
name: 'AnalysisBidView',
meta: { title: '解析结果', activeMenu: '/analysis', noCache: true }
}
]
},
{ {
path: '/testOnlyOffice', path: '/testOnlyOffice',
component: Layout, component: Layout,

View File

@ -125,7 +125,7 @@
</template> </template>
<script> <script>
import { decryptWithSM4 } from '@/utils/sm' import { decryptWithSM4, encryptWithSM4 } from '@/utils/sm'
import { getProDetailAPI, getBidListAPI } from '@/api/analysis/analysis' import { getProDetailAPI, getBidListAPI } from '@/api/analysis/analysis'
import { formLabel, detailColumnsList } from '../config' import { formLabel, detailColumnsList } from '../config'
import TableModel from '@/components/TableModel2' import TableModel from '@/components/TableModel2'
@ -157,6 +157,7 @@ export default {
detailColumnsList, detailColumnsList,
getBidListAPI, getBidListAPI,
proId: '', proId: '',
bidId: '',
detailData: {}, detailData: {},
sendParams: { sendParams: {
proId: decryptWithSM4(this.$route.query.proId), proId: decryptWithSM4(this.$route.query.proId),
@ -209,6 +210,7 @@ export default {
}, },
created() { created() {
this.proId = decryptWithSM4(this.$route.query.proId) this.proId = decryptWithSM4(this.$route.query.proId)
this.bidId = this.$route.query.bidId ? decryptWithSM4(this.$route.query.bidId) : null
this.getDetail() this.getDetail()
}, },
methods: { methods: {
@ -242,7 +244,10 @@ export default {
}, },
// //
handleClose() { handleClose() {
const obj = { path: "/analysis" } let obj = { path: "/analysis" }
if (this.bidId) {
obj = { name: "AnalysisBidIndex", query: { proId: encryptWithSM4(this.proId) } }
}
this.$tab.closeOpenPage(obj) this.$tab.closeOpenPage(obj)
}, },
// //

View File

@ -7,17 +7,9 @@
</el-button> </el-button>
</div> </div>
<div class="table-container"> <div class="table-container">
<TableModel <TableModel :formLabel="bidFormLabel" :showOperation="true" :showRightTools="false" ref="analysisTableRef"
:formLabel="bidFormLabel" :columnsList="bidListColumnsList" :request-api="getBidListAPI" :sendParams="sendParams"
:showOperation="true" :handleColWidth="200" :isShowtableCardStyle="false">
:showRightTools="false"
ref="analysisTableRef"
:columnsList="bidListColumnsList"
:request-api="getBidListAPI"
:sendParams="sendParams"
:handleColWidth="200"
:isShowtableCardStyle="false"
>
<template slot="parsingState" slot-scope="{ data }"> <template slot="parsingState" slot-scope="{ data }">
<el-tag v-if="data.parsingState === '0'" type="info">解析中</el-tag> <el-tag v-if="data.parsingState === '0'" type="info">解析中</el-tag>
<el-tag v-else-if="data.parsingState === '1'" type="success">解析成功</el-tag> <el-tag v-else-if="data.parsingState === '1'" type="success">解析成功</el-tag>
@ -84,9 +76,10 @@ export default {
/* 查看操作 */ /* 查看操作 */
handleDetail(row) { handleDetail(row) {
this.$router.push({ this.$router.push({
name: 'AnalysisDetail', name: 'AnalysisBidView',
query: { query: {
proId: encryptWithSM4('2') proId: encryptWithSM4(row.proId + '' || '0'),
bidId: encryptWithSM4(row.bidId + '' || '0'),
} }
}) })
}, },
@ -95,20 +88,13 @@ export default {
this.$router.push({ this.$router.push({
name: 'AnalysisBidDetail', name: 'AnalysisBidDetail',
query: { query: {
proId: encryptWithSM4('2') proId: encryptWithSM4(row.proId + '' || '0'),
} bidId: encryptWithSM4(row.bidId + '' || '0'),
})
},
/** 查看标段操作 */
handleBidListDetail(row) {
this.$router.push({
name: 'AnalysisBidIndex',
query: {
proId: encryptWithSM4('2')
} }
}) })
}, },
/* 搜索操作 */ /* 搜索操作 */
handleQuery() { handleQuery() {
this.$refs.analysisTableRef.getTableList() this.$refs.analysisTableRef.getTableList()
@ -188,8 +174,9 @@ export default {
} }
} }
} }
.table-container{
::v-deep .el-card.table-card.is-always-shadow{ .table-container {
::v-deep .el-card.table-card.is-always-shadow {
height: calc(100vh - 285px) !important; height: calc(100vh - 285px) !important;
} }
} }

View File

@ -0,0 +1,64 @@
<!-- 标段解析 -->
<template>
<el-card class="analysis-container">
<div class="back-container">
<el-button type="default" size="small" @click="handleBack" class="back-btn">
返回
</el-button>
</div>
</el-card>
</template>
<script>
import { decryptWithSM4, encryptWithSM4 } from '@/utils/sm'
export default {
name: 'AnalysisBidView',
data() {
return {
proId: decryptWithSM4(this.$route.query.proId),
bidId: decryptWithSM4(this.$route.query.bidId),
}
},
created() {
},
methods: {
handleBack() {
const obj = { name: "AnalysisBidIndex", query: { proId: encryptWithSM4(this.proId) } }
this.$tab.closeOpenPage(obj)
}
},
}
</script>
<style scoped lang="scss">
.analysis-container {
height: calc(100vh - 84px);
overflow: hidden;
background: linear-gradient(180deg, #F1F6FF 20%, #E5EFFF 100%);
}
.back-container {
display: flex;
justify-content: flex-end;
align-items: center;
margin-bottom: 20px;
padding: 0 20px;
.back-btn {
width: 98px;
height: 36px;
background: #FFFFFF;
box-shadow: 0px 4px 8px 0px rgba(76, 76, 76, 0.2);
border-radius: 4px;
border: none;
color: #666;
font-size: 14px;
transition: all 0.3s ease;
&:hover {
background: #f5f5f5;
color: #409EFF;
box-shadow: 0px 6px 12px 0px rgba(76, 76, 76, 0.3);
}
}
}
</style>