|
|
@@ -9,6 +9,7 @@ import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.google.common.collect.Lists;
|
|
|
+import com.google.common.collect.Maps;
|
|
|
import com.sckw.core.common.enums.enums.DictTypeEnum;
|
|
|
import com.sckw.core.common.enums.enums.FileEnum;
|
|
|
import com.sckw.core.exception.SystemException;
|
|
|
@@ -1506,7 +1507,7 @@ public class KwfTruckService {
|
|
|
capacityTotalStatusVo.setIdleTotalTruckNum(CollectionUtils.isEmpty(kwfTrucks) ? "0" : String.valueOf(kwfTrucks.stream()
|
|
|
.filter(x -> Objects.equals(x.getStatus(), 0))
|
|
|
.count()));
|
|
|
- capacityTotalStatusVo.setAbnormalTotalTruckNum("");
|
|
|
+ capacityTotalStatusVo.setAbnormalTotalTruckNum("0");
|
|
|
return capacityTotalStatusVo;
|
|
|
}
|
|
|
|
|
|
@@ -1563,30 +1564,41 @@ public class KwfTruckService {
|
|
|
Map<Long, List<KwfTruck>> entIdAndTruckMap = truckList.stream()
|
|
|
.collect(Collectors.groupingBy(KwfTruck::getEntId));
|
|
|
|
|
|
+ //查询订单
|
|
|
+ List<RWaybillOrderVo> rWaybillOrderVos = transportRemoteService.queryWaybillOrderByEntId(req.getEntId());
|
|
|
+ Map<Long, List<RWaybillOrderVo>> truckIdAndOrderMap = Maps.newHashMap() ;
|
|
|
+ if (CollectionUtils.isNotEmpty(rWaybillOrderVos)){
|
|
|
+ truckIdAndOrderMap = rWaybillOrderVos.stream()
|
|
|
+ .collect(Collectors.groupingBy(RWaybillOrderVo::getTruckId));
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
//遍历所有企业
|
|
|
+ Map<Long, List<RWaybillOrderVo>> finalTruckIdAndOrderMap = truckIdAndOrderMap;
|
|
|
List<TruckInfoVo> ents = enterpriseResDtoList.stream()
|
|
|
- .map(e -> getTruckInfoVo(e, entIdAndTruckMap))
|
|
|
+ .map(e -> getTruckInfoVo(e, entIdAndTruckMap, finalTruckIdAndOrderMap))
|
|
|
.filter(x->CollectionUtils.isNotEmpty(x.getTruck()))
|
|
|
.collect(Collectors.toList());
|
|
|
return PageDataResult.success(page.getPageNum(),page.getPageSize(),page.getTotal(),ents);
|
|
|
}
|
|
|
|
|
|
|
|
|
- private TruckInfoVo getTruckInfoVo(KwsEnterpriseResDto e, Map<Long, List<KwfTruck>> entIdAndTruckMap) {
|
|
|
+ private TruckInfoVo getTruckInfoVo(KwsEnterpriseResDto e, Map<Long, List<KwfTruck>> entIdAndTruckMap
|
|
|
+ , Map<Long, List<RWaybillOrderVo>> truckIdAndOrderMap) {
|
|
|
TruckInfoVo ent = new TruckInfoVo();
|
|
|
ent.setEntId(String.valueOf(e.getId()));
|
|
|
ent.setEntName(e.getFirmName());
|
|
|
List<KwfTruck> kwfTrucks = entIdAndTruckMap.get(e.getId());
|
|
|
if (CollectionUtils.isNotEmpty(kwfTrucks)) {
|
|
|
List<TruckInfoVo.TruckData> truckDataList = kwfTrucks.stream()
|
|
|
- .map(t -> getTruckData(t))
|
|
|
+ .map(t -> getTruckData(t,truckIdAndOrderMap))
|
|
|
.collect(Collectors.toList());
|
|
|
ent.setTruck(truckDataList);
|
|
|
}
|
|
|
return ent;
|
|
|
}
|
|
|
|
|
|
- private TruckInfoVo.TruckData getTruckData(KwfTruck t) {
|
|
|
+ private TruckInfoVo.TruckData getTruckData(KwfTruck t, Map<Long, List<RWaybillOrderVo>> truckIdAndOrderMap) {
|
|
|
TruckInfoVo.TruckData truck = new TruckInfoVo.TruckData();
|
|
|
truck.setTruckId(String.valueOf(t.getId()));
|
|
|
truck.setTruckNo(t.getTruckNo());
|
|
|
@@ -1601,6 +1613,24 @@ public class KwfTruckService {
|
|
|
return truck;
|
|
|
}
|
|
|
|
|
|
+ private VehicleReturnData getVehicleReturnDataByOrderNo(String odrderNo) {
|
|
|
+ VehicleDataDTO vehicleDataDTO = new VehicleDataDTO();
|
|
|
+ vehicleDataDTO.setWOrderNo(odrderNo);
|
|
|
+ String res = null;
|
|
|
+ try {
|
|
|
+ res = HttpUtil.postJson(urlConfigProperties.getApiBaseUrl()+ UrlConstants.QUERY_REAL_TIME_TRACE_URL, JSON.toJSONString(vehicleDataDTO), null);
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error("查询任务轨迹异常",e);
|
|
|
+ return null;
|
|
|
+ // throw new BusinessException("查询任务轨迹异常");
|
|
|
+ }
|
|
|
+ if (org.apache.commons.lang3.StringUtils.isBlank(res)){
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ JSONObject jsonObject = JSON.parseObject(res);
|
|
|
+ return JSON.parseObject(JSON.toJSONString(jsonObject.get("data")), VehicleReturnData.class);
|
|
|
+ }
|
|
|
+
|
|
|
public VehicleReturnData getVehicleReturnData(String truckId) {
|
|
|
VehicleDataDTO vehicleDataDTO = new VehicleDataDTO();
|
|
|
vehicleDataDTO.setCarNo(truckId);
|
|
|
@@ -1616,7 +1646,7 @@ public class KwfTruckService {
|
|
|
return null;
|
|
|
}
|
|
|
JSONObject jsonObject = JSON.parseObject(res);
|
|
|
- return JSON.parseObject(jsonObject.get("data").toString(), VehicleReturnData.class);
|
|
|
+ return JSON.parseObject(JSON.toJSONString(jsonObject.get("data")), VehicleReturnData.class);
|
|
|
}
|
|
|
|
|
|
public PageDataResult<AppTruckInfoVo> pageAppTruckInfo(TruckInfoReq req) {
|