设为首页 加入收藏

TOP

大趋智能打印机java api(一)
2023-07-25 21:35:20 】 浏览:63
Tags:能打印 java api

对接飞鹅和易联云后 ,网上几乎没资料对大趋智能打印机java api分享,故此分享一波。

官方文档地址

SnParam.java
package com.shanheyongmu.openapi.param;

import lombok.Data;
import lombok.NoArgsConstructor;

@NoArgsConstructor
@Data
public class SnParam {

    /**
     * 打印机编号
     */
    private String sn;

    public SnParam(String sn) {
        this.sn = sn;
    }

}
PrinterAddParam.java
package com.shanheyongmu.openapi.param;

import lombok.Data;
import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.Range;

import javax.validation.constraints.NotBlank;

@Data
public class PrinterAddParam {

    /**
     * 打印机编号
     */
    @NotBlank
    @Length(max = 50)
    private String sn;

    /**
     * 设备密钥
     */
    @NotBlank
    @Length(max = 255)
    private String key;

    /**
     * 设备名称或备注
     */
    @Length(max = 50)
    private String name;


    @Range(min = 1, max = 16)
    private Integer lang;


}
PrintStatusQueryParam.java
package com.shanheyongmu.openapi.param;

import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotNull;

@Data
@EqualsAndHashCode(callSuper = true)
public class PrintStatusQueryParam extends SnParam {

    /**
     * 打印请求ID
     */
    @NotNull
    private Long printId;

    public PrintStatusQueryParam(@NotNull String sn, @NotNull Long printId) {
        super(sn);
        this.printId = printId;
    }
}
PrintParam.java
package com.shanheyongmu.openapi.param;

import lombok.Data;
import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.Range;

/**
 * 打印请求
 */
@Data
public class PrintParam extends SnParam {

    /**
     * 打印小票模板内容
     */
    @Length(max = 6000)
    private String content;

    /**
     * 播报音源
     */
    @Length(max = 120)
    private String voice;

    /**
     * 播报语音次数,默认播报1次,不能超过3次
     */
    @Range(min = 1, max = 5)
    private Integer voicePlayTimes;

    /**
     * 多次播报语音时的间隔秒数,默认3秒
     */
    private String voicePlayInterval;

    /**
     * 打印小票张数,不传默认1, 取值范围: 1~5
     */
    @Range(min = 1, max = 5)
    private Integer copies;

}

com.shanheyongmu.openapi.result 新建6个类 

ResponseResult.java
package com.shanheyongmu.openapi.result;

import lombok.Data;

import java.io.Serializable;

/**
 * 标准响应结构体
 * @param <T>  响应业务数据
 */
@Data
public class ResponseResult<T> implements Serializable {
    private String code;
    private String message;
    private T data;
}
PrinterAddResultData.java
package com.shanheyongmu.openapi.result;

import lombok.Data;

import java.util.List;

@Data
public class PrinterAddResultData {

    /**
     * 多台设备发生增加失败时返回原因列表,都成功时返回空列表(注意:增加单时失败的原因在message中)
     */
    List<AddFailResult> fail;

    @Data
    public static class AddFailResult {

        private String sn;

        /**
         * 失败原因
         */
        private String reason;

    }

}
PrinterUnbindResultData.java
package com.shanheyongmu.openapi.result;

import lombok.Data;

import java.util.List;

/**
 * 打印解绑结果
 */
@Data
public class PrinterUnbindResultData {

    /**
     * 多台设备解绑成功时,返回成功的SN列表
     */
    List<String> ok;

    /**
     * 多台设备发生解绑失败时返回原因列表
     */
    List<UnbindFailResult> fail;

    @Data
    public static class UnbindFailResult {

        private String sn;

        /**
         * 失败原因
         */
        private String reason;

    }
}
PrinterStatusResultData.java
package com.shanheyongmu.openapi.result;

import lombok.Data;

@Data
public class PrinterStatusResultData {

    /**
     * 在线状态 0/1
     * 0=不在线 1=在线
     */
    int onlineStatus;

    /**
     * 设备状态
     *
     * 
     * -1=初始化 0=就绪 1=打印中 2=缺纸 3=过温 4=打印故障
     */
    int workStatus;

首页 上一页 1 2 3 4 下一页 尾页 1/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇volatile关键字在并发中有哪些作.. 下一篇Function源码解析与实践

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目