xiangpei
2024-03-05 9f1d2da92a3198be1e4925b3bafa1ba0b42a4b0f
ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java
@@ -1,7 +1,11 @@
package com.ycl.platform.service.impl;
import com.ycl.platform.domain.entity.WorkOrder;
import com.ycl.platform.domain.entity.YwPeople;
import com.ycl.platform.domain.entity.YwUnit;
import com.ycl.platform.mapper.WorkOrderMapper;
import com.ycl.platform.mapper.YwPeopleMapper;
import com.ycl.platform.mapper.YwUnitMapper;
import com.ycl.platform.service.WorkOrderService;
import com.ycl.system.Result;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -9,7 +13,7 @@
import com.ycl.platform.domain.vo.WorkOrderVO;
import com.ycl.platform.domain.query.WorkOrderQuery;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.ycl.system.page.PageUtil;
import org.springframework.stereotype.Service;
@@ -18,10 +22,12 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import java.util.ArrayList;
import java.util.Objects;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import lombok.RequiredArgsConstructor;
import org.springframework.util.StringUtils;
/**
 * 工单 服务实现类
@@ -34,6 +40,9 @@
public class WorkOrderServiceImpl extends ServiceImpl<WorkOrderMapper, WorkOrder> implements WorkOrderService {
    private final WorkOrderMapper workOrderMapper;
    private final YwUnitMapper ywUnitMapper;
    private final YwPeopleMapper ywPeopleMapper;
    /**
     * 添加
@@ -103,12 +112,25 @@
    public Result page(WorkOrderQuery query) {
        IPage<WorkOrder> page = new LambdaQueryChainWrapper<>(baseMapper)
                .eq(StringUtils.hasText(query.getWorkOrderNo()), WorkOrder::getWorkOrderNo, query.getWorkOrderNo())
                .between(Objects.nonNull(query.getStart()) && Objects.nonNull(query.getEnd()),WorkOrder::getYwHandleTime, query.getStart(), query.getEnd())
                .orderByDesc(WorkOrder::getCreateTime)
                .page(PageUtil.getPage(query, WorkOrder.class));
        List<WorkOrderVO> vos = page.getRecords().stream()
                .map(
                        entity -> WorkOrderVO.getVoByEntity(entity, null)
                        entity -> {
                            WorkOrderVO vo = WorkOrderVO.getVoByEntity(entity, null);
                            YwUnit unit = ywUnitMapper.selectById(vo.getUnitId());
                            if (Objects.nonNull(unit)) {
                                vo.setUnitName(unit.getUnitName());
                            }
                            YwPeople ywPeople = ywPeopleMapper.selectById(vo.getYwPeopleId());
                            if (Objects.nonNull(ywPeople)) {
                                vo.setYwPeopleName(ywPeople.getYwPersonName());
                            }
                            return vo;
                        }
                )
                .collect(Collectors.toList());
        return Result.ok().data(vos).total(page.getTotal());