Browse Source

需求任务列表批量排期

wangziqian 5 years ago
parent
commit
f4d265cbde

+ 15 - 0
src/views/projectManage/requirement/components/modifySchedule.vue

@@ -85,6 +85,11 @@ export default {
       default: () => null,
       required: false
     },
+    selectTaskList: { // 已选任务列表
+      type: Array,
+      default: () => [],
+      required: false
+    },
     disabled: {
       type: Boolean,
       default: false,
@@ -132,6 +137,16 @@ export default {
       },
       immediate: true
     },
+    selectTaskList: {
+      handler(newV, old) {
+        if (newV.length > 0) {
+          this.tasksOptions = newV
+          this.tasksDetailList = [...newV]
+          this.form.taskList = newV.map(item => item.id)
+        }
+      },
+      immediate: true
+    },
     title(newV, oldV) {
       this.title = newV
     }

+ 19 - 2
src/views/projectManage/requirement/components/taskList.vue

@@ -6,6 +6,7 @@
       </el-col>
       <el-col :span="3" class="item-checked">已选择<span style="color: #409EFF">{{ curcentChecked }}</span>个</el-col>
       <el-col :span="1" class="item-click">|</el-col>
+      <el-col :span="2" class="item-click click-blue" @click.native="addSechedule()">添加排期</el-col>
       <el-col :span="2" class="item-click click-blue" @click.native="handlePlan('test')">提测</el-col>
       <el-col :span="2" class="item-click click-blue" @click.native="handlePlan('allow')">准出</el-col>
       <el-col :span="4" class="item-click click-blue" @click.native="handlePlan('daily')">建立测试日报</el-col>
@@ -92,6 +93,14 @@
         <el-date-picker v-model="changeStatusDate" type="date" style="width:100%;" placeholder="选择日期" format="yyyy-MM-dd HH:mm:ss" />
       </div>
     </normal-dialog>
+    <!-- 批量排期 -->
+    <modify-schedule
+      v-if="visibleSchedule"
+      :visible.sync="visibleSchedule"
+      :select-task-list="selectTaskList"
+      title="新建排期"
+      @update="get_allTask()"
+    />
   </div>
 </template>
 <script>
@@ -102,6 +111,7 @@ import { getTaskByRequireId } from '@/api/requirement'
 import { taskUpdate } from '@/api/projectViewDetails'
 import { configShowTaskEnum } from '@/api/taskIndex'
 import scheduleList from './scheduleList'
+import modifySchedule from './modifySchedule'
 import normalDialog from '@/components/dialog/normalDialog'
 import '@/styles/PublicStyle/index.scss'
 import taskDialog from '@/views/projectManage/taskList/dialog/taskDialog' // 任务状态修改(已上线/已提测/已准出)
@@ -112,7 +122,8 @@ export default {
     DailyReport,
     ClientReport,
     scheduleList,
-    taskDialog
+    taskDialog,
+    modifySchedule
   },
   data() {
     return {
@@ -135,7 +146,9 @@ export default {
       statusDialog: false, // 修改状态弹框
       changeStatusDate: null, // 状态改变时间
       nowChangeTask: null, // 当前正在改变的任务对象
-      taskId: '' // 将要修改状态的任务id
+      taskId: '', // 将要修改状态的任务id
+      visibleSchedule: false, // 排期弹框
+      selectTaskList: [] // 已选任务的id
     }
   },
   watch: {
@@ -243,6 +256,10 @@ export default {
           break
       }
     },
+    addSechedule() {
+      this.visibleSchedule = true
+      this.selectTaskList = this.curcentList
+    },
     filtrateTest() { // 提测筛选
       this.dialogTestReport = true
       this.$nextTick(() => {

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

@@ -36,7 +36,6 @@
           <el-dropdown placement="bottom">
             <i class="el-icon-circle-plus icon-add" />
             <el-dropdown-menu slot="dropdown">
-              <el-dropdown-item @click.native="createVisible = true">新建需求</el-dropdown-item>
               <el-dropdown-item @click.native="reated_task()">新建任务</el-dropdown-item>
               <el-dropdown-item @click.native="created_bug()">新建缺陷</el-dropdown-item>
             </el-dropdown-menu>

+ 3 - 2
src/views/workbench/person/components/calenderList.vue

@@ -137,7 +137,7 @@ export default {
         },
         pageInfoDO: null
       },
-      rangeTime: [],
+      rangeTime: [moment().format('YYYY.MM.DD'), moment().add(1, 'month').format('YYYY.MM.DD')],
       statusOptions: [{
         value: 0,
         label: '进行中'
@@ -167,7 +167,8 @@ export default {
         }
         this.queryWorkList()
       },
-      deep: true
+      deep: true,
+      immediate: true
     }
   },
   created() {

+ 6 - 2
src/views/workbench/person/index.vue

@@ -308,8 +308,12 @@ export default {
       this.calendarView = view
       const params = {
         timeInfo: {
-          startTime: moment(view.activeStart).subtract(1, 'month').format('YYYY.MM.DD'),
-          endTime: moment(view.activeEnd).add(1, 'month').format('YYYY.MM.DD')
+          startTime: view.activeStart
+            ? moment(view.activeStart).format('YYYY.MM.DD')
+            : moment().startOf('month').format('YYYY.MM.DD'),
+          endTime: view.activeEnd
+            ? moment(view.activeEnd).format('YYYY.MM.DD')
+            : moment().endOf('month').format('YYYY.MM.DD')
         },
         teamSearchInfo: { bizId: null },
         searchScheduleInfo: { origin: [0, 1] }

+ 2 - 2
src/views/workbench/team/components/ganntViews.vue

@@ -161,7 +161,7 @@ export default {
       for (const i in data) {
         let label = ''
         if (mode === '忙碌') {
-          label = data[i].workNum.taskWorkNum + '个任务、' + data[i].workNum.selfWorkNum + '个日程'
+          label = data[i].workNum.taskWorkNum + '个任务排期、' + data[i].workNum.selfWorkNum + '个日程'
         } else {
           label = data[i].workNum.taskWorkNum + '个空闲时段'
         }
@@ -187,7 +187,7 @@ export default {
         }
         this.tasks.push(parentItem)
         for (const j in data[i].workData) {
-          const labelNameType = data[i].workData[j].origin ? '日程' : '任务'
+          const labelNameType = data[i].workData[j].origin ? '日程' : '任务排期'
           let labelName = '【' + labelNameType + '】' + data[i].workData[j].name
           if (data[i].workData[j].type) {
             labelName = labelName + '-' + data[i].workData[j].type