package com.prolog.cs.biz.outbound.model.vo.faceorder;

import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

@NoArgsConstructor
@Data
public class JDKdOrderAddVO {


    /**
     * carrierCode : JD_QINGNIU_YYKD
     * params : [{"orderId":"test20240715","senderContactRequest":{"senderPhone":"1234568901","senderName":"张三","senderAddress":"北京亦庄经济开发区科创十一街与经海四路交叉口西北150米京东总部4号楼","senderPostcode":"100000","senderCompany":"北京市大兴区亦庄经济开发区京东大厦","senderMobile":"1234568901"},"customerCode":"010K3142546","remark":"运单备注","salePlatform":"0030001","cargoesRequest":{"volume":1,"goodsCount":1,"length":1,"width":1,"weight":1,"description":"衣服","goodsName":"服装、3C等","packageQty":3,"height":1},"receiverContactRequest":{"receiverName":"青牛测试","receiverMobile":"13277970795","receiverProvince":1,"receiverPostcode":"111","receiverCompany":"无","receiverCounty":1,"receiverCity":1,"receiverAddress":"湖北省武汉市硚口区越秀财富中心","receiverPhone":"13277970795","receiverCityName":"无","receiverTownName":"无","receiverProvinceName":"无","receiverTown":1,"receiverCountyName":"无","receiverOAID":"123123444"},"promiseTimeType":29,"goodsType":24}]
     */

    private String carrierCode;
    private List<ParamsBean2> params;

    @NoArgsConstructor
    @Data
    public static class ParamsBean2 {
        /**
         * orderId : test20240715
         * senderContactRequest : {"senderPhone":"1234568901","senderName":"张三","senderAddress":"北京亦庄经济开发区科创十一街与经海四路交叉口西北150米京东总部4号楼","senderPostcode":"100000","senderCompany":"北京市大兴区亦庄经济开发区京东大厦","senderMobile":"1234568901"}
         * customerCode : 010K3142546
         * remark : 运单备注
         * salePlatform : 0030001
         * cargoesRequest : {"volume":1,"goodsCount":1,"length":1,"width":1,"weight":1,"description":"衣服","goodsName":"服装、3C等","packageQty":3,"height":1}
         * receiverContactRequest : {"receiverName":"青牛测试","receiverMobile":"13277970795","receiverProvince":1,"receiverPostcode":"111","receiverCompany":"无","receiverCounty":1,"receiverCity":1,"receiverAddress":"湖北省武汉市硚口区越秀财富中心","receiverPhone":"13277970795","receiverCityName":"无","receiverTownName":"无","receiverProvinceName":"无","receiverTown":1,"receiverCountyName":"无","receiverOAID":"123123444"}
         * promiseTimeType : 29
         * goodsType : 24
         */

        private String orderId;
        private SenderContactRequestBean senderContactRequest;
        private String customerCode;
        private String remark;
        private String salePlatform;
        private CargoesRequestBean cargoesRequest;
        private ReceiverContactRequestBean receiverContactRequest;
        private Integer promiseTimeType;
        private Integer goodsType;

        @NoArgsConstructor
        @Data
        public static class SenderContactRequestBean {
            /**
             * senderPhone : 1234568901
             * senderName : 张三
             * senderAddress : 北京亦庄经济开发区科创十一街与经海四路交叉口西北150米京东总部4号楼
             * senderPostcode : 100000
             * senderCompany : 北京市大兴区亦庄经济开发区京东大厦
             * senderMobile : 1234568901
             */

            private String senderPhone;
            private String senderName;
            private String senderAddress;
            private String senderPostcode;
            private String senderCompany;
            private String senderMobile;
        }

        @NoArgsConstructor
        @Data
        public static class CargoesRequestBean {
            /**
             * volume : 1
             * goodsCount : 1
             * length : 1
             * width : 1
             * weight : 1
             * description : 衣服
             * goodsName : 服装、3C等
             * packageQty : 3
             * height : 1
             */

            private Double volume;
            private Integer goodsCount;
            private String length;
            private String width;
            private Double weight;
            private String description;
            private String goodsName;
            private Integer packageQty;
            private String height;
        }

        @NoArgsConstructor
        @Data
        public static class ReceiverContactRequestBean {
            /**
             * receiverName : 青牛测试
             * receiverMobile : 13277970795
             * receiverProvince : 1
             * receiverPostcode : 111
             * receiverCompany : 无
             * receiverCounty : 1
             * receiverCity : 1
             * receiverAddress : 湖北省武汉市硚口区越秀财富中心
             * receiverPhone : 13277970795
             * receiverCityName : 无
             * receiverTownName : 无
             * receiverProvinceName : 无
             * receiverTown : 1
             * receiverCountyName : 无
             * receiverOAID : 123123444
             */

            private String receiverName;
            private String receiverMobile;
            private String receiverProvince;
            private String receiverPostcode;
            private String receiverCompany;
            private String receiverCounty;
            private String receiverCity;
            private String receiverAddress;
            private String receiverPhone;
            private String receiverCityName;
            private String receiverTownName;
            private String receiverProvinceName;
            private String receiverTown;
            private String receiverCountyName;
            private String receiverOAID;
        }
    }
}
