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 | package cn.iocoder.yudao.module.product.dal.dataobject.sku; | 1 | package cn.iocoder.yudao.module.product.dal.dataobject.sku; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | 3 | import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; |
| 4 | +import cn.iocoder.yudao.framework.common.util.json.JsonUtils; | ||
| 4 | import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; | 5 | import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; |
| 5 | import cn.iocoder.yudao.module.product.dal.dataobject.property.ProductPropertyDO; | 6 | import cn.iocoder.yudao.module.product.dal.dataobject.property.ProductPropertyDO; |
| 6 | import cn.iocoder.yudao.module.product.dal.dataobject.property.ProductPropertyValueDO; | 7 | import cn.iocoder.yudao.module.product.dal.dataobject.property.ProductPropertyValueDO; |
| @@ -9,7 +10,7 @@ import com.baomidou.mybatisplus.annotation.KeySequence; | @@ -9,7 +10,7 @@ import com.baomidou.mybatisplus.annotation.KeySequence; | ||
| 9 | import com.baomidou.mybatisplus.annotation.TableField; | 10 | import com.baomidou.mybatisplus.annotation.TableField; |
| 10 | import com.baomidou.mybatisplus.annotation.TableId; | 11 | import com.baomidou.mybatisplus.annotation.TableId; |
| 11 | import com.baomidou.mybatisplus.annotation.TableName; | 12 | import com.baomidou.mybatisplus.annotation.TableName; |
| 12 | -import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; | 13 | +import com.baomidou.mybatisplus.extension.handlers.AbstractJsonTypeHandler; |
| 13 | import lombok.*; | 14 | import lombok.*; |
| 14 | 15 | ||
| 15 | import java.util.List; | 16 | import java.util.List; |
| @@ -47,7 +48,7 @@ public class ProductSkuDO extends BaseDO { | @@ -47,7 +48,7 @@ public class ProductSkuDO extends BaseDO { | ||
| 47 | /** | 48 | /** |
| 48 | * 规格值数组,JSON 格式 | 49 | * 规格值数组,JSON 格式 |
| 49 | */ | 50 | */ |
| 50 | - @TableField(typeHandler = JacksonTypeHandler.class) | 51 | + @TableField(typeHandler = PropertyTypeHandler.class) |
| 51 | private List<Property> properties; | 52 | private List<Property> properties; |
| 52 | /** | 53 | /** |
| 53 | * 销售价格,单位:分 | 54 | * 销售价格,单位:分 |
| @@ -113,6 +114,21 @@ public class ProductSkuDO extends BaseDO { | @@ -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 | // TODO ========== 待定字段:yv ========= | 132 | // TODO ========== 待定字段:yv ========= |
| 117 | // TODO brokerage:一级返佣 | 133 | // TODO brokerage:一级返佣 |
| 118 | // TODO brokerage_two:二级返佣 | 134 | // TODO brokerage_two:二级返佣 |