qinzhipeng_v@didiglobal.com 4 gadi atpakaļ
vecāks
revīzija
0df42b14ee

+ 68 - 13
src/views/projectManage/requirement/components/BasicsCode.vue

@@ -14,10 +14,15 @@
       <el-form-item label="开发Leader:">
         <over-click id="rdLeader-select" @overMouse="changeArea">
           <template slot="active">
-            <search-people :value.sync="form_query.rdLeader" :clearable="false" />
+            <search-people :value.sync="form_query.rdLeader" :clearable="false" :multiple="true" />
           </template>
           <template slot="overMouse">
-            <span v-if="form_query.rdLeader">{{ form_query.rdLeader }}</span>
+            <span v-if="form_query.rdLeader">
+              <span v-for="(item, index) in form_query.rdLeaderMemberInfoResponse" :key="index">
+                {{ item.name }}
+                <span v-if="index < form_query.rdLeaderMemberInfoResponse.length - 1"> , </span>
+              </span>
+            </span>
             <span v-else style="color: #C0C4CC;">待添加</span>
           </template>
         </over-click>
@@ -25,10 +30,15 @@
       <el-form-item label="测试Leader:">
         <over-click id="qaLeader-select" @overMouse="changeArea">
           <template slot="active">
-            <search-people :value.sync="form_query.qaLeader" :clearable="false" />
+            <search-people :value.sync="form_query.qaLeader" :clearable="false" :multiple="true" />
           </template>
           <template slot="overMouse">
-            <span v-if="form_query.qaLeader">{{ form_query.qaLeader }}</span>
+            <span v-if="form_query.qaLeader">
+              <span v-for="(item, index) in form_query.qaLeaderMemberInfoResponse" :key="index">
+                {{ item.name }}
+                <span v-if="index < form_query.qaLeaderMemberInfoResponse.length - 1"> , </span>
+              </span>
+            </span>
             <span v-else style="color: #C0C4CC;">待添加</span>
           </template>
         </over-click>
@@ -63,10 +73,13 @@
             <search-people :value.sync="form_query.rqmtProposer" :clearable="false" :multiple="true" />
           </template>
           <template slot="overMouse">
-            <span v-for="(item, index) in form_query.rqmtProposers" :key="index">
-              {{ item.name }}
-              <span v-if="index < form_query.rqmtProposers.length - 1"> , </span>
+            <span v-if="form_query.rqmtProposer">
+              <span v-for="(item, index) in form_query.rqmtProposers" :key="index">
+                {{ item.name }}
+                <span v-if="index < form_query.rqmtProposers.length - 1"> , </span>
+              </span>
             </span>
+            <span v-else style="color: #C0C4CC;">待添加</span>
           </template>
         </over-click>
       </el-form-item>
@@ -104,8 +117,8 @@
       <el-form-item v-if="form_query.dependOnRelease === 1" label="跟版客户端:">
         <over-click id="referredClientType-select" @overMouse="changeArea">
           <template slot="active">
-            <el-select v-model="form_query.referredClientType" size="small" multiple filterable placeholder="请选择">
-              <el-option v-for="(item,index) in appClient" :key="item.msg + index" :label="item.msg" :value="item.code" />
+            <el-select v-model="form_query.referredClientType" size="small" multiple filterable placeholder="请选择" @change="ReferredClientType(form_query.referredClientType)">
+              <el-option v-for="(item,index) in appClient" :key="item.msg + index" :label="item.msg" :value="item.code" :disabled="item.dis" @click.native="setReferredClientType(item)" />
             </el-select>
           </template>
           <template slot="overMouse">
@@ -208,6 +221,8 @@ export default {
     async changeArea(e) { // area修改
       const requirementInfo = _.cloneDeep(this.form_query)
       requirementInfo.rqmtProposer = requirementInfo.rqmtProposer ? requirementInfo.rqmtProposer.join() : null
+      requirementInfo.rdLeader = requirementInfo.rdLeader ? requirementInfo.rdLeader.join() : ''
+      requirementInfo.qaLeader = requirementInfo.qaLeader ? requirementInfo.qaLeader.join() : ''
       if (requirementInfo.dependOnRelease === 1 && requirementInfo.referredClientType === null) {
         this.$message({ message: '跟版客户端不能为空', type: 'error', duration: 1000, offset: 150 })
         return false
@@ -217,12 +232,8 @@ export default {
       if (requirementInfo.referredClientType !== null) {
         requirementInfo.referredClientType = requirementInfo.referredClientType.join()
       }
-      requirementInfo.status = this.statusValue
       const res = await updateRequirement(requirementInfo)
       if (res.code === 200) {
-        // this.dialogStatusVisible = false
-        // this.getRequirementById()
-        // this.$refs.timeLine1.taskGetWorkFlow()
         this.$emit('update')
         this.$message({ message: '修改成功', type: 'success', duration: 1000, offset: 150 })
       }
@@ -244,6 +255,20 @@ export default {
         this.priorityList = res.data.priority
         this.sourceTypeList = res.data.sourceType
         this.appClient = res.data.appClient
+        this.appClient.unshift({ msg: '不跟版', code: -1 })
+        if (this.form_query.referredClientType[0] === -1) {
+          this.appClient.map(item => {
+            if (item.code !== -1) {
+              item.dis = true
+            }
+          })
+        } else {
+          this.appClient.map(item => {
+            if (item.code === -1) {
+              item.dis = true
+            }
+          })
+        }
       }
       const res3 = await settingQueryBizRqmtOrntList(localStorage.getItem('bizId'))
       if (res3.code === 200) { // 需求方向
@@ -261,6 +286,36 @@ export default {
         }
       }
       return data
+    },
+    ReferredClientType(e) {
+      if (e.length === 0) {
+        this.$forceUpdate()
+        this.appClient.map(item => { item.dis = false })
+      }
+    },
+    setReferredClientType(val) {
+      if (val.dis === true) {
+        return false
+      }
+      if (val.code === -1) {
+        this.appClient.map(item => {
+          if (item.code !== -1) {
+            this.$forceUpdate()
+            item.dis = true
+          }
+        })
+      } else {
+        this.appClient.map(item => {
+          if (item.code === -1) {
+            this.$forceUpdate()
+            item.dis = true
+          }
+        })
+      }
+      if (this.form_query.referredClientType.length === 0) {
+        this.ReferredClientType(this.form_query.referredClientType)
+      }
+      console.log(this.appClient, '输出')
     }
   }
 }