123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- package com.sf.service.impl;
- import cn.hutool.core.collection.CollUtil;
- import com.alibaba.fastjson2.JSON;
- import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
- import com.baomidou.mybatisplus.core.toolkit.Wrappers;
- import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
- import com.sf.dto.resp.PassengerActualRespDTO;
- import com.sf.dto.resp.PassengerRespDTO;
- import com.sf.entity.PassengerDO;
- import com.sf.mapper.PassengerMapper;
- import com.sf.service.IPassengerService;
- import lombok.RequiredArgsConstructor;
- import org.opengoofy.index12306.framework.starter.common.toolkit.BeanUtil;
- import org.springframework.stereotype.Service;
- import java.util.List;
- import java.util.stream.Collectors;
- @Service
- @RequiredArgsConstructor
- public class PassengerServiceImpl extends ServiceImpl<PassengerMapper, PassengerDO>
- implements IPassengerService {
- private final PassengerMapper passengerMapper;
- @Override
- public List<PassengerRespDTO> listPassengerQueryByUsername(String username) {
- // 根据username查询数据
- LambdaQueryWrapper<PassengerDO> queryWrapper = new LambdaQueryWrapper<>();
- queryWrapper.eq(PassengerDO::getUsername, username);
- List<PassengerDO> passengerDOS = passengerMapper.selectList(queryWrapper);
- // 遍历查询出来的do 逐个转化为dto 然后放入list中
- List<PassengerRespDTO> passengerRespDTOS = passengerDOS.stream()
- .map(passengerDO -> BeanUtil.convert(passengerDO, PassengerRespDTO.class))
- .toList();
- return passengerRespDTOS;
- }
- @Override
- public List<PassengerActualRespDTO> listPassengerQueryByIds(String username, List<Long> ids) {
- LambdaQueryWrapper<PassengerDO> queryWrapper = Wrappers.lambdaQuery(PassengerDO.class)
- .eq(PassengerDO::getUsername, username);
- List<PassengerDO> passengerDOList = passengerMapper.selectList(queryWrapper);
- List<PassengerActualRespDTO> respDTOS =
- passengerDOList.stream().filter(passengerDO -> ids.contains(passengerDO.getId()))
- .map(each -> BeanUtil.convert(each, PassengerActualRespDTO.class))
- .collect(Collectors.toList());
- return respDTOS;
- }
- }
|