| | |
| | | |
| | | import com.tourguide.common.api.ApiResponse; |
| | | import com.tourguide.common.api.PageResponse; |
| | | import com.tourguide.common.exception.BusinessException; |
| | | import com.tourguide.modules.finance.dto.FinanceLedgerPageResponse; |
| | | import com.tourguide.modules.finance.dto.WithdrawalProcessRequest; |
| | | import com.tourguide.modules.finance.dto.WithdrawalResponse; |
| | |
| | | @RequestParam(required = false) String keyword, |
| | | @RequestParam(required = false) String paymentMethod, |
| | | @RequestParam(required = false) @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) LocalDate startDate, |
| | | @RequestParam(required = false) @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) LocalDate endDate) { |
| | | @RequestParam(required = false) @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) LocalDate endDate, |
| | | Authentication authentication) { |
| | | String requiredAuthority = "REFUND".equalsIgnoreCase(direction) |
| | | ? "PERM_FINANCE_REFUND_VIEW" : "PERM_FINANCE_DETAIL_VIEW"; |
| | | if (authentication.getAuthorities().stream() |
| | | .noneMatch(authority -> requiredAuthority.equals(authority.getAuthority()))) { |
| | | throw new BusinessException(403, "无权访问该财务流水"); |
| | | } |
| | | return ApiResponse.success(financeService.ledger(page, size, direction, keyword, paymentMethod, startDate, endDate)); |
| | | } |
| | | |