diff --git a/document/pdm/mall.pdb b/document/pdm/mall.pdb index a2b937a..ff26cb4 100644 --- a/document/pdm/mall.pdb +++ b/document/pdm/mall.pdb @@ -1,5 +1,5 @@ - + @@ -8028,8 +8028,9 @@ LABL 0 新宋体,8,N status 1521710821 zhenghong -1521711025 +1524816533 zhenghong +审核后的状态:0->未通过;2->已通过 int(1) 1 diff --git a/mall-admin/src/main/java/com/macro/mall/controller/PmsSkuStockController.java b/mall-admin/src/main/java/com/macro/mall/controller/PmsSkuStockController.java index ad3a55b..7695bb0 100644 --- a/mall-admin/src/main/java/com/macro/mall/controller/PmsSkuStockController.java +++ b/mall-admin/src/main/java/com/macro/mall/controller/PmsSkuStockController.java @@ -7,10 +7,7 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import java.util.List; @@ -18,17 +15,29 @@ import java.util.List; * sku库存Controller * Created by macro on 2018/4/27. */ -@Api("sku商品库存管理") @Controller +@Api(tags = "PmsSkuStockController", description = "sku商品库存管理") @RequestMapping("/sku") public class PmsSkuStockController { @Autowired private PmsSkuStockService skuStockService; + @ApiOperation("根据商品编号及编号模糊搜索sku库存") - @RequestMapping("/{id}") + @RequestMapping(value = "/{pid}", method = RequestMethod.GET) @ResponseBody - public Object getList(@PathVariable Long id, @RequestParam("keyword") String keyword){ - List skuStockList = skuStockService.getList(id,keyword); + public Object getList(@PathVariable Long pid, @RequestParam(value = "keyword",required = false) String keyword) { + List skuStockList = skuStockService.getList(pid, keyword); return new CommonResult().success(skuStockList); } + @ApiOperation("批量更新库存信息") + @RequestMapping(value ="/update/{pid}",method = RequestMethod.POST) + @ResponseBody + public Object update(@PathVariable Long pid,@RequestBody List skuStockList){ + int count = skuStockService.update(pid,skuStockList); + if(count>0){ + return new CommonResult().success(count); + }else{ + return new CommonResult().failed(); + } + } } diff --git a/mall-admin/src/main/java/com/macro/mall/dao/PmsSkuStockDao.java b/mall-admin/src/main/java/com/macro/mall/dao/PmsSkuStockDao.java index a2c9ca6..9ce1896 100644 --- a/mall-admin/src/main/java/com/macro/mall/dao/PmsSkuStockDao.java +++ b/mall-admin/src/main/java/com/macro/mall/dao/PmsSkuStockDao.java @@ -10,5 +10,13 @@ import java.util.List; * Created by macro on 2018/4/26. */ public interface PmsSkuStockDao { + /** + * 批量插入操作 + */ int insertList(@Param("list")List skuStockList); + + /** + * 批量插入或替换操作 + */ + int replaceList(@Param("list")List skuStockList); } diff --git a/mall-admin/src/main/java/com/macro/mall/service/PmsSkuStockService.java b/mall-admin/src/main/java/com/macro/mall/service/PmsSkuStockService.java index 1b295ec..e3c485e 100644 --- a/mall-admin/src/main/java/com/macro/mall/service/PmsSkuStockService.java +++ b/mall-admin/src/main/java/com/macro/mall/service/PmsSkuStockService.java @@ -13,4 +13,9 @@ public interface PmsSkuStockService { * 根据产品id和skuCode模糊搜索 */ List getList(Long pid, String keyword); + + /** + * 批量更新商品库存信息 + */ + int update(Long pid, List skuStockList); } diff --git a/mall-admin/src/main/java/com/macro/mall/service/impl/PmsSkuStockServiceImpl.java b/mall-admin/src/main/java/com/macro/mall/service/impl/PmsSkuStockServiceImpl.java index 30b66b6..457d065 100644 --- a/mall-admin/src/main/java/com/macro/mall/service/impl/PmsSkuStockServiceImpl.java +++ b/mall-admin/src/main/java/com/macro/mall/service/impl/PmsSkuStockServiceImpl.java @@ -1,11 +1,13 @@ package com.macro.mall.service.impl; +import com.macro.mall.dao.PmsSkuStockDao; import com.macro.mall.mapper.PmsSkuStockMapper; import com.macro.mall.model.PmsSkuStock; import com.macro.mall.model.PmsSkuStockExample; import com.macro.mall.service.PmsSkuStockService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.StringUtils; import java.util.List; @@ -17,11 +19,21 @@ import java.util.List; public class PmsSkuStockServiceImpl implements PmsSkuStockService { @Autowired private PmsSkuStockMapper skuStockMapper; + @Autowired + private PmsSkuStockDao skuStockDao; @Override public List getList(Long pid, String keyword) { PmsSkuStockExample example = new PmsSkuStockExample(); - example.createCriteria().andProductIdEqualTo(pid).andSkuCodeLike("%" + keyword + "%") + PmsSkuStockExample.Criteria criteria = example.createCriteria().andProductIdEqualTo(pid); + if (!StringUtils.isEmpty(keyword)) { + criteria.andSkuCodeLike("%" + keyword + "%"); + } return skuStockMapper.selectByExample(example); } + + @Override + public int update(Long pid, List skuStockList) { + return skuStockDao.replaceList(skuStockList); + } } diff --git a/mall-admin/src/main/resources/dao/PmsSkuStockDao.xml b/mall-admin/src/main/resources/dao/PmsSkuStockDao.xml index 65583b9..483592f 100644 --- a/mall-admin/src/main/resources/dao/PmsSkuStockDao.xml +++ b/mall-admin/src/main/resources/dao/PmsSkuStockDao.xml @@ -16,4 +16,20 @@ #{item.sale,jdbcType=INTEGER}) + + REPLACE INTO pms_sku_stock (id,product_id, sku_code, price, stock, low_stock, sp1, sp2, sp3, pic, sale) VALUES + + (#{item.id,jdbcType=BIGINT}, + #{item.productId,jdbcType=BIGINT}, + #{item.skuCode,jdbcType=VARCHAR}, + #{item.price,jdbcType=DECIMAL}, + #{item.stock,jdbcType=INTEGER}, + #{item.lowStock,jdbcType=INTEGER}, + #{item.sp1,jdbcType=VARCHAR}, + #{item.sp2,jdbcType=VARCHAR}, + #{item.sp3,jdbcType=VARCHAR}, + #{item.pic,jdbcType=VARCHAR}, + #{item.sale,jdbcType=INTEGER}) + + \ No newline at end of file