问题管理查看
This commit is contained in:
+266
-239
@@ -49,9 +49,10 @@
|
|||||||
:title="'PS-issue'">{{'PS-issue'}}</span>
|
:title="'PS-issue'">{{'PS-issue'}}</span>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<a style='width: 273px;display: inline-block;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;margin-top: 12px;'
|
<a
|
||||||
:title='formInline.psIssue'
|
style='width: 273px;display: inline-block;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;margin-top: 12px;'
|
||||||
@click='UserFeedback(formInline.psIssue)'>{{formInline.psIssue}}</a>
|
:title='formInline.psIssue'
|
||||||
|
@click='UserFeedback(formInline.psIssue)'>{{formInline.psIssue}}</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
@@ -112,14 +113,14 @@
|
|||||||
</div>
|
</div>
|
||||||
<a-form-model-item class="itemModel-multi" prop="creator">
|
<a-form-model-item class="itemModel-multi" prop="creator">
|
||||||
<a-select
|
<a-select
|
||||||
allowClear
|
allowClear
|
||||||
show-search
|
show-search
|
||||||
mode="multiple"
|
mode="multiple"
|
||||||
:disabled="disabled"
|
:disabled="disabled"
|
||||||
class="box-input-search"
|
class="box-input-search"
|
||||||
optionFilterProp="label"
|
optionFilterProp="label"
|
||||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||||
v-model="formInline.dutyTerritory">
|
v-model="formInline.dutyTerritory">
|
||||||
<a-select-option v-for="(item, key) in firstLevelDutyTerritoryList"
|
<a-select-option v-for="(item, key) in firstLevelDutyTerritoryList"
|
||||||
:key="key"
|
:key="key"
|
||||||
:label="item.key"
|
:label="item.key"
|
||||||
@@ -186,9 +187,10 @@
|
|||||||
:title="$t('descriptions')">{{$t('descriptions')}}</span>
|
:title="$t('descriptions')">{{$t('descriptions')}}</span>
|
||||||
</div>
|
</div>
|
||||||
<a-form-model-item class="itemModel" prop="descriptions">
|
<a-form-model-item class="itemModel" prop="descriptions">
|
||||||
<a-input class="box-input"
|
<div class="text-box" v-html="formInline.description"></div>
|
||||||
v-model='formInline.description'
|
<!-- <a-input class="box-input"-->
|
||||||
:disabled="disabled"/>
|
<!-- v-model='formInline.description'-->
|
||||||
|
<!-- :disabled="disabled"/>-->
|
||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
</div>
|
</div>
|
||||||
</a-col>
|
</a-col>
|
||||||
@@ -220,11 +222,12 @@
|
|||||||
</div>
|
</div>
|
||||||
<a-form-model-item class="itemModel" prop="progresstracking">
|
<a-form-model-item class="itemModel" prop="progresstracking">
|
||||||
<div v-for="(item,index) in formInline.progressTrackingList" :key="index">
|
<div v-for="(item,index) in formInline.progressTrackingList" :key="index">
|
||||||
<a-input class="box-input"
|
<div class="text-box-one" v-html="item.progressTracking"></div>
|
||||||
style='width: 89%'
|
<!-- <a-input class="box-input"-->
|
||||||
v-model='item.progressTracking'
|
<!-- style='width: 89%'-->
|
||||||
:title='item.progressTracking'
|
<!-- v-model='item.progressTracking'-->
|
||||||
:disabled="true"/>
|
<!-- :title='item.progressTracking'-->
|
||||||
|
<!-- :disabled="true"/>-->
|
||||||
</div>
|
</div>
|
||||||
</a-form-model-item>
|
</a-form-model-item>
|
||||||
</div>
|
</div>
|
||||||
@@ -274,251 +277,275 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { getAction, postAction,putAction, downloadFile } from '@/api/manage'
|
import { getAction, postAction, putAction, downloadFile } from '@/api/manage'
|
||||||
import moment from 'moment'
|
import moment from 'moment'
|
||||||
import { mapGetters } from 'vuex'
|
import { mapGetters } from 'vuex'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'fillAdd',
|
name: 'fillAdd',
|
||||||
components: {
|
components: {},
|
||||||
|
data() {
|
||||||
},
|
return {
|
||||||
data() {
|
rules: {
|
||||||
return {
|
title: [
|
||||||
rules: {
|
{
|
||||||
title: [
|
required: true,
|
||||||
|
message: this.$t('title') + this.$t('cannotEmpty'),
|
||||||
|
trigger: 'blur'
|
||||||
|
}
|
||||||
|
],
|
||||||
|
problemType: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: this.$t('problemType') + this.$t('cannotEmpty'),
|
||||||
|
trigger: 'change'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
visible: false,
|
||||||
|
visibletrack: false,
|
||||||
|
rulestracking: {
|
||||||
|
progressTracking: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: this.$t('text') + this.$t('cannotEmpty'),
|
||||||
|
trigger: 'blur'
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
formInline: {
|
||||||
|
fileLinkList: [{}],
|
||||||
|
progressTrackingList: [{}],
|
||||||
|
approvalEvidenceLinkList: [{}],
|
||||||
|
dutyTerritory: undefined,
|
||||||
|
projectId: undefined,
|
||||||
|
problemState: undefined
|
||||||
|
},
|
||||||
|
formInlinetracking: {},
|
||||||
|
confirmLoading: false,
|
||||||
|
title: '',
|
||||||
|
disabled: false,
|
||||||
|
isTrue: false,
|
||||||
|
chapterContentsList: [],
|
||||||
|
firstLevelDutyTerritoryList: [],
|
||||||
|
projectNameList: [],
|
||||||
|
ProblemstateList: [this.$t('red'), this.$t('yellow'), this.$t('green')],
|
||||||
|
templateDisabled: false,
|
||||||
|
contentTemplateList: [
|
||||||
{
|
{
|
||||||
required: true,
|
id: '1',
|
||||||
message: this.$t('title') + this.$t('cannotEmpty'),
|
text: this.$t('defaultTemplate')
|
||||||
trigger: 'blur'
|
},
|
||||||
|
{
|
||||||
|
id: '2',
|
||||||
|
text: this.$t('newRequestCommentListTemplate')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: '3',
|
||||||
|
text: this.$t('NewReleasedStandardTemplate')
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: '4',
|
||||||
|
text: this.$t('industryInformationDynamicTemplate')
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
problemType: [
|
index: '',
|
||||||
{
|
url: {
|
||||||
required: true,
|
add: '/project/problemManagementEO/add',
|
||||||
message: this.$t('problemType') + this.$t('cannotEmpty'),
|
edit: '/project/problemManagementEO/edit',
|
||||||
trigger: 'change'
|
queryById: '/report/lawsMonthlyReportWriteEO/queryById'
|
||||||
}
|
|
||||||
],
|
|
||||||
},
|
|
||||||
visible: false,
|
|
||||||
visibletrack: false,
|
|
||||||
rulestracking:{
|
|
||||||
progressTracking: [
|
|
||||||
{
|
|
||||||
required: true,
|
|
||||||
message: this.$t('text') + this.$t('cannotEmpty'),
|
|
||||||
trigger: 'blur'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
formInline: {
|
|
||||||
fileLinkList:[{}],
|
|
||||||
progressTrackingList:[{}],
|
|
||||||
approvalEvidenceLinkList:[{}],
|
|
||||||
dutyTerritory:undefined,
|
|
||||||
projectId:undefined,
|
|
||||||
problemState:undefined,
|
|
||||||
},
|
|
||||||
formInlinetracking:{},
|
|
||||||
confirmLoading: false,
|
|
||||||
title: '',
|
|
||||||
disabled: false,
|
|
||||||
isTrue: false,
|
|
||||||
chapterContentsList: [],
|
|
||||||
firstLevelDutyTerritoryList:[],
|
|
||||||
projectNameList: [],
|
|
||||||
ProblemstateList:[this.$t('red'),this.$t('yellow'),this.$t('green'),],
|
|
||||||
templateDisabled: false,
|
|
||||||
contentTemplateList: [
|
|
||||||
{
|
|
||||||
id: '1',
|
|
||||||
text: this.$t('defaultTemplate')
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: '2',
|
|
||||||
text: this.$t('newRequestCommentListTemplate')
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: '3',
|
|
||||||
text: this.$t('NewReleasedStandardTemplate')
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: '4',
|
|
||||||
text: this.$t('industryInformationDynamicTemplate')
|
|
||||||
}
|
}
|
||||||
],
|
}
|
||||||
index:'',
|
},
|
||||||
url: {
|
mounted() {
|
||||||
add: '/project/problemManagementEO/add',
|
|
||||||
edit: '/project/problemManagementEO/edit',
|
},
|
||||||
queryById: '/report/lawsMonthlyReportWriteEO/queryById'
|
methods: {
|
||||||
|
getNameList() {
|
||||||
|
getAction('/project/projectNameInfoEO/queryProjectNameList', {}).then((res) => {
|
||||||
|
if (res.success) {
|
||||||
|
this.projectNameList = res.result || []
|
||||||
|
} else {
|
||||||
|
this.projectNameList = []
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getFirstLevelDutyTerritory() {
|
||||||
|
getAction('/sys/dictItem/getFirstLevelDutyTerritory', {}).then((res) => {
|
||||||
|
if (res.success) {
|
||||||
|
this.firstLevelDutyTerritoryList = res.result
|
||||||
|
} else {
|
||||||
|
this.firstLevelDutyTerritoryList = []
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
...mapGetters(['userInfo']),
|
||||||
|
edit(row) {
|
||||||
|
this.getNameList()
|
||||||
|
this.getFirstLevelDutyTerritory()
|
||||||
|
this.title = this.$t('view')
|
||||||
|
this.formInline = row
|
||||||
|
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
|
||||||
|
}
|
||||||
|
if (this.formInline.projectId != null) {
|
||||||
|
this.formInline.projectId = this.formInline.projectId.split(',')
|
||||||
|
} else {
|
||||||
|
this.formInline.projectId = undefined
|
||||||
|
}
|
||||||
|
getAction('/project/problemManagementEO/queryById', { id: this.formInline.id }).then((res) => {
|
||||||
|
if (res.success) {
|
||||||
|
this.formInline.fileList = res.result.fileList
|
||||||
|
this.formInline.approvalEvidenceFileList = res.result.approvalEvidenceFileList
|
||||||
|
}
|
||||||
|
})
|
||||||
|
console.log(this.formInline)
|
||||||
|
this.visible = true
|
||||||
|
this.disabled = true
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.ruleForm.clearValidate()
|
||||||
|
})
|
||||||
|
},
|
||||||
|
UserFeedback(item) {
|
||||||
|
window.open(item, '_blank')
|
||||||
|
},
|
||||||
|
download(item) {
|
||||||
|
console.log(item)
|
||||||
|
downloadFile('/sys/common/downLoadFile', item.fileName, { id: item.id })
|
||||||
|
},
|
||||||
|
handleCancel() {
|
||||||
|
this.visible = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
getNameList() {
|
|
||||||
getAction('/project/projectNameInfoEO/queryProjectNameList', {}).then((res) => {
|
|
||||||
if (res.success) {
|
|
||||||
this.projectNameList = res.result || []
|
|
||||||
} else {
|
|
||||||
this.projectNameList = []
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getFirstLevelDutyTerritory() {
|
|
||||||
getAction('/sys/dictItem/getFirstLevelDutyTerritory', {}).then((res) => {
|
|
||||||
if (res.success) {
|
|
||||||
this.firstLevelDutyTerritoryList = res.result
|
|
||||||
} else {
|
|
||||||
this.firstLevelDutyTerritoryList = []
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
...mapGetters(['userInfo']),
|
|
||||||
edit(row) {
|
|
||||||
this.getNameList()
|
|
||||||
this.getFirstLevelDutyTerritory()
|
|
||||||
this.title = this.$t('view')
|
|
||||||
this.formInline = row
|
|
||||||
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
|
|
||||||
}
|
|
||||||
if(this.formInline.projectId != null){
|
|
||||||
this.formInline.projectId = this.formInline.projectId.split(',')
|
|
||||||
}else{
|
|
||||||
this.formInline.projectId = undefined
|
|
||||||
}
|
|
||||||
getAction('/project/problemManagementEO/queryById', {id:this.formInline.id}).then((res) => {
|
|
||||||
if (res.success) {
|
|
||||||
this.formInline.fileList = res.result.fileList
|
|
||||||
this.formInline.approvalEvidenceFileList = res.result.approvalEvidenceFileList
|
|
||||||
}
|
|
||||||
})
|
|
||||||
console.log(this.formInline)
|
|
||||||
this.visible = true
|
|
||||||
this.disabled = true
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.$refs.ruleForm.clearValidate()
|
|
||||||
})
|
|
||||||
},
|
|
||||||
UserFeedback(item){
|
|
||||||
window.open(item, '_blank');
|
|
||||||
},
|
|
||||||
download(item){
|
|
||||||
console.log(item)
|
|
||||||
downloadFile('/sys/common/downLoadFile', item.fileName, { id: item.id })
|
|
||||||
},
|
|
||||||
handleCancel() {
|
|
||||||
this.visible = false
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
<style>
|
<style>
|
||||||
.ant-select-disabled {
|
.ant-select-disabled {
|
||||||
color: rgba(0, 0, 0, 0.65);
|
color: rgba(0, 0, 0, 0.65);
|
||||||
}
|
}
|
||||||
|
|
||||||
.ant-input-disabled {
|
.ant-input-disabled {
|
||||||
color: rgba(0, 0, 0, 0.65) !important;
|
color: rgba(0, 0, 0, 0.65) !important;
|
||||||
}
|
}
|
||||||
|
.text-class{
|
||||||
|
color: rgba(0, 0, 0, 0.65);
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
p{
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
<style scoped>
|
<style scoped>
|
||||||
|
|
||||||
.box-title-text {
|
.box-title-text {
|
||||||
line-height: 1.4;
|
line-height: 1.4;
|
||||||
display: flex;
|
display: flex;
|
||||||
}
|
}
|
||||||
|
|
||||||
.title-text {
|
.title-text {
|
||||||
width: 114px;
|
width: 114px;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
margin-right: 16px;
|
margin-right: 16px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
height: 42px;
|
height: 42px;
|
||||||
line-height: 42px;
|
line-height: 42px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.box-input {
|
.box-input {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
height: 38px;
|
height: 38px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.itemModel {
|
.itemModel {
|
||||||
width: calc(100% - 130px);
|
width: calc(100% - 130px);
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
margin-top: 2px;
|
margin-top: 2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.title-text-text {
|
.title-text-text {
|
||||||
margin-top: 9px;
|
margin-top: 9px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.formAdd {
|
.formAdd {
|
||||||
margin-bottom: 40px;
|
margin-bottom: 40px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.Required {
|
.Required {
|
||||||
color: red;
|
color: red;
|
||||||
margin-right: 4px;
|
margin-right: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.title-text-text {
|
.title-text-text {
|
||||||
margin-top: 9px;
|
margin-top: 9px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.formAdd {
|
.formAdd {
|
||||||
margin-bottom: 40px;
|
margin-bottom: 40px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.drawer-bootom-button {
|
.drawer-bootom-button {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
z-index: 100;
|
z-index: 100;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
border-top: 1px solid #e8e8e8;
|
border-top: 1px solid #e8e8e8;
|
||||||
padding: 10px 16px;
|
padding: 10px 16px;
|
||||||
text-align: right;
|
text-align: right;
|
||||||
left: 0;
|
left: 0;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
border-radius: 0 0 2px 2px;
|
border-radius: 0 0 2px 2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.button-text {
|
.button-text {
|
||||||
height: 38px;
|
height: 38px;
|
||||||
margin-top: 4px;
|
margin-top: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .ant-select-tree-treenode-switcher-close {
|
::v-deep .ant-select-tree-treenode-switcher-close {
|
||||||
width: 255px;
|
width: 255px;
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .ant-select-tree-node-content-wrapper {
|
::v-deep .ant-select-tree-node-content-wrapper {
|
||||||
float: right;
|
float: right;
|
||||||
margin-top: -2px !important;
|
margin-top: -2px !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep .ant-select-tree-title {
|
::v-deep .ant-select-tree-title {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
display: block;
|
display: block;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
word-break: break-word;
|
word-break: break-word;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.text-box {
|
||||||
|
width: 100%;
|
||||||
|
height: 200px;
|
||||||
|
display: inline-block;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
padding: 0 15px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
.text-box-one {
|
||||||
|
width: 100%;
|
||||||
|
height: 200px;
|
||||||
|
display: inline-block;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
padding: 0 15px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
Reference in New Issue
Block a user