package com.ruoyi.system.service.impl;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.ruoyi.common.basic.PageInfo;
|
import com.ruoyi.system.mapper.TContractMapper;
|
import com.ruoyi.system.mapper.THouseMapper;
|
import com.ruoyi.system.model.TContract;
|
import com.ruoyi.system.model.THouse;
|
import com.ruoyi.system.query.THouseQuery;
|
import com.ruoyi.system.query.TUserHistoryQuery;
|
import com.ruoyi.system.service.THouseService;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.ruoyi.system.vo.HouseVO;
|
import org.springframework.stereotype.Service;
|
|
import javax.annotation.Resource;
|
import java.time.LocalDateTime;
|
import java.util.List;
|
|
/**
|
* <p>
|
* 房屋管理 服务实现类
|
* </p>
|
*
|
* @author xiaochen
|
* @since 2025-01-17
|
*/
|
@Service
|
public class THouseServiceImpl extends ServiceImpl<THouseMapper, THouse> implements THouseService {
|
@Resource
|
private TContractMapper contractMapper;
|
@Override
|
public PageInfo<THouse> houseList(THouseQuery query) {
|
PageInfo<THouse> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
|
List<THouse> list = this.baseMapper.houseList(query,pageInfo);
|
List<TContract> tContracts = contractMapper.selectList(new LambdaQueryWrapper<TContract>()
|
.eq(TContract::getStatus, 4)
|
.le(TContract::getStartTime, LocalDateTime.now())
|
.ge(TContract::getEndTime, LocalDateTime.now()));
|
for (THouse tHouse : list) {
|
TContract tContract = tContracts.stream().filter(e -> e.getHouseId().equals(tHouse.getId())).findFirst().orElse(null);
|
if (tContract!=null){
|
tHouse.setTenantType(tContract.getPayType());
|
}
|
}
|
pageInfo.setRecords(list);
|
return pageInfo;
|
}
|
|
@Override
|
public PageInfo<HouseVO> userHistoryList(TUserHistoryQuery query) {
|
PageInfo<HouseVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
|
List<HouseVO> list = this.baseMapper.userHistoryList(query,pageInfo);
|
pageInfo.setRecords(list);
|
return pageInfo;
|
}
|
}
|