布局项目状态看板

This commit is contained in:
qq787203167
2022-05-16 14:05:35 +08:00
parent a0b12204dd
commit 28af4cd769
3 changed files with 222 additions and 2 deletions
+5
View File
@@ -820,4 +820,9 @@ module.exports = {
greenRequirements:'Green: confirm that it meets or meets the current requirements',
blueUndeterminedState:'Blue: undetermined state',
authenticationMessage:'Authentication Message',
accept:'Accept',
notLaunch:'Not Launch',
refuse:'Refuse',
taskTermination:'Task termination',
projectStatusAndProgress:'Project status and progress',
}
+7 -2
View File
@@ -47,9 +47,9 @@ module.exports = {
selectedAccount: '选中账号?',
whether: '是否',
adminDoNotAllowOperation: '管理员账号不允许此操作',
advancedQuery: '高级查询',
advancedQuery: '高级搜索',
constructor: '构造器',
advancedQueryEffective: '已有高级查询条件生效',
advancedQueryEffective: '已有高级搜索条件生效',
preservation: '保存',
condition: '条件',
close: '关闭',
@@ -819,10 +819,15 @@ module.exports = {
inconformity:'不符合',
toTrack:'待追踪',
Launch:'发起',
notLaunch:'未发起',
maintainProgress:'维护进度',
redSchedule:'不符合且无可接受的方案和时间表',
yellowSchedule:'不符合/待追踪有可接受的方案和时间表',
greenRequirements:'绿确认符合或满足当前要求',
blueUndeterminedState:'未判断状态',
authenticationMessage:'认证消息',
accept:'接受',
refuse:'拒绝',
taskTermination:'任务终止',
projectStatusAndProgress:'项目状态进度',
}
@@ -0,0 +1,210 @@
<template>
<a-card :bordered="false">
<div class="table-page-search-wrapper">
<a-row :gutter="24">
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('standard')">
<span>{{$t('standard')}}</span>
</div>
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('standard')"
v-model="queryParam.serialNumber"></j-input>
</div>
</a-col>
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" style="width: 64px" :title="$t('areaOfResponsibility')">
<span>{{$t('areaOfResponsibility')}}</span>
</div>
<j-dict-select-tag class="box-input" v-model="queryParam.dutyTerritory"
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
:type="'select'"
:triggerChange="false" :dictCode="'duty_territory'"/>
</div>
</a-col>
<span style="float: right;overflow: hidden;margin-right: 11px" 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>
</div>
<div class="box-top">
<span class="box-top-text">{{$t('regulatoryCertificationTaskPlan')}}</span>
<div class="box-top-content">
</div>
</div>
<div class="box-bottom">
<span class="box-top-text">{{$t('projectStatusAndProgress')}}</span>
<div>
<a-table
ref="table"
size="middle"
:loading="loading"
:pagination="false"
:scroll="{x: true}"
:data-source="dataSource"
:columns="columns"
>
<span slot="projectStatusTitle">
<span>{{this.$t('projectStatus')}}</span><br/>
<span>{{'('+$t('red')+'/'+$t('yellow')+'/'+$t('green')+')'}}</span>
</span>
<span slot="CertificationProgressTitle">
<span>{{this.$t('CertificationProgress')}}</span><br/>
<span>{{'('+$t('notInvolved')+'/'+$t('toBeStarted')+'/'+$t('inProgress')+'/'+$t('experimentFailed')+'/'+$t('experimentPassed')+')'}}</span>
</span>
<span slot="listConfirmationStatusTitle">
<span>{{this.$t('listConfirmationStatus')}}</span><br/>
<span>{{'('+$t('notLaunch')+'/'+$t('toBeConfirmed')+'/'+$t('accept')+'/'+$t('refuse')+')'}}</span>
</span>
<span slot="taskAffirmStatusTitle">
<span>{{this.$t('taskAffirmStatus')}}</span><br/>
<span>{{'('+$t('notLaunch')+'/'+$t('toBeConfirmed')+'/'+$t('accept')+'/'+$t('refuse')+')'}}</span>
</span>
<span slot="designComplianceReviewTitle">
<span>{{this.$t('designComplianceReview')}}</span><br/>
<span>{{'('+$t('toBeConfirmed')+'/'+$t('accord')+'/'+$t('nonConformity')+'/'+$t('Tracked')+'/'+$t('notInvolved')+'/'+$t('taskTermination')+')'}}</span>
</span>
<span slot="preHomeConfirmationTitle">
<span>{{this.$t('preHomeConfirmation')}}</span><br/>
<span>{{'('+$t('toBeConfirmed')+'/'+$t('accord')+'/'+$t('nonConformity')+'/'+$t('Tracked')+'/'+$t('notInvolved')+'/'+$t('taskTermination')+')'}}</span>
</span>
<span slot="verificationComplianceReviewTitle">
<span>{{this.$t('verificationComplianceReview')}}</span><br/>
<span>{{'('+$t('toBeConfirmed')+'/'+$t('accord')+'/'+$t('nonConformity')+'/'+$t('Tracked')+'/'+$t('notInvolved')+'/'+$t('taskTermination')+')'}}</span>
</span>
</a-table>
</div>
</div>
</a-card>
</template>
<script>
export default {
name: 'index',
data() {
return {
queryParam: {},
loading: false,
dataSource: [],
columns: [
{
title: this.$t('entryName'),
align: 'center',
dataIndex: 'projectName',
scopedSlots: { customRender: 'projectName' },
width: 180
},
{
title: this.$t('targetMarket'),
align: 'center',
dataIndex: 'targetMarket_dictText',
width: 180
},
{
align: 'center',
dataIndex: 'projectStatus_dictText',
scopedSlots: { title: 'projectStatusTitle' },
width: 240
},
{
align: 'center',
dataIndex: 'studioEngineerName',
width: 340,
scopedSlots: { title: 'CertificationProgressTitle' }
},
{
align: 'center',
dataIndex: 'certificationEngineerName',
width: 340,
scopedSlots: { title: 'listConfirmationStatusTitle' }
},
{
align: 'center',
dataIndex: 'vehiclePlatform_dictText',
width: 340,
scopedSlots: { title: 'taskAffirmStatusTitle' }
},
{
align: 'center',
dataIndex: 'digitalPlatform_dictText',
width: 440,
scopedSlots: { title: 'designComplianceReviewTitle' }
},
{
dataIndex: 'digitalPlatform',
align: 'center',
width: 440,
scopedSlots: { title: 'preHomeConfirmationTitle' }
},
{
dataIndex: 'digitalPlatform',
align: 'center',
width: 440,
scopedSlots: { title: 'verificationComplianceReviewTitle' }
}
]
}
},
mounted() {
},
methods: {
searchQuery() {
},
searchReset() {
}
}
}
</script>
<style scoped>
@import '~@assets/less/common.less';
.box-title-text {
line-height: 1.4;
display: flex;
align-items: center;
margin-bottom: 10px;
}
.title-text {
width: 32px;
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-top-text {
font-size: 16px;
font-weight: 500;
color: #000F16;
margin-bottom: 20px;
display: inline-block;
}
.box-top-content {
width: 100%;
height: 400px;
background: #9e9e9e;
margin-bottom: 20px;
}
</style>