From c5675aa3b997583cae930b5cfb4b6487e4d38cfa Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期五, 09 五月 2025 14:14:53 +0800 Subject: [PATCH] 最新版本541200007 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java | 35 ++++++++++++++++++++++++++++++++--- 1 files changed, 32 insertions(+), 3 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java index 9d6cd82..7ca81c5 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java @@ -16,9 +16,12 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; +import org.checkerframework.checker.units.qual.C; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; +import org.springframework.validation.BindException; import java.util.ArrayList; import java.util.Date; @@ -38,7 +41,8 @@ private CategoryMapper categoryMapper; @Override - public Integer create(Category category) { + @Transactional(rollbackFor = {Exception.class, BindException.class}) + public Integer create(Category category){ checkUnique(category); LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); if(loginUserInfo ==null){ @@ -54,10 +58,19 @@ insert.setRemark(category.getRemark()); insert.setStatus(Constants.ZERO); insert.setSortnum(category.getSortnum()); + insert.setBizType(category.getBizType()); insert.setImgurl(category.getImgurl()); insert.setType(category.getType()); insert.setParentId(category.getParentId()); categoryMapper.insert(insert); + if(insert.getBizType()!=null){ + //娓呯┖鍏朵粬bizType,鍙繚鐣欏綋鍓嶆柊澧炶褰曞敮涓�鏈夋晥 + categoryMapper.update(null,new UpdateWrapper<Category>().lambda() + .set(Category::getBizType,null) + .eq(Category::getBizType,insert.getType()) + .ne(Category::getId,insert.getId()) + ); + } return insert.getId(); } @@ -85,9 +98,18 @@ } @Override + @Transactional(rollbackFor = {Exception.class, BindException.class}) public void updateById(Category category) { checkUnique(category); categoryMapper.updateById(category); + if(category.getBizType()!=null){ + //娓呯┖鍏朵粬璇izType灞炴��,鍙繚鐣欏綋鍓嶈褰曞敮涓�鏈夋晥 + categoryMapper.update(null,new UpdateWrapper<Category>().lambda() + .set(Category::getBizType,null) + .eq(Category::getBizType,category.getBizType()) + .ne(Category::getId,category.getId()) + ); + } } @Override @@ -159,6 +181,10 @@ } @Override public List<Category> findChileList(Category model) { + if(Objects.isNull(model)){ + model = new Category(); + } + model.setIsdeleted(Constants.ZERO); List<Category> list =findList(model); List<Category> data = new ArrayList<>(); if(list!=null){ @@ -171,6 +197,8 @@ category.setGroupName( category.getParentName()+"/"+category.getName()); data.add(category); } + }else{ + data.add(category); } } } @@ -193,10 +221,11 @@ wrapper.lambda() .eq(Category::getIsdeleted,Constants.ZERO) .eq(Category::getType,category.getType()) - .eq(Category::getName,category.getName()); + .eq(Category::getName,category.getName()) + .ne(category.getId()!=null, Category::getId,category.getId()) + ; List<Category> categories = categoryMapper.selectList(wrapper); - if (org.apache.commons.collections.CollectionUtils.isNotEmpty(categories)){ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"鍒嗙被淇℃伅宸插瓨鍦�"); } -- Gitblit v1.9.3