From 766089ad50ae807ab88ba83b2dbc4a53bda8e423 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期二, 05 十二月 2023 18:27:59 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- server/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java | 16 ++++++++++++---- 1 files changed, 12 insertions(+), 4 deletions(-) diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java index 3161c88..5958cf0 100644 --- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java +++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java @@ -24,6 +24,7 @@ import org.springframework.stereotype.Service; import java.util.Date; import java.util.List; +import java.util.Objects; /** * 浼佷笟淇℃伅琛⊿ervice瀹炵幇 @@ -50,7 +51,6 @@ LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); checkUnique(company); - Company insert = new Company(); insert.setCreator(loginUserInfo.getId()); insert.setCreateDate(new Date()); @@ -233,6 +233,7 @@ .leftJoin(SystemUser.class,SystemUser::getId,Company::getCreator); queryWrapper.selectAll(Company.class) .selectAs(Category::getName,Company::getCategoryName) + .select("count(t1.id) as countNum") .selectAs(SystemUser::getRealname,Company::getCreatorName); IPage<Company> companyIPage = companyJoinMapper.selectJoinPage(page, Company.class, queryWrapper); return PageData.from(companyIPage); @@ -255,9 +256,16 @@ .eq(Company::getType,Constants.ZERO) .eq(Company::getName,company.getName()); List<Company> companies = companyMapper.selectList(wrapper); - - if (CollectionUtils.isNotEmpty(companies)){ - throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"浼佷笟淇℃伅宸插瓨鍦�"); + if (CollectionUtils.isEmpty(companies)){ + return; + } + //鏂板鐨勬儏鍐靛瓨鍦ㄨ褰� + if (Objects.isNull(company.getId())){ + throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"鍏徃鍚嶇О宸插瓨鍦�"); + } + //淇敼鐨勬儏鍐靛瓨鍦ㄨ褰� 鍖归厤涓嶅埌 own + if (!companies.stream().map(s -> s.getId()).anyMatch(s -> s.equals(company.getId()))){ + throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"鍏徃鍚嶇О宸插瓨鍦�"); } } } -- Gitblit v1.9.3