From 9f1d2da92a3198be1e4925b3bafa1ba0b42a4b0f Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期二, 05 三月 2024 20:23:50 +0800 Subject: [PATCH] 工单优化 --- ycl-server/src/main/java/com/ycl/platform/controller/WorkOrderController.java | 2 +- ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderVO.java | 4 ++++ ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java | 26 ++++++++++++++++++++++++-- ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderQuery.java | 18 ++++++++++++++++++ 4 files changed, 47 insertions(+), 3 deletions(-) diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderQuery.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderQuery.java index 13d3d68..40c51f6 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderQuery.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/WorkOrderQuery.java @@ -1,6 +1,8 @@ package com.ycl.platform.domain.query; import com.ycl.platform.base.AbsQuery; + +import java.time.LocalDateTime; import java.util.List; import org.springframework.lang.NonNull; import jakarta.validation.constraints.NotBlank; @@ -19,5 +21,21 @@ @Accessors(chain = true) @ApiModel(value = "WorkOrder鏌ヨ", description = "宸ュ崟鏌ヨ") public class WorkOrderQuery extends AbsQuery { + + /** + * 宸ュ崟鍙� + */ + private String workOrderNo; + + /** + * 杩愮淮澶勭悊鏃堕棿 + */ + private LocalDateTime start; + + /** + * 杩愮淮澶勭悊鏃堕棿 + */ + private LocalDateTime end; + } diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderVO.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderVO.java index 0c3f2a5..83fc829 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderVO.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderVO.java @@ -1,5 +1,6 @@ package com.ycl.platform.domain.vo; +import com.fasterxml.jackson.annotation.JsonFormat; import com.ycl.platform.base.AbsVo; import com.ycl.platform.domain.entity.WorkOrder; @@ -27,11 +28,14 @@ /** 杩愮淮鍗曚綅 */ private Integer unitId; + private String unitName; /** 杩愮淮浜哄憳 */ private Integer ywPeopleId; + private String ywPeopleName; /** 杩愮淮澶勭悊鏃堕棿 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime ywHandleTime; /** 杩愮淮缁撴灉 */ diff --git a/ycl-server/src/main/java/com/ycl/platform/controller/WorkOrderController.java b/ycl-server/src/main/java/com/ycl/platform/controller/WorkOrderController.java index 4c57917..01abe9f 100644 --- a/ycl-server/src/main/java/com/ycl/platform/controller/WorkOrderController.java +++ b/ycl-server/src/main/java/com/ycl/platform/controller/WorkOrderController.java @@ -55,7 +55,7 @@ return workOrderService.remove(ids); } - @GetMapping("/page") + @PostMapping("/page") @ApiOperation(value = "鍒嗛〉", notes = "鍒嗛〉") public Result page(WorkOrderQuery query) { return workOrderService.page(query); diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java index b0ef736..26b738e 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java +++ b/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()); -- Gitblit v1.8.0