Commit 96db6b97ad1868938e92b4a79e37f2622a3fc0e0
1 parent
4207b2b6
mall:解决 ProductSkuDO.properties 属性
Showing
1 changed file
with
18 additions
and
2 deletions
yudao-module-mall/yudao-module-product-biz/src/main/java/cn/iocoder/yudao/module/product/dal/dataobject/sku/ProductSkuDO.java
| 1 | 1 | package cn.iocoder.yudao.module.product.dal.dataobject.sku; |
| 2 | 2 | |
| 3 | 3 | import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; |
| 4 | +import cn.iocoder.yudao.framework.common.util.json.JsonUtils; | |
| 4 | 5 | import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; |
| 5 | 6 | import cn.iocoder.yudao.module.product.dal.dataobject.property.ProductPropertyDO; |
| 6 | 7 | import cn.iocoder.yudao.module.product.dal.dataobject.property.ProductPropertyValueDO; |
| ... | ... | @@ -9,7 +10,7 @@ import com.baomidou.mybatisplus.annotation.KeySequence; |
| 9 | 10 | import com.baomidou.mybatisplus.annotation.TableField; |
| 10 | 11 | import com.baomidou.mybatisplus.annotation.TableId; |
| 11 | 12 | import com.baomidou.mybatisplus.annotation.TableName; |
| 12 | -import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; | |
| 13 | +import com.baomidou.mybatisplus.extension.handlers.AbstractJsonTypeHandler; | |
| 13 | 14 | import lombok.*; |
| 14 | 15 | |
| 15 | 16 | import java.util.List; |
| ... | ... | @@ -47,7 +48,7 @@ public class ProductSkuDO extends BaseDO { |
| 47 | 48 | /** |
| 48 | 49 | * 规格值数组,JSON 格式 |
| 49 | 50 | */ |
| 50 | - @TableField(typeHandler = JacksonTypeHandler.class) | |
| 51 | + @TableField(typeHandler = PropertyTypeHandler.class) | |
| 51 | 52 | private List<Property> properties; |
| 52 | 53 | /** |
| 53 | 54 | * 销售价格,单位:分 |
| ... | ... | @@ -113,6 +114,21 @@ public class ProductSkuDO extends BaseDO { |
| 113 | 114 | |
| 114 | 115 | } |
| 115 | 116 | |
| 117 | + // TODO @芋艿:可以找一些新的思路 | |
| 118 | + public static class PropertyTypeHandler extends AbstractJsonTypeHandler<Object> { | |
| 119 | + | |
| 120 | + @Override | |
| 121 | + protected Object parse(String json) { | |
| 122 | + return JsonUtils.parseArray(json, Property.class); | |
| 123 | + } | |
| 124 | + | |
| 125 | + @Override | |
| 126 | + protected String toJson(Object obj) { | |
| 127 | + return JsonUtils.toJsonString(obj); | |
| 128 | + } | |
| 129 | + | |
| 130 | + } | |
| 131 | + | |
| 116 | 132 | // TODO ========== 待定字段:yv ========= |
| 117 | 133 | // TODO brokerage:一级返佣 |
| 118 | 134 | // TODO brokerage_two:二级返佣 | ... | ... |