对接法规技术评估
This commit is contained in:
+139
-46
@@ -6,7 +6,7 @@
|
||||
<!-- <span style="line-height: 66px;display: inline-block;float: left">-->
|
||||
<!-- <a-icon type="home" style="margin-right: 6px;"/>-->
|
||||
<!-- </span>-->
|
||||
{{$t('regulatoryTechnicalEvaluationResults')}}
|
||||
{{$route.query.serialNumber +' '+$t('regulatoryTechnicalEvaluationResults')}}
|
||||
</div>
|
||||
</div>
|
||||
<div style="padding-top: 68px;background: #fff">
|
||||
@@ -19,7 +19,7 @@
|
||||
</a-button>
|
||||
</div>
|
||||
<div class="processBackground-text">
|
||||
dskf' ;sdfl';s sd稍等景点风光大家分工法规地方官给,。不买;两个客人坦克;量大幅高开的管理骨科大夫给的快感的法律公开大家赶快来的风格
|
||||
{{$route.query.processBackground}}
|
||||
</div>
|
||||
<div class="header-text">
|
||||
{{$t('engineerFeedbackResults')}}
|
||||
@@ -35,10 +35,10 @@
|
||||
</div>
|
||||
<PersonnelSelection class="box-input"
|
||||
:personneQuery="queryParam"
|
||||
:query="{db_field_name:'Assessor',db_field_txt:$t('Assessor')}"
|
||||
:query="{db_field_name:'evaluators',db_field_txt:$t('Assessor')}"
|
||||
:isInput="true"
|
||||
@change="PersonnelSelectionChange"
|
||||
v-model="queryParam.AssessorName"/>
|
||||
v-model="queryParam.evaluatorsName"/>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :md="6" :sm="8">
|
||||
@@ -46,8 +46,18 @@
|
||||
<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>
|
||||
<a-select :placeholder="$t('PleaseSelect')+$t('complianceResults')"
|
||||
class="box-input"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
v-model="queryParam.complianceResult">
|
||||
<a-select-option v-for="(item, key) in complianceResultsList"
|
||||
:key="key"
|
||||
:value="item.value">
|
||||
<span style="display: inline-block;width: 100%" :title="item.name ">
|
||||
{{ item.name }}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</div>
|
||||
</a-col>
|
||||
<span style="float: right;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
@@ -61,7 +71,7 @@
|
||||
</div>
|
||||
<div class="table-operator">
|
||||
<div @click="fileExportClick" class="operator-text">
|
||||
<a-icon type="apartment"/>
|
||||
<a-icon type="export" :rotate="-90"/>
|
||||
{{$t('fileExport')}}
|
||||
</div>
|
||||
</div>
|
||||
@@ -71,142 +81,203 @@
|
||||
size="middle"
|
||||
:loading="loading"
|
||||
:pagination="false"
|
||||
:scroll="{x: '100%'}"
|
||||
:scroll="{x: '100%',y:'calc(100vh - 100px)'}"
|
||||
rowKey="id"
|
||||
:data-source="dataSource"
|
||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||
:columns="columns"
|
||||
>
|
||||
<div slot="clauseContent" slot-scope="text,result">
|
||||
<a-tooltip placement="topLeft">
|
||||
<template slot="title">
|
||||
<span v-html="text"></span>
|
||||
</template>
|
||||
<div class="clauseContent-text" v-html="text"></div>
|
||||
</a-tooltip>
|
||||
</div>
|
||||
<span slot="accessoryFile" slot-scope="text,result">
|
||||
<a v-if="text" @click="accessoryFileClick(text)">
|
||||
{{ $t('viewFile') }}
|
||||
</a>
|
||||
<span v-else>--</span>
|
||||
</span>
|
||||
</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>
|
||||
<viewFileModel ref="viewFileModelRef"/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import PersonnelSelection from '@/components/PersonnelSelection/index'
|
||||
import { getAction, postAction, downloadFile } from '@/api/manage'
|
||||
import viewFileModel from '@/components/viewFileModel/index'
|
||||
|
||||
export default {
|
||||
name: 'evaluationResultsClause',
|
||||
components:{
|
||||
PersonnelSelection
|
||||
components: {
|
||||
PersonnelSelection,
|
||||
viewFileModel
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
queryParam: {},
|
||||
dataSource: [],
|
||||
selectedRowKeys: [],
|
||||
complianceResultsList: [
|
||||
{
|
||||
name: this.$t('accord'),
|
||||
value: 'Compliance'
|
||||
},
|
||||
{
|
||||
name: this.$t('nonConformity'),
|
||||
value: 'Non-Compliance'
|
||||
}
|
||||
],
|
||||
loading: false,
|
||||
url: {
|
||||
list: '/lawsTechnologyEvaluation/lawsTechnologyEvaluationItemResultEO/list',
|
||||
exportData: '/lawsTechnologyEvaluation/lawsTechnologyEvaluationItemResultEO/exportZip'
|
||||
},
|
||||
columns: [
|
||||
{
|
||||
title: this.$t('clauseNo'),
|
||||
dataIndex: 'items_num',
|
||||
dataIndex: 'itemNum',
|
||||
align: 'center',
|
||||
ellipsis: true
|
||||
ellipsis: true,
|
||||
width: 160
|
||||
},
|
||||
{
|
||||
title: this.$t('clauseName'),
|
||||
dataIndex: 'items_name',
|
||||
dataIndex: 'itemName',
|
||||
align: 'center',
|
||||
ellipsis: true
|
||||
ellipsis: true,
|
||||
width: 160
|
||||
},
|
||||
{
|
||||
title: this.$t('clauseContent'),
|
||||
dataIndex: 'iterms_conditions',
|
||||
dataIndex: 'itemContent',
|
||||
align: 'center',
|
||||
ellipsis: true
|
||||
width: 260,
|
||||
scopedSlots: { customRender: 'clauseContent' }
|
||||
},
|
||||
{
|
||||
title: this.$t('Assessor'),
|
||||
dataIndex: 'Assessor',
|
||||
align: 'center',
|
||||
ellipsis: true
|
||||
ellipsis: true,
|
||||
width: 160
|
||||
},
|
||||
{
|
||||
title: this.$t('evaluationMethod'),
|
||||
dataIndex: 'evaluationMethod',
|
||||
dataIndex: 'evaluationMethodsName',
|
||||
align: 'center',
|
||||
ellipsis: true
|
||||
ellipsis: true,
|
||||
width: 160
|
||||
},
|
||||
{
|
||||
title: this.$t('nameTechnicalDocument'),
|
||||
dataIndex: 'nameTechnicalDocument',
|
||||
dataIndex: 'technicalFileName',
|
||||
align: 'center',
|
||||
ellipsis: true
|
||||
ellipsis: true,
|
||||
width: 260
|
||||
},
|
||||
{
|
||||
title: this.$t('chapter'),
|
||||
dataIndex: 'chapter',
|
||||
dataIndex: 'section',
|
||||
align: 'center',
|
||||
ellipsis: true
|
||||
ellipsis: true,
|
||||
width: 260
|
||||
},
|
||||
{
|
||||
title: this.$t('complianceResults'),
|
||||
dataIndex: 'complianceResults',
|
||||
dataIndex: 'complianceResultName',
|
||||
align: 'center',
|
||||
ellipsis: true
|
||||
ellipsis: true,
|
||||
width: 160
|
||||
},
|
||||
{
|
||||
title: this.$t('opinion'),
|
||||
dataIndex: 'opinion',
|
||||
align: 'center',
|
||||
ellipsis: true
|
||||
ellipsis: true,
|
||||
width: 260
|
||||
},
|
||||
{
|
||||
title: this.$t('enclosure'),
|
||||
dataIndex: 'enclosure',
|
||||
dataIndex: 'accessoryFile',
|
||||
align: 'center',
|
||||
ellipsis: true
|
||||
ellipsis: true,
|
||||
width: 160,
|
||||
scopedSlots: { customRender: 'accessoryFile' }
|
||||
},
|
||||
{
|
||||
title: this.$t('feedbackTime'),
|
||||
dataIndex: 'feedbackTime',
|
||||
dataIndex: 'createTime',
|
||||
align: 'center',
|
||||
ellipsis: true
|
||||
ellipsis: true,
|
||||
width: 160
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getList()
|
||||
},
|
||||
methods: {
|
||||
CurrentStandard() {
|
||||
|
||||
},
|
||||
onSelectChange(value) {
|
||||
|
||||
this.selectedRowKeys = value
|
||||
},
|
||||
searchQuery() {
|
||||
this.pageNo = 1
|
||||
this.getList()
|
||||
},
|
||||
searchReset() {
|
||||
this.queryParam = {}
|
||||
this.pageNo = 1
|
||||
this.getList()
|
||||
},
|
||||
getList() {
|
||||
let query = {
|
||||
lawsTechnologyEvaluationId: this.$route.query.id,
|
||||
...this.queryParam
|
||||
}
|
||||
this.loading = true
|
||||
getAction(this.url.list, query).then((res) => {
|
||||
if (res.success) {
|
||||
this.dataSource = res.result || []
|
||||
this.loading = false
|
||||
} else {
|
||||
this.dataSource = []
|
||||
this.loading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
fileExportClick() {
|
||||
|
||||
let selectedRowKeys = JSON.parse(JSON.stringify(this.selectedRowKeys))
|
||||
let query = {
|
||||
...this.queryParam,
|
||||
ids: selectedRowKeys.join(','),
|
||||
lawsTechnologyEvaluationId: this.$route.query.id
|
||||
}
|
||||
downloadFile(this.url.exportData, this.$route.query.serialNumber + ' ' + this.$t('regulatoryTechnicalEvaluationResults') + '.zip',
|
||||
query, this.Deselect)
|
||||
},
|
||||
Deselect() {
|
||||
this.selectedRowKeys = []
|
||||
},
|
||||
PersonnelSelectionChange(value, id) {
|
||||
this.queryParam[value] = id
|
||||
this.queryParam = { ...this.queryParam }
|
||||
},
|
||||
accessoryFileClick(item) {
|
||||
this.$refs.viewFileModelRef.clickButtonToUpload(item)
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -228,6 +299,7 @@
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
border-bottom: 2px #eff1f3 solid;
|
||||
z-index: 1000;
|
||||
background: #fff;
|
||||
|
||||
.doc-detail-title {
|
||||
@@ -326,9 +398,30 @@
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
.clauseContent-text {
|
||||
width: 100%;
|
||||
overflow: hidden;
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
/*! autoprefixer: off */
|
||||
-webkit-box-orient: vertical;
|
||||
-webkit-line-clamp: 1;
|
||||
/*! autoprefixer: on;*/
|
||||
text-justify: inter-ideograph;
|
||||
word-break: break-all
|
||||
}
|
||||
</style>
|
||||
<style>
|
||||
.box-clause .ant-card-body {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.box-input .ant-select-selection--single {
|
||||
height: 38px;
|
||||
}
|
||||
|
||||
.box-input .ant-select-selection__rendered {
|
||||
line-height: 38px;
|
||||
height: 38px;
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user