diff --git a/pjcloud-hardware/pjcloud-hardware-api/pom.xml b/pjcloud-hardware/pjcloud-hardware-api/pom.xml
index 1d1f9a201..1c1ce71f5 100644
--- a/pjcloud-hardware/pjcloud-hardware-api/pom.xml
+++ b/pjcloud-hardware/pjcloud-hardware-api/pom.xml
@@ -38,5 +38,15 @@
com.bsd
pjcloud-common-excel
+
+ com.bsd
+ pjcloud-upms-api
+
+
+ com.bsd
+ pjcloud-wallet-api
+ 5.7.0
+ compile
+
diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/HardTypeEnum.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/HardTypeEnum.java
new file mode 100644
index 000000000..0f52e686a
--- /dev/null
+++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/HardTypeEnum.java
@@ -0,0 +1,29 @@
+package com.bsd.pjcloud.hard.api.constant;
+
+import cn.hutool.core.util.ObjectUtil;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.Arrays;
+
+/**
+ * 硬件设备类型
+ */
+@AllArgsConstructor
+@Getter
+public enum HardTypeEnum {
+
+ SUPERMARKET(1, "超市"),
+ CANTEEN(2, "食堂"),
+ READ_CARD(3, "读卡器"),
+ DOOR(4, "生鲜柜"),
+ ;
+ private final Integer type;
+ private final String description;
+
+ public static HardTypeEnum valueOfByType(Integer type) {
+ if (ObjectUtil.isEmpty(type)) return null;
+ return Arrays.stream(values()).filter(v -> ObjectUtil.equals(type, v.getType())).findFirst().get();
+ }
+
+}
diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/mq/MqActionEnum.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/mq/MqActionEnum.java
new file mode 100644
index 000000000..4ef2ddea7
--- /dev/null
+++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/mq/MqActionEnum.java
@@ -0,0 +1,19 @@
+package com.bsd.pjcloud.hard.api.constant.mq;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * mq action
+ */
+@AllArgsConstructor
+@Getter
+public enum MqActionEnum {
+ SYNC_CONFIG("同步设置"),
+ SYNC_PRODUCT("同步菜单"),
+ SYNC_CLASSIFY("同步分类"),
+ PRINT("打印"),
+ USER_FACE_CHANGE("用户人脸变化"),
+ ;
+ private final String description;
+}
diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/HardOrderTypeEnum.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardOrderTypeEnum.java
similarity index 93%
rename from pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/HardOrderTypeEnum.java
rename to pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardOrderTypeEnum.java
index 707c01fb9..01e14c848 100644
--- a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/HardOrderTypeEnum.java
+++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardOrderTypeEnum.java
@@ -1,4 +1,4 @@
-package com.bsd.pjcloud.hard.api.constant;
+package com.bsd.pjcloud.hard.api.constant.order;
import cn.hutool.core.util.ObjectUtil;
import lombok.AllArgsConstructor;
diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/HardPayTypeEnum.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardPayTypeEnum.java
similarity index 94%
rename from pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/HardPayTypeEnum.java
rename to pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardPayTypeEnum.java
index 716b97014..86cfb12e7 100644
--- a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/HardPayTypeEnum.java
+++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardPayTypeEnum.java
@@ -1,4 +1,4 @@
-package com.bsd.pjcloud.hard.api.constant;
+package com.bsd.pjcloud.hard.api.constant.order;
import cn.hutool.core.util.ObjectUtil;
diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/entity/HardManagerEntity.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/entity/HardManagerEntity.java
index 579ddcf74..d8400614a 100644
--- a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/entity/HardManagerEntity.java
+++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/entity/HardManagerEntity.java
@@ -3,8 +3,7 @@ package com.bsd.pjcloud.hard.api.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
+import lombok.*;
import com.bsd.pjcloud.common.core.util.TenantTable;
import java.time.LocalDateTime;
@@ -14,6 +13,9 @@ import java.time.LocalDateTime;
* @author dzc
* @date 2025-01-05 14:16:52
*/
+@Builder
+@AllArgsConstructor
+@NoArgsConstructor
@Data
@TenantTable
@TableName("hard_manager")
diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/HardManagerVo.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/HardManagerVo.java
index c83a1429f..169d9bfc4 100644
--- a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/HardManagerVo.java
+++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/HardManagerVo.java
@@ -1,8 +1,16 @@
package com.bsd.pjcloud.hard.api.vo;
+import com.bsd.pjcloud.admin.api.vo.base.BaseDeptInterface;
import com.bsd.pjcloud.hard.api.entity.HardManagerEntity;
+import com.bsd.pjcloud.wallet.api.vo.base.BaseMchInterface;
import lombok.Data;
@Data
-public class HardManagerVo extends HardManagerEntity {
+public class HardManagerVo extends HardManagerEntity implements BaseDeptInterface, BaseMchInterface {
+
+
+ private String deptName;
+
+ private String merchantName;
+
}
diff --git a/pjcloud-hardware/pjcloud-hardware-biz/pom.xml b/pjcloud-hardware/pjcloud-hardware-biz/pom.xml
index a2114dbf5..16184b5cc 100644
--- a/pjcloud-hardware/pjcloud-hardware-biz/pom.xml
+++ b/pjcloud-hardware/pjcloud-hardware-biz/pom.xml
@@ -94,6 +94,12 @@
org.springframework.boot
spring-boot-starter-test
+
+ com.bsd
+ pjcloud-wallet-api
+ 5.7.0
+ compile
+
diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/common/config/MqttConfig.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/common/config/MqttConfig.java
new file mode 100644
index 000000000..802bb6e79
--- /dev/null
+++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/common/config/MqttConfig.java
@@ -0,0 +1,35 @@
+package com.bsd.pjcloud.hard.common.config;
+
+import lombok.Data;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.stereotype.Component;
+
+@Data
+@ConfigurationProperties(prefix = "mqtt")
+@Component
+public class MqttConfig {
+ /**
+ * 用户名
+ */
+ private String username;
+ /**
+ * 密码
+ */
+ private String password;
+ /**
+ * 连接地址
+ */
+ private String hostUrl;
+ /**
+ * clientId
+ */
+ private String clientId;
+ /**
+ * 安卓连接地址
+ */
+ private String androidAddress;
+ /**
+ * 安卓连接端口
+ */
+ private String androidPort;
+}
diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/HardInvoiceController.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/HardInvoiceController.java
index 6f56a292e..4a6c11979 100644
--- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/HardInvoiceController.java
+++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/HardInvoiceController.java
@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.bsd.pjcloud.common.core.util.R;
import com.bsd.pjcloud.common.log.annotation.SysLog;
+import com.bsd.pjcloud.hard.api.dto.HardInvoiceDto;
import com.bsd.pjcloud.hard.api.entity.HardInvoiceEntity;
import com.bsd.pjcloud.hard.service.HardInvoiceService;
import org.springframework.security.access.prepost.PreAuthorize;
@@ -29,90 +30,63 @@ import java.util.List;
*/
@RestController
@RequiredArgsConstructor
-@RequestMapping("/hard-invoice" )
-@Tag(description = "hard-invoice" , name = "发票记录管理" )
+@RequestMapping("/hard-invoice")
+@Tag(description = "hard-invoice", name = "发票记录管理")
@SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
public class HardInvoiceController {
private final HardInvoiceService hardInvoiceService;
- /**
- * 分页查询
- * @param page 分页对象
- * @param hardInvoice 发票记录
- * @return
- */
- @Operation(summary = "分页查询" , description = "分页查询" )
- @GetMapping("/page" )
- @PreAuthorize("@pms.hasPermission('hard_hardInvoice_view')" )
+ @Operation(summary = "分页查询", description = "分页查询")
+ @GetMapping("/page")
+ @PreAuthorize("@pms.hasPermission('hard_hardInvoice_view')")
public R getHardInvoicePage(@ParameterObject Page page, @ParameterObject HardInvoiceEntity hardInvoice) {
LambdaQueryWrapper wrapper = Wrappers.lambdaQuery();
return R.ok(hardInvoiceService.page(page, wrapper));
}
+ @Operation(summary = "分页复杂查询", description = "分页复杂查询")
+ @GetMapping("/page-join")
+ @PreAuthorize("@pms.hasPermission('hard_hardInvoice_view')")
+ public R pageJoin(@ParameterObject Page page, @ParameterObject HardInvoiceDto dto) {
+ return R.ok(hardInvoiceService.pageJoin(page, dto));
+ }
- /**
- * 通过id查询发票记录
- * @param id id
- * @return R
- */
- @Operation(summary = "通过id查询" , description = "通过id查询" )
- @GetMapping("/{id}" )
- @PreAuthorize("@pms.hasPermission('hard_hardInvoice_view')" )
- public R getById(@PathVariable("id" ) Long id) {
+ @Operation(summary = "通过id查询", description = "通过id查询")
+ @GetMapping("/{id}")
+ @PreAuthorize("@pms.hasPermission('hard_hardInvoice_view')")
+ public R getById(@PathVariable("id") Long id) {
return R.ok(hardInvoiceService.getById(id));
}
- /**
- * 新增发票记录
- * @param hardInvoice 发票记录
- * @return R
- */
- @Operation(summary = "新增发票记录" , description = "新增发票记录" )
- @SysLog("新增发票记录" )
+ @Operation(summary = "新增发票记录", description = "新增发票记录")
+ @SysLog("新增发票记录")
@PostMapping
- @PreAuthorize("@pms.hasPermission('hard_hardInvoice_add')" )
+ @PreAuthorize("@pms.hasPermission('hard_hardInvoice_add')")
public R save(@RequestBody HardInvoiceEntity hardInvoice) {
return R.ok(hardInvoiceService.save(hardInvoice));
}
- /**
- * 修改发票记录
- * @param hardInvoice 发票记录
- * @return R
- */
- @Operation(summary = "修改发票记录" , description = "修改发票记录" )
- @SysLog("修改发票记录" )
+ @Operation(summary = "修改发票记录", description = "修改发票记录")
+ @SysLog("修改发票记录")
@PutMapping
- @PreAuthorize("@pms.hasPermission('hard_hardInvoice_edit')" )
+ @PreAuthorize("@pms.hasPermission('hard_hardInvoice_edit')")
public R updateById(@RequestBody HardInvoiceEntity hardInvoice) {
return R.ok(hardInvoiceService.updateById(hardInvoice));
}
- /**
- * 通过id删除发票记录
- * @param ids id列表
- * @return R
- */
- @Operation(summary = "通过id删除发票记录" , description = "通过id删除发票记录" )
- @SysLog("通过id删除发票记录" )
+ @Operation(summary = "通过id删除发票记录", description = "通过id删除发票记录")
+ @SysLog("通过id删除发票记录")
@DeleteMapping
- @PreAuthorize("@pms.hasPermission('hard_hardInvoice_del')" )
+ @PreAuthorize("@pms.hasPermission('hard_hardInvoice_del')")
public R removeById(@RequestBody Long[] ids) {
return R.ok(hardInvoiceService.removeBatchByIds(CollUtil.toList(ids)));
}
-
- /**
- * 导出excel 表格
- * @param hardInvoice 查询条件
- * @param ids 导出指定ID
- * @return excel 文件流
- */
@ResponseExcel
@GetMapping("/export")
- @PreAuthorize("@pms.hasPermission('hard_hardInvoice_export')" )
- public List export(HardInvoiceEntity hardInvoice,Long[] ids) {
+ @PreAuthorize("@pms.hasPermission('hard_hardInvoice_export')")
+ public List export(HardInvoiceEntity hardInvoice, Long[] ids) {
return hardInvoiceService.list(Wrappers.lambdaQuery(hardInvoice).in(ArrayUtil.isNotEmpty(ids), HardInvoiceEntity::getId, ids));
}
}
\ No newline at end of file
diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/HardManagerController.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/HardManagerController.java
index bc07cbeb6..87e71ecee 100644
--- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/HardManagerController.java
+++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/HardManagerController.java
@@ -7,6 +7,8 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.bsd.pjcloud.common.core.util.R;
import com.bsd.pjcloud.common.log.annotation.SysLog;
+import com.bsd.pjcloud.hard.api.dto.HardInvoiceDto;
+import com.bsd.pjcloud.hard.api.dto.HardManagerDto;
import com.bsd.pjcloud.hard.api.entity.HardManagerEntity;
import com.bsd.pjcloud.hard.service.HardManagerService;
import org.springframework.security.access.prepost.PreAuthorize;
@@ -36,12 +38,6 @@ public class HardManagerController {
private final HardManagerService hardManagerService;
- /**
- * 分页查询
- * @param page 分页对象
- * @param hardManager 设备管理
- * @return
- */
@Operation(summary = "分页查询" , description = "分页查询" )
@GetMapping("/page" )
@PreAuthorize("@pms.hasPermission('hard_hardManager_view')" )
@@ -50,12 +46,13 @@ public class HardManagerController {
return R.ok(hardManagerService.page(page, wrapper));
}
+ @Operation(summary = "分页复杂查询", description = "分页复杂查询")
+ @GetMapping("/page-join")
+ @PreAuthorize("@pms.hasPermission('hard_hardInvoice_view')")
+ public R pageJoin(@ParameterObject Page page, @ParameterObject HardManagerDto dto) {
+ return R.ok(hardManagerService.pageJoin(page, dto));
+ }
- /**
- * 通过id查询设备管理
- * @param id id
- * @return R
- */
@Operation(summary = "通过id查询" , description = "通过id查询" )
@GetMapping("/{id}" )
@PreAuthorize("@pms.hasPermission('hard_hardManager_view')" )
@@ -63,37 +60,23 @@ public class HardManagerController {
return R.ok(hardManagerService.getById(id));
}
- /**
- * 新增设备管理
- * @param hardManager 设备管理
- * @return R
- */
@Operation(summary = "新增设备管理" , description = "新增设备管理" )
@SysLog("新增设备管理" )
@PostMapping
@PreAuthorize("@pms.hasPermission('hard_hardManager_add')" )
- public R save(@RequestBody HardManagerEntity hardManager) {
- return R.ok(hardManagerService.save(hardManager));
+ public R save(@RequestBody HardManagerDto dto) {
+ return R.ok(hardManagerService.create(dto));
}
- /**
- * 修改设备管理
- * @param hardManager 设备管理
- * @return R
- */
@Operation(summary = "修改设备管理" , description = "修改设备管理" )
@SysLog("修改设备管理" )
@PutMapping
@PreAuthorize("@pms.hasPermission('hard_hardManager_edit')" )
- public R updateById(@RequestBody HardManagerEntity hardManager) {
- return R.ok(hardManagerService.updateById(hardManager));
+ public R updateById(@RequestBody HardManagerDto dto) {
+ hardManagerService.edit(dto);
+ return R.ok();
}
- /**
- * 通过id删除设备管理
- * @param ids id列表
- * @return R
- */
@Operation(summary = "通过id删除设备管理" , description = "通过id删除设备管理" )
@SysLog("通过id删除设备管理" )
@DeleteMapping
@@ -102,13 +85,6 @@ public class HardManagerController {
return R.ok(hardManagerService.removeBatchByIds(CollUtil.toList(ids)));
}
-
- /**
- * 导出excel 表格
- * @param hardManager 查询条件
- * @param ids 导出指定ID
- * @return excel 文件流
- */
@ResponseExcel
@GetMapping("/export")
@PreAuthorize("@pms.hasPermission('hard_hardManager_export')" )
diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/mapper/HardInvoiceMapper.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/mapper/HardInvoiceMapper.java
index a4082f51b..dd8255875 100644
--- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/mapper/HardInvoiceMapper.java
+++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/mapper/HardInvoiceMapper.java
@@ -1,11 +1,20 @@
package com.bsd.pjcloud.hard.mapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.bsd.pjcloud.common.data.datascope.PjcloudBaseMapper;
+import com.bsd.pjcloud.hard.api.dto.HardInvoiceDto;
import com.bsd.pjcloud.hard.api.entity.HardInvoiceEntity;
+import com.bsd.pjcloud.hard.api.vo.HardInvoiceVo;
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface HardInvoiceMapper extends PjcloudBaseMapper {
-
-
+ default Page pageJoin(Page page, HardInvoiceDto dto) {
+ MPJLambdaWrapper wrapper = new MPJLambdaWrapper()
+ .selectAll(HardInvoiceEntity.class)
+ .eqIfExists(HardInvoiceEntity::getHardId, dto.getHardId())
+ .eqIfExists(HardInvoiceEntity::getHardOrderId, dto.getHardOrderId());
+ return selectJoinPage(page, HardInvoiceVo.class, wrapper);
+ }
}
\ No newline at end of file
diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/mapper/HardManagerMapper.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/mapper/HardManagerMapper.java
index 7e5b8b200..ce6777db7 100644
--- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/mapper/HardManagerMapper.java
+++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/mapper/HardManagerMapper.java
@@ -1,11 +1,21 @@
package com.bsd.pjcloud.hard.mapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.bsd.pjcloud.common.data.datascope.PjcloudBaseMapper;
+import com.bsd.pjcloud.hard.api.dto.HardManagerDto;
import com.bsd.pjcloud.hard.api.entity.HardManagerEntity;
+import com.bsd.pjcloud.hard.api.vo.HardManagerVo;
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface HardManagerMapper extends PjcloudBaseMapper {
-
+ default Page pageJoin(Page page, HardManagerDto dto) {
+ MPJLambdaWrapper wrapper = new MPJLambdaWrapper()
+ .selectAll(HardManagerEntity.class)
+ .eqIfExists(HardManagerEntity::getName, dto.getName())
+ .eqIfExists(HardManagerEntity::getMerchantId, dto.getMerchantId());
+ return selectJoinPage(page, HardManagerVo.class, wrapper);
+ }
}
\ No newline at end of file
diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardInvoiceService.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardInvoiceService.java
index 4c64773d2..e1cdca6fc 100644
--- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardInvoiceService.java
+++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardInvoiceService.java
@@ -1,8 +1,12 @@
package com.bsd.pjcloud.hard.service;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
+import com.bsd.pjcloud.hard.api.dto.HardInvoiceDto;
import com.bsd.pjcloud.hard.api.entity.HardInvoiceEntity;
+import com.bsd.pjcloud.hard.api.vo.HardInvoiceVo;
public interface HardInvoiceService extends IService {
+ Page pageJoin(Page page, HardInvoiceDto dto);
}
\ No newline at end of file
diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardManagerService.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardManagerService.java
index ab2b3579f..d0c45a92b 100644
--- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardManagerService.java
+++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardManagerService.java
@@ -1,8 +1,17 @@
package com.bsd.pjcloud.hard.service;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
+import com.bsd.pjcloud.hard.api.dto.HardManagerDto;
import com.bsd.pjcloud.hard.api.entity.HardManagerEntity;
+import com.bsd.pjcloud.hard.api.vo.HardManagerVo;
public interface HardManagerService extends IService {
+ Page pageJoin(Page page, HardManagerDto dto);
+
+ Long create(HardManagerDto dto);
+
+ void edit(HardManagerDto dto);
+
}
\ No newline at end of file
diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/HardInvoiceServiceImpl.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/HardInvoiceServiceImpl.java
index 9274359b2..48c54192d 100644
--- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/HardInvoiceServiceImpl.java
+++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/HardInvoiceServiceImpl.java
@@ -1,7 +1,10 @@
package com.bsd.pjcloud.hard.service.impl;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.bsd.pjcloud.hard.api.dto.HardInvoiceDto;
import com.bsd.pjcloud.hard.api.entity.HardInvoiceEntity;
+import com.bsd.pjcloud.hard.api.vo.HardInvoiceVo;
import com.bsd.pjcloud.hard.mapper.HardInvoiceMapper;
import com.bsd.pjcloud.hard.service.HardInvoiceService;
import org.springframework.stereotype.Service;
@@ -15,4 +18,9 @@ import org.springframework.stereotype.Service;
@Service
public class HardInvoiceServiceImpl extends ServiceImpl implements HardInvoiceService {
+ @Override
+ public Page pageJoin(Page page, HardInvoiceDto dto) {
+ Page list = baseMapper.pageJoin(page, dto);
+ return list;
+ }
}
\ No newline at end of file
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 758f9982a..b00d8c402 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
@@ -1,10 +1,35 @@
package com.bsd.pjcloud.hard.service.impl;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.RandomUtil;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.bsd.pjcloud.admin.api.entity.SysDept;
+import com.bsd.pjcloud.admin.api.feign.RemoteDeptService;
+import com.bsd.pjcloud.admin.api.utils.DataUtil;
+import com.bsd.pjcloud.common.core.util.CollectionUtils;
+import com.bsd.pjcloud.common.core.util.R;
+import com.bsd.pjcloud.hard.api.dto.HardManagerDto;
import com.bsd.pjcloud.hard.api.entity.HardManagerEntity;
+import com.bsd.pjcloud.hard.api.vo.HardManagerVo;
import com.bsd.pjcloud.hard.mapper.HardManagerMapper;
import com.bsd.pjcloud.hard.service.HardManagerService;
+import com.bsd.pjcloud.hard.common.config.MqttConfig;
+import com.bsd.pjcloud.hard.utils.MqTopicUtil;
+import com.bsd.pjcloud.wallet.api.dto.MchManageDto;
+import com.bsd.pjcloud.wallet.api.feign.RemoteMchService;
+import com.bsd.pjcloud.wallet.api.utils.MchDataUtil;
+import com.bsd.pjcloud.wallet.api.vo.MchManageVo;
+import com.bsd.pjcloud.wallet.api.vo.WalletActiveVo;
+import com.bsd.pjcloud.wallet.api.vo.WalletManageVo;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
+import org.springframework.validation.annotation.Validated;
+
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
/**
* 设备管理
@@ -12,6 +37,82 @@ import org.springframework.stereotype.Service;
* @author dzc
* @date 2025-01-05 14:16:52
*/
+@Validated
+@Slf4j
+@RequiredArgsConstructor
@Service
public class HardManagerServiceImpl extends ServiceImpl implements HardManagerService {
+
+ private final MqttConfig mqttConfig;
+
+ private final RemoteMchService mchService;
+ private final RemoteDeptService deptService;
+
+ @Override
+ public Page pageJoin(Page page, HardManagerDto dto) {
+ Page list = baseMapper.pageJoin(page, dto);
+ if (ObjectUtil.isNotEmpty(list.getRecords())) {
+ // 部门
+ List deptIds = list.getRecords().stream().map(HardManagerVo::getDeptId).distinct().toList();
+ R