diff --git a/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java b/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java index 4dec1f26..bc322eab 100644 --- a/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java +++ b/blade-common/src/main/java/org/springblade/common/constant/LauncherConstant.java @@ -31,8 +31,8 @@ public interface LauncherConstant { /** * nacos dev 地址 */ -// String NACOS_DEV_ADDR = "192.168.249.27:8848"; - String NACOS_DEV_ADDR = "127.0.0.1:8848"; + String NACOS_DEV_ADDR = "192.168.249.27:8848"; +// String NACOS_DEV_ADDR = "127.0.0.1:8848"; /**R * nacos prod 地址 diff --git a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/constant/TaskingConstant.java b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/constant/TaskingConstant.java index 5b1807b5..c7cdf86e 100644 --- a/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/constant/TaskingConstant.java +++ b/blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/dashboard/constant/TaskingConstant.java @@ -121,4 +121,10 @@ public interface TaskingConstant { * 是否是检验工序 */ Integer IS_CHECKOUT = 1; + + /** + * 工艺员角色名称 + */ + String RB_CREAT = "rb_craft"; + String SJ_CREAT = "sj_craft"; } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/DsTaskingServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/DsTaskingServiceImpl.java index 3bbb9c1f..733b4132 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/DsTaskingServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/dashboard/service/impl/DsTaskingServiceImpl.java @@ -47,6 +47,7 @@ import org.springblade.desk.dashboard.pojo.dto.DsTaskingDTO; import org.springblade.desk.dashboard.pojo.entity.*; import org.springblade.desk.dashboard.pojo.vo.*; import org.springblade.desk.dashboard.service.*; +import org.springblade.desk.logistics.pojo.vo.TaskVO; import org.springblade.desk.order.pojo.entity.MoldDemand; import org.springblade.desk.order.pojo.entity.YieldOrder; import org.springblade.desk.order.service.IMoldDemandService; @@ -487,27 +488,12 @@ public class DsTaskingServiceImpl extends BaseServiceImpl dsTaskingList = baseMapper.selectDisposeList(page, dsTasking); if(!CollectionUtils.isEmpty(dsTaskingList)){ for (DsTaskingVO dsTaskingVO : dsTaskingList) { - if(org.apache.commons.lang3.StringUtils.isNotEmpty(dsTaskingVO.getCraftMan())){ - // 安全获取用户名称 - try { - R userInfoR = userClient.userInfo(Func.toLong(dsTaskingVO.getCraftMan())); - if (userInfoR != null && userInfoR.getData() != null) { - User user = userInfoR.getData().getUser(); - if (user != null) { - dsTaskingVO.setCraftMan(user.getRealName()); - } - } - } catch (Exception e) { - log.error("获取用户信息失败, userId: {}",dsTaskingVO.getCraftMan(), e); - } - } - String partCode = dsTaskingVO.getPartCode(); String version = dsTaskingVO.getVersion(); DsPartEntity partEntity = partService.selectDsPartByPatCodeAndVersion(partCode,version); @@ -565,8 +551,49 @@ public class DsTaskingServiceImpl extends BaseServiceImpl userIdSet = dsTaskingList.stream() + .map(DsTaskingVO::getCraftMan) + .filter(Objects::nonNull) + .map(String::valueOf) + .collect(Collectors.toSet()); + + if (com.baomidou.mybatisplus.core.toolkit.CollectionUtils.isNotEmpty(userIdSet)) { + // 批量查询用户信息 + String userIds = userIdSet.stream() + .map(String::valueOf) + .collect(Collectors.joining(",")); + try { + List userList = userClient.userListByIds(userIds); + if (com.baomidou.mybatisplus.core.toolkit.CollectionUtils.isNotEmpty(userList)) { + Map userMap = userList.stream() + .filter(user -> user != null && user.getId() != null) + .collect(Collectors.toMap( + User::getId, + user -> user, + (existing, replacement) -> existing + )); + + // 批量设置用户名称 + for (DsTaskingVO dsTaskingVO : dsTaskingList) { + String craftMan = dsTaskingVO.getCraftMan(); + if (craftMan != null) { + User user = userMap.get(Func.toLong(craftMan)); + if (user != null) { + dsTaskingVO.setCraftMan(user.getName()); + } + } + } + } + } catch (Exception e) { + log.error("批量获取用户信息失败, userIds: {}", userIds, e); + } + } + } + return page.setRecords(dsTaskingList); } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/controller/OrderBindController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/controller/OrderBindController.java index 301b9f8a..7d51f97a 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/controller/OrderBindController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/controller/OrderBindController.java @@ -102,7 +102,7 @@ public class OrderBindController { public R getBoxbarcodeDetails(@RequestParam String boxBarcode, @RequestParam boolean isDetail) { - return iOrderBoxService.getBoxbarcodeDetails(boxBarcode,isDetail); + return iOrderBoxService.getBoxbarcodeDetails(boxBarcode,isDetail,null); } } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/service/IOrderBoxService.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/service/IOrderBoxService.java index 3dd25813..76b681ca 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/service/IOrderBoxService.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/service/IOrderBoxService.java @@ -51,7 +51,7 @@ public interface IOrderBoxService { R getQuantityLocation(String boxBarcode); - R getBoxbarcodeDetails( String boxBarcode,boolean isDetail); + R getBoxbarcodeDetails( String boxBarcode,boolean isDetail,Long taskId); R getStationNameBoxBarcode(String stationCode); diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/service/impl/IOrderBoxServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/service/impl/IOrderBoxServiceImpl.java index 18fce117..cebb60bd 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/service/impl/IOrderBoxServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/service/impl/IOrderBoxServiceImpl.java @@ -1092,13 +1092,11 @@ public class IOrderBoxServiceImpl implements IOrderBoxService { * 查询箱条码详细信息 *

查询箱条码绑定的订单详情、总重量、数量、工位区域等信息

* - * - * @param orderBindId 订单绑定表ID * @param boxBarcode 箱条码 * @return R 箱条码详细信息 */ @Override - public R getBoxbarcodeDetails(String boxBarcode,boolean isDetail) { + public R getBoxbarcodeDetails(String boxBarcode,boolean isDetail,Long taskId) { List orderBindList = null; String bindBoxBarcode = null; @@ -1107,6 +1105,7 @@ public class IOrderBoxServiceImpl implements IOrderBoxService { orderBindList = orderBindService.list( Wrappers.lambdaQuery(OrderBind.class) .eq(OrderBind::getBoxBarcode, boxBarcode) + .eq(taskId != null, OrderBind::getTaskId, taskId) ); bindBoxBarcode = boxBarcode; @@ -1287,7 +1286,7 @@ public class IOrderBoxServiceImpl implements IOrderBoxService { } // 3. 查询最新任务关联的箱条码详情并填充VO - R boxbarcodeDetailsR = getBoxbarcodeDetails(taskList.get(0).getBoxBarcode(),false); + R boxbarcodeDetailsR = getBoxbarcodeDetails(taskList.get(0).getBoxBarcode(),false,null); if (!boxbarcodeDetailsR.isSuccess()) { return boxbarcodeDetailsR; } diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/service/impl/TaskServiceImpl.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/service/impl/TaskServiceImpl.java index 0b932408..e7ddfbae 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/service/impl/TaskServiceImpl.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/service/impl/TaskServiceImpl.java @@ -186,7 +186,7 @@ public class TaskServiceImpl extends BaseServiceImpl implement // 任务对应的物料 - 处理空指针 if (StringUtils.isNotEmpty(boxBarcode)) { - R boxbarcodeDetailsR = orderBoxService.getBoxbarcodeDetails(boxBarcode,true); + R boxbarcodeDetailsR = orderBoxService.getBoxbarcodeDetails(boxBarcode,true,taskId); if (boxbarcodeDetailsR != null && boxbarcodeDetailsR.isSuccess() && boxbarcodeDetailsR.getData() != null) { taskDetailsVO.setBoxbarcodeDetailsVO((BoxbarcodeDetailsVO) boxbarcodeDetailsR.getData()); }