修改问题管理新增查看样式
This commit is contained in:
@@ -303,6 +303,11 @@
|
||||
width: 80px;
|
||||
overflow: hidden;
|
||||
padding: 0;
|
||||
background: #FFFFFF;
|
||||
border-radius: 4px 4px 4px 4px;
|
||||
opacity: 1;
|
||||
border: 1px solid #00BEBE;
|
||||
color: #01A0AC;
|
||||
}
|
||||
|
||||
.drawer-bootom-button {
|
||||
@@ -359,7 +364,7 @@
|
||||
|
||||
::v-deep .box-input-select .ant-select-selection--multiple::-webkit-scrollbar {
|
||||
/*height: 52px!important;*/
|
||||
display: block;
|
||||
display: none;
|
||||
}
|
||||
|
||||
.itemOption {
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<a-drawer
|
||||
:title="title"
|
||||
:maskClosable="false"
|
||||
:width="900"
|
||||
:width="1000"
|
||||
placement="right"
|
||||
:closable="true"
|
||||
@close="handleCancel"
|
||||
@@ -12,7 +12,7 @@
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="24">
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="Required">*</span>
|
||||
@@ -27,8 +27,6 @@
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
@@ -44,6 +42,9 @@
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
@@ -59,8 +60,6 @@
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
@@ -80,6 +79,9 @@
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
@@ -94,7 +96,7 @@
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
showSearch
|
||||
@change="platformChange"
|
||||
:style="formInline.projectType == 'none' ? 'width:100%' : 'width:50%'"
|
||||
:style="!formInline.projectType ? 'width:100%' : 'width:calc(50% - 6px);'"
|
||||
optionFilterProp="label"
|
||||
:autoClearSearchValue="false"
|
||||
:placeholder="$t('PleaseSelect')+$t('type')">
|
||||
@@ -113,7 +115,7 @@
|
||||
v-model="formInline.projectId"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
showSearch
|
||||
style="width: 50%;float: right"
|
||||
style="width: calc(50% - 6px);float: right;margin-left: 12px"
|
||||
optionFilterProp="label"
|
||||
:autoClearSearchValue="false"
|
||||
:placeholder="$t('PleaseSelect')+$t('RelatedItems')">
|
||||
@@ -132,7 +134,7 @@
|
||||
v-model="formInline.projectId"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
showSearch
|
||||
style="width: 50%;float: right"
|
||||
style="width: calc(50% - 6px);float: right;margin-left: 10px"
|
||||
mode="multiple"
|
||||
optionFilterProp="label"
|
||||
:autoClearSearchValue="false"
|
||||
@@ -149,8 +151,7 @@
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
@@ -179,6 +180,8 @@
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
@@ -208,8 +211,6 @@
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
@@ -236,9 +237,9 @@
|
||||
</div>
|
||||
<a-form-model-item class="itemModel itemModel-explain ql-snow"
|
||||
prop="descriptions">
|
||||
<div style="width: calc(100% - 80px);display: inline-block">
|
||||
<!-- v-if="!isDescription"-->
|
||||
<div style="width: 100%;display: inline-block">
|
||||
<quill-editor
|
||||
v-if="!isDescription"
|
||||
class="text-editor"
|
||||
ref="myQuillEditor"
|
||||
@ready="onEditorReady($event)"
|
||||
@@ -249,13 +250,13 @@
|
||||
@blur="quilleditorBlur"
|
||||
@change="onEditorChange($event)"
|
||||
/>
|
||||
<a-input class="box-input"
|
||||
v-if="isDescription"
|
||||
v-model='formInline.description'
|
||||
:disabled="true"/>
|
||||
<!-- <a-input class="box-input"-->
|
||||
<!-- v-if="isDescription"-->
|
||||
<!-- v-model='formInline.description'-->
|
||||
<!-- :disabled="true"/>-->
|
||||
</div>
|
||||
<span v-if="!isDescription" @click="putAwayClick" class="putAway">{{$t('putAway')}}</span>
|
||||
<span v-if="isDescription" @click="putAwayClick" class="putAway">{{$t('open')}}</span>
|
||||
<!-- <span v-if="!isDescription" @click="putAwayClick" class="putAway">{{$t('putAway')}}</span>-->
|
||||
<!-- <span v-if="isDescription" @click="putAwayClick" class="putAway">{{$t('open')}}</span>-->
|
||||
<!-- <a-input class="box-input"-->
|
||||
<!-- v-model='formInline.description'-->
|
||||
<!-- :disabled="disabled"-->
|
||||
@@ -273,22 +274,31 @@
|
||||
:title="$t('documents')">{{$t('documents')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="fileLink">
|
||||
<div v-for="(item,index) in formInline.fileLinkList" :key="index">
|
||||
<div style="margin-bottom: 10px" v-for="(item,index) in formInline.fileLinkList" :key="index">
|
||||
<a-input class="box-input"
|
||||
style='width: 88%'
|
||||
style='width: calc(100% - 48px);margin-right: 10px'
|
||||
v-model='item.fileLink'
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseEnter')+$t('Addresslink')"/>
|
||||
<a-icon class="icon-text" @click="addClick(index)" style='margin-left: 10px;font-size: 18px;'
|
||||
v-if="formInline.fileLinkList.length - 1 == index"
|
||||
type="plus"/>
|
||||
<a-icon class="icon-text"
|
||||
v-if="formInline.fileLinkList.length > 1 && formInline.fileLinkList.length - 1 !== index"
|
||||
style='margin-left: 10px;font-size: 18px;'
|
||||
@click="deleteClick(index)"
|
||||
type="minus"/>
|
||||
<img @click="addClick(index)"
|
||||
class="box-input-img"
|
||||
v-if="formInline.fileLinkList.length - 1 == index"
|
||||
src="../../../../assets/progressAdd.png" alt="">
|
||||
<img @click="deleteClick(index)"
|
||||
class="box-input-img"
|
||||
v-if="formInline.fileLinkList.length > 1 && formInline.fileLinkList.length - 1 !== index"
|
||||
src="../../../../assets/progressDelete.png" alt="">
|
||||
<!-- <a-icon class="icon-text" @click="addClick(index)" style='margin-left: 10px;font-size: 18px;'-->
|
||||
<!-- v-if="formInline.fileLinkList.length - 1 == index"-->
|
||||
<!-- type="plus"/>-->
|
||||
<!-- <a-icon class="icon-text"-->
|
||||
<!-- v-if="formInline.fileLinkList.length > 1 && formInline.fileLinkList.length - 1 !== index"-->
|
||||
<!-- style='margin-left: 10px;font-size: 18px;'-->
|
||||
<!-- @click="deleteClick(index)"-->
|
||||
<!-- type="minus"/>-->
|
||||
</div>
|
||||
<a-button type="primary" class="button-text"
|
||||
icon="upload"
|
||||
@click="clickButtonToUpload('file')">
|
||||
{{ (formInline.file === 'null' || formInline.file === '' ||
|
||||
formInline.file == null) ? $t('Fileupload') : $t('viewUploadedFiles')
|
||||
@@ -307,10 +317,16 @@
|
||||
:title="$t('progresstracking')">{{$t('progresstracking')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="progresstracking">
|
||||
<div style="width: 100%;display: flex;margin-bottom: 20px"
|
||||
<a-button type="primary" class="button-text"
|
||||
icon="plus"
|
||||
style="margin-bottom: 10px"
|
||||
@click="addprogresstrackingClick()">
|
||||
{{ $t('newlyAdded') }}
|
||||
</a-button>
|
||||
<div class="progressTrackingListClass"
|
||||
v-for="(item,index) in formInline.progressTrackingList" :key="index">
|
||||
<!-- <span>{{item}}</span>-->
|
||||
<div style="width: calc(100% - 116px);display: inline-block">
|
||||
<div style="width: calc(100%);display: inline-block;line-height: 0">
|
||||
<!-- <quill-editor-->
|
||||
<!-- class="text-editor trackingClass"-->
|
||||
<!-- ref="myQuillEditorRef"-->
|
||||
@@ -321,11 +337,40 @@
|
||||
<!-- style="width: 100%;height: 200px;display: inline-block"-->
|
||||
<!-- :options="editorOption"-->
|
||||
<!-- />-->
|
||||
<div class="text-box" v-if="!item.isDescription" v-html="item.progressTracking"></div>
|
||||
<a-input class="box-input"
|
||||
v-if="item.isDescription"
|
||||
v-model='item.progressTracking'
|
||||
:disabled="true"/>
|
||||
<div class="text-box" v-if="!item.isDescription">
|
||||
<div class="text-box-index-text-top" v-html="item.progressTracking"></div>
|
||||
<div class="text-box-index-text-right">
|
||||
<div class="text-box-index-text-right-text" @click="openClick(item)">
|
||||
<img src="../../../../assets/progressExit.png" alt="">
|
||||
<span style="margin-left: 2px">{{$t('putAway')}}</span>
|
||||
</div>
|
||||
<div class="text-box-index-text-right-text"
|
||||
@click="deleteprogresstrackingClick(index,item)"
|
||||
v-if="formInline.progressTrackingList.length > 0">
|
||||
<img src="../../../../assets/editdelete.png" alt="">
|
||||
<span style="margin-left: 2px">{{$t('delete')}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="text-box-index" v-if="item.isDescription">
|
||||
<div class="text-box-index-text" v-html="item.progressTracking"></div>
|
||||
<div class="text-box-index-text-right">
|
||||
<div class="text-box-index-text-right-text" @click="openClick(item)">
|
||||
<img src="../../../../assets/medieProgress.png" alt="">
|
||||
<span style="margin-left: 2px">{{$t('open')}}</span>
|
||||
</div>
|
||||
<div class="text-box-index-text-right-text"
|
||||
@click="deleteprogresstrackingClick(index,item)"
|
||||
v-if="formInline.progressTrackingList.length > 0">
|
||||
<img src="../../../../assets/editdelete.png" alt="">
|
||||
<span style="margin-left: 2px">{{$t('delete')}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- <a-input class="box-input"-->
|
||||
<!-- v-if="item.isDescription"-->
|
||||
<!-- v-model='item.progressTracking'-->
|
||||
<!-- :disabled="true"/>-->
|
||||
</div>
|
||||
<!-- <a-input class="box-input"-->
|
||||
<!-- style='width: 88%'-->
|
||||
@@ -333,13 +378,13 @@
|
||||
<!-- :disabled="true"-->
|
||||
<!-- :title='item.progressTracking'-->
|
||||
<!-- :placeholder="$t('PleaseEnter')+$t('progresstracking')"/>-->
|
||||
<a @click="addprogresstrackingClick(index)" style='margin-left: 10px'
|
||||
v-if="formInline.progressTrackingList.length - 1 == index">{{$t('newlyAdded')}}</a>
|
||||
<a @click="deleteprogresstrackingClick(index,item)"
|
||||
v-if="formInline.progressTrackingList.length > 0" :disabled="disabled" style='margin-left: 10px'>{{$t('delete')}}</a>
|
||||
<!-- <a @click="addprogresstrackingClick(index)" style='margin-left: 10px'-->
|
||||
<!-- v-if="formInline.progressTrackingList.length - 1 == index">{{$t('newlyAdded')}}</a>-->
|
||||
<!-- <a @click="deleteprogresstrackingClick(index,item)"-->
|
||||
<!-- v-if="formInline.progressTrackingList.length > 0" :disabled="disabled" style='margin-left: 10px'>{{$t('delete')}}</a>-->
|
||||
|
||||
<span v-if="!item.isDescription" @click="openClick(item)" class="putAway">{{$t('putAway')}}</span>
|
||||
<span v-if="item.isDescription" @click="openClick(item)" class="putAway">{{$t('open')}}</span>
|
||||
<!-- <span v-if="!item.isDescription" @click="openClick(item)" class="putAway">{{$t('putAway')}}</span>-->
|
||||
<!-- <span v-if="item.isDescription" @click="openClick(item)" class="putAway">{{$t('open')}}</span>-->
|
||||
</div>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
@@ -375,21 +420,31 @@
|
||||
:title="$t('examineapproveevidence')">{{$t('examineapproveevidence')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="approvalEvidenceLink">
|
||||
<div v-for="(item,index) in formInline.approvalEvidenceLinkList" :key="index">
|
||||
<div style="margin-bottom: 10px"
|
||||
v-for="(item,index) in formInline.approvalEvidenceLinkList" :key="index">
|
||||
<a-input class="box-input"
|
||||
style='width: 88%'
|
||||
style='width: calc(100% - 48px);margin-right: 10px'
|
||||
v-model='item.approvalEvidenceLink'
|
||||
:disabled="disabled"
|
||||
:placeholder="$t('PleaseEnter')+$t('Addresslink')"/>
|
||||
<a-icon class="icon-text" @click="addvidenceClick(index)" style='margin-left: 10px;font-size: 18px;'
|
||||
v-if="formInline.approvalEvidenceLinkList.length - 1 == index"
|
||||
type="plus"/>
|
||||
<a-icon class="icon-text"
|
||||
v-if="formInline.approvalEvidenceLinkList.length > 1 && formInline.approvalEvidenceLinkList.length - 1 !== index"
|
||||
style='margin-left: 10px;font-size: 18px;' @click="deletevidenceClick(index)"
|
||||
type="minus" :disabled="disabled"/>
|
||||
<img @click="addvidenceClick(index)"
|
||||
class="box-input-img"
|
||||
v-if="formInline.approvalEvidenceLinkList.length - 1 == index"
|
||||
src="../../../../assets/progressAdd.png" alt="">
|
||||
<img @click="deletevidenceClick(index)"
|
||||
class="box-input-img"
|
||||
v-if="formInline.approvalEvidenceLinkList.length > 1 && formInline.approvalEvidenceLinkList.length - 1 !== index"
|
||||
src="../../../../assets/progressDelete.png" alt="">
|
||||
<!-- <a-icon class="icon-text" @click="addvidenceClick(index)" style='margin-left: 10px;font-size: 18px;'-->
|
||||
<!-- v-if="formInline.approvalEvidenceLinkList.length - 1 == index"-->
|
||||
<!-- type="plus"/>-->
|
||||
<!-- <a-icon class="icon-text"-->
|
||||
<!-- v-if="formInline.approvalEvidenceLinkList.length > 1 && formInline.approvalEvidenceLinkList.length - 1 !== index"-->
|
||||
<!-- style='margin-left: 10px;font-size: 18px;' @click="deletevidenceClick(index)"-->
|
||||
<!-- type="minus" :disabled="disabled"/>-->
|
||||
</div>
|
||||
<a-button type="primary" class="button-text"
|
||||
icon="upload"
|
||||
@click="clickButtonToUpload('approvalEvidence')">
|
||||
{{ (formInline.approvalEvidence === 'null' || formInline.approvalEvidence === '' ||
|
||||
formInline.approvalEvidence == null) ? $t('Fileupload') : $t('viewUploadedFiles')
|
||||
@@ -700,7 +755,7 @@
|
||||
this.problemState = this.$t('emptyc')
|
||||
}
|
||||
let time = moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
|
||||
let text = '<p class="text-class">' + this.userInfo().username + ' ' + time + '</p>' + ' ' + this.$t('Problemstate') + this.$t('by') + '\'' + this.problemState + '\'' + this.$t('Changeto') + '\'' + value + '\''
|
||||
let text = '<p class="text-class">' + '<span class="usernameClass">'+this.userInfo().username + '</span> ' +'<span class="timeClass">'+ time +'</span>'+ '</p>' + '<p>' + this.$t('Problemstate') + this.$t('by') + '\'' + this.problemState + '\'' + this.$t('Changeto') + '\'' + value + '\''+'</p>'
|
||||
if (JSON.stringify(this.formInline.progressTrackingList[0]) == '{}' || this.formInline.progressTrackingList[0].progressTracking == '') {
|
||||
this.formInline.progressTrackingList.forEach((item, index) => {
|
||||
item.progressTracking = text
|
||||
@@ -815,9 +870,7 @@
|
||||
},
|
||||
TrackingModelForm(row) {
|
||||
let time = moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
|
||||
console.log(row)
|
||||
let text = '<p class="text-class">' + this.userInfo().username + ' ' + time + '</p>' + row
|
||||
console.log(text)
|
||||
let text = '<p class="text-class">' + '<span class="usernameClass">' + this.userInfo().username + '</span>' + '<span class="timeClass">' + time + '</span>' + '</p>' + row
|
||||
this.formInline.progressTrackingList.forEach((item, index) => {
|
||||
if (!item.progressTracking) {
|
||||
this.formInline.progressTrackingList.splice(0, 1)
|
||||
@@ -827,7 +880,7 @@
|
||||
console.log(this.formInline.progressTrackingList)
|
||||
},
|
||||
addprogresstrackingClick(index) {
|
||||
this.index = index
|
||||
this.index = this.formInline.progressTrackingList.length - 1
|
||||
this.formInlinetracking = {}
|
||||
this.$refs.TrackingModelRef.add()
|
||||
this.$nextTick(() => {
|
||||
@@ -837,12 +890,10 @@
|
||||
})
|
||||
},
|
||||
deleteprogresstrackingClick(index, item) {
|
||||
if (item.progressTracking && item.progressTracking != '') {
|
||||
if (index == 0) {
|
||||
item.progressTracking = ''
|
||||
} else {
|
||||
this.formInline.progressTrackingList.splice(index, 1)
|
||||
}
|
||||
if (this.formInline.progressTrackingList.length > 1) {
|
||||
this.formInline.progressTrackingList.splice(index, 1)
|
||||
} else {
|
||||
item.progressTracking = ''
|
||||
}
|
||||
this.formInline = { ...this.formInline }
|
||||
},
|
||||
@@ -1045,7 +1096,7 @@
|
||||
} else if (value == 'numberPlatform' || value == 'carPlatform') {
|
||||
this.formInline.projectId = undefined
|
||||
this.getPlatform(value)
|
||||
}else{
|
||||
} else {
|
||||
this.formInline.projectId = undefined
|
||||
}
|
||||
this.formInline = { ...this.formInline }
|
||||
@@ -1070,14 +1121,41 @@
|
||||
.text-class {
|
||||
color: rgba(0, 0, 0, 0.65);
|
||||
font-weight: bold;
|
||||
background: #F5F6F7;
|
||||
width: 100%;
|
||||
border-radius: 4px 4px 0px 0px;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
height: 46px;
|
||||
line-height: 46px;
|
||||
}
|
||||
|
||||
.usernameClass {
|
||||
font-size: 14px;
|
||||
font-family: PingFang SC, PingFang SC;
|
||||
font-weight: 400;
|
||||
color: #040B29;
|
||||
margin-right: 6px;
|
||||
}
|
||||
|
||||
.timeClass {
|
||||
font-size: 14px;
|
||||
font-family: PingFang SC, PingFang SC;
|
||||
font-weight: 400;
|
||||
color: #9598A4;
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
</style>
|
||||
<style scoped>
|
||||
::v-deep .text-box-index-text-top p {
|
||||
margin: 0 !important;
|
||||
padding: 0 15px !important;
|
||||
}
|
||||
|
||||
.box-title-text {
|
||||
line-height: 1.4;
|
||||
@@ -1145,8 +1223,13 @@
|
||||
}
|
||||
|
||||
.button-text {
|
||||
height: 38px;
|
||||
height: 36px;
|
||||
margin-top: 4px;
|
||||
background: #FFFFFF;
|
||||
border-radius: 4px 4px 4px 4px;
|
||||
opacity: 1;
|
||||
border: 1px solid #00BEBE;
|
||||
color: #01A0AC;
|
||||
}
|
||||
|
||||
::v-deep .ant-select-tree-treenode-switcher-close {
|
||||
@@ -1206,9 +1289,72 @@
|
||||
height: 200px;
|
||||
display: inline-block;
|
||||
border: 1px solid #ccc;
|
||||
padding: 0;
|
||||
border-radius: 4px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.text-box-index {
|
||||
width: 100%;
|
||||
height: 46px;
|
||||
display: inline-block;
|
||||
border: 1px solid #ccc;
|
||||
padding: 0 15px;
|
||||
white-space: pre-wrap;
|
||||
overflow: hidden;
|
||||
border-radius: 4px 4px 0px 0px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.text-box-index-text {
|
||||
width: 100%;
|
||||
overflow: hidden;
|
||||
white-space: pre-wrap;
|
||||
}
|
||||
|
||||
.text-box-index-text-top {
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
white-space: pre-wrap;
|
||||
overflow: auto;
|
||||
height: 200px;
|
||||
line-height: 1.4;
|
||||
padding: 56px 0 0 0;
|
||||
}
|
||||
|
||||
.box-input-img {
|
||||
width: 38px;
|
||||
height: 38px;
|
||||
}
|
||||
|
||||
.text-box-index-text-right {
|
||||
position: absolute;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
top: 13px;
|
||||
right: 2px;
|
||||
}
|
||||
|
||||
.text-box-index-text-right-text {
|
||||
font-size: 14px;
|
||||
font-family: PingFang SC, PingFang SC;
|
||||
font-weight: 400;
|
||||
color: #01A0AC;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-right: 10px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
::v-deep .text-box-index-text .text-class {
|
||||
background: #fff !important;
|
||||
}
|
||||
.progressTrackingListClass{
|
||||
width: 100%;
|
||||
display: flex;
|
||||
margin-bottom: 16px
|
||||
}
|
||||
.progressTrackingListClass:last-child{
|
||||
margin-bottom: 0;
|
||||
}
|
||||
</style>
|
||||
+153
-208
@@ -12,52 +12,43 @@
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="24">
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text"
|
||||
:title="$t('title')">{{$t('title')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="title">
|
||||
<a-input class="box-input"
|
||||
v-model='formInline.title'
|
||||
:disabled="disabled"/>
|
||||
</a-form-model-item>
|
||||
<div class="itemModel" :title="formInline.title">
|
||||
{{formInline.title}}
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text"
|
||||
:title="$t('problemType')">{{$t('problemType')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel-multi" prop="problemType">
|
||||
<j-dict-select-tag class="box-input" v-model="formInline.problemType"
|
||||
:disabled="disabled"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'wen4_ti2_lei4_xing2'"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<!-- <span class="Required">*</span>-->
|
||||
<span class="title-text-text"
|
||||
:title="'PS-issue'">{{'PS-issue'}}</span>
|
||||
</div>
|
||||
<div>
|
||||
<a
|
||||
style='width: 273px;display: inline-block;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;margin-top: 12px;'
|
||||
:title='formInline.psIssue'
|
||||
@click='UserFeedback(formInline.psIssue)'>{{formInline.psIssue}}</a>
|
||||
<div class="itemModel" :title="formInline.problemType_dictText">
|
||||
{{formInline.problemType_dictText}}
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text"
|
||||
:title="'PS-issue'">{{'PS-issue'}}</span>
|
||||
</div>
|
||||
<div class="itemModel">
|
||||
<a :title='formInline.psIssue'
|
||||
@click='UserFeedback(formInline.psIssue)'>{{formInline.psIssue}}</a>
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
@@ -65,14 +56,14 @@
|
||||
<span class="title-text-text"
|
||||
:title="$t('Relevantlawsregulations')">{{$t('Relevantlawsregulations')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel-multi" prop="creator">
|
||||
<a-input class="box-input"
|
||||
:title='formInline.lawsName'
|
||||
v-model='formInline.lawsName'
|
||||
:disabled="disabled"/>
|
||||
</a-form-model-item>
|
||||
<div class="itemModel" :title="formInline.lawsName">
|
||||
{{formInline.lawsName || '--'}}
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
@@ -80,72 +71,21 @@
|
||||
<span class="title-text-text"
|
||||
:title="$t('RelatedItems')">{{$t('RelatedItems')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="contentTemplate">
|
||||
<a-select allowClear
|
||||
class="box-input"
|
||||
v-model="formInline.projectType"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
showSearch
|
||||
:disabled="true"
|
||||
:style="formInline.projectType == 'none' ? 'width:100%' : 'width:50%'"
|
||||
optionFilterProp="label"
|
||||
:autoClearSearchValue="false"
|
||||
:placeholder="$t('PleaseSelect')+$t('type')">
|
||||
<a-select-option v-for="(item, key) in platformList"
|
||||
:key="key"
|
||||
:label="item.name"
|
||||
:value="item.value">
|
||||
<span style="display: inline-block;width: 100%" :title=" item.name ">
|
||||
{{ item.name}}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
<a-select allowClear
|
||||
v-if="formInline.projectType == 'numberPlatform' || formInline.projectType == 'carPlatform'"
|
||||
class="box-input"
|
||||
v-model="formInline.projectId"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
showSearch
|
||||
:disabled="true"
|
||||
style="width: 50%;float: right"
|
||||
optionFilterProp="label"
|
||||
:autoClearSearchValue="false"
|
||||
:placeholder="$t('PleaseSelect')+$t('RelatedItems')">
|
||||
<a-select-option v-for="(item, key) in relatedItemsList"
|
||||
:key="key"
|
||||
:label="item"
|
||||
:value="item">
|
||||
<span style="display: inline-block;width: 100%" :title="item ">
|
||||
{{item}}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
<a-select allowClear
|
||||
class="box-input"
|
||||
v-else-if="formInline.projectType == 'model'"
|
||||
v-model="formInline.projectId"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
showSearch
|
||||
:disabled="true"
|
||||
style="width: 50%;float: right"
|
||||
mode="multiple"
|
||||
optionFilterProp="label"
|
||||
:autoClearSearchValue="false"
|
||||
:placeholder="$t('PleaseSelect')+$t('RelatedItems')">
|
||||
<a-select-option v-for="(item, key) in projectNameList"
|
||||
:key="key"
|
||||
:label="item.projectName"
|
||||
:value="item.id">
|
||||
<span style="display: inline-block;width: 100%" :title=" item.projectName ">
|
||||
{{ item.projectName}}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
<div class="itemModel"
|
||||
:title="formInline.projectType ? formInline.projectType == 'numberPlatform' ||
|
||||
formInline.projectType == 'carPlatform' ? formInline.problemType_dictText+' '+formInline.projectId :
|
||||
formInline.projectType == 'model' ? formInline.problemType_dictText+' '+formInline.projectName :
|
||||
formInline.problemType_dictText : '--'">
|
||||
<span>
|
||||
{{formInline.projectType ? formInline.projectType == 'numberPlatform' ||
|
||||
formInline.projectType == 'carPlatform' ? formInline.problemType_dictText+' '+formInline.projectId :
|
||||
formInline.projectType == 'model' ? formInline.problemType_dictText+' '+formInline.projectName :
|
||||
formInline.problemType_dictText : '--'}}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
@@ -153,71 +93,34 @@
|
||||
<span class="title-text-text"
|
||||
:title="$t('statisticalNodes')">{{$t('statisticalNodes')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel-multi" prop="creator">
|
||||
<a-select
|
||||
allowClear
|
||||
show-search
|
||||
mode="multiple"
|
||||
:disabled="disabled"
|
||||
class="box-input-search"
|
||||
optionFilterProp="label"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
v-model="formInline.dutyTerritory">
|
||||
<a-select-option v-for="(item, key) in firstLevelDutyTerritoryList"
|
||||
:key="key"
|
||||
:label="item.key"
|
||||
:value="item.key">
|
||||
<span style="display: inline-block;width: 100%" :title=" item.key ">
|
||||
{{ item.key }}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<!-- <span class="Required">*</span>-->
|
||||
<span class="title-text-text"
|
||||
:title="$t('Problemstate')">{{$t('Problemstate')}}</span>
|
||||
<div class="itemModel" :title="formInline.dutyTerritory">
|
||||
{{formInline.dutyTerritory}}
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="contentTemplate">
|
||||
<a-select allowClear
|
||||
class="box-input"
|
||||
v-model="formInline.problemState"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
showSearch
|
||||
:disabled="disabled"
|
||||
optionFilterProp="label"
|
||||
:autoClearSearchValue="false">
|
||||
<a-select-option v-for="(item, key) in ProblemstateList"
|
||||
:label='item'
|
||||
:key="key"
|
||||
:value="item">
|
||||
<span style="display: inline-block;width: 100%" :title=" item">
|
||||
{{ item }}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<!-- <span class="Required">*</span>-->
|
||||
<span class="title-text-text"
|
||||
:title="$t('Problemstate')">{{$t('Problemstate')}}</span>
|
||||
</div>
|
||||
<div class="itemModel" :title="formInline.problemState">
|
||||
{{formInline.problemState}}
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text"
|
||||
:title="$t('problemPriority')">{{$t('problemPriority')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="problemPriority">
|
||||
<j-dict-select-tag class="box-input" v-model="formInline.problemPriority"
|
||||
:disabled="true"
|
||||
:placeholder="$t('PleaseSelect')+$t('problemPriority')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'wen4_ti2_you1_xian1_ji2'"/>
|
||||
</a-form-model-item>
|
||||
<div class="itemModel" :title="formInline.problemPriority_dictText">
|
||||
{{formInline.problemPriority_dictText}}
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
@@ -228,12 +131,9 @@
|
||||
<span class="title-text-text"
|
||||
:title="$t('descriptions')">{{$t('descriptions')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="descriptions">
|
||||
<div class="text-box" v-html="formInline.description"></div>
|
||||
<!-- <a-input class="box-input"-->
|
||||
<!-- v-model='formInline.description'-->
|
||||
<!-- :disabled="disabled"/>-->
|
||||
</a-form-model-item>
|
||||
<div class="itemModel-text"
|
||||
v-html="formInline.description">
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
@@ -244,14 +144,14 @@
|
||||
<span class="title-text-text"
|
||||
:title="$t('documents')">{{$t('documents')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="fileLink">
|
||||
<div v-for="(item,index) in formInline.fileLinkList" :key="index">
|
||||
<div class="itemModel-text">
|
||||
<div class="itemModel-text-text" v-for="(item,index) in formInline.fileLinkList" :key="index">
|
||||
<a @click='UserFeedback(item.fileLink)'>{{item.fileLink}}</a>
|
||||
</div>
|
||||
<div v-for='(item,index) in formInline.fileList'>
|
||||
<div class="itemModel-text-text" v-for="(item,index) in formInline.fileList" :key="index">
|
||||
<a @click='download(item)'>{{item.fileName}}</a>
|
||||
</div>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
@@ -262,16 +162,11 @@
|
||||
<span class="title-text-text"
|
||||
:title="$t('progresstracking')">{{$t('progresstracking')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="progresstracking">
|
||||
<div v-for="(item,index) in formInline.progressTrackingList" :key="index">
|
||||
<div class="text-box-one" v-html="item.progressTracking"></div>
|
||||
<!-- <a-input class="box-input"-->
|
||||
<!-- style='width: 89%'-->
|
||||
<!-- v-model='item.progressTracking'-->
|
||||
<!-- :title='item.progressTracking'-->
|
||||
<!-- :disabled="true"/>-->
|
||||
<div class="itemModel">
|
||||
<div class="text-box" v-for="(item,index) in formInline.progressTrackingList" :key="index">
|
||||
<div class="text-box-index-text-top" v-html="item.progressTracking"></div>
|
||||
</div>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
@@ -282,11 +177,9 @@
|
||||
<span class="title-text-text"
|
||||
:title="$t('conculsion')">{{$t('conculsion')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="conclusion">
|
||||
<a-input class="box-input"
|
||||
v-model='formInline.conclusion'
|
||||
:disabled="disabled"/>
|
||||
</a-form-model-item>
|
||||
<div class="itemModel">
|
||||
{{formInline.conclusion}}
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
@@ -298,14 +191,16 @@
|
||||
<span class="title-text-text"
|
||||
:title="$t('examineapproveevidence')">{{$t('examineapproveevidence')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="approvalEvidenceLink">
|
||||
<div v-for="(item,index) in formInline.approvalEvidenceLinkList" :key="index">
|
||||
<div class="itemModel-text">
|
||||
<div class="itemModel-text-text" v-for="(item,index) in formInline.approvalEvidenceLinkList"
|
||||
:key="index">
|
||||
<a @click='UserFeedback(item.approvalEvidenceLink)'>{{item.approvalEvidenceLink}}</a>
|
||||
</div>
|
||||
<div v-for='(item,index) in formInline.approvalEvidenceFileList'>
|
||||
<div class="itemModel-text-text" v-for="(item,index) in formInline.approvalEvidenceFileList"
|
||||
:key="index">
|
||||
<a @click='download(item)'>{{item.fileName}}</a>
|
||||
</div>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
@@ -344,7 +239,7 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
relatedItemsList:[],
|
||||
relatedItemsList: [],
|
||||
platformList: [
|
||||
{
|
||||
name: this.$t('DigitalPlatform'),
|
||||
@@ -458,11 +353,11 @@
|
||||
} else if (row.projectType == 'numberPlatform' || row.projectType == 'carPlatform') {
|
||||
this.getPlatform(row.projectType)
|
||||
}
|
||||
if (this.formInline.dutyTerritory != null) {
|
||||
this.formInline.dutyTerritory = this.formInline.dutyTerritory.split(',')
|
||||
} else {
|
||||
this.formInline.dutyTerritory = undefined
|
||||
}
|
||||
// if (this.formInline.dutyTerritory != null) {
|
||||
// this.formInline.dutyTerritory = this.formInline.dutyTerritory.split(',')
|
||||
// } else {
|
||||
// this.formInline.dutyTerritory = undefined
|
||||
// }
|
||||
if (this.formInline.problemState == null) {
|
||||
this.formInline.problemState = undefined
|
||||
}
|
||||
@@ -472,7 +367,7 @@
|
||||
this.formInline.approvalEvidenceFileList = res.result.approvalEvidenceFileList
|
||||
}
|
||||
})
|
||||
this.formInline = {...this.formInline}
|
||||
this.formInline = { ...this.formInline }
|
||||
console.log(this.formInline)
|
||||
this.visible = true
|
||||
this.disabled = true
|
||||
@@ -506,11 +401,13 @@
|
||||
.ant-input-disabled {
|
||||
color: rgba(0, 0, 0, 0.65) !important;
|
||||
}
|
||||
.text-class{
|
||||
|
||||
.text-class {
|
||||
color: rgba(0, 0, 0, 0.65);
|
||||
font-weight: bold;
|
||||
}
|
||||
p{
|
||||
|
||||
p {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
@@ -520,20 +417,18 @@
|
||||
.box-title-text {
|
||||
line-height: 1.4;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.title-text {
|
||||
width: 114px;
|
||||
text-align: right;
|
||||
text-align: left;
|
||||
display: inline-block;
|
||||
font-weight: 500;
|
||||
font-size: 14px;
|
||||
margin-right: 16px;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
height: 42px;
|
||||
line-height: 42px;
|
||||
}
|
||||
|
||||
.box-input {
|
||||
@@ -545,25 +440,23 @@
|
||||
.itemModel {
|
||||
width: calc(100% - 130px);
|
||||
display: inline-block;
|
||||
margin-top: 2px;
|
||||
font-size: 14px;
|
||||
font-family: PingFang SC, PingFang SC;
|
||||
font-weight: 400;
|
||||
color: #040B29;
|
||||
}
|
||||
|
||||
.title-text-text {
|
||||
margin-top: 9px;
|
||||
font-size: 14px;
|
||||
font-family: PingFang SC, PingFang SC;
|
||||
font-weight: 400;
|
||||
color: #6F7385;
|
||||
}
|
||||
|
||||
.formAdd {
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
|
||||
.Required {
|
||||
color: red;
|
||||
margin-right: 4px;
|
||||
}
|
||||
|
||||
.title-text-text {
|
||||
margin-top: 9px;
|
||||
}
|
||||
|
||||
.formAdd {
|
||||
margin-bottom: 40px;
|
||||
@@ -611,19 +504,71 @@
|
||||
display: inline-block;
|
||||
border: 1px solid #ccc;
|
||||
padding: 0 15px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.itemModel-text {
|
||||
box-sizing: border-box;
|
||||
white-space: pre-wrap;
|
||||
overflow: auto;
|
||||
width: calc(100% - 130px);
|
||||
margin-top: 1px;
|
||||
}
|
||||
.text-box-one {
|
||||
|
||||
.itemModel-text-text {
|
||||
font-size: 14px;
|
||||
font-family: PingFang SC, PingFang SC;
|
||||
font-weight: 400;
|
||||
color: #040B29;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.text-box {
|
||||
width: 100%;
|
||||
height: 200px;
|
||||
display: inline-block;
|
||||
border: 1px solid #ccc;
|
||||
padding: 0 15px;
|
||||
padding: 0;
|
||||
border-radius: 4px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
::v-deep .text-box-index-text-top p {
|
||||
margin: 0 !important;
|
||||
padding: 0 15px !important;
|
||||
}
|
||||
|
||||
.text-box-index-text-top {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
box-sizing: border-box;
|
||||
margin-bottom: 20px;
|
||||
white-space: pre-wrap;
|
||||
overflow: auto;
|
||||
padding: 56px 0 10px 0;
|
||||
}
|
||||
::v-deep .text-class {
|
||||
color: rgba(0, 0, 0, 0.65);
|
||||
font-weight: bold;
|
||||
background: #F5F6F7;
|
||||
width: 100%;
|
||||
height: 46px;
|
||||
line-height: 46px;
|
||||
border-radius: 4px 4px 0px 0px;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
::v-deep .usernameClass {
|
||||
font-size: 14px;
|
||||
font-family: PingFang SC, PingFang SC;
|
||||
font-weight: 400;
|
||||
color: #040B29;
|
||||
margin-right: 6px;
|
||||
}
|
||||
|
||||
::v-deep .timeClass {
|
||||
font-size: 14px;
|
||||
font-family: PingFang SC, PingFang SC;
|
||||
font-weight: 400;
|
||||
color: #9598A4;
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user