|
|
@@ -142,6 +142,27 @@ public class AccountController {
|
|
|
return Result.ok(alipayTransferService.queryOnboard(enterpriseId, orderId));
|
|
|
}
|
|
|
|
|
|
+ /** 手动同步进件状态 — 调支付宝拉最新状态并更新DB */
|
|
|
+ @PostMapping("/onboard/refresh")
|
|
|
+ public Result<Map<String, String>> refreshOnboardStatus(@RequestBody Map<String, Object> b) {
|
|
|
+ String enterpriseId = (String) b.get("enterprise_id");
|
|
|
+ AccountEntity account = accountMapper.selectOne(
|
|
|
+ new com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper<AccountEntity>()
|
|
|
+ .eq(AccountEntity::getEnterpriseId, enterpriseId));
|
|
|
+ if (account == null || account.getOnboardOrderId() == null)
|
|
|
+ return Result.fail(400, "未找到进件记录");
|
|
|
+ Map<String, String> result = alipayTransferService.queryOnboard(enterpriseId, account.getOnboardOrderId());
|
|
|
+ String status = result.get("status");
|
|
|
+ if (status != null && !status.equals(account.getOnboardStatus())) {
|
|
|
+ account.setOnboardStatus(status);
|
|
|
+ accountMapper.updateById(account);
|
|
|
+ }
|
|
|
+ return Result.ok(Map.of(
|
|
|
+ "order_id", account.getOnboardOrderId(),
|
|
|
+ "old_status", account.getOnboardStatus(),
|
|
|
+ "alipay_status", status));
|
|
|
+ }
|
|
|
+
|
|
|
/** 查询本地进件状态(不走支付宝,直接读DB) */
|
|
|
@GetMapping("/onboard/status")
|
|
|
public Result<Map<String, String>> onboardStatus(
|