修改耗材商品批量添加
This commit is contained in:
@@ -5,6 +5,7 @@ import cn.ysk.cashier.cons.domain.TbProskuCon;
|
|||||||
import cn.ysk.cashier.cons.service.TbProskuConService;
|
import cn.ysk.cashier.cons.service.TbProskuConService;
|
||||||
import cn.ysk.cashier.cons.service.dto.ProskuInfo;
|
import cn.ysk.cashier.cons.service.dto.ProskuInfo;
|
||||||
import cn.ysk.cashier.cons.service.dto.TbProskuConQueryCriteria;
|
import cn.ysk.cashier.cons.service.dto.TbProskuConQueryCriteria;
|
||||||
|
import cn.ysk.cashier.exception.BadRequestException;
|
||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.springframework.http.HttpStatus;
|
import org.springframework.http.HttpStatus;
|
||||||
@@ -13,6 +14,7 @@ import org.springframework.validation.annotation.Validated;
|
|||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import io.swagger.annotations.*;
|
import io.swagger.annotations.*;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
import java.util.List;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -44,8 +46,14 @@ public class TbProskuConController {
|
|||||||
@PostMapping
|
@PostMapping
|
||||||
@Log("新增商品规格耗材信息")
|
@Log("新增商品规格耗材信息")
|
||||||
@ApiOperation("新增商品规格耗材信息")
|
@ApiOperation("新增商品规格耗材信息")
|
||||||
public ResponseEntity<Object> createTbProskuCon(@Validated @RequestBody ProskuInfo resources) throws Exception {
|
public ResponseEntity<Object> createTbProskuCon(@Validated @RequestBody List<ProskuInfo> resources) throws Exception {
|
||||||
|
try {
|
||||||
return new ResponseEntity<>(tbProskuConService.create(resources),HttpStatus.CREATED);
|
return new ResponseEntity<>(tbProskuConService.create(resources),HttpStatus.CREATED);
|
||||||
|
} catch (BadRequestException be) {
|
||||||
|
throw new Exception(be.getMessage());
|
||||||
|
}catch (Exception e){
|
||||||
|
throw new Exception("系统异常");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@PutMapping
|
@PutMapping
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ public interface TbProskuConService {
|
|||||||
* @param resources /
|
* @param resources /
|
||||||
* @return TbProskuConDto
|
* @return TbProskuConDto
|
||||||
*/
|
*/
|
||||||
TbProskuConDto create(ProskuInfo resources) throws Exception;
|
TbProskuConDto create(List<ProskuInfo> resources) throws Exception;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 编辑
|
* 编辑
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import cn.ysk.cashier.cons.domain.TbConsSuppFlow;
|
|||||||
import cn.ysk.cashier.cons.domain.TbProskuCon;
|
import cn.ysk.cashier.cons.domain.TbProskuCon;
|
||||||
import cn.ysk.cashier.cons.repository.TbConsInfoRepository;
|
import cn.ysk.cashier.cons.repository.TbConsInfoRepository;
|
||||||
import cn.ysk.cashier.cons.service.dto.ProskuInfo;
|
import cn.ysk.cashier.cons.service.dto.ProskuInfo;
|
||||||
|
import cn.ysk.cashier.exception.BadRequestException;
|
||||||
import cn.ysk.cashier.pojo.product.TbProduct;
|
import cn.ysk.cashier.pojo.product.TbProduct;
|
||||||
import cn.ysk.cashier.pojo.product.TbProductSku;
|
import cn.ysk.cashier.pojo.product.TbProductSku;
|
||||||
import cn.ysk.cashier.repository.product.TbProductRepository;
|
import cn.ysk.cashier.repository.product.TbProductRepository;
|
||||||
@@ -70,16 +71,16 @@ public class TbProskuConServiceImpl implements TbProskuConService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public TbProskuConDto create(ProskuInfo resources) throws Exception {
|
public TbProskuConDto create(List<ProskuInfo> resources) throws BadRequestException,Exception {
|
||||||
|
for (ProskuInfo resource : resources) {
|
||||||
TbProduct product= tbProductRepository.getById(resources.getProductId());
|
TbProduct product= tbProductRepository.getById(resource.getProductId());
|
||||||
if(Objects.isNull(product)){
|
if(Objects.isNull(product)){
|
||||||
throw new Exception("对应的商品信息不存在");
|
throw new BadRequestException("对应的商品信息不存在");
|
||||||
}
|
}
|
||||||
|
|
||||||
TbConsInfo tbConsInfo= tbConsInfoRepository.getById(resources.getConsInfoId());
|
TbConsInfo tbConsInfo= tbConsInfoRepository.getById(resource.getConsInfoId());
|
||||||
if(Objects.isNull(tbConsInfo)){
|
if(Objects.isNull(tbConsInfo)){
|
||||||
throw new Exception("对应的耗材信息不存在");
|
throw new BadRequestException("对应的耗材信息不存在");
|
||||||
}
|
}
|
||||||
|
|
||||||
List<TbProskuCon> list=new ArrayList<>();
|
List<TbProskuCon> list=new ArrayList<>();
|
||||||
@@ -88,32 +89,32 @@ public class TbProskuConServiceImpl implements TbProskuConService {
|
|||||||
List<TbProductSku> skuList= tbProductSkuRepository.searchSku(product.getId().toString());
|
List<TbProductSku> skuList= tbProductSkuRepository.searchSku(product.getId().toString());
|
||||||
if(Objects.nonNull(skuList)&&skuList.size()>0){
|
if(Objects.nonNull(skuList)&&skuList.size()>0){
|
||||||
for (TbProductSku tbProductSku : skuList) {
|
for (TbProductSku tbProductSku : skuList) {
|
||||||
int count=tbProskuConRepository.countByConInfoIdAndProductSkuIdAndShopId(resources.getConsInfoId(), tbProductSku.getId(), Integer.valueOf(tbProductSku.getShopId()), Integer.valueOf(tbProductSku.getProductId()));
|
int count=tbProskuConRepository.countByConInfoIdAndProductSkuIdAndShopId(resource.getConsInfoId(), tbProductSku.getId(), Integer.valueOf(tbProductSku.getShopId()), Integer.valueOf(tbProductSku.getProductId()));
|
||||||
if(count<=0){
|
if(count<=0){
|
||||||
TbProskuCon tbProskuCon=new TbProskuCon();
|
TbProskuCon tbProskuCon=new TbProskuCon();
|
||||||
|
|
||||||
tbProskuCon.setShopId(Integer.valueOf(tbProductSku.getShopId()));
|
tbProskuCon.setShopId(Integer.valueOf(tbProductSku.getShopId()));
|
||||||
tbProskuCon.setConInfoId(resources.getConsInfoId());
|
tbProskuCon.setConInfoId(resource.getConsInfoId());
|
||||||
tbProskuCon.setProductId(Integer.valueOf(tbProductSku.getProductId()));
|
tbProskuCon.setProductId(Integer.valueOf(tbProductSku.getProductId()));
|
||||||
tbProskuCon.setProductSkuId(tbProductSku.getId());
|
tbProskuCon.setProductSkuId(tbProductSku.getId());
|
||||||
tbProskuCon.setSurplusStock(resources.getSurplusStock());
|
tbProskuCon.setSurplusStock(resource.getSurplusStock());
|
||||||
tbProskuCon.setStatus("1");
|
tbProskuCon.setStatus("1");
|
||||||
tbProskuCon.setCreateTime(new Timestamp(System.currentTimeMillis()));
|
tbProskuCon.setCreateTime(new Timestamp(System.currentTimeMillis()));
|
||||||
list.add(tbProskuCon);
|
list.add(tbProskuCon);
|
||||||
}else {
|
}else {
|
||||||
throw new Exception(product.getName().concat("对应的耗材信息已存在"));
|
throw new BadRequestException(product.getName().concat("对应的耗材信息已存在"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}else {
|
}else {
|
||||||
for (ProskuInfo.SkuInfo skuInfo : resources.getSkuInfos()) {
|
for (ProskuInfo.SkuInfo skuInfo : resource.getSkuInfos()) {
|
||||||
int count=tbProskuConRepository.countByConInfoIdAndProductSkuIdAndShopId(resources.getConsInfoId(), skuInfo.getSkuId(), skuInfo.getShopId(), resources.getProductId());
|
int count=tbProskuConRepository.countByConInfoIdAndProductSkuIdAndShopId(resource.getConsInfoId(), skuInfo.getSkuId(), skuInfo.getShopId(), resource.getProductId());
|
||||||
if(count<=0){
|
if(count<=0){
|
||||||
TbProskuCon tbProskuCon=new TbProskuCon();
|
TbProskuCon tbProskuCon=new TbProskuCon();
|
||||||
tbProskuCon.setShopId(Integer.valueOf(skuInfo.getShopId()));
|
tbProskuCon.setShopId(Integer.valueOf(skuInfo.getShopId()));
|
||||||
tbProskuCon.setConInfoId(skuInfo.getConInfoId());
|
tbProskuCon.setConInfoId(skuInfo.getConInfoId());
|
||||||
tbProskuCon.setProductId(resources.getProductId());
|
tbProskuCon.setProductId(resource.getProductId());
|
||||||
tbProskuCon.setProductSkuId(skuInfo.getSkuId());
|
tbProskuCon.setProductSkuId(skuInfo.getSkuId());
|
||||||
tbProskuCon.setSurplusStock(skuInfo.getSurplusStock());
|
tbProskuCon.setSurplusStock(skuInfo.getSurplusStock());
|
||||||
tbProskuCon.setStatus("1");
|
tbProskuCon.setStatus("1");
|
||||||
@@ -121,7 +122,7 @@ public class TbProskuConServiceImpl implements TbProskuConService {
|
|||||||
list.add(tbProskuCon);
|
list.add(tbProskuCon);
|
||||||
}else {
|
}else {
|
||||||
TbProductSku sku= tbProductSkuRepository.getById(skuInfo.getSkuId());
|
TbProductSku sku= tbProductSkuRepository.getById(skuInfo.getSkuId());
|
||||||
throw new Exception(product.getName().concat("商品对应的").concat(Objects.nonNull(sku.getSpecSnap())?sku.getSpecSnap():"").concat("规格已存在"));
|
throw new BadRequestException(product.getName().concat("商品对应的").concat(Objects.nonNull(sku.getSpecSnap())?sku.getSpecSnap():"").concat("规格已存在"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -129,6 +130,9 @@ public class TbProskuConServiceImpl implements TbProskuConService {
|
|||||||
if(Objects.nonNull(list)&&list.size()>0){
|
if(Objects.nonNull(list)&&list.size()>0){
|
||||||
tbProskuConRepository.saveAll(list);
|
tbProskuConRepository.saveAll(list);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
return new TbProskuConDto();
|
return new TbProskuConDto();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user