商品共享库存字段

This commit is contained in:
2024-10-12 15:11:00 +08:00
parent 70abb276bc
commit 1945d3f906
10 changed files with 94 additions and 548 deletions

View File

@@ -44,19 +44,19 @@ public class TbProskuConController {
return new ResponseEntity<>(tbProskuConService.queryAll(criteria,pageable),HttpStatus.OK);
}
@PostMapping
@Log("新增商品规格耗材信息")
@ApiOperation("新增商品规格耗材信息")
public ResponseEntity<Object> createTbProskuCon(@Validated @RequestBody List<ProskuInfo> resources) throws Exception {
try {
return new ResponseEntity<>(tbProskuConService.create(resources),HttpStatus.CREATED);
} catch (BadRequestException be) {
throw new Exception(be.getMessage());
}catch (Exception e){
e.printStackTrace();
throw new Exception("相同商品耗材信息不允许添加");
}
}
// @PostMapping
// @Log("新增商品规格耗材信息")
// @ApiOperation("新增商品规格耗材信息")
// public ResponseEntity<Object> createTbProskuCon(@Validated @RequestBody List<ProskuInfo> resources) throws Exception {
// try {
// return new ResponseEntity<>(tbProskuConService.create(resources),HttpStatus.CREATED);
// } catch (BadRequestException be) {
// throw new Exception(be.getMessage());
// }catch (Exception e){
// e.printStackTrace();
// throw new Exception("相同商品耗材信息不允许添加");
// }
// }
@PostMapping("V2")
@Log("新增商品耗材绑定关系")

View File

@@ -78,11 +78,10 @@ public class TbProskuConServiceImpl implements TbProskuConService {
throw new BadRequestException("对应的商品信息不存在");
}
List<TbProskuCon> list=new ArrayList<>();
if(product.getIsDistribute().intValue()==1){
// if(product.getIsDistribute().intValue()==1){
TbConsInfo tbConsInfo= tbConsInfoRepository.findById(resource.getConsInfoId()).orElseGet(TbConsInfo::new);
log.info("product.getIsDistribute().intValue():{}", JSONUtil.toJSONString(tbConsInfo));
if(ObjectUtil.isNull(tbConsInfo)||ObjectUtil.isNull(tbConsInfo.getId())){
throw new BadRequestException("对应的耗材信息不存在");
}
@@ -109,41 +108,41 @@ public class TbProskuConServiceImpl implements TbProskuConService {
}
}
}else {
for (ProskuInfo.SkuInfo skuInfo : resource.getSkuInfos()) {
TbConsInfo tbConsInfo= tbConsInfoRepository.findById(skuInfo.getConInfoId()).orElseGet(TbConsInfo::new);
log.info("skuInfo:{}", JSONUtil.toJSONString(tbConsInfo));
if(ObjectUtil.isNull(tbConsInfo)||ObjectUtil.isNull(tbConsInfo.getId())){
throw new BadRequestException("对应的耗材信息不存在");
}
TbProductSku tbProductSku= tbProductSkuRepository.findById(skuInfo.getSkuId()).orElseGet(TbProductSku::new);
if(ObjectUtil.isNull(tbProductSku)||ObjectUtil.isNull(tbProductSku.getId())){
throw new BadRequestException("规格信息不存在");
}
int count=tbProskuConRepository.countByConInfoIdAndProductSkuIdAndShopId(resource.getConsInfoId(), skuInfo.getSkuId(), skuInfo.getShopId(), resource.getProductId());
if(count<=0){
TbProskuCon tbProskuCon=new TbProskuCon();
tbProskuCon.setShopId(Integer.valueOf(skuInfo.getShopId()));
tbProskuCon.setConInfoId(tbConsInfo.getId());
tbProskuCon.setProductId(resource.getProductId());
tbProskuCon.setProductSkuId(skuInfo.getSkuId());
tbProskuCon.setSurplusStock(skuInfo.getSurplusStock());
tbProskuCon.setStatus("1");
tbProskuCon.setCreateTime(new Timestamp(System.currentTimeMillis()));
list.add(tbProskuCon);
}else {
TbProductSku sku= tbProductSkuRepository.getById(skuInfo.getSkuId());
throw new BadRequestException(product.getName().concat("商品对应的").concat(Objects.nonNull(sku.getSpecSnap())?sku.getSpecSnap():"").concat("规格已存在"));
}
}
}
// }else {
// for (ProskuInfo.SkuInfo skuInfo : resource.getSkuInfos()) {
//
//
// TbConsInfo tbConsInfo= tbConsInfoRepository.findById(skuInfo.getConInfoId()).orElseGet(TbConsInfo::new);
//
// log.info("skuInfo:{}", JSONUtil.toJSONString(tbConsInfo));
//
// if(ObjectUtil.isNull(tbConsInfo)||ObjectUtil.isNull(tbConsInfo.getId())){
// throw new BadRequestException("对应的耗材信息不存在");
// }
//
// TbProductSku tbProductSku= tbProductSkuRepository.findById(skuInfo.getSkuId()).orElseGet(TbProductSku::new);
// if(ObjectUtil.isNull(tbProductSku)||ObjectUtil.isNull(tbProductSku.getId())){
// throw new BadRequestException("规格信息不存在");
// }
//
// int count=tbProskuConRepository.countByConInfoIdAndProductSkuIdAndShopId(resource.getConsInfoId(), skuInfo.getSkuId(), skuInfo.getShopId(), resource.getProductId());
// if(count<=0){
// TbProskuCon tbProskuCon=new TbProskuCon();
// tbProskuCon.setShopId(Integer.valueOf(skuInfo.getShopId()));
// tbProskuCon.setConInfoId(tbConsInfo.getId());
// tbProskuCon.setProductId(resource.getProductId());
// tbProskuCon.setProductSkuId(skuInfo.getSkuId());
// tbProskuCon.setSurplusStock(skuInfo.getSurplusStock());
// tbProskuCon.setStatus("1");
// tbProskuCon.setCreateTime(new Timestamp(System.currentTimeMillis()));
// list.add(tbProskuCon);
// }else {
// TbProductSku sku= tbProductSkuRepository.getById(skuInfo.getSkuId());
// throw new BadRequestException(product.getName().concat("商品对应的").concat(Objects.nonNull(sku.getSpecSnap())?sku.getSpecSnap():"").concat("规格已存在"));
// }
// }
//
// }
if(Objects.nonNull(list)&&list.size()>0){
tbProskuConRepository.saveAll(list);
}
@@ -243,48 +242,6 @@ public class TbProskuConServiceImpl implements TbProskuConService {
ValidationUtil.isNull( tbProskuCon.getId(),"TbProskuCon","id",resources.getId());
tbProskuCon.copy(resources);
tbProskuConRepository.save(tbProskuCon);
// TbProduct product= tbProductRepository.getById(resources.getProductId());
// if(Objects.isNull(product)){
// throw new Exception("对应的商品信息不存在");
// }
//
// TbConsInfo tbConsInfo= tbConsInfoRepository.getById(resources.getConsInfoId());
// if(Objects.isNull(tbConsInfo)){
// throw new Exception("对应的耗材信息不存在");
// }
//
// List<TbProskuCon> list=new ArrayList<>();
// if("1".equals(product.getIsDistribute().toString())){
// //查询商品对应的所有规格
// List<TbProductSku> skuList= tbProductSkuRepository.searchSku(product.getId().toString());
// if(Objects.nonNull(skuList)&&skuList.size()>0){
// for (TbProductSku tbProductSku : skuList) {
// TbProskuCon tbProskuCon=tbProskuConRepository.selectByConInfoIdAndProductSkuIdAndShopId(resources.getConsInfoId(), tbProductSku.getId(), Integer.valueOf(tbProductSku.getShopId()), Integer.valueOf(tbProductSku.getProductId()));
// if(Objects.nonNull(tbProskuCon)){
// tbProskuCon.setSurplusStock(resources.getSurplusStock());
// tbProskuCon.setStatus(resources.getStatus());
// tbProskuCon.setCreateTime(new Timestamp(System.currentTimeMillis()));
// list.add(tbProskuCon);
// }
// }
// }
//
// }else {
//
// for (ProskuInfo.SkuInfo skuInfo : resources.getSkuInfos()) {
// TbProskuCon tbProskuCon=tbProskuConRepository.selectByConInfoIdAndProductSkuIdAndShopId(resources.getConsInfoId(), skuInfo.getSkuId(), skuInfo.getShopId(), resources.getProductId());
// if(Objects.nonNull(tbProskuCon)){
// tbProskuCon.setSurplusStock(skuInfo.getSurplusStock());
// tbProskuCon.setStatus(skuInfo.getStatus());
// tbProskuCon.setCreateTime(new Timestamp(System.currentTimeMillis()));
// list.add(tbProskuCon);
// }
// }
//
// }
// tbProskuConRepository.saveAll(list);
}
@Override