|
@@ -125,8 +125,16 @@
|
|
taskLists: {
|
|
taskLists: {
|
|
handler(newValue, oldValue){
|
|
handler(newValue, oldValue){
|
|
console.log(newValue, oldValue)
|
|
console.log(newValue, oldValue)
|
|
- this.changeTableTree()
|
|
|
|
if(newValue.length > 0){
|
|
if(newValue.length > 0){
|
|
|
|
+
|
|
|
|
+ newValue.forEach(res=>{
|
|
|
|
+ if(!res.end_date){
|
|
|
|
+ res.end_date = res.start_date
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ console.log(newValue)
|
|
|
|
+ this.changeTableTree()
|
|
|
|
+
|
|
this.getStartEndTime()
|
|
this.getStartEndTime()
|
|
this.$nextTick(() => {
|
|
this.$nextTick(() => {
|
|
this.uGanttDrag()
|
|
this.uGanttDrag()
|
|
@@ -185,16 +193,36 @@
|
|
},
|
|
},
|
|
// 获取最开始和最末尾时间
|
|
// 获取最开始和最末尾时间
|
|
getStartEndTime(){
|
|
getStartEndTime(){
|
|
- // var setTimeData = JSON.parse(JSON.stringify(this.taskLists))
|
|
|
|
- var setTimeData = this.taskLists.filter(res=> res.start_date)
|
|
|
|
- setTimeData.sort(function(a, b) {
|
|
|
|
- return b.start_date < a.start_date ? 1 : -1
|
|
|
|
|
|
+ // 开始日期(实际和计划都)排序选择最开始的一天
|
|
|
|
+ // var hasSjStartArr = this.taskLists.filter(res=> res.reality_startDate) // 因为计划开始日期一定有,所以就不判断了
|
|
|
|
+ var allStartDataArr = []
|
|
|
|
+ this.taskLists.forEach(res=>{
|
|
|
|
+ console.log(res.reality_startDate)
|
|
|
|
+ if(res.reality_startDate){allStartDataArr.push(res.reality_startDate)}
|
|
|
|
+ allStartDataArr.push(res.start_date)
|
|
|
|
+ })
|
|
|
|
+ // 从小到大排序
|
|
|
|
+ allStartDataArr.sort(function(a, b) {
|
|
|
|
+ return new Date(a) - new Date(b)
|
|
|
|
+ })
|
|
|
|
+ console.log(allStartDataArr)
|
|
|
|
+
|
|
|
|
+ // 结束日期(实际和计划都)排序选择最后的一天
|
|
|
|
+ var allEndDataArr = []
|
|
|
|
+ this.taskLists.forEach(res=>{
|
|
|
|
+ allEndDataArr.push(res.reality_endDate)
|
|
|
|
+ allEndDataArr.push(res.end_date)
|
|
|
|
+ })
|
|
|
|
+ // 从大到小排序
|
|
|
|
+ allEndDataArr.sort(function(a, b) {
|
|
|
|
+ return new Date(b) - new Date(a)
|
|
})
|
|
})
|
|
- console.log(this.taskLists)
|
|
|
|
|
|
+ // console.log(allEndDataArr)
|
|
|
|
|
|
- // 获取实际的最开始和最结束时间
|
|
|
|
- const start_date = setTimeData[0].start_date
|
|
|
|
- const end_date = setTimeData[setTimeData.length - 1].end_date
|
|
|
|
|
|
+ // 获取最开始和最结束时间
|
|
|
|
+ const start_date = allStartDataArr[0]
|
|
|
|
+ const end_date = allEndDataArr[0]
|
|
|
|
+ // const end_date = setTimeData[setTimeData.length - 1].end_date
|
|
|
|
|
|
// 判断两个日期之间多少天--bug:少一天
|
|
// 判断两个日期之间多少天--bug:少一天
|
|
var betweenDays = (new Date(end_date).getTime() - new Date(start_date).getTime()) / (1000 * 60 * 60 * 24)
|
|
var betweenDays = (new Date(end_date).getTime() - new Date(start_date).getTime()) / (1000 * 60 * 60 * 24)
|