Эх сурвалжийг харах

banner图需求代码提交

liudongzhi 2 сар өмнө
parent
commit
9e58e49814

+ 1 - 1
alien-store/src/main/java/shop/alien/store/controller/StoreBannerController.java

@@ -39,7 +39,7 @@ public class StoreBannerController {
 
     @ApiOperation("删除Banner")
     @ApiOperationSupport(order = 2)
-    @PostMapping("/delete")
+    @GetMapping("/delete")
     public R<String> delete(@RequestParam("id") Integer id) {
         log.info("StoreBannerController.delete?id={}", id);
         return storeBannerService.removeById(id) ? R.success("删除成功") : R.fail("删除失败");

+ 28 - 0
alien-store/src/main/java/shop/alien/store/service/impl/StoreBannerServiceImpl.java

@@ -24,9 +24,37 @@ import shop.alien.store.service.StoreBannerService;
 @Service
 public class StoreBannerServiceImpl extends ServiceImpl<StoreBannerMapper, StoreBanner> implements StoreBannerService {
 
+//    @Transactional
+//    @Override
+//    public R<String> saveBanner(StoreBannerDto storeBannerDto) {
+//        StoreBanner storeBanner = new StoreBanner();
+//        BeanUtils.copyProperties(storeBannerDto, storeBanner);
+//        boolean update = storeBanner.getId() != null;
+//        boolean result = this.saveOrUpdate(storeBanner);
+//        if (result) {
+//            return R.success(update ? "修改成功" : "新增成功");
+//        }
+//        return R.fail(update ? "修改失败" : "新增失败");
+//    }
+
+
     @Transactional
     @Override
     public R<String> saveBanner(StoreBannerDto storeBannerDto) {
+        // 先检查 moduleName 是否已存在
+        LambdaQueryWrapper<StoreBanner> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(StoreBanner::getModuleName, storeBannerDto.getModuleName());
+
+        // 如果是更新操作,需要排除当前记录本身
+        if (storeBannerDto.getId() != null) {
+            queryWrapper.ne(StoreBanner::getId, storeBannerDto.getId());
+        }
+
+        long count = this.count(queryWrapper);
+        if (count > 0) {
+            return R.fail("该模块名称已存在,不能重复添加或修改");
+        }
+
         StoreBanner storeBanner = new StoreBanner();
         BeanUtils.copyProperties(storeBannerDto, storeBanner);
         boolean update = storeBanner.getId() != null;