From 4d6cf92e30c2c7f81f8cc31dfb7559a745782ec1 Mon Sep 17 00:00:00 2001 From: lyh <925863403@qq.com> Date: 星期一, 23 六月 2025 13:24:07 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProcessPackageStrategy.java | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 42 insertions(+), 0 deletions(-) diff --git a/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProcessPackageStrategy.java b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProcessPackageStrategy.java new file mode 100644 index 0000000..b6cdfd5 --- /dev/null +++ b/lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProcessPackageStrategy.java @@ -0,0 +1,42 @@ +package org.jeecg.modules.dnc.service.impl; + +import org.jeecg.modules.dnc.constant.DocAttributionTypeEnum; +import org.jeecg.modules.dnc.dto.TransferPackage; +import org.jeecg.modules.dnc.entity.DeviceType; +import org.jeecg.modules.dnc.entity.DocRelative; +import org.jeecg.modules.dnc.entity.ProcessStream; +import org.jeecg.modules.dnc.mapper.DeviceTypeMapper; +import org.jeecg.modules.dnc.mapper.DocRelativeMapper; +import org.jeecg.modules.dnc.mapper.ProcessStreamMapper; +import org.jeecg.modules.dnc.service.DataPackageStrategy; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +@Service +public class ProcessPackageStrategy implements DataPackageStrategy { + @Autowired + private ProcessStreamMapper processMapper; + @Autowired + private DeviceTypeMapper deviceTypeMapper; + @Autowired + private FullHierarchyTraceService traceService; + @Autowired + private DocRelativeMapper docRelativeMapper; + + @Override + public TransferPackage packageData(String relativeId) { + DocRelative docRelative=docRelativeMapper.selectById(relativeId); + DeviceType deviceType=deviceTypeMapper.selectById(docRelative.getAttributionId()); + if (deviceType!=null&&deviceType.getAttributionType().equals(DocAttributionTypeEnum.PROCESS.getCode())) { + ProcessStream process = processMapper.selectById(deviceType.getAttributionId()); + if (process == null) { + throw new IllegalArgumentException("璁惧绫诲搴旂殑宸ュ簭涓嶅瓨鍦�: " + deviceType.getDeviceManagementId()); + } + } + return TransferPackage.builder() + .dataType(TransferPackage.DataType.PROCESS) + .docRelative(docRelative) + .traceChain(traceService.traceFromProcess(docRelative)) + .build(); + } +} -- Gitblit v1.9.3