|
@@ -148,7 +148,7 @@
|
|
|
v-for="(it, index1) in item.months"
|
|
|
:label="it.str"
|
|
|
prop="str"
|
|
|
- min-width="30"
|
|
|
+ min-width="50"
|
|
|
style="padding: 0; margin: 0;"
|
|
|
align="center"
|
|
|
:key="index1"
|
|
@@ -180,60 +180,6 @@
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table-column>
|
|
|
- <!-- 渲染时间(月|日) -->
|
|
|
- <el-table-column
|
|
|
- v-if="!IsShowyear"
|
|
|
- v-for="(item, index) in showMonths"
|
|
|
- :label="item.year"
|
|
|
- prop="year"
|
|
|
- align="center"
|
|
|
- :key="index"
|
|
|
- >
|
|
|
- <el-table-column
|
|
|
- v-for="(it, index1) in item.months"
|
|
|
- :label="it.str"
|
|
|
- prop="str"
|
|
|
- style="padding: 0; margin: 0;"
|
|
|
- align="center"
|
|
|
- :key="index1"
|
|
|
- >
|
|
|
- <el-table-column
|
|
|
- v-for="(itm, index2) in item.days[index1].daysArr"
|
|
|
- :label="itm.day"
|
|
|
- prop="day"
|
|
|
- min-width="30"
|
|
|
- style="padding: 0; margin: 0;"
|
|
|
- align="center"
|
|
|
- :key="index2"
|
|
|
- >
|
|
|
- <template slot-scope="scope" class="progressCon">
|
|
|
- <div v-if="getCellDateWidth > 0">
|
|
|
- <div
|
|
|
- v-if="index === 0 && index1 === 0 && index2 === 0 && scope.$index % 2 === 0"
|
|
|
- class="progressUpon"
|
|
|
- :style="{width:optimizeCalcWidth(scope.row),left:optimizeCalcLeft(scope.row)}"
|
|
|
- ></div>
|
|
|
- <div
|
|
|
- v-else-if="index === 0 && index1 === 0 && index2 === 0 && scope.$index % 2 !== 0"
|
|
|
- class="progressDownon"
|
|
|
- :style="{width:optimizeCalcWidth(scope.row),left:optimizeCalcLeft(scope.row)}"
|
|
|
- ></div>
|
|
|
- </div>
|
|
|
- <div v-else>
|
|
|
- <div
|
|
|
- v-if="scope.$index % 2 === 0"
|
|
|
- :class="scope.row.beginTimeStamp <= itm.timestamp && scope.row.endTimeStamp >= itm.timestamp ? 'progressUpon' : '' "
|
|
|
- style="width:calc(100% + 2px)"
|
|
|
- ></div>
|
|
|
- <div v-else
|
|
|
- :class="scope.row.beginTimeStamp <= itm.timestamp && scope.row.endTimeStamp >= itm.timestamp ? 'progressDownon' : '' "
|
|
|
- style="width:calc(100% + 2px)"
|
|
|
- ></div>
|
|
|
- </div>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table-column>
|
|
|
- </el-table-column>
|
|
|
<el-table-column label="操作" align="center" fixed="right" class-name="small-padding fixed-width" width="400">
|
|
|
<template slot-scope="scope">
|
|
|
<el-button
|
|
@@ -695,7 +641,6 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
// 每个单元格最小30宽度
|
|
|
let MaxWidth = window.screen.width
|
|
|
let CellNum = MaxWidth / 30 > 0 ? MaxWidth / 30 : 0
|
|
@@ -1067,7 +1012,7 @@ export default {
|
|
|
// 如果本月开始日期小于开始日期
|
|
|
if(val.beginTimeStamp > date.beginTimeStamp){
|
|
|
// 进行判断
|
|
|
- let diffNum = val.beginTimeStamp - date.beginTimeStamp
|
|
|
+ let diffNum = date.endTimeStamp - val.beginTimeStamp
|
|
|
let SumNum = date.endTimeStamp - date.beginTimeStamp
|
|
|
let rate = 100 - Math.round(diffNum / SumNum * 10000) / 100.00
|
|
|
// 位置判断
|
|
@@ -1088,6 +1033,7 @@ export default {
|
|
|
},
|
|
|
// 计算图表的Width
|
|
|
calcwidth(val,date) {
|
|
|
+
|
|
|
if(this.IsShowyear){
|
|
|
// 如果是 年|月
|
|
|
// 1. 如果本月的最大时间戳都没有结束时间长,那么就可设置100%
|
|
@@ -1097,7 +1043,7 @@ export default {
|
|
|
// 如果本月开始日期小于开始日期
|
|
|
if(val.beginTimeStamp > date.beginTimeStamp){
|
|
|
// 进行判断
|
|
|
- let diffNum = val.beginTimeStamp - date.beginTimeStamp
|
|
|
+ let diffNum = date.endTimeStamp - val.beginTimeStamp
|
|
|
let SumNum = date.endTimeStamp - date.beginTimeStamp
|
|
|
let rate = Math.round(diffNum / SumNum * 10000) / 100.00
|
|
|
return 'calc('+ rate +'% + 2px)' // 结束时间超过本月最大时间戳直接+2px
|
|
@@ -1105,7 +1051,7 @@ export default {
|
|
|
return 'calc(100% + 2px)'
|
|
|
}else if(val.endTimeStamp < date.beginTimeStamp){
|
|
|
return '0px'
|
|
|
- }else if(val.endTimeStamp > date.beginTimeStamp && val.endTimeStamp < date.endTimeStamp){
|
|
|
+ }else if(val.endTimeStamp > date.beginTimeStamp && val.endTimeStamp <= date.endTimeStamp){
|
|
|
// 进行判断
|
|
|
if(val.beginTimeStamp > date.beginTimeStamp){
|
|
|
// 都在一个单元格中
|
|
@@ -1122,15 +1068,6 @@ export default {
|
|
|
return 'calc('+ rate +'%)'
|
|
|
}
|
|
|
}
|
|
|
- }else{
|
|
|
- // 如果是 月|日
|
|
|
- // 1.如果开始时间大于 天的时间戳,则为0
|
|
|
- // 2.如果结束时间小于 天的时间戳,则为100%
|
|
|
- if(val.beginTimeStamp > date.timestamp){
|
|
|
- return '0px'
|
|
|
- }else if(val.beginTimeStamp < date.timestamp && val.endTimeStamp > date.timestamp){
|
|
|
- return 'calc(100% + 2px)'
|
|
|
- }
|
|
|
}
|
|
|
return '0px'
|
|
|
},
|
|
@@ -1211,7 +1148,7 @@ export default {
|
|
|
this.IsShowyear = true
|
|
|
}else{
|
|
|
//需要记录天数
|
|
|
- this.IsShowyear = false
|
|
|
+ this.IsShowyear = true
|
|
|
}
|
|
|
// 获取需要格式的年月信息
|
|
|
let yearArr = []; // 存年
|
|
@@ -1352,7 +1289,6 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
this.showMonths = yearArr
|
|
|
-
|
|
|
},
|
|
|
|
|
|
// 获取月的最后一天
|