From bc22a1fce8b936f61e1f799689ee5795fc2508b0 Mon Sep 17 00:00:00 2001 From: k94314517 <8417338+k94314517@user.noreply.gitee.com> Date: 星期三, 17 一月 2024 15:22:06 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java | 26 +++++++++++++++++++++++++- 1 files changed, 25 insertions(+), 1 deletions(-) diff --git a/server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java index 83d3f76..0204f3e 100644 --- a/server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java +++ b/server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java @@ -1,15 +1,23 @@ package com.doumee.service.business.impl; +import com.doumee.core.constants.ResponseStatus; +import com.doumee.core.exception.BusinessException; +import com.doumee.core.model.LoginUserInfo; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; +import com.doumee.core.utils.Constants; import com.doumee.core.utils.Utils; import com.doumee.dao.business.CompanyMapper; +import com.doumee.dao.business.CompanyPermissionMapper; import com.doumee.dao.business.model.Company; +import com.doumee.dao.business.model.CompanyPermission; +import com.doumee.dao.business.model.Insurance; import com.doumee.service.business.CompanyService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.apache.shiro.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -26,9 +34,12 @@ @Autowired private CompanyMapper companyMapper; + @Autowired + private CompanyPermissionMapper companyPermissionMapper; @Override public Integer create(Company company) { + companyMapper.insert(company); return company.getId(); } @@ -54,6 +65,10 @@ @Override public void updateById(Company company) { + Company model = findById(company.getId()); + if(model == null || !Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO) ){ + throw new BusinessException(ResponseStatus.DATA_EMPTY ); + } companyMapper.updateById(company); } @@ -89,6 +104,15 @@ IPage<Company> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); QueryWrapper<Company> queryWrapper = new QueryWrapper<>(); Utils.MP.blankToNull(pageWrap.getModel()); + pageWrap.getModel().setIsdeleted(Constants.ZERO); + LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); + if(pageWrap.getModel().getQueryFlag() == 0){ + //鍙兘鐪嬫潈闄愯寖鍥村唴 + queryWrapper.exists("select b.id from company_permission b where b.user_id="+user.getId()+" and b.isdeleted=0 and b.company_id=company.id"); + } else if (pageWrap.getModel().getQueryFlag() == 1) { + //鏌ヨ鏄惁鏈夋煡鐪嬫瑠闄� + queryWrapper.select("*,(select count(1) from company_permission b where b.user_id="+user.getId()+" and b.isdeleted=0 and b.company_id=company.id) as hasPerimission"); + } if (pageWrap.getModel().getId() != null) { queryWrapper.lambda().eq(Company::getId, pageWrap.getModel().getId()); } @@ -110,7 +134,7 @@ queryWrapper.lambda().eq(Company::getIsdeleted, pageWrap.getModel().getIsdeleted()); } if (pageWrap.getModel().getName() != null) { - queryWrapper.lambda().eq(Company::getName, pageWrap.getModel().getName()); + queryWrapper.lambda().like(Company::getName, pageWrap.getModel().getName()); } if (pageWrap.getModel().getRemark() != null) { queryWrapper.lambda().eq(Company::getRemark, pageWrap.getModel().getRemark()); -- Gitblit v1.9.3