|
@@ -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 => {
|