布局问题知识库

This commit is contained in:
qq787203167
2022-08-02 10:39:48 +08:00
parent 20e4200569
commit d68b6fef5c
4 changed files with 464 additions and 108 deletions
+10
View File
@@ -1199,4 +1199,14 @@ module.exports = {
Inthecollection:'In the collection',
Notatthe:'Not at the',
Thepercentage:'The Percentage',
problemKnowledgeBase:'Problem Knowledge Base',
recentHotSpots:'Recent Hot Spots',
disseminationMaterials:'Dissemination Materials',
informationSafety:'Information Safety',
blueBook:'Blue Book',
invoiceCollection:'Invoice Collection',
productHighlights:'Product Highlights',
financialReimbursement:'Financial Reimbursement',
classificationMaintenance:'Classification Maintenance',
managePublishing:'Manage Publishing',
}
+118 -108
View File
@@ -730,7 +730,7 @@ module.exports = {
confirmationOfRegulationsList: '法规清单确认',
regulatoryTaskConfirmation: '法规任务确认',
certificationStart: '认证试验结束',
preHomoCompletion:'摸底试验结束',
preHomoCompletion: '摸底试验结束',
certificationEnd: '认证批准',
directoryName: '目录名称',
batch: '批次',
@@ -1094,107 +1094,107 @@ module.exports = {
Copyparameterlist: '复制参数清单',
Templatenamelist: '模板名称-参数项收集清单',
newNiONumber: 'NIO编号',
English:'英文',
requiredParametersEmpty:'必填参数不能为空',
theResponsiblePersonAndDeadlineClank:'的责任人截止时间不能为空',
bringInTheProjectInterface:'带入工程接口人',
theCurrentListSaved:'当前列表数据已全部提交无法进行暂存',
defaultTemplate:'默认模板',
newRequestCommentListTemplate:'新征求意见清单模板',
NewReleasedStandardTemplate:'新发布标准模板',
pleaseSelectStandard:'请选择标准',
theResponsiblePersonEmpty:'的责任人不能为空',
theDeadlineEmpty:'的截止时间不能为空',
theDeliveryTypeCannotBeEmpty:'的交付物类型不能为空',
For:'针对于',
markedRejection:'标注的驳回意见',
RegulationListConfirmationTask:'清单确认任务',
RegulationListConfirmationNotification:'清单确认通知',
RegulationTaskConfirmation:'任务确认任务',
DesignComplianceTask:'设计符合性任务',
PreHomoTask:'Pre-Homo任务',
ValidationTask:'验证符合性任务',
DesignComplianceNotification:'设计符合性通知',
PreHomoNotification:'Pre-Homo通知',
ValidationComplianceNotification:'验证符合性通知',
RegulationTaskConfirmationNotification:'任务确认通知',
evaluationMethod:'评估方式',
uploadRelevantMaterials:'相关资料上传',
RelevantMaterials:'相关资料',
processBackground:'流程背景',
selectedStandard:'所选标准',
standardDecompositionDocument:'带入标准分解单',
pleaseSelectStandardFirst:'请先选择标准',
evaluatorFeedback:'评估人反馈',
nameTechnicalDocument:'技术文件名称',
chapter:'章节',
problemDescription:'问题说明',
filingExternalOpinions:'对外意见归档',
initiateProcessForCurrentStandard:'针对当前标准发起流程',
engineerFeedbackResults:'工程师反馈结果',
fileExport:'文件导出',
feedbackTime:'反馈时间',
regulatoryTechnologyAssessmentProcess:'法规技术评估流程',
feedbackEvaluation:'反馈评估',
clauseEvaluation:'条款评估',
standardDocuments:'标准文件',
pleaseCompleteTheEvaluationMethodorEvaluator:'请补全列表中评估方式或评估人',
reviewComments:'审核意见',
PleaseCompleteList:'请补全列表中符合性结果',
sponsorFeedback:'发起人反馈',
processNumber:'流程编号',
processName:'流程名称',
feedbackResults:'反馈结果',
theDoesNotSupportPreview:'当前文件格式不支持预览',
releaseSituation:'发布情况',
comparisonResults:'对比结果',
Published:'已发布',
initiateComparison:'发起对比',
translationLanguage:'翻译语言',
translationResults:'翻译结果',
conversionTime:'转换时间',
category:'类别',
RegulatoryProcessEvaluationResults :'法规流程评估结果',
ViewConformanceResults:'查看符合性结果',
CommentsCollectionResultsForReference:'意见收集结果参考',
TechnicalEvaluationResultsForReference:'技术评估结果参考',
ComplianceConfirmationRecord:'符合性确认记录',
complianceConfirmation:'符合性确认',
Deriveconformanceresults:'导出符合性结果',
Regulatorycompliancekanban:'法规符合性看板',
noComparisonDocumentSelected:'未选择对比文档',
RemarkInfo:'备注信息',
initiateDocumentComparison:'发起文档对比',
comparativeComments:'对比评论',
viewTheComparisonResults:'查看对比结果',
addFullTextComment:'添加全文评论',
turnOffAutomaticMatching:'关闭自动匹配',
exportComparisonReport:'导出对比报告',
comparisonDifferenceComment:'对比差异评论',
fullTextComments:'全文评论',
fileDeclaration:'文件说明',
FileForDetails:'文件详情',
Converting:'转换中',
convertNetwork:'转换完成',
convertFailed:'转换失败',
standardData:'标准数据',
Theorganization:'组织机构',
Addingfolder:'新增文件夹',
Addingsubfolders:'新增子文件夹',
Editfolder:'编辑文件夹',
Deletefolders:'删除文件夹',
Foldername:'文件夹名称',
Folderpermissions:'文件夹权限',
Folderorder:'文件夹顺序',
Downloadprivileges:'下载权限',
Openpersonnel:'开放人员',
originalText:'原文',
translatedText:'译文',
Administrativeprivileges:'管理权限',
Checkthepermissions:'查看权限',
onlyFilesUploaded:'只能上传.docx.doc文件',
uploadedbyyourself:'只能删除自己上传的文件数据',
Fileuploaded:'文件上传中请稍后',
English: '英文',
requiredParametersEmpty: '必填参数不能为空',
theResponsiblePersonAndDeadlineClank: '的责任人截止时间不能为空',
bringInTheProjectInterface: '带入工程接口人',
theCurrentListSaved: '当前列表数据已全部提交无法进行暂存',
defaultTemplate: '默认模板',
newRequestCommentListTemplate: '新征求意见清单模板',
NewReleasedStandardTemplate: '新发布标准模板',
pleaseSelectStandard: '请选择标准',
theResponsiblePersonEmpty: '的责任人不能为空',
theDeadlineEmpty: '的截止时间不能为空',
theDeliveryTypeCannotBeEmpty: '的交付物类型不能为空',
For: '针对于',
markedRejection: '标注的驳回意见',
RegulationListConfirmationTask: '清单确认任务',
RegulationListConfirmationNotification: '清单确认通知',
RegulationTaskConfirmation: '任务确认任务',
DesignComplianceTask: '设计符合性任务',
PreHomoTask: 'Pre-Homo任务',
ValidationTask: '验证符合性任务',
DesignComplianceNotification: '设计符合性通知',
PreHomoNotification: 'Pre-Homo通知',
ValidationComplianceNotification: '验证符合性通知',
RegulationTaskConfirmationNotification: '任务确认通知',
evaluationMethod: '评估方式',
uploadRelevantMaterials: '相关资料上传',
RelevantMaterials: '相关资料',
processBackground: '流程背景',
selectedStandard: '所选标准',
standardDecompositionDocument: '带入标准分解单',
pleaseSelectStandardFirst: '请先选择标准',
evaluatorFeedback: '评估人反馈',
nameTechnicalDocument: '技术文件名称',
chapter: '章节',
problemDescription: '问题说明',
filingExternalOpinions: '对外意见归档',
initiateProcessForCurrentStandard: '针对当前标准发起流程',
engineerFeedbackResults: '工程师反馈结果',
fileExport: '文件导出',
feedbackTime: '反馈时间',
regulatoryTechnologyAssessmentProcess: '法规技术评估流程',
feedbackEvaluation: '反馈评估',
clauseEvaluation: '条款评估',
standardDocuments: '标准文件',
pleaseCompleteTheEvaluationMethodorEvaluator: '请补全列表中评估方式或评估人',
reviewComments: '审核意见',
PleaseCompleteList: '请补全列表中符合性结果',
sponsorFeedback: '发起人反馈',
processNumber: '流程编号',
processName: '流程名称',
feedbackResults: '反馈结果',
theDoesNotSupportPreview: '当前文件格式不支持预览',
releaseSituation: '发布情况',
comparisonResults: '对比结果',
Published: '已发布',
initiateComparison: '发起对比',
translationLanguage: '翻译语言',
translationResults: '翻译结果',
conversionTime: '转换时间',
category: '类别',
RegulatoryProcessEvaluationResults: '法规流程评估结果',
ViewConformanceResults: '查看符合性结果',
CommentsCollectionResultsForReference: '意见收集结果参考',
TechnicalEvaluationResultsForReference: '技术评估结果参考',
ComplianceConfirmationRecord: '符合性确认记录',
complianceConfirmation: '符合性确认',
Deriveconformanceresults: '导出符合性结果',
Regulatorycompliancekanban: '法规符合性看板',
noComparisonDocumentSelected: '未选择对比文档',
RemarkInfo: '备注信息',
initiateDocumentComparison: '发起文档对比',
comparativeComments: '对比评论',
viewTheComparisonResults: '查看对比结果',
addFullTextComment: '添加全文评论',
turnOffAutomaticMatching: '关闭自动匹配',
exportComparisonReport: '导出对比报告',
comparisonDifferenceComment: '对比差异评论',
fullTextComments: '全文评论',
fileDeclaration: '文件说明',
FileForDetails: '文件详情',
Converting: '转换中',
convertNetwork: '转换完成',
convertFailed: '转换失败',
standardData: '标准数据',
Theorganization: '组织机构',
Addingfolder: '新增文件夹',
Addingsubfolders: '新增子文件夹',
Editfolder: '编辑文件夹',
Deletefolders: '删除文件夹',
Foldername: '文件夹名称',
Folderpermissions: '文件夹权限',
Folderorder: '文件夹顺序',
Downloadprivileges: '下载权限',
Openpersonnel: '开放人员',
originalText: '原文',
translatedText: '译文',
Administrativeprivileges: '管理权限',
Checkthepermissions: '查看权限',
onlyFilesUploaded: '只能上传.docx.doc文件',
uploadedbyyourself: '只能删除自己上传的文件数据',
Fileuploaded: '文件上传中请稍后',
English: '英文',
requiredParametersEmpty: '必填参数不能为空',
theResponsiblePersonAndDeadlineClank: '的责任人截止时间不能为空',
@@ -1296,10 +1296,20 @@ module.exports = {
onlyFilesUploaded: '只能上传.docx.doc文件',
uploadedbyyourself: '只能删除自己上传的文件数据',
doNotHavePermissionDeleteData: '没有权限删除此数据',
Parametercollection:'参数收集',
Collectlist:'收集清单',
Statisticalmodels:'统计模式',
Inthecollection:'收集中',
Notatthe:'未开始',
Thepercentage:'百分比',
Parametercollection: '参数收集',
Collectlist: '收集清单',
Statisticalmodels: '统计模式',
Inthecollection: '收集中',
Notatthe: '未开始',
Thepercentage: '百分比',
problemKnowledgeBase:'问题知识库',
recentHotSpots:'近期热点',
disseminationMaterials:'传播物料',
informationSafety:'信息安全',
blueBook:'蓝皮书',
invoiceCollection:'发票合集',
productHighlights:'产品亮点',
financialReimbursement:'财务报销',
classificationMaintenance:'分类维护',
managePublishing:'管理发布',
}
@@ -0,0 +1,13 @@
<template>
</template>
<script>
export default {
name: 'countryCardList'
}
</script>
<style scoped>
</style>
@@ -0,0 +1,323 @@
<template>
<div class="box">
<div class="search-detail-wrap">
<div class="box-title-text">
<div class="title-text" :title="$t('searchContent')">
<span>{{$t('searchContent')}}</span>
</div>
<a-input class="box-input" :placeholder="$t('PleaseEnter')+$t('searchContent')"
v-model="searchContent"></a-input>
<a-button class="box-button" type="primary" @click="onSearch">{{$t('query')}}</a-button>
<a-button class="box-button" style="margin-left: 8px" @click="ResetSearch">{{$t('reset')}}</a-button>
</div>
</div>
<div class="box-content">
<div class="box-content-left">
<span class="box-content-left-text">{{$t('recentHotSpots')}}</span>
<span class="box-content-left-text">{{$t('disseminationMaterials')}}</span>
<span class="box-content-left-text">{{$t('informationSafety')}}</span>
<span class="box-content-left-text">{{$t('blueBook')}}</span>
<span class="box-content-left-text">{{$t('invoiceCollection')}}</span>
<span class="box-content-left-text">{{$t('productHighlights')}}</span>
<span class="box-content-left-text">{{$t('financialReimbursement')}}</span>
</div>
<div class="box-content-right">
<div @click="classificationClick" class="operator-text" v-has="'virtual:set:creater'">
<a-icon type="setting"/>
{{$t('classificationMaintenance')}}
</div>
<div @click="managePublishingClick" class="operator-text" v-has="'virtual:set:creater'">
<a-icon type="setting"/>
{{$t('managePublishing')}}
</div>
<div @click="newlyAddedClick" class="operator-text" v-has="'virtual:set:creater'">
<a-icon type="setting"/>
{{$t('newlyAdded')}}
</div>
</div>
</div>
<div v-if="conList.length > 0" style="margin-top: 58px;height: calc(100vh - 260px);overflow:auto;">
<li v-for="(item,index) in conList" :key="item.id">
<div style="margin-bottom: 10px;position: relative">
<!-- <a-checkbox :value="item.id" class="checkbox-left"></a-checkbox>-->
<div class="text-text-right"
:class="{ 'null-input':item.checked }">
<div class="text-header" @click="titleClick(item)">
<a-tooltip placement="topLeft" :mouseEnterDelay="0.5">
<template slot="title">
<span v-html="item.module_type"></span>
</template>
<span class="text-header-text" style="cursor: pointer" v-html="item.module_type"></span>
<template slot="title">
<span v-html="item.serial_number"></span>
</template>
<span style="cursor: pointer"
class="text-header-text"
v-html="item.serial_number"></span>
<template slot="title">
<span v-html="item.title"></span>
</template>
<span class="text-header-text" style="cursor: pointer" v-html="item.title"></span>
<template slot="title">
<span v-html="item.file_name"></span>
</template>
<span class="text-header-text" style="cursor: pointer" v-html="item.file_name"></span>
</a-tooltip>
<a-tooltip placement="topLeft" :mouseEnterDelay="0.5">
</a-tooltip>
</div>
<a-tooltip placement="topLeft" :mouseEnterDelay="0.5">
<template slot="title">
<span v-html="item.content"></span>
</template>
<div class="text-content" v-html="item.content">
</div>
</a-tooltip>
</div>
</div>
</li>
</div>
<div class="noData" v-else>
暂无数据
</div>
<div class="page" v-if="conList.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>
</template>
<script>
import { getAction, postAction, downloadFile } from '@/api/manage'
export default {
name: 'problemKnowledgeBaseList',
data() {
return {
searchContent: '',
checkboxText: [],
conList: [],
total: 0,
pageSize: 10,
downLoadFileUrl: window._CONFIG['domianPreviewURL'] + '/sys/common/download',
pageNo: 1,
url: {
getInfoList: 'search/document/getFullTextInfoList'
}
}
},
mounted() {
this.getList()
},
methods: {
onSearch() {
},
ResetSearch() {
},
classificationClick() {
},
managePublishingClick() {
},
newlyAddedClick() {
},
pageOnChange(page, pageSize) {
this.pageNo = page
this.getList()
},
SizeChange(page, pageSize) {
this.pageNo = 1
this.pageSize = pageSize
this.getList()
},
getList() {
let query = {
pageNo: this.pageNo,
pageSize: this.pageSize
}
postAction(this.url.getInfoList, query).then((res) => {
if (res.success) {
this.conList = res.result.records
this.total = res.result.total
} else {
this.conList = []
}
})
},
titleClick(item) {
let newUrl = this.$router.resolve({
path: '/docManage/library/detail',
query: {
id: item.id.slice(0, 32),
title: item.title,
serial_number: item.serial_number
}
})
window.open(newUrl.href, '_blank')
}
}
}
</script>
<style scoped lang="less">
.search-detail-wrap {
width: 100%;
margin: 0 auto;
}
.box-title-text {
line-height: 1.4;
display: flex;
align-items: center;
margin-bottom: 10px;
text-align: center;
justify-content: center;
}
.title-text {
width: 110px;
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 {
/*min-width: 200px;*/
display: inline-block;
width: 50%;
height: 38px;
margin-top: 2px;
margin-right: 16px;
}
.box-button {
height: 38px;
}
.box-content-left {
width: 60%;
float: left;
font-size: 14px;
font-weight: 400;
color: #040B29;
margin-top: 20px;
}
.box-content-right {
width: 40%;
float: left;
display: inline-block;
text-align: right;
margin-top: 20px;
}
.operator-text {
cursor: pointer;
margin-right: 53px;
font-size: 14px;
font-weight: 400;
color: #040B29;
display: inline-block;
}
.operator-text:last-child {
margin-right: 13px;
}
.box-content-left-text {
margin-right: 30px;
cursor: pointer;
}
.box {
padding: 0 0 0 18px;
box-sizing: border-box;
}
.checkbox-left {
float: left;
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
}
.text-text-right {
padding: 19px 0;
box-sizing: border-box;
/*margin-left: 38px;*/
}
.null-input {
background-color: #F2F4F8;
}
.search-text-title {
margin-bottom: 22px;
}
.text-header {
margin-bottom: 11px;
.text-header-text {
margin-right: 52px;
font-size: 16px;
font-weight: bold;
color: #040B29;
display: inline-block;
max-width: 180px;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}
/*span {*/
/* margin-right: 52px;*/
/* font-size: 16px;*/
/* font-weight: bold;*/
/* color: #040B29;*/
/* display: inline-block;*/
/* max-width: 500px;*/
/* text-overflow: ellipsis;*/
/* white-space: nowrap;*/
/* overflow: hidden;*/
/*}*/
}
.text-content {
font-size: 14px;
font-weight: 400;
color: #040B29;
opacity: 0.7;
}
.page {
text-align: right;
margin-top: 20px;
}
.noData {
width: 100%;
text-align: center;
line-height: 10;
}
</style>