Record Class QueryResult<T>

java.lang.Object
java.lang.Record
com.midi.his.sdk.result.QueryResult<T>
类型参数:
T - 行映射类型
记录组件:
fid - 实际下发的服务编号
orderNo - 本次订单号,排障时提供给平台
msgId - 平台消息号
data - 映射后的数据
rows - 原始行(报文字段名到文本),需要在映射前做自定义处理时使用
retInfo - 业务结果
page - 分页信息,平台未返回时为 null
rawXml - 响应 ESBEntry 原文

public record QueryResult<T>(String fid, String orderNo, String msgId, List<T> data, List<EsbRow> rows, RetInfo retInfo, ResponseOption page, String rawXml) extends Record
一次查询的完整结果。
  • 构造器详细资料

    • QueryResult

      public QueryResult(String fid, String orderNo, String msgId, List<T> data, List<EsbRow> rows, RetInfo retInfo, ResponseOption page, String rawXml)
      构造并对列表做只读拷贝。
      参数:
      fid - 服务编号
      orderNo - 订单号
      msgId - 消息号
      data - 数据
      rows - 原始行
      retInfo - 业务结果
      page - 分页
      rawXml - 原文
  • 方法详细资料

    • of

      public static <T> QueryResult<T> of(EsbResponse response, List<T> data)
      由解析结果与映射数据构造。
      类型参数:
      T - 行类型
      参数:
      response - 解析后的响应
      data - 映射后的数据
      返回:
      结果对象
    • size

      public int size()
      返回:
      数据行数
    • isEmpty

      public boolean isEmpty()
      返回:
      是否没有数据
    • success

      public boolean success()
      返回:
      业务是否成功
    • currentPage

      public Integer currentPage()
      返回:
      当前页码,平台未返回时 null
    • totalPage

      public Integer totalPage()
      返回:
      总页数,平台未返回时 null
    • hasMore

      public boolean hasMore()
      平台是否提示本次结果被分页截断。

      该协议的请求侧没有页码入参,同步调用无法回取后续页,因此这里只是提示: 需要更大数据量时请调高 pageSize,或按业务条件(例如 UPDATE_DATETIME 区间)分段查询。

      返回:
      仍有未返回的数据时 true
    • toJson

      public String toJson()
      返回:
      数据的 JSON 文本,便于写日志或对账
    • toString

      public final String toString()
      返回此记录的字符串表示形式。此表示形式包含类型的名称,后跟每个记录组件的名称和值。
      指定者:
      toString 在类中 Record
      返回:
      此对象的字符串表示形式
    • hashCode

      public final int hashCode()
      返回此对象的哈希代码值。此值派生自每个记录组件的哈希代码。
      指定者:
      hashCode 在类中 Record
      返回:
      此对象的哈希代码值
    • equals

      public final boolean equals(Object o)
      指示某个其他对象是否“等于”此对象。如果两个对象属于同一个类,而且所有记录组件都相等,则这两个对象相等。 此记录中的所有组件都使用 Objects::equals(Object,Object) 进行比较。
      指定者:
      equals 在类中 Record
      参数:
      o - 要与之进行比较的对象
      返回:
      如果此对象与 o 参数相同,则为 true;否则为 false。
    • fid

      public String fid()
      返回 fid 记录组件的值。
      返回:
      fid 记录组件的值
    • orderNo

      public String orderNo()
      返回 orderNo 记录组件的值。
      返回:
      orderNo 记录组件的值
    • msgId

      public String msgId()
      返回 msgId 记录组件的值。
      返回:
      msgId 记录组件的值
    • data

      public List<T> data()
      返回 data 记录组件的值。
      返回:
      data 记录组件的值
    • rows

      public List<EsbRow> rows()
      返回 rows 记录组件的值。
      返回:
      rows 记录组件的值
    • retInfo

      public RetInfo retInfo()
      返回 retInfo 记录组件的值。
      返回:
      retInfo 记录组件的值
    • page

      public ResponseOption page()
      返回 page 记录组件的值。
      返回:
      page 记录组件的值
    • rawXml

      public String rawXml()
      返回 rawXml 记录组件的值。
      返回:
      rawXml 记录组件的值