|
@@ -32,10 +32,14 @@
|
|
|
<ww-open-data type='userName' :openid='scope.row.text'></ww-open-data>
|
|
|
</span> -->
|
|
|
<span v-if="scope.row.translationType != 'user' && stafforpro != '按项目查看'">
|
|
|
- {{scope.row.end_date | dataValue(scope.column, scope.row)}}
|
|
|
+ <!-- {{scope.row.end_date | dataValue(scope.column, scope.row)}} -->
|
|
|
+ <!-- {{scope.row.start_date | dataValue(scope.column, scope.row)}} -->
|
|
|
+ {{scope.row.con_data | dataValue(scope.column, scope.row)}}
|
|
|
</span>
|
|
|
<span v-if="stafforpro == '按项目查看'">
|
|
|
- {{scope.row.end_date | dataValue(scope.column, scope.row)}}
|
|
|
+ <!-- {{scope.row.end_date | dataValue(scope.column, scope.row)}} -->
|
|
|
+ <!-- {{scope.row.start_date | dataValue(scope.column, scope.row)}} -->
|
|
|
+ {{scope.row.con_data | dataValue(scope.column, scope.row)}}
|
|
|
</span>
|
|
|
</div>
|
|
|
</template>
|
|
@@ -68,6 +72,7 @@ export default {
|
|
|
components: {},
|
|
|
data() {
|
|
|
return {
|
|
|
+ that: this,
|
|
|
initialMonth: '', // 开始月份
|
|
|
headerData: [], // 表头数据
|
|
|
treeDataList: [],
|
|
@@ -78,16 +83,43 @@ export default {
|
|
|
};
|
|
|
},
|
|
|
filters: {
|
|
|
+ // dataValue: function (endDate, item, value) {
|
|
|
+ // if(endDate) {
|
|
|
+ // let biaoto = item.label.split(' ')[0]
|
|
|
+ // if(biaoto == value.end_date) {
|
|
|
+ // if(value.text.indexOf('/') != '-1') {
|
|
|
+ // return value.text.split('/')[1]
|
|
|
+ // } else {
|
|
|
+ // return value.text
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+
|
|
|
dataValue: function (endDate, item, value) {
|
|
|
if(endDate) {
|
|
|
let biaoto = item.label.split(' ')[0]
|
|
|
- if(biaoto == value.end_date) {
|
|
|
- if(value.text.indexOf('/') != '-1') {
|
|
|
- return value.text.split('/')[1]
|
|
|
- } else {
|
|
|
- return value.text
|
|
|
- }
|
|
|
+ let maxData = value.numData
|
|
|
+ let str = ''
|
|
|
+ if(value.text.indexOf('/') != '-1') {
|
|
|
+ str = value.text.split('/')[1]
|
|
|
+ } else {
|
|
|
+ str = value.text
|
|
|
+ }
|
|
|
+
|
|
|
+ if(maxData == 2 && biaoto == value.end_date) {
|
|
|
+ return str
|
|
|
+ } else if(maxData != 2 && biaoto == value.con_data){
|
|
|
+ return str
|
|
|
}
|
|
|
+
|
|
|
+ // if(biaoto == endDate) {
|
|
|
+ // if(value.text.indexOf('/') != '-1') {
|
|
|
+ // return value.text.split('/')[1]
|
|
|
+ // } else {
|
|
|
+ // return value.text
|
|
|
+ // }
|
|
|
+ // }
|
|
|
}
|
|
|
}
|
|
|
},
|
|
@@ -95,6 +127,8 @@ export default {
|
|
|
watch: {},
|
|
|
created() {},
|
|
|
mounted() {
|
|
|
+ console.log(this.dayjs('2023-04-14').diff('2023-04-12', 'day'), '值差异')
|
|
|
+ console.log(this.dayjs('2023-04-14').add(Math.ceil((3/2)),'day').format('YYYY-MM-DD'))
|
|
|
console.log(this.stafforpro,'值')
|
|
|
// 重置两个属性值
|
|
|
this.num = 0,
|
|
@@ -113,7 +147,6 @@ export default {
|
|
|
|
|
|
this.treeDataList = this.recursive(this.tasks.data);
|
|
|
|
|
|
- // this.treeDataList = this.integrationTree(this.tasks.data)
|
|
|
console.log(this.mergeList, '合并数据')
|
|
|
console.log(this.treeDataList, '合并完全的数据')
|
|
|
},
|
|
@@ -123,20 +156,6 @@ export default {
|
|
|
for (let i in data) {
|
|
|
if(this.stafforpro == '按项目查看') {
|
|
|
data[i].color = '#409EFF'
|
|
|
- // if(data[i].type == 'user' && data[i].text) {
|
|
|
- // let arr = []
|
|
|
- // if(data[i].text.indexOf('/') != '-1') {
|
|
|
- // let str = data[i].text.split('/')[0]
|
|
|
- // if(str.indexOf(',') != '-1') {
|
|
|
- // let arrList = str.split(',')
|
|
|
- // data[i].userNameList = arrList
|
|
|
- // } else {
|
|
|
- // arr.push(str)
|
|
|
- // data[i].userNameList = arr
|
|
|
- // }
|
|
|
- // data[i].proNameText = data[i].text.split('/')[1]
|
|
|
- // }
|
|
|
- // }
|
|
|
if(data[i].translationType == 'user' && data[i].text) {
|
|
|
let arr = []
|
|
|
arr = data[i].text.split(',')
|
|
@@ -155,32 +174,62 @@ export default {
|
|
|
numDay: 1,
|
|
|
column: 1
|
|
|
}
|
|
|
+
|
|
|
if(data[i].end_date) {
|
|
|
- let day = this.dayjs(data[i].end_date).diff(data[i].start_date, 'day') // 和并多少行
|
|
|
- let column = +this.dayjs(data[i].end_date).diff(this.valueDateList[0], 'day') + 1 // 从多少列开始
|
|
|
- if(day >= 1) {
|
|
|
- if(day >= 3) {
|
|
|
- if(this.valueDateList[0] > data[i].start_date) {
|
|
|
- obj.column = 1
|
|
|
- day >= column ? obj.numDay = column : obj.numDay = day
|
|
|
- } else {
|
|
|
- let num = this.dayjs(data[i].start_date).diff(this.valueDateList[0], 'day')
|
|
|
- obj.column = +num + 1
|
|
|
- day >= column ? obj.numDay = column : obj.numDay = day
|
|
|
- }
|
|
|
- } else {
|
|
|
- day >= column ? obj.numDay = column : obj.numDay = day
|
|
|
- obj.column = column
|
|
|
- }
|
|
|
+ var endData = ''
|
|
|
+ var starData = ''
|
|
|
+ if(data[i].end_date < this.valueDateList[1]) {
|
|
|
+ endData = data[i].end_date
|
|
|
+ } else {
|
|
|
+ endData = this.valueDateList[1]
|
|
|
}
|
|
|
- }
|
|
|
- if(data[i].end_date != data[i].start_date && data[i].end_date != this.valueDateList[0]) {
|
|
|
- data[i].end_date = this.dayjs(this.valueDateList[0]).add('1','day').format('YYYY-MM-DD')
|
|
|
- if(data[i].end_date < data[i].start_date) {
|
|
|
- data[i].end_date = this.dayjs(data[i].start_date).add('1','day').format('YYYY-MM-DD')
|
|
|
+
|
|
|
+ if(data[i].start_date < this.valueDateList[0]) {
|
|
|
+ starData = this.valueDateList[0]
|
|
|
+ } else {
|
|
|
+ starData = data[i].start_date
|
|
|
+ }
|
|
|
+
|
|
|
+ obj.numDay = +this.dayjs(endData).diff(starData, 'day') + 1
|
|
|
+ obj.column = +this.dayjs(starData).diff(this.valueDateList[0], 'day') + 1
|
|
|
+
|
|
|
+ if(data[i].text == '209') {
|
|
|
+ console.log(obj, '看看数据')
|
|
|
+ }
|
|
|
+ if(obj.numDay > 2) {
|
|
|
+ data[i].con_data = this.dayjs(starData).add(1,'day').format('YYYY-MM-DD')
|
|
|
+ } else {
|
|
|
+ data[i].con_data = starData
|
|
|
}
|
|
|
+ data[i].numData = obj.numDay
|
|
|
}
|
|
|
|
|
|
+ // if(data[i].end_date) {
|
|
|
+ // let day = this.dayjs(data[i].end_date).diff(data[i].start_date, 'day') // 和并多少行
|
|
|
+ // let column = +this.dayjs(data[i].end_date).diff(this.valueDateList[0], 'day') + 1 // 从多少列开始
|
|
|
+ // if(day >= 1) {
|
|
|
+ // if(day >= 3) {
|
|
|
+ // if(this.valueDateList[0] > data[i].start_date) {
|
|
|
+ // obj.column = 1
|
|
|
+ // day >= column ? obj.numDay = column : obj.numDay = day
|
|
|
+ // } else {
|
|
|
+ // let num = this.dayjs(data[i].start_date).diff(this.valueDateList[0], 'day')
|
|
|
+ // obj.column = +num + 1
|
|
|
+ // day >= column ? obj.numDay = column : obj.numDay = day
|
|
|
+ // }
|
|
|
+ // } else {
|
|
|
+ // day >= column ? obj.numDay = column : obj.numDay = day
|
|
|
+ // obj.column = column
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ // if(data[i].end_date != data[i].start_date && data[i].end_date != this.valueDateList[0]) {
|
|
|
+ // data[i].end_date = this.dayjs(this.valueDateList[0]).add('1','day').format('YYYY-MM-DD')
|
|
|
+ // if(data[i].end_date < data[i].start_date) {
|
|
|
+ // data[i].end_date = this.dayjs(data[i].start_date).add('1','day').format('YYYY-MM-DD')
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+
|
|
|
this.mergeList.push(obj)
|
|
|
if(data[i].id.indexOf(this.$t('chu-cha')) != '-1') {
|
|
|
data[i].color = '#E6A23C'
|
|
@@ -310,15 +359,30 @@ export default {
|
|
|
},
|
|
|
// 设置每一个单元格的样式
|
|
|
TableCellStyle(row) {
|
|
|
- if(row.row.color) {
|
|
|
+ let maxData = +this.dayjs(row.row.end_date).diff(row.row.start_date, 'day') + 1
|
|
|
+ if(row.row.color && maxData < 3) {
|
|
|
let biaoto = row.column.label.split(' ')[0]
|
|
|
- // if(biaoto >= row.row.start_date && biaoto <= row.row.end_date) {
|
|
|
if(biaoto == row.row.end_date) {
|
|
|
if(row.row.color) {
|
|
|
return 'background-color: '+ row.row.color +' !important;color: #fff'
|
|
|
}
|
|
|
}
|
|
|
+ } else {
|
|
|
+ let biaoto = row.column.label.split(' ')[0]
|
|
|
+ if(biaoto == row.row.con_data) {
|
|
|
+ return 'background-color: '+ row.row.color +' !important;color: #fff'
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
+ // if(row.row.color) {
|
|
|
+ // let biaoto = row.column.label.split(' ')[0]
|
|
|
+ // if(biaoto == row.row.con_data) {
|
|
|
+ // if(row.row.color) {
|
|
|
+ // return 'background-color: '+ row.row.color +' !important;color: #fff'
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+
|
|
|
}
|
|
|
},
|
|
|
};
|