qinzhipeng_v@didiglobal.com 4 jaren geleden
bovenliggende
commit
de9deb8509
1 gewijzigde bestanden met toevoegingen van 27 en 23 verwijderingen
  1. 27 23
      src/views/projectManage/components/demand.vue

+ 27 - 23
src/views/projectManage/components/demand.vue

@@ -44,28 +44,29 @@
               <el-tooltip class="item" effect="dark" content="点击修改" placement="top">
                 <el-popover placement="bottom" title="开发负责人" width="400" trigger="click">
                   <div class="blueStr" />
-                  <search-people :value.sync="form_query.rdOwner" :clearable="false" :multiple="false" style="width: 100%;" @change="changeArea" />
-                  <div class="Layout_space_between involveApp-top-bottom">
-                    <span>{{ taskAdip.deptName }}</span>
-                    <span>{{ taskAdip.name }}</span>
-                    <span>{{ taskAdip.idap }}</span>
+                  <el-input v-model="form_query.rdOwner" clearable size="small" style="width: 100%; margin-bottom: 10px;" placeholder="请输入姓名或邮箱前缀" @input="remoteMethod" />
+                  <div style="height: 200px; overflow: hidden; overflow-y: auto;">
+                    <div v-for="(item, index) in memberIDAP" :key="index" class="Layout_space_between involveApp-top-bottom cursorPo" @click="changeTaskName(scope.row, item, 1)">
+                      <span class="item-detail">{{ item.deptName }}</span>
+                      <span style="min-width:80px">{{ item.name }}</span>
+                      <span class="item-detail">{{ item.idap }}</span>
+                    </div>
                   </div>
-                  <span slot="reference" class="cursorPo" @click="setRdOwner(scope.row.rdObject)">开发负责人:{{ scope.row.rdObject.name !== null? scope.row.rdObject.name: '无' }}</span>
+                  <span slot="reference" class="cursorPo" @click="setRdOwner(scope.row.rdObject.name)">开发负责人:{{ scope.row.rdObject.name !== null? scope.row.rdObject.name: '无' }}</span>
                 </el-popover>
               </el-tooltip>
               <el-tooltip class="item" effect="dark" content="点击修改" placement="top">
                 <el-popover placement="bottom" title="测试负责人" width="400" class="iconPadding" trigger="click">
                   <div class="blueStr" />
-                  <!-- <search-people :value.sync="form_query.rqmtProposer" :clearable="false" :multiple="false" style="width: 100%;" @change="changeArea" /> -->
-                  <el-input v-model="scope.row.qaObject.name" clearable size="small" style="width: 100%; margin-bottom: 10px;" placeholder="业务线搜索" @input="remoteMethod" />
+                  <el-input v-model="form_query.name" clearable size="small" style="width: 100%; margin-bottom: 10px;" placeholder="请输入姓名或邮箱前缀" @input="remoteMethod" />
                   <div style="height: 200px; overflow: hidden; overflow-y: auto;">
-                    <div v-for="(item, index) in memberIDAP" :key="index" class="Layout_space_between involveApp-top-bottom cursorPo">
+                    <div v-for="(item, index) in memberIDAP" :key="index" class="Layout_space_between involveApp-top-bottom cursorPo" @click="changeTaskName(scope.row, item, 2)">
                       <span class="item-detail">{{ item.deptName }}</span>
                       <span style="min-width:80px">{{ item.name }}</span>
                       <span class="item-detail">{{ item.idap }}</span>
                     </div>
                   </div>
-                  <span slot="reference" class="cursorPo" @click="remoteMethod(scope.row.qaObject.name)">测试负责人: {{ scope.row.qaObject.name !== null ? scope.row.qaObject.name: '无' }}</span>
+                  <span slot="reference" class="cursorPo" @click="setRemoteMethod(scope.row.qaObject.name)">测试负责人: {{ scope.row.qaObject.name !== null ? scope.row.qaObject.name: '无' }}</span>
                 </el-popover>
               </el-tooltip>
             </div>
@@ -159,7 +160,6 @@
   </div>
 </template>
 <script>
-import searchPeople from '@/components/select/searchPeople'
 import { listByRequire, taskListAvailableDpmTask, taskSetTaskRelated, taskDeleteRelationship, taskShowRelatedDpmTask, taskSyncScheduleToDpm } from '@/api/requirement.js'
 import scheduleList from '@/views/projectManage/components/scheduleList.vue'
 import '@/styles/PublicStyle/index.scss' // 通用css
@@ -172,7 +172,6 @@ export default {
   components: {
     scheduleList,
     schedule,
-    searchPeople,
     taskDialog
   },
   props: {
@@ -187,7 +186,6 @@ export default {
       requirementId: Number(this.$route.query.id),
       allStatus: [], // task状态
       taskDataList: [], // 同步排期到望岳的任务
-      taskAdip: {}, // 查询的负责人
       memberIDAP: [],
       tableData: [],
       checkAlls: false,
@@ -338,15 +336,18 @@ export default {
         return 'cell-grey'
       }
     },
+
+    setRemoteMethod(val) {
+      this.form_query.name = val
+      this.remoteMethod(val)
+    },
     async remoteMethod(query) {
       const res = await memberQueryMemberInfoByIDAPorName({ memberIDAP: query })
       this.memberIDAP = res.data
     },
     setRdOwner(e) {
-      this.$nextTick(() => {
-        this.$set(this.form_query, 'rdOwner', e.idap)
-        this.taskAdip = e
-      })
+      this.$set(this.form_query, 'rdOwner', e)
+      this.remoteMethod(e)
     },
     jump(url) {
       window.open(url, '_blank')
@@ -378,7 +379,12 @@ export default {
         this.scheduleVisble = true
       }
     },
-    async changeTaskName(val) { // 修改taskname
+    async changeTaskName(val, value, key) { // 修改taskname
+      if (value) {
+        console.log(val, value)
+        key === 1 ? val.rdOwner = value.idap : ''
+        key === 2 ? val.qaOwner = value.idap : ''
+      }
       val.vsInput = false
       val.vVisible = false
       val.name = this.taskName.split(' ').join('').length === 0 ? val.name : this.taskName
@@ -386,7 +392,9 @@ export default {
       const user = { name: this.userNames, ename: this.userInformation, id: '' }
       const res = await taskUpdate({ taskInfoDO, user })
       if (res.code === 200) {
-        this.$message({ message: '已修改任务名称', type: 'success', duration: 1000, offset: 150 })
+        this.$refs.Simulation.click()
+        this.listByTask(this.requirementId)
+        this.$message({ message: '任务更新成功', type: 'success', duration: 1000, offset: 150 })
       }
     },
     clickAddScheduling(index, ele) { // 模拟调用自组件方法
@@ -417,10 +425,6 @@ export default {
         this.$refs.taskName.focus()
       })
     },
-    changeArea(value) {
-      console.log(value)
-      this.taskAdip = value
-    },
     changeCheckout(rows) {
       if (rows) {
         this.tableData.forEach(row => {