All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pdd.pop.sdk.http.api.ark.response.PddFlightQueryGuestRuleResponse Maven / Gradle / Ivy

package com.pdd.pop.sdk.http.api.ark.response;

import com.pdd.pop.ext.fasterxml.jackson.annotation.JsonProperty;
import com.pdd.pop.sdk.http.PopBaseHttpResponse;

import java.util.List;



public class PddFlightQueryGuestRuleResponse extends PopBaseHttpResponse {

    /**
     * 
     */
    @JsonProperty("flight_query_guest_rule_response")
    private FlightQueryGuestRuleResponse flightQueryGuestRuleResponse;

    public FlightQueryGuestRuleResponse getFlightQueryGuestRuleResponse() {
        return flightQueryGuestRuleResponse;
    }

    public static class FlightQueryGuestRuleResponse {

        /**
         * 客规结果列表
         */
        @JsonProperty("rule_info_list")
        private List ruleInfoList;

        /**
         * 
         */
        @JsonProperty("trace_id")
        private String traceId;

        /**
         * 
         */
        @JsonProperty("sub_trace_id")
        private String subTraceId;

        /**
         * 
         */
        @JsonProperty("sign")
        private String sign;

        public List getRuleInfoList() {
            return ruleInfoList;
        }

        public String getTraceId() {
            return traceId;
        }

        public String getSubTraceId() {
            return subTraceId;
        }

        public String getSign() {
            return sign;
        }
    }

    public static class FlightQueryGuestRuleResponseRuleInfoListItem {

        /**
         * 航程类型
         */
        @JsonProperty("trip_type")
        private Integer tripType;

        /**
         * 同舱同产品类型价格的唯一标识
         */
        @JsonProperty("product_id")
        private Integer productId;

        /**
         * 产品类型
         */
        @JsonProperty("product_type")
        private Integer productType;

        /**
         * 客规结果列表
         */
        @JsonProperty("segment_rule_info_list")
        private List segmentRuleInfoList;

        public Integer getTripType() {
            return tripType;
        }

        public Integer getProductId() {
            return productId;
        }

        public Integer getProductType() {
            return productType;
        }

        public List getSegmentRuleInfoList() {
            return segmentRuleInfoList;
        }
    }

    public static class FlightQueryGuestRuleResponseRuleInfoListItemSegmentRuleInfoListItem {

        /**
         * 航程编号 (从1开始编号)
         */
        @JsonProperty("segment_no")
        private Integer segmentNo;

        /**
         * 客规列表(不同乘客类型)
         */
        @JsonProperty("rule_detail_info_list")
        private List ruleDetailInfoList;

        public Integer getSegmentNo() {
            return segmentNo;
        }

        public List getRuleDetailInfoList() {
            return ruleDetailInfoList;
        }
    }

    public static class FlightQueryGuestRuleResponseRuleInfoListItemSegmentRuleInfoListItemRuleDetailInfoListItem {

        /**
         * 乘客类型
         */
        @JsonProperty("passenger_type")
        private String passengerType;

        /**
         * 是否可签转
         */
        @JsonProperty("endorsement")
        private Boolean endorsement;

        /**
         * 退票客规信息
         */
        @JsonProperty("refund_rule_info")
        private FlightQueryGuestRuleResponseRuleInfoListItemSegmentRuleInfoListItemRuleDetailInfoListItemRefundRuleInfo refundRuleInfo;

        /**
         * 改期客规信息
         */
        @JsonProperty("change_rule_info")
        private FlightQueryGuestRuleResponseRuleInfoListItemSegmentRuleInfoListItemRuleDetailInfoListItemChangeRuleInfo changeRuleInfo;

        /**
         * 手提行李额
         */
        @JsonProperty("hand_baggage_info")
        private FlightQueryGuestRuleResponseRuleInfoListItemSegmentRuleInfoListItemRuleDetailInfoListItemHandBaggageInfo handBaggageInfo;

        /**
         * 托运行李额
         */
        @JsonProperty("checked_baggage_info")
        private FlightQueryGuestRuleResponseRuleInfoListItemSegmentRuleInfoListItemRuleDetailInfoListItemCheckedBaggageInfo checkedBaggageInfo;

        public String getPassengerType() {
            return passengerType;
        }

        public Boolean getEndorsement() {
            return endorsement;
        }

        public FlightQueryGuestRuleResponseRuleInfoListItemSegmentRuleInfoListItemRuleDetailInfoListItemRefundRuleInfo getRefundRuleInfo() {
            return refundRuleInfo;
        }

        public FlightQueryGuestRuleResponseRuleInfoListItemSegmentRuleInfoListItemRuleDetailInfoListItemChangeRuleInfo getChangeRuleInfo() {
            return changeRuleInfo;
        }

        public FlightQueryGuestRuleResponseRuleInfoListItemSegmentRuleInfoListItemRuleDetailInfoListItemHandBaggageInfo getHandBaggageInfo() {
            return handBaggageInfo;
        }

        public FlightQueryGuestRuleResponseRuleInfoListItemSegmentRuleInfoListItemRuleDetailInfoListItemCheckedBaggageInfo getCheckedBaggageInfo() {
            return checkedBaggageInfo;
        }
    }

    public static class FlightQueryGuestRuleResponseRuleInfoListItemSegmentRuleInfoListItemRuleDetailInfoListItemRefundRuleInfo {

        /**
         * 规则类型
         */
        @JsonProperty("rule_type")
        private Integer ruleType;

        /**
         * 规则明细
         */
        @JsonProperty("rule_detail_list")
        private List ruleDetailList;

        /**
         * 客规原文
         */
        @JsonProperty("rule")
        private String rule;

        public Integer getRuleType() {
            return ruleType;
        }

        public List getRuleDetailList() {
            return ruleDetailList;
        }

        public String getRule() {
            return rule;
        }
    }

    public static class FlightQueryGuestRuleResponseRuleInfoListItemSegmentRuleInfoListItemRuleDetailInfoListItemRefundRuleInfoRuleDetailListItem {

        /**
         * 适用时间范围的开始时间
         */
        @JsonProperty("begin")
        private Integer begin;

        /**
         * 适用时间范围的结束时间
         */
        @JsonProperty("end")
        private Integer end;

        /**
         * 时间单位
         */
        @JsonProperty("time_unit")
        private Integer timeUnit;

        /**
         * 费率% e.g. 80表示将收取80%手续费
         */
        @JsonProperty("rate")
        private Integer rate;

        /**
         * 手续费, 手续费为null表示不可退票或者不可改期
         */
        @JsonProperty("pay_fee")
        private Long payFee;

        /**
         * 退改政策
         */
        @JsonProperty("refund_change")
        private Integer refundChange;

        public Integer getBegin() {
            return begin;
        }

        public Integer getEnd() {
            return end;
        }

        public Integer getTimeUnit() {
            return timeUnit;
        }

        public Integer getRate() {
            return rate;
        }

        public Long getPayFee() {
            return payFee;
        }

        public Integer getRefundChange() {
            return refundChange;
        }
    }

    public static class FlightQueryGuestRuleResponseRuleInfoListItemSegmentRuleInfoListItemRuleDetailInfoListItemChangeRuleInfo {

        /**
         * 规则类型
         */
        @JsonProperty("rule_type")
        private Integer ruleType;

        /**
         * 
         */
        @JsonProperty("rule_detail_list")
        private List ruleDetailList;

        /**
         * 客规原文
         */
        @JsonProperty("rule")
        private String rule;

        public Integer getRuleType() {
            return ruleType;
        }

        public List getRuleDetailList() {
            return ruleDetailList;
        }

        public String getRule() {
            return rule;
        }
    }

    public static class FlightQueryGuestRuleResponseRuleInfoListItemSegmentRuleInfoListItemRuleDetailInfoListItemChangeRuleInfoRuleDetailListItem {

        /**
         * 适用时间范围的开始时间
         */
        @JsonProperty("begin")
        private Integer begin;

        /**
         * 适用时间范围的结束时间
         */
        @JsonProperty("end")
        private Integer end;

        /**
         * 时间单位
         */
        @JsonProperty("time_unit")
        private Integer timeUnit;

        /**
         * 费率% e.g. 80表示将收取80%手续费
         */
        @JsonProperty("rate")
        private Integer rate;

        /**
         * 手续费, 手续费为null表示不可退票或者不可改期
         */
        @JsonProperty("pay_fee")
        private Long payFee;

        /**
         * 退改政策,
         */
        @JsonProperty("refund_change")
        private Integer refundChange;

        public Integer getBegin() {
            return begin;
        }

        public Integer getEnd() {
            return end;
        }

        public Integer getTimeUnit() {
            return timeUnit;
        }

        public Integer getRate() {
            return rate;
        }

        public Long getPayFee() {
            return payFee;
        }

        public Integer getRefundChange() {
            return refundChange;
        }
    }

    public static class FlightQueryGuestRuleResponseRuleInfoListItemSegmentRuleInfoListItemRuleDetailInfoListItemHandBaggageInfo {

        /**
         * 行李额类型
         */
        @JsonProperty("baggage_type")
        private Integer baggageType;

        /**
         * 件数
         */
        @JsonProperty("pieces")
        private Integer pieces;

        /**
         * 当pieces有值时,需要单位一定有值,使用的BaggageUnitEnum的件数单位 :1. 件
         */
        @JsonProperty("pieces_unit")
        private Integer piecesUnit;

        /**
         * 单件行李的重量限制
         */
        @JsonProperty("weight_single")
        private Integer weightSingle;

        /**
         * 所有行李的重量限制
         */
        @JsonProperty("weight")
        private Integer weight;

        /**
         * 当weight_single 或weight有值时,需要单位一定有值,使用的BaggageUnitEnum的重量单位 2. KG
         */
        @JsonProperty("weight_unit")
        private Integer weightUnit;

        /**
         * 长
         */
        @JsonProperty("length")
        private Integer length;

        /**
         * 宽
         */
        @JsonProperty("width")
        private Integer width;

        /**
         * 高
         */
        @JsonProperty("height")
        private Integer height;

        /**
         * 总长度=长+宽+高
         */
        @JsonProperty("total_length")
        private Integer totalLength;

        /**
         * 当长宽高有值时,需要单位一定有值,使用的BaggageUnitEnum的长度单位 3. CM
         */
        @JsonProperty("volume_unit")
        private Integer volumeUnit;

        public Integer getBaggageType() {
            return baggageType;
        }

        public Integer getPieces() {
            return pieces;
        }

        public Integer getPiecesUnit() {
            return piecesUnit;
        }

        public Integer getWeightSingle() {
            return weightSingle;
        }

        public Integer getWeight() {
            return weight;
        }

        public Integer getWeightUnit() {
            return weightUnit;
        }

        public Integer getLength() {
            return length;
        }

        public Integer getWidth() {
            return width;
        }

        public Integer getHeight() {
            return height;
        }

        public Integer getTotalLength() {
            return totalLength;
        }

        public Integer getVolumeUnit() {
            return volumeUnit;
        }
    }

    public static class FlightQueryGuestRuleResponseRuleInfoListItemSegmentRuleInfoListItemRuleDetailInfoListItemCheckedBaggageInfo {

        /**
         * 行李额类型
         */
        @JsonProperty("baggage_type")
        private Integer baggageType;

        /**
         * 件数
         */
        @JsonProperty("pieces")
        private Integer pieces;

        /**
         * 当pieces有值时,需要单位一定有值,使用的BaggageUnitEnum的件数单位 :1. 件
         */
        @JsonProperty("pieces_unit")
        private Integer piecesUnit;

        /**
         * 单件行李的重量限制
         */
        @JsonProperty("weight_single")
        private Integer weightSingle;

        /**
         * 所有行李的重量限制
         */
        @JsonProperty("weight")
        private Integer weight;

        /**
         * 当weight_single 或weight有值时,需要单位一定有值,使用的BaggageUnitEnum的重量单位 2. KG
         */
        @JsonProperty("weight_unit")
        private Integer weightUnit;

        /**
         * 长
         */
        @JsonProperty("length")
        private Integer length;

        /**
         * 宽
         */
        @JsonProperty("width")
        private Integer width;

        /**
         * 高
         */
        @JsonProperty("height")
        private Integer height;

        /**
         * 总长度=长+宽+高
         */
        @JsonProperty("total_length")
        private Integer totalLength;

        /**
         * 当长宽高有值时,需要单位一定有值,使用的BaggageUnitEnum的长度单位 3. CM
         */
        @JsonProperty("volume_unit")
        private Integer volumeUnit;

        public Integer getBaggageType() {
            return baggageType;
        }

        public Integer getPieces() {
            return pieces;
        }

        public Integer getPiecesUnit() {
            return piecesUnit;
        }

        public Integer getWeightSingle() {
            return weightSingle;
        }

        public Integer getWeight() {
            return weight;
        }

        public Integer getWeightUnit() {
            return weightUnit;
        }

        public Integer getLength() {
            return length;
        }

        public Integer getWidth() {
            return width;
        }

        public Integer getHeight() {
            return height;
        }

        public Integer getTotalLength() {
            return totalLength;
        }

        public Integer getVolumeUnit() {
            return volumeUnit;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy