Merge remote-tracking branch 'origin/dev_third_stage' into dev_third_stage

This commit is contained in:
wangzhijiang
2022-07-13 11:25:10 +08:00
8 changed files with 633 additions and 10 deletions
+5
View File
@@ -1119,4 +1119,9 @@ module.exports = {
chapter:'chapter',
problemDescription:'Problem description',
filingExternalOpinions:'Filing of external opinions',
regulatoryTechnicalEvaluationResults:'Regulatory technical evaluation results',
initiateProcessForCurrentStandard:'Initiate process for current standard',
engineerFeedbackResults:'Engineer feedback results',
fileExport:'File export',
feedbackTime:'Feedback time',
}
+5
View File
@@ -1022,6 +1022,7 @@ module.exports = {
closingDate: '截止日期',
viewProcess: '查看流程',
evaluationResults: '评估结果',
regulatoryTechnicalEvaluationResults:'法规技术评估结果',
Assessor:'评估人',
collectionOfRegulatoryOpinions:'法规意见收集',
collectionOfRegulatoryOpinionsProcess:'法规意见收集流程',
@@ -1123,4 +1124,8 @@ module.exports = {
chapter:'章节',
problemDescription:'问题说明',
filingExternalOpinions:'对外意见归档',
initiateProcessForCurrentStandard:'针对当前标准发起流程',
engineerFeedbackResults:'工程师反馈结果',
fileExport:'文件导出',
feedbackTime:'反馈时间',
}
@@ -98,6 +98,8 @@
this.$route.path == '/projectStatusAndProgress' ||
this.$route.path == '/TaskPlanList' ||
this.$route.path == '/evaluationProcess' ||
this.$route.path == '/evaluationResultsClause' ||
this.$route.path == '/evaluationResultsWhole' ||
this.$route.path == '/evaluationInitiationProcess' ||
this.$route.path == '/historicalVersion' ||
this.$route.path == '/dashboard/analysis' ||
+10
View File
@@ -347,6 +347,16 @@ export const constantRouterMap = [
name: 'evaluationInitiationProcess',
component: () => import(/* webpackChunkName: "user" */ '@/views/businessSupport/technologyAssessment/components/initiatingProcess')
},
{
path: '/evaluationResultsWhole',
name: 'evaluationResultsWhole',
component: () => import(/* webpackChunkName: "user" */ '@/views/businessSupport/technologyAssessment/components/evaluationResultsWhole')
},
{
path: '/evaluationResultsClause',
name: 'evaluationResultsClause',
component: () => import(/* webpackChunkName: "user" */ '@/views/businessSupport/technologyAssessment/components/evaluationResultsClause')
},
// {
// path: '/ParameterItemCollection',
// name: 'ParameterItemCollection',
@@ -178,9 +178,9 @@
handleExport() {
let query = {
pageSize:this.pageSize,
pageNo:this.pageNo
// lawsOpinionGatherId: this.lawsOpinionGatherId,
// actiProcInstId: this.actiProcInstId
pageNo:this.pageNo,
lawsOpinionGatherId: this.lawsOpinionGatherId,
actiProcInstId: this.actiProcInstId
}
downloadFile('/lawsOpinionGather/lawsOpinionAssessmentResultEO/exportXls',
this.$t('evaluationResults') + '.zip', query)
@@ -0,0 +1,334 @@
<template>
<div class="doc-detail">
<div class="doc-detail-wrap">
<div class="doc-detail-header" style="position: fixed;top: 0">
<div class="doc-detail-title">
<!-- <span style="line-height: 66px;display: inline-block;float: left">-->
<!-- <a-icon type="home" style="margin-right: 6px;"/>-->
<!-- </span>-->
{{$t('regulatoryTechnicalEvaluationResults')}}
</div>
</div>
<div style="padding-top: 68px;background: #fff">
<div class="detail-content">
<div class="content-box">
<div class="header-text">
{{$t('processBackground')}}
<a-button class="box-button-top" type="primary" @click="CurrentStandard">
{{$t('initiateProcessForCurrentStandard')}}
</a-button>
</div>
<div class="processBackground-text">
dskf' ;sdfl';s sd稍等景点风光大家分工法规地方官给,。不买;两个客人坦克;量大幅高开的管理骨科大夫给的快感的法律公开大家赶快来的风格
</div>
<div class="header-text">
{{$t('engineerFeedbackResults')}}
</div>
<a-card :bordered="false" class="box-clause">
<div class="table-page-search-wrapper">
<a-form layout="inline" @keyup.enter.native="searchQuery">
<a-row :gutter="24">
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('Assessor')">
<span>{{$t('Assessor')}}</span>
</div>
<PersonnelSelection class="box-input"
:personneQuery="queryParam"
:query="{db_field_name:'Assessor',db_field_txt:$t('Assessor')}"
:isInput="true"
@change="PersonnelSelectionChange"
v-model="queryParam.AssessorName"/>
</div>
</a-col>
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('complianceResults')">
<span>{{$t('complianceResults')}}</span>
</div>
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('complianceResults')"
v-model="queryParam.title"></j-input>
</div>
</a-col>
<span style="float: right;overflow: hidden;" class="table-page-search-submitButtons">
<a-col :md="6" :sm="24">
<a-button class="box-button" type="primary" @click="searchQuery">{{$t('query')}}</a-button>
<a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{$t('reset')}}</a-button>
</a-col>
</span>
</a-row>
</a-form>
</div>
<div class="table-operator">
<div @click="fileExportClick" class="operator-text">
<a-icon type="apartment"/>
{{$t('fileExport')}}
</div>
</div>
<div>
<a-table
ref="table"
size="middle"
:loading="loading"
:pagination="false"
:scroll="{x: '100%'}"
rowKey="id"
:data-source="dataSource"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
:columns="columns"
>
</a-table>
<!-- <div class="page" v-if="dataSource && dataSource.length > 0">-->
<!-- <a-pagination-->
<!-- :show-total="total => $t('total')+` ${total} `+$t('strip')"-->
<!-- show-quick-jumper-->
<!-- show-size-changer-->
<!-- :page-size.sync="pageSize"-->
<!-- :total="total"-->
<!-- :current="pageNo"-->
<!-- @change="pageOnChange"-->
<!-- @showSizeChange="SizeChange"-->
<!-- />-->
<!-- </div>-->
</div>
</a-card>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
import PersonnelSelection from '@/components/PersonnelSelection/index'
export default {
name: 'evaluationResultsClause',
components:{
PersonnelSelection
},
data() {
return {
queryParam: {},
dataSource: [],
selectedRowKeys: [],
loading: false,
columns: [
{
title: this.$t('clauseNo'),
dataIndex: 'items_num',
align: 'center',
ellipsis: true
},
{
title: this.$t('clauseName'),
dataIndex: 'items_name',
align: 'center',
ellipsis: true
},
{
title: this.$t('clauseContent'),
dataIndex: 'iterms_conditions',
align: 'center',
ellipsis: true
},
{
title: this.$t('Assessor'),
dataIndex: 'Assessor',
align: 'center',
ellipsis: true
},
{
title: this.$t('evaluationMethod'),
dataIndex: 'evaluationMethod',
align: 'center',
ellipsis: true
},
{
title: this.$t('nameTechnicalDocument'),
dataIndex: 'nameTechnicalDocument',
align: 'center',
ellipsis: true
},
{
title: this.$t('chapter'),
dataIndex: 'chapter',
align: 'center',
ellipsis: true
},
{
title: this.$t('complianceResults'),
dataIndex: 'complianceResults',
align: 'center',
ellipsis: true
},
{
title: this.$t('opinion'),
dataIndex: 'opinion',
align: 'center',
ellipsis: true
},
{
title: this.$t('enclosure'),
dataIndex: 'enclosure',
align: 'center',
ellipsis: true
},
{
title: this.$t('feedbackTime'),
dataIndex: 'feedbackTime',
align: 'center',
ellipsis: true
}
]
}
},
mounted() {
},
methods: {
CurrentStandard() {
},
onSelectChange(value) {
},
searchQuery() {
this.pageNo = 1
this.getList()
},
searchReset() {
this.queryParam = {}
this.pageNo = 1
this.getList()
},
fileExportClick() {
},
PersonnelSelectionChange(value, id) {
this.queryParam[value] = id
this.queryParam = { ...this.queryParam }
},
}
}
</script>
<style lang="less" scoped>
@import '~@assets/less/common.less';
.doc-detail {
background: #fff;
height: 100%;
.doc-detail-wrap {
.doc-detail-header {
width: 100%;
height: 68px;
line-height: 68px;
padding: 0 0 0 32px;
box-sizing: border-box;
display: flex;
justify-content: space-between;
border-bottom: 2px #eff1f3 solid;
background: #fff;
.doc-detail-title {
display: inline-block;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
font-size: 20px;
font-weight: 400;
color: #040B29;
line-height: 68px;
}
.doc-detail-right {
width: 800px;
line-height: 68px;
display: flex;
.doc-detail-btn {
margin-left: 10px;
}
}
}
.content-box {
padding: 0 32px;
box-sizing: border-box;
}
.header-text {
font-size: 16px;
font-weight: 400;
height: 80px;
color: #000F16;
line-height: 80px;
}
.processBackground-text {
font-size: 16px;
color: #000F16;
}
}
}
.box-button-top {
float: right;
margin-top: 28px;
height: 38px;
}
.page {
text-align: right;
margin-top: 20px;
}
.box-title-text {
line-height: 1.4;
display: flex;
align-items: center;
margin-bottom: 10px;
}
.title-text {
width: 70px;
color: #000F16;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
margin-top: 3px;
text-align: right;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.box-input {
display: inline-block;
width: 70%;
height: 38px;
margin-top: 2px;
}
.box-button {
height: 38px;
/*margin-top: 2px;*/
}
.text-operation {
margin-right: 8px;
}
.itemModel {
width: calc(100% - 130px);
display: inline-block;
margin-top: 2px;
}
</style>
<style>
.box-clause .ant-card-body {
padding: 0;
}
</style>
@@ -0,0 +1,262 @@
<template>
<div class="doc-detail">
<div class="doc-detail-wrap">
<div class="doc-detail-header" style="position: fixed;top: 0">
<div class="doc-detail-title">
<!-- <span style="line-height: 66px;display: inline-block;float: left">-->
<!-- <a-icon type="home" style="margin-right: 6px;"/>-->
<!-- </span>-->
{{$t('regulatoryTechnicalEvaluationResults')}}
</div>
</div>
<div style="padding-top: 68px;background: #fff">
<div class="detail-content">
<div class="content-box">
<div class="header-text">
{{$t('processBackground')}}
<a-button class="box-button-top" type="primary" @click="CurrentStandard">
{{$t('initiateProcessForCurrentStandard')}}
</a-button>
</div>
<div class="processBackground-text">
dskf' ;sdfl';s sd稍等景点风光大家分工法规地方官给,。不买;两个客人坦克;量大幅高开的管理骨科大夫给的快感的法律公开大家赶快来的风格
</div>
<!-- <div class="header-text">-->
<!-- {{$t('engineerFeedbackResults')}}-->
<!-- </div>-->
<a-card :bordered="false" class="box-clause" style="margin-top: 20px" v-for="item in dataSource">
<div class="table-operator">
<div @click="fileExportClick" class="operator-text" style="float: left;font-size: 16px">
{{$t('engineerFeedbackResults')}}
</div>
<div @click="fileExportClick" class="operator-text">
<a-icon type="apartment"/>
{{$t('fileExport')}}
</div>
</div>
<div>
<a-table
ref="table"
size="middle"
:loading="loading"
:pagination="false"
:scroll="{x: '100%'}"
:data-source="item.dataList"
:columns="columns"
>
</a-table>
</div>
</a-card>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
import PersonnelSelection from '@/components/PersonnelSelection/index'
export default {
name: 'evaluationResultsWhole',
components: {
PersonnelSelection
},
data() {
return {
queryParam: {},
dataSource: [
{
dataList:[
{
relevantSections:111,
problemDescription:222,
enclosure:'',
}
]
},
{
dataList:[
{
relevantSections:111,
problemDescription:222,
enclosure:'',
}
]
}
],
selectedRowKeys: [],
loading: false,
columns: [
{
title: this.$t('relevantSections'),
dataIndex: 'relevantSections',
align: 'center',
ellipsis: true
},
{
title: this.$t('problemDescription'),
dataIndex: 'problemDescription',
align: 'center',
ellipsis: true
},
{
title: this.$t('enclosure'),
dataIndex: 'enclosure',
align: 'center',
ellipsis: true
}
]
}
},
mounted() {
},
methods: {
CurrentStandard() {
},
onSelectChange(value) {
},
searchQuery() {
this.pageNo = 1
this.getList()
},
searchReset() {
this.queryParam = {}
this.pageNo = 1
this.getList()
},
fileExportClick() {
},
PersonnelSelectionChange(value, id) {
this.queryParam[value] = id
this.queryParam = { ...this.queryParam }
}
}
}
</script>
<style lang="less" scoped>
@import '~@assets/less/common.less';
.doc-detail {
background: #fff;
height: 100%;
.doc-detail-wrap {
.doc-detail-header {
width: 100%;
height: 68px;
line-height: 68px;
padding: 0 0 0 32px;
box-sizing: border-box;
display: flex;
justify-content: space-between;
border-bottom: 2px #eff1f3 solid;
background: #fff;
.doc-detail-title {
display: inline-block;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
font-size: 20px;
font-weight: 400;
color: #040B29;
line-height: 68px;
}
.doc-detail-right {
width: 800px;
line-height: 68px;
display: flex;
.doc-detail-btn {
margin-left: 10px;
}
}
}
.content-box {
padding: 0 32px;
box-sizing: border-box;
}
.header-text {
font-size: 16px;
font-weight: 400;
height: 80px;
color: #000F16;
line-height: 80px;
}
.processBackground-text {
font-size: 16px;
color: #000F16;
}
}
}
.box-button-top {
float: right;
margin-top: 28px;
height: 38px;
}
.page {
text-align: right;
margin-top: 20px;
}
.box-title-text {
line-height: 1.4;
display: flex;
align-items: center;
margin-bottom: 10px;
}
.title-text {
width: 70px;
color: #000F16;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
margin-top: 3px;
text-align: right;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.box-input {
display: inline-block;
width: 70%;
height: 38px;
margin-top: 2px;
}
.box-button {
height: 38px;
/*margin-top: 2px;*/
}
.text-operation {
margin-right: 8px;
}
.itemModel {
width: calc(100% - 130px);
display: inline-block;
margin-top: 2px;
}
</style>
<style>
.box-clause .ant-card-body {
padding: 0;
}
</style>
@@ -92,9 +92,10 @@
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
:columns="columns"
>
<!-- v-if="record.gatherResult == 'Completed'"-->
<span slot="operation" slot-scope="text,record">
<a class="text-operation" @click="viewProcessClick(record)">{{$t('viewProcess')}}</a>
<a class="text-operation" v-if="record.gatherResult == 'Completed'"
<a class="text-operation"
@click="evaluationResultsClick(record)">{{$t('evaluationResults')}}</a>
</span>
</a-table>
@@ -186,11 +187,11 @@
whetherTobringList: [
{
value: '1',
name: '是'
name: this.$t('yes')
},
{
value: '2',
name: '否'
name: this.$t('not')
}
],
gatherResultList: [
@@ -221,21 +222,21 @@
align: 'center',
width: 170,
ellipsis: true,
dataIndex: 'technologyTerritory'
dataIndex: 'technologyTerritoryName'
},
{
title: this.$t('evaluationMethod'),
align: 'center',
width: 170,
ellipsis: true,
dataIndex: 'evaluationMethods'
dataIndex: 'evaluationMethodsName'
},
{
title: this.$t('ProcessStatus'),
align: 'center',
width: 170,
ellipsis: true,
dataIndex: 'flowStatus'
dataIndex: 'flowStatusName'
},
{
title: this.$t('dateOfInitiation'),
@@ -363,7 +364,11 @@
window.open(newUrl.href, '_blank')
},
evaluationResultsClick(row) {
this.$refs.evaluationResultsListRef.getData(JSON.parse(JSON.stringify(row)))
let newUrl = this.$router.resolve({
path: '/evaluationResultsWhole',
query: row
})
window.open(newUrl.href, '_blank')
}
}
}