From 6b91dfe7a4ade6b22422ccda01fa8f83772b68a5 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期四, 08 五月 2025 15:28:50 +0800 Subject: [PATCH] 动态字段优化 --- rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java | 54 ++++++++++++++++++++++++++++++++---------------------- 1 files changed, 32 insertions(+), 22 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java index a81605c..b6844d9 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java @@ -271,9 +271,17 @@ if (!Objects.isNull(rcpt)) { try { if (Objects.isNull(rcpt.get("fieldsindex")) || StringUtils.isBlank(rcpt.get("fieldsindex").toString())) { + StringBuffer sb = new StringBuffer(); + if (!dto.getExtendFields().isEmpty()) { + dto.getExtendFields().forEach(field -> { + field.keySet().forEach(key -> { + sb.append(field.get(key)); + }); + }); + } + sb.append(dto.getAsnCode() + dto.getMatnr()); //鑾峰彇16浣島uid -// String uuid16 = Cools.md5(dto.getBarcode()); - String uuid16 = Cools.md5(dto.getId() + dto.getMatnr()); + String uuid16 = Cools.md5Chinese(sb.toString()); rcpt.put("index", uuid16); orderItem.setFieldsIndex(uuid16); } @@ -434,7 +442,9 @@ */ @Override public List<Fields> getDynamicFields() { - return fieldsMapper.selectList(new LambdaQueryWrapper<Fields>().eq(Fields::getFlagEnable, 1).eq(Fields::getStatus, 1)); + return fieldsMapper.selectList(new LambdaQueryWrapper<Fields>() + .eq(Fields::getFlagEnable, 1) + .eq(Fields::getStatus, 1).orderByAsc(Fields::getId)); } /** @@ -453,10 +463,10 @@ //TODO 鍚庣画闇�鏍规嵁绛栫暐閰嶇疆锛岃幏鍙栫粍鎷栨暟鎹�傚锛氭贩瑁咃紝鎸夋壒娆℃贩瑁呯瓑 LambdaQueryWrapper<WarehouseAreasItem> queryWrapper = new LambdaQueryWrapper<WarehouseAreasItem>() - .eq(!Cools.isEmpty(code), WarehouseAreasItem::getTrackCode, code) - .eq(!Cools.isEmpty(batch), WarehouseAreasItem::getSplrBatch, batch) - .eq(!Cools.isEmpty(matnrCode), WarehouseAreasItem::getMatnrCode, matnrCode) - .eq(!Cools.isEmpty(asnCode), WarehouseAreasItem::getAsnCode, asnCode); + .or().eq(!Cools.isEmpty(code), WarehouseAreasItem::getTrackCode, code) + .or().eq(!Cools.isEmpty(batch), WarehouseAreasItem::getSplrBatch, batch) + .or().eq(!Cools.isEmpty(matnrCode), WarehouseAreasItem::getMatnrCode, matnrCode) + .or().eq(!Cools.isEmpty(asnCode), WarehouseAreasItem::getAsnCode, asnCode); List<WarehouseAreasItem> list = warehouseAreasItemService.list(queryWrapper); list.removeIf(e -> e.getAnfme() <= e.getWorkQty()); return R.ok(list); @@ -878,24 +888,24 @@ .eq(WaitPakin::getBarcode, params.get("barcode").toString()) .eq(WaitPakin::getIoStatus, PakinIOStatus.PAKIN_IO_STATUS_DONE.val)); if (Objects.isNull(waitPakin)) { - return R.ok(new ArrayList<>()); + return R.error("鏈壘鍒拌瀹瑰櫒鐮佺殑缁勬墭鏄庣粏锛岃妫�鏌ョ粍鎵樼姸鎬�"); } List<WaitPakinItem> pakinItems = waitPakinItemService.list(new LambdaQueryWrapper<WaitPakinItem>() .eq(WaitPakinItem::getPakinId, waitPakin.getId())); - if (pakinItems.isEmpty()) { - return R.ok(new ArrayList<>()); - } - List<Long> list = pakinItems.stream().map(WaitPakinItem::getSource).collect(Collectors.toList()); - LambdaQueryWrapper<WarehouseAreasItem> queryWrapper = new LambdaQueryWrapper<WarehouseAreasItem>().in(WarehouseAreasItem::getId, list); - List<WarehouseAreasItem> warehouseAreasItems = warehouseAreasItemService.list(queryWrapper); - for (int i = 0; i < warehouseAreasItems.size(); i++) { - for (WaitPakinItem pakinItem : pakinItems) { - if (warehouseAreasItems.get(i).getId().equals(pakinItem.getSource())) { - warehouseAreasItems.get(i).setAnfme(pakinItem.getAnfme()); - } - } - } - return R.ok(warehouseAreasItems); +// if (pakinItems.isEmpty()) { +// return R.ok(new ArrayList<>()); +// } +// List<Long> list = pakinItems.stream().map(WaitPakinItem::getSource).collect(Collectors.toList()); +// LambdaQueryWrapper<WarehouseAreasItem> queryWrapper = new LambdaQueryWrapper<WarehouseAreasItem>().in(WarehouseAreasItem::getId, list); +// List<WarehouseAreasItem> warehouseAreasItems = warehouseAreasItemService.list(queryWrapper); +// for (int i = 0; i < warehouseAreasItems.size(); i++) { +// for (WaitPakinItem pakinItem : pakinItems) { +// if (warehouseAreasItems.get(i).getId().equals(pakinItem.getSource())) { +// warehouseAreasItems.get(i).setAnfme(pakinItem.getAnfme()); +// } +// } +// } + return R.ok(pakinItems); } -- Gitblit v1.9.1