diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/hard/HardApiController.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/hard/HardApiController.java index 0bbe034a1..9988b934b 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/hard/HardApiController.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/hard/HardApiController.java @@ -1,7 +1,6 @@ package com.bsd.pjcloud.hard.controller.hard; import cn.hutool.core.util.ObjectUtil; -import com.bsd.pjcloud.common.core.util.BeanUtils; import com.bsd.pjcloud.common.core.util.R; import com.bsd.pjcloud.common.idempotent.annotation.Idempotent; import com.bsd.pjcloud.hard.api.constant.HardTypeEnum; diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/HardManagerServiceImpl.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/HardManagerServiceImpl.java index be95aa730..b9576e9e4 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/HardManagerServiceImpl.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/HardManagerServiceImpl.java @@ -120,8 +120,12 @@ public class HardManagerServiceImpl extends ServiceImplorg.springframework.boot spring-boot-starter-test - - com.bsd - pjcloud-wallet-api - 5.7.0 - compile - diff --git a/pjcloud-mqtt/pjcloud-mqtt-biz/src/main/java/com/bsd/pjcloud/mqtt/service/MqttEventService.java b/pjcloud-mqtt/pjcloud-mqtt-biz/src/main/java/com/bsd/pjcloud/mqtt/service/MqttEventService.java index e7c72da23..541721945 100644 --- a/pjcloud-mqtt/pjcloud-mqtt-biz/src/main/java/com/bsd/pjcloud/mqtt/service/MqttEventService.java +++ b/pjcloud-mqtt/pjcloud-mqtt-biz/src/main/java/com/bsd/pjcloud/mqtt/service/MqttEventService.java @@ -2,10 +2,10 @@ package com.bsd.pjcloud.mqtt.service; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSON; +import com.bsd.pjcloud.admin.api.entity.SysDept; +import com.bsd.pjcloud.admin.api.feign.RemoteDeptService; import com.bsd.pjcloud.mqtt.dto.MqttBaseDto; import com.bsd.pjcloud.mqtt.dto.MqttHardBaseMsg; -import com.bsd.pjcloud.wallet.api.feign.RemoteMchService; -import com.bsd.pjcloud.wallet.api.vo.MchManageVo; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; @@ -17,9 +17,11 @@ import java.util.List; @Component public class MqttEventService { + static private final String TAG = "MqttEventService"; + private final MqttService mqttService; - private final RemoteMchService remoteMchService; + private final RemoteDeptService remoteDeptService; public Boolean defaultAction(T dto) { MqttHardBaseMsg msg = dto.getData(); @@ -29,10 +31,11 @@ public class MqttEventService { } public void getTopicParamsByUserDeptId(T dto, Long deptId) { - MchManageVo mch = remoteMchService.getFirstMchByDeptId(deptId).getData(); - if (ObjectUtil.isEmpty(mch)) { + SysDept dept = remoteDeptService.getParentDeptHardGroup(deptId).getData(); + if (ObjectUtil.isEmpty(dept)) { + log.error("|{}|查找上级部门硬件分组失败deptId:|{}|dto:|{}|", TAG, deptId, JSON.toJSONString(dto)); return; } - dto.setHardGroupId(mch.getHardGroupId()); + dto.setHardGroupId(dept.getHardGroupId()); } } diff --git a/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/entity/SysDept.java b/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/entity/SysDept.java index 6ea581519..66a486792 100644 --- a/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/entity/SysDept.java +++ b/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/entity/SysDept.java @@ -28,6 +28,7 @@ import lombok.EqualsAndHashCode; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; + import java.time.LocalDateTime; /** @@ -44,66 +45,72 @@ import java.time.LocalDateTime; @EqualsAndHashCode(callSuper = true) public class SysDept extends Model { - private static final long serialVersionUID = 1L; + private static final long serialVersionUID = 1L; - @TableId(value = "dept_id", type = IdType.ASSIGN_ID) - @Schema(description = "部门id") - private Long deptId; + @TableId(value = "dept_id", type = IdType.ASSIGN_ID) + @Schema(description = "部门id") + private Long deptId; - /** - * 部门名称 - */ - @NotBlank(message = "部门名称不能为空") - @Schema(description = "部门名称") - private String name; + /** + * 部门名称 + */ + @NotBlank(message = "部门名称不能为空") + @Schema(description = "部门名称") + private String name; - /** - * 排序 - */ - @NotNull(message = "排序值不能为空") - @Schema(description = "排序值") - private Integer sortOrder; + /** + * 硬件分类id + */ + @Schema(description = "硬件分类id") + private Long hardGroupId; - /** - * 创建人 - */ - @TableField(fill = FieldFill.INSERT) - @Schema(description = "创建人") - private String createBy; + /** + * 排序 + */ + @NotNull(message = "排序值不能为空") + @Schema(description = "排序值") + private Integer sortOrder; - /** - * 修改人 - */ - @TableField(fill = FieldFill.UPDATE) - @Schema(description = "修改人") - private String updateBy; + /** + * 创建人 + */ + @TableField(fill = FieldFill.INSERT) + @Schema(description = "创建人") + private String createBy; - /** - * 创建时间 - */ - @Schema(description = "创建时间") - @TableField(fill = FieldFill.INSERT) - private LocalDateTime createTime; + /** + * 修改人 + */ + @TableField(fill = FieldFill.UPDATE) + @Schema(description = "修改人") + private String updateBy; - /** - * 修改时间 - */ - @Schema(description = "修改时间") - @TableField(fill = FieldFill.UPDATE) - private LocalDateTime updateTime; + /** + * 创建时间 + */ + @Schema(description = "创建时间") + @TableField(fill = FieldFill.INSERT) + private LocalDateTime createTime; - /** - * 父级部门id - */ - @Schema(description = "父级部门id") - private Long parentId; + /** + * 修改时间 + */ + @Schema(description = "修改时间") + @TableField(fill = FieldFill.UPDATE) + private LocalDateTime updateTime; - /** - * 是否删除 1:已删除 0:正常 - */ - @TableLogic - @Schema(description = "删除标记,1:已删除,0:正常") - @TableField(fill = FieldFill.INSERT) - private String delFlag; + /** + * 父级部门id + */ + @Schema(description = "父级部门id") + private Long parentId; + + /** + * 是否删除 1:已删除 0:正常 + */ + @TableLogic + @Schema(description = "删除标记,1:已删除,0:正常") + @TableField(fill = FieldFill.INSERT) + private String delFlag; } diff --git a/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/feign/RemoteDeptService.java b/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/feign/RemoteDeptService.java index dbe724fbf..ced72c39f 100644 --- a/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/feign/RemoteDeptService.java +++ b/pjcloud-upms/pjcloud-upms-api/src/main/java/com/bsd/pjcloud/admin/api/feign/RemoteDeptService.java @@ -84,4 +84,13 @@ public interface RemoteDeptService { @NoToken @GetMapping("/dept/getParentDeptList") R> getParentDeptList(@RequestParam("deptId") Long deptId); + + /** + * 查询部门所属的分组部门 + * @param deptId + * @return + */ + @NoToken + @GetMapping("/dept/getParentDeptHardGroup") + R getParentDeptHardGroup(@RequestParam("deptId") Long deptId); } diff --git a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/controller/SysDeptController.java b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/controller/SysDeptController.java index 6cf720a51..1df2e796c 100644 --- a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/controller/SysDeptController.java +++ b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/controller/SysDeptController.java @@ -204,4 +204,16 @@ public class SysDeptController { public R> getParentDeptList(@RequestParam("deptId") Long deptId) { return R.ok(sysDeptService.getParentDeptList(deptId)); } + + /** + * 查询部门所属的分组部门 + * + * @param deptId + * @return + */ + @Inner + @GetMapping("/getParentDeptHardGroup") + public R getParentDeptHardGroup(@RequestParam("deptId") Long deptId) { + return R.ok(sysDeptService.getParentDeptHardGroup(deptId)); + } } diff --git a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/SysDeptService.java b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/SysDeptService.java index 6838c954b..5d77a9d41 100644 --- a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/SysDeptService.java +++ b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/SysDeptService.java @@ -76,6 +76,8 @@ public interface SysDeptService extends IService { */ List getParentDeptList(Long deptId); + SysDept getParentDeptHardGroup(Long deptId); + /** * 获取部门负责人 * diff --git a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysDeptServiceImpl.java b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysDeptServiceImpl.java index 4587fd1ee..cee7505fe 100644 --- a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysDeptServiceImpl.java +++ b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysDeptServiceImpl.java @@ -227,6 +227,13 @@ public class SysDeptServiceImpl extends ServiceImpl impl return parentList; } + @Override + public SysDept getParentDeptHardGroup(Long deptId) { + List parentDeptIds = getParentDeptList(deptId); + if (ObjectUtil.isEmpty(parentDeptIds)) return null; + return parentDeptIds.stream().filter(v -> ObjectUtil.isNotEmpty(v.getHardGroupId())).findFirst().get(); + } + private void findParentDeptList(Long id, LinkedList parentList) { SysDept currentDept = baseMapper.selectById(id); if (currentDept != null) { diff --git a/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/MchManageEntity.java b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/MchManageEntity.java index 1d87f4b58..c6fb65b30 100644 --- a/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/MchManageEntity.java +++ b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/MchManageEntity.java @@ -32,12 +32,6 @@ public class MchManageEntity extends Model { @Schema(description="主键") private Long id; - /** - * 设备分组id - */ - @Schema(description="设备分组id") - private Long hardGroupId; - /** * 绑定的部门id */ diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/MchManageServiceImpl.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/MchManageServiceImpl.java index 951154351..69077e0a8 100644 --- a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/MchManageServiceImpl.java +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/MchManageServiceImpl.java @@ -24,8 +24,6 @@ import com.bsd.pjcloud.wallet.service.MchManageService; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.cache.annotation.CacheEvict; -import org.springframework.cache.annotation.CachePut; -import org.springframework.cache.annotation.Cacheable; import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.mock.web.MockMultipartFile; import org.springframework.stereotype.Service; @@ -59,7 +57,7 @@ public class MchManageServiceImpl extends ServiceImpl