Commit f40775de by Ren Ping

Merge remote-tracking branch 'origin/develop' into develop

2 parents d0451631 cec15f8e
......@@ -12,4 +12,9 @@ public class TimeLineDTO {
private String startTime;
private String endTime;
private List<LabelValueDTO> tips;
/**
* 是否是辅助单
*/
private Boolean isSub = false;
}
\ No newline at end of file
......@@ -53,6 +53,7 @@ public class BeanRemoteServiceImpl {
add("1575934912659275778");
}
};
private static List<String> qaaa = new ArrayList<>();
@Value("${bean.app-key}")
private String appKey;
......@@ -182,6 +183,7 @@ public class BeanRemoteServiceImpl {
log.info("开始同步人员信息{}", JsonUtil.toJson(account));
saveEngineerInfoByHrId(departId, account.getHrId(), account.getUserName());
}
System.out.println(qaaa);
}
/**
......@@ -202,11 +204,10 @@ public class BeanRemoteServiceImpl {
String engineerCode = userDetailInfo.getWorkNo();
if (StringUtils.isBlank(engineerCode)) {
log.warn("分站:{}工程师{}没有工号", departId, userDetailInfo.getUsername());
qaaa.add(userDetailInfo.getUsername());
return;
}
final Address address = userDetailInfo.getAddress();
//fixme 正式同步需移除当前逻辑
engineerCode = "BEAN" + engineerCode;
EngineerInfoEntity engineerInfo = getEngineerInfoEntity(departId, engineerCode, userDetailInfo, address);
engineerInfoDao.save(engineerInfo);
engineerInfoDao.flush();
......@@ -243,12 +244,13 @@ public class BeanRemoteServiceImpl {
//fixme 工作地址存贮
if (Objects.nonNull(address)) {
engineerInfo.setAddress(address.getAddress());
engineerInfo.setAddress(StringUtils.isNotBlank(address.getAddress()) ? address.getAddress() : "");
engineerInfo.setWorkAddress(address.getAddress());
engineerInfo.setWorkX(Objects.isNull(address.getLongitude()) ? "" : String.valueOf(address.getLongitude()));
engineerInfo.setWorkY(Objects.isNull(address.getLatitude()) ? "" : String.valueOf(address.getLatitude()));
} else {
engineerInfo.setWorkAddress("");
engineerInfo.setAddress("无");
engineerInfo.setWorkAddress("无");
}
engineerInfo.setCreateTime(LocalDateTime.now());
......
......@@ -534,7 +534,7 @@ public class OrderInfoServiceImpl implements OrderInfoService {
seg.setDistance(orderInfo.getArriveDistance());
seg.setStart(orderInfo.getPlanStartTime());
seg.setEnd(orderInfo.getPlanEndTime());
if (StringUtils.isNotBlank(orderInfo.getEngineerCodeSub()) && orderInfo.getIsMultiple() == 1 && orderInfo.getEngineerCodeSub().equals(engineer.getEngineerCode())) {
if (OrderUtil.isSub(orderInfo, engineer.getEngineerCode())) {
seg.setIsSub(true);
seg.setElapsed(orderInfo.getSubElapsed());
seg.setDistance(orderInfo.getSubDistance());
......
......@@ -231,9 +231,11 @@ public class ScheduleServiceImpl implements ScheduleService {
Sort sort = Sort.by(Sort.Direction.valueOf(sortType.toUpperCase()), sortColumn);
//查询包含已取消在内所以工单,后续数据筛选只用预指派和确认指派数据
List<OrderInfoEntity> orderAppointmentsAll = orderInfoDao.findByDtAndEngineerCode(date, engineerCode, sort);
List<OrderInfoEntity> subOrders = orderInfoDao.findByDtAndEngineerCodeSub(date, engineerCode);
List<OrderInfoEntity> orderAppointments = orderAppointmentsAll.stream().filter(e -> (e.getAppointmentStatus()
.equals(OrderFlowEnum.PRE.name())) || e.getAppointmentStatus().equals(OrderFlowEnum.CONFIRM.name()))
.collect(Collectors.toList());
orderAppointments.addAll(subOrders);
List<TimeLineDTO> timelines = new ArrayList<>();
int sumDistance = 0;
int sumElapsed = 0;
......@@ -241,12 +243,20 @@ public class ScheduleServiceImpl implements ScheduleService {
TimeLineDTO item = new TimeLineDTO();
item.setOrderId(o.getOrderId());
item.setAppointmentStatus(o.getAppointmentStatus());
item.setStartTime(TimeUtils.IsoLocalDateTime2String(o.getPlanStartTime()));
item.setEndTime(TimeUtils.IsoLocalDateTime2String(o.getPlanEndTime()));
if (OrderUtil.isSub(o, engineerCode)) {
item.setIsSub(true);
item.setStartTime(TimeUtils.IsoLocalDateTime2String(o.getSubPlanStartTime()));
item.setEndTime(TimeUtils.IsoLocalDateTime2String(o.getSubPlanEndTime()));
sumDistance += Objects.isNull(o.getSubDistance()) ? 0 : o.getSubDistance();
sumElapsed += Objects.isNull(o.getSubElapsed()) ? 0 : o.getSubElapsed();
} else {
item.setStartTime(TimeUtils.IsoLocalDateTime2String(o.getPlanStartTime()));
item.setEndTime(TimeUtils.IsoLocalDateTime2String(o.getPlanEndTime()));
sumDistance += Objects.isNull(o.getArriveDistance()) ? 0 : o.getArriveDistance();
sumElapsed += Objects.isNull(o.getArriveElapsed()) ? 0 : o.getArriveElapsed();
}
item.setTips(emptyTips);
timelines.add(item);
sumDistance += Objects.isNull(o.getArriveDistance()) ? 0 : o.getArriveDistance();
sumElapsed += Objects.isNull(o.getArriveElapsed()) ? 0 : o.getArriveElapsed();
}
String groupName = "";
......
......@@ -29,6 +29,7 @@ public class OrderUtil {
order.setEngineerCode(null);
return order;
}
/**
* 分处理辅助工程师数据
*
......@@ -217,4 +218,17 @@ public class OrderUtil {
return tagList;
}
/**
* 分单,超派,特殊时间等处理工单指派工程师,网点等数据
*
* @return
*/
public static Boolean isSub(OrderInfoEntity orderInfo, String enginnerCode) {
if (StringUtils.isNotBlank(orderInfo.getEngineerCodeSub()) && orderInfo.getIsMultiple() == 1 && orderInfo.getEngineerCodeSub().equals(enginnerCode)) {
return true;
}
return false;
}
}
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!