From fdf6dc807231f28bb76d959b8d6b49d46ac4a401 Mon Sep 17 00:00:00 2001
From: dzc <2388224167@qq.com>
Date: Mon, 13 Jan 2025 14:17:21 +0800
Subject: [PATCH] 11
---
.../pjcloud-app-server-biz/pom.xml | 2 +-
.../api/feign/RemoteCanteenSpuService.java | 2 +-
.../feign/RemoteOnlineCanteenSpuService.java | 2 +-
.../impl/CanteenOnlineSpuServiceImpl.java | 4 +-
.../service/impl/CanteenSpuServiceImpl.java | 7 +-
.../hard/service/HardOrderService.java | 2 +-
.../impl/order/HardwareOrderServiceImpl.java | 64 +++++++++++++++----
.../feign/RemoteSupermarketSpuService.java | 2 +-
.../impl/SupermarketSpuServiceImpl.java | 21 +++---
.../controller/WalletCodeUseController.java | 3 +-
.../wallet/service/WalletCodeUseService.java | 2 +-
.../impl/WalletCodeUseServiceImpl.java | 6 +-
12 files changed, 79 insertions(+), 38 deletions(-)
diff --git a/pjcloud-app-server/pjcloud-app-server-biz/pom.xml b/pjcloud-app-server/pjcloud-app-server-biz/pom.xml
index 405fe2206..3a441ffb0 100644
--- a/pjcloud-app-server/pjcloud-app-server-biz/pom.xml
+++ b/pjcloud-app-server/pjcloud-app-server-biz/pom.xml
@@ -104,7 +104,7 @@
com.bsd
pjcloud-common-swagger
-
+
com.bsd
pjcloud-common-seata
diff --git a/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/api/feign/RemoteCanteenSpuService.java b/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/api/feign/RemoteCanteenSpuService.java
index f408a0554..3ecb3bc53 100644
--- a/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/api/feign/RemoteCanteenSpuService.java
+++ b/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/api/feign/RemoteCanteenSpuService.java
@@ -56,7 +56,7 @@ public interface RemoteCanteenSpuService {
* @return
*/
@PostMapping("/canteenSpu/ad/updateSkuStock")
- R getAllSimple(@RequestBody CanteenSpuUpdateStockReqDTO updateStockReqDTO);
+ R updateSkuStock(@RequestBody CanteenSpuUpdateStockReqDTO updateStockReqDTO);
/**
diff --git a/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/api/feign/RemoteOnlineCanteenSpuService.java b/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/api/feign/RemoteOnlineCanteenSpuService.java
index 229d00a9c..9875e7fff 100644
--- a/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/api/feign/RemoteOnlineCanteenSpuService.java
+++ b/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/api/feign/RemoteOnlineCanteenSpuService.java
@@ -66,7 +66,7 @@ public interface RemoteOnlineCanteenSpuService {
* @return
*/
@PostMapping("/canteenOnlineSpu/app/updateSkuStock")
- R getAllSimple(@RequestBody CanteenSpuUpdateStockReqDTO updateStockReqDTO);
+ R updateSkuStock(@RequestBody CanteenSpuUpdateStockReqDTO updateStockReqDTO);
/**
diff --git a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenOnlineSpuServiceImpl.java b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenOnlineSpuServiceImpl.java
index c8a04c8e5..890b0a8b2 100644
--- a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenOnlineSpuServiceImpl.java
+++ b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenOnlineSpuServiceImpl.java
@@ -25,7 +25,7 @@ public class CanteenOnlineSpuServiceImpl extends ServiceImpl> getCanteenOnlineSpuList(String categoryId, String merchantId) {
LambdaQueryWrapper canteenOnlineSpuEntityLambdaQueryWrapper = new LambdaQueryWrapper<>();
- canteenOnlineSpuEntityLambdaQueryWrapper.eq(StringUtils.isNotEmpty(categoryId),CanteenOnlineSpuEntity::getCategoryId, categoryId);
+ canteenOnlineSpuEntityLambdaQueryWrapper.eq(StringUtils.isNotEmpty(categoryId), CanteenOnlineSpuEntity::getCategoryId, categoryId);
canteenOnlineSpuEntityLambdaQueryWrapper.eq(CanteenOnlineSpuEntity::getMerchantId, merchantId);
List canteenSpuEntities = baseMapper.selectList(canteenOnlineSpuEntityLambdaQueryWrapper);
List bean = BeanUtils.toBean(canteenSpuEntities, APPOnlineSpuVO.class);
@@ -38,7 +38,7 @@ public class CanteenOnlineSpuServiceImpl extends ServiceImpl {
int i = baseMapper.updateStock(item.getId(), item.getIncrCount());
- if (item.getIncrCount() < 0) {
+ if (item.getIncrCount() <= 0) {
if (i == 0) {
R.failed("商品库存不足");
}
diff --git a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenSpuServiceImpl.java b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenSpuServiceImpl.java
index 014f9433e..45a8f1098 100644
--- a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenSpuServiceImpl.java
+++ b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenSpuServiceImpl.java
@@ -40,20 +40,19 @@ public class CanteenSpuServiceImpl extends ServiceImpl {
int i = baseMapper.updateStock(item.getId(), item.getIncrCount());
- if (item.getIncrCount() < 0) {
+ if (item.getIncrCount() <= 0) {
if (i == 0) {
- R.failed("商品库存不足");
+ R.failed("商品库存不足");
}
}
});
-
return R.ok();
}
@Override
public R getCanteenSpuList(String categoryId) {
List canteenSpuEntities = baseMapper.selectListByScope(new LambdaQueryWrapper()
- .eq(StringUtils.isNotEmpty(categoryId), CanteenSpuEntity::getCategoryId, categoryId),DataScope.of());
+ .eq(StringUtils.isNotEmpty(categoryId), CanteenSpuEntity::getCategoryId, categoryId), DataScope.of());
List bean = BeanUtils.toBean(canteenSpuEntities, ADCanteenSpuListVO.class);
return R.ok(bean);
diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java
index e41cf81cb..32fe0995b 100644
--- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java
+++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java
@@ -53,7 +53,7 @@ public interface HardOrderService extends IService {
void generateCode(HardOrderEntity order);
/**
- * 扣件库存
+ * 扣减库存
*/
void fastenerInventory(HardOrderEntity order);
diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardwareOrderServiceImpl.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardwareOrderServiceImpl.java
index 5ade10c34..c29b57d41 100644
--- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardwareOrderServiceImpl.java
+++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardwareOrderServiceImpl.java
@@ -10,6 +10,9 @@ import com.bsd.pjcloud.admin.api.entity.SysUser;
import com.bsd.pjcloud.admin.api.feign.RemoteDeptService;
import com.bsd.pjcloud.admin.api.feign.RemoteUserService;
import com.bsd.pjcloud.admin.api.utils.DataUtil;
+import com.bsd.pjcloud.canteen.api.feign.RemoteCanteenSpuService;
+import com.bsd.pjcloud.canteen.api.feign.RemoteOnlineCanteenSpuService;
+import com.bsd.pjcloud.canteen.dto.CanteenSpuUpdateStockReqDTO;
import com.bsd.pjcloud.common.core.constant.enums.YesNoEnum;
import com.bsd.pjcloud.common.core.util.BeanUtils;
import com.bsd.pjcloud.common.core.util.CollectionUtils;
@@ -36,6 +39,9 @@ import com.bsd.pjcloud.hard.mapper.order.HardOrderMapper;
import com.bsd.pjcloud.hard.service.HardCarService;
import com.bsd.pjcloud.hard.service.HardManagerService;
import com.bsd.pjcloud.hard.service.HardOrderService;
+import com.bsd.pjcloud.supermarket.api.feign.RemoteSupermarketSpuService;
+import com.bsd.pjcloud.supermarket.api.feign.RemoteSupermarketUnitSkuService;
+import com.bsd.pjcloud.supermarket.dto.SupermarketSpuUpdateStockReqDTO;
import com.bsd.pjcloud.wallet.api.constant.WalletBizEnum;
import com.bsd.pjcloud.wallet.api.constant.WalletCodeBizEnum;
import com.bsd.pjcloud.wallet.api.constant.WalletTypeEnum;
@@ -89,6 +95,9 @@ public class HardwareOrderServiceImpl extends ServiceImpl reduceRes = walletTransactionService.reduceWalletBalance(reduceBuild);
+ if (reduceRes.getCode() != 0 || ObjectUtil.isEmpty(reduceRes.getData())) {
+ throw new RuntimeException("钱包扣款错误");
+ }
+ WalletTransactionEntity walletTransaction = reduceRes.getData();
if (ObjectUtil.isNotEmpty(walletTransaction)) {
// 订单表订单状态
Integer payPrice = isPay ? order.getTotalPrice() + order.getExtraPrice() : 0;
@@ -307,10 +322,6 @@ public class HardwareOrderServiceImpl extends ServiceImpl res = remoteCodeUseService.generateCode(order.getId(), order.getUserId(), codeType, 1);
+ if (res.getCode() != 0 || !res.getData()) {
+ throw new RuntimeException("生成预约二维码错误");
+ }
}
@Override
- @GlobalTransactional
@Transactional(rollbackFor = Exception.class)
public void fastenerInventory(HardOrderEntity order) {
HardTypeEnum hardTypeEnum = HardTypeEnum.valueOfByType(order.getSysType());
@@ -395,12 +407,40 @@ public class HardwareOrderServiceImpl extends ServiceImpl carList = hardCarService.getByParentCarId(order.getParentCarId());
+ if (ObjectUtil.isEmpty(carList)) throw new RuntimeException("扣减库存错误,购物车不存在");
+ CanteenSpuUpdateStockReqDTO dto = new CanteenSpuUpdateStockReqDTO();
+ List list = carList.stream().map(v -> {
+ CanteenSpuUpdateStockReqDTO.Item item = new CanteenSpuUpdateStockReqDTO.Item();
+ item.setId(v.getProductId());
+ item.setIncrCount(v.getProductCount());
+ return item;
+ }).toList();
+ dto.setItems(list);
+ R updateSkuStockRes = onlineCanteenSpuService.updateSkuStock(dto);
+ if (updateSkuStockRes.getCode() != 0) {
+ throw new RuntimeException("库存不足");
+ }
return;
}
// 超市扣家库存
if (ObjectUtil.equals(hardTypeEnum, HardTypeEnum.SUPERMARKET) && ObjectUtil.equals(orderTypeEnum, HardOrderTypeEnum.RESERVE)) {
-
+ // 查询购物车
+ List carList = hardCarService.getByParentCarId(order.getParentCarId());
+ if (ObjectUtil.isEmpty(carList)) throw new RuntimeException("扣减库存错误,购物车不存在");
+ SupermarketSpuUpdateStockReqDTO dto = new SupermarketSpuUpdateStockReqDTO();
+ List list = carList.stream().map(v -> {
+ SupermarketSpuUpdateStockReqDTO.Item item = new SupermarketSpuUpdateStockReqDTO.Item();
+ item.setId(v.getProductId());
+ item.setIncrCount(v.getProductCount());
+ return item;
+ }).toList();
+ dto.setItems(list);
+ R updateSkuStockRes = supermarketSpuService.updateSpuStock(dto);
+ if (updateSkuStockRes.getCode() != 0) {
+ throw new RuntimeException("扣件库存错误");
+ }
return;
}
}
diff --git a/pjcloud-supermarket/pjcloud-supermarket-api/src/main/java/com/bsd/pjcloud/supermarket/api/feign/RemoteSupermarketSpuService.java b/pjcloud-supermarket/pjcloud-supermarket-api/src/main/java/com/bsd/pjcloud/supermarket/api/feign/RemoteSupermarketSpuService.java
index 3ec9e6603..bffc597d0 100644
--- a/pjcloud-supermarket/pjcloud-supermarket-api/src/main/java/com/bsd/pjcloud/supermarket/api/feign/RemoteSupermarketSpuService.java
+++ b/pjcloud-supermarket/pjcloud-supermarket-api/src/main/java/com/bsd/pjcloud/supermarket/api/feign/RemoteSupermarketSpuService.java
@@ -63,7 +63,7 @@ public interface RemoteSupermarketSpuService {
* @return
*/
@PostMapping("/supermarketSpu/ad/updateSpuStock")
- R getSupermarketSpu(@RequestBody SupermarketSpuUpdateStockReqDTO updateStockReqDTO);
+ R updateSpuStock(@RequestBody SupermarketSpuUpdateStockReqDTO updateStockReqDTO);
diff --git a/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/service/impl/SupermarketSpuServiceImpl.java b/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/service/impl/SupermarketSpuServiceImpl.java
index 730fa6b3a..9b4da6a31 100644
--- a/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/service/impl/SupermarketSpuServiceImpl.java
+++ b/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/service/impl/SupermarketSpuServiceImpl.java
@@ -41,6 +41,7 @@ public class SupermarketSpuServiceImpl extends ServiceImpl supermarketUnitEntity.setSpuId(supermarketSpu.getId()));
supermarketUnitService.saveBatch(supermarketUnitEntityList);
- }else {
+ } else {
return R.failed("包装类型不能为空");
}
//辅助条码
List supermarketAuxiliaryCodeEntityList = supermarketSpu.getSupermarketAuxiliaryCodeEntityList();
if (CollectionUtils.isNotEmpty(supermarketAuxiliaryCodeEntityList)) {
supermarketAuxiliaryCodeEntityList.forEach(supermarketAuxiliaryCodeEntity -> supermarketAuxiliaryCodeEntity.setSpuId(supermarketSpu.getId()));
- supermarketAuxiliaryCodeService.saveBatch(supermarketAuxiliaryCodeEntityList);
- }else {
+ supermarketAuxiliaryCodeService.saveBatch(supermarketAuxiliaryCodeEntityList);
+ } else {
return R.failed("辅助条码不能为空");
}
@@ -83,7 +84,7 @@ public class SupermarketSpuServiceImpl extends ServiceImpl supermarketUnitEntity.getId() != null).collect(Collectors.toList());
supermarketUnitService.updateBatchById(updateCollect);
supermarketUnitService.saveBatch(insertCollect);
- }else {
+ } else {
return R.failed("包装类型不能为空");
}
//辅助条码
@@ -94,7 +95,7 @@ public class SupermarketSpuServiceImpl extends ServiceImpl supermarketAuxiliaryCodeEntity.setSpuId(supermarketSpu.getId()));
supermarketAuxiliaryCodeService.saveBatch(insertCollect);
supermarketAuxiliaryCodeService.updateBatchById(updateCollect);
- }else {
+ } else {
return R.failed("辅助条码不能为空");
}
return R.ok();
@@ -106,11 +107,11 @@ public class SupermarketSpuServiceImpl extends ServiceImpl{
+ list.forEach(id -> {
LambdaQueryWrapper supermarketAuxiliaryCodeEntityLambdaQueryWrapper = new LambdaQueryWrapper<>();
- supermarketAuxiliaryCodeEntityLambdaQueryWrapper.eq(SupermarketAuxiliaryCodeEntity::getSpuId,id);
+ supermarketAuxiliaryCodeEntityLambdaQueryWrapper.eq(SupermarketAuxiliaryCodeEntity::getSpuId, id);
LambdaQueryWrapper supermarketUnitEntityLambdaQueryWrapper = new LambdaQueryWrapper<>();
- supermarketUnitEntityLambdaQueryWrapper.eq(SupermarketUnitEntity::getSpuId,id);
+ supermarketUnitEntityLambdaQueryWrapper.eq(SupermarketUnitEntity::getSpuId, id);
supermarketUnitService.remove(supermarketUnitEntityLambdaQueryWrapper);
supermarketAuxiliaryCodeService.remove(supermarketAuxiliaryCodeEntityLambdaQueryWrapper);
});
@@ -124,7 +125,7 @@ public class SupermarketSpuServiceImpl extends ServiceImpl {
int i = baseMapper.updateStock(item.getId(), item.getIncrCount());
- if (item.getIncrCount() < 0) {
+ if (item.getIncrCount() <= 0) {
if (i == 0) {
R.failed("商品库存不足");
}
@@ -142,7 +143,7 @@ public class SupermarketSpuServiceImpl extends ServiceImpl list=baseMapper.selectListAllScope(supermarketSpuQueryDTO, DataScope.of());
+ List list = baseMapper.selectListAllScope(supermarketSpuQueryDTO, DataScope.of());
List bean = BeanUtils.toBean(list, SupermarketSpuVo.class);
return bean;
diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/WalletCodeUseController.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/WalletCodeUseController.java
index 51a8f4f6f..332b1a7d1 100644
--- a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/WalletCodeUseController.java
+++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/WalletCodeUseController.java
@@ -48,8 +48,7 @@ public class WalletCodeUseController {
@Inner
@GetMapping("/generate-code")
public R generateCode(@RequestParam Long id, @RequestParam Long userId, @RequestParam WalletCodeBizEnum walletCodeBiz, @RequestParam Integer count) {
- walletCodeUseService.generate(id, userId, walletCodeBiz, count);
- return R.ok(true);
+ return R.ok(walletCodeUseService.generate(id, userId, walletCodeBiz, count));
}
@Inner
diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/WalletCodeUseService.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/WalletCodeUseService.java
index e9bc1e8de..81821a017 100644
--- a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/WalletCodeUseService.java
+++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/WalletCodeUseService.java
@@ -10,7 +10,7 @@ import jakarta.validation.constraints.NotNull;
public interface WalletCodeUseService extends IService {
- void generate(@NotNull Long id, @NotNull Long userId, @NotNull WalletCodeBizEnum walletCodeBizEnum, @NotNull Integer count);
+ Boolean generate(@NotNull Long id, @NotNull Long userId, @NotNull WalletCodeBizEnum walletCodeBizEnum, @NotNull Integer count);
Page pageJoin(Page page, WalletCodeUseDto dto);
diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/WalletCodeUseServiceImpl.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/WalletCodeUseServiceImpl.java
index 3436fc034..0aa91df44 100644
--- a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/WalletCodeUseServiceImpl.java
+++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/service/impl/WalletCodeUseServiceImpl.java
@@ -57,8 +57,8 @@ public class WalletCodeUseServiceImpl extends ServiceImpl