开始时间11:00~结束时间13:00 耗时计算出2小时,但是12:00~13:00 休息时间,想要扣除这1小时,计算出1小时。也就是说开始时间和结束时间经过12:00时候再减1小时。
现在的代码:
Select Case e.DataCol.name
Case "开始时间","结束时间"
Dim dr3 As DataRow = e.DataRow
If dr3.IsNull("开始时间") Or dr3.IsNull("结束时间") Then
dr3("耗时") = Nothing
Else
Dim d1 As Date = dr3("结束时间")
Dim d2 As Date = dr3("开始时间")
If d1 > d2 Then
d2 = d2.AddDays(1)
End If
Dim tp As TimeSpan
tp = d1 - d2
dr3("耗时") = tp.TotalSeconds()/60/60 '真正的时段型数据要转换为秒数,才能存入时段列
End If
End Select