From b9c032d96e236d9c45ca748be63a327755b82a06 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期四, 20 二月 2025 13:43:55 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TTenantServiceImpl.java |   59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 59 insertions(+), 0 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TTenantServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TTenantServiceImpl.java
index 95a8452..aabf126 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TTenantServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TTenantServiceImpl.java
@@ -1,20 +1,31 @@
 package com.ruoyi.system.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.basic.PageInfo;
 import com.ruoyi.common.constant.DictConstants;
 import com.ruoyi.common.utils.DictUtils;
 import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.system.mapper.TContractMapper;
+import com.ruoyi.system.mapper.THouseMapper;
 import com.ruoyi.system.mapper.TTenantMapper;
+import com.ruoyi.system.model.TContract;
+import com.ruoyi.system.model.THouse;
 import com.ruoyi.system.model.TTenant;
+import com.ruoyi.system.query.TBillAppletQuery;
+import com.ruoyi.system.query.TTenantAppletQuery;
 import com.ruoyi.system.query.TTenantQuery;
 import com.ruoyi.system.service.TTenantService;
 import com.ruoyi.system.utils.wx.pojo.AppletUserDecodeData;
+import com.ruoyi.system.vo.TBillVO;
 import com.ruoyi.system.vo.TenantVO;
+import com.sun.corba.se.spi.ior.IdentifiableFactory;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -27,6 +38,10 @@
 @Service
 public class TTenantServiceImpl extends ServiceImpl<TTenantMapper, TTenant> implements TTenantService {
 
+    @Autowired
+    private THouseMapper houseMapper;
+    @Autowired
+    private TContractMapper contractMapper;
     @Override
     public PageInfo<TenantVO> pageList(TTenantQuery query) {
         PageInfo<TenantVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
@@ -39,4 +54,48 @@
         return pageInfo;
     }
 
+    @Override
+    public PageInfo<TenantVO> pageListApplet(TTenantAppletQuery query) {
+        PageInfo<TenantVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
+        List<TenantVO> list = this.baseMapper.pageListApplet(query,pageInfo);
+        for (TenantVO tenantVO : list) {
+            tenantVO.setTenantAttributesName(StringUtils.isNotBlank(tenantVO.getTenantAttributes())?DictUtils.getDictLabel(DictConstants.DICT_TYPE_TENANT_ATTRIBUTE,tenantVO.getTenantAttributes()):"");
+            tenantVO.setTenantTypeName(StringUtils.isNotBlank(tenantVO.getTenantType())?DictUtils.getDictLabel(DictConstants.DICT_TYPE_TENANT_TYPE,tenantVO.getTenantType()):"");
+        }
+        pageInfo.setRecords(list);
+        return pageInfo;
+    }
+
+    @Override
+    public List<THouse> listHouse(String id) {
+        List<TContract> tContracts = contractMapper.selectList(new LambdaQueryWrapper<TContract>()
+                        .eq(TContract::getTenantId,id)
+                .eq(TContract::getStatus, 4));
+        List<String> houseIds = tContracts.stream().map(TContract::getHouseId).collect(Collectors.toList());
+        if (houseIds.isEmpty())houseIds.add("-1");
+        return houseMapper.selectList(new LambdaQueryWrapper<THouse>()
+                .in(THouse::getId, houseIds));
+    }
+
+    @Override
+    public List<TContract> listContract(String id) {
+        return contractMapper.selectList(new LambdaQueryWrapper<TContract>()
+                .eq(TContract::getTenantId,id)
+                .eq(TContract::getStatus, 4));
+    }
+
+    @Override
+    public PageInfo<TBillVO> listBill(TBillAppletQuery query) {
+        List<String> contractIds = contractMapper.selectList(new LambdaQueryWrapper<TContract>()
+                        .eq(TContract::getTenantId, query.getId())).stream().map(TContract::getId)
+                .collect(Collectors.toList());
+        if (contractIds.isEmpty())contractIds.add("0");
+        PageInfo<TBillVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
+        List<TBillVO> list = this.baseMapper.listBill(query,pageInfo);
+        for (TBillVO tBillVO : list) {
+            tBillVO.setPayFeesStatus(DictUtils.getDictLabel(DictConstants.DICT_TYPE_LEASE_STATUS,tBillVO.getPayFeesStatus()));
+        }
+        pageInfo.setRecords(list);
+        return pageInfo;
+    }
 }

--
Gitblit v1.7.1