记得上下班打卡 | git大法好,push需谨慎

Commit 4db531cf authored by wangyifan's avatar wangyifan

收钱吧相关实体

parent 46a09ccb
package com.liquidnet.service.goblin.param.shouqianba;
/**
* 收钱吧接口常量配置
*
* @author liquidnet
* @since 2026-03-16
*/
public class ShouQianBaConstants {
/**
* 收钱吧接口基础域名(TODO: 后续由配置文件统一管理)
*/
public static final String BASE_API = "https://api.shouqianba.com";
// ==================== API 路径 ====================
/**
* 创建结算明细 接口路径
*/
public static final String API_SETTLEMENT_CREATE = BASE_API + "/settlement/create";
// ==================== 通用常量 ====================
/**
* 响应成功业务码
*/
public static final String RESPONSE_SUCCESS_CODE = "200";
/**
* 响应成功标识
*/
public static final Boolean RESPONSE_SUCCESS = Boolean.TRUE;
/**
* 请求内容类型
*/
public static final String CONTENT_TYPE_JSON = "application/json;charset=UTF-8";
}
package com.liquidnet.service.goblin.param.shouqianba.request;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "收银台查询请求")
public class CashierQueryRequest {
@ApiModelProperty(required = true, value = "应用id", example = "202507xxxxxxx")
private String appid;
@ApiModelProperty(required = true, value = "支付模式代码", example = "4")
private Integer paymentMode;
@ApiModelProperty(required = true, value = "支付环境")
private PaymentEnv paymentEnv;
@ApiModelProperty(required = false, value = "付款人信息")
private Payer payer;
@ApiModelProperty(required = true, value = "收单信息")
private AcquiringInfo acquiringInfo;
@Data
@ApiModel(value = "支付环境信息")
public static class PaymentEnv {
@ApiModelProperty(required = false, value = "ip地址")
private String ip;
@ApiModelProperty(required = true, value = "支付客户端", example = "wechat")
private String client;
@ApiModelProperty(required = false, value = "设备号")
private String device;
@ApiModelProperty(required = false, value = "版本号", example = "1.4")
private String version;
}
@Data
@ApiModel(value = "付款人信息")
public static class Payer {
@ApiModelProperty(required = true, value = "付款人Id")
private String userId;
}
@Data
@ApiModel(value = "收单信息")
public static class AcquiringInfo {
@ApiModelProperty(required = true, value = "收单号")
private String acquiringSn;
@ApiModelProperty(required = true, value = "收单签名")
private String signature;
}
}
package com.liquidnet.service.goblin.param.shouqianba.request;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "查询券码请求")
public class CouponQueryRequest {
@ApiModelProperty(required = true, value = "应用id", example = "202507xxxxxxx")
private String appid;
@ApiModelProperty(required = true, value = "订单信息")
private OrderInfo orderID;
@ApiModelProperty(required = true, value = "卖家信息", example = "4")
private Seller seller;
@Data
@ApiModel(value = "订单信息")
public static class OrderInfo {
@ApiModelProperty(required = true, value = "订单ID")
private String sn;
@ApiModelProperty(required = true, value = "订单密码")
private String signature;
}
@Data
@ApiModel(value = "卖家信息")
public static class Seller {
@ApiModelProperty(required = true, value = "商户ID")
private String merchantId;
@ApiModelProperty(required = true, value = "商户userID")
private String merchantUserId;
@ApiModelProperty(required = true, value = "角色")
private String role;
}
}
package com.liquidnet.service.goblin.param.shouqianba.request;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
import java.util.Map;
@Data
@ApiModel(value = "券退款请求参数")
public class CouponRefundRequest {
@ApiModelProperty(required = true, value = "应用ID(收钱吧分配的应用id)")
private String appid;
@ApiModelProperty(required = true, value = "卖家信息")
private SellerInfo seller;
@ApiModelProperty(required = true, value = "订单信息")
private OrderInfo orderID;
@ApiModelProperty(required = true, value = "申请退款信息不能为空")
private RefundInfo refundInfo;
@ApiModelProperty(required = false, value = "退款请求id(${AppCode}+id)")
private String requestId;
@ApiModelProperty(required = true, value = "退款来源(固定值:EXTERN)")
private String requestSource;
@ApiModelProperty(required = false, value = "拓展参数(自定义信息)")
private Map<String, Object> bizExtended;
@Data
@ApiModel(value = "卖家信息")
public static class SellerInfo {
@ApiModelProperty(required = true, value = "商户Id(固定值)")
private String merchantId;
@ApiModelProperty(required = true, value = "商户userId(固定值)")
private String merchantUserId;
@ApiModelProperty(required = true, value = "角色(固定值:super_admin)")
private String role;
}
@Data
@ApiModel(value = "订单信息")
public static class OrderInfo {
@ApiModelProperty(required = true, value = "单号(前置操作后拿到)")
private String sn;
@ApiModelProperty(required = true, value = "密码(前置操作后拿到)")
private String signature;
}
@Data
@ApiModel(value = "退款信息")
public static class RefundInfo {
@ApiModelProperty(required = true, value = "金额")
private Long applyAmount;
@ApiModelProperty(required = true, value = "退款类型(1商品 2金额)")
private Byte type;
@ApiModelProperty(required = false, value = "退款明细(商品必填)")
private List<RefundItem> items;
@ApiModelProperty(required = true, value = "退款原因")
private String refundReason;
}
@Data
@ApiModel(value = "退款明细商品")
public static class RefundItem {
@ApiModelProperty(required = true, value = "spu")
private String spuId;
@ApiModelProperty(required = true, value = "sku")
private String skuId;
@ApiModelProperty(required = true, value = "标题")
private String title;
@ApiModelProperty(required = true, value = "商品图片")
private String img;
@ApiModelProperty(required = true, value = "数量")
private String quantity;
@ApiModelProperty(required = false, value = "退款类型(0正常商品 1自定义商品)")
private Byte type;
}
}
package com.liquidnet.service.goblin.param.shouqianba.request;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
@ApiModel(value = "券码状态同步")
public class CouponStatusSyncRequest {
@ApiModelProperty(required = true, value = "应用ID(聚合收单唯一ID,需申请)")
private String appid;
@ApiModelProperty(required = true, value = "券号")
private List<String> voucherNos;
@ApiModelProperty(required = true, value = "用户ID(自定义,核销用户id)")
private String redeemMerchantId;
@ApiModelProperty(required = true, value = "外部单号(${AppCode}+id,AppCode需要分配)")
private String redeemExternalOrderSn;
@ApiModelProperty(required = true, value = "来源(固定值:EXTERN)")
private String redeemSource;
@ApiModelProperty(required = true, value = "核销终端号(自定义)")
private String clientSn;
@ApiModelProperty(required = true, value = "券使用状态(0未核销,1已核销)")
private Byte status;
}
package com.liquidnet.service.goblin.param.shouqianba.request;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
import java.util.Map;
@Data
@ApiModel(value = "创建微信预支付订单请求")
public class CreateWechatPrepayOrderRequest {
@ApiModelProperty(required = true, value = "应用id", example = "202507xxxxxxx")
private String appid;
@ApiModelProperty(required = true, value = "收单号")
private String acquiringSn;
@ApiModelProperty(required = true, value = "收单签名")
private Object signature;
@ApiModelProperty(required = true, value = "支付工具")
private List<UsingPayTool> usingPayTools;
@ApiModelProperty(required = false, value = "支付环境")
private PaymentEnv paymentEnv;
@ApiModelProperty(required = true, value = "支付工具签名", notes = "上一步签名")
private String selectedSignature;
@ApiModelProperty(required = true, value = "序列号", notes = "上一步seq")
private String seq;
@Data
@ApiModel(value = "支付工具使用详情")
public static class UsingPayTool {
@ApiModelProperty(required = true, value = "支付工具ID")
private Long id;
@ApiModelProperty(required = true, value = "支付工具代码")
private Integer payTool;
@ApiModelProperty(required = true, value = "支付模式", example = "4")
private Integer payMode;
@ApiModelProperty(required = true, value = "支付金额")
private String amount;
@ApiModelProperty(required = true, value = "金额构成")
private AmountComposition amountComposition;
@ApiModelProperty(required = true, value = "用户身份信息", example = "wzwl")
private String identity;
@ApiModelProperty(required = true, value = "支付请求号", notes = "不超过40位")
private String requestSn;
@ApiModelProperty(required = true, value = "通道扩展参数", example = "{\"sub_appid\":\"wx36e68952a6\"}")
private Map<String, Object> channelExt;
}
@Data
@ApiModel(value = "支付环境信息")
public static class PaymentEnv {
@ApiModelProperty(required = false, value = "付款终端ip")
private String clientIp;
@ApiModelProperty(required = false, value = "付款经纬度")
private ClientPoi clientPoi;
@ApiModelProperty(required = false, value = "支付入口")
private String paymentEntry;
}
@Data
@ApiModel(value = "地理位置信息")
public static class ClientPoi {
@ApiModelProperty(required = false, value = "经度信息")
private String longitude;
@ApiModelProperty(required = false, value = "纬度信息")
private String latitude;
}
@Data
@ApiModel(value = "金额构成信息")
public static class AmountComposition {
@ApiModelProperty(required = true, value = "金额构成项列表")
private List<CompositionItem> compositionItems;
}
@Data
@ApiModel(value = "金额构成项详情")
public static class CompositionItem {
@ApiModelProperty(required = true, value = "构成项类目")
private String category;
@ApiModelProperty(required = true, value = "构成项金额")
private Long amount;
}
}
package com.liquidnet.service.goblin.param.shouqianba.request;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.util.List;
/**
* 收钱吧 - 订单创建 请求参数
*
* @author liquidnet
* @since 2026-03-16
*/
@ApiModel(value = "创建订单")
@Data
public class OrderCreateRequest implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(required = true, value = "应用ID(聚合收单唯一ID,需申请)")
private String appid;
@ApiModelProperty(required = true, value = "商城信息")
private MallInfo mallID;
@ApiModelProperty(required = true, value = "结算项ID")
private String checkoutItemsId;
@ApiModelProperty(required = true, value = "买家信息")
private Buyer buyer;
@ApiModelProperty(required = true, value = "请求ID")
private String requestId;
@ApiModelProperty(required = true, value = "场景信息")
private List<Scene> scenes;
@ApiModelProperty(required = true, value = "自定义场景信息")
private List<Scene> extBizScenes;
@EqualsAndHashCode(callSuper = true)
@Data
@ApiModel(value = "商城信息")
public static class MallInfo extends SettlementCreateRequest.MallInfo{
}
@EqualsAndHashCode(callSuper = true)
@Data
@ApiModel("买家信息")
public static class Buyer extends SettlementCreateRequest.Buyer{
}
@ApiModel(value = "场景信息")
public static class Scene{
@ApiModelProperty(value = "模块编号")
private String moduleSn;
@ApiModelProperty(value = "场景数据")
private String content;
}
}
package com.liquidnet.service.goblin.param.shouqianba.request;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* 收钱吧 - 创建结算明细 请求参数
*
* @author liquidnet
* @since 2026-03-16
*/
@ApiModel(value = "创建结算明细请求参数")
@Data
public class SettlementCreateRequest implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(required = true, value = "应用ID(聚合收单唯一ID,需申请)")
private String appid;
@ApiModelProperty(required = true, value = "商城信息")
private MallInfo mallID;
@ApiModelProperty(required = true, value = "买家信息")
private Buyer buyer;
@ApiModelProperty(required = false, value = "结算明细组(结算条目列表)")
private List<CheckoutItem> checkoutItems;
@ApiModelProperty(required = false, value = "结算总金额(单位:分)")
private Long amount;
@Data
@ApiModel(value = "商城信息")
public static class MallInfo{
@ApiModelProperty(required = true, value = "商城ID")
private String mallSn;
@ApiModelProperty(required = true, value = "商城密码")
private String signature;
}
@Data
@ApiModel("买家信息")
public static class Buyer{
@ApiModelProperty(required = true, value = "买家ID(用户唯一标识)")
private String buyerId;
}
@Data
@ApiModel(value = "结算明细条目")
public static class CheckoutItem{
@ApiModelProperty(required = true, value = "商品识别号(商品唯一标识,如 spuId)")
private String spuId;
@ApiModelProperty(required = true, value = "规格识别号(SKU唯一标识,如 skuId)")
private String skuId;
@ApiModelProperty(required = true, value = "单价(单位:分)")
private Long price;
@ApiModelProperty(required = true, value = "资源编号(对应业务系统中的资源ID)")
private String quantity;
@ApiModelProperty(required = true, value = "商品类型(0 正常商品 1 自定义商品)")
private String type;
@ApiModelProperty(required = true, value = "商品标题")
private String title;
@ApiModelProperty(required = true, value = "商品图片链接")
private String image;
}
}
package com.liquidnet.service.goblin.param.shouqianba.response;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "收钱吧基础响应参数")
public class BaseResponse<T> {
@ApiModelProperty(value = "是否成功(true-成功,false-失败)")
private Boolean success;
@ApiModelProperty(value = "业务码(200-成功,4001等-失败码)")
private String code;
@ApiModelProperty(value = "失败信息(success为false时返回失败原因描述)")
private String msg;
@ApiModelProperty(value = "data")
private T data;
}
package com.liquidnet.service.goblin.param.shouqianba.response;
import com.liquidnet.service.goblin.param.shouqianba.response.data.CashierQueryData;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "查询收银台响应参数")
@Data
public class CashierQueryResponse extends BaseResponse<CashierQueryData>{
}
package com.liquidnet.service.goblin.param.shouqianba.response;
import com.liquidnet.service.goblin.param.shouqianba.response.data.CouponQueryData;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "查询券码响应")
@Data
public class CouponQueryResponse extends BaseResponse<CouponQueryData>{
}
package com.liquidnet.service.goblin.param.shouqianba.response;
import com.liquidnet.service.goblin.param.shouqianba.response.data.CouponRefundData;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "券退款响应")
@Data
public class CouponRefundResponse extends BaseResponse<CouponRefundData>{
}
package com.liquidnet.service.goblin.param.shouqianba.response;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "券码状态同步响应")
@Data
public class CouponStatusSyncResponse extends BaseResponse<Void>{
}
package com.liquidnet.service.goblin.param.shouqianba.response;
import com.liquidnet.service.goblin.param.shouqianba.response.data.CreateWechatPrepayOrderData;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "创建微信预支付订单响应")
@Data
public class CreateWechatPrepayOrderResponse extends BaseResponse<CreateWechatPrepayOrderData>{
}
package com.liquidnet.service.goblin.param.shouqianba.response;
import com.liquidnet.service.goblin.param.shouqianba.response.data.OrderCreateData;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 收钱吧 - 创建订单 响应参数
*
* @author liquidnet
* @since 2026-03-16
*/
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "创建订单响应参数")
@Data
public class OrderCreateResponse extends BaseResponse<OrderCreateData>{
}
package com.liquidnet.service.goblin.param.shouqianba.response;
import com.liquidnet.service.goblin.param.shouqianba.response.data.SettlementCreateData;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 收钱吧 - 创建结算明细 响应参数
*
* @author liquidnet
* @since 2026-03-16
*/
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "创建结算明细响应参数")
@Data
public class SettlementCreateResponse extends BaseResponse<SettlementCreateData> {
}
package com.liquidnet.service.goblin.param.shouqianba.response.data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
@ApiModel(value = "收银台查询Data")
public class CashierQueryData {
@ApiModelProperty(value = "支付工具列表")
private List<PayTool> payTools;
@ApiModelProperty(value = "已选中的支付工具签名")
private String selectedSignature;
@ApiModelProperty(value = "全局提示")
private List<String> globalTips;
@ApiModelProperty(value = "响应唯一序列号")
private String seq;
@ApiModelProperty(value = "收单金额")
private Long amount;
@ApiModelProperty(value = "收款方信息")
private Payee payee;
@ApiModelProperty(value = "业务信息")
private BizInfo bizInfo;
@ApiModelProperty(value = "金额模型")
private CashierAmount cashierAmount;
@Data
@ApiModel(value = "支付工具详情")
public static class PayTool {
@ApiModelProperty(value = "支付工具id")
private Long id;
@ApiModelProperty(value = "支付工具代码")
private String code;
@ApiModelProperty(value = "支付工具名称")
private String name;
@ApiModelProperty(value = "支付工具类型 (0表示微信)")
private Integer type;
@ApiModelProperty(value = "是否可选")
private Boolean selectable;
@ApiModelProperty(value = "是否选中")
private Boolean selected;
@ApiModelProperty(value = "展示金额")
private Long showAmount;
@ApiModelProperty(value = "提示列表")
private List<String> tips;
@ApiModelProperty(value = "金额构成")
private AmountComposition amountComposition;
}
@Data
@ApiModel(value = "金额构成信息")
public static class AmountComposition {
@ApiModelProperty(required = true, value = "金额构成项列表")
private List<CompositionItem> compositionItems;
}
@Data
@ApiModel(value = "金额构成项详情")
public static class CompositionItem {
@ApiModelProperty(required = true, value = "构成项类目")
private String category;
@ApiModelProperty(required = true, value = "构成项金额")
private Long amount;
}
@Data
@ApiModel(value = "收款方信息")
public static class Payee {
@ApiModelProperty(value = "商户id")
private String merchantId;
@ApiModelProperty(value = "商户名称")
private String merchantName;
@ApiModelProperty(value = "门店id")
private String storeId;
@ApiModelProperty(value = "门店名称")
private String storeName;
@ApiModelProperty(value = "终端号")
private String terminalSn;
}
@Data
@ApiModel(value = "业务信息")
public static class BizInfo {
@ApiModelProperty(value = "业务方")
private String bizParty;
@ApiModelProperty(value = "交易应用")
private String tradeApp;
}
@Data
@ApiModel(value = "金额明细模型")
public static class CashierAmount {
@ApiModelProperty(value = "原始支付金额")
private Long oriPaymentAmount;
@ApiModelProperty(value = "实际支付金额")
private Long discPaymentAmount;
@ApiModelProperty(value = "优惠金额")
private Long discAmount;
}
}
package com.liquidnet.service.goblin.param.shouqianba.response.data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "查询券码响应Data")
public class CouponQueryData {
@ApiModelProperty(value = "券名称")
private String voucherName;
@ApiModelProperty(value = "商品SPU")
private String spuId;
@ApiModelProperty(value = "商品SKU")
private String skuId;
@ApiModelProperty(value = "商品地址")
private String itemImageUrl;
@ApiModelProperty(value = "券二维码")
private String url;
@ApiModelProperty(value = "券号")
private String voucherNo;
@ApiModelProperty(value = "券类型 0金额券 1商品券")
private Byte type;
@ApiModelProperty(value = "券状态 0未核销 1已核销 2未核销退款 3已核销退款中 4未核销退款完成 5已核销退款完成 6已失效")
private Byte status;
@ApiModelProperty(value = "操作时间")
private String operationTime;
}
package com.liquidnet.service.goblin.param.shouqianba.response.data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "券退款响应结果")
public class CouponRefundData {
@ApiModelProperty(value = "退款单号")
private String ticketsSn;
@ApiModelProperty(value = "单号密码")
private String ticketSignature;
}
package com.liquidnet.service.goblin.param.shouqianba.response.data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "创建微信预支付订单响应")
public class CreateWechatPrepayOrderData {
@ApiModelProperty(value = "收单号")
private String acquiringSn;
@ApiModelProperty(value = "收单签名")
private String signature;
@ApiModelProperty(value = "收单状态", notes = "0:已创建, 1:待支付, 2:部分支付成功, 3:全部支付成功, 4:已部分退款, 5:已全额退款, 6:已关闭")
private Byte acquiringState;
@ApiModelProperty(value = "金额明细")
private AmountDetails amount;
@ApiModelProperty(value = "支付凭证", notes = "用于唤起微信支付")
private PaymentVoucher paymentVoucher;
@ApiModelProperty(value = "通道信息")
private ChannelInfo channelInfo;
@Data
@ApiModel(value = "订单金额明细")
public static class AmountDetails {
@ApiModelProperty(value = "收单总金额")
private Long totalAmount;
@ApiModelProperty(value = "已付总金额")
private Long paidAmount;
@ApiModelProperty(value = "已退总金额")
private Long refundedAmount;
}
@Data
@ApiModel(value = "支付凭证详情")
public static class PaymentVoucher {
@ApiModelProperty(value = "时间戳")
private String timeStamp;
@ApiModelProperty(value = "订单详情扩展字符串")
private String packageStr;
@ApiModelProperty(value = "签名")
private String paySign;
@ApiModelProperty(value = "Appid")
private String appId;
@ApiModelProperty(value = "签名方式")
private String signType;
@ApiModelProperty(value = "随机字符串")
private String nonceStr;
}
@Data
@ApiModel(value = "通道信息详情")
public static class ChannelInfo {
@ApiModelProperty(value = "收钱吧通道流水号")
private String payTsn;
}
}
package com.liquidnet.service.goblin.param.shouqianba.response.data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.security.core.parameters.P;
@Data
@ApiModel(value = "收钱吧创建订单响应参数Data")
public class OrderCreateData {
@ApiModelProperty(value = "订单编号)")
private String orderSn;
@ApiModelProperty(value = "订单密钥)")
private String orderSignature;
@ApiModelProperty(value = "收单信息)")
private Acquiring acquiring;
@ApiModel(value = "收单信息")
@Data
public static class Acquiring{
@ApiModelProperty(value = "收单号)")
private String acquiringSn;
@ApiModelProperty(value = "收单号)")
private String signature;
}
}
package com.liquidnet.service.goblin.param.shouqianba.response.data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "收钱吧创建结算明细响应参数Data")
public class SettlementCreateData {
@ApiModelProperty(value = "结算项ID)")
private String checkoutItemsId;
}
package com.liquidnet.service.goblin.service;
import com.liquidnet.service.goblin.param.shouqianba.request.CashierQueryRequest;
import com.liquidnet.service.goblin.param.shouqianba.request.OrderCreateRequest;
import com.liquidnet.service.goblin.param.shouqianba.request.SettlementCreateRequest;
import com.liquidnet.service.goblin.param.shouqianba.response.data.CashierQueryData;
import com.liquidnet.service.goblin.param.shouqianba.response.data.OrderCreateData;
import com.liquidnet.service.goblin.param.shouqianba.response.data.SettlementCreateData;
/**
* 收钱吧对接接口定义
*
* @author liquidnet
* @since 2026-03-16
*/
public interface IGoblinShouQianBaService {
/**
* 创建结算明细
* <p>
* 对接收钱吧「创建结算明细」接口,向收钱吧上传订单结算数据。
* </p>
*
* @param request 创建结算明细请求参数
* @return 收钱吧响应结果;调用失败时返回 null
*/
SettlementCreateData createSettlement(SettlementCreateRequest request);
/**
* 创建订单
* @param request
* @return
*/
OrderCreateData createOrder(OrderCreateRequest request);
/**
* 查询收银台
* @param request
* @return
*/
CashierQueryData queryCashier(CashierQueryRequest request);
}
package com.liquidnet.service.goblin.service.impl;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.liquidnet.service.goblin.param.shouqianba.*;
import com.liquidnet.service.goblin.param.shouqianba.response.data.CashierQueryData;
import com.liquidnet.service.goblin.param.shouqianba.response.data.OrderCreateData;
import com.liquidnet.service.goblin.param.shouqianba.response.data.SettlementCreateData;
import com.liquidnet.service.goblin.param.shouqianba.request.CashierQueryRequest;
import com.liquidnet.service.goblin.param.shouqianba.request.OrderCreateRequest;
import com.liquidnet.service.goblin.param.shouqianba.request.SettlementCreateRequest;
import com.liquidnet.service.goblin.param.shouqianba.response.SettlementCreateResponse;
import com.liquidnet.service.goblin.service.IGoblinShouQianBaService;
import lombok.extern.slf4j.Slf4j;
import org.apache.http.HttpEntity;
import org.apache.http.HttpStatus;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import org.springframework.stereotype.Service;
import java.io.IOException;
/**
* 收钱吧对接实现类
*
* @author liquidnet
* @since 2026-03-16
*/
@Slf4j
@Service
public class GoblinShouQianBaServiceImpl implements IGoblinShouQianBaService {
private static final ObjectMapper objectMapper = new ObjectMapper();
/**
* 创建结算明细
*
* @param request 创建结算明细请求参数
* @return 收钱吧响应结果;调用失败时返回 null
*/
@Override
public SettlementCreateData createSettlement(SettlementCreateRequest request) {
// String url = ShouQianBaConstants.API_SETTLEMENT_CREATE;
// log.info("[收钱吧] 创建结算明细 请求URL: {}, 请求参数: {}", url, request);
//
// try {
//
//
// } catch (Exception e) {
// log.error("[收钱吧] 创建结算明细 发生异常,请求参数: {}", request, e);
// return null;
// }
return null;
}
@Override
public OrderCreateData createOrder(OrderCreateRequest request) {
return null;
}
@Override
public CashierQueryData queryCashier(CashierQueryRequest request) {
return null;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment