Bladeren bron

修复产品名称不能为空的问题

zhou-hao 5 jaren geleden
bovenliggende
commit
c842317d10

+ 4 - 1
jetlinks-manager/device-manager/src/main/java/org/jetlinks/community/device/web/DeviceInstanceController.java

@@ -369,9 +369,12 @@ public class DeviceInstanceController implements
             .flatMap(DeviceProductOperator::getMetadata)
             .map(metadata -> new DeviceWrapper(metadata.getTags()))
             .defaultIfEmpty(DeviceWrapper.empty)
+            .zipWith(productService.findById(productId))
             .flatMapMany(wrapper -> importExportService
                 .getInputStream(fileUrl)
-                .flatMapMany(inputStream -> ReactorExcel.read(inputStream, FileUtils.getExtension(fileUrl), wrapper)))
+                .flatMapMany(inputStream -> ReactorExcel.read(inputStream, FileUtils.getExtension(fileUrl), wrapper.getT1()))
+                .doOnNext(info -> info.setProductName(wrapper.getT2().getName()))
+            )
             .map(info -> {
                 DeviceInstanceEntity entity = FastBeanCopier.copy(info, new DeviceInstanceEntity());
                 entity.setProductId(productId);