LedgerController.java 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. package com.sckw.freight.controller;
  2. import com.sckw.freight.model.dto.PayIndex;
  3. import com.sckw.freight.model.vo.request.RequestLedgerLogisticsPageInfo;
  4. import com.sckw.freight.model.vo.request.RequestSaveLedgerLogisticsInfo;
  5. import com.sckw.freight.model.vo.response.ResponseKllOrderTask;
  6. import com.sckw.freight.model.vo.response.ResponseLedgerLogistics;
  7. import com.sckw.freight.model.vo.response.ResponseLedgerLogisticsStatistics;
  8. import com.sckw.freight.model.vo.response.ResponsePageData;
  9. import com.sckw.freight.service.freight.IKwpLedgerLogisticsService;
  10. import com.sckw.freight.util.R;
  11. import io.swagger.v3.oas.annotations.Operation;
  12. import io.swagger.v3.oas.annotations.Parameter;
  13. import io.swagger.v3.oas.annotations.Parameters;
  14. import io.swagger.v3.oas.annotations.tags.Tag;
  15. import lombok.extern.slf4j.Slf4j;
  16. import org.apache.commons.lang3.StringUtils;
  17. import org.springframework.beans.factory.annotation.Autowired;
  18. import org.springframework.web.bind.annotation.*;
  19. import java.util.List;
  20. /**
  21. * @BelongsProject: Freight-Settlement-Backend
  22. * @BelongsPackage: com.sckw.freight.controller
  23. * @Author: xj
  24. * @CreateTime: 2025-01-10 10:18
  25. * @Description: 对账结算
  26. * @Version: 1.0
  27. */
  28. @RestController
  29. @RequestMapping("/ledger")
  30. @CrossOrigin(origins = "*") // 允许所有来源的请求跨域
  31. @Slf4j
  32. @Tag(name = "对账结算")
  33. public class LedgerController {
  34. @Autowired
  35. IKwpLedgerLogisticsService iKwpLedgerLogisticsService;
  36. /**
  37. * 保存对账结算
  38. *
  39. * @return
  40. */
  41. @PostMapping("/add")
  42. @Operation(summary = "新建物流对账单")
  43. public R<String> add(@RequestBody RequestSaveLedgerLogisticsInfo requestSaveLedgerSettlementInfo) {
  44. return iKwpLedgerLogisticsService.saveLedgerLogistics(requestSaveLedgerSettlementInfo);
  45. }
  46. /**
  47. * 分页查询对账单
  48. *
  49. * @return
  50. */
  51. @PostMapping("/list")
  52. @Operation(summary = "分页查询对账单")
  53. public R<ResponsePageData<ResponseLedgerLogistics>> list(@RequestBody RequestLedgerLogisticsPageInfo requestPageInfo) {
  54. return iKwpLedgerLogisticsService.queryLedgerLogistics(requestPageInfo);
  55. }
  56. /**
  57. * 根据对账单id查询运单列表信息
  58. *
  59. * @return
  60. */
  61. @GetMapping("/queryOrderTaskListByLedgerLogisticsId")
  62. @Operation(summary = "根据对账单id查询运单列表信息")
  63. @Parameters(value = {
  64. @Parameter(name = "ledgerLogisticsId", description = "对账单id"),
  65. @Parameter(name = "entId", description = "企业id")
  66. })
  67. public R<List<ResponseKllOrderTask>> queryOrderTaskListByLedgerLogisticsId(
  68. @RequestParam(value = "ledgerLogisticsId", required = true) Long ledgerLogisticsId,
  69. @RequestParam(value = "entId", required = true) Long entId) {
  70. return iKwpLedgerLogisticsService.queryOrderTaskListByLedgerLogisticsId(ledgerLogisticsId, entId);
  71. }
  72. @GetMapping("/queryLedgerLogisticsStatistics")
  73. @Operation(summary = "物流对账单-统计信息")
  74. @Parameters(value = {
  75. @Parameter(name = "entId", description = "企业id")
  76. })
  77. public R<ResponseLedgerLogisticsStatistics> queryLedgerLogisticsStatistics(@RequestParam(value = "entId") String entId) {
  78. //非数字则置空
  79. if(!StringUtils.isNumeric(entId)){
  80. entId=null;
  81. }
  82. return iKwpLedgerLogisticsService.queryLedgerLogisticsStatistics(entId );
  83. }
  84. /**
  85. * @description: 申请收款
  86. * @author: xj
  87. * @date: 2025/1/14 星期二 10:47
  88. * @param:
  89. * @return: null
  90. **/
  91. @GetMapping("/applyPayment")
  92. @Operation(summary = "物流对账单-申请收款")
  93. @Parameters(value = {
  94. @Parameter(name = "ledgerLogisticsId", description = "对账单id"),
  95. @Parameter(name = "entId", description = "企业id")
  96. })
  97. public R<PayIndex> applyPayment(
  98. @RequestParam(value = "ledgerLogisticsId", required = true) Long ledgerLogisticsId,
  99. @RequestParam(value = "entId", required = true) String entId) {
  100. if (StringUtils.isBlank(entId)|| !StringUtils.isNumeric(entId)) return R.failed("企业id不能为空");
  101. Long dEntId = Long.valueOf(entId);
  102. return iKwpLedgerLogisticsService.applyPayment(ledgerLogisticsId, dEntId);
  103. }
  104. }