OTA管理

1. 基础信息增加影响描述
2. 主题内容过长与下面文字重叠,应自适应高度
3. 详情中增加Jira ticket链接
This commit is contained in:
范强强
2023-10-20 14:38:00 +08:00
parent d7d3bb8b5f
commit a04f6d3b90
@@ -16,7 +16,8 @@
<a-col :span="12">
<div class='detail-box'>
<span class='detail-text' :title="'VDR'">{{'VDR'}}</span>
<span class="title-text-text" :title="form.vdr">
<span class="title-text-text" style="color: #00B3BE;cursor: pointer"
@click="vdrClick" :title="form.vdr">
{{form.vdr}}</span>
</div>
@@ -41,7 +42,8 @@
</a-col>
<a-col :span="12">
<div class='detail-box'>
<span class='detail-text' :title="$t('influencestatute') + '-CN'">{{$t('influencestatute') + '-CN'}}</span>
<span class='detail-text'
:title="$t('influencestatute') + '-CN'">{{$t('influencestatute') + '-CN'}}</span>
<span class="title-text-text" :title="form.impactCnHomo">
{{form.impactCnHomo}}</span>
</div>
@@ -51,12 +53,21 @@
<a-row :gutter="24">
<a-col :span="12">
<div class='detail-box'>
<span class='detail-text' :title="$t('influencestatute') + '-EU'">{{$t('influencestatute') + '-EU'}}</span>
<span class='detail-text'
:title="$t('influencestatute') + '-EU'">{{$t('influencestatute') + '-EU'}}</span>
<span class="title-text-text" :title="form.impactEuHomo">
{{form.impactEuHomo}}</span>
</div>
</a-col>
<a-col :span="12">
<div class='detail-box'>
<span class='detail-text' :title="$t('impactdescription')">{{$t('impactdescription')}}</span>
<span class="title-text-text" :title="form.homologation">
{{form.homologation}}</span>
</div>
</a-col>
</a-row>
<div class='title' :title="$t('applicationprojectversion')">{{$t('applicationprojectversion')}}</div>
<div v-for='(item,index) in vdrList' :key='index'>
@@ -80,7 +91,8 @@
</a-col>
<a-col :span="12">
<div class='detail-box'>
<span class='detail-text' :title="$t('certificationdeclaration')">{{$t('certificationdeclaration')}}</span>
<span class='detail-text'
:title="$t('certificationdeclaration')">{{$t('certificationdeclaration')}}</span>
<span class="title-text-text" :title="item.certificationSubmission?item.certificationSubmission:'--'">
{{item.certificationSubmission?item.certificationSubmission:'--'}}</span>
</div>
@@ -108,7 +120,7 @@
</a-spin>
<div class="drawer-bootom-button">
<a-button style="margin-right: 8px" @click="handleCancel">{{$t('close')}}</a-button>
<!-- <a-button type="primary" @click="handleSubmit" :loading="confirmLoading">{{$t('submit')}}</a-button>-->
<!-- <a-button type="primary" @click="handleSubmit" :loading="confirmLoading">{{$t('submit')}}</a-button>-->
</div>
</a-drawer>
<uploadFile ref="uploadFile" :acceptcode="acceptcode" @uploadSuccess="uploadSuccess"/>
@@ -117,164 +129,173 @@
</template>
<script>
import { getAction, postAction } from '@/api/manage'
import uploadFile from '@/components/uploadFile/file'
import { mapGetters } from 'vuex'
import { getAction, postAction } from '@/api/manage'
import uploadFile from '@/components/uploadFile/file'
import { mapGetters } from 'vuex'
export default {
name:"addModel",
components:{
uploadFile
},
data() {
return {
visible: false,
disabled: false,
showButton:false,
confirmLoading: false,
acceptcode:'',
projectNameList: [],
DeliverableTreeList: [],
form:{
VDR:'',
theme:'',
authenticationimpact:'',
influencestatuteCn:'',
influencestatuteEu:'',
},
vdrList:[],
url:{
addModel:''
},
record:{},
car:'',
}
},
mounted() {
},
methods: {
...mapGetters(['userInfo']),
addModel(record,val) {
this.form=record
this.car = val
getAction('/ota/otaManageApplyEO/getVersionInfo', {vdr:this.form.vdr,car:this.car}).then((res) => {
if (res.success) {
this.vdrList = res.result
} else {
}
})
this.visible = true
this.confirmLoading = false
console.log('555',record);
export default {
name: 'addModel',
components: {
uploadFile
},
handleCancel() {
this.visible = false
},
/** 上传文件的回调 */
uploadSuccess(data) {
let attIdList = []
if (data && data.length > 0) {
data.map(item => {
attIdList.push(item.id || data.name)
})
data() {
return {
visible: false,
disabled: false,
showButton: false,
confirmLoading: false,
acceptcode: '',
projectNameList: [],
DeliverableTreeList: [],
form: {
VDR: '',
theme: '',
authenticationimpact: '',
influencestatuteCn: '',
influencestatuteEu: ''
},
vdrList: [],
url: {
addModel: ''
},
record: {},
car: ''
}
/** 赋值给当前对应的表单文件 */
this.formInline[this.uploadName] = attIdList.join(',')
this.formInline = { ...this.formInline }
},
isEdit(){
this.disabled=false
mounted() {
},
methods: {
...mapGetters(['userInfo']),
addModel(record, val) {
this.form = record
this.car = val
getAction('/ota/otaManageApplyEO/getVersionInfo', { vdr: this.form.vdr, car: this.car }).then((res) => {
if (res.success) {
this.vdrList = res.result
} else {
}
})
this.visible = true
this.confirmLoading = false
console.log('555', record)
},
handleCancel() {
this.visible = false
},
/** 上传文件的回调 */
uploadSuccess(data) {
let attIdList = []
if (data && data.length > 0) {
data.map(item => {
attIdList.push(item.id || data.name)
})
}
/** 赋值给当前对应的表单文件 */
this.formInline[this.uploadName] = attIdList.join(',')
this.formInline = { ...this.formInline }
},
isEdit() {
this.disabled = false
},
vdrClick() {
window.open('http://jira.nioint.com/browse/issue_key')
}
}
}
}
</script>
<style scoped>
.title{
font-size: 16px;
font-weight: bold;
margin-bottom: 20px;
}
.box-title-text {
line-height: 1.4;
display: flex;
/*align-items: center;*/
}
.detail-box{
width: 100%;
margin-bottom: 20px;
position: relative;
}
.detail-text{
display: inline-block;
font-size: 14px;
color: #6F7385;
width: 120px;
overflow: hidden; /*超出部分隐藏*/
text-overflow: ellipsis; /*超出部分省略号表示*/
white-space: nowrap; /*强制单行显示*/
display: inline-block; /*转换为行内块元素*/
}
.title-text-text{
position: absolute;
left: 45%;
font-size: 14px;
color: #040B29;
}
.title-text {
width: 250px;
text-align: right;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
height: 42px;
line-height: 48px;
}
.title {
font-size: 16px;
font-weight: bold;
margin-bottom: 20px;
}
.box-input {
display: inline-block;
height: 38px;
width: 100%;
}
.box-title-text {
line-height: 1.4;
display: flex;
/*align-items: center;*/
}
.itemModel {
width: calc(100% - 130px);
display: inline-block;
margin-top: 2px;
min-height: 40px;
margin-bottom: 24px;
}
.detail-box {
width: 100%;
margin-bottom: 20px;
position: relative;
display: flex;
}
.Required {
color: red;
margin-right: 4px;
}
.detail-text {
font-size: 14px;
color: #6F7385;
width: 120px;
overflow: hidden; /*超出部分隐藏*/
text-overflow: ellipsis; /*超出部分省略号表示*/
white-space: nowrap; /*强制单行显示*/
display: inline-block; /*转换为行内块元素*/
margin-right: 20px;
}
.header-text {
font-size: 16px;
font-weight: 500;
}
.title-text-text {
display: inline-block;
width: calc(100% - 140px);
font-size: 14px;
color: #040B29;
}
.drawer-bootom-button {
position: absolute;
bottom: 0;
width: 100%;
z-index: 100;
border-top: 1px solid #e8e8e8;
padding: 10px 16px;
text-align: right;
left: 0;
background: #fff;
border-radius: 0 0 2px 2px;
}
.title-text {
width: 250px;
text-align: right;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
height: 42px;
line-height: 48px;
}
.icon-text {
font-size: 16px;
margin-right: 4px;
}
.box-input {
display: inline-block;
height: 38px;
width: 100%;
}
.itemModel {
width: calc(100% - 130px);
display: inline-block;
margin-top: 2px;
min-height: 40px;
margin-bottom: 24px;
}
.Required {
color: red;
margin-right: 4px;
}
.header-text {
font-size: 16px;
font-weight: 500;
}
.drawer-bootom-button {
position: absolute;
bottom: 0;
width: 100%;
z-index: 100;
border-top: 1px solid #e8e8e8;
padding: 10px 16px;
text-align: right;
left: 0;
background: #fff;
border-radius: 0 0 2px 2px;
}
.icon-text {
font-size: 16px;
margin-right: 4px;
}
</style>