fuliqi
2024-03-06 611ba10fe1678dca8f78ad5c01e1193339a445a4
ycl-server/src/main/java/com/ycl/platform/service/impl/YwPeopleServiceImpl.java
@@ -1,7 +1,9 @@
package com.ycl.platform.service.impl;
import com.ycl.platform.domain.entity.YwPeople;
import com.ycl.platform.domain.entity.YwUnit;
import com.ycl.platform.mapper.YwPeopleMapper;
import com.ycl.platform.mapper.YwUnitMapper;
import com.ycl.platform.service.YwPeopleService;
import com.ycl.system.Result;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -16,10 +18,12 @@
import org.springframework.beans.BeanUtils;
import org.springframework.util.Assert;
import java.util.Objects;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import lombok.RequiredArgsConstructor;
import org.springframework.util.StringUtils;
/**
 * 运维人员 服务实现类
@@ -32,6 +36,7 @@
public class YwPeopleServiceImpl extends ServiceImpl<YwPeopleMapper, YwPeople> implements YwPeopleService {
    private final YwPeopleMapper ywPeopleMapper;
    private final YwUnitMapper ywUnitMapper;
    /**
     * 添加
@@ -41,6 +46,7 @@
    @Override
    public Result add(YwPeopleForm form) {
        YwPeople entity = YwPeopleForm.getEntityByForm(form, null);
        entity.setAddWay("manual");
        if(baseMapper.insert(entity) > 0) {
            return Result.ok("添加成功");
        }
@@ -101,12 +107,25 @@
    public Result page(YwPeopleQuery query) {
        IPage<YwPeople> page = new LambdaQueryChainWrapper<>(baseMapper)
                .eq(StringUtils.hasText(query.getYwPersonCode()), YwPeople::getYwPersonCode, query.getYwPersonCode())
                .like(StringUtils.hasText(query.getYwPersonName()), YwPeople::getYwPersonName, query.getYwPersonName())
                .eq(Objects.nonNull(query.getBelongUnit()), YwPeople::getBelongUnit, query.getBelongUnit())
                .orderByDesc(YwPeople::getCreateTime)
                .page(PageUtil.getPage(query, YwPeople.class));
        List<YwPeopleVO> vos = page.getRecords().stream()
                .map(
                        entity -> YwPeopleVO.getVoByEntity(entity, null)
                        entity -> {
                            YwPeopleVO vo = YwPeopleVO.getVoByEntity(entity, null);
                            YwUnit unit = new LambdaQueryChainWrapper<>(ywUnitMapper)
                                    .eq(YwUnit::getId, vo.getBelongUnit())
                                    .select(YwUnit::getUnitName)
                                    .one();
                            if (Objects.nonNull(unit)) {
                                vo.setBelongUnitName(unit.getUnitName());
                            }
                            return vo;
                        }
                )
                .collect(Collectors.toList());
        return Result.ok().data(vos).total(page.getTotal());