湖里大屏(进度计划):完成甘特图日期计算

This commit is contained in:
Jack 2022-08-10 16:06:59 +08:00
parent 7905c4463e
commit 4dde2afbf0

View File

@ -7,7 +7,7 @@
<div class="td">分部分项工程名称</div>
<div class="td">开始日期</div>
<div class="td">完成日期</div>
<div class="td" v-for="date in dates" :key="date">
<div class="td" v-for="date in dateList" :key="date">
<div class="date">
<div class="month">
{{ date }}
@ -25,7 +25,7 @@
<div class="td" @click="handleOpen(i)">{{ p.pName }}</div>
<div class="td">{{ p.startTime }}</div>
<div class="td">{{ p.endTime }}</div>
<div class="td" v-for="date in dates" :key="date + 'grid-date'">
<div class="td" v-for="date in dateList" :key="date + 'grid-date'">
<div class="grids">
<div class="grid" v-for="day in getDays(date)" :key="'grid' + day.num" :ref="p.pName + '-' + day.date"></div>
</div>
@ -37,7 +37,7 @@
<div class="td">{{ child.pName }}</div>
<div class="td">{{ child.startTime }}</div>
<div class="td">{{ child.endTime }}</div>
<div class="td" v-for="date in dates" :key="date + 'grid-date'">
<div class="td" v-for="date in dateList" :key="date + 'grid-date'">
<div class="grids">
<div class="grid" v-for="day in getDays(date)" :key="'grid' + day.num" :ref="child.pName + '-' + day.date"></div>
</div>
@ -70,7 +70,6 @@ export default {
},
data() {
return {
dates: ['2020/03', '2020/04', '2020/05', '2020/06', '2020/07', '2020/08'],
projects: [
{
pName: '地基与基础工程',
@ -180,6 +179,22 @@ export default {
this.openedIndex = index
}
}
},
computed: {
dateList() {
let dates = []
const mapDates = data => {
data.map(p => {
dates.push(p.startTime)
dates.push(p.endTime)
p.children && mapDates(p.children)
})
}
mapDates(this.projects)
dates = dates.map(date => date.slice(0, 7)).sort()
dates = [...new Set(dates)]
return dates
}
}
}
</script>