Răsfoiți Sursa

Merge branch 'develop-yangdebao' into develop

* develop-yangdebao:
  接口添加日志注解
  接口调整
  接口调整
  创客上下级接口修改
  商品列表,上架,下架,详情查询
  商品列表,上架,下架,详情查询
  商品列表,上架,下架,详情查询
  商户列表分页,编辑接口添加
  机具管理列表查询,sn轨迹变动明细,机具卷管理,机具卷划拨记录分页查询接口添加
  机具管理列表查询,sn轨迹变动明细,机具卷管理,机具卷划拨记录分页查询接口添加
  运营管理-筛选分类管理,详细收支明细管理接口添加
  创客机具申请订单分页查询,详情查询
  商城订单分页接口和详情接口实现
  创客信息管理预设职级列表查询
  创客信息管理顶级创客信息添加
  创客信息管理接口部分添加

# Conflicts:
#	kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/mapper/KxsMachineMapper.java
#	kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsMachineService.java
#	kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsShopOrderService.java
#	kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsMachineServiceImpl.java
#	kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsShopOrderServiceImpl.java
#	kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/KxsMachineApplyService.java
#	kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/impl/KxsMachineApplyServiceImpl.java
#	kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/service/impl/KxsUserServiceImpl.java
mac 2 ani în urmă
părinte
comite
19fc1ee3d3
100 a modificat fișierele cu 4308 adăugiri și 35 ștergeri
  1. 122 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/machine/SysMachinePageDTO.java
  2. 12 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/machineTrack/SysMachineTrackPageDTO.java
  3. 53 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/merchant/SysMerchantPageDTO.java
  4. 45 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/merchant/SysMerchantUpdateDTO.java
  5. 88 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/order/SysSoPageDTO.java
  6. 36 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/shopGood/DownShelfDTO.java
  7. 102 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/shopGood/SysShopGoodsAddDTO.java
  8. 12 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/shopGood/SysShopGoodsPageDTO.java
  9. 36 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/shopGood/UpShelfDTO.java
  10. 85 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/ticket/SysTicketPageDTO.java
  11. 53 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/ticketTransfer/SysTicketTransferPageDTO.java
  12. 46 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/vo/admin/machine/SysMachinePageVO.java
  13. 34 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/vo/admin/merchant/SysMerchantPageVO.java
  14. 45 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/vo/admin/order/SysSoOrderDetailVO.java
  15. 59 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/vo/admin/order/SysSoPageVO.java
  16. 28 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/vo/admin/shopGoods/SysShopGoodsPageVO.java
  17. 19 0
      kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/vo/admin/ticketTransfer/SysTicketTransferPageVO.java
  18. 29 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/constant/enums/GoodsStatusEnum.java
  19. 49 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/controller/admin/SysMachineController.java
  20. 49 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/controller/admin/SysMachineTrackController.java
  21. 81 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/controller/admin/SysMerchantController.java
  22. 113 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/controller/admin/SysShopGoodsController.java
  23. 63 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/controller/admin/SysShopOrderController.java
  24. 49 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/controller/admin/SysTicketController.java
  25. 49 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/controller/admin/SysTicketTransferController.java
  26. 11 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/mapper/KxsMachineMapper.java
  27. 12 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/mapper/KxsMachineTrackMapper.java
  28. 13 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/mapper/KxsMerchantMapper.java
  29. 13 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/mapper/KxsShopGoodsMapper.java
  30. 11 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/mapper/KxsShopOrderMapper.java
  31. 8 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/mapper/KxsTicketMapper.java
  32. 12 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/mapper/KxsTicketTransferMapper.java
  33. 11 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsMachineService.java
  34. 11 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsMachineTrackService.java
  35. 28 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsMerchantService.java
  36. 36 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsShopGoodsService.java
  37. 19 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsShopOrderService.java
  38. 11 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsTicketService.java
  39. 12 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsTicketTransferService.java
  40. 87 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsMachineServiceImpl.java
  41. 12 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsMachineTrackServiceImpl.java
  42. 45 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsMerchantServiceImpl.java
  43. 42 5
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsShopGoodsServiceImpl.java
  44. 89 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsShopOrderServiceImpl.java
  45. 79 0
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsTicketServiceImpl.java
  46. 10 4
      kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsTicketTransferServiceImpl.java
  47. 58 0
      kxs-product/kxs-product-biz/src/main/resources/mapper/KxsMachineMapper.xml
  48. 14 0
      kxs-product/kxs-product-biz/src/main/resources/mapper/KxsMachineTrackMapper.xml
  49. 37 0
      kxs-product/kxs-product-biz/src/main/resources/mapper/KxsMerchantMapper.xml
  50. 14 0
      kxs-product/kxs-product-biz/src/main/resources/mapper/KxsShopGoodsMapper.xml
  51. 48 26
      kxs-product/kxs-product-biz/src/main/resources/mapper/KxsShopOrderMapper.xml
  52. 40 0
      kxs-product/kxs-product-biz/src/main/resources/mapper/KxsTicketMapper.xml
  53. 38 0
      kxs-product/kxs-product-biz/src/main/resources/mapper/KxsTicketTransferMapper.xml
  54. 53 0
      kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/dto/admin/machine/SysWarehousePageDTO.java
  55. 22 0
      kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/dto/admin/machine/WarehouseSearchDTO.java
  56. 39 0
      kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/dto/admin/machineApply/SysMachineApplyPageDTO.java
  57. 26 0
      kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/feign/RemoteKxsWarehouseService.java
  58. 12 0
      kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/feign/config/KxsStoreFeignClientConfiguration.java
  59. 41 0
      kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/vo/admin/machineApply/SysMachineApplyApplyDetailVO.java
  60. 74 0
      kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/vo/admin/machineApply/SysMachineApplyPageVO.java
  61. 63 0
      kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/controller/admin/SysMachineApplyController.java
  62. 62 0
      kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/controller/admin/SysWarehouseController.java
  63. 14 0
      kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/mapper/KxsMachineApplyMapper.java
  64. 12 0
      kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/mapper/KxsWarehouseMapper.java
  65. 8 0
      kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/KxsMachineApplyDetailService.java
  66. 22 0
      kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/KxsMachineApplyService.java
  67. 19 0
      kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/KxsWarehouseService.java
  68. 10 0
      kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/impl/KxsMachineApplyDetailServiceImpl.java
  69. 60 0
      kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/impl/KxsMachineApplyServiceImpl.java
  70. 60 0
      kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/impl/KxsWarehouseServiceImpl.java
  71. 36 0
      kxs-store/kxs-store-biz/src/main/resources/mapper/KxsMachineApplyMapper.xml
  72. 32 0
      kxs-store/kxs-store-biz/src/main/resources/mapper/KxsWarehouseMapper.xml
  73. 32 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/changeType/SysChangeTypePageDTO.java
  74. 32 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/changeTypeKind/SysChangeTypeKindPageDTO.java
  75. 20 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/user/RestPwdDTO.java
  76. 53 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/user/SysUserLogoutListDTO.java
  77. 46 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/user/SysUserPageDTO.java
  78. 32 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/user/SysUserUnRealUserPageDTO.java
  79. 39 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/user/SysUserUserAccountListDTO.java
  80. 39 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/user/SysUserWhereListDTO.java
  81. 22 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/user/UserSearchDTO.java
  82. 46 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/userAdvance/SysUserAdvancePageDTO.java
  83. 32 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/userLevel/SysUserLevelPageDTO.java
  84. 46 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/userWithdrawal/SysUserWithdrawalPageDTO.java
  85. 25 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/feign/RemoteKxsUserService.java
  86. 34 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/vo/admin/user/SysFeignUserDetailVO.java
  87. 24 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/vo/admin/user/SysTopUserVO.java
  88. 81 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/vo/admin/user/SysUserPageVO.java
  89. 80 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/vo/admin/user/SysUserUserAccountListVO.java
  90. 54 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/vo/admin/userAdvance/SysUserAdvancePageVO.java
  91. 47 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/vo/admin/userLevel/SysUserLevelPageVO.java
  92. 48 0
      kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/vo/admin/userWithdrawal/SysUserWithdrawalPageVO.java
  93. 110 0
      kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/controller/admin/SysChangeTypeController.java
  94. 107 0
      kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/controller/admin/SysChangeTypeKindController.java
  95. 49 0
      kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/controller/admin/SysUserAdvanceController.java
  96. 249 0
      kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/controller/admin/SysUserController.java
  97. 49 0
      kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/controller/admin/SysUserLevelController.java
  98. 45 0
      kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/controller/admin/SysUserWithdrawalController.java
  99. 12 0
      kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/mapper/KxsChangeTypeKindMapper.java
  100. 12 0
      kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/mapper/KxsChangeTypeMapper.java

+ 122 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/machine/SysMachinePageDTO.java

@@ -0,0 +1,122 @@
+package com.kxs.product.api.dto.admin.machine;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.util.List;
+
+
+/**
+ * 仓库管理-机具管理列表-dto
+ *
+ * @author 系统
+ * @date 2024-07-02 18:04:09
+ */
+@Data
+public class SysMachinePageDTO {
+
+    /**
+     * 机具码
+     */
+    @Schema(description = "机具码")
+    private String posSn;
+
+
+    /**
+     * 品牌ID
+     */
+    @Schema(description = "品牌ID")
+    private Integer brandId;
+
+
+    /**
+     * 是否激活 0未激活 1已激活
+     */
+    @Schema(description = "是否激活 0未激活 1已激活")
+    private Integer isAct;
+
+
+    /**
+     * 绑定状态 0未绑定 1已绑定 2已解绑
+     */
+    @Schema(description = "绑定状态 0未绑定 1已绑定 2已解绑")
+    private Integer bindStatus;
+
+
+    /**
+     * 状态 -1坏机 0在库 1出库 
+     */
+    @Schema(description = "状态 -1坏机 0在库 1出库 ")
+    private Integer status;
+
+
+    /**
+     * 创客姓名
+     */
+    @Schema(description = "创客姓名")
+    private String username;
+
+
+    /**
+     * 创客编号
+     */
+    @Schema(description = "创客编号")
+    private String userCode;
+
+
+    /**
+     * 仓库编号
+     */
+    @Schema(description = "仓库编号")
+    private String warehouseNo;
+
+
+    /**
+     * 仓库所属人创客编号
+     */
+    @Schema(description = "仓库所属人创客编号")
+    private String warehouseUserCode;
+
+
+    /**
+     * 运营中心编号
+     */
+    @Schema(description = "运营中心编号")
+    private String partnerNo;
+
+
+    /**
+     * 绑定时间['','']
+     */
+    @Schema(description = "绑定时间['','']")
+    private String[] bindTime;
+
+
+    /**
+     * 激活时间['','']
+     */
+    @Schema(description = "激活时间['','']")
+    private String[] actTime;
+
+
+    /**
+     * 出库时间['','']
+     */
+    @Schema(description = "出库时间['','']")
+    private String[] deliveryTime;
+
+    /**
+     * 用户userId集合
+     */
+    private List<Integer> userIds;
+
+
+    /**
+     * 用户warehouseIds集合
+     */
+    private List<Integer> warehouseIds;
+
+
+
+
+}

+ 12 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/machineTrack/SysMachineTrackPageDTO.java

@@ -0,0 +1,12 @@
+package com.kxs.product.api.dto.admin.machineTrack;
+
+import lombok.Data;
+
+/**
+ * 仓库管理-SN轨迹变动明细信息-dto
+ * @author debao.yang
+ * @createTime 2024-07-03 13:53
+ */
+@Data
+public class SysMachineTrackPageDTO {
+}

+ 53 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/merchant/SysMerchantPageDTO.java

@@ -0,0 +1,53 @@
+package com.kxs.product.api.dto.admin.merchant;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+
+/**
+ * 商户管理-商户列表-dto
+ *
+ * @author 系统
+ * @date 2024-07-05 10:27:36
+ */
+@Data
+public class SysMerchantPageDTO {
+
+    /**
+     * 商户编号
+     */
+    @Schema(description = "商户编号")
+    private String merchantNo;
+
+
+    /**
+     * 商户名称
+     */
+    @Schema(description = "商户名称")
+    private String merchantName;
+
+
+    /**
+     * 身份证号
+     */
+    @Schema(description = "身份证号")
+    private String merchantCard;
+
+
+    /**
+     * 商户电话
+     */
+    @Schema(description = "商户电话")
+    private String merchantPhone;
+
+
+    /**
+     * 机具编号
+     */
+    @Schema(description = "机具编号")
+    private String posSn;
+
+
+
+
+}

+ 45 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/merchant/SysMerchantUpdateDTO.java

@@ -0,0 +1,45 @@
+package com.kxs.product.api.dto.admin.merchant;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+/**
+ * @author debao.yang
+ * @createTime 2024-07-05 11:58
+ */
+@Data
+public class SysMerchantUpdateDTO {
+
+    /**
+     * 主键ID
+     */
+    @Schema(description = "主键ID")
+    private Integer id;
+
+
+    /**
+     * 商户编号
+     */
+    @Schema(description = "商户编号")
+    private String merchantNo;
+
+
+    /**
+     * 商户名称
+     */
+    @Schema(description = "商户名称")
+    private String merchantName;
+
+
+    /**
+     * 身份证号
+     */
+    @Schema(description = "身份证号")
+    private String merchantCard;
+
+    /**
+     * 商户电话
+     */
+    @Schema(description = "商户电话")
+    private String merchantPhone;
+}

+ 88 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/order/SysSoPageDTO.java

@@ -0,0 +1,88 @@
+package com.kxs.product.api.dto.admin.order;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.util.List;
+
+
+/**
+ * 商城订单-列表-dto
+ *
+ * @author 系统
+ * @date 2024-06-26 17:09:21
+ */
+@Data
+public class SysSoPageDTO {
+
+    /**
+     * 订单号
+     */
+    @Schema(description = "订单号")
+    private String orderSn;
+
+
+    /**
+     * 支付渠道 0余额 1支付宝 2微信 3盟主储蓄金
+     */
+    @Schema(description = "支付渠道 0余额 1支付宝 2微信 3盟主储蓄金")
+    private Integer payType;
+
+
+    /**
+     * 状态 0未支付 1已支付 2已发货 3已完成 4已取消
+     */
+    @Schema(description = "状态 0未支付 1已支付 2已发货 3已完成 4已取消")
+    private Integer status;
+
+
+    /**
+     * 创客编号
+     */
+    @Schema(description = "创客编号")
+    private String userCode;
+
+
+    /**
+     * 创客名字
+     */
+    @Schema(description = "创客名字")
+    private String username;
+
+
+    /**
+     * 产品类型
+     */
+    @Schema(description = "产品类型")
+    private String goodsId;
+
+
+    /**
+     * 下单时间区间['','']
+     */
+    @Schema(description = "下单时间区间['','']")
+    private String[] orderTime;
+
+
+    /**
+     * 支付时间区间['','']
+     */
+    @Schema(description = "支付时间区间['','']")
+    private String[] payTime;
+
+
+    /**
+     * 发货时间区间['','']
+     */
+    @Schema(description = "发货时间区间['','']")
+    private String[] sendTime;
+
+    /**
+     * 用户id集合
+     */
+    private List<Integer> userIds;
+
+
+
+
+}

+ 36 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/shopGood/DownShelfDTO.java

@@ -0,0 +1,36 @@
+package com.kxs.product.api.dto.admin.shopGood;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+
+/**
+ * 商城管理-商品下架-dto
+ *
+ * @author 系统
+ * @date 2024-07-09 11:54:33
+ */
+@Data
+public class DownShelfDTO {
+
+    /**
+     * 主键ID
+     */
+    @Schema(description = "主键ID")
+    private Integer id;
+
+
+    /**
+     * 下架时间
+     */
+    @Schema(description = "下架时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime downTime;
+
+
+
+
+}

+ 102 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/shopGood/SysShopGoodsAddDTO.java

@@ -0,0 +1,102 @@
+package com.kxs.product.api.dto.admin.shopGood;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * 商品新增参数
+ * @author debao.yang
+ * @createTime 2024-07-09 14:12
+ */
+@Data
+public class SysShopGoodsAddDTO {
+
+
+    /**
+     * 封面图
+     */
+    @Schema(description = "封面图")
+    private String picUrl;
+
+
+    /**
+     * 商品名称
+     */
+    @Schema(description = "商品名称")
+    private String goodsName;
+
+
+    /**
+     * 价格
+     */
+    @Schema(description = "价格")
+    private BigDecimal price;
+
+
+    /**
+     * 子标题
+     */
+    @Schema(description = "子标题")
+    private String subtitle;
+
+    /**
+     * 详情
+     */
+    @Schema(description = "详情")
+    private String details;
+
+    /**
+     * sku属性详情
+     */
+    @Schema(description = "sku属性详情")
+    private String specList;
+
+
+    /**
+     * 状态 0下架 1上架
+     */
+    @Schema(description = "状态 0下架 1上架")
+    private Integer status;
+
+
+    /**
+     * 分类ID
+     */
+    @Schema(description = "分类ID")
+    private String colId;
+
+
+    /**
+     * 限购数量
+     */
+    @Schema(description = "限购数量")
+    private Integer limitCount;
+
+
+    /**
+     * 起购数量
+     */
+    @Schema(description = "起购数量")
+    private Integer startByCount;
+
+    /**
+     * 排序
+     */
+    @Schema(description = "排序")
+    private Integer sort;
+
+
+    /**
+     * 商品类型 0实物商品 1虚拟物品
+     */
+    @Schema(description = "商品类型 0实物商品 1虚拟物品")
+    private Integer goodsType;
+
+}

+ 12 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/shopGood/SysShopGoodsPageDTO.java

@@ -0,0 +1,12 @@
+package com.kxs.product.api.dto.admin.shopGood;
+
+import lombok.Data;
+
+/**
+ * 商品搜索参数
+ * @author debao.yang
+ * @createTime 2024-07-09 13:47
+ */
+@Data
+public class SysShopGoodsPageDTO {
+}

+ 36 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/shopGood/UpShelfDTO.java

@@ -0,0 +1,36 @@
+package com.kxs.product.api.dto.admin.shopGood;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+
+/**
+ * 商城管理-商品上架-dto
+ *
+ * @author 系统
+ * @date 2024-07-09 11:54:33
+ */
+@Data
+public class UpShelfDTO {
+
+    /**
+     * 主键ID
+     */
+    @Schema(description = "主键ID")
+    private Integer id;
+
+
+    /**
+     * 上架时间
+     */
+    @Schema(description = "上架时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime upTime;
+
+
+
+
+}

+ 85 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/ticket/SysTicketPageDTO.java

@@ -0,0 +1,85 @@
+package com.kxs.product.api.dto.admin.ticket;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.util.List;
+
+
+/**
+ * 仓库管理-机具卷管理列表-dto
+ *
+ * @author 系统
+ * @date 2024-07-03 13:51:27
+ */
+@Data
+public class SysTicketPageDTO {
+
+    /**
+     * 券码
+     */
+    @Schema(description = "券码")
+    private String ticketCode;
+
+
+    /**
+     * 券码类型 0电签 1大pos
+     */
+    @Schema(description = "券码类型 0电签 1大pos")
+    private Integer ticketType;
+
+
+    /**
+     * 状态 0未使用 1已使用 2已申请冻结
+     */
+    @Schema(description = "状态 0未使用 1已使用 2已申请冻结")
+    private Integer status;
+
+
+    /**
+     * 运营中心编号
+     */
+    @Schema(description = "运营中心编号")
+    private String partnerNo;
+
+
+    /**
+     * 创客编号
+     */
+    @Schema(description = "创客编号")
+    private String userCode;
+
+
+    /**
+     * 盟主创客编号
+     */
+    @Schema(description = "盟主创客编号")
+    private String leaderNo;
+
+
+    /**
+     * 兑换时间['','']
+     */
+    @Schema(description = "兑换时间['','']")
+    private String[] exchangeTime;
+
+
+    /**
+     * 创客id集合
+     */
+    private List<Integer> userIds;
+
+    /**
+     * 合伙人id集合
+     */
+    private List<Integer> partnerIds;
+
+    /**
+     * 盟主id集合
+     */
+    private List<Integer> leaderIds;
+
+
+
+
+}

+ 53 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/dto/admin/ticketTransfer/SysTicketTransferPageDTO.java

@@ -0,0 +1,53 @@
+package com.kxs.product.api.dto.admin.ticketTransfer;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+
+/**
+ * 仓库管理-机具卷划拨记录列表-dto
+ *
+ * @author 系统
+ * @date 2024-07-03 13:51:27
+ */
+@Data
+public class SysTicketTransferPageDTO {
+
+    /**
+     * 拨入用户姓名
+     */
+    @Schema(description = "拨入用户姓名")
+    private String toUserName;
+
+
+    /**
+     * 拨入用户编码
+     */
+    @Schema(description = "拨入用户编码")
+    private String toUserCode;
+
+
+    /**
+     * 拨出用户姓名
+     */
+    @Schema(description = "拨出用户姓名")
+    private String sendUserName;
+
+
+    /**
+     * 拨出用户编码
+     */
+    @Schema(description = "拨出用户编码")
+    private String sendUserCode;
+
+
+    /**
+     * 机具卷码
+     */
+    @Schema(description = "机具卷码")
+    private String ticketCode;
+
+
+
+
+}

+ 46 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/vo/admin/machine/SysMachinePageVO.java

@@ -0,0 +1,46 @@
+package com.kxs.product.api.vo.admin.machine;
+
+
+import com.kxs.product.api.model.KxsMachine;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * 仓库管理-机具管理列表vo
+ *
+ * @author 系统
+ * @date 2024-07-02 18:04:10
+ */
+@Data
+@Schema(description = "仓库管理-机具管理列表返回实体")
+public class SysMachinePageVO extends KxsMachine implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 1L;
+
+
+    /**
+     * 仓库信息
+     */
+    @Schema(description = "仓库信息")
+    private Object warehouse;
+
+
+    /**
+     * 产品类型
+     */
+    @Schema(description = "产品类型")
+    private Object deviceType;
+
+
+
+
+
+	
+
+}

+ 34 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/vo/admin/merchant/SysMerchantPageVO.java

@@ -0,0 +1,34 @@
+package com.kxs.product.api.vo.admin.merchant;
+
+
+import com.kxs.product.api.model.KxsMerchant;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+/**
+ * 商户管理-商户列表vo
+ *
+ * @author 系统
+ * @date 2024-07-05 10:27:36
+ */
+@Data
+@Schema(description = "商户管理-商户列表返回实体")
+public class SysMerchantPageVO extends KxsMerchant implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 1L;
+
+
+    /**
+     * 机具编号
+     */
+    @Schema(description = "机具编号")
+    private String posSn;
+
+
+	
+
+}

+ 45 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/vo/admin/order/SysSoOrderDetailVO.java

@@ -0,0 +1,45 @@
+package com.kxs.product.api.vo.admin.order;
+
+
+import com.kxs.product.api.model.KxsShopGoods;
+import com.kxs.product.api.model.KxsShopOrderInfo;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+/**
+ * 商城订单-详情vo
+ *
+ * @author 系统
+ * @date 2024-06-26 17:09:22
+ */
+@Data
+@Schema(description = "商城订单-详情返回实体")
+public class SysSoOrderDetailVO implements Serializable {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+
+    /**
+     * 订单详情
+     */
+    @Schema(description = "订单详情")
+    private KxsShopOrderInfo orderInfo;
+
+
+    /**
+     * 订单商品详情
+     */
+    @Schema(description = "订单商品详情")
+    private KxsShopGoods orderProductInfo;
+
+
+
+
+
+	
+
+}

+ 59 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/vo/admin/order/SysSoPageVO.java

@@ -0,0 +1,59 @@
+package com.kxs.product.api.vo.admin.order;
+
+
+import com.kxs.product.api.model.KxsShopOrder;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+/**
+ * 商城订单-列表vo
+ *
+ * @author 系统
+ * @date 2024-06-26 17:09:22
+ */
+@Data
+@Schema(description = "商城订单-列表返回实体")
+public class SysSoPageVO extends KxsShopOrder implements Serializable {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+
+
+    /**
+     * 创客名称
+     */
+    @Schema(description = "创客名称")
+    private Object username;
+
+
+    /**
+     * 创客编号
+     */
+    @Schema(description = "创客编号")
+    private Object userCode;
+
+
+    /**
+     * 顶级创客名称
+     */
+    @Schema(description = "顶级创客名称")
+    private Object topUsername;
+
+
+    /**
+     * 顶级创客编号
+     */
+    @Schema(description = "顶级创客编号")
+    private Object topUserCode;
+
+
+
+
+
+	
+
+}

+ 28 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/vo/admin/shopGoods/SysShopGoodsPageVO.java

@@ -0,0 +1,28 @@
+package com.kxs.product.api.vo.admin.shopGoods;
+
+
+import com.kxs.product.api.model.KxsShopGoods;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+/**
+ * 商城管理-商品列表vo
+ *
+ * @author 系统
+ * @date 2024-07-09 11:54:33
+ */
+@Data
+@Schema(description = "商城管理-商品列表返回实体")
+public class SysShopGoodsPageVO extends KxsShopGoods implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = 1L;
+
+
+
+	
+
+}

+ 19 - 0
kxs-product/kxs-product-api/src/main/java/com/kxs/product/api/vo/admin/ticketTransfer/SysTicketTransferPageVO.java

@@ -0,0 +1,19 @@
+package com.kxs.product.api.vo.admin.ticketTransfer;
+
+import com.kxs.product.api.model.KxsTicketTransfer;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author debao.yang
+ * @createTime 2024-07-03 16:53
+ */
+@Data
+public class SysTicketTransferPageVO extends KxsTicketTransfer {
+
+    /**
+     * 机具卷码集合
+     */
+    private String ticketCodes;
+}

+ 29 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/constant/enums/GoodsStatusEnum.java

@@ -0,0 +1,29 @@
+package com.kxs.product.biz.constant.enums;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * 商品状态
+ * @author debao.yang
+ * @createTime 2024-07-09 14:55
+ */
+@Getter
+@AllArgsConstructor
+public enum GoodsStatusEnum {
+
+
+    UP_SHELF(1,"上架"),
+    DOWN_SHELF(0,"下架");
+
+
+    /**
+     * 类型
+     */
+    private final Integer type;
+
+    /**
+     * 描述
+     */
+    private final String description;
+}

+ 49 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/controller/admin/SysMachineController.java

@@ -0,0 +1,49 @@
+package com.kxs.product.biz.controller.admin;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.common.core.util.R;
+import com.kxs.product.api.dto.admin.machine.SysMachinePageDTO;
+import com.kxs.product.api.vo.admin.machine.SysMachinePageVO;
+import com.kxs.product.biz.service.KxsMachineService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 机具管理(SysMachine)控制层
+ *
+ * @author 系统
+ * @since 2024-07-02 18:04:10
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("sysMachine")
+public class SysMachineController {
+
+    /**
+     * 服务对象
+     */
+    private final KxsMachineService kxsMachineService;
+
+
+
+    /**
+     * 仓库管理-机具管理列表
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 仓库管理-机具管理列表
+     */
+    @GetMapping("/page")
+    public R machinePage(Page<SysMachinePageVO> page, SysMachinePageDTO param) {
+        kxsMachineService.machinePage(page, param);
+        return R.ok(page);
+    }
+
+
+
+
+
+}
+

+ 49 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/controller/admin/SysMachineTrackController.java

@@ -0,0 +1,49 @@
+package com.kxs.product.biz.controller.admin;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.common.core.util.R;
+import com.kxs.product.api.dto.admin.machineTrack.SysMachineTrackPageDTO;
+import com.kxs.product.api.model.KxsMachineTrack;
+import com.kxs.product.biz.service.KxsMachineTrackService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * sn轨迹变动明细(SysMachineTrack)控制层
+ *
+ * @author 系统
+ * @since 2024-07-02 18:04:10
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("sysMachineTrack")
+public class SysMachineTrackController {
+
+    /**
+     * 服务对象
+     */
+    private final KxsMachineTrackService kxsMachineTrackService;
+
+
+
+    /**
+     * 仓库管理-SN轨迹变动明细信息
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 仓库管理-SN轨迹变动明细信息
+     */
+    @GetMapping("/page")
+    public R machineTrackPage(Page<KxsMachineTrack> page, SysMachineTrackPageDTO param) {
+        kxsMachineTrackService.machineTrackPage(page, param);
+        return R.ok(page);
+    }
+
+
+
+
+
+}
+

+ 81 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/controller/admin/SysMerchantController.java

@@ -0,0 +1,81 @@
+package com.kxs.product.biz.controller.admin;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.common.core.util.R;
+import com.kxs.common.log.annotation.SysLog;
+import com.kxs.product.api.dto.admin.merchant.SysMerchantPageDTO;
+import com.kxs.product.api.dto.admin.merchant.SysMerchantUpdateDTO;
+import com.kxs.product.api.vo.admin.merchant.SysMerchantPageVO;
+import com.kxs.product.biz.service.KxsMerchantService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 商户列表(SysMerchant)控制层
+ *
+ * @author 系统
+ * @since 2024-07-05 10:27:37
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("sysMerchant")
+public class SysMerchantController {
+
+    /**
+     * 服务对象
+     */
+    private final KxsMerchantService kxsMerchantService;
+
+
+
+    /**
+     * 商户管理-商户列表
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 商户管理-商户列表
+     */
+    @GetMapping("/page")
+    public R page(Page<SysMerchantPageVO> page, SysMerchantPageDTO param) {
+        kxsMerchantService.merchantPage(page, param);
+        return R.ok(page);
+    }
+
+
+    /**
+     * 商户管理-补全商户信息
+     *
+     * @param param 实体对象
+     * @return 商户管理-补全商户信息
+     */
+    @SysLog("补全商户信息")
+    @PutMapping("/merchantUpdate")
+    public R merchantUpdate(@RequestBody SysMerchantUpdateDTO param) {
+        kxsMerchantService.merchantUpdate(param);
+        return R.ok();
+    }
+
+
+    /**
+     * 商户管理-详情查询
+     *
+     * @param id 主键ID
+     * @return 商户管理-详情查询
+     */
+    @GetMapping("/merchantDetail")
+    public R getMerchantDetail(@RequestParam("id") Integer id) {
+        return R.ok(kxsMerchantService.getMerchantDetail(id));
+    }
+
+
+
+
+
+}
+

+ 113 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/controller/admin/SysShopGoodsController.java

@@ -0,0 +1,113 @@
+package com.kxs.product.biz.controller.admin;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.common.core.util.R;
+import com.kxs.common.log.annotation.SysLog;
+import com.kxs.product.api.dto.admin.shopGood.DownShelfDTO;
+import com.kxs.product.api.dto.admin.shopGood.SysShopGoodsAddDTO;
+import com.kxs.product.api.dto.admin.shopGood.SysShopGoodsPageDTO;
+import com.kxs.product.api.dto.admin.shopGood.UpShelfDTO;
+import com.kxs.product.api.vo.admin.shopGoods.SysShopGoodsPageVO;
+import com.kxs.product.biz.service.KxsShopGoodsService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 商城管理(SysShopGood)控制层
+ *
+ * @author 系统
+ * @since 2024-07-09 11:54:33
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("sysShopGoods")
+public class SysShopGoodsController {
+
+    /**
+     * 服务对象
+     */
+    private final KxsShopGoodsService kxsShopGoodsService;
+
+
+
+    /**
+     * 商城管理-商品列表
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 商城管理-商品列表
+     */
+    @GetMapping("/page")
+    public R page(Page<SysShopGoodsPageVO> page, SysShopGoodsPageDTO param) {
+        kxsShopGoodsService.shopGoodsPage(page, param);
+        return R.ok(page);
+    }
+
+
+    /**
+     * 商城管理-商品新增
+     *
+     * @param param 实体对象
+     * @return 商城管理-商品新增
+     */
+    @SysLog("商品新增")
+    @PostMapping("/add")
+    public R shopGoodAdd(@RequestBody SysShopGoodsAddDTO param) {
+        kxsShopGoodsService.shopGoodsAdd(param);
+        return R.ok();
+    }
+
+
+    /**
+     * 商城管理-商品上架
+     *
+     * @param param 实体对象
+     * @return 商城管理-商品上架
+     */
+    @SysLog("商品上架")
+    @PutMapping("/upShelf")
+    public R upShelf(@RequestBody UpShelfDTO param) {
+        kxsShopGoodsService.upShelf(param);
+        return R.ok();
+    }
+
+
+    /**
+     * 商城管理-商品下架
+     *
+     * @param param 实体对象
+     * @return 商城管理-商品下架
+     */
+    @SysLog("商品下架")
+    @PutMapping("/downShelf")
+    public R downShelf(@RequestBody DownShelfDTO param) {
+        kxsShopGoodsService.downShelf(param);
+        return R.ok();
+    }
+
+
+    /**
+     * 商城管理-商品详情
+     *
+     * @param id 主键ID
+     * @return 商城管理-商品详情
+     */
+    @GetMapping("/shopGoodsDetail")
+    public R shopGoodsDetail(@RequestParam("id") Integer id) {
+        return R.ok(kxsShopGoodsService.getByGoodsDetail(id));
+    }
+
+
+
+
+
+
+}
+

+ 63 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/controller/admin/SysShopOrderController.java

@@ -0,0 +1,63 @@
+package com.kxs.product.biz.controller.admin;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.common.core.util.R;
+import com.kxs.product.api.dto.admin.order.SysSoPageDTO;
+import com.kxs.product.api.vo.admin.order.SysSoPageVO;
+import com.kxs.product.biz.service.KxsShopOrderService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 商城订单(SysSo)控制层
+ *
+ * @author 系统
+ * @since 2024-06-26 17:09:22
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("sysShopOrder")
+public class SysShopOrderController {
+
+    /**
+     * 服务对象
+     */
+    private final KxsShopOrderService kxsShopOrderService;
+
+
+
+    /**
+     * 商城订单-列表
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 商城订单-列表
+     */
+    @GetMapping("/page")
+    public R page(Page<SysSoPageVO> page, SysSoPageDTO param) {
+        kxsShopOrderService.shopOrderPage(page, param);
+        return R.ok(page);
+    }
+
+
+    /**
+     * 商城订单-详情
+     *
+     * @param id 主键ID
+     * @return 商城订单-详情
+     */
+    @GetMapping("/orderDetail")
+    public R orderDetail(@RequestParam("id") Integer id) {
+        return R.ok(kxsShopOrderService.getOrderDetailById(id));
+    }
+
+
+
+
+
+}
+

+ 49 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/controller/admin/SysTicketController.java

@@ -0,0 +1,49 @@
+package com.kxs.product.biz.controller.admin;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.common.core.util.R;
+import com.kxs.product.api.dto.admin.ticket.SysTicketPageDTO;
+import com.kxs.product.api.model.KxsTicket;
+import com.kxs.product.biz.service.KxsTicketService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 机具卷管理(SysTicket)控制层
+ *
+ * @author 系统
+ * @since 2024-07-02 18:04:10
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("sysTicket")
+public class SysTicketController {
+
+    /**
+     * 服务对象
+     */
+    private final KxsTicketService kxsTicketService;
+
+
+
+    /**
+     * 仓库管理-机具卷管理列表
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 仓库管理-机具卷管理列表
+     */
+    @GetMapping("/page")
+    public R ticketPage(Page<KxsTicket> page, SysTicketPageDTO param) {
+        kxsTicketService.ticketPage(page, param);
+        return R.ok(page);
+    }
+
+
+
+
+
+}
+

+ 49 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/controller/admin/SysTicketTransferController.java

@@ -0,0 +1,49 @@
+package com.kxs.product.biz.controller.admin;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.common.core.util.R;
+import com.kxs.product.api.dto.admin.ticketTransfer.SysTicketTransferPageDTO;
+import com.kxs.product.api.vo.admin.ticketTransfer.SysTicketTransferPageVO;
+import com.kxs.product.biz.service.KxsTicketTransferService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 机具卷划拨记录(SysTicketTransfer)控制层
+ *
+ * @author 系统
+ * @since 2024-07-02 18:04:10
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("sysTicketTransfer")
+public class SysTicketTransferController {
+
+    /**
+     * 服务对象
+     */
+    private final KxsTicketTransferService kxsTicketTransferService;
+
+
+
+    /**
+     * 仓库管理-机具卷划拨记录列表
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 仓库管理-机具卷划拨记录列表
+     */
+    @GetMapping("/page")
+    public R ticketTransferPage(Page<SysTicketTransferPageVO> page, SysTicketTransferPageDTO param) {
+        kxsTicketTransferService.ticketTransferPage(page, param);
+        return R.ok(page);
+    }
+
+
+
+
+
+}
+

+ 11 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/mapper/KxsMachineMapper.java

@@ -3,11 +3,13 @@ package com.kxs.product.biz.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.product.api.dto.admin.machine.SysMachinePageDTO;
 import com.kxs.product.api.dto.kxsapp.GetActivityMachineByIdAndTimeDTO;
 import com.kxs.product.api.dto.kxsapp.machine.*;
 import com.kxs.product.api.dto.kxsapp.merchant.MerchantListDTO;
 import com.kxs.product.api.model.KxsMachine;
 import com.kxs.product.api.model.KxsMerchant;
+import com.kxs.product.api.vo.admin.machine.SysMachinePageVO;
 import com.kxs.product.api.vo.kxsapp.machine.*;
 import com.kxs.product.api.vo.kxsapp.merchant.MerchantListVO;
 import com.kxs.stat.api.dto.statUser.GetActivityStatByIdAndTimeDTO;
@@ -124,5 +126,14 @@ public interface KxsMachineMapper extends BaseMapper<KxsMachine> {
      */
     Integer getActivityMachineByIdAndTime(@Param("param")GetActivityMachineByIdAndTimeDTO param,@Param("brandId") Long brandId);
 
+
+
+    /**
+     * 后台分页查询机具
+     * @param page
+     * @param param
+     * @return
+     */
+    List<SysMachinePageVO> machinePage(Page page,@Param("query") SysMachinePageDTO param);
 }
 

+ 12 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/mapper/KxsMachineTrackMapper.java

@@ -1,8 +1,13 @@
 package com.kxs.product.biz.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.product.api.dto.admin.machineTrack.SysMachineTrackPageDTO;
 import com.kxs.product.api.model.KxsMachineTrack;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * 客小爽机具轨迹记录表(KxsMachineTrack)表数据库访问层
@@ -13,5 +18,12 @@ import org.apache.ibatis.annotations.Mapper;
 @Mapper
 public interface KxsMachineTrackMapper extends BaseMapper<KxsMachineTrack> {
 
+    /**
+     * 机具轨迹记录表分页查询
+     * @param page
+     * @param param
+     * @return
+     */
+    List<KxsMachineTrack> machineTrackPage(Page page,@Param("query") SysMachineTrackPageDTO param);
 }
 

+ 13 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/mapper/KxsMerchantMapper.java

@@ -2,13 +2,17 @@ package com.kxs.product.biz.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.product.api.dto.admin.merchant.SysMerchantPageDTO;
 import com.kxs.product.api.dto.kxsapp.merchant.MerchantListDTO;
 import com.kxs.product.api.model.KxsMerchant;
+import com.kxs.product.api.vo.admin.merchant.SysMerchantPageVO;
 import com.kxs.product.api.vo.kxsapp.merchant.MerchantListVO;
 import com.kxs.product.api.vo.kxsapp.merchant.MerchantTotalVO;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 /**
  * 客小爽商户表(KxsMerchant)表数据库访问层
  *
@@ -34,5 +38,14 @@ public interface KxsMerchantMapper extends BaseMapper<KxsMerchant> {
      * @return 汇总数据激活等
      */
     MerchantTotalVO merchantTotal(@Param("brandId") Integer brandId, @Param("userId") Long userId);
+
+
+    /**
+     * 商户分页查询
+     * @param page
+     * @param param
+     * @return
+     */
+    List<SysMerchantPageVO> merchantPage(Page page,@Param("query") SysMerchantPageDTO param);
 }
 

+ 13 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/mapper/KxsShopGoodsMapper.java

@@ -3,11 +3,15 @@ package com.kxs.product.biz.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.product.api.dto.admin.shopGood.SysShopGoodsPageDTO;
 import com.kxs.product.api.model.KxsShopGoods;
+import com.kxs.product.api.vo.admin.shopGoods.SysShopGoodsPageVO;
 import com.kxs.product.api.vo.kxsapp.shop.ShopGoodsListVO;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 /**
  * 商城商品表(KxsShopGoods)表数据库访问层
  *
@@ -25,5 +29,14 @@ public interface KxsShopGoodsMapper extends BaseMapper<KxsShopGoods> {
      * @return {@link IPage}<{@link ShopGoodsListVO}>
      */
     IPage<ShopGoodsListVO> getByPage(Page<ShopGoodsListVO> page, @Param("colId") Integer colId);
+
+
+    /**
+     * 分页查询商品列表
+     * @param page
+     * @param param
+     * @return
+     */
+    List<SysShopGoodsPageVO> shopGoodsPage(Page page, @Param("query") SysShopGoodsPageDTO param);
 }
 

+ 11 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/mapper/KxsShopOrderMapper.java

@@ -1,7 +1,10 @@
 package com.kxs.product.biz.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.product.api.dto.admin.order.SysSoPageDTO;
 import com.kxs.product.api.model.KxsShopOrder;
+import com.kxs.product.api.vo.admin.order.SysSoPageVO;
 import com.kxs.product.api.vo.kxsapp.shop.ShopOrderGoodsUserVO;
 import com.kxs.product.api.vo.kxsapp.shop.ShopOrderListVO;
 import org.apache.ibatis.annotations.Mapper;
@@ -45,5 +48,13 @@ public interface KxsShopOrderMapper extends BaseMapper<KxsShopOrder> {
      * @return {@link List}<{@link KxsShopOrder}>
      */
     List<KxsShopOrder> verifyUserTicketCountAndShopAndAct(@Param("userId") Long userId, @Param("shopIds")List<Long> shopIds);
+
+    /**
+     * 订单分页查询
+     * @param page
+     * @param sysSoPageDTO
+     * @return
+     */
+    List<SysSoPageVO> shopOrderPage(Page page,  @Param("query") SysSoPageDTO sysSoPageDTO);
 }
 

+ 8 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/mapper/KxsTicketMapper.java

@@ -3,6 +3,7 @@ package com.kxs.product.biz.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.product.api.dto.admin.ticket.SysTicketPageDTO;
 import com.kxs.product.api.model.KxsTicket;
 import com.kxs.product.api.vo.kxsapp.ticket.TicketListVO;
 import org.apache.ibatis.annotations.Mapper;
@@ -38,5 +39,12 @@ public interface KxsTicketMapper extends BaseMapper<KxsTicket> {
     void updateBatchTransfer(@Param("ticketCodes") List<String> ticketCodes, @Param("userId") Integer userId);
 
 
+    /**
+     * 兑换券分页查询
+     * @param page
+     * @param param
+     * @return
+     */
+    List<KxsTicket> ticketPage(Page<KxsTicket> page,@Param("query") SysTicketPageDTO param);
 }
 

+ 12 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/mapper/KxsTicketTransferMapper.java

@@ -3,13 +3,17 @@ package com.kxs.product.biz.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.product.api.dto.admin.ticketTransfer.SysTicketTransferPageDTO;
 import com.kxs.product.api.dto.kxsapp.ticket.TicketTransferQuery;
 import com.kxs.product.api.model.KxsTicketTransfer;
+import com.kxs.product.api.vo.admin.ticketTransfer.SysTicketTransferPageVO;
 import com.kxs.product.api.vo.kxsapp.ticket.TicketTransferDetailVO;
 import com.kxs.product.api.vo.kxsapp.ticket.TicketTransferListVO;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 /**
  * 客小爽券码划拨记录表(KxsTicketTransfer)表数据库访问层
  *
@@ -29,5 +33,13 @@ public interface KxsTicketTransferMapper extends BaseMapper<KxsTicketTransfer> {
     IPage<TicketTransferListVO> getByPage(Page<TicketTransferListVO> page, @Param("query") TicketTransferQuery ticketTransferQuery);
 
 
+    /**
+     * 券码划拨记录表分页
+     * @param page
+     * @param param
+     * @return
+     */
+    List<SysTicketTransferPageVO> ticketTransferPage(Page page, @Param("query") SysTicketTransferPageDTO param);
+
 }
 

+ 11 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsMachineService.java

@@ -4,9 +4,11 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.kxs.common.core.util.R;
+import com.kxs.product.api.dto.admin.machine.SysMachinePageDTO;
 import com.kxs.product.api.dto.kxsapp.GetActivityMachineByIdAndTimeDTO;
 import com.kxs.product.api.dto.kxsapp.machine.*;
 import com.kxs.product.api.model.KxsMachine;
+import com.kxs.product.api.vo.admin.machine.SysMachinePageVO;
 import com.kxs.product.api.vo.kxsapp.machine.*;
 import com.kxs.stat.api.vo.GetActivityStatByIdAndTimeVO;
 
@@ -154,5 +156,14 @@ public interface KxsMachineService extends IService<KxsMachine> {
     List<String> loadByPrePosBind30minute();
 
 
+
+    /**
+     * 机具后台分页查询
+     * @param page
+     * @param param
+     * @return
+     */
+    List<SysMachinePageVO> machinePage(Page page, SysMachinePageDTO param );
+
 }
 

+ 11 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsMachineTrackService.java

@@ -1,8 +1,12 @@
 package com.kxs.product.biz.service;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.kxs.product.api.dto.admin.machineTrack.SysMachineTrackPageDTO;
 import com.kxs.product.api.model.KxsMachineTrack;
 
+import java.util.List;
+
 /**
  * 客小爽机具轨迹记录表(KxsMachineTrack)表服务接口
  *
@@ -11,5 +15,12 @@ import com.kxs.product.api.model.KxsMachineTrack;
  */
 public interface KxsMachineTrackService extends IService<KxsMachineTrack> {
 
+    /**
+     * 机具轨迹记录表分页
+     * @param page
+     * @param param
+     * @return
+     */
+    List<KxsMachineTrack> machineTrackPage(Page page, SysMachineTrackPageDTO param);
 }
 

+ 28 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsMerchantService.java

@@ -3,12 +3,17 @@ package com.kxs.product.biz.service;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.kxs.common.core.util.R;
+import com.kxs.product.api.dto.admin.merchant.SysMerchantPageDTO;
+import com.kxs.product.api.dto.admin.merchant.SysMerchantUpdateDTO;
 import com.kxs.product.api.dto.kxsapp.merchant.MachineRatioDTO;
 import com.kxs.product.api.dto.kxsapp.merchant.MerchantListDTO;
 import com.kxs.product.api.dto.kxsapp.merchant.ToMerchantMakerDTO;
 import com.kxs.product.api.model.KxsMerchant;
+import com.kxs.product.api.vo.admin.merchant.SysMerchantPageVO;
 import com.kxs.product.api.vo.kxsapp.merchant.MerchantListVO;
 
+import java.util.List;
+
 /**
  * 客小爽商户表(KxsMerchant)表服务接口
  *
@@ -62,5 +67,28 @@ public interface KxsMerchantService extends IService<KxsMerchant> {
      * @return {@link R}
      */
     R changeMachineRatio(MachineRatioDTO param);
+
+
+    /**
+     * 分页查询商户列表
+     * @param page
+     * @param param
+     * @return
+     */
+    List<SysMerchantPageVO> merchantPage(Page page, SysMerchantPageDTO param);
+
+    /**
+     * 更新商户信息
+     * @param sysMerchantUpdateDTO
+     */
+    void merchantUpdate(SysMerchantUpdateDTO sysMerchantUpdateDTO);
+
+
+    /**
+     * 通过id查询商户
+     * @param id
+     * @return
+     */
+    SysMerchantPageVO getMerchantDetail(Integer id);
 }
 

+ 36 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsShopGoodsService.java

@@ -3,10 +3,17 @@ package com.kxs.product.biz.service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.kxs.product.api.dto.admin.shopGood.DownShelfDTO;
+import com.kxs.product.api.dto.admin.shopGood.SysShopGoodsAddDTO;
+import com.kxs.product.api.dto.admin.shopGood.SysShopGoodsPageDTO;
+import com.kxs.product.api.dto.admin.shopGood.UpShelfDTO;
 import com.kxs.product.api.model.KxsShopGoods;
+import com.kxs.product.api.vo.admin.shopGoods.SysShopGoodsPageVO;
 import com.kxs.product.api.vo.kxsapp.shop.ShopGoodsDetailVO;
 import com.kxs.product.api.vo.kxsapp.shop.ShopGoodsListVO;
 
+import java.util.List;
+
 /**
  * 商城商品表(KxsShopGoods)表服务接口
  *
@@ -31,5 +38,34 @@ public interface KxsShopGoodsService extends IService<KxsShopGoods> {
      * @return {@link ShopGoodsDetailVO}
      */
     ShopGoodsDetailVO getByGoodsDetail(Integer id);
+
+
+    /**
+     * 商品分页查询
+     * @param page
+     * @param param
+     * @return
+     */
+    List<SysShopGoodsPageVO> shopGoodsPage(Page page, SysShopGoodsPageDTO param);
+
+
+    /**
+     * 商品新增
+     * @param param
+     */
+    void shopGoodsAdd(SysShopGoodsAddDTO param);
+
+
+    /**
+     * 商品上架
+     * @param upShelfDTO
+     */
+    void upShelf(UpShelfDTO upShelfDTO);
+
+    /**
+     * 商品
+     * @param downShelfDTO
+     */
+    void downShelf(DownShelfDTO downShelfDTO);
 }
 

+ 19 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsShopOrderService.java

@@ -4,9 +4,12 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.kxs.common.core.util.R;
+import com.kxs.product.api.dto.admin.order.SysSoPageDTO;
 import com.kxs.product.api.dto.kxsapp.shop.PayOrderDTO;
 import com.kxs.product.api.model.KxsShopOrder;
 import com.kxs.product.api.dto.kxsapp.shop.GoodsSubmitDTO;
+import com.kxs.product.api.vo.admin.order.SysSoOrderDetailVO;
+import com.kxs.product.api.vo.admin.order.SysSoPageVO;
 import com.kxs.product.api.vo.kxsapp.shop.ShopOrderCountVO;
 import com.kxs.product.api.vo.kxsapp.shop.ShopOrderDetailVO;
 import com.kxs.product.api.vo.kxsapp.shop.ShopOrderGoodsUserVO;
@@ -107,5 +110,21 @@ public interface KxsShopOrderService extends IService<KxsShopOrder> {
      * @param order 次序
      */
     void changeTimeoutOrder(KxsShopOrder order);
+
+    /**
+     * 商城订单分页查询
+     * @param page
+     * @param sysSoPageDTO
+     * @return
+     */
+    List<SysSoPageVO> shopOrderPage(Page page, SysSoPageDTO sysSoPageDTO);
+
+
+    /**
+     * 通过订单id查询订单详情信息
+     * @param orderId
+     * @return
+     */
+    SysSoOrderDetailVO getOrderDetailById(Integer orderId);
 }
 

+ 11 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsTicketService.java

@@ -4,9 +4,12 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.kxs.common.core.util.R;
+import com.kxs.product.api.dto.admin.ticket.SysTicketPageDTO;
 import com.kxs.product.api.model.KxsTicket;
 import com.kxs.product.api.vo.kxsapp.ticket.TicketListVO;
 
+import java.util.List;
+
 /**
  * 客小爽券码表(KxsTicket)表服务接口
  *
@@ -46,5 +49,13 @@ public interface KxsTicketService extends IService<KxsTicket> {
      * @param number 购买数量
      */
     Boolean userBuyTicket(Long userId, Integer ticketType, Integer orderId, Integer number);
+
+    /**
+     * 机具卷分页查询
+     * @param page
+     * @param param
+     * @return
+     */
+    List<KxsTicket> ticketPage(Page<KxsTicket> page, SysTicketPageDTO param);
 }
 

+ 12 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/KxsTicketTransferService.java

@@ -4,12 +4,16 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.kxs.common.core.util.R;
+import com.kxs.product.api.dto.admin.ticketTransfer.SysTicketTransferPageDTO;
 import com.kxs.product.api.dto.kxsapp.ticket.TicketTransferDTO;
 import com.kxs.product.api.dto.kxsapp.ticket.TicketTransferQuery;
 import com.kxs.product.api.model.KxsTicketTransfer;
+import com.kxs.product.api.vo.admin.ticketTransfer.SysTicketTransferPageVO;
 import com.kxs.product.api.vo.kxsapp.ticket.TicketTransferDetailVO;
 import com.kxs.product.api.vo.kxsapp.ticket.TicketTransferListVO;
 
+import java.util.List;
+
 /**
  * 客小爽券码划拨记录表(KxsTicketTransfer)表服务接口
  *
@@ -42,5 +46,13 @@ public interface KxsTicketTransferService extends IService<KxsTicketTransfer> {
      * @return {@link TicketTransferDetailVO}
      */
     TicketTransferDetailVO getByData(Integer id);
+
+    /**
+     * 机具卷划拨记录分页
+     * @param page
+     * @param param
+     * @return
+     */
+    List<SysTicketTransferPageVO> ticketTransferPage(Page page, SysTicketTransferPageDTO param);
 }
 

+ 87 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsMachineServiceImpl.java

@@ -1,10 +1,12 @@
 package com.kxs.product.biz.service.impl;
 
+import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.date.DatePattern;
 import cn.hutool.core.date.LocalDateTimeUtil;
 import cn.hutool.crypto.symmetric.AES;
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -15,11 +17,13 @@ import com.kxs.common.core.exception.GlobalCustomerException;
 import com.kxs.common.core.util.R;
 import com.kxs.common.core.util.RetOps;
 import com.kxs.common.security.util.SecurityUtils;
+import com.kxs.product.api.dto.admin.machine.SysMachinePageDTO;
 import com.kxs.product.api.dto.kxsapp.GetActivityMachineByIdAndTimeDTO;
 import com.kxs.product.api.dto.kxsapp.machine.*;
 import com.kxs.product.api.dto.kxsapp.merchant.MachineRatioDTO;
 import com.kxs.product.api.model.*;
 import com.kxs.product.api.req.kxs.DepositSetReq;
+import com.kxs.product.api.vo.admin.machine.SysMachinePageVO;
 import com.kxs.product.api.vo.kxsapp.machine.*;
 import com.kxs.common.core.constant.enums.MachineTypeEnum;
 import com.kxs.product.biz.constant.enums.ProductErrorTypeEnum;
@@ -27,9 +31,12 @@ import com.kxs.product.biz.mapper.*;
 import com.kxs.product.biz.service.KxsMachineService;
 import com.kxs.stat.api.dto.statUser.GetActivityStatByIdAndTimeDTO;
 import com.kxs.stat.api.vo.GetActivityStatByIdAndTimeVO;
+import com.kxs.store.api.dto.admin.machine.WarehouseSearchDTO;
 import com.kxs.store.api.feign.RemoteKxsStoreService;
+import com.kxs.store.api.feign.RemoteKxsWarehouseService;
 import com.kxs.system.api.feign.RemoteOldService;
 import com.kxs.system.api.vo.kxsapp.RecycleBrandListVO;
+import com.kxs.user.api.dto.admin.user.UserSearchDTO;
 import com.kxs.user.api.feign.RemoteKxsUserService;
 import com.kxs.user.api.model.KxsUser;
 import lombok.RequiredArgsConstructor;
@@ -74,6 +81,8 @@ public class KxsMachineServiceImpl extends ServiceImpl<KxsMachineMapper, KxsMach
 
     private final AES cryptoOldAes;
 
+    private final RemoteKxsWarehouseService remoteKxsWarehouseService;
+
     @Override
     public IPage<MachineStoreListVO> machineStoreList(Page<MachineStoreListVO> page, MachineStoreListDTO param) {
 
@@ -364,6 +373,84 @@ public class KxsMachineServiceImpl extends ServiceImpl<KxsMachineMapper, KxsMach
 
     }
 
+    @Override
+    public List<SysMachinePageVO> machinePage(Page page, SysMachinePageDTO param) {
+        //如果有用户名称或用户编号的搜索条件,先去查用户,再根据用户id搜索机具
+        String userCode = param.getUserCode();
+        String username = param.getUsername();
+        List<Integer> searchUserIds = param.getUserIds();
+        if(StringUtils.isNotBlank(userCode) || StringUtils.isNotBlank(username)){
+            UserSearchDTO userSearchDTO = new UserSearchDTO();
+            userSearchDTO.setUsername(username);
+            userSearchDTO.setUserCode(userCode);
+            List<Integer> userIds = getUserIdsSearch(userSearchDTO);
+            if(CollectionUtil.isNotEmpty(userIds)){
+                if(searchUserIds == null){
+                    searchUserIds = new ArrayList<>();
+                }
+                searchUserIds.addAll(userIds);
+            }else{
+                return new ArrayList<>();
+            }
+        }
+        //设置用户userIds
+        param.setUserIds(searchUserIds);
+
+        //如果有仓库编号或仓库所属人创客编号的搜索条件,先去查仓库信息,再根据仓库id搜索机具
+        String warehouseNo = param.getWarehouseNo();
+        String warehouseUserCode = param.getWarehouseUserCode();
+        List<Integer> searchWarehouseIds = param.getWarehouseIds();
+        if(StringUtils.isNotBlank(warehouseNo) || StringUtils.isNotBlank(warehouseUserCode)){
+            WarehouseSearchDTO warehouseSearchDTO = new WarehouseSearchDTO();
+            warehouseSearchDTO.setWarehouseNo(warehouseNo);
+            warehouseSearchDTO.setWarehouseUserCode(warehouseUserCode);
+            List<Integer> warehouseIds = getWarehouseIdsSearch(warehouseSearchDTO);
+            if(CollectionUtil.isNotEmpty(warehouseIds)){
+                if(searchWarehouseIds == null){
+                    searchWarehouseIds = new ArrayList<>();
+                }
+                searchWarehouseIds.addAll(warehouseIds);
+            }else{
+                return new ArrayList<>();
+            }
+        }
+        //设置仓库warehouseIds
+        param.setWarehouseIds(searchWarehouseIds);
+
+        List<SysMachinePageVO> list = baseMapper.machinePage(page, param);
+
+        if(page != null){
+            page.setRecords(list);
+        }
+        return list;
+    }
+
+    /**
+     * 通过条件获取用户id数据
+     * @return
+     */
+    private List<Integer> getUserIdsSearch(UserSearchDTO userSearchDTO){
+        R<List<Integer>> rList = remoteKxsUserService.searchUserList(userSearchDTO, SecurityConstants.FROM_IN);
+        if (rList.getStatus() != 1) {
+            throw new GlobalCustomerException("用户服务请求异常");
+        }else{
+            return rList.getData();
+        }
+    }
+
+    /**
+     * 通过条件获取用户id数据
+     * @return
+     */
+    private List<Integer> getWarehouseIdsSearch(WarehouseSearchDTO warehouseSearchDTO){
+        R<List<Integer>> rList = remoteKxsWarehouseService.searchWarehouseList(warehouseSearchDTO, SecurityConstants.FROM_IN);
+        if (rList.getStatus() != 1) {
+            throw new GlobalCustomerException("用户服务请求异常");
+        }else{
+            return rList.getData();
+        }
+    }
+
     @Override
     public List<String> loadByPrePosBind30minute() {
 

+ 12 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsMachineTrackServiceImpl.java

@@ -1,11 +1,15 @@
 package com.kxs.product.biz.service.impl;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.kxs.product.api.dto.admin.machineTrack.SysMachineTrackPageDTO;
 import com.kxs.product.biz.mapper.KxsMachineTrackMapper;
 import com.kxs.product.api.model.KxsMachineTrack;
 import com.kxs.product.biz.service.KxsMachineTrackService;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 /**
  * 客小爽机具轨迹记录表(KxsMachineTrack)表服务实现类
  *
@@ -15,5 +19,13 @@ import org.springframework.stereotype.Service;
 @Service("kxsMachineTrackService")
 public class KxsMachineTrackServiceImpl extends ServiceImpl<KxsMachineTrackMapper, KxsMachineTrack> implements KxsMachineTrackService {
 
+    @Override
+    public List<KxsMachineTrack> machineTrackPage(Page page, SysMachineTrackPageDTO param) {
+        List<KxsMachineTrack> list = baseMapper.machineTrackPage(page, param);
+        if(page != null){
+            page.setRecords(list);
+        }
+        return list;
+    }
 }
 

+ 45 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsMerchantServiceImpl.java

@@ -16,6 +16,8 @@ import com.kxs.common.core.exception.GlobalCustomerException;
 import com.kxs.common.core.util.AssertUtil;
 import com.kxs.common.core.util.R;
 import com.kxs.common.security.util.SecurityUtils;
+import com.kxs.product.api.dto.admin.merchant.SysMerchantPageDTO;
+import com.kxs.product.api.dto.admin.merchant.SysMerchantUpdateDTO;
 import com.kxs.product.api.dto.kxsapp.merchant.MachineRatioDTO;
 import com.kxs.product.api.dto.kxsapp.merchant.MerchantListDTO;
 import com.kxs.product.api.dto.kxsapp.merchant.ToMerchantMakerDTO;
@@ -24,12 +26,14 @@ import com.kxs.product.api.model.KxsMachine;
 import com.kxs.product.api.model.KxsMachineRatio;
 import com.kxs.product.api.model.KxsMerchant;
 import com.kxs.product.api.req.kxs.FeeSetReq;
+import com.kxs.product.api.vo.admin.merchant.SysMerchantPageVO;
 import com.kxs.product.api.vo.kxsapp.merchant.MerchantDetailVO;
 import com.kxs.product.biz.constant.enums.ProductErrorTypeEnum;
 import com.kxs.product.biz.mapper.KxsBrandMapper;
 import com.kxs.product.biz.mapper.KxsMachineMapper;
 import com.kxs.product.biz.mapper.KxsMachineRatioMapper;
 import com.kxs.product.biz.mapper.KxsMerchantMapper;
+import com.kxs.product.biz.service.KxsMachineService;
 import com.kxs.product.biz.service.KxsMerchantService;
 import com.kxs.stat.api.feign.RemoteKxsStatService;
 import com.kxs.system.api.feign.RemoteOldService;
@@ -44,6 +48,7 @@ import org.springframework.transaction.annotation.Transactional;
 import java.math.BigDecimal;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
+import java.util.List;
 import java.util.Optional;
 
 /**
@@ -62,6 +67,8 @@ public class KxsMerchantServiceImpl extends ServiceImpl<KxsMerchantMapper, KxsMe
     private final KxsMachineRatioMapper kxsMachineRatioMapper;
     private final RemoteOldService remoteOldService;
 
+    private final KxsMachineService kxsMachineService;
+
 
 
     @Override
@@ -339,6 +346,44 @@ public class KxsMerchantServiceImpl extends ServiceImpl<KxsMerchantMapper, KxsMe
         return R.ok();
     }
 
+    @Override
+    public List<SysMerchantPageVO> merchantPage(Page page, SysMerchantPageDTO param) {
+        List<SysMerchantPageVO> list = baseMapper.merchantPage(page, param);
+        if(page != null){
+            page.setRecords(list);
+        }
+        return list;
+    }
+
+    @Override
+    public void merchantUpdate(SysMerchantUpdateDTO param) {
+        Integer id = param.getId();
+        KxsMerchant kxsMerchant = getById(id);
+        if(kxsMerchant != null){
+            kxsMerchant.setMerchantNo(param.getMerchantNo());
+            kxsMerchant.setMerchantName(param.getMerchantName());
+            kxsMerchant.setMerchantCard(param.getMerchantCard());
+            kxsMerchant.setMerchantPhone(param.getMerchantPhone());
+            this.updateById(kxsMerchant);
+        }
+
+    }
+
+    @Override
+    public SysMerchantPageVO getMerchantDetail(Integer id) {
+        KxsMerchant kxsMerchant = this.getById(id);
+        SysMerchantPageVO sysMerchantPageVO = new SysMerchantPageVO();
+        if(kxsMerchant != null){
+            BeanUtil.copyProperties(kxsMerchant,sysMerchantPageVO);
+            Integer machineId = kxsMerchant.getMachineId();
+            KxsMachine kxsMachine = kxsMachineService.getById(machineId);
+            if(kxsMachine != null){
+                sysMerchantPageVO.setPosSn(kxsMachine.getPosSn());
+            }
+        }
+        return sysMerchantPageVO;
+    }
+
 
 }
 

+ 42 - 5
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsShopGoodsServiceImpl.java

@@ -4,12 +4,17 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.kxs.product.api.dto.admin.shopGood.DownShelfDTO;
+import com.kxs.product.api.dto.admin.shopGood.SysShopGoodsAddDTO;
+import com.kxs.product.api.dto.admin.shopGood.SysShopGoodsPageDTO;
+import com.kxs.product.api.dto.admin.shopGood.UpShelfDTO;
 import com.kxs.product.api.model.KxsShopGoodsPic;
-import com.kxs.product.api.model.KxsShopGoodsSku;
+import com.kxs.product.api.vo.admin.shopGoods.SysShopGoodsPageVO;
 import com.kxs.product.api.vo.kxsapp.shop.ShopGoodsDetailVO;
 import com.kxs.product.api.vo.kxsapp.shop.ShopGoodsListVO;
 import com.kxs.product.api.vo.kxsapp.shop.ShopGoodsSkuVO;
 import com.kxs.product.api.vo.kxsapp.shop.ShopGoodsSpecVO;
+import com.kxs.product.biz.constant.enums.GoodsStatusEnum;
 import com.kxs.product.biz.mapper.KxsShopGoodsMapper;
 import com.kxs.product.api.model.KxsShopGoods;
 import com.kxs.product.biz.mapper.KxsShopGoodsPicMapper;
@@ -17,6 +22,7 @@ import com.kxs.product.biz.mapper.KxsShopGoodsSkuMapper;
 import com.kxs.product.biz.mapper.KxsShopGoodsSpecMapper;
 import com.kxs.product.biz.service.KxsShopGoodsService;
 import lombok.RequiredArgsConstructor;
+import org.checkerframework.checker.units.qual.K;
 import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 
@@ -74,14 +80,45 @@ public class KxsShopGoodsServiceImpl extends ServiceImpl<KxsShopGoodsMapper, Kxs
         return goodsDetailVO;
     }
 
+    @Override
+    public List<SysShopGoodsPageVO> shopGoodsPage(Page page, SysShopGoodsPageDTO param) {
+        List<SysShopGoodsPageVO> list = baseMapper.shopGoodsPage(page, param);
+        if(page != null){
+            page.setRecords(list);
+        }
+        return list;
+    }
 
+    @Override
+    public void shopGoodsAdd(SysShopGoodsAddDTO param) {
+        KxsShopGoods kxsShopGoods = new KxsShopGoods();
+        BeanUtils.copyProperties(param,kxsShopGoods);
+        this.save(kxsShopGoods);
+        //TODO:商品新增剩余逻辑
+    }
 
+    @Override
+    public void upShelf(UpShelfDTO upShelfDTO) {
+        Integer id = upShelfDTO.getId();
+        KxsShopGoods shopGoods = this.getById(id);
+        if(shopGoods != null){
+            shopGoods.setUpTime(upShelfDTO.getUpTime());
+            shopGoods.setStatus(GoodsStatusEnum.UP_SHELF.getType());
+        }
+        this.updateById(shopGoods);
 
+    }
 
-
-
-
-
+    @Override
+    public void downShelf(DownShelfDTO downShelfDTO) {
+        Integer id = downShelfDTO.getId();
+        KxsShopGoods shopGoods = this.getById(id);
+        if(shopGoods != null){
+            shopGoods.setDownTime(downShelfDTO.getDownTime());
+            shopGoods.setStatus(GoodsStatusEnum.DOWN_SHELF.getType());
+        }
+        this.updateById(shopGoods);
+    }
 
 
 }

+ 89 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsShopOrderServiceImpl.java

@@ -1,9 +1,11 @@
 package com.kxs.product.biz.service.impl;
 
 import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.util.IdUtil;
 import com.alipay.api.AlipayApiException;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -18,9 +20,12 @@ import com.kxs.common.pay.factory.PaymentFactory;
 import com.kxs.common.pay.model.*;
 import com.kxs.common.security.util.SecurityUtils;
 import com.kxs.product.api.amqp.rabbit.RabbitShopTimeoutQueueMQ;
+import com.kxs.product.api.dto.admin.order.SysSoPageDTO;
 import com.kxs.product.api.dto.kxsapp.shop.GoodsSubmitDTO;
 import com.kxs.product.api.dto.kxsapp.shop.PayOrderDTO;
 import com.kxs.product.api.model.*;
+import com.kxs.product.api.vo.admin.order.SysSoOrderDetailVO;
+import com.kxs.product.api.vo.admin.order.SysSoPageVO;
 import com.kxs.product.api.vo.kxsapp.shop.*;
 import com.kxs.product.biz.constant.enums.KxsShopEnum;
 import com.kxs.product.biz.constant.enums.ProductErrorTypeEnum;
@@ -31,7 +36,9 @@ import com.kxs.product.biz.service.KxsTicketService;
 import com.kxs.store.api.feign.RemoteKxsStoreService;
 import com.kxs.store.api.model.KxsWarehouseLimit;
 import com.kxs.system.api.util.ParamResolver;
+import com.kxs.user.api.dto.admin.user.UserSearchDTO;
 import com.kxs.user.api.feign.RemoteKxsUserService;
+import com.kxs.user.api.vo.admin.user.SysFeignUserDetailVO;
 import io.seata.spring.annotation.GlobalTransactional;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
@@ -42,7 +49,9 @@ import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
 import java.time.LocalDateTime;
+import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 import java.util.Objects;
 import java.util.Optional;
 import java.util.stream.Collectors;
@@ -348,6 +357,86 @@ public class KxsShopOrderServiceImpl extends ServiceImpl<KxsShopOrderMapper, Kxs
         updateById(order);
     }
 
+    @Override
+    public List<SysSoPageVO> shopOrderPage(Page page, SysSoPageDTO sysSoPageDTO) {
+
+        //如果有用户名称或用户编号的搜索条件,先去查用户,再根据用户id搜索订单
+        String userCode = sysSoPageDTO.getUserCode();
+        String username = sysSoPageDTO.getUsername();
+        List<Integer> searchUserIds = sysSoPageDTO.getUserIds();
+        if(StringUtils.isNotBlank(userCode) || StringUtils.isNotBlank(username)){
+            UserSearchDTO userSearchDTO = new UserSearchDTO();
+            userSearchDTO.setUsername(username);
+            userSearchDTO.setUserCode(userCode);
+            List<Integer> userIds = getUserIdsSearch(userSearchDTO);
+            if(CollectionUtil.isNotEmpty(userIds)){
+                if(searchUserIds == null){
+                    searchUserIds = new ArrayList<>();
+                }
+                searchUserIds.addAll(userIds);
+            }else{
+                return new ArrayList<>();
+            }
+        }
+        //设置用户userIds
+        sysSoPageDTO.setUserIds(searchUserIds);
+        List<SysSoPageVO> list = baseMapper.shopOrderPage(page, sysSoPageDTO);
+
+        //封装创客信息和顶级创客信息
+        packageTopUser(list);
+        if(page != null){
+            page.setRecords(list);
+        }
+        return list;
+    }
+
+    private void packageTopUser(List<SysSoPageVO> list){
+        if(CollectionUtil.isNotEmpty(list)){
+            List<Integer> userIds = list.stream().map(o -> o.getUserId().intValue()).collect(Collectors.toList());
+            R<Map<Integer, SysFeignUserDetailVO>> mapR = remoteKxsUserService.topUserList(userIds, SecurityConstants.FROM_IN);
+            if (mapR.getStatus() == 1) {
+                Map<Integer, SysFeignUserDetailVO> topUserMap = mapR.getData();
+                for(SysSoPageVO sysSoPageVO:list){
+                    Integer userId = sysSoPageVO.getUserId().intValue();
+                    if(topUserMap.containsKey(userId)){
+                        SysFeignUserDetailVO sysFeignUserDetailVO = topUserMap.get(userId);
+                        sysSoPageVO.setUserCode(sysFeignUserDetailVO.getUserCode());
+                        sysSoPageVO.setUsername(sysFeignUserDetailVO.getUsername());
+                        sysSoPageVO.setTopUserCode(sysFeignUserDetailVO.getTopUserCode());
+                        sysSoPageVO.setTopUsername(sysFeignUserDetailVO.getTopUsername());
+                    }
+                }
+            }
+        }
+
+    }
+
+    /**
+     * 通过条件获取用户id数据
+     * @return
+     */
+    private List<Integer> getUserIdsSearch(UserSearchDTO userSearchDTO){
+            R<List<Integer>> rList = remoteKxsUserService.searchUserList(userSearchDTO, SecurityConstants.FROM_IN);
+            if (rList.getStatus() != 1) {
+                throw new GlobalCustomerException("用户服务请求异常");
+            }else{
+                return rList.getData();
+            }
+    }
+
+    @Override
+    public SysSoOrderDetailVO getOrderDetailById(Integer orderId) {
+        List<KxsShopOrderInfo> kxsShopOrderInfos = orderInfoMapper.selectList(Wrappers.<KxsShopOrderInfo>lambdaQuery().eq(KxsShopOrderInfo::getOrderId, orderId));
+        SysSoOrderDetailVO sysSoOrderDetailVO = new SysSoOrderDetailVO();
+        if(CollectionUtil.isNotEmpty(kxsShopOrderInfos)){
+            KxsShopOrderInfo kxsShopOrderInfo = kxsShopOrderInfos.get(0);
+            sysSoOrderDetailVO.setOrderInfo(kxsShopOrderInfo);
+            KxsShopGoods kxsShopGoods = kxsShopGoodsMapper.selectById(kxsShopOrderInfo.getGoodsId());
+            sysSoOrderDetailVO.setOrderProductInfo(kxsShopGoods);
+        }
+        return sysSoOrderDetailVO;
+    }
+
     /**
      * 添加临时额度
      *

+ 79 - 0
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsTicketServiceImpl.java

@@ -1,12 +1,17 @@
 package com.kxs.product.biz.service.impl;
 
+import cn.hutool.core.collection.CollectionUtil;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.kxs.common.core.constant.CommonConstants;
+import com.kxs.common.core.constant.SecurityConstants;
 import com.kxs.common.core.exception.GlobalCustomerException;
+import com.kxs.common.core.util.R;
 import com.kxs.common.security.util.SecurityUtils;
+import com.kxs.product.api.dto.admin.ticket.SysTicketPageDTO;
 import com.kxs.product.api.model.KxsBrand;
 import com.kxs.product.api.model.KxsMachine;
 import com.kxs.product.api.model.KxsShopOrder;
@@ -18,9 +23,12 @@ import com.kxs.product.biz.mapper.KxsMachineMapper;
 import com.kxs.product.biz.mapper.KxsShopOrderMapper;
 import com.kxs.product.biz.mapper.KxsTicketMapper;
 import com.kxs.product.biz.service.KxsTicketService;
+import com.kxs.user.api.dto.admin.user.UserSearchDTO;
+import com.kxs.user.api.feign.RemoteKxsUserService;
 import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 
@@ -37,6 +45,7 @@ public class KxsTicketServiceImpl extends ServiceImpl<KxsTicketMapper, KxsTicket
     private final KxsBrandMapper kxsBrandMapper;
     private final KxsShopOrderMapper kxsShopOrderMapper;
     private final KxsMachineMapper kxsMachineMapper;
+    private final RemoteKxsUserService remoteKxsUserService;
     @Override
     public IPage<TicketListVO> getByPage(Page<TicketListVO> page, Integer ticketType) {
 
@@ -111,5 +120,75 @@ public class KxsTicketServiceImpl extends ServiceImpl<KxsTicketMapper, KxsTicket
         }
         return Boolean.TRUE;
     }
+
+    @Override
+    public List<KxsTicket> ticketPage(Page<KxsTicket> page, SysTicketPageDTO param) {
+        String userCode = param.getUserCode();
+        String partnerNo = param.getPartnerNo();
+        String leaderNo = param.getLeaderNo();
+        List<Integer> searchUserIds = param.getUserIds();
+        List<Integer> partnerIds = param.getPartnerIds();
+        List<Integer> leaderIds = param.getLeaderIds();
+        //如果有用户编号的搜索条件,先去查用户,再根据用户id搜索机具卷
+        if(StringUtils.isNotBlank(userCode)){
+            searchUserIds = getUserIds(userCode, searchUserIds);
+            if(CollectionUtil.isEmpty(searchUserIds)){
+                return new ArrayList<>();
+            }
+        }
+        //如果有合伙人编号的搜索条件,先去查用户,再根据用户id搜索机具卷
+        if(StringUtils.isNotBlank(partnerNo)){
+            partnerIds = getUserIds(partnerNo, partnerIds);
+            if(CollectionUtil.isEmpty(partnerIds)){
+                return new ArrayList<>();
+            }
+        }
+        //如果有盟主编号的搜索条件,先去查用户,再根据用户id搜索机具卷
+        if(StringUtils.isNotBlank(leaderNo)){
+            leaderIds = getUserIds(leaderNo, leaderIds);
+            if(CollectionUtil.isEmpty(leaderIds)){
+                return new ArrayList<>();
+            }
+        }
+        //设置用户userIds
+        param.setUserIds(searchUserIds);
+        //设置合伙人partnerIds
+        param.setPartnerIds(partnerIds);
+        //设置合伙人leaderIds
+        param.setLeaderIds(leaderIds);
+        List<KxsTicket> list = baseMapper.ticketPage(page, param);
+        if(page != null){
+            page.setRecords(list);
+        }
+        return list;
+    }
+
+    private List<Integer> getUserIds(String userCode,List<Integer> searchUserIds){
+        UserSearchDTO userSearchDTO = new UserSearchDTO();
+        userSearchDTO.setUserCode(userCode);
+        List<Integer> userIds = getUserIdsSearch(userSearchDTO);
+        if(CollectionUtil.isNotEmpty(userIds)){
+            if(searchUserIds == null){
+                searchUserIds = new ArrayList<>();
+            }
+            searchUserIds.addAll(userIds);
+        }else{
+            return new ArrayList<>();
+        }
+        return searchUserIds;
+    }
+
+    /**
+     * 通过条件获取用户id数据
+     * @return
+     */
+    private List<Integer> getUserIdsSearch(UserSearchDTO userSearchDTO){
+        R<List<Integer>> rList = remoteKxsUserService.searchUserList(userSearchDTO, SecurityConstants.FROM_IN);
+        if (rList.getStatus() != 1) {
+            throw new GlobalCustomerException("用户服务请求异常");
+        }else{
+            return rList.getData();
+        }
+    }
 }
 

+ 10 - 4
kxs-product/kxs-product-biz/src/main/java/com/kxs/product/biz/service/impl/KxsTicketTransferServiceImpl.java

@@ -13,10 +13,12 @@ import com.kxs.common.core.exception.GlobalCustomerException;
 import com.kxs.common.core.util.R;
 import com.kxs.common.core.util.RetOps;
 import com.kxs.common.security.util.SecurityUtils;
+import com.kxs.product.api.dto.admin.ticketTransfer.SysTicketTransferPageDTO;
 import com.kxs.product.api.dto.kxsapp.ticket.TicketTransferDTO;
 import com.kxs.product.api.dto.kxsapp.ticket.TicketTransferQuery;
 import com.kxs.product.api.model.KxsTicket;
 import com.kxs.product.api.model.KxsTicketTransferInfo;
+import com.kxs.product.api.vo.admin.ticketTransfer.SysTicketTransferPageVO;
 import com.kxs.product.api.vo.kxsapp.ticket.TicketTransferDetailVO;
 import com.kxs.product.api.vo.kxsapp.ticket.TicketTransferListVO;
 import com.kxs.product.biz.constant.enums.ProductErrorTypeEnum;
@@ -186,10 +188,14 @@ public class KxsTicketTransferServiceImpl extends ServiceImpl<KxsTicketTransferM
         return transferDetailVO;
     }
 
-
-
-
-
+    @Override
+    public List<SysTicketTransferPageVO> ticketTransferPage(Page page, SysTicketTransferPageDTO param) {
+        List<SysTicketTransferPageVO> list = baseMapper.ticketTransferPage(page, param);
+        if(page != null){
+            page.setRecords(list);
+        }
+        return list;
+    }
 
 
 }

+ 58 - 0
kxs-product/kxs-product-biz/src/main/resources/mapper/KxsMachineMapper.xml

@@ -202,5 +202,63 @@
         </if>
     </select>
 
+    <select id="machinePage" resultMap="KxsMachineMap">
+        SELECT
+            km.*
+        FROM
+            kxs_machine km
+        <where>
+            and km.del_flag = 0
+            <if test="query.posSn != null and query.posSn != ''">
+                <bind name="posSnLike" value="'%'+query.posSn+'%'"/>
+                AND km.pos_sn LIKE #{posSnLike}
+            </if>
+            <if test="query.brandId != null and query.brandId != ''">
+                <bind name="brandIdLike" value="'%'+query.brandId+'%'"/>
+                AND km.brand_id LIKE #{brandIdLike}
+            </if>
+            <if test="query.isAct != null">
+                AND km.is_act = #{query.isAct}
+            </if>
+            <if test="query.bindStatus != null">
+                AND km.bind_status = #{query.bindStatus}
+            </if>
+            <if test="query.status != null">
+                AND km.status = #{query.status}
+            </if>
+            <if test="query.userIds != null and query.userIds.size()>0">
+                and km.user_id in
+                <foreach collection="query.userIds" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="query.warehouseIds != null and query.warehouseIds.size()>0">
+                and km.warehouse_id in
+                <foreach collection="query.warehouseIds" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="query.bindTime != null and query.bindTime.length > 1">
+                and (
+                DATE_FORMAT(km.bind_time,'%Y-%m-%d') >= DATE_FORMAT(#{query.bindTime.[0]},'%Y-%m-%d') and
+                DATE_FORMAT(#{query.bindTime.[1]},'%Y-%m-%d')  >= DATE_FORMAT(km.bind_time,'%Y-%m-%d')
+                )
+            </if>
+            <if test="query.actTime != null and query.actTime.length > 1">
+                and (
+                DATE_FORMAT(km.act_time,'%Y-%m-%d') >= DATE_FORMAT(#{query.actTime.[0]},'%Y-%m-%d') and
+                DATE_FORMAT(#{query.actTime.[1]},'%Y-%m-%d')  >= DATE_FORMAT(km.act_time,'%Y-%m-%d')
+                )
+            </if>
+            <if test="query.deliveryTime != null and query.deliveryTime.length > 1">
+                and (
+                DATE_FORMAT(km.delivery_time,'%Y-%m-%d') >= DATE_FORMAT(#{query.deliveryTime.[0]},'%Y-%m-%d') and
+                DATE_FORMAT(#{query.deliveryTime.[1]},'%Y-%m-%d')  >= DATE_FORMAT(km.delivery_time,'%Y-%m-%d')
+                )
+            </if>
+        </where>
+        order by km.create_time desc
+    </select>
+
 
 </mapper>

+ 14 - 0
kxs-product/kxs-product-biz/src/main/resources/mapper/KxsMachineTrackMapper.xml

@@ -19,4 +19,18 @@
 
     </resultMap>
 
+    <select id="machineTrackPage" resultMap="KxsMachineTrackMap">
+        SELECT
+            *
+        FROM
+            kxs_machine_track kmt
+        <where>
+            and kmt.del_flag = 0
+            <if test="query.posSn != null and query.posSn != ''">
+                <bind name="posSnLike" value="'%'+query.posSn+'%'"/>
+                AND kmt.pos_sn LIKE #{posSnLike}
+            </if>
+        </where>
+        order by kmt.create_time desc
+    </select>
 </mapper>

+ 37 - 0
kxs-product/kxs-product-biz/src/main/resources/mapper/KxsMerchantMapper.xml

@@ -25,6 +25,10 @@
         <result column="remark" property="remark" />
 
     </resultMap>
+
+    <resultMap id="WebKxsMerchantMap" type="com.kxs.product.api.vo.admin.merchant.SysMerchantPageVO" extends="KxsMerchantMap">
+        <result column="pos_sn" property="posSn" />
+    </resultMap>
     <select id="merchantList" resultType="com.kxs.product.api.vo.kxsapp.merchant.MerchantListVO">
         SELECT
         kme.id,
@@ -106,4 +110,37 @@
           AND kme.brand_id = #{brandId}
           AND kme.user_id = #{userId};
      </select>
+
+
+     <select id="merchantPage" resultMap="WebKxsMerchantMap">
+         SELECT
+             kme.*,
+             kma.pos_sn
+         FROM
+             kxs_merchant kme
+                 LEFT JOIN kxs_machine kma ON kme.machine_id = kma.id
+         <where>
+             and kme.del_flag = 0
+             <if test="query.merchantNo != null and query.merchantNo != ''">
+                 <bind name="merchantNoLike" value="'%'+query.merchantNo+'%'"/>
+                 AND kme.merchant_no LIKE #{merchantNoLike}
+             </if>
+             <if test="query.merchantName != null and query.merchantName != ''">
+                 <bind name="merchantNameLike" value="'%'+query.merchantName+'%'"/>
+                 AND kme.merchant_name LIKE #{merchantNameLike}
+             </if>
+             <if test="query.merchantCard != null and query.merchantCard != ''">
+                 <bind name="merchantCardLike" value="'%'+query.merchantCard+'%'"/>
+                 AND kme.merchant_card LIKE #{merchantCardLike}
+             </if>
+             <if test="query.merchantPhone != null and query.merchantPhone != ''">
+                 <bind name="merchantPhoneLike" value="'%'+query.merchantPhone+'%'"/>
+                 AND kme.merchant_phone LIKE #{merchantPhoneLike}
+             </if>
+             <if test="query.posSn != null and query.posSn != ''">
+                 <bind name="posSnLike" value="'%'+query.posSn+'%'"/>
+                 AND kma.pos_sn LIKE #{posSnLike}
+             </if>
+         </where>
+     </select>
 </mapper>

+ 14 - 0
kxs-product/kxs-product-biz/src/main/resources/mapper/KxsShopGoodsMapper.xml

@@ -23,6 +23,10 @@
 
     </resultMap>
 
+    <resultMap id="WebKxsShopGoodsMap" type="com.kxs.product.api.vo.admin.shopGoods.SysShopGoodsPageVO" extends="KxsShopGoodsMap">
+
+    </resultMap>
+
     <select id="getByPage" resultType="com.kxs.product.api.vo.kxsapp.shop.ShopGoodsListVO">
         select * from kxs_shop_goods a
         <where>
@@ -34,4 +38,14 @@
         </where>
     </select>
 
+    <select id="shopGoodsPage" resultMap="WebKxsShopGoodsMap">
+        SELECT
+            *
+        FROM
+            kxs_shop_goods ksg
+        <where>
+            and ksg.del_flag = 0
+        </where>
+    </select>
+
 </mapper>

+ 48 - 26
kxs-product/kxs-product-biz/src/main/resources/mapper/KxsShopOrderMapper.xml

@@ -51,6 +51,8 @@
         </collection>
     </resultMap>
 
+    <resultMap id="WebKxsShopOrderMap" extends="KxsShopOrderMap" type="com.kxs.product.api.vo.admin.order.SysSoPageVO"></resultMap>
+
     <select id="getByPage" resultMap="KxsShopOrderPageMap">
         SELECT a.id, a.create_time, a.order_sn, a.status, a.return_status, a.total_price, a.pay_price, a.warehouse_id, a.order_type,
                t.number, t.goods_price, t.pic_url, t.goods_name, t.specifications
@@ -100,32 +102,52 @@
     </select>
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+    <select id="shopOrderPage" resultMap="WebKxsShopOrderMap">
+        SELECT
+            kso.*
+        FROM
+            kxs_shop_order kso
+        <where>
+            and kso.del_flag = 0
+            <if test="query.orderSn != null and query.orderSn != ''">
+                <bind name="orderSnLike" value="'%'+query.orderSn+'%'"/>
+                AND kso.order_sn LIKE #{orderSnLike}
+            </if>
+            <if test="query.payType != null">
+                and kso.pay_type = #{query.payType}
+            </if>
+            <if test="query.status != null">
+                and kso.status = #{query.status}
+            </if>
+            <if test="query.goodsId != null and query.goodsId != ''">
+                and kso.goods_id = #{query.goodsId}
+            </if>
+            <if test="query.userIds != null and query.userIds.size()>0">
+                and kso.user_id in
+                <foreach collection="query.userIds" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="query.orderTime != null and query.orderTime.length > 1">
+                and (
+                DATE_FORMAT(create_time,'%Y-%m-%d') >= DATE_FORMAT(#{query.orderTime.[0]},'%Y-%m-%d') and
+                DATE_FORMAT(#{query.orderTime.[1]},'%Y-%m-%d')  >= DATE_FORMAT(create_time,'%Y-%m-%d')
+                )
+            </if>
+            <if test="query.payTime != null and query.payTime.length > 1">
+                and (
+                DATE_FORMAT(pay_time,'%Y-%m-%d') >= DATE_FORMAT(#{query.payTime.[0]},'%Y-%m-%d') and
+                DATE_FORMAT(#{query.payTime.[1]},'%Y-%m-%d')  >= DATE_FORMAT(pay_time,'%Y-%m-%d')
+                )
+            </if>
+            <if test="query.sendTime != null and query.sendTime.length > 1">
+                and (
+                DATE_FORMAT(send_time,'%Y-%m-%d') >= DATE_FORMAT(#{query.sendTime.[0]},'%Y-%m-%d') and
+                DATE_FORMAT(#{query.sendTime.[1]},'%Y-%m-%d')  >= DATE_FORMAT(send_time,'%Y-%m-%d')
+                )
+            </if>
+        </where>
+    </select>
 
 
 

+ 40 - 0
kxs-product/kxs-product-biz/src/main/resources/mapper/KxsTicketMapper.xml

@@ -15,6 +15,8 @@
         <result column="order_id" property="orderId" />
         <result column="is_leader" property="isLeader" />
         <result column="status" property="status" />
+        <result column="partner_id" property="partnerId" />
+        <result column="leader_id" property="leaderId" />
 
     </resultMap>
     <update id="updateBatchTransfer">
@@ -35,4 +37,42 @@
         where user_id = #{userId} and status = 0 and ticket_type = #{ticketType}
     </select>
 
+    <select id="ticketPage" resultMap="KxsTicketMap">
+        SELECT
+            kt.*
+        FROM
+            kxs_ticket kt
+        <where>
+            and kt.del_flag = 0
+            <if test="query.ticketCode != null and query.ticketCode != ''">
+                <bind name="ticketCodeLike" value="'%'+query.ticketCode+'%'"/>
+                AND kt.ticket_code LIKE #{ticketCodeLike}
+            </if>
+            <if test="query.ticketType != null">
+                AND kt.ticket_type = #{query.ticketType}
+            </if>
+            <if test="query.status != null">
+                AND kt.status = #{status}
+            </if>
+            <if test="query.userIds != null and query.userIds.size()>0">
+                and kt.user_id in
+                <foreach collection="query.userIds" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="query.partnerIds != null and query.partnerIds.size()>0">
+                and kt.partner_id in
+                <foreach collection="query.partnerIds" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="query.leaderIds != null and query.leaderIds.size()>0">
+                and kt.leader_id in
+                <foreach collection="query.leaderIds" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+        </where>
+    </select>
+
 </mapper>

+ 38 - 0
kxs-product/kxs-product-biz/src/main/resources/mapper/KxsTicketTransferMapper.xml

@@ -20,6 +20,10 @@
         <result column="ticket_type" property="ticketType" />
 
     </resultMap>
+
+    <resultMap id="WebKxsTicketTransferMap" type="com.kxs.product.api.vo.admin.ticketTransfer.SysTicketTransferPageVO" extends="KxsTicketTransferMap">
+        <result column="ticketCodes" property="ticketCodes" />
+    </resultMap>
     <select id="getByPage" resultType="com.kxs.product.api.vo.kxsapp.ticket.TicketTransferListVO">
         select a.id, a.transfer_num, a.ticket_type, a.to_user_id, a.send_user_id, a.create_time,
         <if test="query.transferType == 1">
@@ -40,5 +44,39 @@
         order by a.create_time desc
     </select>
 
+    <select id="ticketTransferPage" resultMap="WebKxsTicketTransferMap">
+        SELECT
+        ktt.*,
+        t.ticketCodes
+        FROM
+        kxs_ticket_transfer ktt
+        LEFT JOIN
+        ( SELECT group_concat( ktti.ticket_code ) ticketCodes, ktti.order_sn AS orderSn FROM kxs_ticket_transfer_info ktti GROUP BY ktti.order_sn )  t ON ktt.order_sn = t.orderSn
+        <where>
+            and ktt.del_flag = 0
+            <if test="query.toUserName != null and query.toUserName != ''">
+                <bind name="toUserNameLike" value="'%'+query.toUserName+'%'"/>
+                AND ktt.to_user_name LIKE #{toUserNameLike}
+            </if>
+            <if test="query.toUserCode != null and query.toUserCode != ''">
+                <bind name="toUserCodeLike" value="'%'+query.toUserCode+'%'"/>
+                AND ktt.to_user_code LIKE #{toUserCodeLike}
+            </if>
+            <if test="query.sendUserName != null and query.sendUserName != ''">
+                <bind name="sendUserNameLike" value="'%'+query.sendUserName+'%'"/>
+                AND ktt.send_user_name LIKE #{sendUserNameLike}
+            </if>
+            <if test="query.sendUserCode != null and query.sendUserCode != ''">
+                <bind name="sendUserCodeLike" value="'%'+query.sendUserCode+'%'"/>
+                AND ktt.send_user_code LIKE #{sendUserCodeLike}
+            </if>
+            <if test="query.ticketCode != null and query.ticketCode != ''">
+                <bind name="ticketCodeLike" value="'%'+query.ticketCode+'%'"/>
+                AND t.ticketCodes LIKE #{ticketCodeLike}
+            </if>
+        </where>
+        order by ktt.create_time
+    </select>
+
 
 </mapper>

+ 53 - 0
kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/dto/admin/machine/SysWarehousePageDTO.java

@@ -0,0 +1,53 @@
+package com.kxs.store.api.dto.admin.machine;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.util.List;
+
+
+/**
+ * 仓库管理-仓库信息列表-dto
+ *
+ * @author 系统
+ * @date 2024-07-03 10:41:47
+ */
+@Data
+public class SysWarehousePageDTO {
+
+    /**
+     * 仓库编号
+     */
+    @Schema(description = "仓库编号")
+    private String warehouseNo;
+
+
+    /**
+     * 仓库归属人
+     */
+    @Schema(description = "仓库归属人")
+    private String warehouseUserName;
+
+
+    /**
+     * 仓库归属人编号
+     */
+    @Schema(description = "仓库归属人编号")
+    private String warehouseUserCode;
+
+
+    /**
+     * 仓库管理员创客编号
+     */
+    @Schema(description = "仓库管理员创客编号")
+    private String warehouseAdminNo;
+
+    /**
+     * 仓库管理员id集合
+     */
+    private List<Integer> warehouseAdminIds;
+
+
+
+
+}

+ 22 - 0
kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/dto/admin/machine/WarehouseSearchDTO.java

@@ -0,0 +1,22 @@
+package com.kxs.store.api.dto.admin.machine;
+
+import lombok.Data;
+
+/**
+ * 仓库搜索
+ * @author debao.yang
+ * @createTime 2024-07-03 11:34
+ */
+@Data
+public class WarehouseSearchDTO {
+
+    /**
+     * 仓库编号
+     */
+    private String warehouseNo;
+
+    /**
+     * 仓库所属人创客编号
+     */
+    private String warehouseUserCode;
+}

+ 39 - 0
kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/dto/admin/machineApply/SysMachineApplyPageDTO.java

@@ -0,0 +1,39 @@
+package com.kxs.store.api.dto.admin.machineApply;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+
+/**
+ * 商城管理-创客信息申请订单表-dto
+ *
+ * @author 系统
+ * @date 2024-07-01 14:01:07
+ */
+@Data
+public class SysMachineApplyPageDTO {
+
+    /**
+     * 订单号
+     */
+    @Schema(description = "订单号")
+    private String orderSn;
+
+
+    /**
+     * 创客姓名
+     */
+    @Schema(description = "创客姓名")
+    private String username;
+
+
+    /**
+     * 创客编号
+     */
+    @Schema(description = "创客编号")
+    private String userCode;
+
+
+
+
+}

+ 26 - 0
kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/feign/RemoteKxsWarehouseService.java

@@ -0,0 +1,26 @@
+package com.kxs.store.api.feign;
+
+import com.kxs.common.core.constant.SecurityConstants;
+import com.kxs.common.core.util.R;
+import com.kxs.store.api.dto.admin.machine.WarehouseSearchDTO;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestHeader;
+import org.springframework.web.service.annotation.PostExchange;
+
+import java.util.List;
+
+/**
+ * @author debao.yang
+ * @createTime 2024-07-03 10:32
+ */
+public interface RemoteKxsWarehouseService {
+
+    /**
+     * 查询仓库id集合(最多100条)
+     * @param warehouseSearchDTO
+     * @param from
+     * @return
+     */
+    @PostExchange("/sysWarehouse/search/list")
+    R<List<Integer>> searchWarehouseList(@RequestBody WarehouseSearchDTO warehouseSearchDTO, @RequestHeader(SecurityConstants.FROM) String from);
+}

+ 12 - 0
kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/feign/config/KxsStoreFeignClientConfiguration.java

@@ -3,6 +3,7 @@ package com.kxs.store.api.feign.config;
 import cn.hutool.core.text.CharSequenceUtil;
 import com.kxs.common.core.constant.ServiceNameConstants;
 import com.kxs.store.api.feign.RemoteKxsStoreService;
+import com.kxs.store.api.feign.RemoteKxsWarehouseService;
 import io.seata.core.context.RootContext;
 import jakarta.servlet.http.HttpServletRequest;
 import lombok.RequiredArgsConstructor;
@@ -82,4 +83,15 @@ public class KxsStoreFeignClientConfiguration {
 		return factory.createClient(RemoteKxsStoreService.class);
 	}
 
+	/**
+	 * 仓库数据调用模块服务
+	 * @param client
+	 * @return
+	 */
+	@Bean
+	RemoteKxsWarehouseService remoteKxsWarehouseService(@Qualifier("kxsStoreFeignClient") WebClient client) {
+		HttpServiceProxyFactory factory = HttpServiceProxyFactory.builder(WebClientAdapter.forClient(client)).build();
+		return factory.createClient(RemoteKxsWarehouseService.class);
+	}
+
 }

+ 41 - 0
kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/vo/admin/machineApply/SysMachineApplyApplyDetailVO.java

@@ -0,0 +1,41 @@
+package com.kxs.store.api.vo.admin.machineApply;
+
+
+import com.kxs.store.api.model.KxsMachineApply;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * 商城管理-创客机具申请订单详情vo
+ *
+ * @author 系统
+ * @date 2024-07-01 14:01:07
+ */
+@Data
+@Schema(description = "商城管理-创客机具申请订单详情返回实体")
+public class SysMachineApplyApplyDetailVO extends KxsMachineApply implements Serializable {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+
+
+    @Schema(description = "发货SN编号")
+    private List<String> sendSn;
+
+    @Schema(description = "兑换SN编号")
+    private List<String> swapSnExpand;
+
+
+
+
+
+
+	
+
+}

+ 74 - 0
kxs-store/kxs-store-api/src/main/java/com/kxs/store/api/vo/admin/machineApply/SysMachineApplyPageVO.java

@@ -0,0 +1,74 @@
+package com.kxs.store.api.vo.admin.machineApply;
+
+
+import com.kxs.store.api.model.KxsMachineApply;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * 商城管理-创客信息申请订单表vo
+ *
+ * @author 系统
+ * @date 2024-07-01 14:01:07
+ */
+@Data
+@Schema(description = "商城管理-创客信息申请订单表返回实体")
+public class SysMachineApplyPageVO extends KxsMachineApply implements Serializable {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+
+    /**
+     * 顶级创客名称
+     */
+    @Schema(description = "顶级创客名称")
+    private Object topUsername;
+
+
+    /**
+     * 顶级创客编号
+     */
+    @Schema(description = "顶级创客编号")
+    private Object topUserCode;
+
+
+    /**
+     * 仓库名称
+     */
+    @Schema(description = "仓库名称")
+    private Object warehouseName;
+
+
+    /**
+     * 仓库编号
+     */
+    @Schema(description = "仓库编号")
+    private Object warehouseNo;
+
+
+    /**
+     * 仓库归属人
+     */
+    @Schema(description = "仓库归属人")
+    private Object warehouseUserName;
+
+
+    /**
+     * 仓库归属人编号
+     */
+    @Schema(description = "仓库归属人编号")
+    private Object warehouseUserCode;
+
+
+
+
+
+	
+
+}

+ 63 - 0
kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/controller/admin/SysMachineApplyController.java

@@ -0,0 +1,63 @@
+package com.kxs.store.biz.controller.admin;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.common.core.util.R;
+import com.kxs.store.api.dto.admin.machineApply.SysMachineApplyPageDTO;
+import com.kxs.store.api.vo.admin.machineApply.SysMachineApplyPageVO;
+import com.kxs.store.biz.service.KxsMachineApplyService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 商城管理(SysMachineApply)控制层
+ *
+ * @author 系统
+ * @since 2024-07-01 14:18:38
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("sysMachineApply")
+public class SysMachineApplyController {
+
+    /**
+     * 服务对象
+     */
+    private final KxsMachineApplyService kxsMachineApplyService;
+
+
+
+    /**
+     * 商城管理-创客信息申请订单表
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 商城管理-创客信息申请订单表
+     */
+    @GetMapping("/page")
+    public R page(Page<SysMachineApplyPageVO> page, SysMachineApplyPageDTO param) {
+        kxsMachineApplyService.applyPage(page, param);
+        return R.ok(page);
+    }
+
+
+    /**
+     * 商城管理-创客机具申请订单详情
+     *
+     * @param id 主键ID
+     * @return 商城管理-创客机具申请订单详情
+     */
+    @GetMapping("/applyDetail")
+    public R applyDetail(@RequestParam String id) {
+        return R.ok(kxsMachineApplyService.applyDetail(id));
+    }
+
+
+
+
+
+}
+

+ 62 - 0
kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/controller/admin/SysWarehouseController.java

@@ -0,0 +1,62 @@
+package com.kxs.store.biz.controller.admin;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.common.core.util.R;
+import com.kxs.common.security.annotation.Inner;
+import com.kxs.store.api.dto.admin.machine.SysWarehousePageDTO;
+import com.kxs.store.api.dto.admin.machine.WarehouseSearchDTO;
+import com.kxs.store.api.model.KxsWarehouse;
+import com.kxs.store.biz.service.KxsWarehouseService;
+import lombok.RequiredArgsConstructor;
+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.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 仓库管理(SysWarehouse)控制层
+ *
+ * @author 系统
+ * @since 2024-07-03 10:41:47
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("sysWarehouse")
+public class SysWarehouseController {
+
+    /**
+     * 服务对象
+     */
+    private final KxsWarehouseService kxsWarehouseService;
+
+
+
+    /**
+     * 仓库管理-仓库信息列表
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 仓库管理-仓库信息列表
+     */
+    @GetMapping("/page")
+    public R page(Page<KxsWarehouse> page, SysWarehousePageDTO param) {
+        kxsWarehouseService.warehousePage(page, param);
+        return R.ok(page);
+    }
+
+    /**
+     * 通过搜索条件查询用户数据
+     * @param warehouseSearchDTO
+     * @return
+     */
+    @Inner
+    @PostMapping("/search/list")
+    public R searchWarehouseList(@RequestBody WarehouseSearchDTO warehouseSearchDTO) {
+        return R.ok(kxsWarehouseService.searchWarehouseList(warehouseSearchDTO));
+    }
+
+
+
+}
+

+ 14 - 0
kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/mapper/KxsMachineApplyMapper.java

@@ -3,10 +3,12 @@ package com.kxs.store.biz.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.store.api.dto.admin.machineApply.SysMachineApplyPageDTO;
 import com.kxs.store.api.dto.kxsapp.storeOrder.OrderMonthTotalDTO;
 import com.kxs.store.api.dto.kxsapp.storeOrder.OrderMonthTotalDetailDTO;
 import com.kxs.store.api.dto.kxsapp.storeOrder.StoreOrderListDTO;
 import com.kxs.store.api.model.KxsMachineApply;
+import com.kxs.store.api.vo.admin.machineApply.SysMachineApplyPageVO;
 import com.kxs.store.api.vo.kxsapp.storeOrder.OrderMonthTotalDetailVO;
 import com.kxs.store.api.vo.kxsapp.storeOrder.OrderMonthTotalVO;
 import com.kxs.store.api.vo.kxsapp.storeOrder.StoreOrderListVO;
@@ -14,6 +16,8 @@ import com.kxs.store.api.vo.kxsapp.userOrder.UserApplyMahineListVO;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 /**
  * 客小爽机具申请表(KxsMachineApply)表数据库访问层
  *
@@ -41,5 +45,15 @@ public interface KxsMachineApplyMapper extends BaseMapper<KxsMachineApply> {
      * @return {@link IPage}<{@link UserApplyMahineListVO}>
      */
     IPage<UserApplyMahineListVO> userApplyMachineList(Page<UserApplyMahineListVO> page, @Param("userId") Long userId);
+
+
+    /**
+     * 机具申请列表分页查询
+     * @param page
+     * @param param
+     * @return
+     */
+    List<SysMachineApplyPageVO> applyPage(Page page,@Param("query") SysMachineApplyPageDTO param);
+
 }
 

+ 12 - 0
kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/mapper/KxsWarehouseMapper.java

@@ -3,6 +3,7 @@ package com.kxs.store.biz.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.store.api.dto.admin.machine.SysWarehousePageDTO;
 import com.kxs.store.api.dto.kxsapp.store.StoreSearchListDTO;
 import com.kxs.store.api.model.KxsWarehouse;
 import com.kxs.store.api.vo.kxsapp.store.StoreBrandListVO;
@@ -39,5 +40,16 @@ public interface KxsWarehouseMapper extends BaseMapper<KxsWarehouse> {
      */
     List<StoreListVO> userStoreList(Long userId);
 
+
+    /**
+     * 分页查询仓库列表
+     * @param page
+     * @param param
+     * @return
+     */
+    List<KxsWarehouse> warehousePage(Page page, @Param("query") SysWarehousePageDTO param);
+
+    List<Integer> searchWarehouseList();
+
 }
 

+ 8 - 0
kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/KxsMachineApplyDetailService.java

@@ -3,6 +3,8 @@ package com.kxs.store.biz.service;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.kxs.store.api.model.KxsMachineApplyDetail;
 
+import java.util.List;
+
 /**
  * 客小爽机具申请详情表(KxsMachineApplyDetail)表服务接口
  *
@@ -11,5 +13,11 @@ import com.kxs.store.api.model.KxsMachineApplyDetail;
  */
 public interface KxsMachineApplyDetailService extends IService<KxsMachineApplyDetail> {
 
+    /**
+     * 通过订单id查询详情
+     * @param orderId
+     * @return
+     */
+    List<KxsMachineApplyDetail> listByOrderId(String orderId);
 }
 

+ 22 - 0
kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/KxsMachineApplyService.java

@@ -4,8 +4,11 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.kxs.common.core.util.R;
+import com.kxs.store.api.dto.admin.machineApply.SysMachineApplyPageDTO;
 import com.kxs.store.api.dto.kxsapp.storeOrder.*;
 import com.kxs.store.api.model.KxsMachineApply;
+import com.kxs.store.api.vo.admin.machineApply.SysMachineApplyApplyDetailVO;
+import com.kxs.store.api.vo.admin.machineApply.SysMachineApplyPageVO;
 import com.kxs.store.api.vo.kxsapp.storeOrder.OrderMonthTotalDetailVO;
 import com.kxs.store.api.vo.kxsapp.storeOrder.OrderMonthTotalVO;
 import com.kxs.store.api.vo.kxsapp.storeOrder.StoreOrderDetailVO;
@@ -13,6 +16,8 @@ import com.kxs.store.api.vo.kxsapp.storeOrder.StoreOrderListVO;
 import com.kxs.store.api.vo.kxsapp.userOrder.UserApplyMachineDetailVO;
 import com.kxs.store.api.vo.kxsapp.userOrder.UserApplyMahineListVO;
 
+import java.util.List;
+
 /**
  * 客小爽机具申请表(KxsMachineApply)表服务接口
  *
@@ -87,5 +92,22 @@ public interface KxsMachineApplyService extends IService<KxsMachineApply> {
      */
     UserApplyMachineDetailVO userApplyMachineDetail(Long id);
 
+
+    /**
+     * 机具申请列表分页查询
+     * @param page
+     * @param param
+     * @return
+     */
+    List<SysMachineApplyPageVO> applyPage(Page page, SysMachineApplyPageDTO param);
+
+
+    /**
+     * 通过机具申请id查询详情
+     * @param id
+     * @return
+     */
+    SysMachineApplyApplyDetailVO applyDetail(String id);
+
 }
 

+ 19 - 0
kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/KxsWarehouseService.java

@@ -3,11 +3,14 @@ package com.kxs.store.biz.service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.kxs.store.api.dto.admin.machine.SysWarehousePageDTO;
+import com.kxs.store.api.dto.admin.machine.WarehouseSearchDTO;
 import com.kxs.store.api.dto.kxsapp.store.StoreSearchListDTO;
 import com.kxs.store.api.model.KxsWarehouse;
 import com.kxs.store.api.vo.kxsapp.store.StoreDataVO;
 import com.kxs.store.api.vo.kxsapp.store.StoreListVO;
 import com.kxs.store.api.vo.kxsapp.store.StoreSearchListVO;
+import org.springframework.web.bind.annotation.RequestBody;
 
 import java.util.List;
 
@@ -43,5 +46,21 @@ public interface KxsWarehouseService extends IService<KxsWarehouse> {
      */
     StoreDataVO storeData(Integer warehouseId);
 
+
+    /**
+     * 分页查询仓库信息
+     * @param page
+     * @param param
+     * @return
+     */
+    List<KxsWarehouse> warehousePage(Page page, SysWarehousePageDTO param);
+
+
+    /**
+     * 通过搜索条件查询仓库id集合
+     * @param warehouseSearchDTO
+     * @return
+     */
+    List<Integer> searchWarehouseList(WarehouseSearchDTO warehouseSearchDTO);
 }
 

+ 10 - 0
kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/impl/KxsMachineApplyDetailServiceImpl.java

@@ -1,11 +1,14 @@
 package com.kxs.store.biz.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.kxs.store.biz.mapper.KxsMachineApplyDetailMapper;
 import com.kxs.store.api.model.KxsMachineApplyDetail;
 import com.kxs.store.biz.service.KxsMachineApplyDetailService;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 /**
  * 客小爽机具申请详情表(KxsMachineApplyDetail)表服务实现类
  *
@@ -15,5 +18,12 @@ import org.springframework.stereotype.Service;
 @Service("kxsMachineApplyDetailService")
 public class KxsMachineApplyDetailServiceImpl extends ServiceImpl<KxsMachineApplyDetailMapper, KxsMachineApplyDetail> implements KxsMachineApplyDetailService {
 
+
+    @Override
+    public List<KxsMachineApplyDetail> listByOrderId(String orderId) {
+        LambdaQueryWrapper<KxsMachineApplyDetail> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(o->o.getOrderId(),orderId);
+        return this.list(queryWrapper);
+    }
 }
 

+ 60 - 0
kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/impl/KxsMachineApplyServiceImpl.java

@@ -1,6 +1,9 @@
 package com.kxs.store.biz.service.impl;
 
 import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.date.DatePattern;
 import cn.hutool.core.lang.Snowflake;
 import cn.hutool.core.util.EnumUtil;
 import cn.hutool.core.util.IdUtil;
@@ -23,7 +26,13 @@ import com.kxs.product.api.model.KxsTicket;
 import com.kxs.store.api.dto.kxsapp.storeOrder.ApplyMachineDTO;
 import com.kxs.store.api.dto.kxsapp.storeOrder.StoreOrderListDTO;
 import com.kxs.store.api.dto.kxsapp.storeOrder.StoreOrderTransferUserDTO;
+import com.kxs.store.api.dto.admin.machineApply.SysMachineApplyPageDTO;
+import com.kxs.store.api.dto.kxsapp.storeOrder.*;
 import com.kxs.store.api.model.*;
+import com.kxs.store.api.vo.admin.machineApply.SysMachineApplyApplyDetailVO;
+import com.kxs.store.api.vo.admin.machineApply.SysMachineApplyPageVO;
+import com.kxs.store.api.vo.kxsapp.storeOrder.OrderMonthTotalDetailVO;
+import com.kxs.store.api.vo.kxsapp.storeOrder.OrderMonthTotalVO;
 import com.kxs.store.api.vo.kxsapp.storeOrder.StoreOrderDetailVO;
 import com.kxs.store.api.vo.kxsapp.storeOrder.StoreOrderListVO;
 import com.kxs.store.api.vo.kxsapp.userOrder.UserApplyMachineDetailVO;
@@ -39,6 +48,7 @@ import com.kxs.system.api.util.ParamResolver;
 import com.kxs.user.api.feign.RemoteKxsUserService;
 import com.kxs.user.api.model.KxsUser;
 import com.kxs.user.api.model.KxsUserAdvance;
+import com.kxs.user.api.vo.admin.user.SysFeignUserDetailVO;
 import io.seata.spring.annotation.GlobalTransactional;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
@@ -47,8 +57,10 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.time.LocalDateTime;
+import java.time.LocalTime;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 import java.util.Objects;
 import java.util.Optional;
 import java.util.stream.Collectors;
@@ -84,6 +96,8 @@ public class KxsMachineApplyServiceImpl extends ServiceImpl<KxsMachineApplyMappe
 
     private final KxsSendTotalService kxsSendTotalService;
 
+    private final KxsMachineApplyDetailService kxsMachineApplyDetailService;
+
     @Override
     @GlobalTransactional
     @Transactional(rollbackFor = Exception.class)
@@ -628,5 +642,51 @@ public class KxsMachineApplyServiceImpl extends ServiceImpl<KxsMachineApplyMappe
         return userApplyMachineDetailVO;
     }
 
+    @Override
+    public List<SysMachineApplyPageVO> applyPage(Page page, SysMachineApplyPageDTO param) {
+        List<SysMachineApplyPageVO> list = baseMapper.applyPage(page, param);
+        packageTopUser(list);
+        if(page != null){
+            page.setRecords(list);
+        }
+        return list;
+    }
+
+    @Override
+    public SysMachineApplyApplyDetailVO applyDetail(String id) {
+        KxsMachineApply kxsMachineApply = this.getById(id);
+        List<KxsMachineApplyDetail> kxsMachineApplyDetails = kxsMachineApplyDetailService.listByOrderId(id);
+        SysMachineApplyApplyDetailVO sysMachineApplyApplyDetailVO = new SysMachineApplyApplyDetailVO();
+        BeanUtil.copyProperties(kxsMachineApply,sysMachineApplyApplyDetailVO);
+        List<String> sendSn = new ArrayList<>();
+        List<String> swapSnExpand = new ArrayList<>();
+        if(CollectionUtil.isNotEmpty(kxsMachineApplyDetails)){
+            sendSn = kxsMachineApplyDetails.stream().map(o -> o.getPosSn()).collect(Collectors.toList());
+            swapSnExpand = kxsMachineApplyDetails.stream().map(o -> o.getTicketCode()).collect(Collectors.toList());
+        }
+        sysMachineApplyApplyDetailVO.setSendSn(sendSn);
+        sysMachineApplyApplyDetailVO.setSwapSnExpand(swapSnExpand);
+        return sysMachineApplyApplyDetailVO;
+    }
+
+    private void packageTopUser(List<SysMachineApplyPageVO> list){
+        if(CollectionUtil.isNotEmpty(list)){
+            List<Integer> userIds = list.stream().map(o ->o.getUserId()).collect(Collectors.toList());
+            R<Map<Integer, SysFeignUserDetailVO>> mapR = remoteKxsUserService.topUserList(userIds, SecurityConstants.FROM_IN);
+            if (mapR.getStatus() == 1) {
+                Map<Integer, SysFeignUserDetailVO> topUserMap = mapR.getData();
+                for(SysMachineApplyPageVO machineApplyPageVO:list){
+                    Integer userId = machineApplyPageVO.getUserId();
+                    if(topUserMap.containsKey(userId)){
+                        SysFeignUserDetailVO sysFeignUserDetailVO = topUserMap.get(userId);
+                        machineApplyPageVO.setTopUserCode(sysFeignUserDetailVO.getTopUserCode());
+                        machineApplyPageVO.setTopUsername(sysFeignUserDetailVO.getTopUsername());
+                    }
+                }
+            }
+        }
+
+    }
+
 }
 

+ 60 - 0
kxs-store/kxs-store-biz/src/main/java/com/kxs/store/biz/service/impl/KxsWarehouseServiceImpl.java

@@ -1,7 +1,10 @@
 package com.kxs.store.biz.service.impl;
 
+import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -12,6 +15,8 @@ import com.kxs.common.core.util.R;
 import com.kxs.common.core.util.RetOps;
 import com.kxs.common.security.util.SecurityUtils;
 import com.kxs.product.api.feign.RemoteKxsProductService;
+import com.kxs.store.api.dto.admin.machine.SysWarehousePageDTO;
+import com.kxs.store.api.dto.admin.machine.WarehouseSearchDTO;
 import com.kxs.store.api.dto.kxsapp.store.StoreSearchListDTO;
 import com.kxs.store.api.model.*;
 import com.kxs.store.api.vo.kxsapp.store.StoreDataVO;
@@ -20,12 +25,15 @@ import com.kxs.store.api.vo.kxsapp.store.StoreSearchListVO;
 import com.kxs.store.biz.constant.enums.MachineOrderStatusEnum;
 import com.kxs.store.biz.mapper.*;
 import com.kxs.store.biz.service.KxsWarehouseService;
+import com.kxs.user.api.dto.admin.user.UserSearchDTO;
 import com.kxs.user.api.feign.RemoteKxsUserService;
 import com.kxs.user.api.model.KxsUser;
 import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * 客小爽仓库表(KxsWarehouse)表服务实现类
@@ -115,6 +123,58 @@ public class KxsWarehouseServiceImpl extends ServiceImpl<KxsWarehouseMapper, Kxs
         return storeDataVO;
     }
 
+    @Override
+    public List<KxsWarehouse> warehousePage(Page page, SysWarehousePageDTO param) {
+        String warehouseAdminNo = param.getWarehouseAdminNo();
+        List<Integer> searchUserIds = param.getWarehouseAdminIds();
+        if(StringUtils.isNotBlank(warehouseAdminNo)){
+            UserSearchDTO userSearchDTO = new UserSearchDTO();
+            userSearchDTO.setUserCode(warehouseAdminNo);
+            List<Integer> userIds = getUserIdsSearch(userSearchDTO);
+            if(CollectionUtil.isNotEmpty(userIds)){
+                if(searchUserIds == null){
+                    searchUserIds = new ArrayList<>();
+                }
+                searchUserIds.addAll(userIds);
+            }else{
+                return new ArrayList<>();
+            }
+        }
+        //设置用户userIds
+        param.setWarehouseAdminIds(searchUserIds);
+        List<KxsWarehouse> list = baseMapper.warehousePage(page, param);
+        if(page != null){
+            page.setRecords(list);
+        }
+        return list;
+    }
+
+    @Override
+    public List<Integer> searchWarehouseList(WarehouseSearchDTO warehouseSearchDTO) {
+        LambdaQueryWrapper<KxsWarehouse> query = new LambdaQueryWrapper();
+        query.like(StringUtils.isNotBlank(warehouseSearchDTO.getWarehouseNo()),KxsWarehouse::getWarehouseNo,warehouseSearchDTO.getWarehouseNo());
+        query.like(StringUtils.isNotBlank(warehouseSearchDTO.getWarehouseUserCode()),KxsWarehouse::getWarehouseUserCode,warehouseSearchDTO.getWarehouseUserCode());
+        query.last("limit 100");
+        List<Integer> ids = new ArrayList<>();
+        List<KxsWarehouse> warehouseList = this.list(query);
+        if(CollectionUtil.isNotEmpty(warehouseList)){
+            ids = warehouseList.stream().map(o -> o.getId()).collect(Collectors.toList());
+        }
+        return ids;
+    }
+
+    /**
+     * 通过条件获取用户id数据
+     * @return
+     */
+    private List<Integer> getUserIdsSearch(UserSearchDTO userSearchDTO){
+        R<List<Integer>> rList = remoteKxsUserService.searchUserList(userSearchDTO, SecurityConstants.FROM_IN);
+        if (rList.getStatus() != 1) {
+            throw new GlobalCustomerException("用户服务请求异常");
+        }else{
+            return rList.getData();
+        }
+    }
 
 }
 

+ 36 - 0
kxs-store/kxs-store-biz/src/main/resources/mapper/KxsMachineApplyMapper.xml

@@ -28,6 +28,13 @@
         <result column="partner_id" property="partnerId"/>
 
     </resultMap>
+
+    <resultMap id="WebKxsMachineApplyMap" extends="KxsMachineApplyMap" type="com.kxs.store.api.vo.admin.machineApply.SysMachineApplyPageVO">
+        <result column="warehouse_name" property="warehouseName"/>
+        <result column="warehouse_no" property="warehouseNo"/>
+        <result column="warehouse_user_name" property="warehouseUserName"/>
+        <result column="warehouse_user_code" property="warehouseUserCode"/>
+    </resultMap>
     <select id="getByPage" resultType="com.kxs.store.api.vo.kxsapp.storeOrder.StoreOrderListVO">
         select a.id, a.create_time, a.order_sn, a.get_mode, a.apply_num, a.contacts, a.phone, a.address, a.apply_type,
         a.status, a.username, a.user_code, a.brand_id, a.brand_name from kxs_machine_apply a
@@ -59,4 +66,33 @@
         order by a.create_time desc
     </select>
 
+    <select id="applyPage" resultMap="WebKxsMachineApplyMap">
+        SELECT
+            kma.*,
+            kw.warehouse_name,
+            kw.warehouse_no,
+            kw.warehouse_user_name,
+            kw.warehouse_user_code
+        FROM
+            kxs_machine_apply kma
+            LEFT JOIN kxs_warehouse kw ON kma.warehouse_id = kw.id
+
+        <where>
+            and kma.del_flag == 0
+            <if test="query.username != null and query.username != ''">
+                <bind name="usernameLike" value="'%'+query.username+'%'"/>
+                AND kma.username LIKE #{usernameLike}
+            </if>
+            <if test="query.orderSn != null and query.orderSn != ''">
+                <bind name="orderSnLike" value="'%'+query.orderSn+'%'"/>
+                AND kma.order_sn LIKE #{orderSnLike}
+            </if>
+            <if test="query.userCode != null and query.userCode != ''">
+                <bind name="userCodeLike" value="'%'+query.userCode+'%'"/>
+                AND kma.user_code LIKE #{userCodeLike}
+            </if>
+        </where>
+        order by kma.create_time desc
+    </select>
+
 </mapper>

+ 32 - 0
kxs-store/kxs-store-biz/src/main/resources/mapper/KxsWarehouseMapper.xml

@@ -63,5 +63,37 @@
           and  warehouse_type &lt; 2
     </select>
 
+    <select id="warehousePage" resultMap="KxsWarehouseMap">
+        SELECT
+            kw.*
+        FROM
+            kxs_warehouse kw
+        <where>
+            and kw.del_flag = 0
+            <if test="query.warehouseNo != null and query.warehouseNo != ''">
+                <bind name="warehouseNoLike" value="'%'+query.warehouseNo+'%'"/>
+                AND kw.warehouse_no LIKE #{warehouseNoLike}
+            </if>
+            <if test="query.warehouseUserName != null and query.warehouseUserName != ''">
+                <bind name="warehouseUserNameLike" value="'%'+query.warehouseUserName+'%'"/>
+                AND kw.warehouse_user_name LIKE #{warehouseUserNameLike}
+            </if>
+            <if test="query.warehouseUserCode != null and query.warehouseUserCode != ''">
+                <bind name="warehouseUserCodeLike" value="'%'+query.warehouseUserCode+'%'"/>
+                AND kw.warehouse_user_code LIKE #{warehouseUserCodeLike}
+            </if>
+            <if test="query.warehouseUserCode != null and query.warehouseUserCode != ''">
+                <bind name="warehouseUserCodeLike" value="'%'+query.warehouseUserCode+'%'"/>
+                AND kw.warehouse_user_code LIKE #{warehouseUserCodeLike}
+            </if>
+            <if test="query.warehouseAdminIds != null and query.warehouseAdminIds.size()>0">
+                and kw.warehouse_admin_id in
+                <foreach collection="query.warehouseAdminIds" item="item" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+        </where>
+    </select>
+
 
 </mapper>

+ 32 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/changeType/SysChangeTypePageDTO.java

@@ -0,0 +1,32 @@
+package com.kxs.user.api.dto.admin.changeType;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+
+/**
+ * 运营管理-筛选分类管理列表-dto
+ *
+ * @author 系统
+ * @date 2024-07-02 14:12:04
+ */
+@Data
+public class SysChangeTypePageDTO {
+
+    /**
+     * 分类名称
+     */
+    @Schema(description = "分类名称")
+    private String name;
+
+
+    /**
+     * 收支类型 1新增 2减少
+     */
+    @Schema(description = "收支类型 1新增 2减少")
+    private String kind;
+
+
+
+
+}

+ 32 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/changeTypeKind/SysChangeTypeKindPageDTO.java

@@ -0,0 +1,32 @@
+package com.kxs.user.api.dto.admin.changeTypeKind;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+
+/**
+ * 运营管理-详细收支明细列表-dto
+ *
+ * @author 系统
+ * @date 2024-07-02 14:12:05
+ */
+@Data
+public class SysChangeTypeKindPageDTO {
+
+    /**
+     * 分类ID
+     */
+    @Schema(description = "分类ID")
+    private Integer changeTypeId;
+
+
+    /**
+     * 类型名称
+     */
+    @Schema(description = "类型名称")
+    private String name;
+
+
+
+
+}

+ 20 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/user/RestPwdDTO.java

@@ -0,0 +1,20 @@
+package com.kxs.user.api.dto.admin.user;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import jakarta.validation.constraints.NotBlank;
+import lombok.Data;
+
+/**
+ * 重置密码-dto
+ * @author debao.yang
+ * @createTime 2024-06-24 16:40
+ */
+@Data
+public class RestPwdDTO {
+
+    @NotBlank(message = "用户id不能为空")
+    @Schema(description = "用户id")
+    private String userId;
+
+    private String password;
+}

+ 53 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/user/SysUserLogoutListDTO.java

@@ -0,0 +1,53 @@
+package com.kxs.user.api.dto.admin.user;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+
+/**
+ * 已注销创客-dto
+ *
+ * @author 系统
+ * @date 2024-06-24 09:30:01
+ */
+@Data
+public class SysUserLogoutListDTO {
+
+    /**
+     * 用户名
+     */
+    @Schema(description = "用户名")
+    private String username;
+
+
+    /**
+     * 手机号
+     */
+    @Schema(description = "手机号")
+    private String phone;
+
+
+    /**
+     * 邀请码
+     */
+    @Schema(description = "邀请码")
+    private String userCode;
+
+
+    /**
+     * 身份证号
+     */
+    @Schema(description = "身份证号")
+    private Object idCard;
+
+
+    /**
+     * 时间区间['time','time']
+     */
+    @Schema(description = "时间区间['time','time']")
+    private Object updateTime;
+
+
+
+
+}

+ 46 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/user/SysUserPageDTO.java

@@ -0,0 +1,46 @@
+package com.kxs.user.api.dto.admin.user;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+
+/**
+ * 创客信息-列表-dto
+ *
+ * @author 系统
+ * @date 2024-06-24 09:30:02
+ */
+@Data
+public class SysUserPageDTO {
+
+    /**
+     * 用户名
+     */
+    @Schema(description = "用户名")
+    private String username;
+
+
+    /**
+     * 手机号
+     */
+    @Schema(description = "手机号")
+    private String phone;
+
+
+    /**
+     * 邀请码
+     */
+    @Schema(description = "邀请码")
+    private String userCode;
+
+
+    /**
+     * 身份证号
+     */
+    @Schema(description = "身份证号")
+    private String idCard;
+
+
+
+
+}

+ 32 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/user/SysUserUnRealUserPageDTO.java

@@ -0,0 +1,32 @@
+package com.kxs.user.api.dto.admin.user;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+
+/**
+ * 未实名开放列表-dto
+ *
+ * @author 系统
+ * @date 2024-06-24 09:30:02
+ */
+@Data
+public class SysUserUnRealUserPageDTO {
+
+    /**
+     * 创客姓名
+     */
+    @Schema(description = "创客姓名")
+    private String username;
+
+
+    /**
+     * 创客编号
+     */
+    @Schema(description = "创客编号")
+    private String userCode;
+
+
+
+
+}

+ 39 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/user/SysUserUserAccountListDTO.java

@@ -0,0 +1,39 @@
+package com.kxs.user.api.dto.admin.user;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+
+/**
+ * 创客账户信息-dto
+ *
+ * @author 系统
+ * @date 2024-06-24 09:30:01
+ */
+@Data
+public class SysUserUserAccountListDTO {
+
+    /**
+     * 用户名
+     */
+    @Schema(description = "用户名")
+    private String username;
+
+
+    /**
+     * 手机号
+     */
+    @Schema(description = "手机号")
+    private String phone;
+
+
+    /**
+     * 邀请码
+     */
+    @Schema(description = "邀请码")
+    private String userCode;
+
+
+
+
+}

+ 39 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/user/SysUserWhereListDTO.java

@@ -0,0 +1,39 @@
+package com.kxs.user.api.dto.admin.user;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import jakarta.validation.constraints.NotBlank;
+import lombok.Data;
+
+
+/**
+ * 创客信息-上下级创客-dto
+ *
+ * @author 系统
+ * @date 2024-06-24 09:30:01
+ */
+@Data
+public class SysUserWhereListDTO {
+
+    /**
+     * 创客ID
+     */
+    @NotBlank(message = "创客ID不能为空")
+    @Schema(description = "创客ID")
+    private String userId;
+
+
+    /**
+     * 0上级创客 1下级直属创客
+     */
+    @Schema(description = "0上级创客 1下级直属创客")
+    private Integer queryType;
+
+    /**
+     * 父id
+     */
+    private Integer pid;
+
+
+
+
+}

+ 22 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/user/UserSearchDTO.java

@@ -0,0 +1,22 @@
+package com.kxs.user.api.dto.admin.user;
+
+import lombok.Data;
+
+/**
+ * @author debao.yang
+ * @createTime 2024-06-27 11:10
+ */
+@Data
+public class UserSearchDTO {
+
+
+    /**
+     * 用户名称
+     */
+    private String username;
+
+    /**
+     * 用户编号
+     */
+    private String userCode;
+}

+ 46 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/userAdvance/SysUserAdvancePageDTO.java

@@ -0,0 +1,46 @@
+package com.kxs.user.api.dto.admin.userAdvance;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+
+/**
+ * 创客预扣款-dto
+ *
+ * @author 系统
+ * @date 2024-06-24 09:30:02
+ */
+@Data
+public class SysUserAdvancePageDTO {
+
+    /**
+     * 预扣款类型 普通预扣款=1  分期预扣款=2 机具过期预扣款=124
+     */
+    @Schema(description = "预扣款类型 普通预扣款=1  分期预扣款=2 机具过期预扣款=124")
+    private Integer advanceType;
+
+
+    /**
+     * 扣款标识 0未扣 1已扣 2撤销|已返还 3暂停扣款
+     */
+    @Schema(description = "扣款标识 0未扣 1已扣 2撤销|已返还 3暂停扣款")
+    private Integer status;
+
+
+    /**
+     * 创客编号
+     */
+    @Schema(description = "创客编号")
+    private Object userCode;
+
+
+    /**
+     * 创客姓名
+     */
+    @Schema(description = "创客姓名")
+    private Object username;
+
+
+
+
+}

+ 32 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/userLevel/SysUserLevelPageDTO.java

@@ -0,0 +1,32 @@
+package com.kxs.user.api.dto.admin.userLevel;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+
+/**
+ * 预设职级-列表-dto
+ *
+ * @author 系统
+ * @date 2024-06-24 09:30:02
+ */
+@Data
+public class SysUserLevelPageDTO {
+
+    /**
+     * 创客编码
+     */
+    @Schema(description = "创客编码")
+    private String userCode;
+
+
+    /**
+     * 结束时间区间['','']
+     */
+    @Schema(description = "结束时间区间['','']")
+    private Object endTime;
+
+
+
+
+}

+ 46 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/dto/admin/userWithdrawal/SysUserWithdrawalPageDTO.java

@@ -0,0 +1,46 @@
+package com.kxs.user.api.dto.admin.userWithdrawal;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+
+/**
+ * 创客提现管理-dto
+ *
+ * @author 系统
+ * @date 2024-06-24 09:30:02
+ */
+@Data
+public class SysUserWithdrawalPageDTO {
+
+    /**
+     * 申请单号
+     */
+    @Schema(description = "申请单号")
+    private String applyNo;
+
+
+    /**
+     * 创客编号
+     */
+    @Schema(description = "创客编号")
+    private Object userCode;
+
+
+    /**
+     * 创客姓名
+     */
+    @Schema(description = "创客姓名")
+    private Object username;
+
+
+    /**
+     * 提现时间区间['','']
+     */
+    @Schema(description = "提现时间区间['','']")
+    private Object createTime;
+
+
+
+
+}

+ 25 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/feign/RemoteKxsUserService.java

@@ -3,8 +3,12 @@ package com.kxs.user.api.feign;
 
 import com.kxs.common.core.constant.SecurityConstants;
 import com.kxs.common.core.util.R;
+import com.kxs.user.api.dto.admin.user.UserSearchDTO;
 import com.kxs.user.api.dto.kxsapp.IntegralStatDTO;
 import com.kxs.user.api.model.*;
+import com.kxs.user.api.vo.admin.user.SysFeignUserDetailVO;
+import com.kxs.user.api.vo.admin.user.SysTopUserVO;
+import com.kxs.user.api.vo.admin.user.SysUserPageVO;
 import com.kxs.user.api.vo.kxsapp.user.RealUserInfoVO;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestHeader;
@@ -14,6 +18,7 @@ import org.springframework.web.service.annotation.GetExchange;
 import org.springframework.web.service.annotation.PostExchange;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * @author Lxq
@@ -181,4 +186,24 @@ public interface RemoteKxsUserService {
 	@GetExchange("/shareholder/prizePoolSynchronization")
 	void prizePoolSynchronization(@RequestParam(value = "para", required = false) String para, @RequestHeader(SecurityConstants.FROM) String from);
 
+
+	/**
+	 * 查询用户id集合(最多100条)
+	 * @param userSearchDTO
+	 * @param from
+	 * @return
+	 */
+	@PostExchange("/sysUser/search/list")
+	R<List<Integer>> searchUserList(@RequestBody UserSearchDTO userSearchDTO, @RequestHeader(SecurityConstants.FROM) String from);
+
+
+	/**
+	 * 通过用户id集合查询
+	 * @param userIds
+	 * @param from
+	 * @return
+	 */
+	@PostExchange("/sysUser/topUser/list")
+	R<Map<Integer, SysFeignUserDetailVO>> topUserList(@RequestBody List<Integer> userIds, @RequestHeader(SecurityConstants.FROM) String from);
+
 }

+ 34 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/vo/admin/user/SysFeignUserDetailVO.java

@@ -0,0 +1,34 @@
+package com.kxs.user.api.vo.admin.user;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+/**
+ * 远程调用返回的用户信息
+ * @author debao.yang
+ * @createTime 2024-06-27 15:48
+ */
+@Data
+public class SysFeignUserDetailVO {
+
+
+    /**
+     * 用户名
+     */
+    private String username;
+    /**
+     * 邀请码
+     */
+    private String userCode;
+
+    /**
+     * 顶级创客姓名
+     */
+    private Object topUsername;
+
+
+    /**
+     * 顶级创客编号
+     */
+    private Object topUserCode;
+}

+ 24 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/vo/admin/user/SysTopUserVO.java

@@ -0,0 +1,24 @@
+package com.kxs.user.api.vo.admin.user;
+
+import com.kxs.user.api.model.KxsUser;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+/**
+ * 顶级创客信息
+ * @author debao.yang
+ * @createTime 2024-06-27 14:33
+ */
+@Data
+public class SysTopUserVO{
+    /**
+     * 顶级创客姓名
+     */
+    private Object topUsername;
+
+
+    /**
+     * 顶级创客编号
+     */
+    private Object topUserCode;
+}

+ 81 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/vo/admin/user/SysUserPageVO.java

@@ -0,0 +1,81 @@
+package com.kxs.user.api.vo.admin.user;
+
+
+import com.kxs.user.api.model.KxsUser;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * 创客信息-列表vo
+ *
+ * @author 系统
+ * @date 2024-06-24 09:30:02
+ */
+@Data
+@Schema(description = "创客信息-列表返回实体")
+public class SysUserPageVO extends KxsUser implements Serializable {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+
+    /**
+     * 实名时间
+     */
+    @Schema(description = "实名时间")
+    private Object realTime;
+
+
+    /**
+     * 上级创客姓名
+     */
+    @Schema(description = "上级创客姓名")
+    private Object pUsername;
+
+
+    /**
+     * 上级创客编码
+     */
+    @Schema(description = "上级创客编码")
+    private Object pUserCode;
+
+
+    /**
+     * 顶级创客姓名
+     */
+    @Schema(description = "顶级创客姓名")
+    private Object topUsername;
+
+
+    /**
+     * 顶级创客编号
+     */
+    @Schema(description = "顶级创客编号")
+    private Object topUserCode;
+
+
+    /**
+     * 是否盟主 1是
+     */
+    @Schema(description = "是否盟主 1是")
+    private Object isLeader;
+
+
+    /**
+     * 是否合伙人 1是
+     */
+    @Schema(description = "是否合伙人 1是")
+    private Object isPartner;
+
+
+
+
+
+	
+
+}

+ 80 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/vo/admin/user/SysUserUserAccountListVO.java

@@ -0,0 +1,80 @@
+package com.kxs.user.api.vo.admin.user;
+
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * 创客账户信息vo
+ *
+ * @author 系统
+ * @date 2024-06-24 09:30:02
+ */
+@Data
+@Schema(description = "创客账户信息返回实体")
+public class SysUserUserAccountListVO implements Serializable {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+
+    /**
+     * 更新时间
+     */
+    @Schema(description = "更新时间")
+    private LocalDateTime updateTime;
+
+
+    /**
+     * 用户名
+     */
+    @Schema(description = "用户名")
+    private String username;
+
+
+    /**
+     * 手机号
+     */
+    @Schema(description = "手机号")
+    private String phone;
+
+
+    /**
+     * 邀请码
+     */
+    @Schema(description = "邀请码")
+    private String userCode;
+
+
+    /**
+     * 备注信息
+     */
+    @Schema(description = "备注信息")
+    private String remark;
+
+
+    /**
+     * 账户余额
+     */
+    @Schema(description = "账户余额")
+    private Object amount;
+
+
+    /**
+     * 0锁定 1正常
+     */
+    @Schema(description = "0锁定 1正常")
+    private Object status;
+
+
+
+
+
+	
+
+}

+ 54 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/vo/admin/userAdvance/SysUserAdvancePageVO.java

@@ -0,0 +1,54 @@
+package com.kxs.user.api.vo.admin.userAdvance;
+
+
+import com.kxs.user.api.model.KxsUserAdvance;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * 创客预扣款vo
+ *
+ * @author 系统
+ * @date 2024-06-24 09:30:02
+ */
+@Data
+@Schema(description = "创客预扣款返回实体")
+public class SysUserAdvancePageVO extends KxsUserAdvance implements Serializable {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+
+    /**
+     * 创客编号
+     */
+    @Schema(description = "创客编号")
+    private Object userCode;
+
+
+    /**
+     * 创客姓名
+     */
+    @Schema(description = "创客姓名")
+    private Object username;
+
+
+    /**
+     * 创客电话
+     */
+    @Schema(description = "创客电话")
+    private Object phone;
+
+
+
+
+
+	
+
+}

+ 47 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/vo/admin/userLevel/SysUserLevelPageVO.java

@@ -0,0 +1,47 @@
+package com.kxs.user.api.vo.admin.userLevel;
+
+
+import com.kxs.user.api.model.KxsUserLevelLog;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * 预设职级-列表vo
+ *
+ * @author 系统
+ * @date 2024-06-24 09:30:02
+ */
+@Data
+@Schema(description = "预设职级-列表返回实体")
+public class SysUserLevelPageVO extends KxsUserLevelLog implements Serializable {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+
+
+    /**
+     * 创客编码
+     */
+    @Schema(description = "创客编码")
+    private Object userCode;
+
+
+    /**
+     * 创客姓名
+     */
+    @Schema(description = "创客姓名")
+    private Object username;
+
+
+
+
+
+	
+
+}

+ 48 - 0
kxs-user/kxs-user-api/src/main/java/com/kxs/user/api/vo/admin/userWithdrawal/SysUserWithdrawalPageVO.java

@@ -0,0 +1,48 @@
+package com.kxs.user.api.vo.admin.userWithdrawal;
+
+
+import com.kxs.user.api.model.KxsUserWithdrawal;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * 创客提现管理vo
+ *
+ * @author 系统
+ * @date 2024-06-24 09:30:02
+ */
+@Data
+@Schema(description = "创客提现管理返回实体")
+public class SysUserWithdrawalPageVO extends KxsUserWithdrawal implements Serializable {
+
+	@Serial
+	private static final long serialVersionUID = 1L;
+
+    /**
+     * 创客编号
+     */
+    @Schema(description = "创客编号")
+    private Object userCode;
+
+
+    /**
+     * 创客姓名
+     */
+    @Schema(description = "创客姓名")
+    private Object username;
+
+
+    /**
+     * 身份证号
+     */
+    @Schema(description = "身份证号")
+    private Object idCard;
+
+
+}

+ 110 - 0
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/controller/admin/SysChangeTypeController.java

@@ -0,0 +1,110 @@
+package com.kxs.user.biz.controller.admin;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.common.core.util.R;
+import com.kxs.common.log.annotation.SysLog;
+import com.kxs.user.api.dto.admin.changeType.SysChangeTypePageDTO;
+import com.kxs.user.api.model.KxsChangeType;
+import com.kxs.user.biz.service.KxsChangeTypeService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ * 收支分类-筛选分类管理
+ *
+ * @author 系统
+ * @since 2024-07-02 14:12:05
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("sysChangeType")
+public class SysChangeTypeController {
+
+    /**
+     * 服务对象
+     */
+    private final KxsChangeTypeService kxsChangeTypeService;
+
+
+
+    /**
+     * 运营管理-筛选分类管理列表
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 运营管理-筛选分类管理列表
+     */
+    @GetMapping("/page")
+    public R page(Page<KxsChangeType> page, SysChangeTypePageDTO param) {
+        kxsChangeTypeService.changeTypePage(page, param);
+        return R.ok(page);
+    }
+
+
+    /**
+     * 运营管理-筛选分类管理编辑
+     *
+     * @param param 实体对象
+     * @return 运营管理-筛选分类管理编辑
+     */
+    @SysLog("筛选分类管理编辑")
+    @PutMapping("/editChangeType")
+    public R editChangeType(@RequestBody KxsChangeType param) {
+        return R.ok(kxsChangeTypeService.updateById(param));
+    }
+
+
+    /**
+     * 运营管理-筛选分类管理删除
+     *
+     * @param id 主键ID
+     * @return 运营管理-筛选分类管理删除
+     */
+    @SysLog("筛选分类管理删除")
+    @DeleteMapping("/deleteById/{id}")
+    public R deleteById(@PathVariable("id") Integer id) {
+        return R.ok(kxsChangeTypeService.removeById(id));
+    }
+
+
+//    /**
+//     * 运营管理-筛选分类管理删除
+//     *
+//     * @param idList 主键ID结合
+//     * @return 运营管理-筛选分类管理删除
+//     */
+//    @SysLog("筛选分类管理删除")
+//    @DeleteMapping()
+//    public R deleteById(@RequestParam("idList") List<Integer> idList) {
+//        return R.ok(kxsChangeTypeService.removeByIds(idList));
+//    }
+
+
+    /**
+     * 运营管理-筛选分类管理新增
+     *
+     * @param param 实体对象
+     * @return 运营管理-筛选分类管理新增
+     */
+    @SysLog("筛选分类管理新增")
+    @PostMapping("/addChangeType")
+    public R addChangeType(@RequestBody KxsChangeType param) {
+        return R.ok(kxsChangeTypeService.save(param));
+    }
+
+
+
+
+
+}
+

+ 107 - 0
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/controller/admin/SysChangeTypeKindController.java

@@ -0,0 +1,107 @@
+package com.kxs.user.biz.controller.admin;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.common.core.util.R;
+import com.kxs.common.log.annotation.SysLog;
+import com.kxs.user.api.dto.admin.changeTypeKind.SysChangeTypeKindPageDTO;
+import com.kxs.user.api.model.KxsChangeTypeKind;
+import com.kxs.user.biz.service.KxsChangeTypeKindService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ * 收支分类-详细收支明细分类
+ *
+ * @author 系统
+ * @since 2024-07-02 14:12:05
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("sysChangeTypeKind")
+public class SysChangeTypeKindController {
+
+    /**
+     * 服务对象
+     */
+    private final KxsChangeTypeKindService kxsChangeTypeKindService;
+
+
+
+    /**
+     * 运营管理-详细收支明细列表
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 运营管理-详细收支明细列表
+     */
+    @GetMapping("/page")
+    public R page(Page<KxsChangeTypeKind> page, SysChangeTypeKindPageDTO param) {
+        kxsChangeTypeKindService.changeTypeKindPage(page, param);
+        return R.ok(page);
+    }
+
+
+    /**
+     * 运营管理-详细收支明细新增
+     *
+     * @param param 实体对象
+     * @return 运营管理-详细收支明细新增
+     */
+    @SysLog("详细收支明细新增")
+    @PostMapping("/addChangeTypeKind")
+    public R addChangeTypeKind(@RequestBody KxsChangeTypeKind param) {
+        return R.ok(kxsChangeTypeKindService.save(param));
+    }
+
+
+    /**
+     * 运营管理-详细收支明细编辑
+     *
+     * @param param 实体对象
+     * @return 运营管理-详细收支明细编辑
+     */
+    @SysLog("详细收支明细编辑")
+    @PutMapping("/editChangeTypeKind")
+    public R editChangeTypeKind(@RequestBody KxsChangeTypeKind param) {
+        return R.ok(kxsChangeTypeKindService.updateById(param));
+    }
+
+    /**
+     * 运营管理-详细收支明细删除
+     *
+     * @param id 主键ID
+     * @return 运营管理-详细收支明细删除
+     */
+    @SysLog("详细收支明细删除")
+    @DeleteMapping("/deleteById/{id}")
+    public R deleteById(@PathVariable("id") Integer id) {
+        return R.ok(kxsChangeTypeKindService.removeById(id));
+    }
+
+//    /**
+//     * 运营管理-详细收支明细删除
+//     *
+//     * @param idList 主键ID结合
+//     * @return 运营管理-详细收支明细删除
+//     */
+//    @DeleteMapping()
+//    public R deleteById(@RequestParam("idList") List<Integer> idList) {
+//        return R.ok(kxsChangeTypeKindService.removeByIds(idList));
+//    }
+
+
+
+
+
+}
+

+ 49 - 0
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/controller/admin/SysUserAdvanceController.java

@@ -0,0 +1,49 @@
+package com.kxs.user.biz.controller.admin;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.common.core.util.R;
+import com.kxs.user.api.dto.admin.userAdvance.SysUserAdvancePageDTO;
+import com.kxs.user.api.vo.admin.userAdvance.SysUserAdvancePageVO;
+import com.kxs.user.biz.service.KxsUserAdvanceService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 创客信息管理(SysUserAdvance)控制层
+ *
+ * @author 系统
+ * @since 2024-06-24 09:30:02
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("sysUserAdvance")
+public class SysUserAdvanceController {
+
+    /**
+     * 服务对象
+     */
+    private final KxsUserAdvanceService kxsUserAdvanceService;
+
+
+
+    /**
+     * 创客预扣款
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 创客预扣款
+     */
+    @GetMapping("/page")
+    public R userAdvancePage(Page<SysUserAdvancePageVO> page, SysUserAdvancePageDTO param) {
+        kxsUserAdvanceService.userAdvancePage(page, param);
+        return R.ok(page);
+    }
+
+
+
+
+
+}
+

+ 249 - 0
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/controller/admin/SysUserController.java

@@ -0,0 +1,249 @@
+package com.kxs.user.biz.controller.admin;
+
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.common.core.constant.SecurityConstants;
+import com.kxs.common.core.constant.enums.UserStatusEnum;
+import com.kxs.common.core.util.R;
+import com.kxs.common.log.annotation.SysLog;
+import com.kxs.common.security.annotation.Inner;
+import com.kxs.user.api.dto.admin.user.RestPwdDTO;
+import com.kxs.user.api.dto.admin.user.SysUserLogoutListDTO;
+import com.kxs.user.api.dto.admin.user.SysUserPageDTO;
+import com.kxs.user.api.dto.admin.user.SysUserUnRealUserPageDTO;
+import com.kxs.user.api.dto.admin.user.SysUserUserAccountListDTO;
+import com.kxs.user.api.dto.admin.user.SysUserWhereListDTO;
+import com.kxs.user.api.dto.admin.user.UserSearchDTO;
+import com.kxs.user.api.model.KxsUser;
+import com.kxs.user.api.vo.admin.user.SysTopUserVO;
+import com.kxs.user.api.vo.admin.user.SysUserPageVO;
+import com.kxs.user.api.vo.admin.user.SysUserUserAccountListVO;
+import com.kxs.user.biz.constant.enums.UserRealStatusEnum;
+import com.kxs.user.biz.service.KxsUserReRealService;
+import com.kxs.user.biz.service.KxsUserService;
+import jakarta.validation.Valid;
+import lombok.RequiredArgsConstructor;
+import org.springdoc.core.annotations.ParameterObject;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestHeader;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 创客信息管理(SysUser)控制层
+ *
+ * @author 系统
+ * @since 2024-06-24 09:30:02
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("sysUser")
+public class SysUserController {
+
+    /**
+     * 服务对象
+     */
+    private final KxsUserService kxsUserService;
+    private final KxsUserReRealService kxsUserReRealService;
+
+
+
+    /**
+     * 创客信息-上下级创客
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 创客信息-上下级创客
+     */
+    @GetMapping("/whereList")
+    public R whereList(Page<SysUserPageVO> page, @Valid SysUserWhereListDTO param) {
+        kxsUserService.getUserWhereList(page, param);
+        return R.ok(page);
+    }
+
+
+    /**
+     * 已注销创客
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 已注销创客
+     */
+    @GetMapping("/logoutList")
+    public R logoutList(Page<KxsUser> page, SysUserLogoutListDTO param) {
+        kxsUserService.getLogoutListPage(page, param);
+        return R.ok(page);
+    }
+
+
+    /**
+     * 创客账户信息
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 创客账户信息
+     */
+    @GetMapping("/userAccountList")
+    public R userAccountList(Page<SysUserUserAccountListVO> page, SysUserUserAccountListDTO param) {
+        kxsUserService.userAccountPage(page, param);
+        return R.ok(page);
+    }
+
+
+    /**
+     * 未实名开放列表
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 未实名开放列表
+     */
+    @GetMapping("/unRealUserPage")
+    public R unRealUserPage(Page<KxsUser> page, SysUserUnRealUserPageDTO param) {
+        return R.ok(kxsUserService.page(page, Wrappers.<KxsUser>lambdaQuery()
+                .eq(KxsUser::getRealStatus, UserRealStatusEnum.NO.getType())
+                .like(StrUtil.isNotEmpty(param.getUsername()),KxsUser::getUsername,param.getUsername())
+                .eq(StrUtil.isNotEmpty(param.getUserCode()), KxsUser::getUserCode, param.getUserCode())));
+    }
+
+
+    /**
+     * 创客信息-列表
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 创客信息-列表
+     */
+    @GetMapping("/page")
+    public R page(Page<SysUserPageVO> page, @ParameterObject SysUserPageDTO param) {
+        kxsUserService.getUserPage(page, param);
+        return R.ok(page);
+    }
+
+
+    /**
+     * 创客信息-注销
+     *
+     * @param userId 创客ID结合
+     * @return 创客信息-注销
+     */
+    @SysLog("创客信息-注销")
+    @DeleteMapping("/logout/{userId}")
+    public R logout(@PathVariable("userId") String userId) {
+        kxsUserService.updateStatusByUserId(userId, UserStatusEnum.REMOVE);
+        return R.ok();
+    }
+
+    /**
+     * 创客信息-注销(批量)
+     *
+     * @param userIdList 创客ID结合
+     * @return 创客信息-注销
+     */
+    @SysLog("创客信息-注销(批量)")
+    @DeleteMapping("/logout/batch")
+    public R batchLogout(@RequestParam("userIdList") List<String> userIdList) {
+        kxsUserService.updateStatusByUserIds(userIdList,UserStatusEnum.REMOVE);
+        return R.ok();
+    }
+
+
+    /**
+     * 创客信息-重置密码
+     *
+     * @param param 实体对象
+     * @return 创客信息-重置密码
+     */
+    @SysLog("创客信息-重置密码")
+    @PutMapping("/restPwd")
+    public R restPwd(@RequestBody RestPwdDTO param) {
+        kxsUserService.restPwd(param);
+        return R.ok();
+    }
+
+
+    /**
+     * 创客信息-锁定
+     *
+     * @param userId 创客ID结合
+     * @return 创客信息-锁定
+     */
+    @SysLog("创客信息-锁定")
+    @DeleteMapping("/lockUser/{userId}")
+    public R lockUser(@PathVariable("userId") String userId) {
+        kxsUserService.updateStatusByUserId(userId,UserStatusEnum.LOCKED);
+        return R.ok();
+    }
+
+    /**
+     * 创客信息-锁定(批量操作)
+     *
+     * @param userIdList 创客ID结合
+     * @return 创客信息-锁定
+     */
+    @SysLog("创客信息-锁定(批量操作)")
+    @DeleteMapping("/lockUser/batch")
+    public R batchLockUser(@RequestParam("userIdList") List<String> userIdList) {
+        kxsUserService.updateStatusByUserIds(userIdList,UserStatusEnum.LOCKED);
+        return R.ok();
+    }
+
+
+//    /**
+//     * 创客信息-交易额查询
+//     *
+//     * @param userCode 邀请码
+//     * @return 创客信息-交易额查询
+//     */
+//    @GetMapping("/{userTradeAmt}")
+//    public R userTradeAmt(@RequestParam("userCode") String userCode) {
+//        return R.ok(kxsUserService.getByUserCode(userCode));
+//    }
+//
+//
+//    /**
+//     * 创客信息-直属创客交易额
+//     *
+//     * @param page 分页对象
+//     * @param param 查询实体
+//     * @return 创客信息-直属创客交易额
+//     */
+//    @GetMapping("/teamTradeAmt")
+//    public R teamTradeAmt(Page<SysUserTeamTradeAmtVO> page, SysUserTeamTradeAmtDTO param) {
+//        return R.ok(kxsUserService.page(page, new QueryWrapper<>(param)));
+//    }
+
+    /**
+     * 通过搜索条件查询用户数据
+     * @param userSearchDTO
+     * @return
+     */
+    @Inner
+    @PostMapping("/search/list")
+    public R searchUserList(@RequestBody UserSearchDTO userSearchDTO) {
+        return R.ok(kxsUserService.searchUserList(userSearchDTO));
+    }
+
+    /**
+     * 通过用户id查询用户数据
+     * @param userIds
+     * @return Map<Integer,SysFeignUserDetailVO>
+     */
+    @Inner
+    @PostMapping("/topUser/list")
+    public R topUserList(@RequestBody List<Integer> userIds){
+        return R.ok(kxsUserService.topUserList(userIds));
+    }
+
+
+}
+

+ 49 - 0
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/controller/admin/SysUserLevelController.java

@@ -0,0 +1,49 @@
+package com.kxs.user.biz.controller.admin;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.common.core.util.R;
+import com.kxs.user.api.dto.admin.userLevel.SysUserLevelPageDTO;
+import com.kxs.user.api.vo.admin.userLevel.SysUserLevelPageVO;
+import com.kxs.user.biz.service.KxsUserLevelLogService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 创客信息管理(SysUserLevel)控制层
+ *
+ * @author 系统
+ * @since 2024-06-24 09:30:02
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("sysUserLevel")
+public class SysUserLevelController {
+
+    /**
+     * 服务对象
+     */
+    private final KxsUserLevelLogService kxsUserLevelLogService;
+
+
+
+    /**
+     * 预设职级-列表
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 预设职级-列表
+     */
+    @GetMapping("/page")
+    public R userLevelPage(Page<SysUserLevelPageVO> page, SysUserLevelPageDTO param) {
+        kxsUserLevelLogService.userLevelPage(page, param);
+        return R.ok(page);
+    }
+
+
+
+
+
+}
+

+ 45 - 0
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/controller/admin/SysUserWithdrawalController.java

@@ -0,0 +1,45 @@
+package com.kxs.user.biz.controller.admin;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.common.core.util.R;
+import com.kxs.user.api.dto.admin.userWithdrawal.SysUserWithdrawalPageDTO;
+import com.kxs.user.api.vo.admin.userWithdrawal.SysUserWithdrawalPageVO;
+import com.kxs.user.biz.service.KxsUserWithdrawalService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 创客信息管理(SysUserWithdrawal)控制层
+ *
+ * @author 系统
+ * @since 2024-06-24 09:30:02
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("sysUserWithdrawal")
+public class SysUserWithdrawalController {
+
+    /**
+     * 服务对象
+     */
+    private final KxsUserWithdrawalService kxsUserWithdrawalService;
+
+
+
+    /**
+     * 创客提现管理
+     *
+     * @param page 分页对象
+     * @param param 查询实体
+     * @return 创客提现管理
+     */
+    @GetMapping("/page")
+    public R userWithdrawalPage(Page<SysUserWithdrawalPageVO> page, SysUserWithdrawalPageDTO param) {
+        kxsUserWithdrawalService.userWithdrawalPage(page, param);
+        return R.ok(page);
+    }
+
+}
+

+ 12 - 0
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/mapper/KxsChangeTypeKindMapper.java

@@ -1,8 +1,13 @@
 package com.kxs.user.biz.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.user.api.dto.admin.changeTypeKind.SysChangeTypeKindPageDTO;
 import com.kxs.user.api.model.KxsChangeTypeKind;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * 收支明细分类明细表(KxsChangeTypeKind)表数据库访问层
@@ -13,5 +18,12 @@ import org.apache.ibatis.annotations.Mapper;
 @Mapper
 public interface KxsChangeTypeKindMapper extends BaseMapper<KxsChangeTypeKind> {
 
+    /**
+     * 分页查询
+     * @param page
+     * @param param
+     * @return
+     */
+    List<KxsChangeTypeKind> changeTypeKindPage(Page page, @Param("query") SysChangeTypeKindPageDTO param);
 }
 

+ 12 - 0
kxs-user/kxs-user-biz/src/main/java/com/kxs/user/biz/mapper/KxsChangeTypeMapper.java

@@ -1,8 +1,13 @@
 package com.kxs.user.biz.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.kxs.user.api.dto.admin.changeType.SysChangeTypePageDTO;
 import com.kxs.user.api.model.KxsChangeType;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * 收支明细分类表(KxsChangeType)表数据库访问层
@@ -13,5 +18,12 @@ import org.apache.ibatis.annotations.Mapper;
 @Mapper
 public interface KxsChangeTypeMapper extends BaseMapper<KxsChangeType> {
 
+    /**
+     * 分页查询
+     * @param page
+     * @param param
+     * @return
+     */
+    List<KxsChangeType> changeTypePage(Page page, @Param("query") SysChangeTypePageDTO param);
 }
 

Unele fișiere nu au fost afișate deoarece prea multe fișiere au fost modificate în acest diff