qinzhipeng_v@didiglobal.com 4 anos atrás
pai
commit
784a69695e

+ 171 - 0
src/views/projectManage/requirement/components/BasicsCode.vue

@@ -0,0 +1,171 @@
+<template>
+  <div class="detail-info">
+    <el-form :inline="true" :model="form_query" class="demo-form-inline" label-position="left" label-width="100px">
+      <el-form-item label="PM:">
+        <search-people :value.sync="form_query.pm" :clearable="false" @change="changeArea" />
+      </el-form-item>
+      <el-form-item label="开发Leader:">
+        <div v-if="show2" class="public_Jump" @click="show2 = false">{{ form_query.pm }} <i class="el-icon-edit" /></div>
+        <search-people v-if="show2 === false" :value.sync="form_query.pm" :clearable="false" @change="changeArea" @blur="show2 = true" />
+      </el-form-item>
+      <el-form-item label="测试Leader:">
+        <search-people :value.sync="form_query.pm" :clearable="false" @change="changeArea" />
+      </el-form-item>
+    </el-form>
+    <el-form :inline="true" :model="form_query" class="demo-form-inline" label-position="left" label-width="100px">
+      <el-form-item label="所属项目:" class="module">
+        <div v-if="form_query.belongingProject !== -1" @click="jump('项目详情',form_query.belongingProject)">{{ form_query.belongingProjectName }}</div>
+        <template v-else>{{ form_query.belongingProjectName }}</template>
+      </el-form-item>
+      <el-form-item label="所属迭代:">
+        <el-select v-model="form_query.iterationId" placeholder="请选择" @change="changeArea">
+          <el-option v-for="(item,index) in iterationList" :key="item.name + index" :label="item.name" :value="item.id" />
+        </el-select>
+      </el-form-item>
+      <el-form-item label="PM:">
+        <search-people :value.sync="form_query.pm" :clearable="false" @change="changeArea" />
+      </el-form-item>
+    </el-form>
+    <el-form :inline="true" :model="form_query" class="demo-form-inline" label-position="left" label-width="100px">
+      <el-form-item label="需求方向:">
+        <el-cascader v-model="form_query.rqmtOrntIds" size="medium" collapse-tags :props="props" :options="demandDirection" placeholder="请选择" @change="changeArea" />
+      </el-form-item>
+      <el-form-item label="需求来源:">
+        <el-select v-model="form_query.sourceType" size="small" filterable placeholder="请选择" @change="changeArea">
+          <el-option v-for="(item,index) in sourceTypeList" :key="item.msg + index" :label="item.msg" :value="item.code" />
+        </el-select>
+      </el-form-item>
+      <el-form-item label="需求提出人:">
+        <search-people :value.sync="form_query.rqmtProposer" :clearable="false" :multiple="true" @change="changeArea" />
+      </el-form-item>
+    </el-form>
+    <el-form :inline="true" :model="form_query" class="demo-form-inline" label-position="left" label-width="100px">
+      <el-form-item label="优先级:">
+        <el-select v-model="form_query.priority" size="small" filterable placeholder="请选择" @change="changeArea">
+          <el-option v-for="(item,index) in priorityList" :key="item.msg + index" :label="item.msg" :value="item.code" />
+        </el-select>
+      </el-form-item>
+      <el-form-item label="是否跟版:">
+        <el-select v-model="form_query.dependOnRelease" size="small" filterable placeholder="请选择" @change="changeArea">
+          <el-option v-for="(item,index) in dependList" :key="item.msg + index" :label="item.msg" :value="item.code" />
+        </el-select>
+      </el-form-item>
+      <el-form-item v-if="form_query.dependOnRelease === 1" label="跟版客户端:">
+        <el-select v-model="form_query.referredClientType" size="small" multiple filterable placeholder="请选择" @change="changeArea">
+          <el-option v-for="(item,index) in appClient" :key="item.msg + index" :label="item.msg" :value="item.code" />
+        </el-select>
+      </el-form-item>
+    </el-form>
+    <el-form :model="form_query" class="demo-form-inline" label-position="left" label-width="100px">
+      <el-form-item label="BRD链接:" class="PRD">
+        <span class="PRD-link"><a :href="form_query.brdUrl" target="_blank">{{ form_query.brdUrl }}</a></span>
+      </el-form-item>
+      <el-form-item label="PRD链接:" prop="mrdUrl" class="PRD">
+        <span class="PRD-link"><a :href="form_query.mrdUrl" target="_blank">{{ form_query.mrdUrl }}</a></span>
+      </el-form-item>
+    </el-form>
+  </div>
+</template>
+
+<script>
+import '@/styles/PublicStyle/index.scss'
+import { updateRequirement } from '@/api/requirement.js'
+export default {
+  data() {
+    return {
+      form_query: {}
+    }
+  },
+  methods: {
+    async changeArea(e) { // area修改
+      const requirementInfo = _.cloneDeep(this.form_query)
+      requirementInfo.rqmtProposer = requirementInfo.rqmtProposer ? requirementInfo.rqmtProposer.join() : null
+      if (requirementInfo.dependOnRelease === 1 && requirementInfo.referredClientType === null) {
+        this.$message({ message: '跟版客户端不能为空', type: 'error', duration: 1000, offset: 150 })
+        return false
+      } else if (requirementInfo.dependOnRelease === 0) {
+        requirementInfo.referredClientType = null
+      }
+      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.$message({ message: '修改成功', type: 'success', duration: 1000, offset: 150 })
+      }
+      // }
+      this.getRequirementById()
+    }
+  }
+}
+</script>
+
+<style lang="scss" scoped>
+.detail-info {
+    padding: 0 34px 20px 34px;
+    /deep/.el-input__inner{
+      border: 1px solid rgba(220,223,230,0)
+    }
+    /deep/.el-input__inner:hover{
+      border: 1px solid rgba(220,223,230,1)
+    }
+    /deep/.is-focus .el-input__inner {
+      border: 1px solid #409EFF;
+    }
+    /deep/.el-select{
+      .el-input__suffix-inner {
+        visibility: hidden;
+      }
+    }
+    /deep/.el-select:hover{
+      .el-input__suffix-inner {
+        visibility: visible;
+      }
+    }
+    .demo-form-inline {
+      .el-form-item {
+        width: 33%;
+        margin-right: 0;
+      }
+    }
+    .comment-main {
+      list-style: none;
+      padding: 15px 0 0 0;
+      margin: 0 0 20px 0;
+      li {
+        list-style: none;
+        padding: 0px;
+        margin: 0px 0px 25px 0;
+      }
+      .comment-name {
+        font-size:14px;
+        color:#333B4A;
+      }
+      .comment-gmtCreater {
+        margin-left:20px;
+        color: #9B9B9B;
+        font-size:12px
+      }
+      .comment-content {
+        font-size:14px;
+        color:#333B4A;
+        margin-top: 10px;
+        white-space: pre-line;
+      }
+    }
+    .PRD-link {
+      width: 50%;
+      overflow: hidden;
+      text-overflow:ellipsis;
+      white-space: nowrap;
+      padding-left: 15px;
+    }
+    .PRD-link:hover{
+      color:#409EFF;
+    }
+  }
+</style>

+ 12 - 0
src/views/projectManage/requirement/requirementDetail.vue

@@ -98,6 +98,18 @@
             <div class="title-left-name">基础信息</div>
           </div>
           <div class="detail-info">
+            <el-form :inline="true" :model="form_query" class="demo-form-inline" label-position="left" label-width="100px">
+              <el-form-item label="PM:">
+                <search-people :value.sync="form_query.pm" :clearable="false" @change="changeArea" />
+              </el-form-item>
+              <el-form-item label="开发Leader:">
+                <div v-if="show2" class="public_Jump" @click="show2 = false">{{ form_query.pm }} <i class="el-icon-edit" /></div>
+                <search-people v-if="show2 === false" :value.sync="form_query.pm" :clearable="false" @change="changeArea" @blur="show2 = true" />
+              </el-form-item>
+              <el-form-item label="测试Leader:">
+                <search-people :value.sync="form_query.pm" :clearable="false" @change="changeArea" />
+              </el-form-item>
+            </el-form>
             <el-form :inline="true" :model="form_query" class="demo-form-inline" label-position="left" label-width="100px">
               <el-form-item label="所属项目:" class="module">
                 <div v-if="form_query.belongingProject !== -1" @click="jump('项目详情',form_query.belongingProject)">{{ form_query.belongingProjectName }}</div>