From e23edcf2619ad46fd77a710fca6c21de78234bc0 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期二, 07 一月 2025 17:33:06 +0800 Subject: [PATCH] 核算重构完成 --- ycl-server/src/main/java/com/ycl/platform/service/impl/ContractResultServiceImpl.java | 25 +++++++++++++++++++++++-- 1 files changed, 23 insertions(+), 2 deletions(-) diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/ContractResultServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/ContractResultServiceImpl.java index 8843ace..80320a1 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/ContractResultServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/ContractResultServiceImpl.java @@ -8,7 +8,11 @@ import com.ycl.platform.mapper.ContractResultMapper; import com.ycl.platform.mapper.ContractResultRecordMapper; import com.ycl.platform.service.IContractResultService; +import com.ycl.system.entity.BaseEntity; +import com.ycl.system.entity.SysRole; +import com.ycl.system.entity.SysUser; import com.ycl.utils.SecurityUtils; +import enumeration.general.PublishType; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -16,6 +20,7 @@ import java.util.Arrays; import java.util.List; +import java.util.Map; import java.util.Objects; /** @@ -52,7 +57,7 @@ @Override public List<ContractResultVO> selectCheckResultList(ContractResultVO contractResult) { //閬垮厤鏌ヨ鏉′欢澶辨晥 - if(contractResult.getUnitId()==null) { + if (contractResult.getUnitId() == null) { Integer unitId = SecurityUtils.getUnitId(); Long uid = null; if (Objects.nonNull(unitId)) { @@ -60,8 +65,22 @@ } contractResult.setUnitId(uid); } + roleControl(contractResult); return checkResultMapper.selectCheckResultList(contractResult); } + + private void roleControl(ContractResultVO contractResult) { + List<SysRole> roles = SecurityUtils.getLoginUser().getUser().getRoles(); + SysUser user = SecurityUtils.getLoginUser().getUser(); + if (!user.isAdmin()) { + for (SysRole role : roles) { + if (role.getPermissions().contains("check:contract:role:publish")) { + contractResult.setPublish(1); + } + } + } + } + /** * 鏂板鑰冩牳缁撴灉 @@ -122,9 +141,11 @@ @Override public Boolean publish(Long id) { + ContractResult contractResult = checkResultMapper.selectById(id); + return new LambdaUpdateChainWrapper<>(checkResultMapper) .eq(ContractResult::getId, id) - .set(ContractResult::getPublish, 1) + .set(ContractResult::getPublish, contractResult.getPublish() == 0 ? 1 : 0) .set(ContractResult::getPublishId, SecurityUtils.getLoginUser().getUserId()) .update(); } -- Gitblit v1.8.0