This commit is contained in:
张秉卓
2026-04-07 17:51:27 +08:00
parent 488aec478a
commit 06e8e5ed88
32 changed files with 2273 additions and 2 deletions

View File

@ -0,0 +1,16 @@
package com.xjrsoft.module.fssp.callback;
/**
* FsspCallback接口定义了一个回调方法的规范
* 该接口用于实现回调机制,允许在特定事件发生时执行预定义的操作
*/
public interface FsspCallback<Resp> {
/**
* 执行回调方法
* 当触发回调条件时,此方法将被调用
* 不接收任何参数,也不返回任何值
*/
void execute(Resp resp);
}

View File

@ -0,0 +1,197 @@
package com.xjrsoft.module.fssp.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* 应用令牌响应类,用于封装应用令牌接口返回的数据
*/
@Data
public class LngJkRpBillDto {
/**
* 电子回单id
*/
private String id;
/**
* 单据编号
*/
private String billno;
/**
* 资金组织编码, 公司三字码
*/
private String orgNumber;
/**
* 资金组织名称
*/
private String orgName;
/**
* 交易日期
*/
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime bizdate;
/**
* 币别代码
*/
private String currencyNumber;
/**
* 币别名称
*/
private String currency;
/**
* 银行账号
*/
private String accountbankNumber;
/**
* 银行账户名称
*/
private String accountbank;
/**
* 明细交易时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime detaildatetime;
/**
* 摘要
*/
private String description;
/**
* 业务类型, 1普通 2上划 3下拨
*/
private String biztype;
/**
* 业务参考号
*/
private String bizrefno;
/**
* 付款金额
*/
private BigDecimal debitamount;
/**
* 收款金额
*/
private BigDecimal creditamount;
/**
* 对方单位
*/
private String oppunit;
/**
* 对方账号
*/
private String oppbanknumber;
/**
* 对方开户行
*/
private String oppbank;
/**
* 明细流水号
*/
private String detailid;
/**
* 电子回单号
*/
private String receiptno;
/**
* 对账标识码
*/
private String bankcheckflag;
/**
* 回单路径文件名
*/
private String filepath;
/**
* 处理状态(N-未处理;E-错误;S-成功)
*/
private String statusProc;
/**
* 处理日志
*/
private String msgProc;
/**
* 处理时间
*/
private LocalDateTime dateProc;
/**
* 供应链回单路径文件名
*/
private String filepathAttr;
/**
* 附件处理状态(N-未处理;E-错误;S-成功)
*/
private String statusProcAttr;
/**
* 附件处理日志
*/
private String msgProcAttr;
/**
* 附件处理时间
*/
private LocalDateTime dateProcAttr;
/**
* 创建人id
*/
private Long createUserId;
/**
* 创建时间
*/
private LocalDateTime createDate;
/**
* 修改人id
*/
private Long modifyUserId;
/**
* 修改时间
*/
private LocalDateTime modifyDate;
/**
* 租户id
*/
private Long tenantId;
/**
* 部门id
*/
private Long deptId;
/**
* 数据权限id
*/
private Long ruleUserId;
}

View File

@ -0,0 +1,182 @@
package com.xjrsoft.module.fssp.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* 应用令牌响应类,用于封装应用令牌接口返回的数据
*/
@Data
public class LngJkRpDto {
/**
* 交易明细id
*/
private String id;
/**
* 交易明细编号
*/
private String billno;
/**
* 资金组织编码, 公司三字码
*/
private String orgNumber;
/**
* 资金组织名称
*/
private String orgName;
/**
* 交易日期
*/
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime bizdate;
/**
* 记账日期
*/
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime transdate;
/**
* 币别代码
*/
private String currencyNumber;
/**
* 币别名称
*/
private String currency;
/**
* 银行账号
*/
private String accountbankNumber;
/**
* 银行账户名称
*/
private String accountbank;
/**
* 交易时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime biztime;
/**
* 摘要
*/
private String description;
/**
* 业务类型, 1普通 2上划 3下拨
*/
private String biztype;
/**
* 业务参考号
*/
private String bizrefno;
/**
* 付款金额
*/
private BigDecimal debitamount;
/**
* 收款金额
*/
private BigDecimal creditamount;
/**
* 余额
*/
private BigDecimal transbalance;
/**
* 对方户名
*/
private String oppunit;
/**
* 对方账号
*/
private String oppbanknumber;
/**
* 对方开户行
*/
private String oppbank;
/**
* 对账标识码
*/
private String bankcheckflag;
/**
* 电子回单号
*/
private String receiptno;
/**
* 明细流水号
*/
private String detailid;
/**
* 处理状态(N-未处理;E-错误;S-成功)
*/
private String statusProc;
/**
* 处理日志
*/
private String msgProc;
/**
* 处理时间
*/
private LocalDateTime dateProc;
/**
* 创建人id
*/
private Long createUserId;
/**
* 创建时间
*/
private LocalDateTime createDate;
/**
* 修改人id
*/
private Long modifyUserId;
/**
* 修改时间
*/
private LocalDateTime modifyDate;
/**
* 租户id
*/
private Long tenantId;
/**
* 部门id
*/
private Long deptId;
/**
* 数据权限id
*/
private Long ruleUserId;
}

View File

@ -0,0 +1,41 @@
package com.xjrsoft.module.fssp.request;
import lombok.Data;
/**
* 登录API接口请求的参数信息
*/
@Data
public class AccessTokenReq {
/**
* 用户工号
*/
private String user;
/**
* 应用令牌
*/
private String apptoken;
/**
* 租户ID
*/
private String tenantid;
/**
* 数据中心ID如果不输入默认会选取租户下的缺省数据中心
*/
private String accountId;
/**
* 用户类型,默认值WorkerNumber
*/
private String usertype;
/**
* 语言,默认值zh_CN
*/
private String language;
}

View File

@ -0,0 +1,36 @@
package com.xjrsoft.module.fssp.request;
import lombok.Data;
/**
* 获取应用令牌请求的参数信息
*/
@Data
public class AppTokenReq {
/**
* 第三方appId
*/
private String appId;
/**
* 第三方app的密码
*/
private String appSecuret;
/**
* 租户ID
*/
private String tenantid;
/**
* 数据中心ID如果不输入默认会选取租户下的缺省数据中心
*/
private String accountId;
/**
* 语言,默认值zh_CN
*/
private String language;
}

View File

@ -0,0 +1,16 @@
package com.xjrsoft.module.fssp.request;
import lombok.Data;
/**
* 获取电子回单附件请求的参数信息
*/
@Data
public class FsspDzhdfjReq {
// 路径文件名
private String path;
// API访问标识
private String accesstoken;
}

View File

@ -0,0 +1,36 @@
package com.xjrsoft.module.fssp.request;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.time.LocalDateTime;
/**
* 获取电子回单信息请求的参数信息
*/
@Data
public class FsspDzhdxxReq {
// 资金组织
private String orgNumber;
// 银行账号
private String accountbank;
// 电子回单号
private String receiptno;
// 交易开始时间
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime beginDate;
// 交易结束时间
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime endDate;
// 请求数据大小
private Integer pageSize;
// 分页页码
private Integer pageNo;
}

View File

@ -0,0 +1,36 @@
package com.xjrsoft.module.fssp.request;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.time.LocalDateTime;
/**
* 获取电子回单信息请求的参数信息
*/
@Data
public class FsspPzReq {
// 核算组织
private String orgNumber;
// 凭证号
private String billno;
// 交易开始时间
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime beginDate;
// 交易结束时间
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime endDate;
// 源单id
private String sourcebill;
// 请求数据大小
private Integer pageSize;
// 分页页码
private Integer pageNo;
}

View File

@ -0,0 +1,36 @@
package com.xjrsoft.module.fssp.request;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.time.LocalDateTime;
/**
* 获取银行交易明细请求的参数信息
*/
@Data
public class FsspYhjymxReq {
// 资金组织
private String orgNumber;
// 银行账号
private String accountbank;
// 对账标识码
private String bankcheckflag;
// 交易开始时间
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime beginDate;
// 交易结束时间
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime endDate;
// 请求数据大小
private Integer pageSize;
// 分页页码
private Integer pageNo;
}

View File

@ -0,0 +1,25 @@
package com.xjrsoft.module.fssp.response;
import lombok.Data;
/**
* 应用令牌响应类,用于封装应用令牌接口返回的数据
*/
@Data
public class AccessTokenResp {
// 请求是否成功的标识true或false
private String success;
// 错误代码0是成功其他为错误
private String errorCode;
// 错误消息
private String errorDesc;
// API访问标识后续其他API访问需要使用。在用access_token访问的过程中如果response error code的值为1表示该access_token已经超时。
private String accessToken;
// Token过期时间
private Long expireTime;
}

View File

@ -0,0 +1,25 @@
package com.xjrsoft.module.fssp.response;
import lombok.Data;
/**
* 应用令牌响应类,用于封装应用令牌接口返回的数据
*/
@Data
public class AppTokenResp {
// 请求是否成功的标识true或false
private String success;
// 错误代码0是成功其他为错误
private String errorCode;
// 错误消息
private String errorDesc;
// 应用令牌
private String appToken;
// Token过期时间
private Long expireTime;
}

View File

@ -0,0 +1,18 @@
package com.xjrsoft.module.fssp.response;
import lombok.Data;
/**
* 应用令牌响应类,用于封装应用令牌接口返回的数据
*/
@Data
public class AsstactentryResp {
private String flexfield;
private String number;
private String ebsnumber;
private String name;
}

View File

@ -0,0 +1,14 @@
package com.xjrsoft.module.fssp.response;
/**
* FsspResponse 接口,用于定义从联邦服务安全平台(FSSP)获取响应的基本结构
* 该接口提供了一个方法来判断请求是否成功执行
*/
public interface BaseResponse {
/**
* 判断请求是否成功执行
* @return 如果请求成功返回true否则返回false
*/
boolean isSuccess();
}

View File

@ -0,0 +1,126 @@
package com.xjrsoft.module.fssp.response;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* 应用令牌响应类,用于封装应用令牌接口返回的数据
*/
@Data
public class DzhdxxResp {
/**
* 电子回单id
*/
private String id;
/**
* 单据编号
*/
private String billno;
/**
* 资金组织编码, 公司三字码
*/
private String orgNumber;
/**
* 资金组织名称
*/
private String orgName;
/**
* 交易日期
*/
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime bizdate;
/**
* 币别代码
*/
private String currencyNumber;
/**
* 币别名称
*/
private String currency;
/**
* 银行账号
*/
private String accountbankNumber;
/**
* 银行账户名称
*/
private String accountbank;
/**
* 明细交易时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime detaildatetime;
/**
* 摘要
*/
private String description;
/**
* 业务类型, 1普通 2上划 3下拨
*/
private String biztype;
/**
* 业务参考号
*/
private String bizrefno;
/**
* 付款金额
*/
private BigDecimal debitamount;
/**
* 收款金额
*/
private BigDecimal creditamount;
/**
* 对方单位
*/
private String oppunit;
/**
* 对方账号
*/
private String oppbanknumber;
/**
* 对方开户行
*/
private String oppbank;
/**
* 明细流水号
*/
private String detailid;
/**
* 电子回单号
*/
private String receiptno;
/**
* 对账标识码
*/
private String bankcheckflag;
/**
* 回单路径文件名
*/
private String filepath;
}

View File

@ -0,0 +1,28 @@
package com.xjrsoft.module.fssp.response;
import lombok.Data;
import java.util.List;
/**
* FsspDataResponse类是一个泛型类用于封装分页数据响应结果
* @param <T> 泛型类型,表示分页数据中列表元素的类型
*/
@Data
public class FsspDataResp<T> {
// 是否最后一页
private Boolean lastPage;
// 请求数据大小,即每页显示的记录数
private Integer pageSize;
// 分页页码从1开始计数
private Integer pageNo;
// 总记录数,即所有数据中的总条目数
private Integer totalCount;
// 明细列表,包含当前页的所有数据记录
private List<T> rows;
}

View File

@ -0,0 +1,28 @@
package com.xjrsoft.module.fssp.response;
import lombok.Data;
/**
* FsspResponse 接口,用于定义从联邦服务安全平台(FSSP)获取响应的基本结构
* 该接口提供了一个方法来判断请求是否成功执行
*/
@Data
public class FsspResp implements BaseResponse {
// 响应状态,true、false
private String success;
// 错误代码
private String errorCode;
// 返回消息
private String message;
// 响应数据,泛型类型
private FsspDataResp data;
@Override
public boolean isSuccess() {
return "true".equals(success);
}
}

View File

@ -0,0 +1,128 @@
package com.xjrsoft.module.fssp.response;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
/**
* 应用令牌响应类,用于封装应用令牌接口返回的数据
*/
@Data
public class ListgridviewapResp {
/**
* 摘要
*/
private String tallyabstract;
/**
* 会计科目编码
*/
private String account;
/**
* 计量单位编码
*/
private String unit;
/**
* 数量
*/
private BigDecimal quantities;
/**
* 单价
*/
private BigDecimal price;
/**
* 币别编码
*/
private String cuscurrency;
/**
* 汇率
*/
private BigDecimal exrate;
/**
* 原币金额
*/
private BigDecimal oriamount;
/**
* 原币借方
*/
private BigDecimal tallyamount;
/**
* 借方金额(本位币)
*/
private BigDecimal standardamount;
/**
* 原币贷方
*/
private BigDecimal loanamount;
/**
* 贷方金额(本位币)
*/
private BigDecimal loanstanamount;
/**
* 帐户
*/
private String assgrpnum;
/**
* 帐户说明
*/
private String assgrpname;
/**
* 船名
*/
private String shipsname;
/**
* 航次
*/
private String cruises;
/**
* 列次
*/
private String trains;
/**
* 备用1
*/
private String remark1;
/**
* 备用2
*/
private String remark2;
/**
* 备用3
*/
private String remark3;
/**
* 同步ebs单价
*/
private BigDecimal newquantity;
/**
* 同步ebs数量
*/
private BigDecimal newprice;
/**
* 核算维度
*/
List<AsstactentryResp> asstactentry;
}

View File

@ -0,0 +1,149 @@
package com.xjrsoft.module.fssp.response;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.List;
/**
* 应用令牌响应类,用于封装应用令牌接口返回的数据
*/
@Data
public class PzResp {
/**
* 凭证号
*/
private String billno;
/**
* 核算组织编码, 公司三字码
*/
private String orgNumber;
/**
* 核算组织名称
*/
private String orgName;
/**
* 期间
*/
private String period;
/**
* 附件数
*/
private Integer attachment;
/**
* 账簿类型,默认100001
*/
private String accountbook;
/**
* 业务日期
*/
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime bizdate;
/**
* 记账日期
*/
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime bookdate;
/**
* 凭证类型
*/
private String vouchertype;
/**
* 账簿类型
*/
private String booktype;
/**
* 参考消息
*/
private String description;
/**
* 状态A暂存 B已提交 C已审核 D已作废
*/
private String billstatus;
/**
* 是否过账
*/
private Boolean ispost;
/**
* 复核状态a无需复核 b待复核 c已复核
*/
private String ischeck;
/**
* 创建人工号
*/
private String creatorNumber;
/**
* 创建人
*/
private String creator;
/**
* 创建时间
*/
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime createtime;
/**
* 制单人工号
*/
private String submitterNumber;
/**
* 制单人
*/
private String submitter;
/**
* 审核人工号
*/
private String auditorNumber;
/**
* 审核人
*/
private String auditor;
/**
* 审核时间
*/
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime auditdate;
/**
* 过账人工号
*/
private String posterNumber;
/**
* 过账人
*/
private String poster;
/**
* 过账时间
*/
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime posttime;
/**
* 记账明细
*/
List<ListgridviewapResp> listgridviewap;
}

View File

@ -0,0 +1,35 @@
package com.xjrsoft.module.fssp.response;
import lombok.Data;
/**
* FsspResponse类是一个泛型类用于封装Fssp接口的响应数据
* @param <T> 泛型类型,表示响应数据的具体类型
*/
@Data
public class TokenResp<T> implements BaseResponse {
// 响应状态
private String state;
// 错误代码
private String errorCode;
// 错误信息
private String errorMsg;
// 响应消息
private String message;
// 响应数据,泛型类型
private T data;
/**
* 判断响应是否成功
* @return 如果状态为"success"则返回true否则返回false
*/
public boolean isSuccess() {
return state != null && "success".equals(state);
}
}

View File

@ -0,0 +1,132 @@
package com.xjrsoft.module.fssp.response;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* 应用令牌响应类,用于封装应用令牌接口返回的数据
*/
@Data
public class YhjymxResp {
/**
* 交易明细id
*/
private String id;
/**
* 交易明细编号
*/
private String billno;
/**
* 资金组织编码, 公司三字码
*/
private String orgNumber;
/**
* 资金组织名称
*/
private String orgName;
/**
* 交易日期
*/
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime bizdate;
/**
* 记账日期
*/
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDateTime transdate;
/**
* 币别代码
*/
private String currencyNumber;
/**
* 币别名称
*/
private String currency;
/**
* 银行账号
*/
private String accountbankNumber;
/**
* 银行账户名称
*/
private String accountbank;
/**
* 交易时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime biztime;
/**
* 摘要
*/
private String description;
/**
* 业务类型, 1普通 2上划 3下拨
*/
private String biztype;
/**
* 业务参考号
*/
private String bizrefno;
/**
* 付款金额
*/
private BigDecimal debitamount;
/**
* 收款金额
*/
private BigDecimal creditamount;
/**
* 余额
*/
private BigDecimal transbalance;
/**
* 对方户名
*/
private String oppunit;
/**
* 对方账号
*/
private String oppbanknumber;
/**
* 对方开户行
*/
private String oppbank;
/**
* 对账标识码
*/
private String bankcheckflag;
/**
* 电子回单号
*/
private String receiptno;
/**
* 明细流水号
*/
private String detailid;
}