|
|
@@ -3,6 +3,7 @@ package com.sckw.transport.service;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.github.pagehelper.PageHelper;
|
|
|
import com.sckw.core.common.enums.NumberConstant;
|
|
|
+import com.sckw.core.common.enums.enums.DictTypeEnum;
|
|
|
import com.sckw.core.exception.BusinessException;
|
|
|
import com.sckw.core.model.constant.Global;
|
|
|
import com.sckw.core.model.enums.*;
|
|
|
@@ -24,6 +25,7 @@ import com.sckw.redis.utils.RedissonUtils;
|
|
|
import com.sckw.stream.model.SckwBusSum;
|
|
|
import com.sckw.system.api.RemoteSystemService;
|
|
|
import com.sckw.system.api.model.dto.res.EntCacheResDto;
|
|
|
+import com.sckw.system.api.model.dto.res.SysDictResDto;
|
|
|
import com.sckw.system.api.model.dto.res.UserCacheResDto;
|
|
|
import com.sckw.transport.dao.*;
|
|
|
import com.sckw.transport.model.*;
|
|
|
@@ -34,6 +36,7 @@ import jakarta.annotation.Resource;
|
|
|
import jakarta.validation.Valid;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.dubbo.config.annotation.DubboReference;
|
|
|
+import org.apache.ibatis.annotations.Param;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.cloud.stream.function.StreamBridge;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
@@ -122,25 +125,40 @@ public class KwtWaybillOrderService {
|
|
|
|
|
|
/**数据查询**/
|
|
|
List<WaybillOrderDriverVo> waybillOrders = new ArrayList();
|
|
|
- if (busStatus == 1) {
|
|
|
+ if (busStatus == Global.NUMERICAL_ONE) {
|
|
|
//查询司机任务列表-待接单
|
|
|
waybillOrders = waybillOrderDao.findWaitWaybillOrderByDriver(params);
|
|
|
} else {
|
|
|
//查询司机任务列表-出车/执行/完结
|
|
|
waybillOrders = waybillOrderDao.findOtherWaybillOrderByDriver(params);
|
|
|
+
|
|
|
+ //出车-出车时间
|
|
|
+ if (busStatus == Global.NUMERICAL_TWO) {
|
|
|
+ for (WaybillOrderDriverVo waybillOrder : waybillOrders) {
|
|
|
+ KwtWaybillOrderTrack track = waybillOrderTrackDao.findWaybillOrderTrack (waybillOrder.getWOrderId(), waybillOrder.getStatus());
|
|
|
+ waybillOrder.setOperateTime(track != null ? track.getOperateTime() : null);
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/**数据组装**/
|
|
|
List<Long> entIds = new ArrayList<>();
|
|
|
+ List<String> dictKey = new ArrayList<>();
|
|
|
for (WaybillOrderDriverVo waybillOrder : waybillOrders) {
|
|
|
entIds.add(waybillOrder.getCarrierEntId());
|
|
|
+ dictKey.add(DictTypeEnum.UNIT_TYPE.getType() + Global.POUND + waybillOrder.getUnit());
|
|
|
}
|
|
|
+
|
|
|
//企业数据集
|
|
|
entIds = entIds.stream().distinct().collect(Collectors.toList());
|
|
|
+ dictKey = dictKey.stream().distinct().collect(Collectors.toList());
|
|
|
Map<Long, EntCacheResDto> ents = remoteSystemService.queryEntCacheMapByIds(entIds);
|
|
|
+ Map<String, SysDictResDto> dicts = remoteSystemService.queryDictMapByTypeValues(String.join(Global.COMMA, dictKey));
|
|
|
for (WaybillOrderDriverVo waybillOrder : waybillOrders) {
|
|
|
EntCacheResDto ent = ents == null ? null : ents.get(waybillOrder.getCarrierEntId());
|
|
|
+ SysDictResDto unit = dicts == null ? null : dicts.get(DictTypeEnum.UNIT_TYPE.getType() + Global.POUND + waybillOrder.getUnit());
|
|
|
waybillOrder.setCarrierFirmName(ent != null ? ent.getFirmName() : null);
|
|
|
+ waybillOrder.setUnit(unit != null ? unit.getLabel() : null);
|
|
|
}
|
|
|
return waybillOrders;
|
|
|
}
|