소스 검색

Merge branch 'master' of http://49.4.53.36:3000/hotel/hotel-saas-backend

gqx 2 년 전
부모
커밋
1bfd1a0633

+ 1 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/controller/CesGoodsController.java

@@ -31,7 +31,7 @@ import java.util.stream.Stream;
  * @author fendo
  * @since 2023-03-13
  */
-@Controller
+@RestController
 @RequestMapping("/rooms/cesGoods")
 @Api(tags="CesGoodsController")
 @Slf4j

+ 1 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/controller/CesMealCouponController.java

@@ -28,7 +28,7 @@ import javax.annotation.Resource;
  */
 @RestController
 @RequestMapping("/rooms/cesMealCoupon")
-@Api(tags = "ces_all_day_price_rule")
+@Api(tags = "cesMealCoupon")
 @Slf4j
 public class CesMealCouponController {
 

+ 1 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/controller/CesRoomsController.java

@@ -144,7 +144,7 @@ public class CesRoomsController {
 
     @AutoLog(value = "批量添加房间")
     @ApiOperation(value="批量添加房间", notes="批量添加房间")
-    @DeleteMapping(value = "/saveBatchRoom")
+    @PostMapping(value = "/saveBatchRoom")
     public Result saveBatchRoom(@RequestBody BatchRoomsDto dto){
         if(StringUtils.isBlank(dto.getHotelId())){
             return Result.error(ResultCode.PARAM_MISS,"酒店ID必传!");

+ 12 - 8
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/service/CesGoodStockRecordsServiceImpl.java

@@ -42,22 +42,22 @@ public class CesGoodStockRecordsServiceImpl extends ServiceImpl<CesGoodStockReco
 
     @Transactional(rollbackOn = Exception.class)
     public Result create(CesGoodStockRecordsDto dto){
-        //查询商品是否存在
-        CesGoods goods = goodsService.fetchByIdAndHotelId(dto.getGoodId(),dto.getHotelId());
-        if(ObjectUtils.isEmpty(goods)) return Result.error("商品数据未找到!");
-
         /**
-         * 这里需要锁资源  分布式事务锁 采用redis 实现  考虑到数据操作的原子性 (设置redis 锁一定要同步设置过期时间 3 秒 )
+         * 这里需要锁资源  分布式事务锁 采用redis 实现  考虑到数据操作的原子性 (设置redis 锁 统一要同步设置过期时间 60 秒 )
          */
         String key = String.format("stock::record::create:%s:%s", dto.getGoodId(),dto.getHotelId());
         Lock lock = redisLockRegistry.obtain(key);  //获取锁资源
+
         logger.info("lock begin");
         logger.info("创建 redis 资源锁 key:{}", key);
         try{
             //开启锁
             lock.lock();
             logger.info("开启 redis 资源锁");
-
+            
+            //查询商品是否存在
+            CesGoods goods = goodsService.fetchByIdAndHotelId(dto.getGoodId(),dto.getHotelId());
+            if(ObjectUtils.isEmpty(goods)) return Result.error("商品数据未找到!");
             //业务逻辑处理 减库存 加库存 这样写更清晰
             int num = dto.getGoodNum().intValue();
             int count = goods.getInventory().intValue();
@@ -72,7 +72,8 @@ public class CesGoodStockRecordsServiceImpl extends ServiceImpl<CesGoodStockReco
                     goods.setInventory(count - num);
                     break;
             }
-            //先保存 记录数据 再去扣除库存 加锁
+
+            //先保存 记录数据 再去扣除库存
             CesGoodStockRecords records = new CesGoodStockRecords();
             BeanUtil.copyProperties(dto,records);
             records.setCreateAt(LocalDateTime.now());
@@ -84,7 +85,7 @@ public class CesGoodStockRecordsServiceImpl extends ServiceImpl<CesGoodStockReco
             if(num > 0){ //必须是大于0 再去修改
                 goods.setUpdateAt(LocalDateTime.now());
                 boolean flag = goodsService.updateById(goods);
-                if(!flag) throw  new JeecgBootException("修改商品失败!");
+                if(!flag) throw new JeecgBootException("修改商品失败!");
             }
         }catch (Exception e){
             return Result.error(e.getMessage());
@@ -97,4 +98,7 @@ public class CesGoodStockRecordsServiceImpl extends ServiceImpl<CesGoodStockReco
         return Result.ok("创建成功!");
     }
 
+
+
+
 }

+ 0 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/rooms/service/CesGoodsServiceImpl.java

@@ -62,7 +62,6 @@ public class CesGoodsServiceImpl extends ServiceImpl<CesGoodsMapper, CesGoods> i
     private CesGoodsSpecsServiceImpl specsService;
 
 
-
     /**
      * 查询商品库存
      * @param dto