|
|
@@ -1012,7 +1012,7 @@ public class GxtOrderHourServiceImpl implements IGxtOrderHourService {
|
|
|
*/
|
|
|
public void calculateOrderTimeDetails(OrderScoreInfo order) {
|
|
|
// 下发时长 = 下发时间 - 故障发生时间(维修工单)或创建时间(维保工单)
|
|
|
- if (order.getAssignTime() != null) {
|
|
|
+ /*if (order.getAssignTime() != null) {
|
|
|
Date startTime = null;
|
|
|
if (order.getOrderType() == 1) { // 维修工单
|
|
|
startTime = order.getOccurTime();
|
|
|
@@ -1024,7 +1024,7 @@ public class GxtOrderHourServiceImpl implements IGxtOrderHourService {
|
|
|
long diffMillis = order.getAssignTime().getTime() - startTime.getTime();
|
|
|
order.setIssueHour(diffMillis / (1000.0 * 60 * 60));
|
|
|
}
|
|
|
- }
|
|
|
+ }*/
|
|
|
|
|
|
// 挂起时长 = 恢复时间 - 挂起时间
|
|
|
long[] suspensionTimes = new long[4]; // 总挂起时长, 开工前挂起时长, 开工挂起后时长
|
|
|
@@ -1041,20 +1041,33 @@ public class GxtOrderHourServiceImpl implements IGxtOrderHourService {
|
|
|
|
|
|
// 接单时长 = 接单时间 – 下发时间 - 夜间工单的自动挂起时长
|
|
|
// 计算接单期间的自动挂起时长(夜间工单挂起)
|
|
|
- long acceptSuspensionTime = 0;
|
|
|
+ /*long acceptSuspensionTime = 0;
|
|
|
if (order.getAcceptTime() != null && order.getAssignTime() != null) {
|
|
|
// 计算接单期间的自动挂起时长
|
|
|
//acceptSuspensionTime = calculateOrderAcceptSuspensionTime(order.getId(), order.getAssignTime(), order.getAcceptTime(), order.getOrderType());
|
|
|
acceptSuspensionTime = suspensionTimes[3];
|
|
|
long diffMillis = order.getAcceptTime().getTime() - order.getAssignTime().getTime();
|
|
|
order.setAcceptHour((diffMillis - acceptSuspensionTime) / (1000.0 * 60 * 60));
|
|
|
- }
|
|
|
+ }*/
|
|
|
|
|
|
// 准备时长 = 开始打卡时间 – 接单时间 - 开工前挂起时长
|
|
|
- if (order.getRealStartTime() != null && order.getAcceptTime() != null) {
|
|
|
+ /*if (order.getRealStartTime() != null && order.getAcceptTime() != null) {
|
|
|
//long diffMillis = order.getRealStartTime().getTime() - order.getAssignTime().getTime() - suspensionTimes[1] ;
|
|
|
long diffMillis = order.getRealStartTime().getTime() - order.getAcceptTime().getTime() - suspensionTimes[1] ;
|
|
|
order.setPrepareHour(diffMillis / (1000.0 * 60 * 60));
|
|
|
+ }*/
|
|
|
+ // 准备时长 = 开始打卡时间 – 停机时间
|
|
|
+ if (order.getRealStartTime() != null) {
|
|
|
+ Date startTime = null;
|
|
|
+ if (order.getOrderType() == 1) { // 维修工单
|
|
|
+ startTime = order.getOccurTime();
|
|
|
+ } else if (order.getOrderType() == 2) { // 维保工单
|
|
|
+ startTime = order.getPauseTime();
|
|
|
+ }
|
|
|
+ if (startTime != null) {
|
|
|
+ long diffMillis = order.getRealStartTime().getTime() - startTime.getTime();
|
|
|
+ order.setPrepareHour(diffMillis / (1000.0 * 60 * 60));
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
// 作业时长 = 结束打卡时间 - 开始打卡时间 - 开工后挂起时长
|