From 5379e2416ce531d46696428d857127a5269567bd Mon Sep 17 00:00:00 2001 From: sunjianxi <839419401@qq.com> Date: Tue, 27 Aug 2024 16:15:08 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=88=A4=E6=96=AD=E6=9D=A1?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../InspectionRecordController.java | 8 -------- .../impl/InspectionRecordServiceImpl.java | 19 +++++++++++++++++-- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/lab-service/lab-lims/src/main/java/org/springblade/lims/controller/InspectionRecordController.java b/lab-service/lab-lims/src/main/java/org/springblade/lims/controller/InspectionRecordController.java index 6e3a58f..1e0b5e8 100644 --- a/lab-service/lab-lims/src/main/java/org/springblade/lims/controller/InspectionRecordController.java +++ b/lab-service/lab-lims/src/main/java/org/springblade/lims/controller/InspectionRecordController.java @@ -5,7 +5,6 @@ import io.swagger.annotations.Api; import lombok.AllArgsConstructor; import org.springblade.core.boot.ctrl.BladeController; import org.springblade.core.mp.support.Query; -import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; import org.springblade.lims.entry.InspectionRecord; import org.springblade.lims.service.IInspectionRecordService; @@ -13,9 +12,6 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import java.util.Arrays; -import java.util.List; - /** * @author sjx @@ -31,10 +27,6 @@ public class InspectionRecordController extends BladeController { @GetMapping("/page") public R page(InspectionRecord entry, Query query) { - List roles = Arrays.asList(AuthUtil.getUserRole().split(",")); - if(!roles.contains("admin") && !roles.contains("政府")){ - entry.setCreateDept(Long.parseLong(AuthUtil.getDeptId())); - } return R.data(service.findPage(entry, query)); } diff --git a/lab-service/lab-lims/src/main/java/org/springblade/lims/service/impl/InspectionRecordServiceImpl.java b/lab-service/lab-lims/src/main/java/org/springblade/lims/service/impl/InspectionRecordServiceImpl.java index 3c22010..23215e8 100644 --- a/lab-service/lab-lims/src/main/java/org/springblade/lims/service/impl/InspectionRecordServiceImpl.java +++ b/lab-service/lab-lims/src/main/java/org/springblade/lims/service/impl/InspectionRecordServiceImpl.java @@ -10,13 +10,21 @@ import org.springblade.core.mp.base.BaseEntity; import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; +import org.springblade.core.secure.utils.AuthUtil; import org.springblade.lims.entry.InspectionRecord; import org.springblade.lims.entry.Instrument; import org.springblade.lims.mapper.InspectionRecordMapper; import org.springblade.lims.service.IInspectionRecordService; import org.springblade.lims.service.IInstrumentService; +import org.springblade.system.cache.SysCache; +import org.springblade.system.entity.Dept; import org.springframework.stereotype.Service; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.stream.Collectors; + /** * @author swj @@ -30,8 +38,15 @@ public class InspectionRecordServiceImpl extends BaseServiceImpl findPage(InspectionRecord entry, Query query) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - if(entry.getCreateDept() != null){ - wrapper.eq(BaseEntity::getCreateDept,entry.getCreateDept()); + List roles = Arrays.asList(AuthUtil.getUserRole().split(",")); + if(!roles.contains("admin") && !roles.contains("政府")){ + List deptIds = new ArrayList<>(); + List depts = SysCache.getDeptChild(Long.parseLong(AuthUtil.getDeptId())); + if(CollectionUtils.isNotEmpty(depts)){ + deptIds = depts.stream().map(Dept::getId).collect(Collectors.toList()); + } + deptIds.add(Long.parseLong(AuthUtil.getDeptId())); + wrapper.in(BaseEntity::getCreateDept,deptIds); } wrapper.eq(BaseEntity::getIsDeleted, 0); wrapper.orderByDesc(InspectionRecord::getCreateTime);