feat: A301-2 认领公告查询接口适配新参数(billstatus/modifytimeS/modifytimeE),时间窗口配置化(Nacos thirdParty.bfi.claimAnnounce.months,默认6个月)

This commit is contained in:
刘泉佳
2026-09-28 15:49:53 +08:00
parent 85b703b7d5
commit 4d62bb6df7
9 changed files with 721 additions and 21 deletions
@@ -415,15 +415,21 @@ public interface IBfiClient {
/**
* A301-2 收款认领公告查询
*
* @param accessToken 访问令牌,通过 getToken 获取
* @param claimusers 参与认领用户名
* @param pageNo 页码,从1开始
* @param pageSize 页数
* @param accessToken 访问令牌,通过 getToken 获取
* @param claimusers 参与认领用户名
* @param billstatus 单据状态(0-未认领,1-已认领)
* @param modifytimeS 修改时间-开始时间,格式:yyyy-MM-dd
* @param modifytimeE 修改时间-结束时间,格式:yyyy-MM-dd
* @param pageNo 页码,从1开始
* @param pageSize 页数
* @return 收款认领公告分页数据
*/
@GetMapping(CLAIM_ANNOUNCE_QUERY_URL)
BfiResultVO<BfiPageVO<BfiClaimAnnounceVO>> claimAnnounceQuery(@RequestHeader(BfiConstant.HEADER_ACCESS_TOKEN) String accessToken,
@RequestParam("claimusers") String claimusers,
@RequestParam(value = "billstatus", required = false) String billstatus,
@RequestParam("modifytimeS") String modifytimeS,
@RequestParam("modifytimeE") String modifytimeE,
@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize);
@@ -36,7 +36,7 @@ import java.io.Serializable;
* <p>
* 请求示例:
* <pre>{@code
* GET /ierp/kapi/v2/awrp/cas/cas_claimannounce/query?claimusers=苏浩晖&pageSize=10&pageNo=1
* GET /ierp/kapi/v2/awrp/cas/cas_claimannounce/query?claimusers=苏浩晖&billstatus=0&modifytimeS=2024-01-01&modifytimeE=2024-06-30&pageNo=1&pageSize=10
* }</pre>
*
* @author Chill
@@ -50,6 +50,18 @@ public class BfiClaimAnnounceQueryDTO implements Serializable {
* 【必填】参与认领用户名
*/
private String claimusers;
/**
* 单据状态(0-未认领,1-已认领)
*/
private String billstatus;
/**
* 【必填】修改时间-开始时间,格式:yyyy-MM-dd
*/
private String modifytimeS;
/**
* 【必填】修改时间-结束时间,格式:yyyy-MM-dd
*/
private String modifytimeE;
/**
* 【必填】页码,从1开始
*/
@@ -264,12 +264,10 @@ public interface IBfiService {
/**
* A301-2 收款认领公告查询
*
* @param claimusers 参与认领用户名
* @param pageNo 页码,从1开始
* @param pageSize 页数
* @param param 查询参数,claimusers/modifytimeS/modifytimeE 必填,页码从1开始
* @return 收款认领公告分页数据
*/
BfiPageVO<BfiClaimAnnounceVO> queryClaimAnnounce(String claimusers, Integer pageNo, Integer pageSize);
BfiPageVO<BfiClaimAnnounceVO> queryClaimAnnounce(BfiClaimAnnounceQueryDTO param);
/**
* A301-3 收款认领结果推送
@@ -42,6 +42,7 @@ import org.springblade.thirdparty.bfi.pojo.dto.BfiApBillSaveDTO;
import org.springblade.thirdparty.bfi.pojo.dto.BfiArBillQueryDTO;
import org.springblade.thirdparty.bfi.pojo.dto.BfiArBillSaveBodyDTO;
import org.springblade.thirdparty.bfi.pojo.dto.BfiArBillSaveDTO;
import org.springblade.thirdparty.bfi.pojo.dto.BfiClaimAnnounceQueryDTO;
import org.springblade.thirdparty.bfi.pojo.dto.BfiClaimPushBodyDTO;
import org.springblade.thirdparty.bfi.pojo.dto.BfiClaimPushDTO;
import org.springblade.thirdparty.bfi.pojo.dto.BfiCustomerQueryDTO;
@@ -473,15 +474,19 @@ public class BfiServiceImpl implements IBfiService {
}
@Override
public BfiPageVO<BfiClaimAnnounceVO> queryClaimAnnounce(String claimusers, Integer pageNo, Integer pageSize) {
if (StringUtil.isBlank(claimusers)) {
public BfiPageVO<BfiClaimAnnounceVO> queryClaimAnnounce(BfiClaimAnnounceQueryDTO param) {
if (param == null || StringUtil.isBlank(param.getClaimusers())) {
throw new BfiException("查询BFI收款认领公告失败,参与认领用户名不能为空");
}
if (pageNo == null || pageSize == null) {
if (StringUtil.isBlank(param.getModifytimeS()) || StringUtil.isBlank(param.getModifytimeE())) {
throw new BfiException("查询BFI收款认领公告失败,修改时间范围不能为空");
}
if (param.getPageNo() == null || param.getPageSize() == null) {
throw new BfiException("查询BFI收款认领公告失败,分页参数不能为空");
}
String accessToken = getAccessToken();
BfiResultVO<BfiPageVO<BfiClaimAnnounceVO>> result = commonCall("收款认领公告查询", () -> client.claimAnnounceQuery(accessToken, claimusers, pageNo, pageSize));
BfiResultVO<BfiPageVO<BfiClaimAnnounceVO>> result = commonCall("收款认领公告查询", () -> client.claimAnnounceQuery(accessToken,
param.getClaimusers(), param.getBillstatus(), param.getModifytimeS(), param.getModifytimeE(), param.getPageNo(), param.getPageSize()));
return result.getData();
}