接着上期
1.对数据进行分类封装按照前端需要的数据进行整合VO
1)AddressVO
package com.southwind2.phone_store_demo.vo; import lombok.AllArgsConstructor; import lombok.Data; @Data @AllArgsConstructor public class AddressVO { private Integer id; private String areaCode; private String name; private String tel; private String address; }
2)DataVO
package com.southwind2.phone_store_demo.vo; import lombok.Data; import java.util.List; @Data public class DataVO { private List<PhoneCategoryVO> categories; private List<PhoneInfoVO> phones; }
3)OrderDetailVO
package com.southwind2.phone_store_demo.vo; import com.fasterxml.jackson.annotation.JsonProperty; import lombok.Data; import java.math.BigDecimal; @Data public class OrderDetailVO { private String orderId; private String buyerName; @JsonProperty("tel") private String buyerPhone; @JsonProperty("address") private String buyerAddress; @JsonProperty("num") private Integer phoneQuantity; private String phoneName; @JsonProperty("specs") private String specsName; @JsonProperty("price") private String specsPrice; @JsonProperty("icon") private String phoneIcon; @JsonProperty("amount") private BigDecimal orderAmount; private Integer payStatus; private Integer freight = 10; }
4)PhoneCategoryVO
package com.southwind2.phone_store_demo.vo; import com.fasterxml.jackson.annotation.JsonProperty; import lombok.AllArgsConstructor; import lombok.Data; @Data @AllArgsConstructor public class PhoneCategoryVO { @JsonProperty("name")//数据库和前端对应关系封装 private String categoryName; @JsonProperty("type") private Integer categoryType; }
5)PhoneInfoVO
package com.southwind2.phone_store_demo.vo; import com.fasterxml.jackson.annotation.JsonProperty; import lombok.AllArgsConstructor; import lombok.Data; import java.math.BigDecimal; import java.util.List; import java.util.Map; @Data @AllArgsConstructor public class PhoneInfoVO { @JsonProperty("id") private Integer phoneId; @JsonProperty("title") private String phoneName; @JsonProperty("price") private String phonePrice; @JsonProperty("desc") private String phoneDescription; private List<Map<String,String>> tag; @JsonProperty("thumb") private String phoneIcon; }
6)PhoneSpecsCasVO
package com.southwind2.phone_store_demo.vo; import com.fasterxml.jackson.annotation.JsonProperty; import lombok.Data; import java.math.BigDecimal; @Data public class PhoneSpecsCasVO { @JsonProperty("s1") private Integer specsId; @JsonProperty("price") private BigDecimal specsPrice; @JsonProperty("stock_num") private Integer specsStock; }
7)PhoneSpecsVO
package com.southwind2.phone_store_demo.vo; import com.fasterxml.jackson.annotation.JsonProperty; import lombok.Data; @Data public class PhoneSpecsVO { @JsonProperty("id") private Integer specsId; @JsonProperty("name") private String specsName; @JsonProperty("imgUrl") private String specsIcon; @JsonProperty("previewImgUrl") private String specsPreview; }
8)ResultVO
package com.southwind2.phone_store_demo.vo; import lombok.Data; @Data public class ResultVO<T> { private Integer code; private String msg; private T data; }
9)SkuVO
package com.southwind2.phone_store_demo.vo; import com.fasterxml.jackson.annotation.JsonProperty; import lombok.Data; import java.util.List; @Data public class SkuVO { private List<TreeVO> tree; private List<PhoneSpecsCasVO> list; private String price; private Integer stock_num; private Boolean none_sku=false; private Boolean hide_stock=false; }
10)SpecsPackageVO
package com.southwind2.phone_store_demo.vo; import lombok.Data; import java.util.Map; @Data public class SpecsPackageVO { private Map<String,String> goods; private SkuVO sku; }
11)TreeVO
package com.southwind2.phone_store_demo.vo; import lombok.Data; import java.util.List; @Data public class TreeVO { private String k="规格"; private List<PhoneSpecsVO> v; private String k_s="s1"; } 以上就是根据前端数据结构进行的数据封装