Browse Source

生成剩余功能代码

ErrorCode整合
数据有效性校验接口demo
master
chenfang 2 years ago
parent
commit
9871ca1ab4
  1. 158
      win-module-wms/win-module-wms-api/src/main/java/com/win/module/wms/enums/ErrorCodeConstants.java
  2. 102
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/BalanceController.java
  3. 121
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/vo/BalanceBaseVO.java
  4. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/vo/BalanceCreateReqVO.java
  5. 120
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/vo/BalanceExcelVO.java
  6. 106
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/vo/BalanceExportReqVO.java
  7. 108
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/vo/BalancePageReqVO.java
  8. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/vo/BalanceRespVO.java
  9. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/vo/BalanceUpdateReqVO.java
  10. 102
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/ContainerDetailController.java
  11. 102
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/ContainerMainController.java
  12. 41
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerDetailBaseVO.java
  13. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerDetailCreateReqVO.java
  14. 45
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerDetailExcelVO.java
  15. 35
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerDetailExportReqVO.java
  16. 37
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerDetailPageReqVO.java
  17. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerDetailRespVO.java
  18. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerDetailUpdateReqVO.java
  19. 38
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerMainBaseVO.java
  20. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerMainCreateReqVO.java
  21. 41
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerMainExcelVO.java
  22. 29
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerMainExportReqVO.java
  23. 31
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerMainPageReqVO.java
  24. 11
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerMainRespVO.java
  25. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerMainUpdateReqVO.java
  26. 102
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/CountJobDetailController.java
  27. 102
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/CountJobMainController.java
  28. 75
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobDetailBaseVO.java
  29. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobDetailCreateReqVO.java
  30. 75
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobDetailExcelVO.java
  31. 70
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobDetailExportReqVO.java
  32. 72
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobDetailPageReqVO.java
  33. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobDetailRespVO.java
  34. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobDetailUpdateReqVO.java
  35. 146
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainBaseVO.java
  36. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainCreateReqVO.java
  37. 143
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainExcelVO.java
  38. 134
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainExportReqVO.java
  39. 136
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainPageReqVO.java
  40. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainRespVO.java
  41. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainUpdateReqVO.java
  42. 102
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/CountPlanDetailController.java
  43. 102
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/CountPlanMainController.java
  44. 62
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanDetailBaseVO.java
  45. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanDetailCreateReqVO.java
  46. 61
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanDetailExcelVO.java
  47. 56
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanDetailExportReqVO.java
  48. 58
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanDetailPageReqVO.java
  49. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanDetailRespVO.java
  50. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanDetailUpdateReqVO.java
  51. 102
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanMainBaseVO.java
  52. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanMainCreateReqVO.java
  53. 100
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanMainExcelVO.java
  54. 94
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanMainExportReqVO.java
  55. 96
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanMainPageReqVO.java
  56. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanMainRespVO.java
  57. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanMainUpdateReqVO.java
  58. 102
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/CountRecordDetailController.java
  59. 102
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/CountRecordMainController.java
  60. 109
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordDetailBaseVO.java
  61. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordDetailCreateReqVO.java
  62. 108
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordDetailExcelVO.java
  63. 101
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordDetailExportReqVO.java
  64. 103
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordDetailPageReqVO.java
  65. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordDetailRespVO.java
  66. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordDetailUpdateReqVO.java
  67. 91
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordMainBaseVO.java
  68. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordMainCreateReqVO.java
  69. 87
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordMainExcelVO.java
  70. 81
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordMainExportReqVO.java
  71. 83
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordMainPageReqVO.java
  72. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordMainRespVO.java
  73. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordMainUpdateReqVO.java
  74. 102
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/CountRequestDetailController.java
  75. 102
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/CountRequestMainController.java
  76. 92
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestDetailBaseVO.java
  77. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestDetailCreateReqVO.java
  78. 91
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestDetailExcelVO.java
  79. 86
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestDetailExportReqVO.java
  80. 88
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestDetailPageReqVO.java
  81. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestDetailRespVO.java
  82. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestDetailUpdateReqVO.java
  83. 86
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainBaseVO.java
  84. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainCreateReqVO.java
  85. 83
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainExcelVO.java
  86. 77
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainExportReqVO.java
  87. 79
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainPageReqVO.java
  88. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainRespVO.java
  89. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainUpdateReqVO.java
  90. 102
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/CountadjustRecordDetailController.java
  91. 102
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/CountadjustRecordMainController.java
  92. 99
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordDetailBaseVO.java
  93. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordDetailCreateReqVO.java
  94. 100
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordDetailExcelVO.java
  95. 91
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordDetailExportReqVO.java
  96. 93
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordDetailPageReqVO.java
  97. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordDetailRespVO.java
  98. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordDetailUpdateReqVO.java
  99. 85
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordMainBaseVO.java
  100. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordMainCreateReqVO.java

158
win-module-wms/win-module-wms-api/src/main/java/com/win/module/wms/enums/ErrorCodeConstants.java

@ -599,6 +599,160 @@ public interface ErrorCodeConstants {
ErrorCode PRODUCTSCRAP_JOB_MAIN_NOT_EXISTS = new ErrorCode(1_000_111_000, "制品报废任务主不存在");
//制品报废任务子ErrorCode
ErrorCode PRODUCTSCRAP_JOB_DETAIL_NOT_EXISTS = new ErrorCode(1_001_110_001, "制品报废任务子不存在");
//制品报废记录ErrorCode
ErrorCode PRODUCTSCRAP_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_111_000, "制品报废记录主不存在");
ErrorCode PRODUCTSCRAP_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_000_111_001, "制品报废记录子不存在");
//制品上架申请ErrorCode
ErrorCode PRODUCTPUTAWAY_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_112_000, "制品上架申请主不存在");
ErrorCode PRODUCTPUTAWAY_REQUEST_DETAIL_NOT_EXISTS = new ErrorCode(1_000_112_001, "制品上架申请子不存在");
//制品上架任务ErrorCode
ErrorCode PRODUCTPUTAWAY_JOB_MAIN_NOT_EXISTS = new ErrorCode(1_000_113_000, "制品上架任务主不存在");
ErrorCode PRODUCTPUTAWAY_JOB_DETAIL_NOT_EXISTS = new ErrorCode(1_000_113_001, "制品上架任务子不存在");
//制品上架任务ErrorCode
ErrorCode PRODUCTPUTAWAY_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_114_000, "制品上架记录主不存在");
ErrorCode PRODUCTPUTAWAY_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_000_114_001, "制品上架记录子不存在");
//下线结算申请ErrorCode
ErrorCode OFFLINESETTLEMENT_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_115_000, "下线结算申请主不存在");
ErrorCode OFFLINESETTLEMENT_REQUEST_DETAIL_NOT_EXISTS = new ErrorCode(1_000_115_001, "下线结算申请子不存在");
//下线结算记录ErrorCode
ErrorCode OFFLINESETTLEMENT_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_116_000, "下线结算记录主不存在");
ErrorCode OFFLINESETTLEMENT_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_000_116_001, "下线结算记录子不存在");
//销售订单ErrorCode
ErrorCode SALE_MAIN_NOT_EXISTS = new ErrorCode(1_000_117_000, "销售订单主不存在");
ErrorCode SALE_DETAIL_NOT_EXISTS = new ErrorCode(1_000_117_001, "销售订单子不存在");
//发货计划ErrorCode
ErrorCode DELIVER_PLAN_MAIN_NOT_EXISTS = new ErrorCode(1_000_118_000, "发货计划主不存在");
ErrorCode DELIVER_PLAN_DETAIL_NOT_EXISTS = new ErrorCode(1_000_118_001, "发货计划子不存在");
//发货申请ErrorCode
ErrorCode DELIVER_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_119_000, "发货申请主不存在");
ErrorCode DELIVER_REQUEST_DETAIL_NOT_EXISTS = new ErrorCode(1_000_119_001, "发货申请子不存在");
//发货任务ErrorCode
ErrorCode DELIVER_JOB_MAIN_NOT_EXISTS = new ErrorCode(1_000_120_000, "发货任务主不存在");
ErrorCode DELIVER_JOB_DETAIL_NOT_EXISTS = new ErrorCode(1_000_120_001, "发货任务子不存在");
//发货记录ErrorCode
ErrorCode DELIVER_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_122_000, "发货记录主不存在");
ErrorCode DELIVER_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_000_122_001, "发货记录子不存在");
//客户收货申请ErrorCode
ErrorCode CUSTOMERRECEIPT_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_122_000, "客户收货申请主不存在");
ErrorCode CUSTOMERRECEIPT_REQUEST_DETAIL_NOT_EXISTS = new ErrorCode(1_000_122_001, "客户收货申请主不存在");
//客户收货记录ErrorCode
ErrorCode CUSTOMERRECEIPT_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_123_000, "客户收货记录主不存在");
ErrorCode CUSTOMERRECEIPT_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_000_123_001, "客户收货记录子不存在");
//客户退货申请ErrorCode
ErrorCode CUSTOMERRETURN_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_124_000, "客户退货申请主不存在");
ErrorCode CUSTOMERRETURN_REQUEST_DETAIL_NOT_EXISTS = new ErrorCode(1_000_124_001, "客户退货申请子不存在");
//客户退货任务ErrorCode
ErrorCode CUSTOMERRETURN_JOB_MAIN_NOT_EXISTS = new ErrorCode(1_000_125_000, "客户退货任务主不存在");
ErrorCode CUSTOMERRETURN_JOB_DETAIL_NOT_EXISTS = new ErrorCode(1_000_125_001, "客户退货任务子不存在");
//客户退货记录ErrorCode
ErrorCode CUSTOMERRETURN_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_126_000, "客户退货记录主不存在");
ErrorCode CUSTOMERRETURN_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_000_126_001, "客户退货记录子不存在");
//客户结算申请ErrorCode
ErrorCode CUSTOMERSETTLE_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_127_000, "客户结算申请主不存在");
ErrorCode CUSTOMERSETTLE_REQUEST_DETAIL_NOT_EXISTS = new ErrorCode(1_000_127_001, "客户结算申请子不存在");
//客户结算记录ErrorCode
ErrorCode CUSTOMERSETTLE_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_128_000, "客户结算记录主不存在");
ErrorCode CUSTOMERSETTLE_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_000_128_001, "客户结算记录子不存在");
//库存初始化申请ErrorCode
ErrorCode INVENTORYINIT_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_129_000, "库存初始化申请主不存在");
ErrorCode INVENTORYINIT_REQUEST_DETAIL_NOT_EXISTS = new ErrorCode(1_000_129_001, "库存初始化申请子不存在");
//库存初始化记录ErrorCode
ErrorCode INVENTORYINIT_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_130_000, "库存初始化记录主不存在");
ErrorCode INVENTORYINIT_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_000_130_001, "库存初始化记录子不存在");
//库存转移申请ErrorCode
ErrorCode INVENTORYMOVE_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_131_000, "库存转移申请主不存在");
ErrorCode INVENTORYMOVE_REQUEST_DETAIL_NOT_EXISTS = new ErrorCode(1_000_131_001, "库存转移申请子不存在");
//库存转移任务ErrorCode
ErrorCode INVENTORYMOVE_JOB_MAIN_NOT_EXISTS = new ErrorCode(1_000_132_000, "库存转移任务主不存在");
ErrorCode INVENTORYMOVE_JOB_DETAIL_NOT_EXISTS = new ErrorCode(1_000_132_001, "库存转移任务子不存在");
//库存转移记录ErrorCode
ErrorCode INVENTORYMOVE_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_133_000, "库存转移记录主不存在");
ErrorCode INVENTORYMOVE_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_000_133_001, "库存转移记录子不存在");
//库存修改申请ErrorCode
ErrorCode INVENTORYCHANGE_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_134_000, "库存修改申请主不存在");
ErrorCode INVENTORYCHANGE_REQUEST_DETAIL_NOT_EXISTS = new ErrorCode(1_000_134_001, "库存修改申请子不存在");
//库存修改记录ErrorCode
ErrorCode INVENTORYCHANGE_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_135_000, "库存修改记录主不存在");
ErrorCode INVENTORYCHANGE_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_000_135_001, "库存修改记录子不存在");
//调拨出库申请ErrorCode
ErrorCode TRANSFERISSUE_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_136_000, "调拨出库申请主不存在");
ErrorCode TRANSFERISSUE_REQUEST_DETAIL_NOT_EXISTS = new ErrorCode(1_000_136_001, "调拨出库申请子不存在");
//调拨出库任务ErrorCode
ErrorCode TRANSFERISSUE_JOB_MAIN_NOT_EXISTS = new ErrorCode(1_000_137_000, "调拨出库任务主不存在");
ErrorCode TRANSFERISSUE_JOB_DETAIL_NOT_EXISTS = new ErrorCode(1_000_138_001, "调拨出库任务子不存在");
//调拨出库记录ErrorCode
ErrorCode TRANSFERISSUE_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_139_000, "调拨出库记录主不存在");
ErrorCode TRANSFERISSUE_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_000_139_001, "调拨出库记录子不存在");
//调拨入库申请ErrorCode
ErrorCode TRANSFERRECEIPT_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_140_000, "调拨入库申请主不存在");
ErrorCode TRANSFERRECEIPT_REQUEST_DETAIL_NOT_EXISTS = new ErrorCode(1_000_140_001, "调拨入库申请子不存在");
//调拨入库任务ErrorCode
ErrorCode TRANSFERRECEIPT_JOB_MAIN_NOT_EXISTS = new ErrorCode(1_000_141_000, "调拨入库任务主不存在");
ErrorCode TRANSFERRECEIPT_JOB_DETAIL_NOT_EXISTS = new ErrorCode(1_000_141_001, "调拨入库任务子不存在");
//调拨入库记录ErrorCode
ErrorCode TRANSFERRECEIPT_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_142_000, "调拨入库记录主不存在");
ErrorCode TRANSFERRECEIPT_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_000_142_001, "调拨入库记录子不存在");
//计划外出库申请ErrorCode
ErrorCode UNPLANNEDISSUE_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_143_000, "计划外出库申请主不存在");
ErrorCode UNPLANNEDISSUE_REQUEST_DETAIL_NOT_EXISTS = new ErrorCode(1_000_143_001, "计划外出库申请子不存在");
//计划外出库任务ErrorCode
ErrorCode UNPLANNEDISSUE_JOB_MAIN_NOT_EXISTS = new ErrorCode(1_000_144_000, "计划外出库任务主不存在");
ErrorCode UNPLANNEDISSUE_JOB_DETAIL_NOT_EXISTS = new ErrorCode(1_000_144_001, "计划外出库任务子不存在");
//计划外出库记录ErrorCode
ErrorCode UNPLANNEDISSUE_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_145_000, "计划外出库记录主不存在");
ErrorCode UNPLANNEDISSUE_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_000_145_001, "计划外出库记录子不存在");
//计划外入库申请ErrorCode
ErrorCode UNPLANNEDRECEIPT_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_146_000, "计划外入库申请主不存在");
ErrorCode UNPLANNEDRECEIPT_REQUEST_DETAIL_NOT_EXISTS = new ErrorCode(1_000_146_001, "计划外入库申请子不存在");
//计划外入库任务ErrorCode
ErrorCode UNPLANNEDRECEIPT_JOB_MAIN_NOT_EXISTS = new ErrorCode(1_000_147_000, "计划外入库任务主不存在");
ErrorCode UNPLANNEDRECEIPT_JOB_DETAIL_NOT_EXISTS = new ErrorCode(1_000_147_001, "计划外入库任务子不存在");
//计划外入库记录ErrorCode
ErrorCode UNPLANNEDRECEIPT_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_148_000, "计划外入库记录主不存在");
ErrorCode UNPLANNEDRECEIPT_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_000_148_001, "计划外入库记录子不存在");
//报废出库申请ErrorCode
ErrorCode SCRAP_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_149_000, "报废出库申请主不存在");
ErrorCode SCRAP_REQUEST_DETAIL_NOT_EXISTS = new ErrorCode(1_000_149_001, "报废出库申请子不存在");
//报废出库任务ErrorCode
ErrorCode SCRAP_JOB_MAIN_NOT_EXISTS = new ErrorCode(1_000_150_000, "报废出库任务主不存在");
ErrorCode SCRAP_JOB_DETAIL_NOT_EXISTS = new ErrorCode(1_000_150_001, "报废出库任务子不存在");
//报废出库记录ErrorCode
ErrorCode SCRAP_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_151_000, "报废出库记录主不存在");
ErrorCode SCRAP_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_000_151_001, "报废出库记录子不存在");
//盘点计划ErrorCode
ErrorCode COUNT_PLAN_MAIN_NOT_EXISTS = new ErrorCode(1_000_152_000, "盘点计划主不存在");
ErrorCode COUNT_PLAN_DETAIL_NOT_EXISTS = new ErrorCode(1_000_152_001, "盘点计划子不存在");
//盘点申请ErrorCode
ErrorCode COUNT_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_153_000, "盘点申请主不存在");
ErrorCode COUNT_REQUEST_DETAIL_NOT_EXISTS = new ErrorCode(1_000_153_001, "盘点申请子不存在");
//盘点任务ErrorCode
ErrorCode COUNT_JOB_MAIN_NOT_EXISTS = new ErrorCode(1_000_154_000, "盘点任务主不存在");
ErrorCode COUNT_JOB_DETAIL_NOT_EXISTS = new ErrorCode(1_000_154_001, "盘点任务子不存在");
//盘点申请ErrorCode
ErrorCode COUNT_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_155_000, "盘点申请主不存在");
ErrorCode COUNT_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_000_155_001, "盘点申请子不存在");
//盘点调整申请ErrorCode
ErrorCode COUNTADJUST_REQUEST_MAIN_NOT_EXISTS = new ErrorCode(1_000_156_000, "盘点调整申请主不存在");
ErrorCode COUNTADJUST_REQUEST_DETAIL_NOT_EXISTS = new ErrorCode(1_000_156_001, "盘点调整申请子不存在");
//盘点调整记录ErrorCode
ErrorCode COUNTADJUST_RECORD_MAIN_NOT_EXISTS = new ErrorCode(1_000_157_000, "盘点调整记录主不存在");
ErrorCode COUNTADJUST_RECORD_DETAIL_NOT_EXISTS = new ErrorCode(1_000_157_001, "盘点调整记录子不存在");
//库位容量ErrorCode
ErrorCode LOCATIONCAPACITY_NOT_EXISTS = new ErrorCode(1_000_158_000, "库位容量不存在");
//器具ErrorCode
ErrorCode CONTAINER_MAIN_NOT_EXISTS = new ErrorCode(1_000_159_000, "器具主不存在");
ErrorCode CONTAINER_DETAIL_NOT_EXISTS = new ErrorCode(1_000_159_001, "器具子不存在");
//包装ErrorCode
ErrorCode PACKAGE_NOT_EXISTS = new ErrorCode(1_000_160_000, "包装不存在");
//预计出库存ErrorCode
ErrorCode EXPECTOUT_NOT_EXISTS = new ErrorCode(1_000_161_000, "预计出库存不存在");
//预计入库存ErrorCode
ErrorCode EXPECTIN_NOT_EXISTS = new ErrorCode(1_000_162_000, "预计入库存不存在");
//库存余额ErrorCode
ErrorCode BALANCE_NOT_EXISTS = new ErrorCode(1_000_163_000, "库存余额不存在");
//库存事务ErrorCode
ErrorCode TRANSACTION_NOT_EXISTS = new ErrorCode(1_000_164_000, "库存事务不存在");
//库存事务ErrorCode
ErrorCode TRANSFERLOG_NOT_EXISTS = new ErrorCode(1_000_165_000, "库存转移日志不存在");
}

102
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/BalanceController.java

@ -0,0 +1,102 @@
package com.win.module.wms.controller.balance;
import com.win.module.wms.controller.balance.vo.*;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import javax.validation.*;
import javax.servlet.http.*;
import java.util.*;
import java.io.IOException;
import com.win.framework.common.pojo.PageResult;
import com.win.framework.common.pojo.CommonResult;
import static com.win.framework.common.pojo.CommonResult.success;
import com.win.framework.excel.core.util.ExcelUtils;
import com.win.framework.operatelog.core.annotations.OperateLog;
import static com.win.framework.operatelog.core.enums.OperateTypeEnum.*;
import com.win.module.wms.controller.balance.vo.*;
import com.win.module.wms.dal.dataobject.balance.BalanceDO;
import com.win.module.wms.convert.balance.BalanceConvert;
import com.win.module.wms.service.balance.BalanceService;
@Tag(name = "管理后台 - 库存余额")
@RestController
@RequestMapping("/wms/balance")
@Validated
public class BalanceController {
@Resource
private BalanceService balanceService;
@PostMapping("/create")
@Operation(summary = "创建库存余额")
@PreAuthorize("@ss.hasPermission('wms:balance:create')")
public CommonResult<String> createBalance(@Valid @RequestBody BalanceCreateReqVO createReqVO) {
return success(balanceService.createBalance(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新库存余额")
@PreAuthorize("@ss.hasPermission('wms:balance:update')")
public CommonResult<Boolean> updateBalance(@Valid @RequestBody BalanceUpdateReqVO updateReqVO) {
balanceService.updateBalance(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除库存余额")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:balance:delete')")
public CommonResult<Boolean> deleteBalance(@RequestParam("id") Long id) {
balanceService.deleteBalance(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得库存余额")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('wms:balance:query')")
public CommonResult<BalanceRespVO> getBalance(@RequestParam("id") String id) {
BalanceDO balance = balanceService.getBalance(id);
return success(BalanceConvert.INSTANCE.convert(balance));
}
@GetMapping("/list")
@Operation(summary = "获得库存余额列表")
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
@PreAuthorize("@ss.hasPermission('wms:balance:query')")
public CommonResult<List<BalanceRespVO>> getBalanceList(@RequestParam("ids") Collection<String> ids) {
List<BalanceDO> list = balanceService.getBalanceList(ids);
return success(BalanceConvert.INSTANCE.convertList(list));
}
@GetMapping("/page")
@Operation(summary = "获得库存余额分页")
@PreAuthorize("@ss.hasPermission('wms:balance:query')")
public CommonResult<PageResult<BalanceRespVO>> getBalancePage(@Valid BalancePageReqVO pageVO) {
PageResult<BalanceDO> pageResult = balanceService.getBalancePage(pageVO);
return success(BalanceConvert.INSTANCE.convertPage(pageResult));
}
@GetMapping("/export-excel")
@Operation(summary = "导出库存余额 Excel")
@PreAuthorize("@ss.hasPermission('wms:balance:export')")
@OperateLog(type = EXPORT)
public void exportBalanceExcel(@Valid BalanceExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<BalanceDO> list = balanceService.getBalanceList(exportReqVO);
// 导出 Excel
List<BalanceExcelVO> datas = BalanceConvert.INSTANCE.convertList02(list);
ExcelUtils.write(response, "库存余额.xls", "数据", BalanceExcelVO.class, datas);
}
}

121
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/vo/BalanceBaseVO.java

@ -0,0 +1,121 @@
package com.win.module.wms.controller.balance.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
/**
* 库存余额 Base VO提供给添加修改详细的子 VO 使用
* 如果子 VO 存在差异的字段请不要添加到这里影响 Swagger 文档生成
*/
@Data
public class BalanceBaseVO {
@Schema(description = "id", example = "id")
private Long id;
@Schema(description = "包装号")
private String packingNumber;
@Schema(description = "器具代码")
private String containerNumber;
@Schema(description = "物料代码")
private String itemCode;
@Schema(description = "批次")
private String batch;
@Schema(description = "替代批次")
private String altBatch;
@Schema(description = "到货日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime arriveDate;
@Schema(description = "生产日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime produceDate;
@Schema(description = "失效日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime expireDate;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "库位代码")
private String locationCode;
@Schema(description = "库位组代码")
private String locationGroupCode;
@Schema(description = "库区代码")
private String areaCode;
@Schema(description = "仓库代码")
private String warehouseCode;
@Schema(description = "ERP库位代码")
private String erpLocationCode;
@Schema(description = "货主代码")
private String ownerCode;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "数量")
private BigDecimal qty;
@Schema(description = "锁定数量")
private BigDecimal lockedQty;
@Schema(description = "可用数量")
private BigDecimal usableQty;
@Schema(description = "单价")
private BigDecimal singlePrice;
@Schema(description = "金额")
private BigDecimal amount;
@Schema(description = "入库时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime putInTime;
@Schema(description = "是否冻结")
private String frozen;
@Schema(description = "冻结原因")
private String frozenReason;
@Schema(description = "最后事务号")
private String lastTransNumber;
@Schema(description = "重量")
private BigDecimal weight;
@Schema(description = "面积")
private BigDecimal area;
@Schema(description = "体积")
private BigDecimal volume;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/vo/BalanceCreateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.balance.vo;
import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "管理后台 - 库存余额创建 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class BalanceCreateReqVO extends BalanceBaseVO {
}

120
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/vo/BalanceExcelVO.java

@ -0,0 +1,120 @@
package com.win.module.wms.controller.balance.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import com.alibaba.excel.annotation.ExcelProperty;
import com.win.framework.excel.core.annotations.DictFormat;
import com.win.framework.excel.core.convert.DictConvert;
/**
* 库存余额 Excel VO
*
* @author 超级管理员
*/
@Data
public class BalanceExcelVO {
@ExcelProperty("包装号")
private String packingNumber;
@ExcelProperty("器具代码")
private String containerNumber;
@ExcelProperty("物料代码")
private String itemCode;
@ExcelProperty("批次")
private String batch;
@ExcelProperty("替代批次")
private String altBatch;
@ExcelProperty("到货日期")
private LocalDateTime arriveDate;
@ExcelProperty("生产日期")
private LocalDateTime produceDate;
@ExcelProperty("失效日期")
private LocalDateTime expireDate;
@ExcelProperty(value = "库存状态", converter = DictConvert.class)
@DictFormat("inventory_status") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String inventoryStatus;
@ExcelProperty("库位代码")
private String locationCode;
@ExcelProperty("库位组代码")
private String locationGroupCode;
@ExcelProperty("库区代码")
private String areaCode;
@ExcelProperty("仓库代码")
private String warehouseCode;
@ExcelProperty("ERP库位代码")
private String erpLocationCode;
@ExcelProperty("货主代码")
private String ownerCode;
@ExcelProperty(value = "计量单位", converter = DictConvert.class)
@DictFormat("uom") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String uom;
@ExcelProperty("数量")
private BigDecimal qty;
@ExcelProperty("锁定数量")
private BigDecimal lockedQty;
@ExcelProperty("可用数量")
private BigDecimal usableQty;
@ExcelProperty("单价")
private BigDecimal singlePrice;
@ExcelProperty("金额")
private BigDecimal amount;
@ExcelProperty("入库时间")
private LocalDateTime putInTime;
@ExcelProperty(value = "是否冻结", converter = DictConvert.class)
@DictFormat("true_false") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String frozen;
@ExcelProperty(value = "冻结原因", converter = DictConvert.class)
@DictFormat("frozen_reason") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String frozenReason;
@ExcelProperty("最后事务号")
private String lastTransNumber;
@ExcelProperty("重量")
private BigDecimal weight;
@ExcelProperty("面积")
private BigDecimal area;
@ExcelProperty("体积")
private BigDecimal volume;
}

106
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/vo/BalanceExportReqVO.java

@ -0,0 +1,106 @@
package com.win.module.wms.controller.balance.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import java.time.LocalDateTime;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 库存余额 Excel 导出 Request VO,参数和 BalancePageReqVO 是一致的")
@Data
public class BalanceExportReqVO {
@Schema(description = "包装号")
private String packingNumber;
@Schema(description = "器具代码")
private String containerNumber;
@Schema(description = "物料代码")
private String itemCode;
@Schema(description = "批次")
private String batch;
@Schema(description = "替代批次")
private String altBatch;
@Schema(description = "到货日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] arriveDate;
@Schema(description = "生产日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] produceDate;
@Schema(description = "失效日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] expireDate;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "库位代码")
private String locationCode;
@Schema(description = "库位组代码")
private String locationGroupCode;
@Schema(description = "库区代码")
private String areaCode;
@Schema(description = "仓库代码")
private String warehouseCode;
@Schema(description = "ERP库位代码")
private String erpLocationCode;
@Schema(description = "货主代码")
private String ownerCode;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "数量")
private BigDecimal qty;
@Schema(description = "锁定数量")
private BigDecimal lockedQty;
@Schema(description = "可用数量")
private BigDecimal usableQty;
@Schema(description = "单价")
private BigDecimal singlePrice;
@Schema(description = "金额")
private BigDecimal amount;
@Schema(description = "入库时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] putInTime;
@Schema(description = "是否冻结")
private String frozen;
@Schema(description = "冻结原因")
private String frozenReason;
@Schema(description = "最后事务号")
private String lastTransNumber;
@Schema(description = "重量")
private BigDecimal weight;
@Schema(description = "面积")
private BigDecimal area;
@Schema(description = "体积")
private BigDecimal volume;
}

108
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/vo/BalancePageReqVO.java

@ -0,0 +1,108 @@
package com.win.module.wms.controller.balance.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 库存余额分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class BalancePageReqVO extends PageParam {
@Schema(description = "包装号")
private String packingNumber;
@Schema(description = "器具代码")
private String containerNumber;
@Schema(description = "物料代码")
private String itemCode;
@Schema(description = "批次")
private String batch;
@Schema(description = "替代批次")
private String altBatch;
@Schema(description = "到货日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] arriveDate;
@Schema(description = "生产日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] produceDate;
@Schema(description = "失效日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] expireDate;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "库位代码")
private String locationCode;
@Schema(description = "库位组代码")
private String locationGroupCode;
@Schema(description = "库区代码")
private String areaCode;
@Schema(description = "仓库代码")
private String warehouseCode;
@Schema(description = "ERP库位代码")
private String erpLocationCode;
@Schema(description = "货主代码")
private String ownerCode;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "数量")
private BigDecimal qty;
@Schema(description = "锁定数量")
private BigDecimal lockedQty;
@Schema(description = "可用数量")
private BigDecimal usableQty;
@Schema(description = "单价")
private BigDecimal singlePrice;
@Schema(description = "金额")
private BigDecimal amount;
@Schema(description = "入库时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] putInTime;
@Schema(description = "是否冻结")
private String frozen;
@Schema(description = "冻结原因")
private String frozenReason;
@Schema(description = "最后事务号")
private String lastTransNumber;
@Schema(description = "重量")
private BigDecimal weight;
@Schema(description = "面积")
private BigDecimal area;
@Schema(description = "体积")
private BigDecimal volume;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/vo/BalanceRespVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.balance.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 库存余额 Response VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class BalanceRespVO extends BalanceBaseVO {
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/vo/BalanceUpdateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.balance.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 库存余额更新 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class BalanceUpdateReqVO extends BalanceBaseVO {
}

102
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/ContainerDetailController.java

@ -0,0 +1,102 @@
package com.win.module.wms.controller.container;
import com.win.module.wms.controller.container.vo.*;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import javax.validation.*;
import javax.servlet.http.*;
import java.util.*;
import java.io.IOException;
import com.win.framework.common.pojo.PageResult;
import com.win.framework.common.pojo.CommonResult;
import static com.win.framework.common.pojo.CommonResult.success;
import com.win.framework.excel.core.util.ExcelUtils;
import com.win.framework.operatelog.core.annotations.OperateLog;
import static com.win.framework.operatelog.core.enums.OperateTypeEnum.*;
import com.win.module.wms.controller.container.vo.*;
import com.win.module.wms.dal.dataobject.container.ContainerDetailDO;
import com.win.module.wms.convert.container.ContainerDetailConvert;
import com.win.module.wms.service.container.ContainerDetailService;
@Tag(name = "管理后台 - 器具子")
@RestController
@RequestMapping("/wms/container-detail")
@Validated
public class ContainerDetailController {
@Resource
private ContainerDetailService containerDetailService;
@PostMapping("/create")
@Operation(summary = "创建器具子")
@PreAuthorize("@ss.hasPermission('wms:container-detail:create')")
public CommonResult<String> createContainerDetail(@Valid @RequestBody ContainerDetailCreateReqVO createReqVO) {
return success(containerDetailService.createContainerDetail(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新器具子")
@PreAuthorize("@ss.hasPermission('wms:container-detail:update')")
public CommonResult<Boolean> updateContainerDetail(@Valid @RequestBody ContainerDetailUpdateReqVO updateReqVO) {
containerDetailService.updateContainerDetail(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除器具子")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:container-detail:delete')")
public CommonResult<Boolean> deleteContainerDetail(@RequestParam("id") Long id) {
containerDetailService.deleteContainerDetail(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得器具子")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('wms:container-detail:query')")
public CommonResult<ContainerDetailRespVO> getContainerDetail(@RequestParam("id") String id) {
ContainerDetailDO containerDetail = containerDetailService.getContainerDetail(id);
return success(ContainerDetailConvert.INSTANCE.convert(containerDetail));
}
@GetMapping("/list")
@Operation(summary = "获得器具子列表")
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
@PreAuthorize("@ss.hasPermission('wms:container-detail:query')")
public CommonResult<List<ContainerDetailRespVO>> getContainerDetailList(@RequestParam("ids") Collection<String> ids) {
List<ContainerDetailDO> list = containerDetailService.getContainerDetailList(ids);
return success(ContainerDetailConvert.INSTANCE.convertList(list));
}
@GetMapping("/page")
@Operation(summary = "获得器具子分页")
@PreAuthorize("@ss.hasPermission('wms:container-detail:query')")
public CommonResult<PageResult<ContainerDetailRespVO>> getContainerDetailPage(@Valid ContainerDetailPageReqVO pageVO) {
PageResult<ContainerDetailDO> pageResult = containerDetailService.getContainerDetailPage(pageVO);
return success(ContainerDetailConvert.INSTANCE.convertPage(pageResult));
}
@GetMapping("/export-excel")
@Operation(summary = "导出器具子 Excel")
@PreAuthorize("@ss.hasPermission('wms:container-detail:export')")
@OperateLog(type = EXPORT)
public void exportContainerDetailExcel(@Valid ContainerDetailExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<ContainerDetailDO> list = containerDetailService.getContainerDetailList(exportReqVO);
// 导出 Excel
List<ContainerDetailExcelVO> datas = ContainerDetailConvert.INSTANCE.convertList02(list);
ExcelUtils.write(response, "器具子.xls", "数据", ContainerDetailExcelVO.class, datas);
}
}

102
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/ContainerMainController.java

@ -0,0 +1,102 @@
package com.win.module.wms.controller.container;
import com.win.module.wms.controller.container.vo.*;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import javax.validation.*;
import javax.servlet.http.*;
import java.util.*;
import java.io.IOException;
import com.win.framework.common.pojo.PageResult;
import com.win.framework.common.pojo.CommonResult;
import static com.win.framework.common.pojo.CommonResult.success;
import com.win.framework.excel.core.util.ExcelUtils;
import com.win.framework.operatelog.core.annotations.OperateLog;
import static com.win.framework.operatelog.core.enums.OperateTypeEnum.*;
import com.win.module.wms.controller.container.vo.*;
import com.win.module.wms.dal.dataobject.container.ContainerMainDO;
import com.win.module.wms.convert.container.ContainerMainConvert;
import com.win.module.wms.service.container.ContainerMainService;
@Tag(name = "管理后台 - 器具主")
@RestController
@RequestMapping("/wms/container-main")
@Validated
public class ContainerMainController {
@Resource
private ContainerMainService containerMainService;
@PostMapping("/create")
@Operation(summary = "创建器具主")
@PreAuthorize("@ss.hasPermission('wms:container-main:create')")
public CommonResult<String> createContainerMain(@Valid @RequestBody ContainerMainCreateReqVO createReqVO) {
return success(containerMainService.createContainerMain(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新器具主")
@PreAuthorize("@ss.hasPermission('wms:container-main:update')")
public CommonResult<Boolean> updateContainerMain(@Valid @RequestBody ContainerMainUpdateReqVO updateReqVO) {
containerMainService.updateContainerMain(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除器具主")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:container-main:delete')")
public CommonResult<Boolean> deleteContainerMain(@RequestParam("id") Long id) {
containerMainService.deleteContainerMain(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得器具主")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('wms:container-main:query')")
public CommonResult<ContainerMainRespVO> getContainerMain(@RequestParam("id") String id) {
ContainerMainDO containerMain = containerMainService.getContainerMain(id);
return success(ContainerMainConvert.INSTANCE.convert(containerMain));
}
@GetMapping("/list")
@Operation(summary = "获得器具主列表")
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
@PreAuthorize("@ss.hasPermission('wms:container-main:query')")
public CommonResult<List<ContainerMainRespVO>> getContainerMainList(@RequestParam("ids") Collection<String> ids) {
List<ContainerMainDO> list = containerMainService.getContainerMainList(ids);
return success(ContainerMainConvert.INSTANCE.convertList(list));
}
@GetMapping("/page")
@Operation(summary = "获得器具主分页")
@PreAuthorize("@ss.hasPermission('wms:container-main:query')")
public CommonResult<PageResult<ContainerMainRespVO>> getContainerMainPage(@Valid ContainerMainPageReqVO pageVO) {
PageResult<ContainerMainDO> pageResult = containerMainService.getContainerMainPage(pageVO);
return success(ContainerMainConvert.INSTANCE.convertPage(pageResult));
}
@GetMapping("/export-excel")
@Operation(summary = "导出器具主 Excel")
@PreAuthorize("@ss.hasPermission('wms:container-main:export')")
@OperateLog(type = EXPORT)
public void exportContainerMainExcel(@Valid ContainerMainExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<ContainerMainDO> list = containerMainService.getContainerMainList(exportReqVO);
// 导出 Excel
List<ContainerMainExcelVO> datas = ContainerMainConvert.INSTANCE.convertList02(list);
ExcelUtils.write(response, "器具主.xls", "数据", ContainerMainExcelVO.class, datas);
}
}

41
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerDetailBaseVO.java

@ -0,0 +1,41 @@
package com.win.module.wms.controller.container.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import javax.validation.constraints.*;
/**
* 器具子 Base VO提供给添加修改详细的子 VO 使用
* 如果子 VO 存在差异的字段请不要添加到这里影响 Swagger 文档生成
*/
@Data
public class ContainerDetailBaseVO {
@Schema(description = "id", example = "id")
private Long id;
@Schema(description = "内容物类型", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "内容物类型不能为空")
private String containerContentType;
@Schema(description = "内容物号")
private String contentNumber;
@Schema(description = "物料代码")
private String itemCode;
@Schema(description = "批次")
private String batch;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "数量")
private BigDecimal qty;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerDetailCreateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.container.vo;
import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "管理后台 - 器具子创建 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class ContainerDetailCreateReqVO extends ContainerDetailBaseVO {
}

45
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerDetailExcelVO.java

@ -0,0 +1,45 @@
package com.win.module.wms.controller.container.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import com.alibaba.excel.annotation.ExcelProperty;
import com.win.framework.excel.core.annotations.DictFormat;
import com.win.framework.excel.core.convert.DictConvert;
/**
* 器具子 Excel VO
*
* @author 超级管理员
*/
@Data
public class ContainerDetailExcelVO {
@ExcelProperty(value = "内容物类型", converter = DictConvert.class)
@DictFormat("container_content_type") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String containerContentType;
@ExcelProperty("内容物号")
private String contentNumber;
@ExcelProperty("物料代码")
private String itemCode;
@ExcelProperty("批次")
private String batch;
@ExcelProperty(value = "库存状态", converter = DictConvert.class)
@DictFormat("inventory_status") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String inventoryStatus;
@ExcelProperty(value = "计量单位", converter = DictConvert.class)
@DictFormat("uom") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String uom;
@ExcelProperty("数量")
private BigDecimal qty;
}

35
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerDetailExportReqVO.java

@ -0,0 +1,35 @@
package com.win.module.wms.controller.container.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
@Schema(description = "管理后台 - 器具子 Excel 导出 Request VO,参数和 ContainerDetailPageReqVO 是一致的")
@Data
public class ContainerDetailExportReqVO {
@Schema(description = "内容物类型")
private String containerContentType;
@Schema(description = "内容物号")
private String contentNumber;
@Schema(description = "物料代码")
private String itemCode;
@Schema(description = "批次")
private String batch;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "数量")
private BigDecimal qty;
}

37
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerDetailPageReqVO.java

@ -0,0 +1,37 @@
package com.win.module.wms.controller.container.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
@Schema(description = "管理后台 - 器具子分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class ContainerDetailPageReqVO extends PageParam {
@Schema(description = "内容物类型")
private String containerContentType;
@Schema(description = "内容物号")
private String contentNumber;
@Schema(description = "物料代码")
private String itemCode;
@Schema(description = "批次")
private String batch;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "数量")
private BigDecimal qty;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerDetailRespVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.container.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 器具子 Response VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class ContainerDetailRespVO extends ContainerDetailBaseVO {
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerDetailUpdateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.container.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 器具子更新 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class ContainerDetailUpdateReqVO extends ContainerDetailBaseVO {
}

38
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerMainBaseVO.java

@ -0,0 +1,38 @@
package com.win.module.wms.controller.container.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import javax.validation.constraints.*;
/**
* 器具主 Base VO提供给添加修改详细的子 VO 使用
* 如果子 VO 存在差异的字段请不要添加到这里影响 Swagger 文档生成
*/
@Data
public class ContainerMainBaseVO {
@Schema(description = "id", example = "id")
private Long id;
@Schema(description = "号码", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "号码不能为空")
private String number;
@Schema(description = "类型", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "类型不能为空")
private String type;
@Schema(description = "总容量")
private BigDecimal capacity;
@Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "状态不能为空")
private String status;
@Schema(description = "货主代码", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "货主代码不能为空")
private String ownerCode;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerMainCreateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.container.vo;
import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "管理后台 - 器具主创建 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class ContainerMainCreateReqVO extends ContainerMainBaseVO {
}

41
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerMainExcelVO.java

@ -0,0 +1,41 @@
package com.win.module.wms.controller.container.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import com.alibaba.excel.annotation.ExcelProperty;
import com.win.framework.excel.core.annotations.DictFormat;
import com.win.framework.excel.core.convert.DictConvert;
/**
* 器具主 Excel VO
*
* @author 超级管理员
*/
@Data
public class ContainerMainExcelVO {
@ExcelProperty("id")
private String id;
@ExcelProperty("号码")
private String number;
@ExcelProperty(value = "类型", converter = DictConvert.class)
@DictFormat("container_type") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String type;
@ExcelProperty("总容量")
private BigDecimal capacity;
@ExcelProperty(value = "状态", converter = DictConvert.class)
@DictFormat("container_status") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String status;
@ExcelProperty("货主代码")
private String ownerCode;
}

29
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerMainExportReqVO.java

@ -0,0 +1,29 @@
package com.win.module.wms.controller.container.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
@Schema(description = "管理后台 - 器具主 Excel 导出 Request VO,参数和 ContainerMainPageReqVO 是一致的")
@Data
public class ContainerMainExportReqVO {
@Schema(description = "号码")
private String number;
@Schema(description = "类型")
private String type;
@Schema(description = "总容量")
private BigDecimal capacity;
@Schema(description = "状态")
private String status;
@Schema(description = "货主代码")
private String ownerCode;
}

31
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerMainPageReqVO.java

@ -0,0 +1,31 @@
package com.win.module.wms.controller.container.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
@Schema(description = "管理后台 - 器具主分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class ContainerMainPageReqVO extends PageParam {
@Schema(description = "号码")
private String number;
@Schema(description = "类型")
private String type;
@Schema(description = "总容量")
private BigDecimal capacity;
@Schema(description = "状态")
private String status;
@Schema(description = "货主代码")
private String ownerCode;
}

11
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerMainRespVO.java

@ -0,0 +1,11 @@
package com.win.module.wms.controller.container.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 器具主 Response VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class ContainerMainRespVO extends ContainerMainBaseVO {
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/container/vo/ContainerMainUpdateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.container.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 器具主更新 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class ContainerMainUpdateReqVO extends ContainerMainBaseVO {
}

102
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/CountJobDetailController.java

@ -0,0 +1,102 @@
package com.win.module.wms.controller.countJob;
import com.win.module.wms.controller.countJob.vo.*;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import javax.validation.*;
import javax.servlet.http.*;
import java.util.*;
import java.io.IOException;
import com.win.framework.common.pojo.PageResult;
import com.win.framework.common.pojo.CommonResult;
import static com.win.framework.common.pojo.CommonResult.success;
import com.win.framework.excel.core.util.ExcelUtils;
import com.win.framework.operatelog.core.annotations.OperateLog;
import static com.win.framework.operatelog.core.enums.OperateTypeEnum.*;
import com.win.module.wms.controller.countJob.vo.*;
import com.win.module.wms.dal.dataobject.countJob.CountJobDetailDO;
import com.win.module.wms.convert.countJob.CountJobDetailConvert;
import com.win.module.wms.service.countJob.CountJobDetailService;
@Tag(name = "管理后台 - 盘点任务子")
@RestController
@RequestMapping("/wms/count-job-detail")
@Validated
public class CountJobDetailController {
@Resource
private CountJobDetailService countJobDetailService;
@PostMapping("/create")
@Operation(summary = "创建盘点任务子")
@PreAuthorize("@ss.hasPermission('wms:count-job-detail:create')")
public CommonResult<Long> createCountJobDetail(@Valid @RequestBody CountJobDetailCreateReqVO createReqVO) {
return success(countJobDetailService.createCountJobDetail(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新盘点任务子")
@PreAuthorize("@ss.hasPermission('wms:count-job-detail:update')")
public CommonResult<Boolean> updateCountJobDetail(@Valid @RequestBody CountJobDetailUpdateReqVO updateReqVO) {
countJobDetailService.updateCountJobDetail(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除盘点任务子")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:count-job-detail:delete')")
public CommonResult<Boolean> deleteCountJobDetail(@RequestParam("id") Long id) {
countJobDetailService.deleteCountJobDetail(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得盘点任务子")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('wms:count-job-detail:query')")
public CommonResult<CountJobDetailRespVO> getCountJobDetail(@RequestParam("id") Long id) {
CountJobDetailDO countJobDetail = countJobDetailService.getCountJobDetail(id);
return success(CountJobDetailConvert.INSTANCE.convert(countJobDetail));
}
@GetMapping("/list")
@Operation(summary = "获得盘点任务子列表")
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
@PreAuthorize("@ss.hasPermission('wms:count-job-detail:query')")
public CommonResult<List<CountJobDetailRespVO>> getCountJobDetailList(@RequestParam("ids") Collection<Long> ids) {
List<CountJobDetailDO> list = countJobDetailService.getCountJobDetailList(ids);
return success(CountJobDetailConvert.INSTANCE.convertList(list));
}
@GetMapping("/page")
@Operation(summary = "获得盘点任务子分页")
@PreAuthorize("@ss.hasPermission('wms:count-job-detail:query')")
public CommonResult<PageResult<CountJobDetailRespVO>> getCountJobDetailPage(@Valid CountJobDetailPageReqVO pageVO) {
PageResult<CountJobDetailDO> pageResult = countJobDetailService.getCountJobDetailPage(pageVO);
return success(CountJobDetailConvert.INSTANCE.convertPage(pageResult));
}
@GetMapping("/export-excel")
@Operation(summary = "导出盘点任务子 Excel")
@PreAuthorize("@ss.hasPermission('wms:count-job-detail:export')")
@OperateLog(type = EXPORT)
public void exportCountJobDetailExcel(@Valid CountJobDetailExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<CountJobDetailDO> list = countJobDetailService.getCountJobDetailList(exportReqVO);
// 导出 Excel
List<CountJobDetailExcelVO> datas = CountJobDetailConvert.INSTANCE.convertList02(list);
ExcelUtils.write(response, "盘点任务子.xls", "数据", CountJobDetailExcelVO.class, datas);
}
}

102
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/CountJobMainController.java

@ -0,0 +1,102 @@
package com.win.module.wms.controller.countJob;
import com.win.module.wms.controller.countJob.vo.*;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import javax.validation.*;
import javax.servlet.http.*;
import java.util.*;
import java.io.IOException;
import com.win.framework.common.pojo.PageResult;
import com.win.framework.common.pojo.CommonResult;
import static com.win.framework.common.pojo.CommonResult.success;
import com.win.framework.excel.core.util.ExcelUtils;
import com.win.framework.operatelog.core.annotations.OperateLog;
import static com.win.framework.operatelog.core.enums.OperateTypeEnum.*;
import com.win.module.wms.controller.countJob.vo.*;
import com.win.module.wms.dal.dataobject.countJob.CountJobMainDO;
import com.win.module.wms.convert.countJob.CountJobMainConvert;
import com.win.module.wms.service.countJob.CountJobMainService;
@Tag(name = "管理后台 - 盘点任务主")
@RestController
@RequestMapping("/wms/count-job-main")
@Validated
public class CountJobMainController {
@Resource
private CountJobMainService countJobMainService;
@PostMapping("/create")
@Operation(summary = "创建盘点任务主")
@PreAuthorize("@ss.hasPermission('wms:count-job-main:create')")
public CommonResult<Long> createCountJobMain(@Valid @RequestBody CountJobMainCreateReqVO createReqVO) {
return success(countJobMainService.createCountJobMain(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新盘点任务主")
@PreAuthorize("@ss.hasPermission('wms:count-job-main:update')")
public CommonResult<Boolean> updateCountJobMain(@Valid @RequestBody CountJobMainUpdateReqVO updateReqVO) {
countJobMainService.updateCountJobMain(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除盘点任务主")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:count-job-main:delete')")
public CommonResult<Boolean> deleteCountJobMain(@RequestParam("id") Long id) {
countJobMainService.deleteCountJobMain(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得盘点任务主")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('wms:count-job-main:query')")
public CommonResult<CountJobMainRespVO> getCountJobMain(@RequestParam("id") Long id) {
CountJobMainDO countJobMain = countJobMainService.getCountJobMain(id);
return success(CountJobMainConvert.INSTANCE.convert(countJobMain));
}
@GetMapping("/list")
@Operation(summary = "获得盘点任务主列表")
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
@PreAuthorize("@ss.hasPermission('wms:count-job-main:query')")
public CommonResult<List<CountJobMainRespVO>> getCountJobMainList(@RequestParam("ids") Collection<Long> ids) {
List<CountJobMainDO> list = countJobMainService.getCountJobMainList(ids);
return success(CountJobMainConvert.INSTANCE.convertList(list));
}
@GetMapping("/page")
@Operation(summary = "获得盘点任务主分页")
@PreAuthorize("@ss.hasPermission('wms:count-job-main:query')")
public CommonResult<PageResult<CountJobMainRespVO>> getCountJobMainPage(@Valid CountJobMainPageReqVO pageVO) {
PageResult<CountJobMainDO> pageResult = countJobMainService.getCountJobMainPage(pageVO);
return success(CountJobMainConvert.INSTANCE.convertPage(pageResult));
}
@GetMapping("/export-excel")
@Operation(summary = "导出盘点任务主 Excel")
@PreAuthorize("@ss.hasPermission('wms:count-job-main:export')")
@OperateLog(type = EXPORT)
public void exportCountJobMainExcel(@Valid CountJobMainExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<CountJobMainDO> list = countJobMainService.getCountJobMainList(exportReqVO);
// 导出 Excel
List<CountJobMainExcelVO> datas = CountJobMainConvert.INSTANCE.convertList02(list);
ExcelUtils.write(response, "盘点任务主.xls", "数据", CountJobMainExcelVO.class, datas);
}
}

75
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobDetailBaseVO.java

@ -0,0 +1,75 @@
package com.win.module.wms.controller.countJob.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
/**
* 盘点任务子 Base VO提供给添加修改详细的子 VO 使用
* 如果子 VO 存在差异的字段请不要添加到这里影响 Swagger 文档生成
*/
@Data
public class CountJobDetailBaseVO {
@Schema(description = "id", example = "id")
private Long id;
@Schema(description = "盘点明细号")
private String countDetailNumber;
@Schema(description = "货主代码")
private String ownerCode;
@Schema(description = "包装号")
private String packingNumber;
@Schema(description = "器具号")
private String containerNumber;
@Schema(description = "批次")
private String batch;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "物品代码")
private String itemCode;
@Schema(description = "物品名称")
private String itemName;
@Schema(description = "物品描述1")
private String itemDesc1;
@Schema(description = "物品描述2")
private String itemDesc2;
@Schema(description = "项目代码")
private String projectCode;
@Schema(description = "数量")
private BigDecimal qty;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "单据号")
private String number;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime createTime;
@Schema(description = "创建者Id")
private String creator;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobDetailCreateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countJob.vo;
import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "管理后台 - 盘点任务子创建 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountJobDetailCreateReqVO extends CountJobDetailBaseVO {
}

75
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobDetailExcelVO.java

@ -0,0 +1,75 @@
package com.win.module.wms.controller.countJob.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.ExcelProperty;
import com.win.framework.excel.core.annotations.DictFormat;
import com.win.framework.excel.core.convert.DictConvert;
/**
* 盘点任务子 Excel VO
*
* @author 超级管理员
*/
@Data
public class CountJobDetailExcelVO {
@ExcelProperty("盘点明细号")
private String countDetailNumber;
@ExcelProperty("货主代码")
private String ownerCode;
@ExcelProperty("包装号")
private String packingNumber;
@ExcelProperty("器具号")
private String containerNumber;
@ExcelProperty("批次")
private String batch;
@ExcelProperty(value = "库存状态", converter = DictConvert.class)
@DictFormat("inventory_status") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String inventoryStatus;
@ExcelProperty("物品代码")
private String itemCode;
@ExcelProperty("物品名称")
private String itemName;
@ExcelProperty("物品描述1")
private String itemDesc1;
@ExcelProperty("物品描述2")
private String itemDesc2;
@ExcelProperty("项目代码")
private String projectCode;
@ExcelProperty("数量")
private BigDecimal qty;
@ExcelProperty(value = "计量单位", converter = DictConvert.class)
@DictFormat("uom") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String uom;
@ExcelProperty("单据号")
private String number;
@ExcelProperty("备注")
private String remark;
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@ExcelProperty("创建者Id")
private String creator;
}

70
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobDetailExportReqVO.java

@ -0,0 +1,70 @@
package com.win.module.wms.controller.countJob.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import java.time.LocalDateTime;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点任务子 Excel 导出 Request VO,参数和 CountJobDetailPageReqVO 是一致的")
@Data
public class CountJobDetailExportReqVO {
@Schema(description = "盘点明细号")
private String countDetailNumber;
@Schema(description = "货主代码")
private String ownerCode;
@Schema(description = "包装号")
private String packingNumber;
@Schema(description = "器具号")
private String containerNumber;
@Schema(description = "批次")
private String batch;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "物品代码")
private String itemCode;
@Schema(description = "物品名称")
private String itemName;
@Schema(description = "物品描述1")
private String itemDesc1;
@Schema(description = "物品描述2")
private String itemDesc2;
@Schema(description = "项目代码")
private String projectCode;
@Schema(description = "数量")
private BigDecimal qty;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "单据号")
private String number;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者Id")
private String creator;
}

72
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobDetailPageReqVO.java

@ -0,0 +1,72 @@
package com.win.module.wms.controller.countJob.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点任务子分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountJobDetailPageReqVO extends PageParam {
@Schema(description = "盘点明细号")
private String countDetailNumber;
@Schema(description = "货主代码")
private String ownerCode;
@Schema(description = "包装号")
private String packingNumber;
@Schema(description = "器具号")
private String containerNumber;
@Schema(description = "批次")
private String batch;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "物品代码")
private String itemCode;
@Schema(description = "物品名称")
private String itemName;
@Schema(description = "物品描述1")
private String itemDesc1;
@Schema(description = "物品描述2")
private String itemDesc2;
@Schema(description = "项目代码")
private String projectCode;
@Schema(description = "数量")
private BigDecimal qty;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "单据号")
private String number;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者Id")
private String creator;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobDetailRespVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countJob.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点任务子 Response VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountJobDetailRespVO extends CountJobDetailBaseVO {
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobDetailUpdateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countJob.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点任务子更新 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountJobDetailUpdateReqVO extends CountJobDetailBaseVO {
}

146
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainBaseVO.java

@ -0,0 +1,146 @@
package com.win.module.wms.controller.countJob.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
/**
* 盘点任务主 Base VO提供给添加修改详细的子 VO 使用
* 如果子 VO 存在差异的字段请不要添加到这里影响 Swagger 文档生成
*/
@Data
public class CountJobMainBaseVO {
@Schema(description = "id", example = "id")
private Long id;
@Schema(description = "申请单号")
private String requestNumber;
@Schema(description = "计划单号")
private String planNumber;
@Schema(description = "阶段")
private String stage;
@Schema(description = "仓库代码")
private String warehouseCode;
@Schema(description = "库位代码")
private String locationCode;
@Schema(description = "申请时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime requestTime;
@Schema(description = "要求截止时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime requestDueTime;
@Schema(description = "状态")
private String status;
@Schema(description = "过期时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime expiredTime;
@Schema(description = "最后更新时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime updateTime;
@Schema(description = "最后更新者Id")
private String updater;
@Schema(description = "状态")
private String jobStageStatus;
@Schema(description = "优先级")
private Integer priority;
@Schema(description = "优先级增量")
private Integer priorityIncrement;
@Schema(description = "部门")
private String departmentCode;
@Schema(description = "承接人用户ID")
private String acceptUserId;
@Schema(description = "承接时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime acceptTime;
@Schema(description = "完成人用户ID", example = "2")
private String completeUserId;
@Schema(description = "完成时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime completeTime;
@Schema(description = "从库位类型范围")
private String fromLocationTypes;
@Schema(description = "到库位类型范围")
private String toLocationTypes;
@Schema(description = "单据号")
private String number;
@Schema(description = "业务类型")
private String businessType;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime createTime;
@Schema(description = "创建者id")
private String creator;
@Schema(description = "地点ID", example = "19294")
private String siteId;
@Schema(description = "自动完成")
private String autoComplete;
@Schema(description = "允许修改库位")
private String allowModifyLocation;
@Schema(description = "允许修改数量")
private String allowModifyQty;
@Schema(description = "允许大于推荐数量")
private String allowBiggerQty;
@Schema(description = "允许小于推荐数量")
private String allowSmallerQty;
@Schema(description = "允许修改库存状态", example = "1")
private String allowModifInventoryStatus;
@Schema(description = "允许连续扫描")
private String allowContinuousScanning;
@Schema(description = "允许部分完成")
private String allowPartialComplete;
@Schema(description = "允许修改批次")
private String allowModifyBatch;
@Schema(description = "允许修改箱码")
private String allowModifyPackingNumber;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainCreateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countJob.vo;
import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "管理后台 - 盘点任务主创建 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountJobMainCreateReqVO extends CountJobMainBaseVO {
}

143
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainExcelVO.java

@ -0,0 +1,143 @@
package com.win.module.wms.controller.countJob.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.ExcelProperty;
import com.win.framework.excel.core.annotations.DictFormat;
import com.win.framework.excel.core.convert.DictConvert;
/**
* 盘点任务主 Excel VO
*
* @author 超级管理员
*/
@Data
public class CountJobMainExcelVO {
@ExcelProperty("申请单号")
private String requestNumber;
@ExcelProperty("计划单号")
private String planNumber;
@ExcelProperty(value = "阶段", converter = DictConvert.class)
@DictFormat("count_stage") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String stage;
@ExcelProperty("仓库代码")
private String warehouseCode;
@ExcelProperty("库位代码")
private String locationCode;
@ExcelProperty("申请时间")
private LocalDateTime requestTime;
@ExcelProperty("要求截止时间")
private LocalDateTime requestDueTime;
@ExcelProperty(value = "状态", converter = DictConvert.class)
@DictFormat("job_status") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String status;
@ExcelProperty("过期时间")
private LocalDateTime expiredTime;
@ExcelProperty("最后更新时间")
private LocalDateTime updateTime;
@ExcelProperty("最后更新者Id")
private String updater;
@ExcelProperty(value = "状态", converter = DictConvert.class)
@DictFormat("job_stage_status") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String jobStageStatus;
@ExcelProperty("优先级")
private Integer priority;
@ExcelProperty("优先级增量")
private Integer priorityIncrement;
@ExcelProperty("部门")
private String departmentCode;
@ExcelProperty("承接人用户ID")
private String acceptUserId;
@ExcelProperty("承接时间")
private LocalDateTime acceptTime;
@ExcelProperty("完成人用户ID")
private String completeUserId;
@ExcelProperty("完成时间")
private LocalDateTime completeTime;
@ExcelProperty(value = "从库位类型范围", converter = DictConvert.class)
@DictFormat("location_type") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String fromLocationTypes;
@ExcelProperty(value = "到库位类型范围", converter = DictConvert.class)
@DictFormat("location_type") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String toLocationTypes;
@ExcelProperty("单据号")
private String number;
@ExcelProperty("业务类型")
private String businessType;
@ExcelProperty("备注")
private String remark;
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@ExcelProperty("创建者id")
private String creator;
@ExcelProperty("地点ID")
private String siteId;
@ExcelProperty("自动完成")
private String autoComplete;
@ExcelProperty("允许修改库位")
private String allowModifyLocation;
@ExcelProperty("允许修改数量")
private String allowModifyQty;
@ExcelProperty("允许大于推荐数量")
private String allowBiggerQty;
@ExcelProperty("允许小于推荐数量")
private String allowSmallerQty;
@ExcelProperty("允许修改库存状态")
private String allowModifInventoryStatus;
@ExcelProperty("允许连续扫描")
private String allowContinuousScanning;
@ExcelProperty("允许部分完成")
private String allowPartialComplete;
@ExcelProperty("允许修改批次")
private String allowModifyBatch;
@ExcelProperty("允许修改箱码")
private String allowModifyPackingNumber;
}

134
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainExportReqVO.java

@ -0,0 +1,134 @@
package com.win.module.wms.controller.countJob.vo;
import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import java.time.LocalDateTime;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点任务主 Excel 导出 Request VO,参数和 CountJobMainPageReqVO 是一致的")
@Data
public class CountJobMainExportReqVO {
@Schema(description = "申请单号")
private String requestNumber;
@Schema(description = "计划单号")
private String planNumber;
@Schema(description = "阶段")
private String stage;
@Schema(description = "仓库代码")
private String warehouseCode;
@Schema(description = "库位代码")
private String locationCode;
@Schema(description = "申请时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] requestTime;
@Schema(description = "要求截止时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] requestDueTime;
@Schema(description = "状态")
private String status;
@Schema(description = "过期时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] expiredTime;
@Schema(description = "最后更新时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] updateTime;
@Schema(description = "最后更新者Id")
private String updater;
@Schema(description = "状态")
private String jobStageStatus;
@Schema(description = "优先级")
private Integer priority;
@Schema(description = "优先级增量")
private Integer priorityIncrement;
@Schema(description = "部门")
private String departmentCode;
@Schema(description = "承接人用户ID")
private String acceptUserId;
@Schema(description = "承接时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] acceptTime;
@Schema(description = "完成人用户ID", example = "2")
private String completeUserId;
@Schema(description = "完成时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] completeTime;
@Schema(description = "从库位类型范围")
private String fromLocationTypes;
@Schema(description = "到库位类型范围")
private String toLocationTypes;
@Schema(description = "单据号")
private String number;
@Schema(description = "业务类型")
private String businessType;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者id")
private String creator;
@Schema(description = "地点ID", example = "19294")
private String siteId;
@Schema(description = "自动完成")
private String autoComplete;
@Schema(description = "允许修改库位")
private String allowModifyLocation;
@Schema(description = "允许修改数量")
private String allowModifyQty;
@Schema(description = "允许大于推荐数量")
private String allowBiggerQty;
@Schema(description = "允许小于推荐数量")
private String allowSmallerQty;
@Schema(description = "允许修改库存状态", example = "1")
private String allowModifInventoryStatus;
@Schema(description = "允许连续扫描")
private String allowContinuousScanning;
@Schema(description = "允许部分完成")
private String allowPartialComplete;
@Schema(description = "允许修改批次")
private String allowModifyBatch;
@Schema(description = "允许修改箱码")
private String allowModifyPackingNumber;
}

136
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainPageReqVO.java

@ -0,0 +1,136 @@
package com.win.module.wms.controller.countJob.vo;
import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点任务主分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountJobMainPageReqVO extends PageParam {
@Schema(description = "申请单号")
private String requestNumber;
@Schema(description = "计划单号")
private String planNumber;
@Schema(description = "阶段")
private String stage;
@Schema(description = "仓库代码")
private String warehouseCode;
@Schema(description = "库位代码")
private String locationCode;
@Schema(description = "申请时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] requestTime;
@Schema(description = "要求截止时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] requestDueTime;
@Schema(description = "状态")
private String status;
@Schema(description = "过期时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] expiredTime;
@Schema(description = "最后更新时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] updateTime;
@Schema(description = "最后更新者Id")
private String updater;
@Schema(description = "状态")
private String jobStageStatus;
@Schema(description = "优先级")
private Integer priority;
@Schema(description = "优先级增量")
private Integer priorityIncrement;
@Schema(description = "部门")
private String departmentCode;
@Schema(description = "承接人用户ID")
private String acceptUserId;
@Schema(description = "承接时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] acceptTime;
@Schema(description = "完成人用户ID", example = "2")
private String completeUserId;
@Schema(description = "完成时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] completeTime;
@Schema(description = "从库位类型范围")
private String fromLocationTypes;
@Schema(description = "到库位类型范围")
private String toLocationTypes;
@Schema(description = "单据号")
private String number;
@Schema(description = "业务类型")
private String businessType;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者id")
private String creator;
@Schema(description = "地点ID", example = "19294")
private String siteId;
@Schema(description = "自动完成")
private String autoComplete;
@Schema(description = "允许修改库位")
private String allowModifyLocation;
@Schema(description = "允许修改数量")
private String allowModifyQty;
@Schema(description = "允许大于推荐数量")
private String allowBiggerQty;
@Schema(description = "允许小于推荐数量")
private String allowSmallerQty;
@Schema(description = "允许修改库存状态", example = "1")
private String allowModifInventoryStatus;
@Schema(description = "允许连续扫描")
private String allowContinuousScanning;
@Schema(description = "允许部分完成")
private String allowPartialComplete;
@Schema(description = "允许修改批次")
private String allowModifyBatch;
@Schema(description = "允许修改箱码")
private String allowModifyPackingNumber;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainRespVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countJob.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点任务主 Response VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountJobMainRespVO extends CountJobMainBaseVO {
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countJob/vo/CountJobMainUpdateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countJob.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点任务主更新 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountJobMainUpdateReqVO extends CountJobMainBaseVO {
}

102
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/CountPlanDetailController.java

@ -0,0 +1,102 @@
package com.win.module.wms.controller.countPlan;
import com.win.module.wms.controller.countPlan.vo.*;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import javax.validation.*;
import javax.servlet.http.*;
import java.util.*;
import java.io.IOException;
import com.win.framework.common.pojo.PageResult;
import com.win.framework.common.pojo.CommonResult;
import static com.win.framework.common.pojo.CommonResult.success;
import com.win.framework.excel.core.util.ExcelUtils;
import com.win.framework.operatelog.core.annotations.OperateLog;
import static com.win.framework.operatelog.core.enums.OperateTypeEnum.*;
import com.win.module.wms.controller.countPlan.vo.*;
import com.win.module.wms.dal.dataobject.countPlan.CountPlanDetailDO;
import com.win.module.wms.convert.countPlan.CountPlanDetailConvert;
import com.win.module.wms.service.countPlan.CountPlanDetailService;
@Tag(name = "管理后台 - 盘点计划子")
@RestController
@RequestMapping("/wms/count-plan-detail")
@Validated
public class CountPlanDetailController {
@Resource
private CountPlanDetailService countPlanDetailService;
@PostMapping("/create")
@Operation(summary = "创建盘点计划子")
@PreAuthorize("@ss.hasPermission('wms:count-plan-detail:create')")
public CommonResult<Long> createCountPlanDetail(@Valid @RequestBody CountPlanDetailCreateReqVO createReqVO) {
return success(countPlanDetailService.createCountPlanDetail(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新盘点计划子")
@PreAuthorize("@ss.hasPermission('wms:count-plan-detail:update')")
public CommonResult<Boolean> updateCountPlanDetail(@Valid @RequestBody CountPlanDetailUpdateReqVO updateReqVO) {
countPlanDetailService.updateCountPlanDetail(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除盘点计划子")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:count-plan-detail:delete')")
public CommonResult<Boolean> deleteCountPlanDetail(@RequestParam("id") Long id) {
countPlanDetailService.deleteCountPlanDetail(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得盘点计划子")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('wms:count-plan-detail:query')")
public CommonResult<CountPlanDetailRespVO> getCountPlanDetail(@RequestParam("id") Long id) {
CountPlanDetailDO countPlanDetail = countPlanDetailService.getCountPlanDetail(id);
return success(CountPlanDetailConvert.INSTANCE.convert(countPlanDetail));
}
@GetMapping("/list")
@Operation(summary = "获得盘点计划子列表")
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
@PreAuthorize("@ss.hasPermission('wms:count-plan-detail:query')")
public CommonResult<List<CountPlanDetailRespVO>> getCountPlanDetailList(@RequestParam("ids") Collection<Long> ids) {
List<CountPlanDetailDO> list = countPlanDetailService.getCountPlanDetailList(ids);
return success(CountPlanDetailConvert.INSTANCE.convertList(list));
}
@GetMapping("/page")
@Operation(summary = "获得盘点计划子分页")
@PreAuthorize("@ss.hasPermission('wms:count-plan-detail:query')")
public CommonResult<PageResult<CountPlanDetailRespVO>> getCountPlanDetailPage(@Valid CountPlanDetailPageReqVO pageVO) {
PageResult<CountPlanDetailDO> pageResult = countPlanDetailService.getCountPlanDetailPage(pageVO);
return success(CountPlanDetailConvert.INSTANCE.convertPage(pageResult));
}
@GetMapping("/export-excel")
@Operation(summary = "导出盘点计划子 Excel")
@PreAuthorize("@ss.hasPermission('wms:count-plan-detail:export')")
@OperateLog(type = EXPORT)
public void exportCountPlanDetailExcel(@Valid CountPlanDetailExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<CountPlanDetailDO> list = countPlanDetailService.getCountPlanDetailList(exportReqVO);
// 导出 Excel
List<CountPlanDetailExcelVO> datas = CountPlanDetailConvert.INSTANCE.convertList02(list);
ExcelUtils.write(response, "盘点计划子.xls", "数据", CountPlanDetailExcelVO.class, datas);
}
}

102
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/CountPlanMainController.java

@ -0,0 +1,102 @@
package com.win.module.wms.controller.countPlan;
import com.win.module.wms.controller.countPlan.vo.*;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import javax.validation.*;
import javax.servlet.http.*;
import java.util.*;
import java.io.IOException;
import com.win.framework.common.pojo.PageResult;
import com.win.framework.common.pojo.CommonResult;
import static com.win.framework.common.pojo.CommonResult.success;
import com.win.framework.excel.core.util.ExcelUtils;
import com.win.framework.operatelog.core.annotations.OperateLog;
import static com.win.framework.operatelog.core.enums.OperateTypeEnum.*;
import com.win.module.wms.controller.countPlan.vo.*;
import com.win.module.wms.dal.dataobject.countPlan.CountPlanMainDO;
import com.win.module.wms.convert.countPlan.CountPlanMainConvert;
import com.win.module.wms.service.countPlan.CountPlanMainService;
@Tag(name = "管理后台 - 盘点计划主")
@RestController
@RequestMapping("/wms/count-plan-main")
@Validated
public class CountPlanMainController {
@Resource
private CountPlanMainService countPlanMainService;
@PostMapping("/create")
@Operation(summary = "创建盘点计划主")
@PreAuthorize("@ss.hasPermission('wms:count-plan-main:create')")
public CommonResult<Long> createCountPlanMain(@Valid @RequestBody CountPlanMainCreateReqVO createReqVO) {
return success(countPlanMainService.createCountPlanMain(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新盘点计划主")
@PreAuthorize("@ss.hasPermission('wms:count-plan-main:update')")
public CommonResult<Boolean> updateCountPlanMain(@Valid @RequestBody CountPlanMainUpdateReqVO updateReqVO) {
countPlanMainService.updateCountPlanMain(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除盘点计划主")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:count-plan-main:delete')")
public CommonResult<Boolean> deleteCountPlanMain(@RequestParam("id") Long id) {
countPlanMainService.deleteCountPlanMain(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得盘点计划主")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('wms:count-plan-main:query')")
public CommonResult<CountPlanMainRespVO> getCountPlanMain(@RequestParam("id") Long id) {
CountPlanMainDO countPlanMain = countPlanMainService.getCountPlanMain(id);
return success(CountPlanMainConvert.INSTANCE.convert(countPlanMain));
}
@GetMapping("/list")
@Operation(summary = "获得盘点计划主列表")
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
@PreAuthorize("@ss.hasPermission('wms:count-plan-main:query')")
public CommonResult<List<CountPlanMainRespVO>> getCountPlanMainList(@RequestParam("ids") Collection<Long> ids) {
List<CountPlanMainDO> list = countPlanMainService.getCountPlanMainList(ids);
return success(CountPlanMainConvert.INSTANCE.convertList(list));
}
@GetMapping("/page")
@Operation(summary = "获得盘点计划主分页")
@PreAuthorize("@ss.hasPermission('wms:count-plan-main:query')")
public CommonResult<PageResult<CountPlanMainRespVO>> getCountPlanMainPage(@Valid CountPlanMainPageReqVO pageVO) {
PageResult<CountPlanMainDO> pageResult = countPlanMainService.getCountPlanMainPage(pageVO);
return success(CountPlanMainConvert.INSTANCE.convertPage(pageResult));
}
@GetMapping("/export-excel")
@Operation(summary = "导出盘点计划主 Excel")
@PreAuthorize("@ss.hasPermission('wms:count-plan-main:export')")
@OperateLog(type = EXPORT)
public void exportCountPlanMainExcel(@Valid CountPlanMainExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<CountPlanMainDO> list = countPlanMainService.getCountPlanMainList(exportReqVO);
// 导出 Excel
List<CountPlanMainExcelVO> datas = CountPlanMainConvert.INSTANCE.convertList02(list);
ExcelUtils.write(response, "盘点计划主.xls", "数据", CountPlanMainExcelVO.class, datas);
}
}

62
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanDetailBaseVO.java

@ -0,0 +1,62 @@
package com.win.module.wms.controller.countPlan.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
/**
* 盘点计划子 Base VO提供给添加修改详细的子 VO 使用
* 如果子 VO 存在差异的字段请不要添加到这里影响 Swagger 文档生成
*/
@Data
public class CountPlanDetailBaseVO {
@Schema(description = "id", example = "id")
private Long id;
@Schema(description = "盘点范围类型 ")
private String type;
@Schema(description = "盘点范围值")
private String value;
@Schema(description = "单据号")
private String number;
@Schema(description = "物品代码")
private String itemCode;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime createTime;
@Schema(description = "创建者用户名")
private String creator;
@Schema(description = "计划数量")
private BigDecimal planQty;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "最后更新时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime updateTime;
@Schema(description = "最后更新者用户名")
private String updater;
@Schema(description = "是否可用")
private String available;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanDetailCreateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countPlan.vo;
import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "管理后台 - 盘点计划子创建 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountPlanDetailCreateReqVO extends CountPlanDetailBaseVO {
}

61
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanDetailExcelVO.java

@ -0,0 +1,61 @@
package com.win.module.wms.controller.countPlan.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.ExcelProperty;
import com.win.framework.excel.core.annotations.DictFormat;
import com.win.framework.excel.core.convert.DictConvert;
/**
* 盘点计划子 Excel VO
*
* @author 超级管理员
*/
@Data
public class CountPlanDetailExcelVO {
@ExcelProperty(value = "盘点范围类型 ", converter = DictConvert.class)
@DictFormat("count_dimension") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String type;
@ExcelProperty("盘点范围值")
private String value;
@ExcelProperty("单据号")
private String number;
@ExcelProperty("物品代码")
private String itemCode;
@ExcelProperty("备注")
private String remark;
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@ExcelProperty("创建者用户名")
private String creator;
@ExcelProperty("计划数量")
private BigDecimal planQty;
@ExcelProperty(value = "计量单位", converter = DictConvert.class)
@DictFormat("uom") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String uom;
@ExcelProperty("最后更新时间")
private LocalDateTime updateTime;
@ExcelProperty("最后更新者用户名")
private String updater;
@ExcelProperty("是否可用")
private String available;
}

56
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanDetailExportReqVO.java

@ -0,0 +1,56 @@
package com.win.module.wms.controller.countPlan.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import java.time.LocalDateTime;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点计划子 Excel 导出 Request VO,参数和 CountPlanDetailPageReqVO 是一致的")
@Data
public class CountPlanDetailExportReqVO {
@Schema(description = "盘点范围类型 ")
private String type;
@Schema(description = "盘点范围值")
private String value;
@Schema(description = "单据号")
private String number;
@Schema(description = "物品代码")
private String itemCode;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者用户名")
private String creator;
@Schema(description = "计划数量")
private BigDecimal planQty;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "最后更新时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] updateTime;
@Schema(description = "最后更新者用户名")
private String updater;
@Schema(description = "是否可用")
private String available;
}

58
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanDetailPageReqVO.java

@ -0,0 +1,58 @@
package com.win.module.wms.controller.countPlan.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点计划子分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountPlanDetailPageReqVO extends PageParam {
@Schema(description = "盘点范围类型 ")
private String type;
@Schema(description = "盘点范围值")
private String value;
@Schema(description = "单据号")
private String number;
@Schema(description = "物品代码")
private String itemCode;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者用户名")
private String creator;
@Schema(description = "计划数量")
private BigDecimal planQty;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "最后更新时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] updateTime;
@Schema(description = "最后更新者用户名")
private String updater;
@Schema(description = "是否可用")
private String available;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanDetailRespVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countPlan.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点计划子 Response VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountPlanDetailRespVO extends CountPlanDetailBaseVO {
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanDetailUpdateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countPlan.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点计划子更新 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountPlanDetailUpdateReqVO extends CountPlanDetailBaseVO {
}

102
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanMainBaseVO.java

@ -0,0 +1,102 @@
package com.win.module.wms.controller.countPlan.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
/**
* 盘点计划主 Base VO提供给添加修改详细的子 VO 使用
* 如果子 VO 存在差异的字段请不要添加到这里影响 Swagger 文档生成
*/
@Data
public class CountPlanMainBaseVO {
@Schema(description = "id", example = "id")
private Long id;
@Schema(description = "盘点类型")
private String type;
@Schema(description = "执行周期")
private String crontab;
@Schema(description = "维度")
private String dimension;
@Schema(description = "限值")
private BigDecimal limitedValue;
@Schema(description = "物品忽略名单")
private String ignoreListOfItem;
@Schema(description = "库位忽略名单")
private String ignoreListOfLocation;
@Schema(description = "盘点范围列表")
private String scopeList;
@Schema(description = "单据号")
private String number;
@Schema(description = "业务类型")
private String businessType;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime createTime;
@Schema(description = "创建者用户名")
private String creator;
@Schema(description = "开始时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime beginTime;
@Schema(description = "结束时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime endTime;
@Schema(description = "状态")
private String status;
@Schema(description = "最后更新时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime updateTime;
@Schema(description = "最后更新者用户名")
private String updater;
@Schema(description = "快照盘点")
private String isSnapshot;
@Schema(description = "冻结盘点")
private String isFreeze;
@Schema(description = "盘点空库位")
private String isCountEmptyLocation;
@Schema(description = "盘点零库存")
private String isCountZeroInventory;
@Schema(description = "盘点负库存")
private String isCountNegativeInventory;
@Schema(description = "明盘", example = "2367")
private String isOpenCount;
@Schema(description = "是否可用")
private String available;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanMainCreateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countPlan.vo;
import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "管理后台 - 盘点计划主创建 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountPlanMainCreateReqVO extends CountPlanMainBaseVO {
}

100
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanMainExcelVO.java

@ -0,0 +1,100 @@
package com.win.module.wms.controller.countPlan.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.ExcelProperty;
import com.win.framework.excel.core.annotations.DictFormat;
import com.win.framework.excel.core.convert.DictConvert;
/**
* 盘点计划主 Excel VO
*
* @author 超级管理员
*/
@Data
public class CountPlanMainExcelVO {
@ExcelProperty(value = "盘点类型", converter = DictConvert.class)
@DictFormat("count_type") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String type;
@ExcelProperty("执行周期")
private String crontab;
@ExcelProperty(value = "维度", converter = DictConvert.class)
@DictFormat("count_dimension") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String dimension;
@ExcelProperty("限值")
private BigDecimal limitedValue;
@ExcelProperty("物品忽略名单")
private String ignoreListOfItem;
@ExcelProperty("库位忽略名单")
private String ignoreListOfLocation;
@ExcelProperty("盘点范围列表")
private String scopeList;
@ExcelProperty("单据号")
private String number;
@ExcelProperty("业务类型")
private String businessType;
@ExcelProperty("备注")
private String remark;
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@ExcelProperty("创建者用户名")
private String creator;
@ExcelProperty("开始时间")
private LocalDateTime beginTime;
@ExcelProperty("结束时间")
private LocalDateTime endTime;
@ExcelProperty(value = "状态", converter = DictConvert.class)
@DictFormat("plan_status") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String status;
@ExcelProperty("最后更新时间")
private LocalDateTime updateTime;
@ExcelProperty("最后更新者用户名")
private String updater;
@ExcelProperty("快照盘点")
private String isSnapshot;
@ExcelProperty("冻结盘点")
private String isFreeze;
@ExcelProperty("盘点空库位")
private String isCountEmptyLocation;
@ExcelProperty("盘点零库存")
private String isCountZeroInventory;
@ExcelProperty("盘点负库存")
private String isCountNegativeInventory;
@ExcelProperty("明盘")
private String isOpenCount;
@ExcelProperty("是否可用")
private String available;
}

94
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanMainExportReqVO.java

@ -0,0 +1,94 @@
package com.win.module.wms.controller.countPlan.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import java.time.LocalDateTime;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点计划主 Excel 导出 Request VO,参数和 CountPlanMainPageReqVO 是一致的")
@Data
public class CountPlanMainExportReqVO {
@Schema(description = "盘点类型")
private String type;
@Schema(description = "执行周期")
private String crontab;
@Schema(description = "维度")
private String dimension;
@Schema(description = "限值")
private BigDecimal limitedValue;
@Schema(description = "物品忽略名单")
private String ignoreListOfItem;
@Schema(description = "库位忽略名单")
private String ignoreListOfLocation;
@Schema(description = "盘点范围列表")
private String scopeList;
@Schema(description = "单据号")
private String number;
@Schema(description = "业务类型")
private String businessType;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者用户名")
private String creator;
@Schema(description = "开始时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] beginTime;
@Schema(description = "结束时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] endTime;
@Schema(description = "状态")
private String status;
@Schema(description = "最后更新时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] updateTime;
@Schema(description = "最后更新者用户名")
private String updater;
@Schema(description = "快照盘点")
private String isSnapshot;
@Schema(description = "冻结盘点")
private String isFreeze;
@Schema(description = "盘点空库位")
private String isCountEmptyLocation;
@Schema(description = "盘点零库存")
private String isCountZeroInventory;
@Schema(description = "盘点负库存")
private String isCountNegativeInventory;
@Schema(description = "明盘", example = "2367")
private String isOpenCount;
@Schema(description = "是否可用")
private String available;
}

96
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanMainPageReqVO.java

@ -0,0 +1,96 @@
package com.win.module.wms.controller.countPlan.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点计划主分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountPlanMainPageReqVO extends PageParam {
@Schema(description = "盘点类型")
private String type;
@Schema(description = "执行周期")
private String crontab;
@Schema(description = "维度")
private String dimension;
@Schema(description = "限值")
private BigDecimal limitedValue;
@Schema(description = "物品忽略名单")
private String ignoreListOfItem;
@Schema(description = "库位忽略名单")
private String ignoreListOfLocation;
@Schema(description = "盘点范围列表")
private String scopeList;
@Schema(description = "单据号")
private String number;
@Schema(description = "业务类型")
private String businessType;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者用户名")
private String creator;
@Schema(description = "开始时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] beginTime;
@Schema(description = "结束时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] endTime;
@Schema(description = "状态")
private String status;
@Schema(description = "最后更新时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] updateTime;
@Schema(description = "最后更新者用户名")
private String updater;
@Schema(description = "快照盘点")
private String isSnapshot;
@Schema(description = "冻结盘点")
private String isFreeze;
@Schema(description = "盘点空库位")
private String isCountEmptyLocation;
@Schema(description = "盘点零库存")
private String isCountZeroInventory;
@Schema(description = "盘点负库存")
private String isCountNegativeInventory;
@Schema(description = "明盘", example = "2367")
private String isOpenCount;
@Schema(description = "是否可用")
private String available;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanMainRespVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countPlan.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点计划主 Response VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountPlanMainRespVO extends CountPlanMainBaseVO {
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countPlan/vo/CountPlanMainUpdateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countPlan.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点计划主更新 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountPlanMainUpdateReqVO extends CountPlanMainBaseVO {
}

102
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/CountRecordDetailController.java

@ -0,0 +1,102 @@
package com.win.module.wms.controller.countRecord;
import com.win.module.wms.controller.countRecord.vo.*;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import javax.validation.*;
import javax.servlet.http.*;
import java.util.*;
import java.io.IOException;
import com.win.framework.common.pojo.PageResult;
import com.win.framework.common.pojo.CommonResult;
import static com.win.framework.common.pojo.CommonResult.success;
import com.win.framework.excel.core.util.ExcelUtils;
import com.win.framework.operatelog.core.annotations.OperateLog;
import static com.win.framework.operatelog.core.enums.OperateTypeEnum.*;
import com.win.module.wms.controller.countRecord.vo.*;
import com.win.module.wms.dal.dataobject.countRecord.CountRecordDetailDO;
import com.win.module.wms.convert.countRecord.CountRecordDetailConvert;
import com.win.module.wms.service.countRecord.CountRecordDetailService;
@Tag(name = "管理后台 - 盘点记录子")
@RestController
@RequestMapping("/wms/count-record-detail")
@Validated
public class CountRecordDetailController {
@Resource
private CountRecordDetailService countRecordDetailService;
@PostMapping("/create")
@Operation(summary = "创建盘点记录子")
@PreAuthorize("@ss.hasPermission('wms:count-record-detail:create')")
public CommonResult<Long> createCountRecordDetail(@Valid @RequestBody CountRecordDetailCreateReqVO createReqVO) {
return success(countRecordDetailService.createCountRecordDetail(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新盘点记录子")
@PreAuthorize("@ss.hasPermission('wms:count-record-detail:update')")
public CommonResult<Boolean> updateCountRecordDetail(@Valid @RequestBody CountRecordDetailUpdateReqVO updateReqVO) {
countRecordDetailService.updateCountRecordDetail(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除盘点记录子")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:count-record-detail:delete')")
public CommonResult<Boolean> deleteCountRecordDetail(@RequestParam("id") Long id) {
countRecordDetailService.deleteCountRecordDetail(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得盘点记录子")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('wms:count-record-detail:query')")
public CommonResult<CountRecordDetailRespVO> getCountRecordDetail(@RequestParam("id") Long id) {
CountRecordDetailDO countRecordDetail = countRecordDetailService.getCountRecordDetail(id);
return success(CountRecordDetailConvert.INSTANCE.convert(countRecordDetail));
}
@GetMapping("/list")
@Operation(summary = "获得盘点记录子列表")
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
@PreAuthorize("@ss.hasPermission('wms:count-record-detail:query')")
public CommonResult<List<CountRecordDetailRespVO>> getCountRecordDetailList(@RequestParam("ids") Collection<Long> ids) {
List<CountRecordDetailDO> list = countRecordDetailService.getCountRecordDetailList(ids);
return success(CountRecordDetailConvert.INSTANCE.convertList(list));
}
@GetMapping("/page")
@Operation(summary = "获得盘点记录子分页")
@PreAuthorize("@ss.hasPermission('wms:count-record-detail:query')")
public CommonResult<PageResult<CountRecordDetailRespVO>> getCountRecordDetailPage(@Valid CountRecordDetailPageReqVO pageVO) {
PageResult<CountRecordDetailDO> pageResult = countRecordDetailService.getCountRecordDetailPage(pageVO);
return success(CountRecordDetailConvert.INSTANCE.convertPage(pageResult));
}
@GetMapping("/export-excel")
@Operation(summary = "导出盘点记录子 Excel")
@PreAuthorize("@ss.hasPermission('wms:count-record-detail:export')")
@OperateLog(type = EXPORT)
public void exportCountRecordDetailExcel(@Valid CountRecordDetailExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<CountRecordDetailDO> list = countRecordDetailService.getCountRecordDetailList(exportReqVO);
// 导出 Excel
List<CountRecordDetailExcelVO> datas = CountRecordDetailConvert.INSTANCE.convertList02(list);
ExcelUtils.write(response, "盘点记录子.xls", "数据", CountRecordDetailExcelVO.class, datas);
}
}

102
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/CountRecordMainController.java

@ -0,0 +1,102 @@
package com.win.module.wms.controller.countRecord;
import com.win.module.wms.controller.countRecord.vo.*;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import javax.validation.*;
import javax.servlet.http.*;
import java.util.*;
import java.io.IOException;
import com.win.framework.common.pojo.PageResult;
import com.win.framework.common.pojo.CommonResult;
import static com.win.framework.common.pojo.CommonResult.success;
import com.win.framework.excel.core.util.ExcelUtils;
import com.win.framework.operatelog.core.annotations.OperateLog;
import static com.win.framework.operatelog.core.enums.OperateTypeEnum.*;
import com.win.module.wms.controller.countRecord.vo.*;
import com.win.module.wms.dal.dataobject.countRecord.CountRecordMainDO;
import com.win.module.wms.convert.countRecord.CountRecordMainConvert;
import com.win.module.wms.service.countRecord.CountRecordMainService;
@Tag(name = "管理后台 - 盘点记录主")
@RestController
@RequestMapping("/wms/count-record-main")
@Validated
public class CountRecordMainController {
@Resource
private CountRecordMainService countRecordMainService;
@PostMapping("/create")
@Operation(summary = "创建盘点记录主")
@PreAuthorize("@ss.hasPermission('wms:count-record-main:create')")
public CommonResult<Long> createCountRecordMain(@Valid @RequestBody CountRecordMainCreateReqVO createReqVO) {
return success(countRecordMainService.createCountRecordMain(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新盘点记录主")
@PreAuthorize("@ss.hasPermission('wms:count-record-main:update')")
public CommonResult<Boolean> updateCountRecordMain(@Valid @RequestBody CountRecordMainUpdateReqVO updateReqVO) {
countRecordMainService.updateCountRecordMain(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除盘点记录主")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:count-record-main:delete')")
public CommonResult<Boolean> deleteCountRecordMain(@RequestParam("id") Long id) {
countRecordMainService.deleteCountRecordMain(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得盘点记录主")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('wms:count-record-main:query')")
public CommonResult<CountRecordMainRespVO> getCountRecordMain(@RequestParam("id") Long id) {
CountRecordMainDO countRecordMain = countRecordMainService.getCountRecordMain(id);
return success(CountRecordMainConvert.INSTANCE.convert(countRecordMain));
}
@GetMapping("/list")
@Operation(summary = "获得盘点记录主列表")
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
@PreAuthorize("@ss.hasPermission('wms:count-record-main:query')")
public CommonResult<List<CountRecordMainRespVO>> getCountRecordMainList(@RequestParam("ids") Collection<Long> ids) {
List<CountRecordMainDO> list = countRecordMainService.getCountRecordMainList(ids);
return success(CountRecordMainConvert.INSTANCE.convertList(list));
}
@GetMapping("/page")
@Operation(summary = "获得盘点记录主分页")
@PreAuthorize("@ss.hasPermission('wms:count-record-main:query')")
public CommonResult<PageResult<CountRecordMainRespVO>> getCountRecordMainPage(@Valid CountRecordMainPageReqVO pageVO) {
PageResult<CountRecordMainDO> pageResult = countRecordMainService.getCountRecordMainPage(pageVO);
return success(CountRecordMainConvert.INSTANCE.convertPage(pageResult));
}
@GetMapping("/export-excel")
@Operation(summary = "导出盘点记录主 Excel")
@PreAuthorize("@ss.hasPermission('wms:count-record-main:export')")
@OperateLog(type = EXPORT)
public void exportCountRecordMainExcel(@Valid CountRecordMainExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<CountRecordMainDO> list = countRecordMainService.getCountRecordMainList(exportReqVO);
// 导出 Excel
List<CountRecordMainExcelVO> datas = CountRecordMainConvert.INSTANCE.convertList02(list);
ExcelUtils.write(response, "盘点记录主.xls", "数据", CountRecordMainExcelVO.class, datas);
}
}

109
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordDetailBaseVO.java

@ -0,0 +1,109 @@
package com.win.module.wms.controller.countRecord.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
/**
* 盘点记录子 Base VO提供给添加修改详细的子 VO 使用
* 如果子 VO 存在差异的字段请不要添加到这里影响 Swagger 文档生成
*/
@Data
public class CountRecordDetailBaseVO {
@Schema(description = "id", example = "id")
private Long id;
@Schema(description = "盘点明细号", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "盘点明细号不能为空")
private String countDetailNumber;
@Schema(description = "货主代码")
private String ownerCode;
@Schema(description = "包装号")
private String packingNumber;
@Schema(description = "器具号")
private String containerNumber;
@Schema(description = "批次")
private String batch;
@Schema(description = "库位代码")
private String locationCode;
@Schema(description = "库位组代码")
private String locationGroupCode;
@Schema(description = "库区代码")
private String areaCode;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "盘点数量")
private BigDecimal countQty;
@Schema(description = "盘点时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime countTime;
@Schema(description = "盘点人")
private String countUser;
@Schema(description = "盘点描述")
private String countDescription;
@Schema(description = "物品名称")
private String itemName;
@Schema(description = "物品描述1")
private String itemDesc1;
@Schema(description = "物品描述2")
private String itemDesc2;
@Schema(description = "项目代码")
private String projectCode;
@Schema(description = "数量")
private BigDecimal qty;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "代码")
private String code;
@Schema(description = "接口类型")
private String interfaceType;
@Schema(description = "单据号")
private String number;
@Schema(description = "物品代码")
private String itemCode;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime createTime;
@Schema(description = "创建者Id")
private String creatorId;
@Schema(description = "任务明细ID")
private String jobDetailId;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordDetailCreateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countRecord.vo;
import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "管理后台 - 盘点记录子创建 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountRecordDetailCreateReqVO extends CountRecordDetailBaseVO {
}

108
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordDetailExcelVO.java

@ -0,0 +1,108 @@
package com.win.module.wms.controller.countRecord.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.ExcelProperty;
import com.win.framework.excel.core.annotations.DictFormat;
import com.win.framework.excel.core.convert.DictConvert;
/**
* 盘点记录子 Excel VO
*
* @author 超级管理员
*/
@Data
public class CountRecordDetailExcelVO {
@ExcelProperty("盘点明细号")
private String countDetailNumber;
@ExcelProperty("货主代码")
private String ownerCode;
@ExcelProperty("包装号")
private String packingNumber;
@ExcelProperty("器具号")
private String containerNumber;
@ExcelProperty("批次")
private String batch;
@ExcelProperty("库位代码")
private String locationCode;
@ExcelProperty("库位组代码")
private String locationGroupCode;
@ExcelProperty("库区代码")
private String areaCode;
@ExcelProperty(value = "库存状态", converter = DictConvert.class)
@DictFormat("inventory_status") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String inventoryStatus;
@ExcelProperty("盘点数量")
private BigDecimal countQty;
@ExcelProperty("盘点时间")
private LocalDateTime countTime;
@ExcelProperty("盘点人")
private String countUser;
@ExcelProperty("盘点描述")
private String countDescription;
@ExcelProperty("物品名称")
private String itemName;
@ExcelProperty("物品描述1")
private String itemDesc1;
@ExcelProperty("物品描述2")
private String itemDesc2;
@ExcelProperty("项目代码")
private String projectCode;
@ExcelProperty("数量")
private BigDecimal qty;
@ExcelProperty(value = "计量单位", converter = DictConvert.class)
@DictFormat("uom") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String uom;
@ExcelProperty("代码")
private String code;
@ExcelProperty(value = "接口类型", converter = DictConvert.class)
@DictFormat("interface_type") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String interfaceType;
@ExcelProperty("单据号")
private String number;
@ExcelProperty("物品代码")
private String itemCode;
@ExcelProperty("备注")
private String remark;
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@ExcelProperty("创建者Id")
private String creatorId;
@ExcelProperty("任务明细ID")
private String jobDetailId;
}

101
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordDetailExportReqVO.java

@ -0,0 +1,101 @@
package com.win.module.wms.controller.countRecord.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import java.time.LocalDateTime;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点记录子 Excel 导出 Request VO,参数和 CountRecordDetailPageReqVO 是一致的")
@Data
public class CountRecordDetailExportReqVO {
@Schema(description = "盘点明细号")
private String countDetailNumber;
@Schema(description = "货主代码")
private String ownerCode;
@Schema(description = "包装号")
private String packingNumber;
@Schema(description = "器具号")
private String containerNumber;
@Schema(description = "批次")
private String batch;
@Schema(description = "库位代码")
private String locationCode;
@Schema(description = "库位组代码")
private String locationGroupCode;
@Schema(description = "库区代码")
private String areaCode;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "盘点数量")
private BigDecimal countQty;
@Schema(description = "盘点时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] countTime;
@Schema(description = "盘点人")
private String countUser;
@Schema(description = "盘点描述")
private String countDescription;
@Schema(description = "物品名称")
private String itemName;
@Schema(description = "物品描述1")
private String itemDesc1;
@Schema(description = "物品描述2")
private String itemDesc2;
@Schema(description = "项目代码")
private String projectCode;
@Schema(description = "数量")
private BigDecimal qty;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "代码")
private String code;
@Schema(description = "接口类型")
private String interfaceType;
@Schema(description = "单据号")
private String number;
@Schema(description = "物品代码")
private String itemCode;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者Id")
private String creatorId;
@Schema(description = "任务明细ID")
private String jobDetailId;
}

103
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordDetailPageReqVO.java

@ -0,0 +1,103 @@
package com.win.module.wms.controller.countRecord.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点记录子分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountRecordDetailPageReqVO extends PageParam {
@Schema(description = "盘点明细号")
private String countDetailNumber;
@Schema(description = "货主代码")
private String ownerCode;
@Schema(description = "包装号")
private String packingNumber;
@Schema(description = "器具号")
private String containerNumber;
@Schema(description = "批次")
private String batch;
@Schema(description = "库位代码")
private String locationCode;
@Schema(description = "库位组代码")
private String locationGroupCode;
@Schema(description = "库区代码")
private String areaCode;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "盘点数量")
private BigDecimal countQty;
@Schema(description = "盘点时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] countTime;
@Schema(description = "盘点人")
private String countUser;
@Schema(description = "盘点描述")
private String countDescription;
@Schema(description = "物品名称")
private String itemName;
@Schema(description = "物品描述1")
private String itemDesc1;
@Schema(description = "物品描述2")
private String itemDesc2;
@Schema(description = "项目代码")
private String projectCode;
@Schema(description = "数量")
private BigDecimal qty;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "代码")
private String code;
@Schema(description = "接口类型")
private String interfaceType;
@Schema(description = "单据号")
private String number;
@Schema(description = "物品代码")
private String itemCode;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者Id")
private String creatorId;
@Schema(description = "任务明细ID")
private String jobDetailId;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordDetailRespVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countRecord.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点记录子 Response VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountRecordDetailRespVO extends CountRecordDetailBaseVO {
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordDetailUpdateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countRecord.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点记录子更新 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountRecordDetailUpdateReqVO extends CountRecordDetailBaseVO {
}

91
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordMainBaseVO.java

@ -0,0 +1,91 @@
package com.win.module.wms.controller.countRecord.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
/**
* 盘点记录主 Base VO提供给添加修改详细的子 VO 使用
* 如果子 VO 存在差异的字段请不要添加到这里影响 Swagger 文档生成
*/
@Data
public class CountRecordMainBaseVO {
@Schema(description = "id", example = "id")
private Long id;
@Schema(description = "申请单号")
private String requestNumber;
@Schema(description = "任务单号")
private String jobNumber;
@Schema(description = "计划单号")
private String planNumber;
@Schema(description = "阶段")
private String stage;
@Schema(description = "仓库代码")
private String warehouseCode;
@Schema(description = "出库事务类型")
private String outTransactionType;
@Schema(description = "入库事务类型")
private String inTransactionType;
@Schema(description = "执行时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime executeTime;
@Schema(description = "生效日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime activeDate;
@Schema(description = "申请时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime requestTime;
@Schema(description = "截止时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime dueTime;
@Schema(description = "部门")
private String departmentCode;
@Schema(description = "接口类型")
private String interfaceType;
@Schema(description = "代码")
private String code;
@Schema(description = "单据号")
private String number;
@Schema(description = "业务类型")
private String businessType;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime createTime;
@Schema(description = "创建者Id")
private String creator;
@Schema(description = "是否可用")
private String available;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordMainCreateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countRecord.vo;
import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "管理后台 - 盘点记录主创建 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountRecordMainCreateReqVO extends CountRecordMainBaseVO {
}

87
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordMainExcelVO.java

@ -0,0 +1,87 @@
package com.win.module.wms.controller.countRecord.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.ExcelProperty;
import com.win.framework.excel.core.annotations.DictFormat;
import com.win.framework.excel.core.convert.DictConvert;
/**
* 盘点记录主 Excel VO
*
* @author 超级管理员
*/
@Data
public class CountRecordMainExcelVO {
@ExcelProperty("申请单号")
private String requestNumber;
@ExcelProperty("任务单号")
private String jobNumber;
@ExcelProperty("计划单号")
private String planNumber;
@ExcelProperty(value = "阶段", converter = DictConvert.class)
@DictFormat("count_stage") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String stage;
@ExcelProperty("仓库代码")
private String warehouseCode;
@ExcelProperty("出库事务类型")
private String outTransactionType;
@ExcelProperty("入库事务类型")
private String inTransactionType;
@ExcelProperty("执行时间")
private LocalDateTime executeTime;
@ExcelProperty("生效日期")
private LocalDateTime activeDate;
@ExcelProperty("申请时间")
private LocalDateTime requestTime;
@ExcelProperty("截止时间")
private LocalDateTime dueTime;
@ExcelProperty("部门")
private String departmentCode;
@ExcelProperty(value = "接口类型", converter = DictConvert.class)
@DictFormat("interface_type") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String interfaceType;
@ExcelProperty("代码")
private String code;
@ExcelProperty("单据号")
private String number;
@ExcelProperty("业务类型")
private String businessType;
@ExcelProperty("备注")
private String remark;
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@ExcelProperty("创建者Id")
private String creator;
@ExcelProperty("是否可用")
private String available;
}

81
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordMainExportReqVO.java

@ -0,0 +1,81 @@
package com.win.module.wms.controller.countRecord.vo;
import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import java.time.LocalDateTime;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点记录主 Excel 导出 Request VO,参数和 CountRecordMainPageReqVO 是一致的")
@Data
public class CountRecordMainExportReqVO {
@Schema(description = "申请单号")
private String requestNumber;
@Schema(description = "任务单号")
private String jobNumber;
@Schema(description = "计划单号")
private String planNumber;
@Schema(description = "阶段")
private String stage;
@Schema(description = "仓库代码")
private String warehouseCode;
@Schema(description = "出库事务类型")
private String outTransactionType;
@Schema(description = "入库事务类型")
private String inTransactionType;
@Schema(description = "执行时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] executeTime;
@Schema(description = "生效日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] activeDate;
@Schema(description = "申请时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] requestTime;
@Schema(description = "截止时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] dueTime;
@Schema(description = "部门")
private String departmentCode;
@Schema(description = "接口类型")
private String interfaceType;
@Schema(description = "代码")
private String code;
@Schema(description = "单据号")
private String number;
@Schema(description = "业务类型")
private String businessType;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者Id")
private String creator;
@Schema(description = "是否可用")
private String available;
}

83
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordMainPageReqVO.java

@ -0,0 +1,83 @@
package com.win.module.wms.controller.countRecord.vo;
import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点记录主分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountRecordMainPageReqVO extends PageParam {
@Schema(description = "申请单号")
private String requestNumber;
@Schema(description = "任务单号")
private String jobNumber;
@Schema(description = "计划单号")
private String planNumber;
@Schema(description = "阶段")
private String stage;
@Schema(description = "仓库代码")
private String warehouseCode;
@Schema(description = "出库事务类型")
private String outTransactionType;
@Schema(description = "入库事务类型")
private String inTransactionType;
@Schema(description = "执行时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] executeTime;
@Schema(description = "生效日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] activeDate;
@Schema(description = "申请时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] requestTime;
@Schema(description = "截止时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] dueTime;
@Schema(description = "部门")
private String departmentCode;
@Schema(description = "接口类型")
private String interfaceType;
@Schema(description = "代码")
private String code;
@Schema(description = "单据号")
private String number;
@Schema(description = "业务类型")
private String businessType;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者Id")
private String creator;
@Schema(description = "是否可用")
private String available;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordMainRespVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countRecord.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点记录主 Response VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountRecordMainRespVO extends CountRecordMainBaseVO {
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRecord/vo/CountRecordMainUpdateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countRecord.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点记录主更新 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountRecordMainUpdateReqVO extends CountRecordMainBaseVO {
}

102
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/CountRequestDetailController.java

@ -0,0 +1,102 @@
package com.win.module.wms.controller.countRequest;
import com.win.module.wms.controller.countRequest.vo.*;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import javax.validation.*;
import javax.servlet.http.*;
import java.util.*;
import java.io.IOException;
import com.win.framework.common.pojo.PageResult;
import com.win.framework.common.pojo.CommonResult;
import static com.win.framework.common.pojo.CommonResult.success;
import com.win.framework.excel.core.util.ExcelUtils;
import com.win.framework.operatelog.core.annotations.OperateLog;
import static com.win.framework.operatelog.core.enums.OperateTypeEnum.*;
import com.win.module.wms.controller.countRequest.vo.*;
import com.win.module.wms.dal.dataobject.countRequest.CountRequestDetailDO;
import com.win.module.wms.convert.countRequest.CountRequestDetailConvert;
import com.win.module.wms.service.countRequest.CountRequestDetailService;
@Tag(name = "管理后台 - 盘点申请子")
@RestController
@RequestMapping("/wms/count-request-detail")
@Validated
public class CountRequestDetailController {
@Resource
private CountRequestDetailService countRequestDetailService;
@PostMapping("/create")
@Operation(summary = "创建盘点申请子")
@PreAuthorize("@ss.hasPermission('wms:count-request-detail:create')")
public CommonResult<Long> createCountRequestDetail(@Valid @RequestBody CountRequestDetailCreateReqVO createReqVO) {
return success(countRequestDetailService.createCountRequestDetail(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新盘点申请子")
@PreAuthorize("@ss.hasPermission('wms:count-request-detail:update')")
public CommonResult<Boolean> updateCountRequestDetail(@Valid @RequestBody CountRequestDetailUpdateReqVO updateReqVO) {
countRequestDetailService.updateCountRequestDetail(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除盘点申请子")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:count-request-detail:delete')")
public CommonResult<Boolean> deleteCountRequestDetail(@RequestParam("id") Long id) {
countRequestDetailService.deleteCountRequestDetail(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得盘点申请子")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('wms:count-request-detail:query')")
public CommonResult<CountRequestDetailRespVO> getCountRequestDetail(@RequestParam("id") Long id) {
CountRequestDetailDO countRequestDetail = countRequestDetailService.getCountRequestDetail(id);
return success(CountRequestDetailConvert.INSTANCE.convert(countRequestDetail));
}
@GetMapping("/list")
@Operation(summary = "获得盘点申请子列表")
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
@PreAuthorize("@ss.hasPermission('wms:count-request-detail:query')")
public CommonResult<List<CountRequestDetailRespVO>> getCountRequestDetailList(@RequestParam("ids") Collection<Long> ids) {
List<CountRequestDetailDO> list = countRequestDetailService.getCountRequestDetailList(ids);
return success(CountRequestDetailConvert.INSTANCE.convertList(list));
}
@GetMapping("/page")
@Operation(summary = "获得盘点申请子分页")
@PreAuthorize("@ss.hasPermission('wms:count-request-detail:query')")
public CommonResult<PageResult<CountRequestDetailRespVO>> getCountRequestDetailPage(@Valid CountRequestDetailPageReqVO pageVO) {
PageResult<CountRequestDetailDO> pageResult = countRequestDetailService.getCountRequestDetailPage(pageVO);
return success(CountRequestDetailConvert.INSTANCE.convertPage(pageResult));
}
@GetMapping("/export-excel")
@Operation(summary = "导出盘点申请子 Excel")
@PreAuthorize("@ss.hasPermission('wms:count-request-detail:export')")
@OperateLog(type = EXPORT)
public void exportCountRequestDetailExcel(@Valid CountRequestDetailExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<CountRequestDetailDO> list = countRequestDetailService.getCountRequestDetailList(exportReqVO);
// 导出 Excel
List<CountRequestDetailExcelVO> datas = CountRequestDetailConvert.INSTANCE.convertList02(list);
ExcelUtils.write(response, "盘点申请子.xls", "数据", CountRequestDetailExcelVO.class, datas);
}
}

102
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/CountRequestMainController.java

@ -0,0 +1,102 @@
package com.win.module.wms.controller.countRequest;
import com.win.module.wms.controller.countRequest.vo.*;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import javax.validation.*;
import javax.servlet.http.*;
import java.util.*;
import java.io.IOException;
import com.win.framework.common.pojo.PageResult;
import com.win.framework.common.pojo.CommonResult;
import static com.win.framework.common.pojo.CommonResult.success;
import com.win.framework.excel.core.util.ExcelUtils;
import com.win.framework.operatelog.core.annotations.OperateLog;
import static com.win.framework.operatelog.core.enums.OperateTypeEnum.*;
import com.win.module.wms.controller.countRequest.vo.*;
import com.win.module.wms.dal.dataobject.countRequest.CountRequestMainDO;
import com.win.module.wms.convert.countRequest.CountRequestMainConvert;
import com.win.module.wms.service.countRequest.CountRequestMainService;
@Tag(name = "管理后台 - 盘点申请主")
@RestController
@RequestMapping("/wms/count-request-main")
@Validated
public class CountRequestMainController {
@Resource
private CountRequestMainService countRequestMainService;
@PostMapping("/create")
@Operation(summary = "创建盘点申请主")
@PreAuthorize("@ss.hasPermission('wms:count-request-main:create')")
public CommonResult<Long> createCountRequestMain(@Valid @RequestBody CountRequestMainCreateReqVO createReqVO) {
return success(countRequestMainService.createCountRequestMain(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新盘点申请主")
@PreAuthorize("@ss.hasPermission('wms:count-request-main:update')")
public CommonResult<Boolean> updateCountRequestMain(@Valid @RequestBody CountRequestMainUpdateReqVO updateReqVO) {
countRequestMainService.updateCountRequestMain(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除盘点申请主")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:count-request-main:delete')")
public CommonResult<Boolean> deleteCountRequestMain(@RequestParam("id") Long id) {
countRequestMainService.deleteCountRequestMain(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得盘点申请主")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('wms:count-request-main:query')")
public CommonResult<CountRequestMainRespVO> getCountRequestMain(@RequestParam("id") Long id) {
CountRequestMainDO countRequestMain = countRequestMainService.getCountRequestMain(id);
return success(CountRequestMainConvert.INSTANCE.convert(countRequestMain));
}
@GetMapping("/list")
@Operation(summary = "获得盘点申请主列表")
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
@PreAuthorize("@ss.hasPermission('wms:count-request-main:query')")
public CommonResult<List<CountRequestMainRespVO>> getCountRequestMainList(@RequestParam("ids") Collection<Long> ids) {
List<CountRequestMainDO> list = countRequestMainService.getCountRequestMainList(ids);
return success(CountRequestMainConvert.INSTANCE.convertList(list));
}
@GetMapping("/page")
@Operation(summary = "获得盘点申请主分页")
@PreAuthorize("@ss.hasPermission('wms:count-request-main:query')")
public CommonResult<PageResult<CountRequestMainRespVO>> getCountRequestMainPage(@Valid CountRequestMainPageReqVO pageVO) {
PageResult<CountRequestMainDO> pageResult = countRequestMainService.getCountRequestMainPage(pageVO);
return success(CountRequestMainConvert.INSTANCE.convertPage(pageResult));
}
@GetMapping("/export-excel")
@Operation(summary = "导出盘点申请主 Excel")
@PreAuthorize("@ss.hasPermission('wms:count-request-main:export')")
@OperateLog(type = EXPORT)
public void exportCountRequestMainExcel(@Valid CountRequestMainExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<CountRequestMainDO> list = countRequestMainService.getCountRequestMainList(exportReqVO);
// 导出 Excel
List<CountRequestMainExcelVO> datas = CountRequestMainConvert.INSTANCE.convertList02(list);
ExcelUtils.write(response, "盘点申请主.xls", "数据", CountRequestMainExcelVO.class, datas);
}
}

92
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestDetailBaseVO.java

@ -0,0 +1,92 @@
package com.win.module.wms.controller.countRequest.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
/**
* 盘点申请子 Base VO提供给添加修改详细的子 VO 使用
* 如果子 VO 存在差异的字段请不要添加到这里影响 Swagger 文档生成
*/
@Data
public class CountRequestDetailBaseVO {
@Schema(description = "id", example = "id")
private Long id;
@Schema(description = "盘点明细号")
private String countDetailNumber;
@Schema(description = "货主代码")
private String ownerCode;
@Schema(description = "批次")
private String batch;
@Schema(description = "库位代码")
private String locationCode;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "单据号")
private String number;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime createTime;
@Schema(description = "创建者用户名")
private String creator;
@Schema(description = "物品名称")
private String itemName;
@Schema(description = "物品描述1")
private String itemDesc1;
@Schema(description = "物品描述2")
private String itemDesc2;
@Schema(description = "项目代码")
private String projectCode;
@Schema(description = "数量")
private BigDecimal qty;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "最后更新时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime updateTime;
@Schema(description = "最后更新者用户名")
private String updater;
@Schema(description = "物品代码")
private String itemCode;
@Schema(description = "从包装号")
private String fromPackingNumber;
@Schema(description = "到包装号")
private String toPackingNumber;
@Schema(description = "从器具号")
private String fromContainerNumber;
@Schema(description = "到器具号")
private String toContainerNumber;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestDetailCreateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countRequest.vo;
import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "管理后台 - 盘点申请子创建 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountRequestDetailCreateReqVO extends CountRequestDetailBaseVO {
}

91
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestDetailExcelVO.java

@ -0,0 +1,91 @@
package com.win.module.wms.controller.countRequest.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.ExcelProperty;
import com.win.framework.excel.core.annotations.DictFormat;
import com.win.framework.excel.core.convert.DictConvert;
/**
* 盘点申请子 Excel VO
*
* @author 超级管理员
*/
@Data
public class CountRequestDetailExcelVO {
@ExcelProperty("盘点明细号")
private String countDetailNumber;
@ExcelProperty("货主代码")
private String ownerCode;
@ExcelProperty("批次")
private String batch;
@ExcelProperty("库位代码")
private String locationCode;
@ExcelProperty(value = "库存状态", converter = DictConvert.class)
@DictFormat("inventory_status") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String inventoryStatus;
@ExcelProperty("单据号")
private String number;
@ExcelProperty("备注")
private String remark;
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@ExcelProperty("创建者用户名")
private String creator;
@ExcelProperty("物品名称")
private String itemName;
@ExcelProperty("物品描述1")
private String itemDesc1;
@ExcelProperty("物品描述2")
private String itemDesc2;
@ExcelProperty("项目代码")
private String projectCode;
@ExcelProperty("数量")
private BigDecimal qty;
@ExcelProperty(value = "计量单位", converter = DictConvert.class)
@DictFormat("uom") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String uom;
@ExcelProperty("最后更新时间")
private LocalDateTime updateTime;
@ExcelProperty("最后更新者用户名")
private String updater;
@ExcelProperty("物品代码")
private String itemCode;
@ExcelProperty("从包装号")
private String fromPackingNumber;
@ExcelProperty("到包装号")
private String toPackingNumber;
@ExcelProperty("从器具号")
private String fromContainerNumber;
@ExcelProperty("到器具号")
private String toContainerNumber;
}

86
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestDetailExportReqVO.java

@ -0,0 +1,86 @@
package com.win.module.wms.controller.countRequest.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import java.time.LocalDateTime;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点申请子 Excel 导出 Request VO,参数和 CountRequestDetailPageReqVO 是一致的")
@Data
public class CountRequestDetailExportReqVO {
@Schema(description = "盘点明细号")
private String countDetailNumber;
@Schema(description = "货主代码")
private String ownerCode;
@Schema(description = "批次")
private String batch;
@Schema(description = "库位代码")
private String locationCode;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "单据号")
private String number;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者用户名")
private String creator;
@Schema(description = "物品名称")
private String itemName;
@Schema(description = "物品描述1")
private String itemDesc1;
@Schema(description = "物品描述2")
private String itemDesc2;
@Schema(description = "项目代码")
private String projectCode;
@Schema(description = "数量")
private BigDecimal qty;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "最后更新时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] updateTime;
@Schema(description = "最后更新者用户名")
private String updater;
@Schema(description = "物品代码")
private String itemCode;
@Schema(description = "从包装号")
private String fromPackingNumber;
@Schema(description = "到包装号")
private String toPackingNumber;
@Schema(description = "从器具号")
private String fromContainerNumber;
@Schema(description = "到器具号")
private String toContainerNumber;
}

88
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestDetailPageReqVO.java

@ -0,0 +1,88 @@
package com.win.module.wms.controller.countRequest.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点申请子分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountRequestDetailPageReqVO extends PageParam {
@Schema(description = "盘点明细号")
private String countDetailNumber;
@Schema(description = "货主代码")
private String ownerCode;
@Schema(description = "批次")
private String batch;
@Schema(description = "库位代码")
private String locationCode;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "单据号")
private String number;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者用户名")
private String creator;
@Schema(description = "物品名称")
private String itemName;
@Schema(description = "物品描述1")
private String itemDesc1;
@Schema(description = "物品描述2")
private String itemDesc2;
@Schema(description = "项目代码")
private String projectCode;
@Schema(description = "数量")
private BigDecimal qty;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "最后更新时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] updateTime;
@Schema(description = "最后更新者用户名")
private String updater;
@Schema(description = "物品代码")
private String itemCode;
@Schema(description = "从包装号")
private String fromPackingNumber;
@Schema(description = "到包装号")
private String toPackingNumber;
@Schema(description = "从器具号")
private String fromContainerNumber;
@Schema(description = "到器具号")
private String toContainerNumber;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestDetailRespVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countRequest.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点申请子 Response VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountRequestDetailRespVO extends CountRequestDetailBaseVO {
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestDetailUpdateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countRequest.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点申请子更新 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountRequestDetailUpdateReqVO extends CountRequestDetailBaseVO {
}

86
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainBaseVO.java

@ -0,0 +1,86 @@
package com.win.module.wms.controller.countRequest.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
/**
* 盘点申请主 Base VO提供给添加修改详细的子 VO 使用
* 如果子 VO 存在差异的字段请不要添加到这里影响 Swagger 文档生成
*/
@Data
public class CountRequestMainBaseVO {
@Schema(description = "id", example = "id")
private Long id;
@Schema(description = "申请单号")
private String requestNumber;
@Schema(description = "计划单号")
private String planNumber;
@Schema(description = "阶段")
private String stage;
@Schema(description = "仓库代码")
private String warehouseCode;
@Schema(description = "单据号")
private String number;
@Schema(description = "业务类型")
private String businessType;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime createTime;
@Schema(description = "创建者用户名")
private String creator;
@Schema(description = "申请时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime requestTime;
@Schema(description = "截止时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime dueTime;
@Schema(description = "部门")
private String departmentCode;
@Schema(description = "状态")
private String status;
@Schema(description = "最后更新时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime updateTime;
@Schema(description = "最后更新者用户名")
private String updater;
@Schema(description = "自动提交")
private String autoCommit;
@Schema(description = "自动通过")
private String autoAgree;
@Schema(description = "自动执行")
private String autoExecute;
@Schema(description = "直接生成记录")
private String directCreateRecord;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainCreateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countRequest.vo;
import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "管理后台 - 盘点申请主创建 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountRequestMainCreateReqVO extends CountRequestMainBaseVO {
}

83
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainExcelVO.java

@ -0,0 +1,83 @@
package com.win.module.wms.controller.countRequest.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.ExcelProperty;
import com.win.framework.excel.core.annotations.DictFormat;
import com.win.framework.excel.core.convert.DictConvert;
/**
* 盘点申请主 Excel VO
*
* @author 超级管理员
*/
@Data
public class CountRequestMainExcelVO {
@ExcelProperty("申请单号")
private String requestNumber;
@ExcelProperty("计划单号")
private String planNumber;
@ExcelProperty(value = "阶段", converter = DictConvert.class)
@DictFormat("count_stage") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String stage;
@ExcelProperty("仓库代码")
private String warehouseCode;
@ExcelProperty("单据号")
private String number;
@ExcelProperty("业务类型")
private String businessType;
@ExcelProperty("备注")
private String remark;
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@ExcelProperty("创建者用户名")
private String creator;
@ExcelProperty("申请时间")
private LocalDateTime requestTime;
@ExcelProperty("截止时间")
private LocalDateTime dueTime;
@ExcelProperty("部门")
private String departmentCode;
@ExcelProperty(value = "状态", converter = DictConvert.class)
@DictFormat("request_status") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String status;
@ExcelProperty("最后更新时间")
private LocalDateTime updateTime;
@ExcelProperty("最后更新者用户名")
private String updater;
@ExcelProperty("自动提交")
private String autoCommit;
@ExcelProperty("自动通过")
private String autoAgree;
@ExcelProperty("自动执行")
private String autoExecute;
@ExcelProperty("直接生成记录")
private String directCreateRecord;
}

77
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainExportReqVO.java

@ -0,0 +1,77 @@
package com.win.module.wms.controller.countRequest.vo;
import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import java.time.LocalDateTime;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点申请主 Excel 导出 Request VO,参数和 CountRequestMainPageReqVO 是一致的")
@Data
public class CountRequestMainExportReqVO {
@Schema(description = "申请单号")
private String requestNumber;
@Schema(description = "计划单号")
private String planNumber;
@Schema(description = "阶段")
private String stage;
@Schema(description = "仓库代码")
private String warehouseCode;
@Schema(description = "单据号")
private String number;
@Schema(description = "业务类型")
private String businessType;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者用户名")
private String creator;
@Schema(description = "申请时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] requestTime;
@Schema(description = "截止时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] dueTime;
@Schema(description = "部门")
private String departmentCode;
@Schema(description = "状态")
private String status;
@Schema(description = "最后更新时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] updateTime;
@Schema(description = "最后更新者用户名")
private String updater;
@Schema(description = "自动提交")
private String autoCommit;
@Schema(description = "自动通过")
private String autoAgree;
@Schema(description = "自动执行")
private String autoExecute;
@Schema(description = "直接生成记录")
private String directCreateRecord;
}

79
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainPageReqVO.java

@ -0,0 +1,79 @@
package com.win.module.wms.controller.countRequest.vo;
import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点申请主分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountRequestMainPageReqVO extends PageParam {
@Schema(description = "申请单号")
private String requestNumber;
@Schema(description = "计划单号")
private String planNumber;
@Schema(description = "阶段")
private String stage;
@Schema(description = "仓库代码")
private String warehouseCode;
@Schema(description = "单据号")
private String number;
@Schema(description = "业务类型")
private String businessType;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者用户名")
private String creator;
@Schema(description = "申请时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] requestTime;
@Schema(description = "截止时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] dueTime;
@Schema(description = "部门")
private String departmentCode;
@Schema(description = "状态")
private String status;
@Schema(description = "最后更新时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] updateTime;
@Schema(description = "最后更新者用户名")
private String updater;
@Schema(description = "自动提交")
private String autoCommit;
@Schema(description = "自动通过")
private String autoAgree;
@Schema(description = "自动执行")
private String autoExecute;
@Schema(description = "直接生成记录")
private String directCreateRecord;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainRespVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countRequest.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点申请主 Response VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountRequestMainRespVO extends CountRequestMainBaseVO {
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countRequest/vo/CountRequestMainUpdateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countRequest.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点申请主更新 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountRequestMainUpdateReqVO extends CountRequestMainBaseVO {
}

102
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/CountadjustRecordDetailController.java

@ -0,0 +1,102 @@
package com.win.module.wms.controller.countadjustRecord;
import com.win.module.wms.controller.countadjustRecord.vo.*;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import javax.validation.*;
import javax.servlet.http.*;
import java.util.*;
import java.io.IOException;
import com.win.framework.common.pojo.PageResult;
import com.win.framework.common.pojo.CommonResult;
import static com.win.framework.common.pojo.CommonResult.success;
import com.win.framework.excel.core.util.ExcelUtils;
import com.win.framework.operatelog.core.annotations.OperateLog;
import static com.win.framework.operatelog.core.enums.OperateTypeEnum.*;
import com.win.module.wms.controller.countadjustRecord.vo.*;
import com.win.module.wms.dal.dataobject.countadjustRecord.CountadjustRecordDetailDO;
import com.win.module.wms.convert.countadjustRecord.CountadjustRecordDetailConvert;
import com.win.module.wms.service.countadjustRecord.CountadjustRecordDetailService;
@Tag(name = "管理后台 - 盘点调整记录子")
@RestController
@RequestMapping("/wms/countadjust-record-detail")
@Validated
public class CountadjustRecordDetailController {
@Resource
private CountadjustRecordDetailService countadjustRecordDetailService;
@PostMapping("/create")
@Operation(summary = "创建盘点调整记录子")
@PreAuthorize("@ss.hasPermission('wms:countadjust-record-detail:create')")
public CommonResult<Long> createCountadjustRecordDetail(@Valid @RequestBody CountadjustRecordDetailCreateReqVO createReqVO) {
return success(countadjustRecordDetailService.createCountadjustRecordDetail(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新盘点调整记录子")
@PreAuthorize("@ss.hasPermission('wms:countadjust-record-detail:update')")
public CommonResult<Boolean> updateCountadjustRecordDetail(@Valid @RequestBody CountadjustRecordDetailUpdateReqVO updateReqVO) {
countadjustRecordDetailService.updateCountadjustRecordDetail(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除盘点调整记录子")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:countadjust-record-detail:delete')")
public CommonResult<Boolean> deleteCountadjustRecordDetail(@RequestParam("id") Long id) {
countadjustRecordDetailService.deleteCountadjustRecordDetail(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得盘点调整记录子")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('wms:countadjust-record-detail:query')")
public CommonResult<CountadjustRecordDetailRespVO> getCountadjustRecordDetail(@RequestParam("id") Long id) {
CountadjustRecordDetailDO countadjustRecordDetail = countadjustRecordDetailService.getCountadjustRecordDetail(id);
return success(CountadjustRecordDetailConvert.INSTANCE.convert(countadjustRecordDetail));
}
@GetMapping("/list")
@Operation(summary = "获得盘点调整记录子列表")
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
@PreAuthorize("@ss.hasPermission('wms:countadjust-record-detail:query')")
public CommonResult<List<CountadjustRecordDetailRespVO>> getCountadjustRecordDetailList(@RequestParam("ids") Collection<Long> ids) {
List<CountadjustRecordDetailDO> list = countadjustRecordDetailService.getCountadjustRecordDetailList(ids);
return success(CountadjustRecordDetailConvert.INSTANCE.convertList(list));
}
@GetMapping("/page")
@Operation(summary = "获得盘点调整记录子分页")
@PreAuthorize("@ss.hasPermission('wms:countadjust-record-detail:query')")
public CommonResult<PageResult<CountadjustRecordDetailRespVO>> getCountadjustRecordDetailPage(@Valid CountadjustRecordDetailPageReqVO pageVO) {
PageResult<CountadjustRecordDetailDO> pageResult = countadjustRecordDetailService.getCountadjustRecordDetailPage(pageVO);
return success(CountadjustRecordDetailConvert.INSTANCE.convertPage(pageResult));
}
@GetMapping("/export-excel")
@Operation(summary = "导出盘点调整记录子 Excel")
@PreAuthorize("@ss.hasPermission('wms:countadjust-record-detail:export')")
@OperateLog(type = EXPORT)
public void exportCountadjustRecordDetailExcel(@Valid CountadjustRecordDetailExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<CountadjustRecordDetailDO> list = countadjustRecordDetailService.getCountadjustRecordDetailList(exportReqVO);
// 导出 Excel
List<CountadjustRecordDetailExcelVO> datas = CountadjustRecordDetailConvert.INSTANCE.convertList02(list);
ExcelUtils.write(response, "盘点调整记录子.xls", "数据", CountadjustRecordDetailExcelVO.class, datas);
}
}

102
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/CountadjustRecordMainController.java

@ -0,0 +1,102 @@
package com.win.module.wms.controller.countadjustRecord;
import com.win.module.wms.controller.countadjustRecord.vo.*;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import javax.validation.*;
import javax.servlet.http.*;
import java.util.*;
import java.io.IOException;
import com.win.framework.common.pojo.PageResult;
import com.win.framework.common.pojo.CommonResult;
import static com.win.framework.common.pojo.CommonResult.success;
import com.win.framework.excel.core.util.ExcelUtils;
import com.win.framework.operatelog.core.annotations.OperateLog;
import static com.win.framework.operatelog.core.enums.OperateTypeEnum.*;
import com.win.module.wms.controller.countadjustRecord.vo.*;
import com.win.module.wms.dal.dataobject.countadjustRecord.CountadjustRecordMainDO;
import com.win.module.wms.convert.countadjustRecord.CountadjustRecordMainConvert;
import com.win.module.wms.service.countadjustRecord.CountadjustRecordMainService;
@Tag(name = "管理后台 - 盘点调整记录主")
@RestController
@RequestMapping("/wms/countadjust-record-main")
@Validated
public class CountadjustRecordMainController {
@Resource
private CountadjustRecordMainService countadjustRecordMainService;
@PostMapping("/create")
@Operation(summary = "创建盘点调整记录主")
@PreAuthorize("@ss.hasPermission('wms:countadjust-record-main:create')")
public CommonResult<Long> createCountadjustRecordMain(@Valid @RequestBody CountadjustRecordMainCreateReqVO createReqVO) {
return success(countadjustRecordMainService.createCountadjustRecordMain(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新盘点调整记录主")
@PreAuthorize("@ss.hasPermission('wms:countadjust-record-main:update')")
public CommonResult<Boolean> updateCountadjustRecordMain(@Valid @RequestBody CountadjustRecordMainUpdateReqVO updateReqVO) {
countadjustRecordMainService.updateCountadjustRecordMain(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除盘点调整记录主")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('wms:countadjust-record-main:delete')")
public CommonResult<Boolean> deleteCountadjustRecordMain(@RequestParam("id") Long id) {
countadjustRecordMainService.deleteCountadjustRecordMain(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得盘点调整记录主")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('wms:countadjust-record-main:query')")
public CommonResult<CountadjustRecordMainRespVO> getCountadjustRecordMain(@RequestParam("id") Long id) {
CountadjustRecordMainDO countadjustRecordMain = countadjustRecordMainService.getCountadjustRecordMain(id);
return success(CountadjustRecordMainConvert.INSTANCE.convert(countadjustRecordMain));
}
@GetMapping("/list")
@Operation(summary = "获得盘点调整记录主列表")
@Parameter(name = "ids", description = "编号列表", required = true, example = "1024,2048")
@PreAuthorize("@ss.hasPermission('wms:countadjust-record-main:query')")
public CommonResult<List<CountadjustRecordMainRespVO>> getCountadjustRecordMainList(@RequestParam("ids") Collection<Long> ids) {
List<CountadjustRecordMainDO> list = countadjustRecordMainService.getCountadjustRecordMainList(ids);
return success(CountadjustRecordMainConvert.INSTANCE.convertList(list));
}
@GetMapping("/page")
@Operation(summary = "获得盘点调整记录主分页")
@PreAuthorize("@ss.hasPermission('wms:countadjust-record-main:query')")
public CommonResult<PageResult<CountadjustRecordMainRespVO>> getCountadjustRecordMainPage(@Valid CountadjustRecordMainPageReqVO pageVO) {
PageResult<CountadjustRecordMainDO> pageResult = countadjustRecordMainService.getCountadjustRecordMainPage(pageVO);
return success(CountadjustRecordMainConvert.INSTANCE.convertPage(pageResult));
}
@GetMapping("/export-excel")
@Operation(summary = "导出盘点调整记录主 Excel")
@PreAuthorize("@ss.hasPermission('wms:countadjust-record-main:export')")
@OperateLog(type = EXPORT)
public void exportCountadjustRecordMainExcel(@Valid CountadjustRecordMainExportReqVO exportReqVO,
HttpServletResponse response) throws IOException {
List<CountadjustRecordMainDO> list = countadjustRecordMainService.getCountadjustRecordMainList(exportReqVO);
// 导出 Excel
List<CountadjustRecordMainExcelVO> datas = CountadjustRecordMainConvert.INSTANCE.convertList02(list);
ExcelUtils.write(response, "盘点调整记录主.xls", "数据", CountadjustRecordMainExcelVO.class, datas);
}
}

99
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordDetailBaseVO.java

@ -0,0 +1,99 @@
package com.win.module.wms.controller.countadjustRecord.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
/**
* 盘点调整记录子 Base VO提供给添加修改详细的子 VO 使用
* 如果子 VO 存在差异的字段请不要添加到这里影响 Swagger 文档生成
*/
@Data
public class CountadjustRecordDetailBaseVO {
@Schema(description = "id", example = "id")
private Long id;
@Schema(description = "盘点明细号")
private String countDetailNumber;
@Schema(description = "货主代码")
private String ownerCode;
@Schema(description = "包装号")
private String packingNumber;
@Schema(description = "器具号")
private String containerNumber;
@Schema(description = "批次")
private String batch;
@Schema(description = "库位代码")
private String locationCode;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "库存数量")
private BigDecimal inventoryQty;
@Schema(description = "盘点数量")
private BigDecimal countQty;
@Schema(description = "调整数量")
private BigDecimal adjustQty;
@Schema(description = "物品名称")
private String itemName;
@Schema(description = "物品描述1")
private String itemDesc1;
@Schema(description = "物品描述2")
private String itemDesc2;
@Schema(description = "项目代码")
private String projectCode;
@Schema(description = "数量")
private BigDecimal qty;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "代码")
private String code;
@Schema(description = "接口类型")
private String interfaceType;
@Schema(description = "单据号")
private String number;
@Schema(description = "物品代码")
private String itemCode;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime createTime;
@Schema(description = "创建者Id")
private String creator;
@Schema(description = "任务明细ID")
private String jobDetailId;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordDetailCreateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countadjustRecord.vo;
import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "管理后台 - 盘点调整记录子创建 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountadjustRecordDetailCreateReqVO extends CountadjustRecordDetailBaseVO {
}

100
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordDetailExcelVO.java

@ -0,0 +1,100 @@
package com.win.module.wms.controller.countadjustRecord.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.ExcelProperty;
import com.win.framework.excel.core.annotations.DictFormat;
import com.win.framework.excel.core.convert.DictConvert;
/**
* 盘点调整记录子 Excel VO
*
* @author 超级管理员
*/
@Data
public class CountadjustRecordDetailExcelVO {
@ExcelProperty("盘点明细号")
private String countDetailNumber;
@ExcelProperty("货主代码")
private String ownerCode;
@ExcelProperty("包装号")
private String packingNumber;
@ExcelProperty("器具号")
private String containerNumber;
@ExcelProperty("批次")
private String batch;
@ExcelProperty("库位代码")
private String locationCode;
@ExcelProperty(value = "库存状态", converter = DictConvert.class)
@DictFormat("inventory_status") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String inventoryStatus;
@ExcelProperty("库存数量")
private BigDecimal inventoryQty;
@ExcelProperty("盘点数量")
private BigDecimal countQty;
@ExcelProperty("调整数量")
private BigDecimal adjustQty;
@ExcelProperty("物品名称")
private String itemName;
@ExcelProperty("物品描述1")
private String itemDesc1;
@ExcelProperty("物品描述2")
private String itemDesc2;
@ExcelProperty("项目代码")
private String projectCode;
@ExcelProperty("数量")
private BigDecimal qty;
@ExcelProperty(value = "计量单位", converter = DictConvert.class)
@DictFormat("uom") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String uom;
@ExcelProperty("代码")
private String code;
@ExcelProperty(value = "接口类型", converter = DictConvert.class)
@DictFormat("interface_type") // TODO 代码优化:建议设置到对应的 XXXDictTypeConstants 枚举类中
private String interfaceType;
@ExcelProperty("单据号")
private String number;
@ExcelProperty("物品代码")
private String itemCode;
@ExcelProperty("备注")
private String remark;
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@ExcelProperty("创建者Id")
private String creator;
@ExcelProperty("任务明细ID")
private String jobDetailId;
}

91
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordDetailExportReqVO.java

@ -0,0 +1,91 @@
package com.win.module.wms.controller.countadjustRecord.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import java.time.LocalDateTime;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点调整记录子 Excel 导出 Request VO,参数和 CountadjustRecordDetailPageReqVO 是一致的")
@Data
public class CountadjustRecordDetailExportReqVO {
@Schema(description = "盘点明细号")
private String countDetailNumber;
@Schema(description = "货主代码")
private String ownerCode;
@Schema(description = "包装号")
private String packingNumber;
@Schema(description = "器具号")
private String containerNumber;
@Schema(description = "批次")
private String batch;
@Schema(description = "库位代码")
private String locationCode;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "库存数量")
private BigDecimal inventoryQty;
@Schema(description = "盘点数量")
private BigDecimal countQty;
@Schema(description = "调整数量")
private BigDecimal adjustQty;
@Schema(description = "物品名称")
private String itemName;
@Schema(description = "物品描述1")
private String itemDesc1;
@Schema(description = "物品描述2")
private String itemDesc2;
@Schema(description = "项目代码")
private String projectCode;
@Schema(description = "数量")
private BigDecimal qty;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "代码")
private String code;
@Schema(description = "接口类型")
private String interfaceType;
@Schema(description = "单据号")
private String number;
@Schema(description = "物品代码")
private String itemCode;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者Id")
private String creator;
@Schema(description = "任务明细ID")
private String jobDetailId;
}

93
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordDetailPageReqVO.java

@ -0,0 +1,93 @@
package com.win.module.wms.controller.countadjustRecord.vo;
import lombok.*;
import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.win.framework.common.pojo.PageParam;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 盘点调整记录子分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountadjustRecordDetailPageReqVO extends PageParam {
@Schema(description = "盘点明细号")
private String countDetailNumber;
@Schema(description = "货主代码")
private String ownerCode;
@Schema(description = "包装号")
private String packingNumber;
@Schema(description = "器具号")
private String containerNumber;
@Schema(description = "批次")
private String batch;
@Schema(description = "库位代码")
private String locationCode;
@Schema(description = "库存状态")
private String inventoryStatus;
@Schema(description = "库存数量")
private BigDecimal inventoryQty;
@Schema(description = "盘点数量")
private BigDecimal countQty;
@Schema(description = "调整数量")
private BigDecimal adjustQty;
@Schema(description = "物品名称")
private String itemName;
@Schema(description = "物品描述1")
private String itemDesc1;
@Schema(description = "物品描述2")
private String itemDesc2;
@Schema(description = "项目代码")
private String projectCode;
@Schema(description = "数量")
private BigDecimal qty;
@Schema(description = "计量单位")
private String uom;
@Schema(description = "代码")
private String code;
@Schema(description = "接口类型")
private String interfaceType;
@Schema(description = "单据号")
private String number;
@Schema(description = "物品代码")
private String itemCode;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者Id")
private String creator;
@Schema(description = "任务明细ID")
private String jobDetailId;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordDetailRespVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countadjustRecord.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点调整记录子 Response VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountadjustRecordDetailRespVO extends CountadjustRecordDetailBaseVO {
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordDetailUpdateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countadjustRecord.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
@Schema(description = "管理后台 - 盘点调整记录子更新 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountadjustRecordDetailUpdateReqVO extends CountadjustRecordDetailBaseVO {
}

85
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordMainBaseVO.java

@ -0,0 +1,85 @@
package com.win.module.wms.controller.countadjustRecord.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
/**
* 盘点调整记录主 Base VO提供给添加修改详细的子 VO 使用
* 如果子 VO 存在差异的字段请不要添加到这里影响 Swagger 文档生成
*/
@Data
public class CountadjustRecordMainBaseVO {
@Schema(description = "id", example = "id")
private Long id;
@Schema(description = "申请单号")
private String requestNumber;
@Schema(description = "盘点记录单号")
private String countRecordNumber;
@Schema(description = "仓库代码")
private String warehouseCode;
@Schema(description = "出库事务类型")
private String outTransactionType;
@Schema(description = "入库事务类型")
private String inTransactionType;
@Schema(description = "执行时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime executeTime;
@Schema(description = "生效日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime activeDate;
@Schema(description = "申请时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime requestTime;
@Schema(description = "截止时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime dueTime;
@Schema(description = "部门")
private String departmentCode;
@Schema(description = "接口类型")
private String interfaceType;
@Schema(description = "代码")
private String code;
@Schema(description = "单据号")
private String number;
@Schema(description = "业务类型")
private String businessType;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime createTime;
@Schema(description = "创建者Id")
private String creator;
@Schema(description = "是否可用")
private String available;
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/countadjustRecord/vo/CountadjustRecordMainCreateReqVO.java

@ -0,0 +1,12 @@
package com.win.module.wms.controller.countadjustRecord.vo;
import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "管理后台 - 盘点调整记录主创建 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class CountadjustRecordMainCreateReqVO extends CountadjustRecordMainBaseVO {
}

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save