diff --git a/src/main/java/com/example/demo/controller/cash/BankController.java b/src/main/java/com/example/demo/controller/cash/BankController.java index e20caf8..32d4263 100644 --- a/src/main/java/com/example/demo/controller/cash/BankController.java +++ b/src/main/java/com/example/demo/controller/cash/BankController.java @@ -114,4 +114,5 @@ public class BankController { return Result.error(e.getMessage()); } } + } \ No newline at end of file diff --git a/src/main/java/com/example/demo/service/cash/BankService.java b/src/main/java/com/example/demo/service/cash/BankService.java index b0c44b9..a74456f 100644 --- a/src/main/java/com/example/demo/service/cash/BankService.java +++ b/src/main/java/com/example/demo/service/cash/BankService.java @@ -36,4 +36,6 @@ public interface BankService { //firstdata银行接口(批量) Result ipayAuto(BankDTO bankDTO); + //bank银行接口(批量) + Result bankAuto(); } \ No newline at end of file diff --git a/src/main/java/com/example/demo/serviceImpl/cash/BankServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/cash/BankServiceImpl.java index 2a06d50..867b719 100644 --- a/src/main/java/com/example/demo/serviceImpl/cash/BankServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/cash/BankServiceImpl.java @@ -18,6 +18,7 @@ import com.stripe.param.ChargeListParams; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.*; +import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Service; import org.springframework.util.LinkedMultiValueMap; import org.springframework.util.MultiValueMap; @@ -714,6 +715,50 @@ public class BankServiceImpl implements BankService { return Result.success(bankVO); } + // 银行自动处理接口(每天早上6点执行) + @Scheduled(cron = "1 0 6 * * ?") + @Override + public Result bankAuto() { + try { + // 生成昨天的日期,格式为yyyyMMdd + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd"); + LocalDate yesterday = LocalDate.now().minusDays(1); + String yesterdayStr = yesterday.format(formatter); + LocalDate today = LocalDate.now(); + String todayStr = today.format(formatter); + // 创建BankDTO实例并设置时间 + BankDTO dto = new BankDTO(); + dto.setTime(yesterdayStr); + dto.setStartTime(yesterdayStr); + dto.setEndTime(todayStr); + dto.setTime(yesterdayStr); + + // 依次调用各个自动处理方法 + Result paymentResult = paymentAuto(dto); + Result stripeResult = stripeAuto(dto); + Result firstdataResult = firstdataAuto(dto); + Result ipayResult = ipayAuto(dto); + + // 创建响应VO对象并收集处理结果 + BankVO bankVO = new BankVO(); + List messages = new ArrayList<>(); + + // 收集各方法的处理结果信息 + messages.add("Payment Auto Result: " + (paymentResult != null ? paymentResult.toString() : "null")); + messages.add("Stripe Auto Result: " + (stripeResult != null ? stripeResult.toString() : "null")); + messages.add("Firstdata Auto Result: " + (firstdataResult != null ? firstdataResult.toString() : "null")); + messages.add("Ipay Auto Result: " + (ipayResult != null ? ipayResult.toString() : "null")); + + bankVO.setMessage(messages); + + return Result.success(bankVO); + } catch (Exception e) { + log.error("bankAuto执行失败", e); + return Result.error("bankAuto执行失败: " + e.getMessage()); + } + } + + /** * 生成PaymentAsia API所需的签名 * @@ -786,4 +831,7 @@ public class BankServiceImpl implements BankService { } return hexStr.toString(); } + + + } \ No newline at end of file