|
|
|
@ -16,11 +16,16 @@ import com.yvan.logisticsEnv.LogisticsEnv; |
|
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
|
import org.clever.core.Conv; |
|
|
|
import org.clever.core.json.JsonWrapper; |
|
|
|
import org.clever.data.jdbc.DaoFactory; |
|
|
|
import org.clever.data.jdbc.QueryDSL; |
|
|
|
import org.clever.data.jdbc.querydsl.utils.QueryDslUtils; |
|
|
|
|
|
|
|
import java.util.List; |
|
|
|
import java.util.Map; |
|
|
|
import java.util.Set; |
|
|
|
|
|
|
|
import static com.galaxis.rcs.common.query.QLccBasExecutor.lccBasExecutor; |
|
|
|
|
|
|
|
/** |
|
|
|
* 物流上下文运行时 |
|
|
|
*/ |
|
|
|
@ -166,6 +171,43 @@ public class LogisticsRuntime { |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// 读取地图上所有的车
|
|
|
|
final QueryDSL queryDSL = DaoFactory.getQueryDSL(); |
|
|
|
var list = queryDSL.select(QueryDslUtils.linkedMap( |
|
|
|
lccBasExecutor.executorId, |
|
|
|
lccBasExecutor.virtualLocationAt, |
|
|
|
lccBasExecutor.virtualExecutorPayload |
|
|
|
)) |
|
|
|
.from(lccBasExecutor) |
|
|
|
.where(lccBasExecutor.envId.eq(envId)) |
|
|
|
.where(lccBasExecutor.isActive.eq(true)) |
|
|
|
.fetch(); |
|
|
|
|
|
|
|
for (var item : list) { |
|
|
|
String payload = Conv.asString(item.get("virtual_executor_payload")); |
|
|
|
/** |
|
|
|
* { |
|
|
|
* "id": "3", |
|
|
|
* "t": "cl2", |
|
|
|
* "v": true, |
|
|
|
* "dt": { |
|
|
|
* "ptrWidth": 1.5, |
|
|
|
* "ptrDepth": 1.5, |
|
|
|
* "ptrHeight": 1.98 |
|
|
|
* } |
|
|
|
* } |
|
|
|
*/ |
|
|
|
JsonWrapper jwPayload = new JsonWrapper(payload); |
|
|
|
if ("cl2".equals(jwPayload.asStr("t"))) { |
|
|
|
var eitem = new Cl2Item(this, (Map<String, Object>) jwPayload.getInnerMap()); |
|
|
|
this.executorItemMap.put(eitem.getId(), eitem); |
|
|
|
|
|
|
|
} else if ("clx".equals(jwPayload.asStr("t"))) { |
|
|
|
var eitem = new Cl2Item(this, (Map<String, Object>) jwPayload.getInnerMap()); |
|
|
|
this.executorItemMap.put(eitem.getId(), eitem); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
|