wangziqian 5 жил өмнө
parent
commit
8f514664f5

+ 16 - 30
src/views/projectManage/bugList/details/index.vue

@@ -3,7 +3,7 @@
     <div v-if="type!=='page'" style="padding: 15px 5px 5px 30px" class="Layout_space_between bug_manage_container bug_manage_title">
       <div class="Layout_flex_start">
         <span style="font-size:18px;font-weight:500;color:#333b4a; margin-right: 20px;">{{ 'BUG-'+ id }}</span>
-        <statusChange v-if="map.bugEnumList && typeof bug.status !== 'undefined'" :status-code="bug.status" :bug-data="bug" @bugGet="updateBugStatus" />
+        <statusChange :status-code="bug.status" :bug-data="bug" :status-obj="statusObj" @bugGet="updateBugStatus" />
       </div>
       <div style="display: inline-block;float:right">
         <span class="newBtn" @click="getToDetails()"><i class="el-icon-document" /> 查看详情</span>
@@ -50,7 +50,7 @@
                   />
                 </el-form-item>
                 <el-form-item id="itemLength1" style="margin:0">
-                  <statusChange v-if="map.bugEnumList && typeof bug.status !== 'undefined'" :status-code="bug.status" :bug-data="bug" />
+                  <statusChange :status-code="bug.status" :bug-data="bug" :status-obj="statusObj" @bugGet="updateBugStatus" />
                 </el-form-item>
                 <el-form-item id="itemLength2" style="margin:0;float:right">
                   <el-button size="small" class="button_delete2" @click="openDeleteDialog()">删除</el-button>
@@ -677,7 +677,8 @@ export default {
           { required: true, message: '请输入图片名称', trigger: 'blur' },
           { min: 1, max: 50, message: '长度在 1 到 50 个字符', trigger: 'blur' }
         ]
-      }
+      },
+      statusObj: null // 状态对象
     }
   },
   watch: {
@@ -697,6 +698,7 @@ export default {
     }
   },
   created() {
+    this.getBugSelect()
     if (this.type !== 'page') {
       var height = window.innerHeight > document.body.clientHeight ? window.innerHeight : document.body.clientHeight
       height -= 130
@@ -725,6 +727,16 @@ export default {
     })
   },
   methods: {
+    async getBugSelect() { //  获取下拉菜单option
+      const res = await bugGetEnum()
+      if (res.code === 200) {
+        this.statusObj = {
+          bugEnumList: res.data.bugEnumList, // status
+          repairResultEnumList: res.data.repairResultEnumList, // 修复结果
+          bugReasonEnumList: res.data.bugReasonEnumList // 缺陷原因
+        }
+      }
+    },
     handleClick() {
       operationLogBug(this.id).then(res => {
         this.changeRecord = res.data
@@ -734,6 +746,7 @@ export default {
       this.$emit('close', false)
     },
     init() {
+      this.getBugSelect()
       this.formHeight = ''
       this.formHeight1 = ''
       this.bugGet(this.id, false).then(res => {
@@ -927,33 +940,6 @@ export default {
       this.bug.bugName = this.bugNameForm.bugName
       this.bugUpdate(this.bug, 'title')
     },
-    bugStatusList(status) { // 不同状态返回不同的option
-      if (status === '待修复') {
-        return this.enums.bugEnumList.filter(item => {
-          return item.code === 0 || item.code === 2 || item.code === 5
-        })
-      }
-      if (status === '待测试') {
-        return this.enums.bugEnumList.filter(item => {
-          return item.code === 2 || item.code === 3 || item.code === 4
-        })
-      }
-      if (status === '已完成') {
-        return this.enums.bugEnumList.filter(item => {
-          return item.code === 3
-        })
-      }
-      if (status === 'Reopen') {
-        return this.enums.bugEnumList.filter(item => {
-          return item.code === 2 || item.code === 5 || item.code === 4
-        })
-      }
-      if (status === 'Hold') {
-        return this.enums.bugEnumList.filter(item => {
-          return item.code === 5 || item.code === 2
-        })
-      }
-    },
     RichText() {
       this.editor = new E('#wage', '#wage1')
       this.editor.customConfig.zIndex = 0