sku更新基本完成

pull/1/head
zhaochencheng 3 years ago
parent d7c1b8a398
commit 5ed9aa02bc

@ -79,7 +79,7 @@ public class ProductController extends BaseController {
@PreAuthorize("@ss.hasPermi('pms:product:edit')")
@Log(title = "商品信息", businessType = BusinessType.UPDATE)
@PutMapping
public ResponseEntity<Integer> edit(@RequestBody Product product) {
public ResponseEntity<Integer> edit(@RequestBody ProductVO product) {
return ResponseEntity.ok(service.update(product));
}

@ -65,6 +65,10 @@ public class Product extends BaseAudit {
@Excel(name = "商品重量,默认为克")
private BigDecimal weight;
@ApiModelProperty("商品销售属性json格式")
@Excel(name = "商品销售属性json格式")
private String productAttr;
@ApiModelProperty("产品详情网页内容")
@Excel(name = "产品详情网页内容")
private String detailHtml;

@ -1,6 +1,8 @@
package com.cyl.pms.pojo.query;
import java.math.BigDecimal;
import com.ruoyi.common.annotation.Excel;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@ -43,6 +45,9 @@ public class ProductQuery {
@ApiModelProperty("单位 精确匹配")
private String unit;
@ApiModelProperty(name = "商品销售属性json格式")
private String productAttr;
@ApiModelProperty("商品重量,默认为克 精确匹配")
private BigDecimal weight;

@ -62,5 +62,7 @@ public class ProductVO extends BaseAudit {
/** 商品分类名称 */
@Excel(name = "商品分类名称")
private String productCategoryName;
@Excel(name = "商品销售属性json格式")
private String productAttr;
private List<Sku> skuList;
}

@ -1,10 +1,12 @@
package com.cyl.pms.service;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.List;
import java.util.*;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.segments.MergeSegments;
import com.cyl.pms.convert.ProductConvert;
import com.cyl.pms.domain.Sku;
import com.cyl.pms.mapper.SkuMapper;
@ -146,11 +148,26 @@ public class ProductService {
/**
*
*
* @param product
* @param productVO
* @return
*/
public int update(Product product) {
return productMapper.updateById(product);
@Transactional
public int update(ProductVO productVO) {
Product product = convert.vo2do(productVO);
product.setCreateTime(LocalDateTime.now());
List<Sku> skuList = productVO.getSkuList();
productMapper.updateById(product);
Map<String,Object> map = new HashMap<>();
map.put("product_id", product.getId());
skuMapper.deleteByMap(map);
if(skuList!=null){
skuList.forEach(sku -> {
sku.setProductId(product.getId());
sku.setCreateTime(LocalDateTime.now());
skuMapper.insert(sku);
});
}
return 1;
}
/**

@ -35,6 +35,7 @@ CREATE TABLE `pms_product`
`price` decimal(10, 2) NULL DEFAULT NULL,
`unit` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '单位',
`weight` decimal(10, 2) NULL DEFAULT NULL COMMENT '商品重量,默认为克',
`product_attr` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '商品销售属性json格式',
`detail_html` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '产品详情网页内容',
`detail_mobile_html` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '移动端网页详情',
`brand_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '品牌名称',
@ -105,6 +106,7 @@ CREATE TABLE `pms_product_snapshot`
`price` decimal(10, 2) NULL DEFAULT NULL,
`unit` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '单位',
`weight` decimal(10, 2) NULL DEFAULT NULL COMMENT '商品重量,默认为克',
`product_attr` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '商品销售属性json格式',
`detail_html` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '产品详情网页内容',
`detail_mobile_html` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '移动端网页详情',
`brand_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '品牌名称',

Loading…
Cancel
Save