diff --git a/src/main/java/top/suyiiyii/sims/controller/CategoryController.java b/src/main/java/top/suyiiyii/sims/controller/CategoryController.java index 045a35a..dfcfa6f 100644 --- a/src/main/java/top/suyiiyii/sims/controller/CategoryController.java +++ b/src/main/java/top/suyiiyii/sims/controller/CategoryController.java @@ -52,8 +52,9 @@ public class CategoryController { @DeleteMapping("/{id}") @Operation(summary = "删除类别",description = "根据id删除类别") @AuthAccess(allowRoles = {"admin"}) - public Result deleteCategory(@PathVariable Integer id) { - categoryService.deleteCategory(id); + public Result deleteCategory(@PathVariable Integer id, + @RequestParam Integer newId) { + categoryService.deleteCategory(id, newId); return Result.success("删除成功"); } diff --git a/src/main/java/top/suyiiyii/sims/mapper/MpRecordMapper.java b/src/main/java/top/suyiiyii/sims/mapper/MpRecordMapper.java new file mode 100644 index 0000000..4d902fb --- /dev/null +++ b/src/main/java/top/suyiiyii/sims/mapper/MpRecordMapper.java @@ -0,0 +1,7 @@ +package top.suyiiyii.sims.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import top.suyiiyii.sims.entity.Record; + +public interface MpRecordMapper extends BaseMapper { +} diff --git a/src/main/java/top/suyiiyii/sims/service/CategoryService.java b/src/main/java/top/suyiiyii/sims/service/CategoryService.java index 6a060d1..16c6615 100644 --- a/src/main/java/top/suyiiyii/sims/service/CategoryService.java +++ b/src/main/java/top/suyiiyii/sims/service/CategoryService.java @@ -1,13 +1,16 @@ package top.suyiiyii.sims.service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import top.suyiiyii.sims.entity.Record; import top.suyiiyii.sims.entity.RewardPunishmentCategory; import top.suyiiyii.sims.exception.ServiceException; import top.suyiiyii.sims.mapper.CategoryMapper; import top.suyiiyii.sims.mapper.MpCategoryMapper; +import top.suyiiyii.sims.mapper.MpRecordMapper; import java.util.List; @@ -27,6 +30,9 @@ public class CategoryService { @Autowired MpCategoryMapper mpCategoryMapper; + @Autowired + MpRecordMapper mpRecordMapper; + public String getCategoryName(Integer id) { return categoryMapper.getCategoryName(id); @@ -67,10 +73,11 @@ public class CategoryService { mpCategoryMapper.updateById(category); } - public void deleteCategory(Integer id) { + public void deleteCategory(Integer id, Integer newId) { if (!mpCategoryMapper.exists(new LambdaQueryWrapper().eq(RewardPunishmentCategory::getId, id))) { throw new ServiceException("该类别不存在"); } mpCategoryMapper.deleteById(id); + mpRecordMapper.update(new LambdaUpdateWrapper().eq(Record::getCategoryId, id).set(Record::getCategoryId, newId)); } }