Forráskód Böngészése

修改
1、数据大屏增加显示离住人数、在住人数剔除离住人数
2、home包下的分页优化

liangwenxuan 2 hónapja
szülő
commit
b9ddb331e8
15 módosított fájl, 102 hozzáadás és 108 törlés
  1. 2 2
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/vo/ElderlyHomeOverviewSummary.java
  2. 12 1
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/home/HomeServiceDepartmentController.java
  3. 1 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/home/HomeServiceItemController.java
  4. 21 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/home/vo/HomeServiceDepartmentPageReqVO.java
  5. 1 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/home/vo/HomeServiceItemPageRespVO.java
  6. 1 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/biz/ElderlyBuildFloorActivityImageMapper.java
  7. 32 48
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/biz/ElderlyInfoServiceImpl.java
  8. 2 15
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServiceAreaServiceImpl.java
  9. 1 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServiceCategoryService.java
  10. 2 14
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServiceCategoryServiceImpl.java
  11. 4 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServiceDepartmentService.java
  12. 17 0
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServiceDepartmentServiceImpl.java
  13. 2 14
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServiceItemServiceImpl.java
  14. 3 14
      yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServicePackageServiceImpl.java
  15. 1 0
      yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/HomeServiceItemMapper.xml

+ 2 - 2
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/biz/vo/ElderlyHomeOverviewSummary.java

@@ -70,8 +70,8 @@ public class ElderlyHomeOverviewSummary {
     @Schema(description = "护工数")
     private String caregiverCount;
 
-    @Schema(description = "退住数")
-    private String checkOutCount;
+    @Schema(description = "住数")
+    private String leaveCount;
 
     @Schema(description = "包房数")
     private String privateRoomCount;

+ 12 - 1
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/home/HomeServiceDepartmentController.java

@@ -1,8 +1,10 @@
 package cn.iocoder.yudao.module.system.controller.admin.home;
 
 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
 import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder;
+import cn.iocoder.yudao.module.system.controller.admin.home.vo.HomeServiceDepartmentPageReqVO;
 import cn.iocoder.yudao.module.system.controller.admin.home.vo.HomeServiceDepartmentRespVO;
 import cn.iocoder.yudao.module.system.controller.admin.home.vo.HomeServiceDepartmentSaveReqVO;
 import cn.iocoder.yudao.module.system.service.home.HomeServiceDepartmentService;
@@ -63,5 +65,14 @@ public class HomeServiceDepartmentController {
     public CommonResult<HomeServiceDepartmentRespVO> get(@RequestParam("id") Long id) {
         return success(homeServiceDepartmentService.getHomeServiceDepartment(id));
     }
-}
 
+    @GetMapping("/page")
+    @Operation(summary = "获得居家服务部门分页")
+    @TenantIgnore
+    public CommonResult<PageResult<HomeServiceDepartmentRespVO>> page(@Valid HomeServiceDepartmentPageReqVO pageReqVO) {
+        if (pageReqVO.getTenantId() == null) {
+            pageReqVO.setTenantId(TenantContextHolder.getTenantId());
+        }
+        return success(homeServiceDepartmentService.getHomeServiceDepartmentPage(pageReqVO));
+    }
+}

+ 1 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/home/HomeServiceItemController.java

@@ -79,3 +79,4 @@ public class HomeServiceItemController {
 }
 
 
+

+ 21 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/home/vo/HomeServiceDepartmentPageReqVO.java

@@ -0,0 +1,21 @@
+package cn.iocoder.yudao.module.system.controller.admin.home.vo;
+
+import cn.iocoder.yudao.framework.common.pojo.PageParam;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+
+@Schema(description = "管理后台 - 居家服务部门分页 Request VO")
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+public class HomeServiceDepartmentPageReqVO extends PageParam {
+
+    private Long superiorId;
+    private String name;
+    private Long responsiblePersonId;
+    private Long tenantId;
+    private Long[] tenantIds;
+}
+

+ 1 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/home/vo/HomeServiceItemPageRespVO.java

@@ -36,3 +36,4 @@ public class HomeServiceItemPageRespVO {
 }
 
 
+

+ 1 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/biz/ElderlyBuildFloorActivityImageMapper.java

@@ -44,6 +44,7 @@ public interface ElderlyBuildFloorActivityImageMapper extends BaseMapperX<Elderl
 
 
 
+
 
 
 

+ 32 - 48
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/biz/ElderlyInfoServiceImpl.java

@@ -29,7 +29,9 @@ import cn.iocoder.yudao.module.system.dal.dataobject.restaurant.DishesOrderItemD
 import cn.iocoder.yudao.module.system.dal.dataobject.tenant.GroupTenantDO;
 import cn.iocoder.yudao.module.system.dal.dataobject.tenant.TenantDO;
 import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
+import cn.iocoder.yudao.module.system.dal.dataobject.biz.ElderlyTempOutDO;
 import cn.iocoder.yudao.module.system.dal.mysql.biz.*;
+import cn.iocoder.yudao.module.system.dal.mysql.biz.ElderlyTempOutMapper;
 import cn.iocoder.yudao.module.system.dal.mysql.reservation.VisitRegistrationMapper;
 import cn.iocoder.yudao.module.system.dal.mysql.restaurant.CateringPlanItemMapper;
 import cn.iocoder.yudao.module.system.dal.mysql.restaurant.CateringPlanMapper;
@@ -167,6 +169,9 @@ public class ElderlyInfoServiceImpl implements ElderlyInfoService {
     @Resource
     private ElderlyRetreatRecordMapper elderlyRetreatRecordMapper;
 
+    @Resource
+    private ElderlyTempOutMapper elderlyTempOutMapper;
+
     @Resource
     private DepositMapper depositMapper;
 
@@ -816,24 +821,10 @@ public class ElderlyInfoServiceImpl implements ElderlyInfoService {
         Page<ElderlyInfoDO> page = new Page<>(pageVO.getPageNo(), pageVO.getPageSize());
         List<ElderlyInfoDO> list = elderlyInfoMapper.findPage(page, pageVO);
         AtomicInteger atomicInteger = new AtomicInteger(1);
-        List<Long> elderIds = list.stream().map(ElderlyInfoDO::getId).collect(Collectors.toList());
-        Map<Long, ElderlyContractDO> contractMap = new HashMap<>();
-        if (CollectionUtil.isNotEmpty(elderIds)) {
-            List<ElderlyContractDO> contractList = elderlyContractMapper.selectList(new LambdaQueryWrapperX<ElderlyContractDO>()
-                    .in(ElderlyContractDO::getElderId, elderIds)
-                    .orderByDesc(ElderlyContractDO::getCreatedTime)
-                    .orderByDesc(ElderlyContractDO::getId));
-            for (ElderlyContractDO contract : contractList) {
-                if (contract.getElderId() != null && !contractMap.containsKey(contract.getElderId())) {
-                    contractMap.put(contract.getElderId(), contract);
-                }
-            }
-        }
         List<ElderlyBaseInfoExportExcelVO> baseInfoExportExcelList = list.stream().map(e -> {
             ElderlyBaseInfoExportExcelVO baseInfoExportExcelVO = new ElderlyBaseInfoExportExcelVO();
             BeanUtils.copyProperties(e, baseInfoExportExcelVO);
             baseInfoExportExcelVO.setNum(atomicInteger.getAndIncrement());
-            baseInfoExportExcelVO.setContractNumber(contractMap.get(e.getId()) == null ? "" : contractMap.get(e.getId()).getContractNumber());
             baseInfoExportExcelVO.setBirthdayCareDate(e.getBirthday() == null ? null : e.getBirthday().toInstant().atZone(ZoneId.systemDefault()).toLocalDate());
             baseInfoExportExcelVO.setBedName(buildService.getFullBedName(e.getId()));
             if (e.getNurseLevelId() != null) {
@@ -867,31 +858,9 @@ public class ElderlyInfoServiceImpl implements ElderlyInfoService {
             return baseInfoExportExcelVO;
         }).collect(Collectors.toList());
 
-        List<ElderlyContractInfoExportExcelVO> contractInfoExportExcelList = list.stream().map(e -> {
-            ElderlyContractInfoExportExcelVO contractInfoExportExcelVO = new ElderlyContractInfoExportExcelVO();
-            BeanUtils.copyProperties(e, contractInfoExportExcelVO);
-            ElderlyContractDO contractDO = contractMap.get(e.getId());
-            if (contractDO != null) {
-                contractInfoExportExcelVO.setContractNumber(contractDO.getContractNumber());
-                contractInfoExportExcelVO.setBeginTime(contractDO.getBeginTime());
-                contractInfoExportExcelVO.setExpireTime(contractDO.getExpireTime());
-                contractInfoExportExcelVO.setContractTerm(contractDO.getContractTerm());
-            }
-            contractInfoExportExcelVO.setBedName(buildService.getFullBedName(e.getId()));
-            if (e.getNurseLevelId() != null) {
-                NurseLevelDO nurseLevelDO = nurseLevelMapper.selectById(e.getNurseLevelId());
-                contractInfoExportExcelVO.setNursingLevelName(nurseLevelDO == null ? null : nurseLevelDO.getNurseLevelName());
-            }
-            return contractInfoExportExcelVO;
-        }).collect(Collectors.toList());
-
-        for (int i = 0; i < contractInfoExportExcelList.size(); i++) {
-            contractInfoExportExcelList.get(i).setNum(i + 1);
-        }
-
         Map<String, Object> dataMap = new HashMap<>();
         dataMap.put("baseInfo", baseInfoExportExcelList);
-        dataMap.put("contractInfo", contractInfoExportExcelList);
+        dataMap.put("contractInfo", new ArrayList<ElderlyContractInfoExportExcelVO>());
         return dataMap;
     }
 
@@ -1534,8 +1503,8 @@ public class ElderlyInfoServiceImpl implements ElderlyInfoService {
         }
 
         LocalDate today = LocalDate.now();
-        LocalDate weekStart = today.with(DayOfWeek.MONDAY);
-        LocalDate weekEnd = today.with(DayOfWeek.SUNDAY);
+        LocalDate weekStart = today.with(TemporalAdjusters.previousOrSame(DayOfWeek.SATURDAY));
+        LocalDate weekEnd = today.with(TemporalAdjusters.nextOrSame(DayOfWeek.FRIDAY));
         LocalDate monthStart = today.withDayOfMonth(1);
 
         LocalDateTime weekStartDateTime = weekStart.atStartOfDay();
@@ -1809,8 +1778,10 @@ public class ElderlyInfoServiceImpl implements ElderlyInfoService {
         ElderlyHomeOverviewSummary overviewSummary = new ElderlyHomeOverviewSummary();
         HomeOverviewSummaryDO homeOverviewSummaryDO = null;
         List<HomeOverviewSummaryDO> homeOverviewSummaryDOS = overviewSummaryMapper.selectList();
-        if (null != homeOverviewSummaryDOS) {
+        if (null != homeOverviewSummaryDOS && !homeOverviewSummaryDOS.isEmpty()) {
             homeOverviewSummaryDO = homeOverviewSummaryDOS.get(0);
+        } else {
+            homeOverviewSummaryDO = new HomeOverviewSummaryDO();
         }
 
         // 总床位数量
@@ -1824,7 +1795,7 @@ public class ElderlyInfoServiceImpl implements ElderlyInfoService {
             bedCount = resultCount == null ? "0" : resultCount.toString();
         }
 
-        // 入住数
+        // 入住数(剔除离住未返院)
         String checkInBedCount = null;
         if (StringUtil.isNotEmptyORNull(homeOverviewSummaryDO.getCheckInCount()) && reqVO.getQueryFlag() == 1) {
             checkInBedCount = homeOverviewSummaryDO.getCheckInCount();
@@ -1834,28 +1805,40 @@ public class ElderlyInfoServiceImpl implements ElderlyInfoService {
                     .eq(ElderlyInfoDO::getDeleted, 0)
                     .eq(ElderlyInfoDO::getOrgType, 1)
                     .in(ElderlyInfoDO::getTenantId, reqVO.getTenantIds()));
-            checkInBedCount = resultCount == null ? "0" : resultCount.toString();
+
+            Long tempOutCount = elderlyTempOutMapper.selectCount(new LambdaQueryWrapperX<ElderlyTempOutDO>()
+                    .eq(ElderlyTempOutDO::getOutStatus, 1)
+                    .in(ElderlyTempOutDO::getTenantId, reqVO.getTenantIds()));
+
+            long checkInCount = (resultCount == null ? 0L : resultCount) - (tempOutCount == null ? 0L : tempOutCount);
+            checkInBedCount = String.valueOf(Math.max(checkInCount, 0L));
         }
 
+        // 离住数(未返院)
+        String tempOutCountStr;
+        Long resultCount = elderlyTempOutMapper.selectCount(new LambdaQueryWrapperX<ElderlyTempOutDO>()
+                .eq(ElderlyTempOutDO::getOutStatus, 1)
+                .in(ElderlyTempOutDO::getTenantId, reqVO.getTenantIds()));
+        tempOutCountStr = resultCount == null ? "0" : resultCount.toString();
 
         // 退住数
-        String retreatCount = null;
+        String retreatCountStr = null;
         if (StringUtil.isNotEmptyORNull(homeOverviewSummaryDO.getRetreatCount()) && reqVO.getQueryFlag() == 1) {
-            retreatCount = homeOverviewSummaryDO.getRetreatCount();
+            retreatCountStr = homeOverviewSummaryDO.getRetreatCount();
         } else {
             // 计算过去一个月的时间范围
             LocalDate today = LocalDate.now();
             LocalDateTime endDate = today.atStartOfDay();
             LocalDateTime startDate = endDate.minusMonths(1);
 
-            Long resultCount = elderlyInfoMapper.selectCount(new LambdaQueryWrapperX<ElderlyInfoDO>()
+            Long retreatCount = elderlyInfoMapper.selectCount(new LambdaQueryWrapperX<ElderlyInfoDO>()
                     .eq(ElderlyInfoDO::getInStatus, 2)
                     .eq(ElderlyInfoDO::getDeleted, 0)
                     .eq(ElderlyInfoDO::getOrgType, 1)
                     .ge(ElderlyInfoDO::getCheckOutTime, startDate)
                     .lt(ElderlyInfoDO::getCheckOutTime, endDate)
                     .in(ElderlyInfoDO::getTenantId, reqVO.getTenantIds()));
-            retreatCount = resultCount == null ? "0" : resultCount.toString();
+            retreatCountStr = retreatCount == null ? "0" : retreatCount.toString();
         }
 
         if (reqVO.getQueryFlag() == 2) {
@@ -1908,7 +1891,8 @@ public class ElderlyInfoServiceImpl implements ElderlyInfoService {
         overviewSummary.setServiceCount(homeOverviewSummaryDO.getServiceCount());
         overviewSummary.setPlanBedCount(homeOverviewSummaryDO.getPlanBedCount());
         overviewSummary.setTenantCount(tenantCount.toString());
-        overviewSummary.setRetreatCount(retreatCount);
+        overviewSummary.setRetreatCount(retreatCountStr);
+        overviewSummary.setLeaveCount(tempOutCountStr);
         overviewSummary.setCommunityCount(homeOverviewSummaryDO.getCommunityCount());
         overviewSummary.setHomeBasedServiceCount(homeOverviewSummaryDO.getHomeBasedServiceCount());
         overviewSummary.setHomeBasedCateringCount(homeOverviewSummaryDO.getHomeBasedCateringCount());
@@ -1952,7 +1936,6 @@ public class ElderlyInfoServiceImpl implements ElderlyInfoService {
         business.setCheckInCount(checkInCount);
         return business;
     }
-
     ElderlyHomeRespVO getHouseholdAndEconomic(ElderlyInfoHomeDataReqVO reqVO) {
         ElderlyHomeRespVO respVO = new ElderlyHomeRespVO();
         ElderlyHomeHousehold household = new ElderlyHomeHousehold();
@@ -3064,3 +3047,4 @@ public class ElderlyInfoServiceImpl implements ElderlyInfoService {
 
 
 
+

+ 2 - 15
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServiceAreaServiceImpl.java

@@ -1,7 +1,5 @@
 package cn.iocoder.yudao.module.system.service.home;
 
-import cn.hutool.core.collection.CollUtil;
-import cn.iocoder.yudao.framework.common.pojo.PageParam;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
@@ -14,7 +12,6 @@ import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
 
 import javax.annotation.Resource;
-import java.util.List;
 
 @Service
 @Validated
@@ -55,17 +52,7 @@ public class HomeServiceAreaServiceImpl implements HomeServiceAreaService {
                 .inIfPresent(HomeServiceAreaDO::getTenantId, pageReqVO.getTenantIds())
                 .orderByDesc(HomeServiceAreaDO::getId);
 
-        List<HomeServiceAreaDO> list = homeServiceAreaMapper.selectList(query);
-        if (CollUtil.isEmpty(list)) {
-            return PageResult.empty();
-        }
-        long total = list.size();
-        int fromIndex = Math.max((pageReqVO.getPageNo() - 1) * pageReqVO.getPageSize(), 0);
-        if (fromIndex >= total) {
-            return PageResult.empty(total);
-        }
-        int toIndex = Math.min(fromIndex + pageReqVO.getPageSize(), list.size());
-        List<HomeServiceAreaRespVO> pageList = BeanUtils.toBean(list.subList(fromIndex, toIndex), HomeServiceAreaRespVO.class);
-        return new PageResult<>(pageList, total);
+        PageResult<HomeServiceAreaDO> pageResult = homeServiceAreaMapper.selectPage(pageReqVO, query);
+        return BeanUtils.toBean(pageResult, HomeServiceAreaRespVO.class);
     }
 }

+ 1 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServiceCategoryService.java

@@ -20,3 +20,4 @@ public interface HomeServiceCategoryService {
 }
 
 
+

+ 2 - 14
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServiceCategoryServiceImpl.java

@@ -1,6 +1,5 @@
 package cn.iocoder.yudao.module.system.service.home;
 
-import cn.hutool.core.collection.CollUtil;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
@@ -14,7 +13,6 @@ import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
 
 import javax.annotation.Resource;
-import java.util.List;
 
 @Service
 @Validated
@@ -55,17 +53,7 @@ public class HomeServiceCategoryServiceImpl implements HomeServiceCategoryServic
                 .inIfPresent(HomeServiceCategoryDO::getTenantId, pageReqVO.getTenantIds())
                 .orderByDesc(HomeServiceCategoryDO::getId);
 
-        List<HomeServiceCategoryDO> list = homeServiceCategoryMapper.selectList(query);
-        if (CollUtil.isEmpty(list)) {
-            return PageResult.empty();
-        }
-        long total = list.size();
-        int fromIndex = Math.max((pageReqVO.getPageNo() - 1) * pageReqVO.getPageSize(), 0);
-        if (fromIndex >= total) {
-            return PageResult.empty(total);
-        }
-        int toIndex = Math.min(fromIndex + pageReqVO.getPageSize(), list.size());
-        List<HomeServiceCategoryPageRespVO> pageList = BeanUtils.toBean(list.subList(fromIndex, toIndex), HomeServiceCategoryPageRespVO.class);
-        return new PageResult<>(pageList, total);
+        PageResult<HomeServiceCategoryDO> pageResult = homeServiceCategoryMapper.selectPage(pageReqVO, query);
+        return BeanUtils.toBean(pageResult, HomeServiceCategoryPageRespVO.class);
     }
 }

+ 4 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServiceDepartmentService.java

@@ -1,5 +1,7 @@
 package cn.iocoder.yudao.module.system.service.home;
 
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.module.system.controller.admin.home.vo.HomeServiceDepartmentPageReqVO;
 import cn.iocoder.yudao.module.system.controller.admin.home.vo.HomeServiceDepartmentRespVO;
 import cn.iocoder.yudao.module.system.controller.admin.home.vo.HomeServiceDepartmentSaveReqVO;
 
@@ -12,5 +14,7 @@ public interface HomeServiceDepartmentService {
     void deleteHomeServiceDepartment(Long id);
 
     HomeServiceDepartmentRespVO getHomeServiceDepartment(Long id);
+
+    PageResult<HomeServiceDepartmentRespVO> getHomeServiceDepartmentPage(HomeServiceDepartmentPageReqVO pageReqVO);
 }
 

+ 17 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServiceDepartmentServiceImpl.java

@@ -1,6 +1,9 @@
 package cn.iocoder.yudao.module.system.service.home;
 
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
+import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
+import cn.iocoder.yudao.module.system.controller.admin.home.vo.HomeServiceDepartmentPageReqVO;
 import cn.iocoder.yudao.module.system.controller.admin.home.vo.HomeServiceDepartmentRespVO;
 import cn.iocoder.yudao.module.system.controller.admin.home.vo.HomeServiceDepartmentSaveReqVO;
 import cn.iocoder.yudao.module.system.dal.dataobject.home.HomeServiceDepartmentDO;
@@ -39,4 +42,18 @@ public class HomeServiceDepartmentServiceImpl implements HomeServiceDepartmentSe
     public HomeServiceDepartmentRespVO getHomeServiceDepartment(Long id) {
         return BeanUtils.toBean(homeServiceDepartmentMapper.selectById(id), HomeServiceDepartmentRespVO.class);
     }
+
+    @Override
+    public PageResult<HomeServiceDepartmentRespVO> getHomeServiceDepartmentPage(HomeServiceDepartmentPageReqVO pageReqVO) {
+        LambdaQueryWrapperX<HomeServiceDepartmentDO> query = new LambdaQueryWrapperX<HomeServiceDepartmentDO>()
+                .eqIfPresent(HomeServiceDepartmentDO::getSuperiorId, pageReqVO.getSuperiorId())
+                .likeIfPresent(HomeServiceDepartmentDO::getName, pageReqVO.getName())
+                .eqIfPresent(HomeServiceDepartmentDO::getResponsiblePersonId, pageReqVO.getResponsiblePersonId())
+                .eqIfPresent(HomeServiceDepartmentDO::getTenantId, pageReqVO.getTenantId())
+                .inIfPresent(HomeServiceDepartmentDO::getTenantId, pageReqVO.getTenantIds())
+                .orderByDesc(HomeServiceDepartmentDO::getId);
+
+        PageResult<HomeServiceDepartmentDO> pageResult = homeServiceDepartmentMapper.selectPage(pageReqVO, query);
+        return BeanUtils.toBean(pageResult, HomeServiceDepartmentRespVO.class);
+    }
 }

+ 2 - 14
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServiceItemServiceImpl.java

@@ -1,6 +1,5 @@
 package cn.iocoder.yudao.module.system.service.home;
 
-import cn.hutool.core.collection.CollUtil;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
@@ -14,7 +13,6 @@ import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
 
 import javax.annotation.Resource;
-import java.util.List;
 
 @Service
 @Validated
@@ -56,17 +54,7 @@ public class HomeServiceItemServiceImpl implements HomeServiceItemService {
                 .inIfPresent(HomeServiceItemDO::getTenantId, pageReqVO.getTenantIds())
                 .orderByDesc(HomeServiceItemDO::getId);
 
-        List<HomeServiceItemDO> list = homeServiceItemMapper.selectList(query);
-        if (CollUtil.isEmpty(list)) {
-            return PageResult.empty();
-        }
-        long total = list.size();
-        int fromIndex = Math.max((pageReqVO.getPageNo() - 1) * pageReqVO.getPageSize(), 0);
-        if (fromIndex >= total) {
-            return PageResult.empty(total);
-        }
-        int toIndex = Math.min(fromIndex + pageReqVO.getPageSize(), list.size());
-        List<HomeServiceItemPageRespVO> pageList = BeanUtils.toBean(list.subList(fromIndex, toIndex), HomeServiceItemPageRespVO.class);
-        return new PageResult<>(pageList, total);
+        PageResult<HomeServiceItemDO> pageResult = homeServiceItemMapper.selectPage(pageReqVO, query);
+        return BeanUtils.toBean(pageResult, HomeServiceItemPageRespVO.class);
     }
 }

+ 3 - 14
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/home/HomeServicePackageServiceImpl.java

@@ -1,6 +1,5 @@
 package cn.iocoder.yudao.module.system.service.home;
 
-import cn.hutool.core.collection.CollUtil;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
 import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
@@ -13,7 +12,6 @@ import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
 
 import javax.annotation.Resource;
-import java.util.List;
 
 @Service
 @Validated
@@ -55,19 +53,10 @@ public class HomeServicePackageServiceImpl implements HomeServicePackageService
                 .inIfPresent(HomeServicePackageDO::getTenantId, pageReqVO.getTenantIds())
                 .orderByDesc(HomeServicePackageDO::getId);
 
-        List<HomeServicePackageDO> list = homeServicePackageMapper.selectList(query);
-        if (CollUtil.isEmpty(list)) {
-            return PageResult.empty();
-        }
-        long total = list.size();
-        int fromIndex = Math.max((pageReqVO.getPageNo() - 1) * pageReqVO.getPageSize(), 0);
-        if (fromIndex >= total) {
-            return PageResult.empty(total);
-        }
-        int toIndex = Math.min(fromIndex + pageReqVO.getPageSize(), list.size());
-        List<HomeServicePackageRespVO> pageList = BeanUtils.toBean(list.subList(fromIndex, toIndex), HomeServicePackageRespVO.class);
-        return new PageResult<>(pageList, total);
+        PageResult<HomeServicePackageDO> pageResult = homeServicePackageMapper.selectPage(pageReqVO, query);
+        return BeanUtils.toBean(pageResult, HomeServicePackageRespVO.class);
     }
 }
 
 
+

+ 1 - 0
yudao-module-system/yudao-module-system-biz/src/main/resources/mapper/HomeServiceItemMapper.xml

@@ -35,3 +35,4 @@
 </mapper>
 
 
+