Selaa lähdekoodia

增加组织id

Newspaper 1 vuosi sitten
vanhempi
commit
753ebf3494
83 muutettua tiedostoa jossa 1337 lisäystä ja 262 poistoa
  1. 0 11
      snowy-web-app/src/main/java/vip/xiaonuo/core/config/GlobalConfigure.java
  2. 99 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/controller/CarCaptureController.java
  3. 76 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/entity/CarCapture.java
  4. 34 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/enums/CarCaptureEnum.java
  5. 25 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/mapper/CarCaptureMapper.java
  6. 5 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/mapper/mapping/CarCaptureMapper.xml
  7. 62 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/param/CarCaptureAddParam.java
  8. 67 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/param/CarCaptureEditParam.java
  9. 35 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/param/CarCaptureIdParam.java
  10. 67 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/param/CarCapturePageParam.java
  11. 80 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/service/CarCaptureService.java
  12. 102 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/service/impl/CarCaptureServiceImpl.java
  13. 18 6
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseConfig/controller/BaseConfigController.java
  14. 2 2
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseConfig/entity/BaseConfig.java
  15. 5 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseConfig/param/BaseConfigAddParam.java
  16. 5 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseConfig/param/BaseConfigListChildParam.java
  17. 35 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseConfig/param/BaseConfigOrgIdParam.java
  18. 5 5
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseConfig/service/BaseConfigService.java
  19. 32 18
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseConfig/service/impl/BaseConfigServiceImpl.java
  20. 2 2
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseSeason/controller/BaseSeasonController.java
  21. 2 2
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseSeason/entity/BaseSeason.java
  22. 5 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseSeason/param/BaseSeasonEditParam.java
  23. 35 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseSeason/param/BaseSeasonOrgIdParam.java
  24. 5 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseSeason/param/BaseSeasonTypeParam.java
  25. 1 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseSeason/service/BaseSeasonService.java
  26. 3 3
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseSeason/service/impl/BaseSeasonServiceImpl.java
  27. 6 5
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/department/controller/DepartmentController.java
  28. 0 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/department/entity/Department.java
  29. 1 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/department/param/DepartmentAddParam.java
  30. 1 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/department/param/DepartmentChildParam.java
  31. 35 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/department/param/DepartmentOrgIdParam.java
  32. 1 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/department/param/DepartmentPageParam.java
  33. 3 3
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/department/service/DepartmentService.java
  34. 9 15
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/department/service/impl/DepartmentServiceImpl.java
  35. 23 4
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/inventoryUse/controller/InventoryUseController.java
  36. 2 2
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/inventoryUse/entity/InventoryUse.java
  37. 1 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/inventoryUse/param/InventoryUseAddParam.java
  38. 35 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/inventoryUse/param/InventoryUseDepartmentIdParam.java
  39. 35 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/inventoryUse/param/InventoryUseOrgIdParam.java
  40. 1 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/inventoryUse/param/InventoryUsePageParam.java
  41. 3 12
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/inventoryUse/service/impl/InventoryUseServiceImpl.java
  42. 11 8
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/peoplelist/entity/PeopleList.java
  43. 1 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/peoplelist/service/impl/PeopleListServiceImpl.java
  44. 5 8
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/pigpen/controller/BasePigpenController.java
  45. 1 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/pigpen/param/BasePigpenAddParam.java
  46. 35 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/pigpen/param/BasePigpenOrgIdParam.java
  47. 1 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/pigpen/param/BasePigpenPageParam.java
  48. 2 5
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/pigpen/service/BasePigpenService.java
  49. 13 17
      snowy-web-app/src/main/java/vip/xiaonuo/modular/base/pigpen/service/impl/BasePigpenServiceImpl.java
  50. 9 10
      snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyDevice/controller/EnergyDeviceController.java
  51. 8 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyDevice/entity/EnergyDevice.java
  52. 5 5
      snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyDevice/param/EnergyDeviceAddParam.java
  53. 4 4
      snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyDevice/param/EnergyDeviceEditParam.java
  54. 35 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyDevice/param/EnergyDeviceOrgIdParam.java
  55. 1 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyDevice/param/EnergyDevicePageParam.java
  56. 3 6
      snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyDevice/service/EnergyDeviceService.java
  57. 9 12
      snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyDevice/service/impl/EnergyDeviceServiceImpl.java
  58. 2 2
      snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyElectricity/controller/EnergyElectricityController.java
  59. 35 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyElectricity/param/EnergyElectricityOrgIdParam.java
  60. 1 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyElectricity/param/EnergyElectricityProportionParam.java
  61. 1 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyElectricity/param/EnergyElectricityTopParm.java
  62. 2 2
      snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyWater/controller/EnergyWaterController.java
  63. 35 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyWater/param/EnergyWaterOrgIdParam.java
  64. 1 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyWater/param/EnergyWaterProportionParam.java
  65. 1 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyWater/param/EnergyWaterTopParm.java
  66. 4 5
      snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energythreshold/controller/EnergyThresholdController.java
  67. 2 2
      snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envThreshold/entity/EnvThreshold.java
  68. 35 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envThreshold/param/EnvThresholdOrgIdParam.java
  69. 1 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envThreshold/param/EnvThresholdSaveParam.java
  70. 1 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envThreshold/param/EnvThresholdUnitIdParam.java
  71. 5 3
      snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envThreshold/service/impl/EnvThresholdServiceImpl.java
  72. 1 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdata/controller/EnvDataController.java
  73. 16 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdata/param/EnvDataOrgIdParm.java
  74. 0 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdata/service/impl/EnvDataServiceImpl.java
  75. 17 18
      snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdevice/controller/EnvDeviceController.java
  76. 9 3
      snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdevice/entity/EnvDevice.java
  77. 5 9
      snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdevice/param/EnvDeviceAddParam.java
  78. 4 4
      snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdevice/param/EnvDeviceEditParam.java
  79. 37 0
      snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdevice/param/EnvDeviceOrgIdParam.java
  80. 1 1
      snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdevice/param/EnvDevicePageParam.java
  81. 4 6
      snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdevice/service/EnvDeviceService.java
  82. 9 21
      snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdevice/service/impl/EnvDeviceServiceImpl.java
  83. 2 2
      snowy-web-app/src/main/java/vip/xiaonuo/modular/warning/warningManager/entity/WarningManager.java

+ 0 - 11
snowy-web-app/src/main/java/vip/xiaonuo/core/config/GlobalConfigure.java

@@ -543,10 +543,6 @@ public class GlobalConfigure implements WebMvcConfigurer {
      */
     @Component
     public static class CustomMetaObjectHandler implements MetaObjectHandler {
-
-        /** 组织ID */
-        private static final String ORG_ID = "orgId";
-
         /** 删除标志 */
         private static final String DELETE_FLAG = "deleteFlag";
 
@@ -566,13 +562,6 @@ public class GlobalConfigure implements WebMvcConfigurer {
         public void insertFill(MetaObject metaObject) {
             try {
                 //为空则设置deleteFlag
-                Object orgId = metaObject.getValue(ORG_ID);
-                if (ObjectUtil.isNull(orgId)) {
-                    setFieldValByName(ORG_ID, this.getUserOrgId(), metaObject);
-                }
-            } catch (ReflectionException ignored) { }
-            try {
-                //为空则设置deleteFlag
                 Object deleteFlag = metaObject.getValue(DELETE_FLAG);
                 if (ObjectUtil.isNull(deleteFlag)) {
                     setFieldValByName(DELETE_FLAG, EnumUtil.toString(CommonDeleteFlagEnum.NOT_DELETE), metaObject);

+ 99 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/controller/CarCaptureController.java

@@ -0,0 +1,99 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.ai.carCapture.controller;
+
+import cn.dev33.satoken.annotation.SaCheckPermission;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import com.github.xiaoymin.knife4j.annotations.ApiSupport;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RestController;
+import vip.xiaonuo.common.annotation.CommonLog;
+import vip.xiaonuo.common.pojo.CommonResult;
+import vip.xiaonuo.common.pojo.CommonValidList;
+import vip.xiaonuo.modular.ai.carCapture.entity.CarCapture;
+import vip.xiaonuo.modular.ai.carCapture.param.CarCaptureAddParam;
+import vip.xiaonuo.modular.ai.carCapture.param.CarCaptureEditParam;
+import vip.xiaonuo.modular.ai.carCapture.param.CarCaptureIdParam;
+import vip.xiaonuo.modular.ai.carCapture.param.CarCapturePageParam;
+import vip.xiaonuo.modular.ai.carCapture.service.CarCaptureService;
+
+import javax.annotation.Resource;
+import javax.validation.Valid;
+import javax.validation.constraints.NotEmpty;
+
+/**
+ * 车辆识别控制器
+ *
+ * @author newspaper
+ * @date  2023/12/29 09:42
+ */
+@Api(tags = "车辆识别控制器")
+@ApiSupport(author = "SNOWY_TEAM", order = 1)
+@RestController
+@Validated
+public class CarCaptureController {
+
+    @Resource
+    private CarCaptureService carCaptureService;
+
+    /**
+     * 获取车辆识别分页
+     *
+     * @author newspaper
+     * @date  2023/12/29 09:42
+     */
+    @ApiOperationSupport(order = 1)
+    @ApiOperation("获取车辆识别分页")
+    @SaCheckPermission("/ai/carCapture/page")
+    @GetMapping("/ai/carCapture/page")
+    public CommonResult<Page<CarCapture>> page(CarCapturePageParam carCapturePageParam) {
+        return CommonResult.data(carCaptureService.page(carCapturePageParam));
+    }
+
+    /**
+     * 删除车辆识别
+     *
+     * @author newspaper
+     * @date  2023/12/29 09:42
+     */
+    @ApiOperationSupport(order = 4)
+    @ApiOperation("删除车辆识别")
+    @CommonLog("删除车辆识别")
+    @SaCheckPermission("/ai/carCapture/delete")
+    @PostMapping("/ai/carCapture/delete")
+    public CommonResult<String> delete(@RequestBody @Valid @NotEmpty(message = "集合不能为空")
+                                                   CommonValidList<CarCaptureIdParam> carCaptureIdParamList) {
+        carCaptureService.delete(carCaptureIdParamList);
+        return CommonResult.ok();
+    }
+
+    /**
+     * 获取车辆识别详情
+     *
+     * @author newspaper
+     * @date  2023/12/29 09:42
+     */
+    @ApiOperationSupport(order = 5)
+    @ApiOperation("获取车辆识别详情")
+    @SaCheckPermission("/ai/carCapture/detail")
+    @GetMapping("/ai/carCapture/detail")
+    public CommonResult<CarCapture> detail(@Valid CarCaptureIdParam carCaptureIdParam) {
+        return CommonResult.data(carCaptureService.detail(carCaptureIdParam));
+    }
+}

+ 76 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/entity/CarCapture.java

@@ -0,0 +1,76 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.ai.carCapture.entity;
+
+import com.baomidou.mybatisplus.annotation.*;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 车辆识别实体
+ *
+ * @author newspaper
+ * @date  2023/12/29 09:42
+ **/
+@Getter
+@Setter
+@TableName("car_capture")
+public class CarCapture {
+
+    /** id */
+    @TableId
+    @ApiModelProperty(value = "id", position = 1)
+    private String id;
+
+    /** 时间 */
+    @ApiModelProperty(value = "时间", position = 2)
+    private Date capTime;
+
+    /** 车牌号 */
+    @ApiModelProperty(value = "车牌号", position = 3)
+    private String carNum;
+
+    /** 类型 */
+    @ApiModelProperty(value = "类型", position = 4)
+    private Integer carType;
+
+    /** 照片 */
+    @ApiModelProperty(value = "照片", position = 5)
+    private String carImgUrl;
+
+    /** 尝试进入区域 */
+    @ApiModelProperty(value = "尝试进入区域", position = 6)
+    private String devName;
+
+    /** 结果 */
+    @ApiModelProperty(value = "结果", position = 7)
+    private String capResult;
+
+    /** 通知人 */
+    @ApiModelProperty(value = "通知人", position = 8)
+    private String notifier;
+
+    /** 组织id */
+    @ApiModelProperty(value = "组织id", position = 9)
+
+private String orgId;
+
+    /** 删除标志 */
+    @ApiModelProperty(value = "删除标志", position = 10)
+    @TableLogic
+    @TableField(fill = FieldFill.INSERT)
+    private String deleteFlag;
+}

+ 34 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/enums/CarCaptureEnum.java

@@ -0,0 +1,34 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.ai.carCapture.enums;
+
+import lombok.Getter;
+
+/**
+ * 车辆识别枚举
+ *
+ * @author newspaper
+ * @date  2023/12/29 09:42
+ **/
+@Getter
+public enum CarCaptureEnum {
+
+    /** 测试 */
+    TEST("TEST");
+
+    private final String value;
+
+    CarCaptureEnum(String value) {
+        this.value = value;
+    }
+}

+ 25 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/mapper/CarCaptureMapper.java

@@ -0,0 +1,25 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.ai.carCapture.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import vip.xiaonuo.modular.ai.carCapture.entity.CarCapture;
+
+/**
+ * 车辆识别Mapper接口
+ *
+ * @author newspaper
+ * @date  2023/12/29 09:42
+ **/
+public interface CarCaptureMapper extends BaseMapper<CarCapture> {
+}

+ 5 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/mapper/mapping/CarCaptureMapper.xml

@@ -0,0 +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="vip.xiaonuo.modular.ai.carCapture.mapper.CarCaptureMapper">
+
+</mapper>

+ 62 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/param/CarCaptureAddParam.java

@@ -0,0 +1,62 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.ai.carCapture.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 车辆识别添加参数
+ *
+ * @author newspaper
+ * @date  2023/12/29 09:42
+ **/
+@Getter
+@Setter
+public class CarCaptureAddParam {
+
+    /** 时间 */
+    @ApiModelProperty(value = "时间", position = 2)
+    private Date capTime;
+
+    /** 车牌号 */
+    @ApiModelProperty(value = "车牌号", position = 3)
+    private String carNum;
+
+    /** 类型 */
+    @ApiModelProperty(value = "类型", position = 4)
+    private Integer carType;
+
+    /** 照片 */
+    @ApiModelProperty(value = "照片", position = 5)
+    private String carImgUrl;
+
+    /** 尝试进入区域 */
+    @ApiModelProperty(value = "尝试进入区域", position = 6)
+    private String devName;
+
+    /** 结果 */
+    @ApiModelProperty(value = "结果", position = 7)
+    private String capResult;
+
+    /** 通知人 */
+    @ApiModelProperty(value = "通知人", position = 8)
+    private String notifier;
+
+}

+ 67 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/param/CarCaptureEditParam.java

@@ -0,0 +1,67 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.ai.carCapture.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 车辆识别编辑参数
+ *
+ * @author newspaper
+ * @date  2023/12/29 09:42
+ **/
+@Getter
+@Setter
+public class CarCaptureEditParam {
+
+    /** id */
+    @ApiModelProperty(value = "id", required = true, position = 1)
+    @NotBlank(message = "id不能为空")
+    private String id;
+
+    /** 时间 */
+    @ApiModelProperty(value = "时间", position = 2)
+    private Date capTime;
+
+    /** 车牌号 */
+    @ApiModelProperty(value = "车牌号", position = 3)
+    private String carNum;
+
+    /** 类型 */
+    @ApiModelProperty(value = "类型", position = 4)
+    private Integer carType;
+
+    /** 照片 */
+    @ApiModelProperty(value = "照片", position = 5)
+    private String carImgUrl;
+
+    /** 尝试进入区域 */
+    @ApiModelProperty(value = "尝试进入区域", position = 6)
+    private String devName;
+
+    /** 结果 */
+    @ApiModelProperty(value = "结果", position = 7)
+    private String capResult;
+
+    /** 通知人 */
+    @ApiModelProperty(value = "通知人", position = 8)
+    private String notifier;
+
+}

+ 35 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/param/CarCaptureIdParam.java

@@ -0,0 +1,35 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.ai.carCapture.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * 车辆识别Id参数
+ *
+ * @author newspaper
+ * @date  2023/12/29 09:42
+ **/
+@Getter
+@Setter
+public class CarCaptureIdParam {
+
+    /** id */
+    @ApiModelProperty(value = "id", required = true)
+    @NotBlank(message = "id不能为空")
+    private String id;
+}

+ 67 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/param/CarCapturePageParam.java

@@ -0,0 +1,67 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.ai.carCapture.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 车辆识别查询参数
+ *
+ * @author newspaper
+ * @date  2023/12/29 09:42
+ **/
+@Getter
+@Setter
+public class CarCapturePageParam {
+
+    /** 当前页 */
+    @ApiModelProperty(value = "当前页码")
+    private Integer current;
+
+    /** 每页条数 */
+    @ApiModelProperty(value = "每页条数")
+    private Integer size;
+
+    /** 排序字段 */
+    @ApiModelProperty(value = "排序字段,字段驼峰名称,如:userName")
+    private String sortField;
+
+    /** 排序方式 */
+    @ApiModelProperty(value = "排序方式,升序:ASCEND;降序:DESCEND")
+    private String sortOrder;
+
+    /** 关键词 */
+    @ApiModelProperty(value = "关键词")
+    private String searchKey;
+
+    /** 时间开始 */
+    @ApiModelProperty(value = "时间开始")
+    private String startCapTime;
+
+    /** 时间结束 */
+    @ApiModelProperty(value = "时间结束")
+    private String endCapTime;
+
+    /** 类型 */
+    @ApiModelProperty(value = "类型")
+    private Integer carType;
+
+    /** 结果 */
+    @ApiModelProperty(value = "结果")
+    private String capResult;
+
+}

+ 80 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/service/CarCaptureService.java

@@ -0,0 +1,80 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.ai.carCapture.service;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.IService;
+import vip.xiaonuo.modular.ai.carCapture.entity.CarCapture;
+import vip.xiaonuo.modular.ai.carCapture.param.CarCaptureAddParam;
+import vip.xiaonuo.modular.ai.carCapture.param.CarCaptureEditParam;
+import vip.xiaonuo.modular.ai.carCapture.param.CarCaptureIdParam;
+import vip.xiaonuo.modular.ai.carCapture.param.CarCapturePageParam;
+
+import java.util.List;
+
+/**
+ * 车辆识别Service接口
+ *
+ * @author newspaper
+ * @date  2023/12/29 09:42
+ **/
+public interface CarCaptureService extends IService<CarCapture> {
+
+    /**
+     * 获取车辆识别分页
+     *
+     * @author newspaper
+     * @date  2023/12/29 09:42
+     */
+    Page<CarCapture> page(CarCapturePageParam carCapturePageParam);
+
+    /**
+     * 添加车辆识别
+     *
+     * @author newspaper
+     * @date  2023/12/29 09:42
+     */
+    void add(CarCaptureAddParam carCaptureAddParam);
+
+    /**
+     * 编辑车辆识别
+     *
+     * @author newspaper
+     * @date  2023/12/29 09:42
+     */
+    void edit(CarCaptureEditParam carCaptureEditParam);
+
+    /**
+     * 删除车辆识别
+     *
+     * @author newspaper
+     * @date  2023/12/29 09:42
+     */
+    void delete(List<CarCaptureIdParam> carCaptureIdParamList);
+
+    /**
+     * 获取车辆识别详情
+     *
+     * @author newspaper
+     * @date  2023/12/29 09:42
+     */
+    CarCapture detail(CarCaptureIdParam carCaptureIdParam);
+
+    /**
+     * 获取车辆识别详情
+     *
+     * @author newspaper
+     * @date  2023/12/29 09:42
+     **/
+    CarCapture queryEntity(String id);
+}

+ 102 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/ai/carCapture/service/impl/CarCaptureServiceImpl.java

@@ -0,0 +1,102 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.ai.carCapture.service.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.collection.CollStreamUtil;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import vip.xiaonuo.auth.core.util.StpLoginUserUtil;
+import vip.xiaonuo.common.enums.CommonSortOrderEnum;
+import vip.xiaonuo.common.exception.CommonException;
+import vip.xiaonuo.common.page.CommonPageRequest;
+import vip.xiaonuo.modular.ai.carCapture.entity.CarCapture;
+import vip.xiaonuo.modular.ai.carCapture.mapper.CarCaptureMapper;
+import vip.xiaonuo.modular.ai.carCapture.param.CarCaptureAddParam;
+import vip.xiaonuo.modular.ai.carCapture.param.CarCaptureEditParam;
+import vip.xiaonuo.modular.ai.carCapture.param.CarCaptureIdParam;
+import vip.xiaonuo.modular.ai.carCapture.param.CarCapturePageParam;
+import vip.xiaonuo.modular.ai.carCapture.service.CarCaptureService;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 车辆识别Service接口实现类
+ *
+ * @author newspaper
+ * @date  2023/12/29 09:42
+ **/
+@Service
+public class CarCaptureServiceImpl extends ServiceImpl<CarCaptureMapper, CarCapture> implements CarCaptureService {
+
+    @Override
+    public Page<CarCapture> page(CarCapturePageParam carCapturePageParam) {
+        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+        QueryWrapper<CarCapture> queryWrapper = new QueryWrapper<>();
+        queryWrapper.lambda().eq(CarCapture::getOrgId,orgId).orderByDesc(CarCapture::getCapTime);
+        if(ObjectUtil.isNotEmpty(carCapturePageParam.getStartCapTime()) && ObjectUtil.isNotEmpty(carCapturePageParam.getEndCapTime())) {
+            String startTime = carCapturePageParam.getStartCapTime() + " 00:00:00";
+            String endTime = carCapturePageParam.getEndCapTime() + " 23:59:59";
+            queryWrapper.lambda().between(CarCapture::getCapTime, startTime, endTime);
+        }
+        if(ObjectUtil.isNotEmpty(carCapturePageParam.getCarType())) {
+            queryWrapper.lambda().eq(CarCapture::getCarType, carCapturePageParam.getCarType());
+        }
+        if(ObjectUtil.isNotEmpty(carCapturePageParam.getCapResult())) {
+            queryWrapper.lambda().eq(CarCapture::getCapResult, carCapturePageParam.getCapResult());
+        }
+        return this.page(CommonPageRequest.defaultPage(), queryWrapper);
+    }
+
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public void add(CarCaptureAddParam carCaptureAddParam) {
+        CarCapture carCapture = BeanUtil.toBean(carCaptureAddParam, CarCapture.class);
+        this.save(carCapture);
+    }
+
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public void edit(CarCaptureEditParam carCaptureEditParam) {
+        CarCapture carCapture = this.queryEntity(carCaptureEditParam.getId());
+        BeanUtil.copyProperties(carCaptureEditParam, carCapture);
+        this.updateById(carCapture);
+    }
+
+    @Transactional(rollbackFor = Exception.class)
+    @Override
+    public void delete(List<CarCaptureIdParam> carCaptureIdParamList) {
+        // 执行删除
+        this.removeByIds(CollStreamUtil.toList(carCaptureIdParamList, CarCaptureIdParam::getId));
+    }
+
+    @Override
+    public CarCapture detail(CarCaptureIdParam carCaptureIdParam) {
+        return this.queryEntity(carCaptureIdParam.getId());
+    }
+
+    @Override
+    public CarCapture queryEntity(String id) {
+        CarCapture carCapture = this.getById(id);
+        if(ObjectUtil.isEmpty(carCapture)) {
+            throw new CommonException("车辆识别不存在,id值为:{}", id);
+        }
+        return carCapture;
+    }
+}

+ 18 - 6
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseConfig/controller/BaseConfigController.java

@@ -25,14 +25,12 @@ import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RestController;
+import vip.xiaonuo.biz.modular.org.entity.BizOrg;
 import vip.xiaonuo.common.annotation.CommonLog;
 import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.common.pojo.CommonValidList;
 import vip.xiaonuo.modular.base.baseConfig.entity.BaseConfig;
-import vip.xiaonuo.modular.base.baseConfig.param.BaseConfigAddParam;
-import vip.xiaonuo.modular.base.baseConfig.param.BaseConfigEditParam;
-import vip.xiaonuo.modular.base.baseConfig.param.BaseConfigIdParam;
-import vip.xiaonuo.modular.base.baseConfig.param.BaseConfigListChildParam;
+import vip.xiaonuo.modular.base.baseConfig.param.*;
 import vip.xiaonuo.modular.base.baseConfig.service.BaseConfigService;
 
 import javax.annotation.Resource;
@@ -64,8 +62,8 @@ public class BaseConfigController {
     @ApiOperationSupport(order = 1)
     @ApiOperation("获取基础设置树")
     @GetMapping("/base/baseConfig/tree")
-    public CommonResult<List<Tree<String>>> tree() {
-        return CommonResult.data(baseConfigService.tree());
+    public CommonResult<List<Tree<String>>> tree(BaseConfigOrgIdParam baseConfigOrgIdParam) {
+        return CommonResult.data(baseConfigService.tree(baseConfigOrgIdParam));
     }
 
     /**
@@ -140,4 +138,18 @@ public class BaseConfigController {
         return CommonResult.data(baseConfigService.listChild(baseConfigListChildParam));
     }
 
+    /**
+     * 获取当前用户组织id
+     *
+     * @author newspaper
+     * @date  2023/12/08 10:22
+     */
+    @ApiOperationSupport(order = 7)
+    @ApiOperation("获取组织id")
+    @GetMapping("/base/baseConfig/listOrgId")
+    public CommonResult<List<BizOrg>> listOrgId() {
+        return CommonResult.data(baseConfigService.listOrgId());
+    }
+
+
 }

+ 2 - 2
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseConfig/entity/BaseConfig.java

@@ -61,6 +61,6 @@ public class BaseConfig extends CommonEntity implements TransPojo {
 
     /** 组织ID */
     @ApiModelProperty(value = "组织ID", position = 7)
-    @TableField(fill = FieldFill.INSERT)
-    private String orgId;
+
+private String orgId;
 }

+ 5 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseConfig/param/BaseConfigAddParam.java

@@ -52,4 +52,9 @@ public class BaseConfigAddParam {
     @ApiModelProperty(value = "备注", position = 6)
     private String remarks;
 
+    /** 组织id */
+    @ApiModelProperty(value = "组织id", position = 7)
+    @NotBlank(message = "orgId不能为空")
+    private String orgId;
+
 }

+ 5 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseConfig/param/BaseConfigListChildParam.java

@@ -40,4 +40,9 @@ public class BaseConfigListChildParam {
     /** 每页条数 */
     @ApiModelProperty(value = "每页条数",position = 3)
     private Integer size;
+
+    /** 组织id */
+    @ApiModelProperty(value = "组织id", position = 4)
+    @NotBlank(message = "orgId不能为空")
+    private String orgId;
 }

+ 35 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseConfig/param/BaseConfigOrgIdParam.java

@@ -0,0 +1,35 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.base.baseConfig.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * 基础设置Id参数
+ *
+ * @author newspaper
+ * @date  2023/12/08 10:22
+ **/
+@Getter
+@Setter
+public class BaseConfigOrgIdParam {
+
+    /** 组织id */
+    @ApiModelProperty(value = "组织id", required = true,position = 1)
+    @NotBlank(message = "orgId不能为空")
+    private String orgId;
+}

+ 5 - 5
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseConfig/service/BaseConfigService.java

@@ -16,11 +16,9 @@ import cn.hutool.core.lang.tree.Tree;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
+import vip.xiaonuo.biz.modular.org.entity.BizOrg;
 import vip.xiaonuo.modular.base.baseConfig.entity.BaseConfig;
-import vip.xiaonuo.modular.base.baseConfig.param.BaseConfigAddParam;
-import vip.xiaonuo.modular.base.baseConfig.param.BaseConfigEditParam;
-import vip.xiaonuo.modular.base.baseConfig.param.BaseConfigIdParam;
-import vip.xiaonuo.modular.base.baseConfig.param.BaseConfigListChildParam;
+import vip.xiaonuo.modular.base.baseConfig.param.*;
 
 import java.util.List;
 
@@ -38,7 +36,7 @@ public interface BaseConfigService extends IService<BaseConfig> {
      * @author newspaper
      * @date  2023/12/08 10:22
      */
-    List<Tree<String>> tree();
+    List<Tree<String>> tree(BaseConfigOrgIdParam baseConfigOrgIdParam);
 
     /**
      * 添加基础设置
@@ -82,4 +80,6 @@ public interface BaseConfigService extends IService<BaseConfig> {
 
 
     Page<BaseConfig> listChild(BaseConfigListChildParam baseConfigListChildParam);
+
+    List<BizOrg> listOrgId();
 }

+ 32 - 18
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseConfig/service/impl/BaseConfigServiceImpl.java

@@ -23,19 +23,19 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import vip.xiaonuo.auth.core.util.StpLoginUserUtil;
+import vip.xiaonuo.biz.modular.org.entity.BizOrg;
+import vip.xiaonuo.biz.modular.org.mapper.BizOrgMapper;
 import vip.xiaonuo.common.exception.CommonException;
 import vip.xiaonuo.common.listener.CommonDataChangeEventCenter;
 import vip.xiaonuo.common.page.CommonPageRequest;
 import vip.xiaonuo.core.enums.BaseDataTypeEnum;
 import vip.xiaonuo.modular.base.baseConfig.entity.BaseConfig;
 import vip.xiaonuo.modular.base.baseConfig.mapper.BaseConfigMapper;
-import vip.xiaonuo.modular.base.baseConfig.param.BaseConfigAddParam;
-import vip.xiaonuo.modular.base.baseConfig.param.BaseConfigEditParam;
-import vip.xiaonuo.modular.base.baseConfig.param.BaseConfigIdParam;
-import vip.xiaonuo.modular.base.baseConfig.param.BaseConfigListChildParam;
+import vip.xiaonuo.modular.base.baseConfig.param.*;
 import vip.xiaonuo.modular.base.baseConfig.service.BaseConfigService;
 
 import javax.validation.constraints.NotBlank;
@@ -51,10 +51,12 @@ import java.util.stream.Collectors;
  **/
 @Service
 public class BaseConfigServiceImpl extends ServiceImpl<BaseConfigMapper, BaseConfig> implements BaseConfigService {
+    @Autowired
+    private BizOrgMapper bizOrgMapper;
 
     @Override
-    public List<Tree<String>> tree() {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+    public List<Tree<String>> tree(BaseConfigOrgIdParam baseConfigOrgIdParam) {
+        String orgId = baseConfigOrgIdParam.getOrgId();
         List<BaseConfig> allConfigs = new ArrayList<>();
         List<BaseConfig> baseConfigs = this.list(new LambdaQueryWrapper<BaseConfig>().eq(BaseConfig::getParentId, 0).orderByAsc(BaseConfig::getSortCode));
         List<BaseConfig> childConfigs = this.list(new LambdaQueryWrapper<BaseConfig>().eq(BaseConfig::getOrgId, orgId).orderByAsc(BaseConfig::getSortCode));
@@ -72,13 +74,13 @@ public class BaseConfigServiceImpl extends ServiceImpl<BaseConfigMapper, BaseCon
     @Override
     public void add(BaseConfigAddParam baseConfigAddParam) {
         BaseConfig baseConfig = BeanUtil.toBean(baseConfigAddParam, BaseConfig.class);
-        if (this.count(new QueryWrapper<BaseConfig>().lambda().eq(BaseConfig::getConfigName,baseConfig.getConfigName())) > 0) {
+        if (this.count(new QueryWrapper<BaseConfig>().lambda()
+                .eq(BaseConfig::getOrgId,baseConfigAddParam.getOrgId())
+                .eq(BaseConfig::getParentId,baseConfigAddParam.getParentId())
+                .eq(BaseConfig::getConfigName,baseConfig.getConfigName())) > 0) {
             throw new CommonException("存在重复配置名称!");
         }
         this.save(baseConfig);
-
-        // 发布增加事件
-        CommonDataChangeEventCenter.doAddWithData(BaseDataTypeEnum.BASE_CONFIG.getValue(), JSONUtil.createArray().put(baseConfig));
     }
 
     @Transactional(rollbackFor = Exception.class)
@@ -86,13 +88,14 @@ public class BaseConfigServiceImpl extends ServiceImpl<BaseConfigMapper, BaseCon
     public void edit(BaseConfigEditParam baseConfigEditParam) {
         BaseConfig baseConfig = this.queryEntity(baseConfigEditParam.getId());
         BeanUtil.copyProperties(baseConfigEditParam, baseConfig);
-        if (this.count(new QueryWrapper<BaseConfig>().lambda().ne(BaseConfig::getId,baseConfig.getId()).eq(BaseConfig::getConfigName,baseConfig.getConfigName())) > 0) {
+        if (this.count(new QueryWrapper<BaseConfig>().lambda()
+                .ne(BaseConfig::getId,baseConfig.getId())
+                .eq(BaseConfig::getOrgId,baseConfig.getOrgId())
+                .eq(BaseConfig::getParentId,baseConfig.getParentId())
+                .eq(BaseConfig::getConfigName,baseConfig.getConfigName())) > 0) {
             throw new CommonException("存在重复配置名称!");
         }
         this.updateById(baseConfig);
-
-        // 发布更新事件
-        CommonDataChangeEventCenter.doUpdateWithData(BaseDataTypeEnum.BASE_CONFIG.getValue(), JSONUtil.createArray().put(baseConfig));
     }
 
     @Transactional(rollbackFor = Exception.class)
@@ -101,9 +104,6 @@ public class BaseConfigServiceImpl extends ServiceImpl<BaseConfigMapper, BaseCon
         List<String> toDeleteBaseConfigIdList = CollStreamUtil.toList(baseConfigIdParamList, BaseConfigIdParam::getId);
         // 执行删除
         this.removeByIds(toDeleteBaseConfigIdList);
-
-        // 发布删除事件
-        CommonDataChangeEventCenter.doDeleteWithDataId(BaseDataTypeEnum.BASE_CONFIG.getValue(), toDeleteBaseConfigIdList);
     }
 
     @Override
@@ -122,12 +122,26 @@ public class BaseConfigServiceImpl extends ServiceImpl<BaseConfigMapper, BaseCon
 
     @Override
     public Page<BaseConfig> listChild(BaseConfigListChildParam baseConfigListChildParam) {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+        String orgId = baseConfigListChildParam.getOrgId();
         QueryWrapper<BaseConfig> queryWrapper = new QueryWrapper();
         queryWrapper.lambda().eq(BaseConfig::getParentId, baseConfigListChildParam.getParentId()).eq(BaseConfig::getOrgId, orgId);
         Page<BaseConfig> baseConfigList = this.page(CommonPageRequest.defaultPage(),queryWrapper);
         return baseConfigList;
     }
 
+    @Override
+    public List<BizOrg> listOrgId() {
+        List<BizOrg> bizOrgs = new ArrayList<>();
+        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+        BizOrg bizOrg = bizOrgMapper.selectById(orgId);
+        if (bizOrg.getParentId().equals("0")){
+            List<BizOrg> bizOrgs1 = bizOrgMapper.selectList(new QueryWrapper<BizOrg>().lambda().eq(BizOrg::getParentId, orgId));
+            bizOrgs.addAll(bizOrgs1);
+        }else {
+            bizOrgs.add(bizOrg);
+        }
+        return bizOrgs;
+    }
+
 
 }

+ 2 - 2
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseSeason/controller/BaseSeasonController.java

@@ -90,7 +90,7 @@ public class BaseSeasonController {
     @ApiOperation("获取启用季节")
     @CommonLog("获取启用季节")
     @GetMapping("/base/baseSeason/getEnableSeason")
-    public CommonResult<Integer> getEnableSeason() {
-        return CommonResult.data(baseSeasonService.getEnableSeason());
+    public CommonResult<Integer> getEnableSeason(BaseSeasonOrgIdParam baseSeasonOrgIdParam) {
+        return CommonResult.data(baseSeasonService.getEnableSeason(baseSeasonOrgIdParam));
     }
 }

+ 2 - 2
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseSeason/entity/BaseSeason.java

@@ -89,6 +89,6 @@ public class BaseSeason extends CommonEntity implements TransPojo {
 
     /** 组织ID */
     @ApiModelProperty(value = "组织ID", position = 12)
-    @TableField(fill = FieldFill.INSERT)
-    private String orgId;
+
+private String orgId;
 }

+ 5 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseSeason/param/BaseSeasonEditParam.java

@@ -84,4 +84,9 @@ public class BaseSeasonEditParam {
     @ApiModelProperty(value = "季节类型", position = 11, example = "0:自定义 1:两分两至法 2:阳历划分法 3:四立划分法")
     private Integer seasonType;
 
+    /** 组织id */
+    @ApiModelProperty(value = "组织id", required = true,position = 99)
+    @NotBlank(message = "orgId不能为空")
+    private String orgId;
+
 }

+ 35 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseSeason/param/BaseSeasonOrgIdParam.java

@@ -0,0 +1,35 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.base.baseSeason.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * 季节Id参数
+ *
+ * @author newspaper
+ * @date  2023/12/18 11:14
+ **/
+@Getter
+@Setter
+public class BaseSeasonOrgIdParam {
+
+    /** 组织id */
+    @ApiModelProperty(value = "组织id", required = true, position = 99)
+    @NotBlank(message = "orgId不能为空")
+    private String orgId;
+}

+ 5 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseSeason/param/BaseSeasonTypeParam.java

@@ -33,4 +33,9 @@ public class BaseSeasonTypeParam {
     @ApiModelProperty(value = "季节类型")
     @NotBlank(message = "seasonType不能为空")
     private String seasonType;
+
+    /** 组织id */
+    @ApiModelProperty(value = "组织id")
+    @NotBlank(message = "orgId不能为空")
+    private String orgId;
 }

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseSeason/service/BaseSeasonService.java

@@ -46,5 +46,5 @@ public interface BaseSeasonService extends IService<BaseSeason> {
 
     BaseSeason getSeason(BaseSeasonTypeParam baseSeasonTypeParam) throws ParseException;
 
-    Integer getEnableSeason();
+    Integer getEnableSeason(BaseSeasonOrgIdParam baseSeasonOrgIdParam);
 }

+ 3 - 3
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/baseSeason/service/impl/BaseSeasonServiceImpl.java

@@ -63,7 +63,7 @@ public class BaseSeasonServiceImpl extends ServiceImpl<BaseSeasonMapper, BaseSea
                 .withMonth(Month.FEBRUARY.getValue())  // 设置月份为二月
                 .with(TemporalAdjusters.lastDayOfMonth());  // 获取月份的最后一天
 
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+        String orgId = baseSeasonTypeParam.getOrgId();
         Integer seasonType = Integer.valueOf(baseSeasonTypeParam.getSeasonType());
         BaseSeason baseSeason = this.getOne(new QueryWrapper<BaseSeason>().lambda().eq(BaseSeason::getOrgId, orgId).eq(BaseSeason::getSeasonType, seasonType));
         if (ObjectUtil.isEmpty(baseSeason)){
@@ -187,8 +187,8 @@ public class BaseSeasonServiceImpl extends ServiceImpl<BaseSeasonMapper, BaseSea
     }
 
     @Override
-    public Integer getEnableSeason() {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+    public Integer getEnableSeason(BaseSeasonOrgIdParam baseSeasonOrgIdParam) {
+        String orgId = baseSeasonOrgIdParam.getOrgId();
         Integer seasonType = new Integer(0);
         BaseSeason baseSeason = this.getOne(new QueryWrapper<BaseSeason>().lambda().eq(BaseSeason::getStatus, 1).eq(BaseSeason::getOrgId, orgId));
         if (ObjectUtil.isNotEmpty(baseSeason)){

+ 6 - 5
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/department/controller/DepartmentController.java

@@ -61,8 +61,8 @@ public class DepartmentController {
     @ApiOperationSupport(order = 1)
     @ApiOperation("获取部门树")
     @GetMapping("/base/department/tree")
-    public CommonResult<List<Tree<String>>> tree() {
-        return CommonResult.data(departmentService.tree());
+    public CommonResult<List<Tree<String>>> tree(DepartmentOrgIdParam departmentOrgIdParam) {
+        return CommonResult.data(departmentService.tree(departmentOrgIdParam));
     }
 
     /**
@@ -106,12 +106,13 @@ public class DepartmentController {
                                     @RequestParam @ApiParam(value = "上级部门ID") String parentId,
                                     @RequestParam @ApiParam(value = "所在区域") String departmentRegion,
                                     @RequestParam @ApiParam(value = "详细地址") String detailLocation,
+                                    @RequestParam @ApiParam(value = "组织di") String orgId,
                                     @RequestParam(required = false) @ApiParam(value = "部门电话") String departmentPhone,
                                     @RequestParam(required = false) @ApiParam(value = "部门负责人") String departmentManager,
                                     @RequestParam(required = false) @ApiParam(value = "描述") String remarks,
                                     @RequestParam(required = false) @ApiParam(value = "排序码") Integer sortCode,
                                     @RequestParam(value = "departmentImgUrl", required = false) @ApiParam(value = "部门图片") MultipartFile departmentImgUrl) {
-        departmentService.add(departmentName,parentId,departmentRegion,detailLocation,departmentPhone,departmentManager,remarks,sortCode,departmentImgUrl);
+        departmentService.add(departmentName,parentId,departmentRegion,detailLocation,departmentPhone,departmentManager,remarks,sortCode,departmentImgUrl,orgId);
         return CommonResult.ok();
     }
 
@@ -177,8 +178,8 @@ public class DepartmentController {
     @ApiOperationSupport(order = 7)
     @ApiOperation("获取人员选择器")
     @GetMapping("/base/department/userSelector")
-    public CommonResult<List<BizUser>> userSelector() {
-        return CommonResult.data(departmentService.userSelector());
+    public CommonResult<List<BizUser>> userSelector(DepartmentOrgIdParam departmentOrgIdParam) {
+        return CommonResult.data(departmentService.userSelector(departmentOrgIdParam));
     }
 
 

+ 0 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/department/entity/Department.java

@@ -82,7 +82,6 @@ public class Department extends CommonEntity implements TransPojo {
 
     /** 组织ID */
     @ApiModelProperty(value = "组织ID", position = 11)
-    @TableField(fill = FieldFill.INSERT)
     private String orgId;
 
     /** 负责人名称 */

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/department/param/DepartmentAddParam.java

@@ -27,7 +27,7 @@ import javax.validation.constraints.NotNull;
  **/
 @Getter
 @Setter
-public class DepartmentAddParam {
+public class DepartmentAddParam extends DepartmentOrgIdParam{
 
     /** 部门名称 */
     @ApiModelProperty(value = "部门名称", required = true, position = 2)

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/department/param/DepartmentChildParam.java

@@ -26,7 +26,7 @@ import javax.validation.constraints.NotBlank;
  **/
 @Getter
 @Setter
-public class DepartmentChildParam {
+public class DepartmentChildParam extends DepartmentOrgIdParam{
 
     /** 父id */
     @ApiModelProperty(value = "父id", required = true, position = 1)

+ 35 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/department/param/DepartmentOrgIdParam.java

@@ -0,0 +1,35 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.base.department.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * 部门Id参数
+ *
+ * @author newspaper
+ * @date  2023/12/13 08:44
+ **/
+@Getter
+@Setter
+public class DepartmentOrgIdParam {
+
+    /** 组织id */
+    @ApiModelProperty(value = "组织id", required = true,position = 99)
+    @NotBlank(message = "orgId不能为空")
+    private String orgId;
+}

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/department/param/DepartmentPageParam.java

@@ -24,7 +24,7 @@ import lombok.Setter;
  **/
 @Getter
 @Setter
-public class DepartmentPageParam {
+public class DepartmentPageParam extends DepartmentOrgIdParam{
 
     /** 当前页 */
     @ApiModelProperty(value = "当前页码")

+ 3 - 3
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/department/service/DepartmentService.java

@@ -45,7 +45,7 @@ public interface DepartmentService extends IService<Department> {
      * @author newspaper
      * @date  2023/12/13 08:44
      */
-    void add(String departmentName, String parentId, String departmentRegion, String detailLocation, String departmentPhone, String departmentManager, String remarks, Integer sortCode, MultipartFile departmentImgUrl);
+    void add(String departmentName, String parentId, String departmentRegion, String detailLocation, String departmentPhone, String departmentManager, String remarks, Integer sortCode, MultipartFile departmentImgUrl,String orgId);
 
     /**
      * 编辑部门
@@ -79,9 +79,9 @@ public interface DepartmentService extends IService<Department> {
      **/
     Department queryEntity(String id);
 
-    List<Tree<String>> tree();
+    List<Tree<String>> tree(DepartmentOrgIdParam departmentOrgIdParam);
 
     Page<Department> listChild(DepartmentChildParam departmentChildParam);
 
-    List<BizUser> userSelector();
+    List<BizUser> userSelector(DepartmentOrgIdParam departmentOrgIdParam);
 }

+ 9 - 15
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/department/service/impl/DepartmentServiceImpl.java

@@ -68,11 +68,9 @@ public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Departm
     @Autowired
     private DevFileService devFileService;
 
-
-
     @Override
-    public List<Tree<String>> tree() {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+    public List<Tree<String>> tree(DepartmentOrgIdParam departmentOrgIdParam) {
+        String orgId = departmentOrgIdParam.getOrgId();
         List<Department> allDepartment= new ArrayList<>();
         List<Department> baseConfigs = this.list(new LambdaQueryWrapper<Department>().eq(Department::getOrgId, orgId).orderByAsc(Department::getSortCode));
 
@@ -100,12 +98,13 @@ public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Departm
         if (ObjectUtil.isNotEmpty(departmentPageParam.getSearchKey())){
             queryWrapper.lambda().eq(Department::getDepartmentName,departmentPageParam.getSearchKey());
         }
+        queryWrapper.lambda().eq(Department::getOrgId,departmentPageParam.getOrgId());
         return this.page(CommonPageRequest.defaultPage(), queryWrapper);
     }
 
     @Transactional(rollbackFor = Exception.class)
     @Override
-    public void add(String departmentName, String parentId, String departmentRegion, String detailLocation, String departmentPhone, String departmentManager, String remarks, Integer sortCode, MultipartFile departmentImgUrl) {
+    public void add(String departmentName, String parentId, String departmentRegion, String detailLocation, String departmentPhone, String departmentManager, String remarks, Integer sortCode, MultipartFile departmentImgUrl,String orgId) {
         if (this.count(new QueryWrapper<Department>().lambda().eq(Department::getDepartmentName,departmentName)) > 0) {
             throw new CommonException("存在重复部门名称!");
         }
@@ -118,21 +117,19 @@ public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Departm
         department.setDepartmentManager(departmentManager);
         department.setRemarks(remarks);
         department.setSortCode(sortCode);
+        department.setOrgId(orgId);
         if (ObjectUtil.isNotEmpty(departmentImgUrl)){
             String uploadReturnUrl = devFileService.uploadReturnId(DevFileEngineTypeEnum.LOCAL.getValue(), departmentImgUrl);
             department.setDepartmentImgId(uploadReturnUrl);
         }
         this.save(department);
-
-        // 发布增加事件
-        CommonDataChangeEventCenter.doAddWithData(BaseDataTypeEnum.DEPARTMENT.getValue(), JSONUtil.createArray().put(department));
     }
 
     @Transactional(rollbackFor = Exception.class)
     @Override
     public void edit(String id,String departmentName, String parentId, String departmentRegion, String detailLocation, String departmentPhone, String departmentManager, String remarks, Integer sortCode, MultipartFile departmentImgUrl) {
         Department department = this.queryEntity(id);
-        if (this.count(new QueryWrapper<Department>().lambda().eq(Department::getDepartmentName,departmentName).ne(Department::getId,id)) > 0) {
+        if (this.count(new QueryWrapper<Department>().lambda().eq(Department::getOrgId,department.getOrgId()).eq(Department::getDepartmentName,departmentName).ne(Department::getId,id)) > 0) {
             throw new CommonException("存在重复部门名称!");
         }
         department.setDepartmentName(departmentName);
@@ -148,9 +145,6 @@ public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Departm
             department.setDepartmentImgId(uploadReturnUrl);
         }
         this.updateById(department);
-
-        // 发布更新事件
-        CommonDataChangeEventCenter.doUpdateWithData(BaseDataTypeEnum.DEPARTMENT.getValue(), JSONUtil.createArray().put(department));
     }
 
     @Transactional(rollbackFor = Exception.class)
@@ -188,14 +182,14 @@ public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Departm
 
     @Override
     public Page<Department> listChild(DepartmentChildParam departmentChildParam) {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+        String orgId = departmentChildParam.getOrgId();
         Page<Department> departmentList = this.page(CommonPageRequest.defaultPage(),new QueryWrapper<Department>().lambda().eq(Department::getOrgId, orgId).eq(Department::getParentId,departmentChildParam.getParentId()));
         return departmentList;
     }
 
     @Override
-    public List<BizUser> userSelector() {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+    public List<BizUser> userSelector(DepartmentOrgIdParam departmentOrgIdParam) {
+        String orgId = departmentOrgIdParam.getOrgId();
         List<BizUser> users = bizUserMapper.selectList(new QueryWrapper<BizUser>().eq("ORG_ID", orgId));
         return users;
     }

+ 23 - 4
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/inventoryUse/controller/InventoryUseController.java

@@ -27,11 +27,14 @@ import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.common.pojo.CommonValidList;
 import vip.xiaonuo.modular.base.baseConfig.entity.BaseConfig;
 import vip.xiaonuo.modular.base.baseConfig.service.BaseConfigService;
+import vip.xiaonuo.modular.base.department.service.DepartmentService;
 import vip.xiaonuo.modular.base.inventoryUse.entity.InventoryUse;
 import vip.xiaonuo.modular.base.inventoryUse.entity.vo.InventoryUseDetailVo;
 import vip.xiaonuo.modular.base.inventoryUse.entity.vo.InventoryUseVo;
 import vip.xiaonuo.modular.base.inventoryUse.param.*;
 import vip.xiaonuo.modular.base.inventoryUse.service.InventoryUseService;
+import vip.xiaonuo.modular.base.peoplelist.entity.PeopleList;
+import vip.xiaonuo.modular.base.peoplelist.service.PeopleListService;
 
 import javax.annotation.Resource;
 import javax.validation.Valid;
@@ -56,6 +59,8 @@ public class InventoryUseController {
     private InventoryUseService inventoryUseService;
     @Resource
     private BaseConfigService baseConfigService;
+    @Resource
+    private PeopleListService peopleListService;
 
     /**
      * 获取物资领用分页
@@ -156,8 +161,8 @@ public class InventoryUseController {
     @ApiOperationSupport(order = 7)
     @ApiOperation("获取物资类别选择器")
     @GetMapping("/base/inventoryUse/typeSelector")
-    public CommonResult<List<BaseConfig>> typeSelector() {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+    public CommonResult<List<BaseConfig>> typeSelector(InventoryUseOrgIdParam inventoryUseOrgIdParam) {
+        String orgId = inventoryUseOrgIdParam.getOrgId();
         BaseConfig baseConfig = baseConfigService.getOne(new QueryWrapper<BaseConfig>().lambda().eq(BaseConfig::getConfigName, "物资类别").eq(BaseConfig::getParentId, 0));
         List<BaseConfig> baseConfigs = baseConfigService.list(new QueryWrapper<BaseConfig>().lambda().eq(BaseConfig::getParentId, baseConfig.getId()).eq(BaseConfig::getOrgId, orgId));
         return CommonResult.data(baseConfigs);
@@ -172,10 +177,24 @@ public class InventoryUseController {
     @ApiOperationSupport(order = 8)
     @ApiOperation("获取仓库选择器")
     @GetMapping("/base/inventoryUse/warehouseSelector")
-    public CommonResult<List<BaseConfig>> warehouseSelector() {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+    public CommonResult<List<BaseConfig>> warehouseSelector(InventoryUseOrgIdParam inventoryUseOrgIdParam) {
+        String orgId = inventoryUseOrgIdParam.getOrgId();
         BaseConfig baseConfig = baseConfigService.getOne(new QueryWrapper<BaseConfig>().lambda().eq(BaseConfig::getConfigName, "仓库").eq(BaseConfig::getParentId, 0));
         List<BaseConfig> baseConfigs = baseConfigService.list(new QueryWrapper<BaseConfig>().lambda().eq(BaseConfig::getParentId, baseConfig.getId()).eq(BaseConfig::getOrgId, orgId));
         return CommonResult.data(baseConfigs);
     }
+
+    /**
+     * 获取部门人员选择器
+     *
+     * @author newspaper
+     * @date  2023/12/11 10:43
+     */
+    @ApiOperationSupport(order = 9)
+    @ApiOperation("获取部门人员选择器")
+    @GetMapping("/base/inventoryUse/departmentPersonSelector")
+    public CommonResult<List<PeopleList>> departmentPersonSelector(InventoryUseDepartmentIdParam inventoryUseDepartmentIdParam) {
+        List<vip.xiaonuo.modular.base.peoplelist.entity.PeopleList> list = peopleListService.list(new QueryWrapper<vip.xiaonuo.modular.base.peoplelist.entity.PeopleList>().lambda().eq(vip.xiaonuo.modular.base.peoplelist.entity.PeopleList::getDepartment, inventoryUseDepartmentIdParam.getDepartmentId()));
+        return CommonResult.data(list);
+    }
 }

+ 2 - 2
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/inventoryUse/entity/InventoryUse.java

@@ -23,6 +23,7 @@ import vip.xiaonuo.common.pojo.CommonEntity;
 import vip.xiaonuo.dev.modular.file.entity.DevFile;
 import vip.xiaonuo.modular.base.baseConfig.entity.BaseConfig;
 import vip.xiaonuo.modular.base.department.entity.Department;
+import vip.xiaonuo.modular.base.peoplelist.entity.PeopleList;
 import vip.xiaonuo.sys.modular.user.entity.SysUser;
 
 import java.math.BigDecimal;
@@ -89,7 +90,7 @@ public class InventoryUse extends CommonEntity implements TransPojo {
 
     /** 领用人ID */
     @ApiModelProperty(value = "领用人ID", position = 12)
-    @Trans(type = TransType.SIMPLE, target = SysUser.class, fields = "name", alias = "user", ref = "userName")
+    @Trans(type = TransType.SIMPLE, target = PeopleList.class, fields = "userName", alias = "user", ref = "userName")
     private String userId;
 
     /** 预计归还时间 */
@@ -111,7 +112,6 @@ public class InventoryUse extends CommonEntity implements TransPojo {
 
     /** 组织ID */
     @ApiModelProperty(value = "组织ID", position = 16)
-    @TableField(fill = FieldFill.INSERT)
     private String orgId;
 
     /** 物资类别名称 */

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/inventoryUse/param/InventoryUseAddParam.java

@@ -30,7 +30,7 @@ import java.util.Date;
  **/
 @Getter
 @Setter
-public class InventoryUseAddParam {
+public class InventoryUseAddParam extends InventoryUseOrgIdParam{
 
     /** 物资编号 */
     @ApiModelProperty(value = "物资编号", required = true, position = 2)

+ 35 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/inventoryUse/param/InventoryUseDepartmentIdParam.java

@@ -0,0 +1,35 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.base.inventoryUse.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * 物资领用Id参数
+ *
+ * @author newspaper
+ * @date  2023/12/11 10:43
+ **/
+@Getter
+@Setter
+public class InventoryUseDepartmentIdParam{
+
+    /** 部门id */
+    @ApiModelProperty(value = "部门id", required = true, position = 1)
+    @NotBlank(message = "departmentId不能为空")
+    private String departmentId;
+}

+ 35 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/inventoryUse/param/InventoryUseOrgIdParam.java

@@ -0,0 +1,35 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.base.inventoryUse.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * 物资领用Id参数
+ *
+ * @author newspaper
+ * @date  2023/12/11 10:43
+ **/
+@Getter
+@Setter
+public class InventoryUseOrgIdParam {
+
+    /** 组织id */
+    @ApiModelProperty(value = "组织id", required = true, position = 99)
+    @NotBlank(message = "orgId不能为空")
+    private String orgId;
+}

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/inventoryUse/param/InventoryUsePageParam.java

@@ -24,7 +24,7 @@ import lombok.Setter;
  **/
 @Getter
 @Setter
-public class InventoryUsePageParam {
+public class InventoryUsePageParam extends InventoryUseOrgIdParam{
 
     /** 当前页 */
     @ApiModelProperty(value = "当前页码")

+ 3 - 12
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/inventoryUse/service/impl/InventoryUseServiceImpl.java

@@ -29,6 +29,7 @@ import vip.xiaonuo.common.exception.CommonException;
 import vip.xiaonuo.common.listener.CommonDataChangeEventCenter;
 import vip.xiaonuo.common.page.CommonPageRequest;
 import vip.xiaonuo.core.enums.BaseDataTypeEnum;
+import vip.xiaonuo.dev.modular.file.enums.DevFileEngineTypeEnum;
 import vip.xiaonuo.dev.modular.file.service.DevFileService;
 import vip.xiaonuo.modular.base.inventoryUse.entity.InventoryUse;
 import vip.xiaonuo.modular.base.inventoryUse.entity.vo.InventoryUseDetailVo;
@@ -64,6 +65,7 @@ public class InventoryUseServiceImpl extends ServiceImpl<InventoryUseMapper, Inv
         if(ObjectUtil.isNotEmpty(inventoryUsePageParam.getItemName())) {
             queryWrapper.like("item_name", inventoryUsePageParam.getItemName()).orderByDesc("use_time");;
         }
+        queryWrapper.lambda().eq(InventoryUse::getOrgId,inventoryUsePageParam.getOrgId());
         return this.page(CommonPageRequest.defaultPage(), queryWrapper);
     }
 
@@ -72,9 +74,6 @@ public class InventoryUseServiceImpl extends ServiceImpl<InventoryUseMapper, Inv
     public void add(InventoryUseAddParam inventoryUseAddParam) {
         InventoryUse inventoryUse = BeanUtil.toBean(inventoryUseAddParam, InventoryUse.class);
         this.save(inventoryUse);
-
-        // 发布增加事件
-        CommonDataChangeEventCenter.doAddWithData(BaseDataTypeEnum.INVENTORY_USE.getValue(), JSONUtil.createArray().put(inventoryUse));
     }
 
     @Transactional(rollbackFor = Exception.class)
@@ -83,9 +82,6 @@ public class InventoryUseServiceImpl extends ServiceImpl<InventoryUseMapper, Inv
         InventoryUse inventoryUse = this.queryEntity(inventoryUseEditParam.getId());
         BeanUtil.copyProperties(inventoryUseEditParam, inventoryUse);
         this.updateById(inventoryUse);
-
-        // 发布更新事件
-        CommonDataChangeEventCenter.doUpdateWithData(BaseDataTypeEnum.INVENTORY_USE.getValue(), JSONUtil.createArray().put(inventoryUse));
     }
 
     @Transactional(rollbackFor = Exception.class)
@@ -94,9 +90,6 @@ public class InventoryUseServiceImpl extends ServiceImpl<InventoryUseMapper, Inv
         List<String> toDeleteInventoryUseIdList = CollStreamUtil.toList(inventoryUseIdParamList, InventoryUseIdParam::getId);
         // 执行删除
         this.removeByIds(toDeleteInventoryUseIdList);
-
-        // 发布删除事件
-        CommonDataChangeEventCenter.doDeleteWithDataId(BaseDataTypeEnum.INVENTORY_USE.getValue(), toDeleteInventoryUseIdList);
     }
 
     @Override
@@ -117,13 +110,11 @@ public class InventoryUseServiceImpl extends ServiceImpl<InventoryUseMapper, Inv
     public void revert(MultipartFile returnImgUrl, String id, String returnTime, String remarks) throws ParseException {
         SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         InventoryUse inventoryUse = this.getById(id);
-        String url = devFileService.uploadReturnId("SNOWY_SYS_DEFAULT_FILE_ENGINE", returnImgUrl);
+        String url = devFileService.uploadReturnId(DevFileEngineTypeEnum.LOCAL.getValue(), returnImgUrl);
         inventoryUse.setReturnTime(dateFormat.parse(returnTime));
         inventoryUse.setReturnImgId(url);
         inventoryUse.setRemarks(remarks);
         this.updateById(inventoryUse);
-
-
     }
 
 }

+ 11 - 8
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/peoplelist/entity/PeopleList.java

@@ -15,6 +15,7 @@ package vip.xiaonuo.modular.base.peoplelist.entity;
 import com.baomidou.mybatisplus.annotation.*;
 import com.fhs.core.trans.anno.Trans;
 import com.fhs.core.trans.constant.TransType;
+import com.fhs.core.trans.vo.TransPojo;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Getter;
 import lombok.Setter;
@@ -32,7 +33,7 @@ import java.util.Date;
 @Getter
 @Setter
 @TableName("people_list")
-public class PeopleList {
+public class PeopleList implements TransPojo {
 
     /** ID */
     @TableId(value = "id", type = IdType.AUTO)
@@ -107,9 +108,10 @@ public class PeopleList {
     @TableField(fill = FieldFill.INSERT)
     private String deleteFlag;
 
-    /** 员工照片 */
-    @ApiModelProperty(value = "员工照片", position = 20)
-    private String imgUrl;
+    /** 员工图片id */
+    @ApiModelProperty(value = "员工图片id", position = 20)
+    @Trans(type = TransType.SIMPLE, target = DevFile.class, fields = "thumbnail", alias = "img", ref = "imgUrl")
+    private String imgUrlId;
 
     /** 组织id */
     @ApiModelProperty(value = "组织id", position = 21)
@@ -119,8 +121,9 @@ public class PeopleList {
     @ApiModelProperty(value = "部门名称", position = 22)
     private String departmentName;
 
-    /** 员工图片id */
-    @ApiModelProperty(value = "员工图片id", position = 23)
-    @Trans(type = TransType.SIMPLE, target = DevFile.class, fields = "thumbnail", alias = "img", ref = "imgUrl")
-    private String imgUrlId;
+    /** 员工照片 */
+    @ApiModelProperty(value = "员工照片", position = 23)
+    @TableField(exist = false)
+    private String imgUrl;
+
 }

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/peoplelist/service/impl/PeopleListServiceImpl.java

@@ -142,7 +142,7 @@ public class PeopleListServiceImpl extends ServiceImpl<PeopleListMapper, PeopleL
         people.setPhone(phone);
         if (ObjectUtil.isNotEmpty(imgUrl)){
             String uploadReturnUrl = devFileService.uploadReturnId(DevFileEngineTypeEnum.LOCAL.getValue(), imgUrl);
-            people.setImgUrl(uploadReturnUrl);
+            people.setImgUrlId(uploadReturnUrl);
         }
         this.updateById(people);
     }

+ 5 - 8
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/pigpen/controller/BasePigpenController.java

@@ -32,10 +32,7 @@ import vip.xiaonuo.common.pojo.CommonValidList;
 import vip.xiaonuo.modular.base.baseConfig.entity.BaseConfig;
 import vip.xiaonuo.modular.base.baseConfig.service.BaseConfigService;
 import vip.xiaonuo.modular.base.pigpen.entity.BasePigpen;
-import vip.xiaonuo.modular.base.pigpen.param.BasePigpenAddParam;
-import vip.xiaonuo.modular.base.pigpen.param.BasePigpenEditParam;
-import vip.xiaonuo.modular.base.pigpen.param.BasePigpenIdParam;
-import vip.xiaonuo.modular.base.pigpen.param.BasePigpenPageParam;
+import vip.xiaonuo.modular.base.pigpen.param.*;
 import vip.xiaonuo.modular.base.pigpen.service.BasePigpenService;
 
 import javax.annotation.Resource;
@@ -83,8 +80,8 @@ public class BasePigpenController {
     @ApiOperationSupport(order = 2)
     @ApiOperation("获取栋舍树")
     @GetMapping("/biz/pigpen/tree")
-    public CommonResult<List<Tree<String>>> tree() {
-        return CommonResult.data(basePigpenService.tree());
+    public CommonResult<List<Tree<String>>> tree(BasePigpenOrgIdParam basePigpenOrgIdParam) {
+        return CommonResult.data(basePigpenService.tree(basePigpenOrgIdParam));
     }
 
     /**
@@ -155,8 +152,8 @@ public class BasePigpenController {
     @ApiOperationSupport(order = 6)
     @ApiOperation("获取栋舍阶段选择器")
     @GetMapping("/biz/pigpen/stageSelector")
-    public CommonResult<List<BaseConfig>> typeSelector() {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+    public CommonResult<List<BaseConfig>> typeSelector(BasePigpenOrgIdParam basePigpenOrgIdParam) {
+        String orgId = basePigpenOrgIdParam.getOrgId();
         BaseConfig baseConfig = baseConfigService.getOne(new QueryWrapper<BaseConfig>().lambda().eq(BaseConfig::getConfigName, "栋舍阶段").eq(BaseConfig::getParentId, 0));
         List<BaseConfig> baseConfigs = baseConfigService.list(new QueryWrapper<BaseConfig>().lambda().eq(BaseConfig::getParentId, baseConfig.getId()).eq(BaseConfig::getOrgId, orgId));
         return CommonResult.data(baseConfigs);

+ 1 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/pigpen/param/BasePigpenAddParam.java

@@ -58,6 +58,7 @@ public class BasePigpenAddParam {
 
     /** 所属组织 */
     @ApiModelProperty(value = "所属组织")
+    @NotNull(message = "orgId不能为空")
     private String orgId;
 
 

+ 35 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/pigpen/param/BasePigpenOrgIdParam.java

@@ -0,0 +1,35 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.base.pigpen.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * base_pigpenId参数
+ *
+ * @author newspaper
+ * @date  2023/12/05 08:55
+ **/
+@Getter
+@Setter
+public class BasePigpenOrgIdParam {
+
+    /** 组织id */
+    @ApiModelProperty(value = "组织id", required = true, position = 99)
+    @NotBlank(message = "orgId不能为空")
+    private String orgId;
+}

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/pigpen/param/BasePigpenPageParam.java

@@ -24,7 +24,7 @@ import lombok.Setter;
  **/
 @Getter
 @Setter
-public class BasePigpenPageParam {
+public class BasePigpenPageParam extends BasePigpenOrgIdParam{
 
     /** 当前页 */
     @ApiModelProperty(value = "当前页码")

+ 2 - 5
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/pigpen/service/BasePigpenService.java

@@ -15,10 +15,7 @@ import cn.hutool.core.lang.tree.Tree;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import vip.xiaonuo.modular.base.pigpen.entity.BasePigpen;
-import vip.xiaonuo.modular.base.pigpen.param.BasePigpenAddParam;
-import vip.xiaonuo.modular.base.pigpen.param.BasePigpenEditParam;
-import vip.xiaonuo.modular.base.pigpen.param.BasePigpenIdParam;
-import vip.xiaonuo.modular.base.pigpen.param.BasePigpenPageParam;
+import vip.xiaonuo.modular.base.pigpen.param.*;
 
 import java.util.List;
 
@@ -104,5 +101,5 @@ public interface BasePigpenService extends IService<BasePigpen> {
      **/
     BasePigpen getById(List<BasePigpen> originDataList, String id);
 
-    List<Tree<String>> tree();
+    List<Tree<String>> tree(BasePigpenOrgIdParam basePigpenOrgIdParam);
 }

+ 13 - 17
snowy-web-app/src/main/java/vip/xiaonuo/modular/base/pigpen/service/impl/BasePigpenServiceImpl.java

@@ -37,10 +37,7 @@ import vip.xiaonuo.common.page.CommonPageRequest;
 import vip.xiaonuo.core.enums.BaseDataTypeEnum;
 import vip.xiaonuo.modular.base.pigpen.entity.BasePigpen;
 import vip.xiaonuo.modular.base.pigpen.mapper.BasePigpenMapper;
-import vip.xiaonuo.modular.base.pigpen.param.BasePigpenAddParam;
-import vip.xiaonuo.modular.base.pigpen.param.BasePigpenEditParam;
-import vip.xiaonuo.modular.base.pigpen.param.BasePigpenIdParam;
-import vip.xiaonuo.modular.base.pigpen.param.BasePigpenPageParam;
+import vip.xiaonuo.modular.base.pigpen.param.*;
 import vip.xiaonuo.modular.base.pigpen.service.BasePigpenService;
 import vip.xiaonuo.sys.core.enums.SysDataTypeEnum;
 
@@ -59,7 +56,7 @@ public class BasePigpenServiceImpl extends ServiceImpl<BasePigpenMapper, BasePig
 
     @Override
     public Page<BasePigpen> page(BasePigpenPageParam basePigpenPageParam) {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+        String orgId = basePigpenPageParam.getOrgId();
         QueryWrapper<BasePigpen> queryWrapper = new QueryWrapper<>();
         queryWrapper.lambda().select(BasePigpen::getId, BasePigpen::getParentId, BasePigpen::getBuildName,
                 BasePigpen::getBuildName, BasePigpen::getSort);
@@ -84,8 +81,7 @@ public class BasePigpenServiceImpl extends ServiceImpl<BasePigpenMapper, BasePig
     @Transactional(rollbackFor = Exception.class)
     @Override
     public void add(BasePigpenAddParam basePigpenAddParam) {
-        SaBaseLoginUser user = StpLoginUserUtil.getLoginUser();
-        String orgId = user.getOrgId();
+        String orgId = basePigpenAddParam.getOrgId();
         BasePigpen basePigpen = BeanUtil.toBean(basePigpenAddParam, BasePigpen.class);
         if (basePigpen.getParentId().equals("0")){
             basePigpen.setType(0);
@@ -101,15 +97,14 @@ public class BasePigpenServiceImpl extends ServiceImpl<BasePigpenMapper, BasePig
             basePigpen.setType(this.queryEntity(basePigpen.getParentId()).getType()+1);
         }
         basePigpen.setOrgId(orgId);
-        boolean repeatName = this.count(new LambdaQueryWrapper<BasePigpen>().eq(BasePigpen::getParentId, basePigpen.getParentId())
+        boolean repeatName = this.count(new LambdaQueryWrapper<BasePigpen>()
+                .eq(BasePigpen::getParentId, basePigpen.getParentId())
+                .eq(BasePigpen::getOrgId,orgId)
                 .eq(BasePigpen::getBuildName, basePigpen.getBuildName())) > 0;
         if(repeatName) {
             throw new CommonException("存在重复的同级栋舍,名称为:{}", basePigpen.getBuildName());
         }
         this.save(basePigpen);
-
-        // 发布增加事件
-        CommonDataChangeEventCenter.doAddWithData(BaseDataTypeEnum.PIGPEN.getValue(), JSONUtil.createArray().put(basePigpen));
     }
 
     @Transactional(rollbackFor = Exception.class)
@@ -137,8 +132,11 @@ public class BasePigpenServiceImpl extends ServiceImpl<BasePigpenMapper, BasePig
             basePigpen.setType(this.queryEntity(basePigpen.getParentId()).getType()+1);
         }
 
-        boolean repeatName = this.count(new LambdaQueryWrapper<BasePigpen>().eq(BasePigpen::getParentId, basePigpen.getParentId())
-                .eq(BasePigpen::getBuildName, basePigpen.getBuildName()).ne(BasePigpen::getId, basePigpen.getId())) > 0;
+        boolean repeatName = this.count(new LambdaQueryWrapper<BasePigpen>()
+                .eq(BasePigpen::getParentId, basePigpen.getParentId())
+                .eq(BasePigpen::getBuildName, basePigpen.getBuildName())
+                .eq(BasePigpen::getOrgId,basePigpen.getOrgId())
+                .ne(BasePigpen::getId, basePigpen.getId())) > 0;
         if(repeatName) {
             throw new CommonException("存在重复的同级栋舍,名称为:{}", basePigpen.getBuildName());
         }
@@ -157,8 +155,6 @@ public class BasePigpenServiceImpl extends ServiceImpl<BasePigpenMapper, BasePig
                 this.updateById(pigpen);
             }
         }
-        // 发布更新事件
-        CommonDataChangeEventCenter.doUpdateWithData(BaseDataTypeEnum.PIGPEN.getValue(), JSONUtil.createArray().put(basePigpen));
     }
 
     @Transactional(rollbackFor = Exception.class)
@@ -225,8 +221,8 @@ public class BasePigpenServiceImpl extends ServiceImpl<BasePigpenMapper, BasePig
     }
 
     @Override
-    public List<Tree<String>> tree() {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+    public List<Tree<String>> tree(BasePigpenOrgIdParam basePigpenOrgIdParam) {
+        String orgId = basePigpenOrgIdParam.getOrgId();
         List<BasePigpen> allPigpenList = this.getAllPigpenList(orgId);
         List<TreeNode<String>> treeNodeList = allPigpenList.stream().map(basePigpen ->
                 new TreeNode<>(basePigpen.getId(), basePigpen.getParentId(),

+ 9 - 10
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyDevice/controller/EnergyDeviceController.java

@@ -27,14 +27,13 @@ import org.springframework.web.bind.annotation.RestController;
 import vip.xiaonuo.common.annotation.CommonLog;
 import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.common.pojo.CommonValidList;
+import vip.xiaonuo.modular.base.pigpen.param.BasePigpenOrgIdParam;
 import vip.xiaonuo.modular.base.pigpen.service.BasePigpenService;
 import vip.xiaonuo.modular.energy.energyDevice.entity.EnergyDevice;
 import vip.xiaonuo.modular.energy.energyDevice.entity.vo.EnergyDeviceCountVo;
-import vip.xiaonuo.modular.energy.energyDevice.param.EnergyDeviceAddParam;
-import vip.xiaonuo.modular.energy.energyDevice.param.EnergyDeviceEditParam;
-import vip.xiaonuo.modular.energy.energyDevice.param.EnergyDeviceIdParam;
-import vip.xiaonuo.modular.energy.energyDevice.param.EnergyDevicePageParam;
+import vip.xiaonuo.modular.energy.energyDevice.param.*;
 import vip.xiaonuo.modular.energy.energyDevice.service.EnergyDeviceService;
+import vip.xiaonuo.modular.env.envdevice.param.EnvDeviceOrgIdParam;
 
 import javax.annotation.Resource;
 import javax.validation.Valid;
@@ -146,8 +145,8 @@ public class EnergyDeviceController {
     @ApiOperationSupport(order = 6)
     @ApiOperation("获取能耗设备汇总")
     @GetMapping("/energy/energyDevice/deviceCount")
-    public CommonResult<EnergyDeviceCountVo> deviceCount() {
-        return CommonResult.data(energyDeviceService.deviceCount());
+    public CommonResult<EnergyDeviceCountVo> deviceCount(EnergyDeviceOrgIdParam energyDeviceOrgIdParam) {
+        return CommonResult.data(energyDeviceService.deviceCount(energyDeviceOrgIdParam));
     }
 
 
@@ -160,8 +159,8 @@ public class EnergyDeviceController {
     @ApiOperationSupport(order = 7)
     @ApiOperation("获取栋舍选择器")
     @GetMapping("/energy/energyDevice/pipgpenSelector")
-    public CommonResult<List<Tree<String>>> pipgpenSelector() {
-        return CommonResult.data(basePigpenService.tree());
+    public CommonResult<List<Tree<String>>> pipgpenSelector(BasePigpenOrgIdParam basePigpenOrgIdParam) {
+        return CommonResult.data(basePigpenService.tree(basePigpenOrgIdParam));
     }
 
     /**
@@ -173,8 +172,8 @@ public class EnergyDeviceController {
     @ApiOperationSupport(order = 8)
     @ApiOperation("获取设备类型选择器")
     @GetMapping("/energy/energyDevice/deviceTypeSelector")
-    public CommonResult<List<String>> deviceTypeSelector() {
-        return CommonResult.data(energyDeviceService.deviceTypeSelector());
+    public CommonResult<List<String>> deviceTypeSelector(EnergyDeviceOrgIdParam energyDeviceOrgIdParam) {
+        return CommonResult.data(energyDeviceService.deviceTypeSelector(energyDeviceOrgIdParam));
     }
 
 

+ 8 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyDevice/entity/EnergyDevice.java

@@ -19,6 +19,7 @@ import io.swagger.annotations.ApiModelProperty;
 import lombok.Getter;
 import lombok.Setter;
 import vip.xiaonuo.common.pojo.CommonEntity;
+import vip.xiaonuo.modular.base.baseConfig.entity.BaseConfig;
 import vip.xiaonuo.modular.base.pigpen.entity.BasePigpen;
 
 import java.math.BigDecimal;
@@ -46,7 +47,8 @@ public class EnergyDevice extends CommonEntity {
 
     /** 设备类型 */
     @ApiModelProperty(value = "设备类型", position = 3)
-    private String deviceType;
+    @Trans(type = TransType.SIMPLE, target = BaseConfig.class,fields = "configName", alias = "type", ref = "deviceType")
+    private String deviceTypeId;
 
     /** 设备名称 */
     @ApiModelProperty(value = "设备名称", position = 4)
@@ -64,4 +66,9 @@ public class EnergyDevice extends CommonEntity {
     /** 组织id */
     @ApiModelProperty(value = "组织id", position = 7)
     private String orgId;
+
+    /** 设备类型 */
+    @ApiModelProperty(value = "设备类型", position = 8)
+    @TableField(exist = false)
+    private String deviceType;
 }

+ 5 - 5
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyDevice/param/EnergyDeviceAddParam.java

@@ -29,17 +29,17 @@ import java.util.Date;
  **/
 @Getter
 @Setter
-public class EnergyDeviceAddParam {
+public class EnergyDeviceAddParam extends EnergyDeviceOrgIdParam{
 
     /** 设备编号 */
     @ApiModelProperty(value = "设备编号", required = true, position = 2)
     @NotBlank(message = "deviceCode不能为空")
     private String deviceCode;
 
-    /** 设备类型 */
-    @ApiModelProperty(value = "设备类型", required = true, position = 3)
-    @NotBlank(message = "deviceType不能为空")
-    private String deviceType;
+    /** 设备类型id */
+    @ApiModelProperty(value = "设备类型id", required = true, position = 3)
+    @NotBlank(message = "deviceTypeId不能为空")
+    private String deviceTypeId;
 
     /** 设备名称 */
     @ApiModelProperty(value = "设备名称", required = true, position = 4)

+ 4 - 4
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyDevice/param/EnergyDeviceEditParam.java

@@ -41,10 +41,10 @@ public class EnergyDeviceEditParam {
     @NotBlank(message = "deviceCode不能为空")
     private String deviceCode;
 
-    /** 设备类型 */
-    @ApiModelProperty(value = "设备类型", required = true, position = 3)
-    @NotBlank(message = "deviceType不能为空")
-    private String deviceType;
+    /** 设备类型id */
+    @ApiModelProperty(value = "设备类型id", required = true, position = 3)
+    @NotBlank(message = "deviceTypeId不能为空")
+    private String deviceTypeId;
 
     /** 设备名称 */
     @ApiModelProperty(value = "设备名称", required = true, position = 4)

+ 35 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyDevice/param/EnergyDeviceOrgIdParam.java

@@ -0,0 +1,35 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.energy.energyDevice.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * 能耗设备Id参数
+ *
+ * @author newspaper
+ * @date  2023/12/28 08:46
+ **/
+@Getter
+@Setter
+public class EnergyDeviceOrgIdParam {
+
+    /** 组织id */
+    @ApiModelProperty(value = "组织id", required = true,position = 99)
+    @NotBlank(message = "orgId不能为空")
+    private String orgId;
+}

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyDevice/param/EnergyDevicePageParam.java

@@ -26,7 +26,7 @@ import java.util.Date;
  **/
 @Getter
 @Setter
-public class EnergyDevicePageParam {
+public class EnergyDevicePageParam extends EnergyDeviceOrgIdParam{
 
     /** 当前页 */
     @ApiModelProperty(value = "当前页码")

+ 3 - 6
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyDevice/service/EnergyDeviceService.java

@@ -17,10 +17,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import vip.xiaonuo.modular.energy.energyDevice.entity.EnergyDevice;
 import vip.xiaonuo.modular.energy.energyDevice.entity.vo.EnergyDeviceCountVo;
-import vip.xiaonuo.modular.energy.energyDevice.param.EnergyDeviceAddParam;
-import vip.xiaonuo.modular.energy.energyDevice.param.EnergyDeviceEditParam;
-import vip.xiaonuo.modular.energy.energyDevice.param.EnergyDeviceIdParam;
-import vip.xiaonuo.modular.energy.energyDevice.param.EnergyDevicePageParam;
+import vip.xiaonuo.modular.energy.energyDevice.param.*;
 
 import java.util.List;
 import java.util.Map;
@@ -81,7 +78,7 @@ public interface EnergyDeviceService extends IService<EnergyDevice> {
      **/
     EnergyDevice queryEntity(String id);
 
-    EnergyDeviceCountVo deviceCount();
+    EnergyDeviceCountVo deviceCount(EnergyDeviceOrgIdParam energyDeviceOrgIdParam);
 
-    List<String> deviceTypeSelector();
+    List<String> deviceTypeSelector(EnergyDeviceOrgIdParam energyDeviceOrgIdParam);
 }

+ 9 - 12
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyDevice/service/impl/EnergyDeviceServiceImpl.java

@@ -33,10 +33,7 @@ import vip.xiaonuo.modular.base.pigpen.mapper.BasePigpenMapper;
 import vip.xiaonuo.modular.energy.energyDevice.entity.EnergyDevice;
 import vip.xiaonuo.modular.energy.energyDevice.entity.vo.EnergyDeviceCountVo;
 import vip.xiaonuo.modular.energy.energyDevice.mapper.EnergyDeviceMapper;
-import vip.xiaonuo.modular.energy.energyDevice.param.EnergyDeviceAddParam;
-import vip.xiaonuo.modular.energy.energyDevice.param.EnergyDeviceEditParam;
-import vip.xiaonuo.modular.energy.energyDevice.param.EnergyDeviceIdParam;
-import vip.xiaonuo.modular.energy.energyDevice.param.EnergyDevicePageParam;
+import vip.xiaonuo.modular.energy.energyDevice.param.*;
 import vip.xiaonuo.modular.energy.energyDevice.service.EnergyDeviceService;
 import vip.xiaonuo.modular.env.envdevice.entity.EnvDevice;
 
@@ -63,7 +60,7 @@ public class EnergyDeviceServiceImpl extends ServiceImpl<EnergyDeviceMapper, Ene
 
     @Override
     public Page<EnergyDevice> page(EnergyDevicePageParam energyDevicePageParam) {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+        String orgId = energyDevicePageParam.getOrgId();
         QueryWrapper<EnergyDevice> queryWrapper = new QueryWrapper<>();
         queryWrapper.lambda().eq(EnergyDevice::getOrgId,orgId).orderByAsc(EnergyDevice::getId);
         if(ObjectUtil.isNotEmpty(energyDevicePageParam.getDeviceType())) {
@@ -104,7 +101,7 @@ public class EnergyDeviceServiceImpl extends ServiceImpl<EnergyDeviceMapper, Ene
     @Transactional(rollbackFor = Exception.class)
     @Override
     public void add(EnergyDeviceAddParam energyDeviceAddParam) {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+        String orgId = energyDeviceAddParam.getOrgId();
         EnergyDevice energyDevice = BeanUtil.toBean(energyDeviceAddParam, EnergyDevice.class);
         if (this.count(new QueryWrapper<EnergyDevice>().lambda()
                 .eq(EnergyDevice::getOrgId,orgId)
@@ -127,8 +124,8 @@ public class EnergyDeviceServiceImpl extends ServiceImpl<EnergyDeviceMapper, Ene
     @Transactional(rollbackFor = Exception.class)
     @Override
     public void edit(EnergyDeviceEditParam energyDeviceEditParam) {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
         EnergyDevice energyDevice = this.queryEntity(energyDeviceEditParam.getId());
+        String orgId = energyDevice.getOrgId();
         BeanUtil.copyProperties(energyDeviceEditParam, energyDevice);
         if (this.count(new QueryWrapper<EnergyDevice>().lambda()
                 .eq(EnergyDevice::getOrgId,orgId)
@@ -173,9 +170,9 @@ public class EnergyDeviceServiceImpl extends ServiceImpl<EnergyDeviceMapper, Ene
     }
 
     @Override
-    public EnergyDeviceCountVo deviceCount() {
+    public EnergyDeviceCountVo deviceCount(EnergyDeviceOrgIdParam energyDeviceOrgIdParam) {
         EnergyDeviceCountVo energyDeviceCountVo = new EnergyDeviceCountVo();
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+        String orgId = energyDeviceOrgIdParam.getOrgId();
         long deviceNum = this.count(new QueryWrapper<EnergyDevice>().lambda().eq(EnergyDevice::getOrgId, orgId));
         if (deviceNum == 0){
             energyDeviceCountVo.setDeviceNum(0L);
@@ -186,7 +183,7 @@ public class EnergyDeviceServiceImpl extends ServiceImpl<EnergyDeviceMapper, Ene
             energyDeviceCountVo.setDeviceNum(deviceNum);
             long onDeviceNum = this.count(new QueryWrapper<EnergyDevice>().lambda().eq(EnergyDevice::getStatus,"1").eq(EnergyDevice::getOrgId, orgId));
             energyDeviceCountVo.setOnDeviceNum(onDeviceNum);
-            long offDeviceNum = this.count(new QueryWrapper<EnergyDevice>().lambda().eq(EnergyDevice::getStatus,"1").eq(EnergyDevice::getOrgId, orgId));
+            long offDeviceNum = this.count(new QueryWrapper<EnergyDevice>().lambda().eq(EnergyDevice::getStatus,"0").eq(EnergyDevice::getOrgId, orgId));
             energyDeviceCountVo.setOffDeviceNum(offDeviceNum);
             //创建一个数值格式化对象
             NumberFormat numberFormat = NumberFormat.getInstance();
@@ -199,8 +196,8 @@ public class EnergyDeviceServiceImpl extends ServiceImpl<EnergyDeviceMapper, Ene
     }
 
     @Override
-    public List<String> deviceTypeSelector() {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+    public List<String> deviceTypeSelector(EnergyDeviceOrgIdParam energyDeviceOrgIdParam) {
+        String orgId = energyDeviceOrgIdParam.getOrgId();
         List<String> list = new ArrayList<>();
         String parentId = baseConfigMapper.selectOne(new QueryWrapper<BaseConfig>().lambda().eq(BaseConfig::getParentId, 0).eq(BaseConfig::getConfigName, "设备类型")).getId();
         List<BaseConfig> baseConfigs = baseConfigMapper.selectList(new QueryWrapper<BaseConfig>().lambda().eq(BaseConfig::getParentId, parentId).eq(BaseConfig::getOrgId, orgId));

+ 2 - 2
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyElectricity/controller/EnergyElectricityController.java

@@ -59,7 +59,7 @@ public class EnergyElectricityController {
     @GetMapping("/energy/energyElectricity/getProportion")
     public CommonResult<EnergyElectricityProportionVo> getProportion(EnergyElectricityProportionParam energyElectricityProportionParam) {
         String type = energyElectricityProportionParam.getType();
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+        String orgId = energyElectricityProportionParam.getOrgId();
         return CommonResult.data(energyElectricityService.getProportion(orgId,type));
     }
 
@@ -87,7 +87,7 @@ public class EnergyElectricityController {
     @ApiOperation("获取用电量排名")
     @GetMapping("/energy/energyElectricity/listTop")
     public CommonResult<EnergyElectricityTopVo> listTop(EnergyElectricityTopParm energyElectricityTopParm) {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+        String orgId = energyElectricityTopParm.getOrgId();
         return CommonResult.data(energyElectricityService.listTop(energyElectricityTopParm,orgId));
     }
 

+ 35 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyElectricity/param/EnergyElectricityOrgIdParam.java

@@ -0,0 +1,35 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.energy.energyElectricity.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * 能耗电表Id参数
+ *
+ * @author newspaper
+ * @date  2023/12/21 09:15
+ **/
+@Getter
+@Setter
+public class EnergyElectricityOrgIdParam {
+
+    /** 组织id */
+    @ApiModelProperty(value = "组织id", required = true, position = 99)
+    @NotBlank(message = "orgId不能为空")
+    private String orgId;
+}

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyElectricity/param/EnergyElectricityProportionParam.java

@@ -26,7 +26,7 @@ import javax.validation.constraints.NotBlank;
  **/
 @Getter
 @Setter
-public class EnergyElectricityProportionParam {
+public class EnergyElectricityProportionParam extends EnergyElectricityOrgIdParam{
 
     /** 类型 */
     @ApiModelProperty(value = "类型", required = true, example = "0:本周, 1:本月")

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyElectricity/param/EnergyElectricityTopParm.java

@@ -8,7 +8,7 @@ import javax.validation.constraints.NotBlank;
 
 @Getter
 @Setter
-public class EnergyElectricityTopParm {
+public class EnergyElectricityTopParm extends EnergyElectricityOrgIdParam{
     /** 显示类型 */
     @ApiModelProperty(value = "显示类型", required = true, position = 1, example = "0:今日, 1:本周, 2:本月, 3:自定义")
     @NotBlank(message = "显示类型不能为空")

+ 2 - 2
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyWater/controller/EnergyWaterController.java

@@ -65,7 +65,7 @@ public class EnergyWaterController {
     @GetMapping("/energy/energyWater/getProportion")
     public CommonResult<EnergyWaterProportionVo> getProportion(EnergyWaterProportionParam energyWaterProportionParam) {
         String type = energyWaterProportionParam.getType();
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+        String orgId = energyWaterProportionParam.getOrgId();
         return CommonResult.data(energyWaterService.getProportion(orgId,type));
     }
 
@@ -92,7 +92,7 @@ public class EnergyWaterController {
     @ApiOperation("获取用水量排名")
     @GetMapping("/energy/energyWater/listTop")
     public CommonResult<EnergyWaterTopVo> listTop(EnergyWaterTopParm energyWaterTopParm) {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+        String orgId = energyWaterTopParm.getOrgId();
         return CommonResult.data(energyWaterService.listTop(energyWaterTopParm,orgId));
     }
 }

+ 35 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyWater/param/EnergyWaterOrgIdParam.java

@@ -0,0 +1,35 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.energy.energyWater.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * 能耗电表Id参数
+ *
+ * @author newspaper
+ * @date  2023/12/21 09:15
+ **/
+@Getter
+@Setter
+public class EnergyWaterOrgIdParam {
+
+    /** 组织id */
+    @ApiModelProperty(value = "组织id", required = true, position = 99)
+    @NotBlank(message = "orgId不能为空")
+    private String orgId;
+}

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyWater/param/EnergyWaterProportionParam.java

@@ -26,7 +26,7 @@ import javax.validation.constraints.NotBlank;
  **/
 @Getter
 @Setter
-public class EnergyWaterProportionParam {
+public class EnergyWaterProportionParam extends EnergyWaterOrgIdParam{
 
     /** 类型 */
     @ApiModelProperty(value = "类型", required = true)

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyWater/param/EnergyWaterTopParm.java

@@ -8,7 +8,7 @@ import javax.validation.constraints.NotBlank;
 
 @Getter
 @Setter
-public class EnergyWaterTopParm {
+public class EnergyWaterTopParm extends EnergyWaterOrgIdParam{
     /** 显示类型 */
     @ApiModelProperty(value = "显示类型", required = true, position = 1, example = "0:今日, 1:本周, 2:本月, 3:自定义")
     @NotBlank(message = "显示类型不能为空")

+ 4 - 5
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energythreshold/controller/EnergyThresholdController.java

@@ -18,7 +18,6 @@ import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RestController;
 import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.modular.energy.energythreshold.entity.EnergyThreshold;
@@ -42,7 +41,7 @@ import javax.annotation.Resource;
  * @date  2023/12/26 09:32
  */
 @Api(tags = "能耗阈值控制器")
-@ApiSupport(author = "HUIMV", order = 1)
+@ApiSupport(author = "SNOWY_TEAM", order = 1)
 @RestController
 @Validated
 public class EnergyThresholdController {
@@ -71,7 +70,7 @@ public class EnergyThresholdController {
      */
     @ApiOperationSupport(order = 1)
     @ApiOperation("编辑能耗阈值")
-    @PostMapping("/energy/energyThreshold/saveThreshold")
+    @GetMapping("/energy/energyThreshold/saveThreshold")
     public CommonResult<String> saveThreshold(EnergyThresholdSaveParam energyThresholdSaveParam) {
         energyThresholdService.saveThreshold(energyThresholdSaveParam);
         return CommonResult.ok();
@@ -86,7 +85,7 @@ public class EnergyThresholdController {
      */
     @ApiOperationSupport(order = 2)
     @ApiOperation("修改能耗阈值状态")
-    @PostMapping("/energy/energyThreshold/modifyThresholdStatus")
+    @GetMapping("/energy/energyThreshold/modifyThresholdStatus")
     public CommonResult<String> modifyThresholdStatus(EnergyThresholdModifyParam energyThresholdModifyParam) {
         energyThresholdService.modifyThresholdStatus(energyThresholdModifyParam);
         return CommonResult.ok();
@@ -100,7 +99,7 @@ public class EnergyThresholdController {
      */
     @ApiOperationSupport(order = 2)
     @ApiOperation("同步能耗阈值")
-    @PostMapping("/energy/energyThreshold/syncThreshold")
+    @GetMapping("/energy/energyThreshold/syncThreshold")
     public CommonResult<String> syncThreshold(EnergyThresholdSyncParam energyThresholdSyncParam) {
         energyThresholdService.syncThreshold(energyThresholdSyncParam);
         return CommonResult.ok();

+ 2 - 2
snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envThreshold/entity/EnvThreshold.java

@@ -111,6 +111,6 @@ public class EnvThreshold extends CommonEntity {
 
     /** 组织ID */
     @ApiModelProperty(value = "组织ID", position = 20)
-    @TableField(fill = FieldFill.INSERT)
-    private String orgId;
+
+private String orgId;
 }

+ 35 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envThreshold/param/EnvThresholdOrgIdParam.java

@@ -0,0 +1,35 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.env.envThreshold.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * 环控阈值Id参数
+ *
+ * @author newspaper
+ * @date  2023/12/25 15:38
+ **/
+@Getter
+@Setter
+public class EnvThresholdOrgIdParam {
+
+    /** 组织id */
+    @ApiModelProperty(value = "组织id", required = true)
+    @NotBlank(message = "orgId不能为空")
+    private String orgId;
+}

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envThreshold/param/EnvThresholdSaveParam.java

@@ -29,7 +29,7 @@ import java.util.Date;
  **/
 @Getter
 @Setter
-public class EnvThresholdSaveParam {
+public class EnvThresholdSaveParam extends EnvThresholdOrgIdParam{
 
     /** 春季温度上限 */
     @ApiModelProperty(value = "春季温度上限", required = true, position = 2)

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envThreshold/param/EnvThresholdUnitIdParam.java

@@ -26,7 +26,7 @@ import javax.validation.constraints.NotBlank;
  **/
 @Getter
 @Setter
-public class EnvThresholdUnitIdParam {
+public class EnvThresholdUnitIdParam extends EnvThresholdOrgIdParam{
 
     /** 单元ID */
     @ApiModelProperty(value = "单元ID", required = true)

+ 5 - 3
snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envThreshold/service/impl/EnvThresholdServiceImpl.java

@@ -50,7 +50,7 @@ public class EnvThresholdServiceImpl extends ServiceImpl<EnvThresholdMapper, Env
 
     @Override
     public EnvThreshold getThresholdByUnitId(EnvThresholdUnitIdParam envThresholdUnitIdParam) {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+        String orgId = envThresholdUnitIdParam.getOrgId();
         String unitId = envThresholdUnitIdParam.getUnitId();
         EnvThreshold envThreshold = this.getOne(new QueryWrapper<EnvThreshold>().lambda().eq(EnvThreshold::getOrgId, orgId).eq(EnvThreshold::getUnitId, unitId));
         if (ObjectUtil.isEmpty(envThreshold)){
@@ -64,7 +64,7 @@ public class EnvThresholdServiceImpl extends ServiceImpl<EnvThresholdMapper, Env
 
     @Override
     public void saveThreshold(EnvThresholdSaveParam envThresholdSaveParam) {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+        String orgId = envThresholdSaveParam.getOrgId();
         EnvThreshold envThreshold = this.getOne(new QueryWrapper<EnvThreshold>().lambda().eq(EnvThreshold::getOrgId, orgId).eq(EnvThreshold::getUnitId, envThresholdSaveParam.getUnitId()));
         BeanUtil.copyProperties(envThresholdSaveParam,envThreshold);
         this.updateById(envThreshold);
@@ -73,7 +73,9 @@ public class EnvThresholdServiceImpl extends ServiceImpl<EnvThresholdMapper, Env
     @Override
     public void modifyThresholdStatus(EnvThresholdModifyParam envThresholdModifyParam) {
         String unitId = envThresholdModifyParam.getUnitId();
-        List<BasePigpen> basePigpens = basePigpenMapper.selectList(new QueryWrapper<BasePigpen>().lambda().like(BasePigpen::getPids, unitId).eq(BasePigpen::getType, 2));
+        List<BasePigpen> basePigpens = basePigpenMapper.selectList(new QueryWrapper<BasePigpen>().lambda()
+                .like(BasePigpen::getPids, unitId)
+                .eq(BasePigpen::getType, 2));
         List<String> unitIdList = basePigpens.stream().map(basePigpen -> basePigpen.getId()).collect(Collectors.toList());
         this.update(new UpdateWrapper<EnvThreshold>().lambda().set(EnvThreshold::getIsEnable,envThresholdModifyParam.getIsEnable()).in(EnvThreshold::getUnitId,unitIdList));
     }

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdata/controller/EnvDataController.java

@@ -66,7 +66,7 @@ public class EnvDataController {
      * @author newspaper
      * @date  2023/12/20 14:38
      */
-    @ApiOperationSupport(order = 1)
+    @ApiOperationSupport(order = 2)
     @ApiOperation("根据单元ID获取环控数据")
     @PostMapping("/env/envData/listDataByPigpenId")
     public CommonResult<EnvDataTrendVo> listDataByPigpenId(@RequestBody @Valid EnvDataListParm envDataListParm){

+ 16 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdata/param/EnvDataOrgIdParm.java

@@ -0,0 +1,16 @@
+package vip.xiaonuo.modular.env.envdata.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+@Getter
+@Setter
+public class EnvDataOrgIdParm {
+    /** 组织id */
+    @ApiModelProperty(value = "组织id", required = true, position = 99)
+    @NotBlank(message = "orgId不能为空")
+    private String orgId;
+}

+ 0 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdata/service/impl/EnvDataServiceImpl.java

@@ -60,7 +60,6 @@ public class EnvDataServiceImpl extends ServiceImpl<EnvDataMapper, EnvData> impl
                     .eq(EnvData::getPigpenId, basePigpen.getId())
                     .eq(EnvData::getIsShow,0)
                     .orderByDesc(EnvData::getUpdateTime)
-
                     .last("limit 1"));
             EnvDataRecentVo envDataRecent = new EnvDataRecentVo();
             if (ObjectUtil.isEmpty(envData)){

+ 17 - 18
snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdevice/controller/EnvDeviceController.java

@@ -27,13 +27,12 @@ import org.springframework.web.bind.annotation.RestController;
 import vip.xiaonuo.common.annotation.CommonLog;
 import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.common.pojo.CommonValidList;
+import vip.xiaonuo.modular.base.baseConfig.entity.BaseConfig;
+import vip.xiaonuo.modular.base.pigpen.param.BasePigpenOrgIdParam;
 import vip.xiaonuo.modular.base.pigpen.service.BasePigpenService;
 import vip.xiaonuo.modular.env.envdevice.entity.EnvDevice;
 import vip.xiaonuo.modular.env.envdevice.entity.vo.EnvDeviceCountVo;
-import vip.xiaonuo.modular.env.envdevice.param.EnvDeviceAddParam;
-import vip.xiaonuo.modular.env.envdevice.param.EnvDeviceEditParam;
-import vip.xiaonuo.modular.env.envdevice.param.EnvDeviceIdParam;
-import vip.xiaonuo.modular.env.envdevice.param.EnvDevicePageParam;
+import vip.xiaonuo.modular.env.envdevice.param.*;
 import vip.xiaonuo.modular.env.envdevice.service.EnvDeviceService;
 
 import javax.annotation.Resource;
@@ -67,7 +66,7 @@ public class EnvDeviceController {
      */
     @ApiOperationSupport(order = 1)
     @ApiOperation("获取环控设备分页")
-    @GetMapping("/env/envdevice/page")
+    @GetMapping("/env/envDevice/page")
     public CommonResult<Page<EnvDevice>> page(EnvDevicePageParam envDevicePageParam) {
         return CommonResult.data(envDeviceService.page(envDevicePageParam));
     }
@@ -81,7 +80,7 @@ public class EnvDeviceController {
     @ApiOperationSupport(order = 2)
     @ApiOperation("添加环控设备")
     @CommonLog("添加环控设备")
-    @PostMapping("/env/envdevice/add")
+    @PostMapping("/env/envDevice/add")
     public CommonResult<String> add(@RequestBody @Valid EnvDeviceAddParam envDeviceAddParam) {
         envDeviceService.add(envDeviceAddParam);
         return CommonResult.ok();
@@ -96,7 +95,7 @@ public class EnvDeviceController {
     @ApiOperationSupport(order = 3)
     @ApiOperation("编辑环控设备")
     @CommonLog("编辑环控设备")
-    @PostMapping("/env/envdevice/edit")
+    @PostMapping("/env/envDevice/edit")
     public CommonResult<String> edit(@RequestBody @Valid EnvDeviceEditParam envDeviceEditParam) {
         envDeviceService.edit(envDeviceEditParam);
         return CommonResult.ok();
@@ -111,7 +110,7 @@ public class EnvDeviceController {
     @ApiOperationSupport(order = 4)
     @ApiOperation("删除环控设备")
     @CommonLog("删除环控设备")
-    @PostMapping("/env/envdevice/delete")
+    @PostMapping("/env/envDevice/delete")
     public CommonResult<String> delete(@RequestBody @Valid @NotEmpty(message = "集合不能为空")
                                                    CommonValidList<EnvDeviceIdParam> envDeviceIdParamList) {
         envDeviceService.delete(envDeviceIdParamList);
@@ -126,7 +125,7 @@ public class EnvDeviceController {
      */
     @ApiOperationSupport(order = 5)
     @ApiOperation("获取环控设备详情")
-    @GetMapping("/env/envdevice/detail")
+    @GetMapping("/env/envDevice/detail")
     public CommonResult<EnvDevice> detail(@Valid EnvDeviceIdParam envDeviceIdParam) {
         return CommonResult.data(envDeviceService.detail(envDeviceIdParam));
     }
@@ -139,9 +138,9 @@ public class EnvDeviceController {
      */
     @ApiOperationSupport(order = 6)
     @ApiOperation("获取环控设备汇总")
-    @GetMapping("/env/envdevice/deviceCount")
-    public CommonResult<EnvDeviceCountVo> deviceCount() {
-        return CommonResult.data(envDeviceService.deviceCount());
+    @GetMapping("/env/envDevice/deviceCount")
+    public CommonResult<EnvDeviceCountVo> deviceCount(EnvDeviceOrgIdParam envDeviceOrgIdParam) {
+        return CommonResult.data(envDeviceService.deviceCount(envDeviceOrgIdParam));
     }
 
     /**
@@ -152,9 +151,9 @@ public class EnvDeviceController {
      */
     @ApiOperationSupport(order = 7)
     @ApiOperation("获取栋舍选择器")
-    @GetMapping("/env/envdevice/pipgpenSelector")
-    public CommonResult<List<Tree<String>>> pipgpenSelector() {
-        return CommonResult.data(basePigpenService.tree());
+    @GetMapping("/env/envDevice/pipgpenSelector")
+    public CommonResult<List<Tree<String>>> pipgpenSelector(BasePigpenOrgIdParam basePigpenOrgIdParam) {
+        return CommonResult.data(basePigpenService.tree(basePigpenOrgIdParam));
     }
 
     /**
@@ -165,8 +164,8 @@ public class EnvDeviceController {
      */
     @ApiOperationSupport(order = 8)
     @ApiOperation("获取设备类型选择器")
-    @GetMapping("/env/envdevice/deviceTypeSelector")
-    public CommonResult<List<String>> deviceTypeSelector() {
-        return CommonResult.data(envDeviceService.deviceTypeSelector());
+    @GetMapping("/env/envDevice/deviceTypeSelector")
+    public CommonResult<List<BaseConfig>> deviceTypeSelector(EnvDeviceOrgIdParam envDeviceOrgIdParam) {
+        return CommonResult.data(envDeviceService.deviceTypeSelector(envDeviceOrgIdParam));
     }
 }

+ 9 - 3
snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdevice/entity/EnvDevice.java

@@ -20,6 +20,7 @@ import io.swagger.annotations.ApiModelProperty;
 import lombok.Getter;
 import lombok.Setter;
 import vip.xiaonuo.common.pojo.CommonEntity;
+import vip.xiaonuo.modular.base.baseConfig.entity.BaseConfig;
 import vip.xiaonuo.modular.base.pigpen.entity.BasePigpen;
 
 import java.math.BigDecimal;
@@ -46,8 +47,9 @@ public class EnvDevice extends CommonEntity implements TransPojo {
     private String deviceCode;
 
     /** 设备类型 */
-    @ApiModelProperty(value = "设备类型", position = 3)
-    private String deviceType;
+    @ApiModelProperty(value = "设备类型id", position = 3)
+    @Trans(type = TransType.SIMPLE, target = BaseConfig.class,fields = "configName", alias = "type", ref = "deviceType")
+    private String deviceTypeId;
 
     /** 设备名称 */
     @ApiModelProperty(value = "设备名称", position = 4)
@@ -72,11 +74,15 @@ public class EnvDevice extends CommonEntity implements TransPojo {
 
     /** 组织ID */
     @ApiModelProperty(value = "组织ID", position = 9)
-    @TableField(fill = FieldFill.INSERT)
     private String orgId;
 
     /** 栋舍名称 */
     @ApiModelProperty(value = "栋舍名称", position = 10)
     @TableField(exist = false)
     private String buildName;
+
+    /** 设备类型 */
+    @ApiModelProperty(value = "设备类型", position = 11)
+    @TableField(exist = false)
+    private String deviceType;
 }

+ 5 - 9
snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdevice/param/EnvDeviceAddParam.java

@@ -31,17 +31,17 @@ import java.util.Date;
  **/
 @Getter
 @Setter
-public class EnvDeviceAddParam {
+public class EnvDeviceAddParam extends EnvDeviceOrgIdParam{
 
     /** 设备编号 */
     @ApiModelProperty(value = "设备编号", required = true, position = 2)
     @NotBlank(message = "deviceCode不能为空")
     private String deviceCode;
 
-    /** 设备类型 */
-    @ApiModelProperty(value = "设备类型", required = true, position = 3)
-    @NotBlank(message = "deviceType不能为空")
-    private String deviceType;
+    /** 设备类型id */
+    @ApiModelProperty(value = "设备类型id", required = true, position = 3)
+    @NotBlank(message = "deviceTypeId不能为空")
+    private String deviceTypeId;
 
     /** 设备名称 */
     @ApiModelProperty(value = "设备名称", required = true, position = 4)
@@ -63,9 +63,5 @@ public class EnvDeviceAddParam {
     @NotNull(message = "curtainNum不能为空")
     private Integer curtainNum;
 
-    /** 组织ID */
-    @ApiModelProperty(value = "组织ID", position = 9)
-    @TableField(fill = FieldFill.INSERT)
-    private String orgId;
 
 }

+ 4 - 4
snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdevice/param/EnvDeviceEditParam.java

@@ -41,10 +41,10 @@ public class EnvDeviceEditParam {
     @NotBlank(message = "deviceCode不能为空")
     private String deviceCode;
 
-    /** 设备类型 */
-    @ApiModelProperty(value = "设备类型", required = true, position = 3)
-    @NotBlank(message = "deviceType不能为空")
-    private String deviceType;
+    /** 设备类型id */
+    @ApiModelProperty(value = "设备类型id", required = true, position = 3)
+    @NotBlank(message = "deviceTypeId不能为空")
+    private String deviceTypeId;
 
     /** 设备名称 */
     @ApiModelProperty(value = "设备名称", required = true, position = 4)

+ 37 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdevice/param/EnvDeviceOrgIdParam.java

@@ -0,0 +1,37 @@
+/*
+ * Copyright [2022] [https://www.xiaonuo.vip]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.xiaonuo.vip
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.xiaonuo.vip
+ */
+package vip.xiaonuo.modular.env.envdevice.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * 环控设备Id参数
+ *
+ * @author newspaper
+ * @date  2023/12/18 09:58
+ **/
+@Getter
+@Setter
+public class EnvDeviceOrgIdParam {
+
+    /** 组织id */
+    @ApiModelProperty(value = "组织id", required = true, position = 99)
+    @NotBlank(message = "orgId不能为空")
+    private String orgId;
+
+
+}

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdevice/param/EnvDevicePageParam.java

@@ -26,7 +26,7 @@ import java.util.Date;
  **/
 @Getter
 @Setter
-public class EnvDevicePageParam {
+public class EnvDevicePageParam extends EnvDeviceOrgIdParam{
 
     /** 当前页 */
     @ApiModelProperty(value = "当前页码")

+ 4 - 6
snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdevice/service/EnvDeviceService.java

@@ -15,12 +15,10 @@ package vip.xiaonuo.modular.env.envdevice.service;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import vip.xiaonuo.common.pojo.CommonResult;
+import vip.xiaonuo.modular.base.baseConfig.entity.BaseConfig;
 import vip.xiaonuo.modular.env.envdevice.entity.EnvDevice;
 import vip.xiaonuo.modular.env.envdevice.entity.vo.EnvDeviceCountVo;
-import vip.xiaonuo.modular.env.envdevice.param.EnvDeviceAddParam;
-import vip.xiaonuo.modular.env.envdevice.param.EnvDeviceEditParam;
-import vip.xiaonuo.modular.env.envdevice.param.EnvDeviceIdParam;
-import vip.xiaonuo.modular.env.envdevice.param.EnvDevicePageParam;
+import vip.xiaonuo.modular.env.envdevice.param.*;
 
 import java.util.List;
 import java.util.Map;
@@ -81,7 +79,7 @@ public interface EnvDeviceService extends IService<EnvDevice> {
      **/
     EnvDevice queryEntity(String id);
 
-    EnvDeviceCountVo deviceCount();
+    EnvDeviceCountVo deviceCount(EnvDeviceOrgIdParam envDeviceOrgIdParam);
 
-    List<String> deviceTypeSelector();
+    List<BaseConfig> deviceTypeSelector(EnvDeviceOrgIdParam envDeviceOrgIdParam);
 }

+ 9 - 21
snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdevice/service/impl/EnvDeviceServiceImpl.java

@@ -39,10 +39,7 @@ import vip.xiaonuo.modular.env.entity.EnvDeviceEquipment;
 import vip.xiaonuo.modular.env.envdevice.entity.EnvDevice;
 import vip.xiaonuo.modular.env.envdevice.entity.vo.EnvDeviceCountVo;
 import vip.xiaonuo.modular.env.envdevice.mapper.EnvDeviceMapper;
-import vip.xiaonuo.modular.env.envdevice.param.EnvDeviceAddParam;
-import vip.xiaonuo.modular.env.envdevice.param.EnvDeviceEditParam;
-import vip.xiaonuo.modular.env.envdevice.param.EnvDeviceIdParam;
-import vip.xiaonuo.modular.env.envdevice.param.EnvDevicePageParam;
+import vip.xiaonuo.modular.env.envdevice.param.*;
 import vip.xiaonuo.modular.env.envdevice.service.EnvDeviceService;
 import vip.xiaonuo.modular.env.mapper.EnvDeviceEquipmentMapper;
 
@@ -71,7 +68,7 @@ public class EnvDeviceServiceImpl extends ServiceImpl<EnvDeviceMapper, EnvDevice
 
     @Override
     public Page<EnvDevice> page(EnvDevicePageParam envDevicePageParam) {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+        String orgId = envDevicePageParam.getOrgId();
         QueryWrapper<EnvDevice> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("org_id",orgId).orderByAsc("id");
         if(ObjectUtil.isNotEmpty(envDevicePageParam.getDeviceType())) {
@@ -141,20 +138,18 @@ public class EnvDeviceServiceImpl extends ServiceImpl<EnvDeviceMapper, EnvDevice
                 equipmentMapper.insert(equipment);
             }
             this.save(envDevice);
-            CommonDataChangeEventCenter.doAddWithData(EnvDataTypeEnum.DEVICE.getValue(), JSONUtil.createArray().put(envDevice));
             return CommonResult.ok();
         } else {
             return new CommonResult(500, "设备编号重复或者安装位置已存在设备", false);
         }
 
-
     }
 
     @Transactional(rollbackFor = Exception.class)
     @Override
     public void edit(EnvDeviceEditParam envDeviceEditParam) {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
         EnvDevice envDevice = this.queryEntity(envDeviceEditParam.getId());
+        String orgId = envDevice.getOrgId();
         BeanUtil.copyProperties(envDeviceEditParam, envDevice);
         if (this.count(new QueryWrapper<EnvDevice>().lambda()
                 .eq(EnvDevice::getOrgId,orgId)
@@ -175,7 +170,6 @@ public class EnvDeviceServiceImpl extends ServiceImpl<EnvDeviceMapper, EnvDevice
             throw new CommonException("该位置已存在设备!");
         }
         this.updateById(envDevice);
-        CommonDataChangeEventCenter.doUpdateWithData(EnvDataTypeEnum.DEVICE.getValue(), JSONUtil.createArray().put(envDevice));
     }
 
     @Transactional(rollbackFor = Exception.class)
@@ -184,8 +178,6 @@ public class EnvDeviceServiceImpl extends ServiceImpl<EnvDeviceMapper, EnvDevice
         List<String> toDeleteDeviceIdList = CollStreamUtil.toList(envDeviceIdParamList, EnvDeviceIdParam::getId);
         // 执行删除
         this.removeByIds(toDeleteDeviceIdList);
-
-        CommonDataChangeEventCenter.doDeleteWithDataId(EnvDataTypeEnum.DEVICE.getValue(), toDeleteDeviceIdList);
     }
 
     @Override
@@ -203,9 +195,9 @@ public class EnvDeviceServiceImpl extends ServiceImpl<EnvDeviceMapper, EnvDevice
     }
 
     @Override
-    public EnvDeviceCountVo deviceCount() {
+    public EnvDeviceCountVo deviceCount(EnvDeviceOrgIdParam envDeviceOrgIdParam) {
         EnvDeviceCountVo envDeviceCountVo = new EnvDeviceCountVo();
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
+        String orgId = envDeviceOrgIdParam.getOrgId();
         long deviceNum = this.count(new QueryWrapper<EnvDevice>().lambda().eq(EnvDevice::getOrgId, orgId));
         if (deviceNum == 0){
             envDeviceCountVo.setDeviceNum(0L);
@@ -216,7 +208,7 @@ public class EnvDeviceServiceImpl extends ServiceImpl<EnvDeviceMapper, EnvDevice
             envDeviceCountVo.setDeviceNum(deviceNum);
             long onDeviceNum = this.count(new QueryWrapper<EnvDevice>().lambda().eq(EnvDevice::getStatus,"1").eq(EnvDevice::getOrgId, orgId));
             envDeviceCountVo.setOnDeviceNum(onDeviceNum);
-            long offDeviceNum = this.count(new QueryWrapper<EnvDevice>().lambda().eq(EnvDevice::getStatus,"1").eq(EnvDevice::getOrgId, orgId));
+            long offDeviceNum = this.count(new QueryWrapper<EnvDevice>().lambda().eq(EnvDevice::getStatus,"0").eq(EnvDevice::getOrgId, orgId));
             envDeviceCountVo.setOffDeviceNum(offDeviceNum);
             //创建一个数值格式化对象
             NumberFormat numberFormat = NumberFormat.getInstance();
@@ -229,14 +221,10 @@ public class EnvDeviceServiceImpl extends ServiceImpl<EnvDeviceMapper, EnvDevice
     }
 
     @Override
-    public List<String> deviceTypeSelector() {
-        String orgId = StpLoginUserUtil.getLoginUser().getOrgId();
-        List<String> list = new ArrayList<>();
+    public List<BaseConfig> deviceTypeSelector(EnvDeviceOrgIdParam envDeviceOrgIdParam) {
+        String orgId = envDeviceOrgIdParam.getOrgId();
         String parentId = baseConfigMapper.selectOne(new QueryWrapper<BaseConfig>().lambda().eq(BaseConfig::getParentId, 0).eq(BaseConfig::getConfigName, "设备类型")).getId();
         List<BaseConfig> baseConfigs = baseConfigMapper.selectList(new QueryWrapper<BaseConfig>().lambda().eq(BaseConfig::getParentId, parentId).eq(BaseConfig::getOrgId, orgId));
-        if (ObjectUtil.isNotEmpty(baseConfigs)){
-            list = baseConfigs.stream().map(baseConfig -> baseConfig.getConfigName()).collect(Collectors.toList());
-        }
-        return list;
+        return baseConfigs;
     }
 }

+ 2 - 2
snowy-web-app/src/main/java/vip/xiaonuo/modular/warning/warningManager/entity/WarningManager.java

@@ -55,6 +55,6 @@ public class WarningManager extends CommonEntity {
 
     /** 组织ID */
     @ApiModelProperty(value = "组织ID", position = 6)
-    @TableField(fill = FieldFill.INSERT)
-    private String orgId;
+
+private String orgId;
 }