qinzhipeng_v@didiglobal.com 4 年 前
コミット
15b627490d
1 ファイル変更43 行追加203 行削除
  1. 43 203
      src/views/projectManage/requirement/components/ganntViews.vue

+ 43 - 203
src/views/projectManage/requirement/components/ganntViews.vue

@@ -3,9 +3,7 @@
     <gantt-elastic
       :options="options"
       :tasks="tasks"
-      @tasks-changed="tasksUpdate"
       @options-changed="optionsUpdate"
-      @dynamic-style-changed="styleUpdate"
     >
       <gantt-header slot="header" />
     </gantt-elastic>
@@ -18,200 +16,42 @@ import GanttHeader from 'gantt-elastic-header'
 import teamGanttOptions from './../gannttOptions/requireGannt'
 import { listByRequire } from '@/api/requirement.js'
 import moment from 'moment'
-const tasks = [
-  {
-    id: 1,
-    label: 'Make some noise',
-    user:
-      '<a href="https://www.google.com/search?q=John+Doe" target="_blank" style="color:#0077c0;">John Doe</a>',
-    start: (-24 * 5),
-    duration: 15 * 24 * 60 * 60 * 1000,
-    percent: 85,
-    type: 'project'
-    // collapsed: true,
-  },
-  {
-    id: 2,
-    label: 'With great power comes great responsibility',
-    user:
-      '<a href="https://www.google.com/search?q=Peter+Parker" target="_blank" style="color:#0077c0;">Peter Parker</a>',
-    parentId: 1,
-    start: (-24 * 4),
-    duration: 4 * 24 * 60 * 60 * 1000,
-    percent: 50,
-    type: 'milestone',
-    collapsed: true,
-    style: {
-      base: {
-        fill: '#1EBC61',
-        stroke: '#0EAC51'
-      }
-    }
-  },
-  {
-    id: 3,
-    label: 'Courage is being scared to death, but saddling up anyway.',
-    user:
-      '<a href="https://www.google.com/search?q=John+Wayne" target="_blank" style="color:#0077c0;">John Wayne</a>',
-    parentId: 2,
-    start: (-24 * 3),
-    duration: 2 * 24 * 60 * 60 * 1000,
-    percent: 100,
-    type: 'task'
-  },
-  {
-    id: 4,
-    label: 'Put that toy AWAY!',
-    user:
-      '<a href="https://www.google.com/search?q=Clark+Kent" target="_blank" style="color:#0077c0;">Clark Kent</a>',
-    start: (-24 * 2),
-    duration: 2 * 24 * 60 * 60 * 1000,
-    percent: 50,
-    type: 'task',
-    dependentOn: [3]
-  },
-  {
-    id: 5,
-    label:
-      'One billion, gajillion, fafillion... shabadylu...mil...shabady......uh, Yen.',
-    user:
-      '<a href="https://www.google.com/search?q=Austin+Powers" target="_blank" style="color:#0077c0;">Austin Powers</a>',
-    parentId: 4,
-    start: (0),
-    duration: 2 * 24 * 60 * 60 * 1000,
-    percent: 10,
-    type: 'milestone',
-    style: {
-      base: {
-        fill: '#0287D0',
-        stroke: '#0077C0'
-      }
-    }
-  },
-  {
-    id: 6,
-    label: 'Butch Mario and the Luigi Kid',
-    user:
-      '<a href="https://www.google.com/search?q=Mario+Bros" target="_blank" style="color:#0077c0;">Mario Bros</a>',
-    parentId: 5,
-    start: (24),
-    duration: 1 * 24 * 60 * 60 * 1000,
-    percent: 50,
-    type: 'task',
-    collapsed: true,
-    style: {
-      base: {
-        fill: '#8E44AD',
-        stroke: '#7E349D'
-      }
-    }
-  },
-  {
-    id: 7,
-    label: 'Devon, the old man wanted me, it was his dying request',
-    user:
-      '<a href="https://www.google.com/search?q=Knight+Rider" target="_blank" style="color:#0077c0;">Knight Rider</a>',
-    parentId: 2,
-    dependentOn: [6],
-    start: (24 * 2),
-    duration: 4 * 60 * 60 * 1000,
-    percent: 20,
-    type: 'task',
-    collapsed: true
-  },
-  {
-    id: 8,
-    label: 'Hey, Baby! Anybody ever tell you I have beautiful eyes?',
-    user:
-      '<a href="https://www.google.com/search?q=Johhny+Bravo" target="_blank" style="color:#0077c0;">Johhny Bravo</a>',
-    parentId: 7,
-    dependentOn: [7],
-    start: (24 * 3),
-    duration: 1 * 24 * 60 * 60 * 1000,
-    percent: 0,
-    type: 'task'
-  },
-  {
-    id: 9,
-    label:
-      'This better be important, woman. You are interrupting my very delicate calculations.',
-    user:
-      '<a href="https://www.google.com/search?q=Dexter\'s+Laboratory" target="_blank" style="color:#0077c0;">Dexter\'s Laboratory</a>',
-    parentId: 8,
-    dependentOn: [8, 7],
-    start: (24 * 4),
-    duration: 4 * 60 * 60 * 1000,
-    percent: 20,
-    type: 'task',
-    style: {
-      base: {
-        fill: '#8E44AD',
-        stroke: '#7E349D'
-      }
-    }
-  },
-  {
-    id: 10,
-    label: 'current task',
-    user:
-      '<a href="https://www.google.com/search?q=Johnattan+Owens" target="_blank" style="color:#0077c0;">Johnattan Owens</a>',
-    start: (24 * 5),
-    duration: 24 * 60 * 60 * 1000,
-    percent: 0,
-    type: 'task'
-  },
-  {
-    id: 11,
-    label: 'test task',
-    user:
-      '<a href="https://www.google.com/search?q=Johnattan+Owens" target="_blank" style="color:#0077c0;">Johnattan Owens</a>',
-    start: (24 * 6),
-    duration: 24 * 60 * 60 * 1000,
-    percent: 0,
-    type: 'task'
-  },
-  {
-    id: 12,
-    label: 'test task',
-    user:
-      '<a href="https://www.google.com/search?q=Johnattan+Owens" target="_blank" style="color:#0077c0;">Johnattan Owens</a>',
-    start: (24 * 7),
-    duration: 24 * 60 * 60 * 1000,
-    percent: 0,
-    type: 'task',
-    parentId: 11
-  },
-  {
-    id: 13,
-    label: 'test task',
-    user:
-      '<a href="https://www.google.com/search?q=Johnattan+Owens" target="_blank" style="color:#0077c0;">Johnattan Owens</a>',
-    start: (24 * 8),
-    duration: 24 * 60 * 60 * 1000,
-    percent: 0,
-    type: 'task'
-  },
-  {
-    id: 14,
-    label: 'test task',
-    user:
-      '<a href="https://www.google.com/search?q=Johnattan+Owens" target="_blank" style="color:#0077c0;">Johnattan Owens</a>',
-    start: (24 * 9),
-    duration: 24 * 60 * 60 * 1000,
-    percent: 0,
-    type: 'task'
-  },
-  {
-    id: 15,
-    label: 'test task',
-    user:
-      '<a href="https://www.google.com/search?q=Johnattan+Owens" target="_blank" style="color:#0077c0;">Johnattan Owens</a>',
-    start: (24 * 16),
-    duration: 24 * 60 * 60 * 1000,
-    percent: 0,
-    type: 'task'
-  }
-]
+const tasks = []
+//   {
+//     id: 1,
+//     taskName: 'item.name',
+//     belongModules: 'cdscdscdscs',
+//     devPerson: 'cdscd',
+//     testPerson: 'cdsc',
+//     description: 'cdscdscd',
+//     startDate: 'dscscds',
+//     endDate: 'cdscdscds',
+//     needLegalAllDays: '1/3', // item.workNum.needDays + '/' + item.workNum.legalDays + '/' + item.workNum.allDays,
+//     type: 'task',
+//     start: (-24 * 5),
+//     duration: 15 * 24 * 60 * 60 * 1000
+//     // type: 'project'
+//     // collapsed: true,
+//   },
+//   {
+//     id: 6,
+//     taskName: 'Butch Mario and the Luigi Kid',
+//     user:
+//       '<a href="https://www.google.com/search?q=Mario+Bros" target="_blank"',
+//     parentId: 5,
+//     start: (24),
+//     duration: 1 * 24 * 60 * 60 * 1000,
+//     percent: 50,
+//     type: 'task',
+//     collapsed: true,
+//     style: {
+//       base: {
+//         fill: '#8E44AD',
+//         stroke: '#7E349D'
+//       }
+//     }
+//   }
+// ]
 
 export default {
   components: {
@@ -225,6 +65,9 @@ export default {
       dynamicStyle: {}
     }
   },
+  created() {
+    this.listByRequire()
+  },
   mounted() {
     const box = document.getElementsByClassName('gantt-elastic__header-label')
     for (const i in box) {
@@ -232,10 +75,10 @@ export default {
       i === '3' ? '' : box[i].style = 'display: none;'
     }
     console.log(box)
-    this.listByRequire()
   },
   methods: {
     async listByRequire() { // 获取排期列表
+      alert()
       const res = await listByRequire(Number(this.$route.query.id))
       if (res.code === 200) this.handleData(res.data.taskDetailList)
     },
@@ -243,6 +86,7 @@ export default {
       this.tasks = data.map((value, key) => {
         return this.handleItem(value, key)
       })
+      console.log(this.tasks, 'xsaxasxsxas')
     },
     handleItem(item, key) {
       const colorlist = ['#A1DEFF', '#FAB5B5', '#BCED86', '#FFA87F', '#8E44AD', '#1EBC61', '#0287D0']
@@ -258,6 +102,8 @@ export default {
         endDate: item.optionsObject.endTime ? moment(item.optionsObject.endTime).format('YYYY-MM-DD') : '',
         needLegalAllDays: '1/3', // item.workNum.needDays + '/' + item.workNum.legalDays + '/' + item.workNum.allDays,
         type: 'task',
+        start: (-24 * 5),
+        duration: 15 * 24 * 60 * 60 * 1000,
         style: {
           base: {
             fill: colorlist[key % colorlist.length]
@@ -266,14 +112,8 @@ export default {
       }
     },
 
-    tasksUpdate(tasks) {
-      this.tasks = tasks
-    },
     optionsUpdate(options) {
       this.options = options
-    },
-    styleUpdate(style) {
-      this.dynamicStyle = style
     }
   }
 }