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 | 38 ++++++++++++++++++++++++++++++++++++-- 1 files changed, 36 insertions(+), 2 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 3060216..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; @@ -19,16 +27,19 @@ /** * 浼佷笟淇℃伅琛⊿ervice瀹炵幇 * @author 姹熻箘韫� - * @date 2024/01/15 15:07 + * @date 2024/01/16 10:03 */ @Service public class CompanyServiceImpl implements CompanyService { @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()); @@ -151,6 +175,16 @@ if (pageWrap.getModel().getPhone() != null) { queryWrapper.lambda().eq(Company::getPhone, pageWrap.getModel().getPhone()); } + if (pageWrap.getModel().getEmail() != null) { + queryWrapper.lambda().eq(Company::getEmail, pageWrap.getModel().getEmail()); + } + if (pageWrap.getModel().getSignStatus() != null) { + queryWrapper.lambda().eq(Company::getSignStatus, pageWrap.getModel().getSignStatus()); + } + if (pageWrap.getModel().getSignDate() != null) { + queryWrapper.lambda().ge(Company::getSignDate, Utils.Date.getStart(pageWrap.getModel().getSignDate())); + queryWrapper.lambda().le(Company::getSignDate, Utils.Date.getEnd(pageWrap.getModel().getSignDate())); + } for(PageWrap.SortData sortData: pageWrap.getSorts()) { if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { queryWrapper.orderByDesc(sortData.getProperty()); -- Gitblit v1.9.3