Quellcode durchsuchen

Merge remote-tracking branch 'origin/master'

caozj vor 2 Jahren
Ursprung
Commit
d69ba740b5
81 geänderte Dateien mit 1168 neuen und 213 gelöschten Zeilen
  1. 7 7
      hx-common/code-generator/src/main/java/com/fjhx/generator/CodeGenerator.java
  2. 0 1
      hx-common/code-generator/src/main/resources/codeTemplates/serviceImpl.java.vm
  3. 39 9
      hx-common/hx-tool/src/main/java/com/fjhx/base/BaseService.java
  4. 30 0
      hx-service-api/iot-production-api/src/main/java/com/fjhx/entity/tda/TdaApplication.java
  5. 49 0
      hx-service-api/iot-production-api/src/main/java/com/fjhx/entity/tda/TdaDevice.java
  6. 70 0
      hx-service-api/iot-production-api/src/main/java/com/fjhx/entity/tda/TdaProduct.java
  7. 17 0
      hx-service-api/iot-production-api/src/main/java/com/fjhx/params/tda/TdaApplicationEx.java
  8. 17 0
      hx-service-api/iot-production-api/src/main/java/com/fjhx/params/tda/TdaApplicationVo.java
  9. 25 0
      hx-service-api/iot-production-api/src/main/java/com/fjhx/params/tda/TdaDeviceEx.java
  10. 17 0
      hx-service-api/iot-production-api/src/main/java/com/fjhx/params/tda/TdaDeviceVo.java
  11. 20 0
      hx-service-api/iot-production-api/src/main/java/com/fjhx/params/tda/TdaProductEx.java
  12. 17 0
      hx-service-api/iot-production-api/src/main/java/com/fjhx/params/tda/TdaProductVo.java
  13. 2 2
      hx-service/iot-management/src/main/java/com/fjhx/controller/bom/BomController.java
  14. 2 2
      hx-service/iot-management/src/main/java/com/fjhx/controller/bom/BomDetailsController.java
  15. 2 2
      hx-service/iot-management/src/main/java/com/fjhx/controller/material/MaterialExController.java
  16. 2 2
      hx-service/iot-management/src/main/java/com/fjhx/controller/product/ProductExController.java
  17. 2 2
      hx-service/iot-management/src/main/java/com/fjhx/controller/production/ProductionLineController.java
  18. 2 2
      hx-service/iot-management/src/main/java/com/fjhx/controller/production/ProductionWorkshopController.java
  19. 2 2
      hx-service/iot-management/src/main/java/com/fjhx/controller/working/WorkingProcedureController.java
  20. 2 2
      hx-service/iot-management/src/main/java/com/fjhx/controller/working/WorkingRouteController.java
  21. 2 2
      hx-service/iot-management/src/main/java/com/fjhx/controller/working/WorkingRouteProcedureController.java
  22. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/bom/BomDetailsMapper.java
  23. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/bom/BomDetailsMapper.xml
  24. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/bom/BomMapper.java
  25. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/bom/BomMapper.xml
  26. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/material/MaterialExMapper.java
  27. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/material/MaterialExMapper.xml
  28. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/product/ProductExMapper.java
  29. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/product/ProductExMapper.xml
  30. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/production/ProductionLineMapper.java
  31. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/production/ProductionLineMapper.xml
  32. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/production/ProductionWorkshopMapper.java
  33. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/production/ProductionWorkshopMapper.xml
  34. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/working/WorkingProcedureMapper.java
  35. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/working/WorkingProcedureMapper.xml
  36. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/working/WorkingRouteMapper.java
  37. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/working/WorkingRouteMapper.xml
  38. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/working/WorkingRouteProcedureMapper.java
  39. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/mapper/working/WorkingRouteProcedureMapper.xml
  40. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/service/bom/BomDetailsService.java
  41. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/service/bom/BomService.java
  42. 3 3
      hx-service/iot-management/src/main/java/com/fjhx/service/bom/impl/BomDetailsServiceImpl.java
  43. 3 3
      hx-service/iot-management/src/main/java/com/fjhx/service/bom/impl/BomServiceImpl.java
  44. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/service/material/MaterialExService.java
  45. 3 3
      hx-service/iot-management/src/main/java/com/fjhx/service/material/impl/MaterialExServiceImpl.java
  46. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/service/product/ProductExService.java
  47. 3 3
      hx-service/iot-management/src/main/java/com/fjhx/service/product/impl/ProductExServiceImpl.java
  48. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/service/production/ProductionLineService.java
  49. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/service/production/ProductionWorkshopService.java
  50. 3 3
      hx-service/iot-management/src/main/java/com/fjhx/service/production/impl/ProductionLineServiceImpl.java
  51. 3 3
      hx-service/iot-management/src/main/java/com/fjhx/service/production/impl/ProductionWorkshopServiceImpl.java
  52. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/service/working/WorkingProcedureService.java
  53. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/service/working/WorkingRouteProcedureService.java
  54. 1 1
      hx-service/iot-management/src/main/java/com/fjhx/service/working/WorkingRouteService.java
  55. 3 3
      hx-service/iot-management/src/main/java/com/fjhx/service/working/impl/WorkingProcedureServiceImpl.java
  56. 3 3
      hx-service/iot-management/src/main/java/com/fjhx/service/working/impl/WorkingRouteProcedureServiceImpl.java
  57. 5 7
      hx-service/iot-management/src/main/java/com/fjhx/service/working/impl/WorkingRouteServiceImpl.java
  58. 10 0
      hx-service/iot-production/pom.xml
  59. 3 3
      hx-service/iot-production/src/main/java/com/fjhx/config/IoTDAConfig.java
  60. 49 0
      hx-service/iot-production/src/main/java/com/fjhx/config/MybatisConfig.java
  61. 63 0
      hx-service/iot-production/src/main/java/com/fjhx/controller/tda/TdaApplicationController.java
  62. 57 0
      hx-service/iot-production/src/main/java/com/fjhx/controller/tda/TdaDeviceController.java
  63. 76 0
      hx-service/iot-production/src/main/java/com/fjhx/controller/tda/TdaProductController.java
  64. 21 0
      hx-service/iot-production/src/main/java/com/fjhx/mapper/tda/TdaApplicationMapper.java
  65. 13 0
      hx-service/iot-production/src/main/java/com/fjhx/mapper/tda/TdaApplicationMapper.xml
  66. 22 0
      hx-service/iot-production/src/main/java/com/fjhx/mapper/tda/TdaDeviceMapper.java
  67. 18 0
      hx-service/iot-production/src/main/java/com/fjhx/mapper/tda/TdaDeviceMapper.xml
  68. 22 0
      hx-service/iot-production/src/main/java/com/fjhx/mapper/tda/TdaProductMapper.java
  69. 19 0
      hx-service/iot-production/src/main/java/com/fjhx/mapper/tda/TdaProductMapper.xml
  70. 31 0
      hx-service/iot-production/src/main/java/com/fjhx/service/tda/TdaApplicationService.java
  71. 30 0
      hx-service/iot-production/src/main/java/com/fjhx/service/tda/TdaDeviceService.java
  72. 30 0
      hx-service/iot-production/src/main/java/com/fjhx/service/tda/TdaProductService.java
  73. 95 0
      hx-service/iot-production/src/main/java/com/fjhx/service/tda/impl/TdaApplicationServiceImpl.java
  74. 100 0
      hx-service/iot-production/src/main/java/com/fjhx/service/tda/impl/TdaDeviceServiceImpl.java
  75. 111 0
      hx-service/iot-production/src/main/java/com/fjhx/service/tda/impl/TdaProductServiceImpl.java
  76. 0 53
      hx-service/iot-production/src/main/java/com/fjhx/test/ListDevicesSolution.java
  77. 0 53
      hx-service/iot-production/src/main/java/com/fjhx/test/ZipTest.java
  78. 3 3
      hx-service/iot-production/src/main/java/com/fjhx/utils/IoTDAUtil.java
  79. 6 0
      hx-service/pom.xml
  80. 1 1
      hx-service/storage/src/main/java/com/fjhx/service/material/impl/MaterialServiceImpl.java
  81. 6 7
      hx-service/storage/src/main/java/com/fjhx/stock/service/impl/StockWaterServiceImpl.java

+ 7 - 7
hx-common/code-generator/src/main/java/com/fjhx/generator/CodeGenerator.java

@@ -80,13 +80,13 @@ public class CodeGenerator {
         // 包配置
         PackageConfig pc = new PackageConfig();
         pc.setParent(parent);// 包路径
-        pc.setModuleName(moduleName); //模块名
-        pc.setService("service");
-        pc.setServiceImpl("service.impl");
-        pc.setMapper("mapper");
-        pc.setXml("mapper");
-        pc.setEntity("entity");
-        pc.setController("controller");
+//        pc.setModuleName(moduleName); //模块名
+        pc.setService("service." + moduleName);
+        pc.setServiceImpl("service." + moduleName + ".impl");
+        pc.setMapper("mapper." + moduleName);
+        pc.setXml("mapper." + moduleName);
+//        pc.setEntity("entity");
+        pc.setController("controller." + moduleName);
         mpg.setPackageInfo(pc);
 
         // 策略配置

+ 0 - 1
hx-common/code-generator/src/main/resources/codeTemplates/serviceImpl.java.vm

@@ -30,7 +30,6 @@ public class ${table.serviceImplName} extends ${superServiceImplClass}<${table.m
         QueryWrapper<${entity}> wrapper = Wrappers.query();
 
         WrapperUtil.init(condition, wrapper)
-                .eqTenantId()
                 .createTimeDesc();
 
         Page<${entity}> page = page(condition, wrapper);

+ 39 - 9
hx-common/hx-tool/src/main/java/com/fjhx/base/BaseService.java

@@ -1,5 +1,6 @@
 package com.fjhx.base;
 
+import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -8,10 +9,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import org.springblade.core.secure.utils.AuthUtil;
 
-import java.util.Collection;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
+import java.util.stream.Collectors;
 
 
 public interface BaseService<T> extends IService<T> {
@@ -20,13 +19,24 @@ public interface BaseService<T> extends IService<T> {
      * 获取分页
      */
     default Page<T> createPage(Map<String, String> condition) {
-        String pageNumStr = condition.get("pageNum");
-        String pageSizeStr = condition.get("pageSize");
+        return new Page<>(getCurrent(condition), getSize(condition));
+    }
+
+    /**
+     * 获取分页
+     */
+    default Page<Map<String, Object>> createPageMap(Map<String, String> condition) {
+        return new Page<>(getCurrent(condition), getSize(condition));
+    }
 
-        int pageNum = ObjectUtil.isEmpty(pageNumStr) ? 1 : Integer.parseInt(pageNumStr);
-        int pageSize = ObjectUtil.isEmpty(pageSizeStr) ? 10 : Integer.parseInt(pageSizeStr);
+    default int getCurrent(Map<String, String> condition) {
+        String currentStr = condition.get("pageNum");
+        return ObjectUtil.isEmpty(currentStr) ? 1 : Integer.parseInt(currentStr);
+    }
 
-        return new Page<>(pageNum, pageSize);
+    default int getSize(Map<String, String> condition) {
+        String sizeStr = condition.get("pageSize");
+        return ObjectUtil.isEmpty(sizeStr) ? 10 : Integer.parseInt(sizeStr);
     }
 
     /**
@@ -42,6 +52,26 @@ public interface BaseService<T> extends IService<T> {
     }
 
     /**
+     * 执行分页查询
+     *
+     * @param condition    条件
+     * @param queryWrapper wrapper
+     * @return 分页后的对象
+     */
+    default Page<Map<String, Object>> pageMaps(Map<String, String> condition, Wrapper<T> queryWrapper) {
+        Page<Map<String, Object>> page = createPageMap(condition);
+        return pageMaps(page, queryWrapper);
+    }
+
+    /**
+     * 获取添加过的某个字段的去重列表
+     */
+    default List<?> getDistinctList(SFunction<T, ?> column) {
+        return list(Wrappers.<T>lambdaQuery().select(column))
+                .stream().map(column).filter(Objects::nonNull).distinct().collect(Collectors.toList());
+    }
+
+    /**
      * 条件查询
      */
     default List<T> list(SFunction<T, ?> column, Object val) {

+ 30 - 0
hx-service-api/iot-production-api/src/main/java/com/fjhx/entity/tda/TdaApplication.java

@@ -0,0 +1,30 @@
+package com.fjhx.entity.tda;
+
+import com.fjhx.base.BaseEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ *
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class TdaApplication extends BaseEntity {
+
+
+    /**
+     * 华为tda资源空间id
+     */
+    private String appId;
+
+    /**
+     * 华为tda资源空间名称
+     */
+    private String appName;
+
+}

+ 49 - 0
hx-service-api/iot-production-api/src/main/java/com/fjhx/entity/tda/TdaDevice.java

@@ -0,0 +1,49 @@
+package com.fjhx.entity.tda;
+
+import com.fjhx.base.BaseEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ *
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class TdaDevice extends BaseEntity {
+
+    /**
+     * 产品表id
+     */
+    private Long tdaProductId;
+
+    /**
+     * 华为tda产品id
+     */
+    private String productId;
+
+    /**
+     * 设备节点(设备标识)
+     */
+    private String nodeId;
+
+    /**
+     * 设备名称
+     */
+    private String deviceName;
+
+    /**
+     * 设备id
+     */
+    private String deviceId;
+
+    /**
+     * 设备密匙
+     */
+    private String secret;
+
+}

+ 70 - 0
hx-service-api/iot-production-api/src/main/java/com/fjhx/entity/tda/TdaProduct.java

@@ -0,0 +1,70 @@
+package com.fjhx.entity.tda;
+
+import com.fjhx.base.BaseEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tool.utils.ObjectUtil;
+
+/**
+ * <p>
+ *
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class TdaProduct extends BaseEntity {
+
+
+    /**
+     * 资源空间表id
+     */
+    private Long tdaApplicationId;
+
+    /**
+     * 华为tda资源空间id
+     */
+    private String appId;
+
+    /**
+     * 华为tda产品id
+     */
+    private String productId;
+
+    /**
+     * 华为tda产品名称
+     */
+    private String name;
+
+    /**
+     * 华为tda产品设备类型
+     */
+    private String deviceType;
+
+    /**
+     * 华为tda产品厂商名称
+     */
+    private String manufacturerName;
+
+    /**
+     * 协议类型 默认MQTT
+     */
+    private String protocolType;
+
+    /**
+     * 数据格式 默认json
+     */
+    private String dataFormat;
+
+    public String getProtocolType() {
+        if (ObjectUtil.isEmpty(protocolType)) return "MQTT";
+        return protocolType;
+    }
+
+    public String getDataFormat() {
+        if (ObjectUtil.isEmpty(dataFormat)) return "json";
+        return dataFormat;
+    }
+}

+ 17 - 0
hx-service-api/iot-production-api/src/main/java/com/fjhx/params/tda/TdaApplicationEx.java

@@ -0,0 +1,17 @@
+package com.fjhx.params.tda;
+
+import com.fjhx.entity.tda.TdaApplication;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class TdaApplicationEx extends TdaApplication {
+
+}

+ 17 - 0
hx-service-api/iot-production-api/src/main/java/com/fjhx/params/tda/TdaApplicationVo.java

@@ -0,0 +1,17 @@
+package com.fjhx.params.tda;
+
+import com.fjhx.entity.tda.TdaApplication;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class TdaApplicationVo extends TdaApplication {
+
+}

+ 25 - 0
hx-service-api/iot-production-api/src/main/java/com/fjhx/params/tda/TdaDeviceEx.java

@@ -0,0 +1,25 @@
+package com.fjhx.params.tda;
+
+import com.fjhx.entity.tda.TdaDevice;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author ${author}
+ * @since 2022-07-21
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class TdaDeviceEx extends TdaDevice {
+
+    /**
+     * 资源空间名称
+     */
+    private String applicationName;
+
+    /**
+     * 产品名称
+     */
+    private String productName;
+
+}

+ 17 - 0
hx-service-api/iot-production-api/src/main/java/com/fjhx/params/tda/TdaDeviceVo.java

@@ -0,0 +1,17 @@
+package com.fjhx.params.tda;
+
+import com.fjhx.entity.tda.TdaDevice;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class TdaDeviceVo extends TdaDevice {
+
+}

+ 20 - 0
hx-service-api/iot-production-api/src/main/java/com/fjhx/params/tda/TdaProductEx.java

@@ -0,0 +1,20 @@
+package com.fjhx.params.tda;
+
+import com.fjhx.entity.tda.TdaProduct;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @author ${author}
+ * @since 2022-07-21
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class TdaProductEx extends TdaProduct {
+
+    /**
+     * 资源空间名称
+     */
+    private String appName;
+
+}

+ 17 - 0
hx-service-api/iot-production-api/src/main/java/com/fjhx/params/tda/TdaProductVo.java

@@ -0,0 +1,17 @@
+package com.fjhx.params.tda;
+
+import com.fjhx.entity.tda.TdaProduct;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class TdaProductVo extends TdaProduct {
+
+}

+ 2 - 2
hx-service/iot-management/src/main/java/com/fjhx/bom/controller/BomController.java → hx-service/iot-management/src/main/java/com/fjhx/controller/bom/BomController.java

@@ -1,7 +1,7 @@
-package com.fjhx.bom.controller;
+package com.fjhx.controller.bom;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.fjhx.bom.service.BomService;
+import com.fjhx.service.bom.BomService;
 import com.fjhx.params.bom.BomEx;
 import com.fjhx.params.bom.BomVo;
 import org.springblade.core.tool.api.R;

+ 2 - 2
hx-service/iot-management/src/main/java/com/fjhx/bom/controller/BomDetailsController.java → hx-service/iot-management/src/main/java/com/fjhx/controller/bom/BomDetailsController.java

@@ -1,7 +1,7 @@
-package com.fjhx.bom.controller;
+package com.fjhx.controller.bom;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.fjhx.bom.service.BomDetailsService;
+import com.fjhx.service.bom.BomDetailsService;
 import com.fjhx.entity.bom.BomDetails;
 import com.fjhx.params.bom.BomDetailsVo;
 import org.springblade.core.tool.api.R;

+ 2 - 2
hx-service/iot-management/src/main/java/com/fjhx/material/controller/MaterialExController.java → hx-service/iot-management/src/main/java/com/fjhx/controller/material/MaterialExController.java

@@ -1,7 +1,7 @@
-package com.fjhx.material.controller;
+package com.fjhx.controller.material;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.fjhx.material.service.MaterialExService;
+import com.fjhx.service.material.MaterialExService;
 import com.fjhx.service.MaterialService;
 import org.springblade.core.tool.api.R;
 import org.springframework.beans.factory.annotation.Autowired;

+ 2 - 2
hx-service/iot-management/src/main/java/com/fjhx/product/controller/ProductExController.java → hx-service/iot-management/src/main/java/com/fjhx/controller/product/ProductExController.java

@@ -1,7 +1,7 @@
-package com.fjhx.product.controller;
+package com.fjhx.controller.product;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.fjhx.product.service.ProductExService;
+import com.fjhx.service.product.ProductExService;
 import com.fjhx.service.ProductService;
 import org.springblade.core.tool.api.R;
 import org.springframework.beans.factory.annotation.Autowired;

+ 2 - 2
hx-service/iot-management/src/main/java/com/fjhx/production/controller/ProductionLineController.java → hx-service/iot-management/src/main/java/com/fjhx/controller/production/ProductionLineController.java

@@ -1,9 +1,9 @@
-package com.fjhx.production.controller;
+package com.fjhx.controller.production;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.params.production.ProductionLineEx;
 import com.fjhx.params.production.ProductionLineVo;
-import com.fjhx.production.service.ProductionLineService;
+import com.fjhx.service.production.ProductionLineService;
 import org.springblade.core.tool.api.R;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PostMapping;

+ 2 - 2
hx-service/iot-management/src/main/java/com/fjhx/production/controller/ProductionWorkshopController.java → hx-service/iot-management/src/main/java/com/fjhx/controller/production/ProductionWorkshopController.java

@@ -1,10 +1,10 @@
-package com.fjhx.production.controller;
+package com.fjhx.controller.production;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.entity.production.ProductionWorkshop;
 import com.fjhx.params.production.ProductionWorkshopEx;
 import com.fjhx.params.production.ProductionWorkshopVo;
-import com.fjhx.production.service.ProductionWorkshopService;
+import com.fjhx.service.production.ProductionWorkshopService;
 import org.springblade.core.tool.api.R;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PostMapping;

+ 2 - 2
hx-service/iot-management/src/main/java/com/fjhx/working/controller/WorkingProcedureController.java → hx-service/iot-management/src/main/java/com/fjhx/controller/working/WorkingProcedureController.java

@@ -1,9 +1,9 @@
-package com.fjhx.working.controller;
+package com.fjhx.controller.working;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.entity.working.WorkingProcedure;
 import com.fjhx.params.working.WorkingProcedureVo;
-import com.fjhx.working.service.WorkingProcedureService;
+import com.fjhx.service.working.WorkingProcedureService;
 import org.springblade.core.tool.api.R;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PostMapping;

+ 2 - 2
hx-service/iot-management/src/main/java/com/fjhx/working/controller/WorkingRouteController.java → hx-service/iot-management/src/main/java/com/fjhx/controller/working/WorkingRouteController.java

@@ -1,9 +1,9 @@
-package com.fjhx.working.controller;
+package com.fjhx.controller.working;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.params.working.WorkingRouteEx;
 import com.fjhx.params.working.WorkingRouteVo;
-import com.fjhx.working.service.WorkingRouteService;
+import com.fjhx.service.working.WorkingRouteService;
 import org.springblade.core.tool.api.R;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PostMapping;

+ 2 - 2
hx-service/iot-management/src/main/java/com/fjhx/working/controller/WorkingRouteProcedureController.java → hx-service/iot-management/src/main/java/com/fjhx/controller/working/WorkingRouteProcedureController.java

@@ -1,10 +1,10 @@
-package com.fjhx.working.controller;
+package com.fjhx.controller.working;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.springblade.core.tool.api.R;
 import com.fjhx.entity.working.WorkingRouteProcedure;
 import com.fjhx.params.working.WorkingRouteProcedureVo;
-import com.fjhx.working.service.WorkingRouteProcedureService;
+import com.fjhx.service.working.WorkingRouteProcedureService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/bom/mapper/BomDetailsMapper.java → hx-service/iot-management/src/main/java/com/fjhx/mapper/bom/BomDetailsMapper.java

@@ -1,4 +1,4 @@
-package com.fjhx.bom.mapper;
+package com.fjhx.mapper.bom;
 
 import com.fjhx.entity.bom.BomDetails;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/bom/mapper/BomDetailsMapper.xml → hx-service/iot-management/src/main/java/com/fjhx/mapper/bom/BomDetailsMapper.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.fjhx.bom.mapper.BomDetailsMapper">
+<mapper namespace="com.fjhx.mapper.bom.BomDetailsMapper">
 
 </mapper>

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/bom/mapper/BomMapper.java → hx-service/iot-management/src/main/java/com/fjhx/mapper/bom/BomMapper.java

@@ -1,4 +1,4 @@
-package com.fjhx.bom.mapper;
+package com.fjhx.mapper.bom;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/bom/mapper/BomMapper.xml → hx-service/iot-management/src/main/java/com/fjhx/mapper/bom/BomMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.fjhx.bom.mapper.BomMapper">
+<mapper namespace="com.fjhx.mapper.bom.BomMapper">
 
     <select id="getPage" resultType="com.fjhx.params.bom.BomEx">
         select b.id,

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/material/mapper/MaterialExMapper.java → hx-service/iot-management/src/main/java/com/fjhx/mapper/material/MaterialExMapper.java

@@ -1,4 +1,4 @@
-package com.fjhx.material.mapper;
+package com.fjhx.mapper.material;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/material/mapper/MaterialExMapper.xml → hx-service/iot-management/src/main/java/com/fjhx/mapper/material/MaterialExMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.fjhx.material.mapper.MaterialExMapper">
+<mapper namespace="com.fjhx.mapper.material.MaterialExMapper">
 
     <select id="getPage" resultType="java.util.LinkedHashMap">
         select m.id,

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/product/mapper/ProductExMapper.java → hx-service/iot-management/src/main/java/com/fjhx/mapper/product/ProductExMapper.java

@@ -1,4 +1,4 @@
-package com.fjhx.product.mapper;
+package com.fjhx.mapper.product;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/product/mapper/ProductExMapper.xml → hx-service/iot-management/src/main/java/com/fjhx/mapper/product/ProductExMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.fjhx.product.mapper.ProductExMapper">
+<mapper namespace="com.fjhx.mapper.product.ProductExMapper">
 
     <select id="getPage" resultType="java.util.LinkedHashMap">
         select p.id,

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/production/mapper/ProductionLineMapper.java → hx-service/iot-management/src/main/java/com/fjhx/mapper/production/ProductionLineMapper.java

@@ -1,4 +1,4 @@
-package com.fjhx.production.mapper;
+package com.fjhx.mapper.production;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/production/mapper/ProductionLineMapper.xml → hx-service/iot-management/src/main/java/com/fjhx/mapper/production/ProductionLineMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.fjhx.production.mapper.ProductionLineMapper">
+<mapper namespace="com.fjhx.mapper.production.ProductionLineMapper">
 
     <select id="getPage" resultType="com.fjhx.params.production.ProductionLineEx">
         select pl.id,

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/production/mapper/ProductionWorkshopMapper.java → hx-service/iot-management/src/main/java/com/fjhx/mapper/production/ProductionWorkshopMapper.java

@@ -1,4 +1,4 @@
-package com.fjhx.production.mapper;
+package com.fjhx.mapper.production;
 
 import com.fjhx.entity.production.ProductionWorkshop;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/production/mapper/ProductionWorkshopMapper.xml → hx-service/iot-management/src/main/java/com/fjhx/mapper/production/ProductionWorkshopMapper.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.fjhx.production.mapper.ProductionWorkshopMapper">
+<mapper namespace="com.fjhx.mapper.production.ProductionWorkshopMapper">
 
 </mapper>

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/working/mapper/WorkingProcedureMapper.java → hx-service/iot-management/src/main/java/com/fjhx/mapper/working/WorkingProcedureMapper.java

@@ -1,4 +1,4 @@
-package com.fjhx.working.mapper;
+package com.fjhx.mapper.working;
 
 import com.fjhx.entity.working.WorkingProcedure;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/working/mapper/WorkingProcedureMapper.xml → hx-service/iot-management/src/main/java/com/fjhx/mapper/working/WorkingProcedureMapper.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.fjhx.working.mapper.WorkingProcedureMapper">
+<mapper namespace="com.fjhx.mapper.working.WorkingProcedureMapper">
 
 </mapper>

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/working/mapper/WorkingRouteMapper.java → hx-service/iot-management/src/main/java/com/fjhx/mapper/working/WorkingRouteMapper.java

@@ -1,4 +1,4 @@
-package com.fjhx.working.mapper;
+package com.fjhx.mapper.working;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/working/mapper/WorkingRouteMapper.xml → hx-service/iot-management/src/main/java/com/fjhx/mapper/working/WorkingRouteMapper.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.fjhx.working.mapper.WorkingRouteMapper">
+<mapper namespace="com.fjhx.mapper.working.WorkingRouteMapper">
 
     <select id="getPage" resultType="com.fjhx.params.working.WorkingRouteEx">
         select wr.id,

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/working/mapper/WorkingRouteProcedureMapper.java → hx-service/iot-management/src/main/java/com/fjhx/mapper/working/WorkingRouteProcedureMapper.java

@@ -1,4 +1,4 @@
-package com.fjhx.working.mapper;
+package com.fjhx.mapper.working;
 
 import com.fjhx.entity.working.WorkingRouteProcedure;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/working/mapper/WorkingRouteProcedureMapper.xml → hx-service/iot-management/src/main/java/com/fjhx/mapper/working/WorkingRouteProcedureMapper.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.fjhx.working.mapper.WorkingRouteProcedureMapper">
+<mapper namespace="com.fjhx.mapper.working.WorkingRouteProcedureMapper">
 
 </mapper>

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/bom/service/BomDetailsService.java → hx-service/iot-management/src/main/java/com/fjhx/service/bom/BomDetailsService.java

@@ -1,4 +1,4 @@
-package com.fjhx.bom.service;
+package com.fjhx.service.bom;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.entity.bom.BomDetails;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/bom/service/BomService.java → hx-service/iot-management/src/main/java/com/fjhx/service/bom/BomService.java

@@ -1,4 +1,4 @@
-package com.fjhx.bom.service;
+package com.fjhx.service.bom;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.base.BaseService;

+ 3 - 3
hx-service/iot-management/src/main/java/com/fjhx/bom/service/impl/BomDetailsServiceImpl.java → hx-service/iot-management/src/main/java/com/fjhx/service/bom/impl/BomDetailsServiceImpl.java

@@ -1,13 +1,13 @@
-package com.fjhx.bom.service.impl;
+package com.fjhx.service.bom.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.fjhx.bom.mapper.BomDetailsMapper;
+import com.fjhx.mapper.bom.BomDetailsMapper;
 import com.fjhx.utils.WrapperUtil;
 import com.fjhx.entity.bom.BomDetails;
 import com.fjhx.params.bom.BomDetailsVo;
-import com.fjhx.bom.service.BomDetailsService;
+import com.fjhx.service.bom.BomDetailsService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 

+ 3 - 3
hx-service/iot-management/src/main/java/com/fjhx/bom/service/impl/BomServiceImpl.java → hx-service/iot-management/src/main/java/com/fjhx/service/bom/impl/BomServiceImpl.java

@@ -1,12 +1,12 @@
-package com.fjhx.bom.service.impl;
+package com.fjhx.service.bom.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fjhx.base.BaseEntity;
-import com.fjhx.bom.mapper.BomMapper;
-import com.fjhx.bom.service.BomService;
+import com.fjhx.mapper.bom.BomMapper;
+import com.fjhx.service.bom.BomService;
 import com.fjhx.constant.IotManagementLockConstant;
 import com.fjhx.constants.ErrorMsgConstant;
 import com.fjhx.constants.StatusConstant;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/material/service/MaterialExService.java → hx-service/iot-management/src/main/java/com/fjhx/service/material/MaterialExService.java

@@ -1,4 +1,4 @@
-package com.fjhx.material.service;
+package com.fjhx.service.material;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.base.BaseService;

+ 3 - 3
hx-service/iot-management/src/main/java/com/fjhx/material/service/impl/MaterialExServiceImpl.java → hx-service/iot-management/src/main/java/com/fjhx/service/material/impl/MaterialExServiceImpl.java

@@ -1,4 +1,4 @@
-package com.fjhx.material.service.impl;
+package com.fjhx.service.material.impl;
 
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.util.ObjectUtil;
@@ -7,8 +7,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fjhx.constants.StatusConstant;
 import com.fjhx.entity.material.MaterialEx;
-import com.fjhx.material.mapper.MaterialExMapper;
-import com.fjhx.material.service.MaterialExService;
+import com.fjhx.mapper.material.MaterialExMapper;
+import com.fjhx.service.material.MaterialExService;
 import com.fjhx.params.MaterialVo;
 import com.fjhx.service.ClassifyService;
 import com.fjhx.service.MaterialService;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/product/service/ProductExService.java → hx-service/iot-management/src/main/java/com/fjhx/service/product/ProductExService.java

@@ -1,4 +1,4 @@
-package com.fjhx.product.service;
+package com.fjhx.service.product;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.base.BaseService;

+ 3 - 3
hx-service/iot-management/src/main/java/com/fjhx/product/service/impl/ProductExServiceImpl.java → hx-service/iot-management/src/main/java/com/fjhx/service/product/impl/ProductExServiceImpl.java

@@ -1,4 +1,4 @@
-package com.fjhx.product.service.impl;
+package com.fjhx.service.product.impl;
 
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.util.ObjectUtil;
@@ -7,8 +7,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fjhx.entity.product.ProductEx;
 import com.fjhx.params.ProductVo;
-import com.fjhx.product.mapper.ProductExMapper;
-import com.fjhx.product.service.ProductExService;
+import com.fjhx.mapper.product.ProductExMapper;
+import com.fjhx.service.product.ProductExService;
 import com.fjhx.service.ClassifyService;
 import com.fjhx.service.ProductService;
 import com.fjhx.utils.WrapperUtil;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/production/service/ProductionLineService.java → hx-service/iot-management/src/main/java/com/fjhx/service/production/ProductionLineService.java

@@ -1,4 +1,4 @@
-package com.fjhx.production.service;
+package com.fjhx.service.production;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.base.BaseService;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/production/service/ProductionWorkshopService.java → hx-service/iot-management/src/main/java/com/fjhx/service/production/ProductionWorkshopService.java

@@ -1,4 +1,4 @@
-package com.fjhx.production.service;
+package com.fjhx.service.production;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.base.BaseService;

+ 3 - 3
hx-service/iot-management/src/main/java/com/fjhx/production/service/impl/ProductionLineServiceImpl.java → hx-service/iot-management/src/main/java/com/fjhx/service/production/impl/ProductionLineServiceImpl.java

@@ -1,4 +1,4 @@
-package com.fjhx.production.service.impl;
+package com.fjhx.service.production.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -6,8 +6,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fjhx.entity.production.ProductionLine;
 import com.fjhx.params.production.ProductionLineEx;
 import com.fjhx.params.production.ProductionLineVo;
-import com.fjhx.production.mapper.ProductionLineMapper;
-import com.fjhx.production.service.ProductionLineService;
+import com.fjhx.mapper.production.ProductionLineMapper;
+import com.fjhx.service.production.ProductionLineService;
 import com.fjhx.utils.WrapperUtil;
 import org.springframework.stereotype.Service;
 

+ 3 - 3
hx-service/iot-management/src/main/java/com/fjhx/production/service/impl/ProductionWorkshopServiceImpl.java → hx-service/iot-management/src/main/java/com/fjhx/service/production/impl/ProductionWorkshopServiceImpl.java

@@ -1,4 +1,4 @@
-package com.fjhx.production.service.impl;
+package com.fjhx.service.production.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -8,8 +8,8 @@ import com.fjhx.base.BaseEntity;
 import com.fjhx.entity.production.ProductionWorkshop;
 import com.fjhx.params.production.ProductionWorkshopEx;
 import com.fjhx.params.production.ProductionWorkshopVo;
-import com.fjhx.production.mapper.ProductionWorkshopMapper;
-import com.fjhx.production.service.ProductionWorkshopService;
+import com.fjhx.mapper.production.ProductionWorkshopMapper;
+import com.fjhx.service.production.ProductionWorkshopService;
 import com.fjhx.utils.HxBeanUtil;
 import com.fjhx.utils.UserClientUtil;
 import com.fjhx.utils.WrapperUtil;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/working/service/WorkingProcedureService.java → hx-service/iot-management/src/main/java/com/fjhx/service/working/WorkingProcedureService.java

@@ -1,4 +1,4 @@
-package com.fjhx.working.service;
+package com.fjhx.service.working;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.entity.working.WorkingProcedure;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/working/service/WorkingRouteProcedureService.java → hx-service/iot-management/src/main/java/com/fjhx/service/working/WorkingRouteProcedureService.java

@@ -1,4 +1,4 @@
-package com.fjhx.working.service;
+package com.fjhx.service.working;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.entity.working.WorkingRouteProcedure;

+ 1 - 1
hx-service/iot-management/src/main/java/com/fjhx/working/service/WorkingRouteService.java → hx-service/iot-management/src/main/java/com/fjhx/service/working/WorkingRouteService.java

@@ -1,4 +1,4 @@
-package com.fjhx.working.service;
+package com.fjhx.service.working;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.entity.working.WorkingRoute;

+ 3 - 3
hx-service/iot-management/src/main/java/com/fjhx/working/service/impl/WorkingProcedureServiceImpl.java → hx-service/iot-management/src/main/java/com/fjhx/service/working/impl/WorkingProcedureServiceImpl.java

@@ -1,4 +1,4 @@
-package com.fjhx.working.service.impl;
+package com.fjhx.service.working.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -9,8 +9,8 @@ import com.fjhx.entity.working.WorkingProcedure;
 import com.fjhx.params.working.WorkingProcedureVo;
 import com.fjhx.utils.FileClientUtil;
 import com.fjhx.utils.WrapperUtil;
-import com.fjhx.working.mapper.WorkingProcedureMapper;
-import com.fjhx.working.service.WorkingProcedureService;
+import com.fjhx.mapper.working.WorkingProcedureMapper;
+import com.fjhx.service.working.WorkingProcedureService;
 import org.springblade.core.secure.utils.AuthUtil;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;

+ 3 - 3
hx-service/iot-management/src/main/java/com/fjhx/working/service/impl/WorkingRouteProcedureServiceImpl.java → hx-service/iot-management/src/main/java/com/fjhx/service/working/impl/WorkingRouteProcedureServiceImpl.java

@@ -1,4 +1,4 @@
-package com.fjhx.working.service.impl;
+package com.fjhx.service.working.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -6,8 +6,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.utils.WrapperUtil;
 import com.fjhx.entity.working.WorkingRouteProcedure;
 import com.fjhx.params.working.WorkingRouteProcedureVo;
-import com.fjhx.working.mapper.WorkingRouteProcedureMapper;
-import com.fjhx.working.service.WorkingRouteProcedureService;
+import com.fjhx.mapper.working.WorkingRouteProcedureMapper;
+import com.fjhx.service.working.WorkingRouteProcedureService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 

+ 5 - 7
hx-service/iot-management/src/main/java/com/fjhx/working/service/impl/WorkingRouteServiceImpl.java → hx-service/iot-management/src/main/java/com/fjhx/service/working/impl/WorkingRouteServiceImpl.java

@@ -1,8 +1,7 @@
-package com.fjhx.working.service.impl;
+package com.fjhx.service.working.impl;
 
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.util.ObjectUtil;
-import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -13,17 +12,16 @@ import com.fjhx.entity.working.WorkingRoute;
 import com.fjhx.entity.working.WorkingRouteProcedure;
 import com.fjhx.params.working.WorkingRouteEx;
 import com.fjhx.params.working.WorkingRouteVo;
-import com.fjhx.product.service.ProductExService;
+import com.fjhx.service.product.ProductExService;
 import com.fjhx.utils.Assert;
 import com.fjhx.utils.WrapperUtil;
-import com.fjhx.working.mapper.WorkingRouteMapper;
-import com.fjhx.working.service.WorkingRouteProcedureService;
-import com.fjhx.working.service.WorkingRouteService;
+import com.fjhx.mapper.working.WorkingRouteMapper;
+import com.fjhx.service.working.WorkingRouteProcedureService;
+import com.fjhx.service.working.WorkingRouteService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;

+ 10 - 0
hx-service/iot-production/pom.xml

@@ -20,10 +20,20 @@
 
         <dependency>
             <groupId>com.fjhx</groupId>
+            <artifactId>client-util</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>com.fjhx</groupId>
             <artifactId>service-file-api</artifactId>
         </dependency>
 
         <dependency>
+            <groupId>com.fjhx</groupId>
+            <artifactId>iot-production-api</artifactId>
+        </dependency>
+
+        <dependency>
             <groupId>com.huaweicloud.sdk</groupId>
             <artifactId>huaweicloud-sdk-core</artifactId>
             <version>3.0.92</version>

+ 3 - 3
hx-service/iot-production/src/main/java/com/fjhx/IoTDA/IoTDAConfig.java → hx-service/iot-production/src/main/java/com/fjhx/config/IoTDAConfig.java

@@ -1,13 +1,13 @@
-package com.fjhx.IoTDA;
+package com.fjhx.config;
 
 import com.huaweicloud.sdk.core.auth.ICredential;
 import com.huaweicloud.sdk.iotda.v5.IoTDAClient;
 import com.huaweicloud.sdk.iotda.v5.auth.IoTDACredentials;
 import com.huaweicloud.sdk.iotda.v5.region.IoTDARegion;
-import org.springframework.beans.factory.annotation.Configurable;
 import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
 
-@Configurable
+@Configuration
 public class IoTDAConfig {
 
     // REGION_ID:如果是上海一,请填写"cn-east-3";如果是北京四,请填写"cn-north-4";如果是华南广州,请填写"cn-south-4"

+ 49 - 0
hx-service/iot-production/src/main/java/com/fjhx/config/MybatisConfig.java

@@ -0,0 +1,49 @@
+package com.fjhx.config;
+
+import com.baomidou.mybatisplus.autoconfigure.ConfigurationCustomizer;
+import com.baomidou.mybatisplus.extension.MybatisMapWrapperFactory;
+import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
+import com.baomidou.mybatisplus.extension.plugins.handler.TenantLineHandler;
+import com.baomidou.mybatisplus.extension.plugins.inner.TenantLineInnerInterceptor;
+import net.sf.jsqlparser.expression.Expression;
+import net.sf.jsqlparser.expression.StringValue;
+import org.springblade.core.secure.utils.AuthUtil;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+@Configuration
+public class MybatisConfig {
+
+    /**
+     * 租户插件
+     */
+    @Bean
+    public MybatisPlusInterceptor mybatisPlusInterceptorPage() {
+        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
+
+        interceptor.addInnerInterceptor(new TenantLineInnerInterceptor(new TenantLineHandler() {
+
+            @Override
+            public Expression getTenantId() {
+                return new StringValue(AuthUtil.getTenantId());
+            }
+
+            @Override
+            public boolean ignoreTable(String tableName) {
+                return false;
+            }
+
+        }));
+
+        return interceptor;
+    }
+
+    /**
+     * map返回查询结果时,自动转驼峰
+     */
+    @Bean
+    public ConfigurationCustomizer configurationCustomizer() {
+        return i -> i.setObjectWrapperFactory(new MybatisMapWrapperFactory());
+    }
+
+}

+ 63 - 0
hx-service/iot-production/src/main/java/com/fjhx/controller/tda/TdaApplicationController.java

@@ -0,0 +1,63 @@
+package com.fjhx.controller.tda;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.params.tda.TdaApplicationVo;
+import com.fjhx.service.tda.TdaApplicationService;
+import org.springblade.core.tool.api.R;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 前端控制器
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+@RestController
+@RequestMapping("/tdaApplication")
+public class TdaApplicationController {
+
+    @Autowired
+    private TdaApplicationService tdaApplicationService;
+
+    @PostMapping("/page")
+    public R page(@RequestBody Map<String, String> condition) {
+        Page<Map<String, Object>> result = tdaApplicationService.getPage(condition);
+        return R.success(result);
+    }
+
+    @PostMapping("/add")
+    public R add(@RequestBody TdaApplicationVo tdaApplicationVo) {
+        tdaApplicationService.add(tdaApplicationVo);
+        return R.success();
+    }
+
+    @PostMapping("/delete")
+    public R delete(@RequestBody TdaApplicationVo tdaApplicationVo) {
+        tdaApplicationService.delete(tdaApplicationVo);
+        return R.success();
+    }
+
+    @PostMapping("/list")
+    public R list() {
+        List<Map<String, Object>> list = tdaApplicationService.getList();
+        return R.success(list);
+    }
+
+    @PostMapping("details")
+    public R details(@RequestBody TdaApplicationVo tdaApplicationVo) {
+        Map<String, Object> result = tdaApplicationService.details(tdaApplicationVo);
+        return R.success(result);
+    }
+
+
+}
+

+ 57 - 0
hx-service/iot-production/src/main/java/com/fjhx/controller/tda/TdaDeviceController.java

@@ -0,0 +1,57 @@
+package com.fjhx.controller.tda;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.params.tda.TdaDeviceEx;
+import com.fjhx.params.tda.TdaDeviceVo;
+import com.fjhx.service.tda.TdaDeviceService;
+import org.springblade.core.tool.api.R;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 前端控制器
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+@RestController
+@RequestMapping("/tdaDevice")
+public class TdaDeviceController {
+
+    @Autowired
+    private TdaDeviceService tdaDeviceService;
+
+    @PostMapping("/page")
+    public R page(@RequestBody Map<String, String> condition) {
+        Page<TdaDeviceEx> result = tdaDeviceService.getPage(condition);
+        return R.success(result);
+    }
+
+    @PostMapping("/add")
+    public R add(@RequestBody TdaDeviceVo tdaDeviceVo) {
+        tdaDeviceService.add(tdaDeviceVo);
+        return R.success();
+    }
+
+    @PostMapping("/delete")
+    public R delete(@RequestBody TdaDeviceVo tdaDeviceVo) {
+        tdaDeviceService.delete(tdaDeviceVo);
+        return R.success();
+    }
+
+    @PostMapping("/list")
+    public R list(@RequestBody Map<String, Long> condition) {
+        List<Map<String, Object>> list = tdaDeviceService.getList(condition);
+        return R.success(list);
+    }
+
+}
+

+ 76 - 0
hx-service/iot-production/src/main/java/com/fjhx/controller/tda/TdaProductController.java

@@ -0,0 +1,76 @@
+package com.fjhx.controller.tda;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.entity.tda.TdaProduct;
+import com.fjhx.params.tda.TdaProductEx;
+import com.fjhx.params.tda.TdaProductVo;
+import com.fjhx.service.tda.TdaProductService;
+import org.springblade.core.tool.api.R;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 前端控制器
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+@RestController
+@RequestMapping("/tdaProduct")
+public class TdaProductController {
+
+    @Autowired
+    private TdaProductService tdaProductService;
+
+    @PostMapping("/page")
+    public R page(@RequestBody Map<String, String> condition) {
+        Page<TdaProductEx> result = tdaProductService.getPage(condition);
+        return R.success(result);
+    }
+
+    @PostMapping("/add")
+    public R add(@RequestBody TdaProductVo tdaProductVo) {
+        tdaProductService.add(tdaProductVo);
+        return R.success();
+    }
+
+    @PostMapping("/delete")
+    public R delete(@RequestBody TdaProductVo tdaProductVo) {
+        tdaProductService.delete(tdaProductVo);
+        return R.success();
+    }
+
+    @PostMapping("/list")
+    public R list(@RequestBody Map<String, Long> condition) {
+        List<Map<String, Object>> result = tdaProductService.getList(condition);
+        return R.success(result);
+    }
+
+    /**
+     * 获取添加过的厂商名称列表
+     */
+    @PostMapping("/manufacturerNameList")
+    public R manufacturerNameList() {
+        List<?> result = tdaProductService.getDistinctList(TdaProduct::getManufacturerName);
+        return R.success(result);
+    }
+
+    /**
+     * 获取添加过的设备类型列表
+     */
+    @PostMapping("/deviceTypeList")
+    public R deviceTypeList() {
+        List<?> result = tdaProductService.getDistinctList(TdaProduct::getDeviceType);
+        return R.success(result);
+    }
+
+}
+

+ 21 - 0
hx-service/iot-production/src/main/java/com/fjhx/mapper/tda/TdaApplicationMapper.java

@@ -0,0 +1,21 @@
+package com.fjhx.mapper.tda;
+
+import com.fjhx.entity.tda.TdaApplication;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.Map;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+public interface TdaApplicationMapper extends BaseMapper<TdaApplication> {
+
+    Map<String, Object> getDetails(@Param("id") Long id);
+
+}

+ 13 - 0
hx-service/iot-production/src/main/java/com/fjhx/mapper/tda/TdaApplicationMapper.xml

@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.fjhx.mapper.tda.TdaApplicationMapper">
+
+    <select id="getDetails" resultType="java.util.Map">
+        select (select count(0) from tda_product tp where tp.tda_application_id = #{id}) productCount,
+               (select count(0)
+                from tda_product tp
+                         inner join tda_device td on td.tda_product_id = tp.id
+                where tp.tda_application_id = #{id})                                     deviceCount
+    </select>
+
+</mapper>

+ 22 - 0
hx-service/iot-production/src/main/java/com/fjhx/mapper/tda/TdaDeviceMapper.java

@@ -0,0 +1,22 @@
+package com.fjhx.mapper.tda;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.entity.tda.TdaDevice;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fjhx.params.tda.TdaDeviceEx;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+public interface TdaDeviceMapper extends BaseMapper<TdaDevice> {
+
+    Page<TdaDeviceEx> getPage(@Param("page") Page<TdaDevice> page, @Param("ew") QueryWrapper<TdaDevice> wrapper);
+
+}

+ 18 - 0
hx-service/iot-production/src/main/java/com/fjhx/mapper/tda/TdaDeviceMapper.xml

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.fjhx.mapper.tda.TdaDeviceMapper">
+
+    <select id="getPage" resultType="com.fjhx.params.tda.TdaDeviceEx">
+        select ta.app_name applicationName,
+               tp.name     productName,
+               td.device_name,
+               td.node_id,
+               td.device_id,
+               td.device_name
+        from tda_device td
+                 left join tda_product tp on td.tda_product_id = tp.id
+                 left join tda_application ta on tp.tda_application_id = ta.id
+            ${ew.customSqlSegment}
+    </select>
+
+</mapper>

+ 22 - 0
hx-service/iot-production/src/main/java/com/fjhx/mapper/tda/TdaProductMapper.java

@@ -0,0 +1,22 @@
+package com.fjhx.mapper.tda;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.entity.tda.TdaProduct;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fjhx.params.tda.TdaProductEx;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+public interface TdaProductMapper extends BaseMapper<TdaProduct> {
+
+    Page<TdaProductEx> getPage(@Param("page") Page<TdaProduct> page, @Param("ew") QueryWrapper<TdaProductEx> wrapper);
+
+}

+ 19 - 0
hx-service/iot-production/src/main/java/com/fjhx/mapper/tda/TdaProductMapper.xml

@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.fjhx.mapper.tda.TdaProductMapper">
+
+    <select id="getPage" resultType="com.fjhx.params.tda.TdaProductEx">
+        select tp.id,
+               ta.app_name,
+               tp.name,
+               tp.product_id,
+               tp.device_type,
+               tp.manufacturer_name,
+               tp.protocol_type,
+               tp.data_format
+        from tda_product tp
+                 left join tda_application ta on tp.tda_application_id = ta.id
+            ${ew.customSqlSegment}
+    </select>
+
+</mapper>

+ 31 - 0
hx-service/iot-production/src/main/java/com/fjhx/service/tda/TdaApplicationService.java

@@ -0,0 +1,31 @@
+package com.fjhx.service.tda;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.entity.tda.TdaApplication;
+import com.fjhx.params.tda.TdaApplicationVo;
+import com.fjhx.base.BaseService;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+public interface TdaApplicationService extends BaseService<TdaApplication> {
+
+    Page<Map<String, Object>> getPage(Map<String, String> condition);
+
+    void add(TdaApplicationVo tdaApplicationVo);
+
+    void delete(TdaApplicationVo tdaApplicationVo);
+
+    List<Map<String, Object>> getList();
+
+    Map<String, Object> details(TdaApplicationVo tdaApplicationVo);
+
+}

+ 30 - 0
hx-service/iot-production/src/main/java/com/fjhx/service/tda/TdaDeviceService.java

@@ -0,0 +1,30 @@
+package com.fjhx.service.tda;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.entity.tda.TdaDevice;
+import com.fjhx.params.tda.TdaDeviceEx;
+import com.fjhx.params.tda.TdaDeviceVo;
+import com.fjhx.base.BaseService;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+public interface TdaDeviceService extends BaseService<TdaDevice> {
+
+    Page<TdaDeviceEx> getPage(Map<String, String> condition);
+
+    void add(TdaDeviceVo tdaDeviceVo);
+
+    void delete(TdaDeviceVo tdaDeviceVo);
+
+    List<Map<String, Object>> getList(Map<String, Long> condition);
+
+}

+ 30 - 0
hx-service/iot-production/src/main/java/com/fjhx/service/tda/TdaProductService.java

@@ -0,0 +1,30 @@
+package com.fjhx.service.tda;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.entity.tda.TdaProduct;
+import com.fjhx.params.tda.TdaProductEx;
+import com.fjhx.params.tda.TdaProductVo;
+import com.fjhx.base.BaseService;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+public interface TdaProductService extends BaseService<TdaProduct> {
+
+    Page<TdaProductEx> getPage(Map<String, String> condition);
+
+    void add(TdaProductVo tdaProductVo);
+
+    void delete(TdaProductVo tdaProductVo);
+
+    List<Map<String, Object>> getList(Map<String, Long> condition);
+
+}

+ 95 - 0
hx-service/iot-production/src/main/java/com/fjhx/service/tda/impl/TdaApplicationServiceImpl.java

@@ -0,0 +1,95 @@
+package com.fjhx.service.tda.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fjhx.base.BaseEntity;
+import com.fjhx.entity.tda.TdaApplication;
+import com.fjhx.entity.tda.TdaProduct;
+import com.fjhx.mapper.tda.TdaApplicationMapper;
+import com.fjhx.params.tda.TdaApplicationVo;
+import com.fjhx.service.tda.TdaApplicationService;
+import com.fjhx.service.tda.TdaProductService;
+import com.fjhx.utils.Assert;
+import com.fjhx.utils.IoTDAUtil;
+import com.fjhx.utils.UserClientUtil;
+import com.fjhx.utils.WrapperUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 服务实现类
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+@Service
+public class TdaApplicationServiceImpl extends ServiceImpl<TdaApplicationMapper, TdaApplication> implements TdaApplicationService {
+
+    @Autowired
+    private TdaProductService tdaProductService;
+
+    @Override
+    public Page<Map<String, Object>> getPage(Map<String, String> condition) {
+
+        QueryWrapper<TdaApplication> wrapper = Wrappers.query();
+
+        WrapperUtil.init(condition, wrapper)
+                .keyword("app_name", "app_id")
+                .createTimeDesc();
+
+        Page<Map<String, Object>> mapPage = pageMaps(condition, wrapper);
+        List<Map<String, Object>> records = mapPage.getRecords();
+
+        Map<Long, String> createUser = UserClientUtil.getUserNameMapFunctionLong(records, item -> BeanUtil.toBean(item.get("createUser"), Long.class));
+
+        records.forEach(item -> item.put("createUserName", createUser.get(BeanUtil.toBean(item.get("createUser"), Long.class))));
+
+        return mapPage;
+    }
+
+    @Override
+    public void add(TdaApplicationVo tdaApplicationVo) {
+        String appName = tdaApplicationVo.getAppName();
+        Assert.notEmpty(appName, "行业名称不能为空");
+
+        // 华为ioDta添加资源空间
+        String appId = IoTDAUtil.addApplication(appName);
+        tdaApplicationVo.setAppId(appId);
+        save(tdaApplicationVo);
+    }
+
+    @Override
+    public void delete(TdaApplicationVo tdaApplicationVo) {
+        Long id = tdaApplicationVo.getId();
+        Assert.notEmpty(id, "行业表id不能为空");
+
+        // 查询行业是否已添加产品,已添加产品则不可删除
+        Integer count = tdaProductService.count(TdaProduct::getTdaApplicationId, id);
+        Assert.eqZero(count, "行业已添加产品,无法删除");
+
+        // 华为ioDta删除资源空间
+        TdaApplication tdaApplication = getById(id);
+        IoTDAUtil.deleteApplication(tdaApplication.getAppName());
+
+        removeById(id);
+    }
+
+    @Override
+    public List<Map<String, Object>> getList() {
+        return listMaps(Wrappers.<TdaApplication>lambdaQuery().select(BaseEntity::getId, TdaApplication::getAppName));
+    }
+
+    @Override
+    public Map<String, Object> details(TdaApplicationVo tdaApplicationVo) {
+        return baseMapper.getDetails(tdaApplicationVo.getId());
+    }
+
+}

+ 100 - 0
hx-service/iot-production/src/main/java/com/fjhx/service/tda/impl/TdaDeviceServiceImpl.java

@@ -0,0 +1,100 @@
+package com.fjhx.service.tda.impl;
+
+import cn.hutool.core.util.ObjectUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fjhx.base.BaseEntity;
+import com.fjhx.entity.tda.TdaDevice;
+import com.fjhx.entity.tda.TdaProduct;
+import com.fjhx.mapper.tda.TdaDeviceMapper;
+import com.fjhx.params.tda.TdaDeviceEx;
+import com.fjhx.params.tda.TdaDeviceVo;
+import com.fjhx.service.tda.TdaDeviceService;
+import com.fjhx.service.tda.TdaProductService;
+import com.fjhx.utils.Assert;
+import com.fjhx.utils.IoTDAUtil;
+import com.fjhx.utils.WrapperUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 服务实现类
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+@Service
+public class TdaDeviceServiceImpl extends ServiceImpl<TdaDeviceMapper, TdaDevice> implements TdaDeviceService {
+
+    @Autowired
+    private TdaProductService tdaProductService;
+
+    @Override
+    public Page<TdaDeviceEx> getPage(Map<String, String> condition) {
+
+        QueryWrapper<TdaDevice> wrapper = Wrappers.query();
+
+        WrapperUtil.init(condition, wrapper)
+                .keyword("td.node_id", "td.device_name")
+                .eq("td.tda_product_id", "tdaProductId")
+                .eq("tp.tda_application_id", "tdaApplicationId")
+                .createTimeDesc("td");
+
+        return baseMapper.getPage(createPage(condition), wrapper);
+    }
+
+    @Override
+    public void add(TdaDeviceVo tdaDeviceVo) {
+        String nodeId = tdaDeviceVo.getNodeId();
+        Assert.notEmpty(nodeId, "设备标识不能为空");
+
+        String deviceName = tdaDeviceVo.getDeviceName();
+        Assert.notEmpty(deviceName, "设备名称不能为空");
+
+        Long tdaProductId = tdaDeviceVo.getTdaProductId();
+        Assert.notEmpty(tdaProductId, "产品表id不能为空");
+
+        // 查询资源所在空间和产品id
+        TdaProduct tdaProduct = tdaProductService.getById(tdaProductId);
+        String productId = tdaProduct.getProductId();
+
+        // 华为ioDta添加设备
+        IoTDAUtil.DeviceKey deviceKey = IoTDAUtil.addDevice(nodeId, deviceName, tdaProduct.getAppId(), productId);
+
+        tdaDeviceVo.setProductId(productId);
+        tdaDeviceVo.setDeviceId(deviceKey.getDeviceId());
+        tdaDeviceVo.setSecret(deviceKey.getSecret());
+
+        save(tdaDeviceVo);
+    }
+
+    @Override
+    public void delete(TdaDeviceVo tdaDeviceVo) {
+        Long id = tdaDeviceVo.getId();
+        Assert.notEmpty(id, "设备表id不能为空");
+
+        TdaDevice tdaDevice = getById(id);
+
+        // 华为ioDta删除设备
+        IoTDAUtil.deleteDevice(tdaDevice.getDeviceId());
+
+        removeById(id);
+    }
+
+    @Override
+    public List<Map<String, Object>> getList(Map<String, Long> condition) {
+        Long tdaProductId = condition.get("tdaProductId");
+        return listMaps(Wrappers.<TdaDevice>lambdaQuery()
+                .select(BaseEntity::getId, TdaDevice::getTdaProductId, TdaDevice::getDeviceName)
+                .eq(ObjectUtil.isNotEmpty(tdaProductId), TdaDevice::getTdaProductId, tdaProductId)
+        );
+    }
+
+}

+ 111 - 0
hx-service/iot-production/src/main/java/com/fjhx/service/tda/impl/TdaProductServiceImpl.java

@@ -0,0 +1,111 @@
+package com.fjhx.service.tda.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fjhx.base.BaseEntity;
+import com.fjhx.entity.tda.TdaApplication;
+import com.fjhx.entity.tda.TdaDevice;
+import com.fjhx.entity.tda.TdaProduct;
+import com.fjhx.mapper.tda.TdaProductMapper;
+import com.fjhx.params.tda.TdaProductEx;
+import com.fjhx.params.tda.TdaProductVo;
+import com.fjhx.service.tda.TdaApplicationService;
+import com.fjhx.service.tda.TdaDeviceService;
+import com.fjhx.service.tda.TdaProductService;
+import com.fjhx.utils.Assert;
+import com.fjhx.utils.IoTDAUtil;
+import com.fjhx.utils.WrapperUtil;
+import org.springblade.core.tool.utils.ObjectUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 服务实现类
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-07-21
+ */
+@Service
+public class TdaProductServiceImpl extends ServiceImpl<TdaProductMapper, TdaProduct> implements TdaProductService {
+
+    @Autowired
+    private TdaApplicationService tdaApplicationService;
+
+    @Autowired
+    private TdaDeviceService tdaDeviceService;
+
+    @Override
+    public Page<TdaProductEx> getPage(Map<String, String> condition) {
+
+        QueryWrapper<TdaProductEx> wrapper = Wrappers.query();
+
+        WrapperUtil.init(condition, wrapper)
+                .keyword("tp.name", "tp.product_id")
+                .eq("tp.tda_application_id", "tdaApplicationId")
+                .eq("tp.device_type", "deviceType")
+                .eq("tp.manufacturer_name", "manufacturerName")
+                .createTimeDesc("tp");
+
+        return baseMapper.getPage(createPage(condition), wrapper);
+    }
+
+    @Override
+    public void add(TdaProductVo tdaProductVo) {
+        Long tdaApplicationId = tdaProductVo.getTdaApplicationId();
+        Assert.notEmpty(tdaApplicationId, "资源空间表id不能为空");
+
+        String name = tdaProductVo.getName();
+        Assert.notEmpty(name, "产品名称不能为空");
+
+        String deviceType = tdaProductVo.getDeviceType();
+        Assert.notEmpty(deviceType, "设备类型不能为空");
+
+        String manufacturerName = tdaProductVo.getManufacturerName();
+        Assert.notEmpty(manufacturerName, "厂商名称不能为空");
+
+        TdaApplication tdaApplication = tdaApplicationService.getById(tdaApplicationId);
+        String appId = tdaApplication.getAppId();
+
+        // 华为ioDta添加产品
+        String productId = IoTDAUtil.createProduct(appId, name, deviceType, manufacturerName);
+
+        tdaProductVo.setAppId(appId);
+        tdaProductVo.setProductId(productId);
+        save(tdaProductVo);
+    }
+
+    @Override
+    public void delete(TdaProductVo tdaProductVo) {
+        Long id = tdaProductVo.getId();
+        Assert.notEmpty(id, "产品表id不能为空");
+
+        // 查询产品是否已添加设备,已添加设备则不可删除
+        Integer count = tdaDeviceService.count(TdaDevice::getTdaProductId, id);
+        Assert.eqZero(count, "产品已添加设备,无法删除");
+
+        // 华为ioDta删除产品
+        TdaProduct tdaProduct = getById(id);
+        IoTDAUtil.deleteProduct(tdaProduct.getAppId(), tdaProduct.getProductId());
+
+        removeById(tdaProductVo.getId());
+    }
+
+    @Override
+    public List<Map<String, Object>> getList(Map<String, Long> condition) {
+
+        Long tdaApplicationId = condition.get("tdaApplicationId");
+
+        return listMaps(Wrappers.<TdaProduct>lambdaQuery()
+                .select(BaseEntity::getId, TdaProduct::getTdaApplicationId, TdaProduct::getName)
+                .eq(ObjectUtil.isNotEmpty(tdaApplicationId), TdaProduct::getTdaApplicationId, tdaApplicationId)
+        );
+    }
+
+}

+ 0 - 53
hx-service/iot-production/src/main/java/com/fjhx/test/ListDevicesSolution.java

@@ -1,53 +0,0 @@
-package com.fjhx.test;
-
-
-import com.fjhx.IoTDA.IoTDAConfig;
-import com.fjhx.IoTDA.IoTDAUtil;
-import com.huaweicloud.sdk.core.exception.ConnectionException;
-import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
-import com.huaweicloud.sdk.core.exception.ServiceResponseException;
-import com.huaweicloud.sdk.iotda.v5.IoTDAClient;
-import com.huaweicloud.sdk.iotda.v5.model.*;
-import org.springframework.context.annotation.AnnotationConfigApplicationContext;
-
-import java.util.Collections;
-
-public class ListDevicesSolution {
-
-    private static final AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext(IoTDAConfig.class);
-    private static final IoTDAClient client = applicationContext.getBean(IoTDAClient.class);
-
-    public static void main(String[] args) {
-
-        try {
-
-            ShowApplicationsRequest showApplicationsRequest = new ShowApplicationsRequest();
-            System.out.println(client.showApplications(showApplicationsRequest));
-            System.out.println("========================================================");
-
-            ListProductsRequest listProductsRequest = new ListProductsRequest();
-            listProductsRequest.setAppId("fa74090e9e534511b65545a456f4bf2f");
-            System.out.println(client.listProducts(listProductsRequest));
-            System.out.println("========================================================");
-
-
-            ListDevicesRequest listDevicesRequest = new ListDevicesRequest();
-            listDevicesRequest.setProductId("62d4ff516b9813541d51f893");
-            ListDevicesResponse listDevicesResponse = client.listDevices(listDevicesRequest);
-            System.out.println(listDevicesResponse);
-            System.out.println("========================================================");
-
-
-
-
-
-        } catch (ConnectionException | RequestTimeoutException e) {
-            e.printStackTrace();
-        } catch (ServiceResponseException e) {
-            e.printStackTrace();
-            System.out.println(e.getHttpStatusCode());
-            System.out.println(e.getErrorCode());
-            System.out.println(e.getErrorMsg());
-        }
-    }
-}

+ 0 - 53
hx-service/iot-production/src/main/java/com/fjhx/test/ZipTest.java

@@ -1,53 +0,0 @@
-package com.fjhx.test;
-
-import cn.hutool.http.HttpUtil;
-import lombok.SneakyThrows;
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.FileOutputStream;
-import java.nio.charset.StandardCharsets;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipInputStream;
-import java.util.zip.ZipOutputStream;
-
-public class ZipTest {
-
-    @SneakyThrows
-    public static void main(String[] args) {
-        byte[] bytes = HttpUtil.downloadBytes("http://36.134.91.96:10001/file/test.zip");
-        ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
-        byteArrayOutputStream.write(bytes);
-
-
-        ZipInputStream in = new ZipInputStream(new ByteArrayInputStream(bytes));
-        ZipEntry zipEntry;
-
-        ZipOutputStream zipOutputStream = new ZipOutputStream(new FileOutputStream("E:\\test.zip"));
-
-        while ((zipEntry = in.getNextEntry()) != null) {
-            String name = zipEntry.getName();
-
-            zipOutputStream.putNextEntry(new ZipEntry(name));
-
-            //读取该文件的字节内容
-            byte[] buff = new byte[1024];
-            int len;
-            while ((len = in.read(buff)) != -1) {
-                zipOutputStream.write(buff, 0, len);
-            }
-
-        }
-
-        String testCont = "测试内容";
-
-        zipOutputStream.putNextEntry(new ZipEntry("测试zip\\config"));
-        zipOutputStream.write(testCont.getBytes(StandardCharsets.UTF_8));
-
-        zipOutputStream.closeEntry();
-        zipOutputStream.close();
-
-
-    }
-
-}

+ 3 - 3
hx-service/iot-production/src/main/java/com/fjhx/IoTDA/IoTDAUtil.java → hx-service/iot-production/src/main/java/com/fjhx/utils/IoTDAUtil.java

@@ -1,4 +1,4 @@
-package com.fjhx.IoTDA;
+package com.fjhx.utils;
 
 import cn.hutool.extra.spring.SpringUtil;
 import com.huaweicloud.sdk.iotda.v5.IoTDAClient;
@@ -114,8 +114,8 @@ public class IoTDAUtil {
     public static void deleteProduct(String appId, String productId) {
         try {
             DeleteProductRequest deleteProductRequest = new DeleteProductRequest();
-            deleteProductRequest.setAppId("fa74090e9e534511b65545a456f4bf2f");
-            deleteProductRequest.setProductId("62d793e26b9813541d52492b");
+            deleteProductRequest.setAppId(appId);
+            deleteProductRequest.setProductId(productId);
             client.deleteProduct(deleteProductRequest);
         } catch (Exception e) {
             throw new ServiceException("产品删除失败");

+ 6 - 0
hx-service/pom.xml

@@ -66,6 +66,12 @@
 
             <dependency>
                 <groupId>com.fjhx</groupId>
+                <artifactId>iot-production-api</artifactId>
+                <version>${hx.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>com.fjhx</groupId>
                 <artifactId>storage-api</artifactId>
                 <version>${hx.version}</version>
             </dependency>

+ 1 - 1
hx-service/storage/src/main/java/com/fjhx/material/service/impl/MaterialServiceImpl.java → hx-service/storage/src/main/java/com/fjhx/service/material/impl/MaterialServiceImpl.java

@@ -1,4 +1,4 @@
-package com.fjhx.material.service.impl;
+package com.fjhx.service.material.impl;
 
 
 import com.fjhx.entity.material.Material;

+ 6 - 7
hx-service/storage/src/main/java/com/fjhx/stock/service/impl/StockWaterServiceImpl.java

@@ -141,14 +141,13 @@ public class StockWaterServiceImpl extends ServiceImpl<StockWaterMapper, StockWa
                             map.put("total", 1); // 数量
                             map.put("length", item.get("changeNum")); // 米数
 
-                            // 计算面积
-                            BigDecimal measureAreaItem = ((BigDecimal) item.get("changeNum"))
+                            // 面积
+                            map.put("measureArea", ((BigDecimal) item.get("changeNum"))
                                     .multiply(BigDecimal.valueOf((float) item.get("materialWidth")))
-                                    .divide(new BigDecimal("100"), 2, RoundingMode.HALF_UP);
-
-                            map.put("measureArea", measureAreaItem); // 面积
-                            map.put("money", measureAreaItem.multiply((BigDecimal) item.get("materialPrice"))
-                                    .setScale(2, RoundingMode.HALF_UP)); // 金额
+                                    .divide(new BigDecimal("100"), 2, RoundingMode.HALF_UP)); // 面积
+                            // 金额
+                            map.put("money", ((BigDecimal) item.get("changeNum")).multiply((BigDecimal) item.get("materialPrice"))
+                                    .setScale(2, RoundingMode.HALF_UP));
                             return map;
                         },
                         (v1, v2) -> { // 当有多条用户记录时,统计数据