panxiandiao_i 5 years ago
parent
commit
98f64d2747

+ 1 - 1
src/views/Platform/bugManage/bugCreate.vue

@@ -66,7 +66,7 @@
           </div>
           <div class="line-between-add">
             <el-form-item v-if="moduleTypeShow" label="工程模块" prop="moduleId" label-width="124px">
-              <el-select ref="clearPlatform" v-model="form.moduleId" placeholder="工程模块" style="width:76%;">
+              <el-select ref="clearPlatform" v-model="form.moduleId" filterable placeholder="工程模块" style="width:76%;">
                 <el-option v-for="item in moduleStr" :key="item.name" :label="item.name" :value="item.code" />
               </el-select>
             </el-form-item>

+ 25 - 18
src/views/projectManage/taskList/gantta-right.vue

@@ -1,16 +1,15 @@
 <template>
-  <div slot="reference" class="plan">
-    <div class="run-time">
-      <span>S:{{ startToString }}</span>
-      <span>E:{{ endToString }}</span>
+  <div slot="reference" class="plan" :style="{'background-color':colorList[item.index % 6], 'margin-top':0.1*cellHeight+'px'}">
+    <div>
+      <span>{{ dataRight.name }}</span>
+      <span>{{ item.name }}</span>
     </div>
-    <div class="middle">编号{{ item.id }}</div>
     <!-- <div class="passenger">{{item.passenger}}人</div> -->
   </div>
 </template>
 
 <script>
-import dayjs from 'dayjs'
+// import dayjs from 'dayjs'
 export default {
   props: {
     dataRight: {
@@ -24,19 +23,30 @@ export default {
       default() {
         return {}
       }
-    }
-  },
-  computed: {
-    startToString() {
-      return dayjs(this.item.startCaseTime).format('HH:mm')
     },
-    endToString() {
-      return dayjs(this.item.endCaseTime).format('HH:mm')
+    cellHeight: {
+      type: Number,
+      default() {
+        return 1
+      }
     }
   },
-  mounted() {
-    console.log(1)
+  data() {
+    return {
+      colorList: ['#FFA87F', '#F1C1FB', '#A1DEFF', '#FF8B7F', '#BCED86', '#FAD291', '#7FEEC0']
+    }
   },
+  // computed: {
+  //   startToString() {
+  //     return dayjs(this.item.startCaseTime).format('HH:mm')
+  //   },
+  //   endToString() {
+  //     return dayjs(this.item.endCaseTime).format('HH:mm')
+  //   }
+  // },
+  // mounted() {
+  //   console.log(1)
+  // },
   created() {
     console.log(this.dataRight, this.item)
   }
@@ -55,7 +65,4 @@ export default {
     padding-left 5px
     font-size 0.8rem
     // opacity: 0.8
-    .run-time
-      display flex
-      flex-direction column
 </style>

+ 13 - 4
src/views/projectManage/taskList/taskCreate.vue

@@ -467,23 +467,32 @@ export default {
         return Object.values(eachData).some(item => item !== '' && (item === null ? item !== null : item.length !== 0))
       })
     },
+    // 接口不接受空值处理
+    emptyJudge(obj) {
+      for (const key in obj) {
+        if (!obj[key] || obj[key].length === 0) {
+          delete obj[key]
+        }
+      }
+    },
     // 新建项目
     createFormData(form) {
       this.$refs.form.validate((valid) => {
         if (valid) {
           form.projectId = this.$route.query.id
-          if (form.pm.length !== 0) {
+          if (form.pm && form.pm.length !== 0) {
             form.pm = form.pm.join(',')
           }
-          if (form.rd.length !== 0) {
+          if (form.rd && form.rd.length !== 0) {
             form.rd = form.rd.join(',')
           }
-          if (form.qa.length !== 0) {
+          if (form.qa && form.qa.length !== 0) {
             form.qa = form.qa.join(',')
           }
-          if (form.group.length !== 0) {
+          if (form.group && form.group.length !== 0) {
             form.group = form.group[form.group.length - 1]
           }
+          this.emptyJudge(form)
           if (this.filterNa(this.developmentMember).length !== 0) {
             const pauseDevelopmentMember = this.filterNa(this.developmentMember)
             form.schedule.rdSchedulesList = pauseDevelopmentMember.map((eachData) => ({

+ 5 - 5
src/views/projectManage/taskList/taskPreview.vue

@@ -67,6 +67,7 @@
             <gantta-right
               :data-right="data"
               :item="item"
+              :cell-height="cellHeight"
             />
           </template>
           <template v-slot:left="{data}">
@@ -331,14 +332,13 @@ export default {
         if (this.form.schedule.qaSchedulesList === null) this.form.qaSchedulesList = []
         if (this.form.schedule.rdSchedulesList === null) this.form.rdSchedulesList = []
         // console.log(dayjs(this.form.schedule.qaSchedulesList.startCaseTime).format('YYYY-MM-DD HH:mm:ss'))
-        this.datas = [...this.form.schedule.qaSchedulesList.map((eachData) => ({
+        this.datas = [...this.form.schedule.qaSchedulesList.map((eachData, index) => ({
           ...eachData,
-          gtAarry: [{ start: eachData.startCaseTime ? dayjs(eachData.startCaseTime).format('YYYY-MM-DD HH:mm:ss') : '', end: eachData.endCaseTime ? dayjs(eachData.endCaseTime).format('YYYY-MM-DD HH:mm:ss') : '' }, { start: eachData.startTestTime ? dayjs(eachData.startTestTime).format('YYYY-MM-DD HH:mm:ss') : '', end: eachData.endTestTime ? dayjs(eachData.endTestTime).format('YYYY-MM-DD HH:mm:ss') : '' }].filter((eachTime) => eachTime.start)
-        })), ...this.form.schedule.rdSchedulesList.map((eachDataRD) => ({
+          gtArray: [{ start: eachData.startCaseTime ? dayjs(eachData.startCaseTime).format('YYYY-MM-DD HH:mm:ss') : '', end: eachData.endCaseTime ? dayjs(eachData.endCaseTime).format('YYYY-MM-DD HH:mm:ss') : '', name: eachData.startCaseTime ? '用例时间' : '', index: index || '' }, { start: eachData.startTestTime ? dayjs(eachData.startTestTime).format('YYYY-MM-DD HH:mm:ss') : '', end: eachData.endTestTime ? dayjs(eachData.endTestTime).format('YYYY-MM-DD HH:mm:ss') : '', name: eachData.startTestTime ? '测试时间' : '', index: index || '' }].filter((eachTime) => eachTime.start)
+        })), ...this.form.schedule.rdSchedulesList.map((eachDataRD, index) => ({
           ...eachDataRD,
-          gtAarry: [{ start: eachDataRD.devStartTime ? dayjs(eachDataRD.devStartTime).format('YYYY-MM-DD HH:mm:ss') : '', end: eachDataRD.devEndTime ? dayjs(eachDataRD.devEndTime).format('YYYY-MM-DD HH:mm:ss') : '' }, { start: eachDataRD.joinStartTime ? dayjs(eachDataRD.joinStartTime).format('YYYY-MM-DD HH:mm:ss') : '', end: eachDataRD.joinEndTime ? dayjs(eachDataRD.joinEndTime).format('YYYY-MM-DD HH:mm:ss') : '' }].filter((eachTimeRD) => eachTimeRD.start)
+          gtArray: [{ start: eachDataRD.devStartTime ? dayjs(eachDataRD.devStartTime).format('YYYY-MM-DD HH:mm:ss') : '', end: eachDataRD.devEndTime ? dayjs(eachDataRD.devEndTime).format('YYYY-MM-DD HH:mm:ss') : '', name: eachDataRD.devStartTime ? '开发周期' : '', index: index || '' }, { start: eachDataRD.joinStartTime ? dayjs(eachDataRD.joinStartTime).format('YYYY-MM-DD HH:mm:ss') : '', end: eachDataRD.joinEndTime ? dayjs(eachDataRD.joinEndTime).format('YYYY-MM-DD HH:mm:ss') : '', name: eachDataRD.joinStartTime ? '联调时间' : '', index: index || '' }].filter((eachTimeRD) => eachTimeRD.start)
         }))]
-        console.log(this.datas)
         this.listTaskDatas = res.data.launchTestInfoList
         // this.listTaskDatas.statusString = this.form.statusString
         this.projectTestReports = res.data.projectTestReports

+ 16 - 7
src/views/projectManage/taskList/taskUpdateCreate.vue

@@ -373,9 +373,9 @@ export default {
           if (this.form.schedule && this.form.schedule.qaSchedulesList) {
             this.testMember = this.form.schedule.qaSchedulesList.map((eachData) => ({
               qa: eachData.ename ? eachData.ename : '',
-              developmentTimeValue: eachData.devStartTime ? [new Date(eachData.devStartTime), new Date(eachData.devEndTime)] : [],
-              testTimeValue: eachData.joinStartTime ? [new Date(eachData.joinStartTime), new Date(eachData.joinEndTime)] : [],
-              commitTimeValue: eachData.launchTestTime ? new Date(eachData.launchTestTime) : ''
+              developmentTimeValue: eachData.startCaseTime ? [new Date(eachData.startCaseTime), new Date(eachData.endCaseTime)] : [],
+              testTimeValue: eachData.startTestTime ? [new Date(eachData.startTestTime), new Date(eachData.endTestTime)] : [],
+              commitTimeValue: eachData.onlimeTime ? new Date(eachData.onlimeTime) : ''
             }))
           }
           // if (this.form.schedule && this.form.schedule.rdSchedulesList) {
@@ -504,6 +504,14 @@ export default {
         res.code === 200 ? this.optionsGroup = reduceNa(res.data) : this.errorFun(res.msg)
       })
     },
+    // 接口不接受空值处理
+    emptyJudge(obj) {
+      for (const key in obj) {
+        if (!obj[key] || obj[key].length === 0) {
+          delete obj[key]
+        }
+      }
+    },
     // 处理开发时间提测时间是否为全空
     filterNa(arr) {
       return arr.filter((eachData) => {
@@ -515,18 +523,19 @@ export default {
       this.$refs.form.validate((valid) => {
         if (valid) {
           form.projectId = this.$route.query.projectId
-          if (form.pm.length !== 0) {
+          if (form.pm && form.pm.length !== 0) {
             form.pm = form.pm.join(',')
           }
-          if (form.rd.length !== 0) {
+          if (form.rd && form.rd.length !== 0) {
             form.rd = form.rd.join(',')
           }
-          if (form.qa.length !== 0) {
+          if (form.qa && form.qa.length !== 0) {
             form.qa = form.qa.join(',')
           }
-          if (form.group.length !== 0) {
+          if (form.group && form.group.length !== 0) {
             form.group = form.group[form.group.length - 1]
           }
+          this.emptyJudge(form)
           if (this.filterNa(this.developmentMember).length !== 0) {
             const pauseDevelopmentMember = this.filterNa(this.developmentMember)
             form.schedule.rdSchedulesList = pauseDevelopmentMember.map((eachData) => ({