From 958aa625ada4f56da30f1c789531be39eecb2dd5 Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Fri, 10 May 2024 18:26:04 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=AE=BE=E5=A4=87=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E4=BC=98=E5=8C=96-0510?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/dev/DeviceMiniController.java | 68 ++++++ .../dev/DeviceRepairApplyController.java | 13 +- .../dev/DeviceRepairApplyDetailMapper.java | 6 + .../DeviceRepairApplyDetailStatusEnum.java | 4 +- .../dev/DeviceRepairApplyStatusEnum.java | 6 +- .../req/dev/DeviceCheckDetailMiniQuery.java | 29 +++ .../dev/DeviceInfoDetailByDeptCodeQuery.java | 7 + .../api/req/dev/DeviceInfoDetailQuery.java | 3 + .../dev/DeviceRepairApplyDetailMiniQuery.java | 28 +++ .../req/dev/DeviceRepairApplyHallQuery.java | 2 + .../api/req/dev/DeviceRepairApplyQuery.java | 4 + .../DeviceRepairApplyDetailMiniResponse.java | 202 ++++++++++++++++++ .../service/dev/DeviceCheckDetailService.java | 2 + .../dev/DeviceRepairApplyDetailService.java | 4 + .../impl/DeviceCheckDetailServiceImpl.java | 27 ++- .../DeviceRepairApplyDetailServiceImpl.java | 45 +++- .../impl/DeviceRepairApplyServiceImpl.java | 18 +- .../mybatis/mapper/dev/DeviceInfoMapper.xml | 7 + .../dev/DeviceRepairApplyDetailMapper.xml | 64 ++++++ 19 files changed, 521 insertions(+), 18 deletions(-) create mode 100644 src/main/java/com/glxp/api/controller/dev/DeviceMiniController.java create mode 100644 src/main/java/com/glxp/api/req/dev/DeviceCheckDetailMiniQuery.java create mode 100644 src/main/java/com/glxp/api/req/dev/DeviceRepairApplyDetailMiniQuery.java create mode 100644 src/main/java/com/glxp/api/res/dev/DeviceRepairApplyDetailMiniResponse.java diff --git a/src/main/java/com/glxp/api/controller/dev/DeviceMiniController.java b/src/main/java/com/glxp/api/controller/dev/DeviceMiniController.java new file mode 100644 index 000000000..d9f9bfc08 --- /dev/null +++ b/src/main/java/com/glxp/api/controller/dev/DeviceMiniController.java @@ -0,0 +1,68 @@ +package com.glxp.api.controller.dev; + + +import com.github.pagehelper.PageInfo; +import com.glxp.api.annotation.AuthRuleAnnotation; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.controller.BaseController; +import com.glxp.api.entity.dev.DeviceCheckDetailEntity; +import com.glxp.api.req.dev.*; +import com.glxp.api.res.PageSimpleResponse; +import com.glxp.api.res.dev.DeviceRepairApplyDetailMiniResponse; +import com.glxp.api.service.dev.DeviceCheckDetailService; +import com.glxp.api.service.dev.DeviceRepairApplyDetailService; +import groovy.util.logging.Slf4j; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.validation.Valid; +import java.util.List; + +@Slf4j +@RestController +@RequestMapping +@RequiredArgsConstructor +public class DeviceMiniController extends BaseController { + + private final DeviceRepairApplyDetailService deviceRepairApplyDetailService; + private final DeviceCheckDetailService deviceCheckDetailService; + + /** + * 获取明细报修单列表分页 + * + * @param query + * @return + */ + @AuthRuleAnnotation("") + @PostMapping("/udi/device/repair/apply/detail/mini/page") + public BaseResponse miniPage(@RequestBody @Valid DeviceRepairApplyDetailMiniQuery query) { + List list = deviceRepairApplyDetailService.miniPage(query); + PageInfo pageInfo = new PageInfo<>(list); + PageSimpleResponse page = new PageSimpleResponse(); + page.setTotal(pageInfo.getTotal()); + page.setList(pageInfo.getList()); + return ResultVOUtils.success(page); + } + + + /** + * 巡检任务单明细列表 + * + * @param query + * @return + */ + @AuthRuleAnnotation("") + @PostMapping("/udi/device/check/detail/mini/page") + public BaseResponse miniPage(@RequestBody @Valid DeviceCheckDetailMiniQuery query) { + List list = deviceCheckDetailService.miniPage(query); + PageInfo pageInfo = new PageInfo<>(list); + PageSimpleResponse page = new PageSimpleResponse(); + page.setTotal(pageInfo.getTotal()); + page.setList(pageInfo.getList()); + return ResultVOUtils.success(page); + } +} diff --git a/src/main/java/com/glxp/api/controller/dev/DeviceRepairApplyController.java b/src/main/java/com/glxp/api/controller/dev/DeviceRepairApplyController.java index e4be802c2..f50702d38 100644 --- a/src/main/java/com/glxp/api/controller/dev/DeviceRepairApplyController.java +++ b/src/main/java/com/glxp/api/controller/dev/DeviceRepairApplyController.java @@ -18,6 +18,7 @@ import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import java.util.ArrayList; import java.util.List; @Slf4j @@ -57,9 +58,15 @@ public class DeviceRepairApplyController extends BaseController { @PostMapping("/udi/device/repair/apply/hall/page") public BaseResponse adminPage(@RequestBody DeviceRepairApplyHallQuery query) { DeviceRepairApplyQuery applyQuery = new DeviceRepairApplyQuery(); - applyQuery.setStatus(DeviceRepairApplyStatusEnum.WAIT_PROCESS); - applyQuery.setApplyId(query.getApplyId()); - applyQuery.setApplyDeptCode(query.getApplyDeptCode()); + ArrayList statusEnums = new ArrayList<>(); + if (query.getIsFinish() == 1){ + statusEnums.add(DeviceRepairApplyStatusEnum.FINISH); + }else { + statusEnums.add(DeviceRepairApplyStatusEnum.WAIT_PROCESS); + statusEnums.add(DeviceRepairApplyStatusEnum.PROCESSING); + } + applyQuery.setStatuss(statusEnums); + BeanUtil.copyProperties(query,applyQuery); List list = deviceRepairApplyService.pageList(applyQuery); PageInfo pageInfo = new PageInfo<>(list); PageSimpleResponse page = new PageSimpleResponse(); diff --git a/src/main/java/com/glxp/api/dao/dev/DeviceRepairApplyDetailMapper.java b/src/main/java/com/glxp/api/dao/dev/DeviceRepairApplyDetailMapper.java index ee83b6b31..2f0070bc0 100644 --- a/src/main/java/com/glxp/api/dao/dev/DeviceRepairApplyDetailMapper.java +++ b/src/main/java/com/glxp/api/dao/dev/DeviceRepairApplyDetailMapper.java @@ -2,6 +2,11 @@ package com.glxp.api.dao.dev; import com.glxp.api.entity.dev.DeviceRepairApplyDetailEntity; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.glxp.api.req.dev.DeviceRepairApplyDetailMiniQuery; +import com.glxp.api.res.dev.DeviceRepairApplyDetailMiniResponse; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * @author Administrator @@ -11,6 +16,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface DeviceRepairApplyDetailMapper extends BaseMapper { + List miniPage(@Param("param") DeviceRepairApplyDetailMiniQuery query); } diff --git a/src/main/java/com/glxp/api/enums/dev/DeviceRepairApplyDetailStatusEnum.java b/src/main/java/com/glxp/api/enums/dev/DeviceRepairApplyDetailStatusEnum.java index 1b596ffa8..4f3e149de 100644 --- a/src/main/java/com/glxp/api/enums/dev/DeviceRepairApplyDetailStatusEnum.java +++ b/src/main/java/com/glxp/api/enums/dev/DeviceRepairApplyDetailStatusEnum.java @@ -11,10 +11,10 @@ import lombok.Getter; @AllArgsConstructor public enum DeviceRepairApplyDetailStatusEnum { - WAIT_DIAGNOSIS("wait_diagnosis", "待诊断"), + WAIT_DIAGNOSIS("wait_diagnosis", "待受理"), // WAIT_REPAIR("wait_repair", "待维修"), REPAIRING("repairing", "维修中"), - FINISH("finish", "完成"); + FINISH("finish", "已完成"); @EnumValue diff --git a/src/main/java/com/glxp/api/enums/dev/DeviceRepairApplyStatusEnum.java b/src/main/java/com/glxp/api/enums/dev/DeviceRepairApplyStatusEnum.java index 95bbea11f..2d898748a 100644 --- a/src/main/java/com/glxp/api/enums/dev/DeviceRepairApplyStatusEnum.java +++ b/src/main/java/com/glxp/api/enums/dev/DeviceRepairApplyStatusEnum.java @@ -11,10 +11,10 @@ import lombok.Getter; @AllArgsConstructor public enum DeviceRepairApplyStatusEnum { - WAIT_PROCESS("wait_process", "待受理"), - PROCESSING("processing", "受理中"), + WAIT_PROCESS("wait_process", "未受理"), + PROCESSING("processing", "部分受理"), // REPAIRING("repairing", "维修中"), - FINISH("finish", "完成"); + FINISH("finish", "已完成"); @EnumValue diff --git a/src/main/java/com/glxp/api/req/dev/DeviceCheckDetailMiniQuery.java b/src/main/java/com/glxp/api/req/dev/DeviceCheckDetailMiniQuery.java new file mode 100644 index 000000000..aef28b8c5 --- /dev/null +++ b/src/main/java/com/glxp/api/req/dev/DeviceCheckDetailMiniQuery.java @@ -0,0 +1,29 @@ +package com.glxp.api.req.dev; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +@Data +public class DeviceCheckDetailMiniQuery extends ListPageRequest { + + /** + * 部门编码 + */ + @NotBlank(message = "缺少部门编码") + private String deptCode; + + /** + * 模糊设备码和UDI + */ + private String deviceCodeAndUdi; + + /** + * 是否完成 + */ + private Boolean finishFlag; + + +} diff --git a/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailByDeptCodeQuery.java b/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailByDeptCodeQuery.java index 989d773ce..be65cbc2c 100644 --- a/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailByDeptCodeQuery.java +++ b/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailByDeptCodeQuery.java @@ -9,6 +9,13 @@ import javax.validation.constraints.NotNull; @Data public class DeviceInfoDetailByDeptCodeQuery extends ListPageRequest { + + + /** + * 模糊设备码和UDI + */ + private String deviceCodeAndUdi; + /** * 部门编码 */ diff --git a/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailQuery.java b/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailQuery.java index 202618519..08c0e85fc 100644 --- a/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailQuery.java +++ b/src/main/java/com/glxp/api/req/dev/DeviceInfoDetailQuery.java @@ -68,4 +68,7 @@ public class DeviceInfoDetailQuery extends ListPageRequest { private String zczbhhzbapzbh; + private String deviceCodeAndUdi; + + } diff --git a/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyDetailMiniQuery.java b/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyDetailMiniQuery.java new file mode 100644 index 000000000..9f376a832 --- /dev/null +++ b/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyDetailMiniQuery.java @@ -0,0 +1,28 @@ +package com.glxp.api.req.dev; + +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +@Data +public class DeviceRepairApplyDetailMiniQuery extends ListPageRequest { + + /** + * 部门编码 + */ + @NotBlank(message = "缺少部门编码") + private String deptCode; + + /** + * 模糊设备码和UDI + */ + private String deviceCodeAndUdi; + + /** + * 状态 待诊断、待维修、维修中、完成', + */ + private String status; + + +} diff --git a/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyHallQuery.java b/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyHallQuery.java index 9bf85f8a1..e08f0a304 100644 --- a/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyHallQuery.java +++ b/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyHallQuery.java @@ -14,4 +14,6 @@ public class DeviceRepairApplyHallQuery extends ListPageRequest { */ String applyDeptCode; + Integer isFinish; + } diff --git a/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyQuery.java b/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyQuery.java index 9e3d81ae5..fe06f5ac5 100644 --- a/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyQuery.java +++ b/src/main/java/com/glxp/api/req/dev/DeviceRepairApplyQuery.java @@ -4,6 +4,8 @@ import com.glxp.api.enums.dev.DeviceRepairApplyStatusEnum; import com.glxp.api.util.page.ListPageRequest; import lombok.Data; +import java.util.List; + @Data public class DeviceRepairApplyQuery extends ListPageRequest { @@ -33,4 +35,6 @@ public class DeviceRepairApplyQuery extends ListPageRequest { */ String repairInfo; + List statuss; + } diff --git a/src/main/java/com/glxp/api/res/dev/DeviceRepairApplyDetailMiniResponse.java b/src/main/java/com/glxp/api/res/dev/DeviceRepairApplyDetailMiniResponse.java new file mode 100644 index 000000000..435266928 --- /dev/null +++ b/src/main/java/com/glxp/api/res/dev/DeviceRepairApplyDetailMiniResponse.java @@ -0,0 +1,202 @@ +package com.glxp.api.res.dev; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.glxp.api.enums.dev.DeviceRepairApplyDetailStatusEnum; +import com.glxp.api.enums.dev.DeviceRepairApplyStatusEnum; +import lombok.Data; + +import java.time.LocalDateTime; + +@Data +public class DeviceRepairApplyDetailMiniResponse { + + /** + * 报修单id + */ + @TableField(value = "applyId") + private Long applyId; + + /** + * 设备编码 + */ + @TableField(value = "deviceCode") + private String deviceCode; + + /** + * 部门编码 + */ + @TableField(value = "deptCode") + private String deptCode; + + /** + * 部门名称 + */ + @TableField(value = "deptName") + private String deptName; + + /** + * 问题描述 + */ + @TableField(value = "description") + private String description; + + /** + * 诊断信息 + */ + @TableField(value = "diagnosisInfo") + private String diagnosisInfo; + + /** + * 状态 待诊断、待维修、维修中、完成 + */ + @TableField(value = "status") + private DeviceRepairApplyDetailStatusEnum status; + + /** + * 是否需要维修 true/false + */ + @TableField(value = "repairFlag") + private Boolean repairFlag; + + /** + * 维修单id + */ + @TableField(value = "repairId") + private Long repairId; + + /** + * 产品id + */ + @TableField(value = "productId") + private Long productId; + + /** + * UDI码 + */ + @TableField(value = "udi") + private String udi; + + /** + * DI码 + */ + @TableField(value = "nameCode") + private String nameCode; + + /** + * 产品名称 + */ + @TableField(value = "productName") + private String productName; + + /** + * 规格型号 + */ + @TableField(value = "ggxh") + private String ggxh; + + + + /** + * 报修单id + */ + @TableId(value = "id") + private Long id; + +// /** +// * 状态 待受理,受理中,维修中,完成 +// */ +// @TableField(value = "status") +// private DeviceRepairApplyStatusEnum status; + + /** + * 报修部门编码 + */ + @TableField(value = "applyDeptCode") + private String applyDeptCode; + + /** + * 报修部门 + */ + @TableField(value = "applyDeptName") + private String applyDeptName; + + /** + * 报修人id + */ + @TableField(value = "applyUserId") + private Long applyUserId; + + /** + * 报修人姓名 + */ + @TableField(value = "applyUserName") + private String applyUserName; + + /** + * 报修人联系方式 + */ + @TableField(value = "applyUserPhone") + private String applyUserPhone; + + /** + * 报修时间 + */ + @TableField(value = "applyTime") + private LocalDateTime applyTime; + + /** + * 设备数量 + */ + @TableField(value = "deviceCount") + private Integer deviceCount; + + /** + * 完成数量 + */ + @TableField(value = "finishCount") + private Integer finishCount; + + /** + * 确认部门 + */ + @TableField(value = "confirmDeptCode") + private String confirmDeptCode; + + /** + * 确认部门名称 + */ + @TableField(value = "confirmDeptName") + private String confirmDeptName; + + /** + * 确认人id + */ + @TableField(value = "confirmUserId") + private Long confirmUserId; + + /** + * 确认人姓名 + */ + @TableField(value = "confirmUserName") + private String confirmUserName; + + /** + * 确认人联系方式 + */ + @TableField(value = "confirmPhone") + private String confirmPhone; + + /** + * 确认时间 + */ + @TableField(value = "confirmTime") + private LocalDateTime confirmTime; + + /** + * 完成时间 + */ + @TableField(value = "finishTime") + private LocalDateTime finishTime; + +} diff --git a/src/main/java/com/glxp/api/service/dev/DeviceCheckDetailService.java b/src/main/java/com/glxp/api/service/dev/DeviceCheckDetailService.java index 482d72bc7..6d72c15a2 100644 --- a/src/main/java/com/glxp/api/service/dev/DeviceCheckDetailService.java +++ b/src/main/java/com/glxp/api/service/dev/DeviceCheckDetailService.java @@ -3,6 +3,7 @@ package com.glxp.api.service.dev; import com.glxp.api.entity.auth.AuthAdmin; import com.glxp.api.entity.dev.DeviceCheckDetailEntity; import com.baomidou.mybatisplus.extension.service.IService; +import com.glxp.api.req.dev.DeviceCheckDetailMiniQuery; import com.glxp.api.req.dev.DeviceCheckDetailParam; import com.glxp.api.req.dev.DeviceCheckDetailQuery; import com.glxp.api.req.dev.DeviceCheckDetailRepairParam; @@ -32,4 +33,5 @@ public interface DeviceCheckDetailService extends IService miniPage(DeviceCheckDetailMiniQuery query); } diff --git a/src/main/java/com/glxp/api/service/dev/DeviceRepairApplyDetailService.java b/src/main/java/com/glxp/api/service/dev/DeviceRepairApplyDetailService.java index b36f46949..b180fdbf1 100644 --- a/src/main/java/com/glxp/api/service/dev/DeviceRepairApplyDetailService.java +++ b/src/main/java/com/glxp/api/service/dev/DeviceRepairApplyDetailService.java @@ -5,8 +5,10 @@ import com.glxp.api.entity.dev.DeviceRepairApplyDetailEntity; import com.baomidou.mybatisplus.extension.service.IService; import com.glxp.api.entity.dev.DeviceRepairApplyEntity; import com.glxp.api.req.dev.DeviceRepairApplyDetailDiagnosisParam; +import com.glxp.api.req.dev.DeviceRepairApplyDetailMiniQuery; import com.glxp.api.req.dev.DeviceRepairApplyDetailQuery; import com.glxp.api.req.dev.DeviceRepairApplyListByIdAndCodeQuery; +import com.glxp.api.res.dev.DeviceRepairApplyDetailMiniResponse; import java.util.List; @@ -34,4 +36,6 @@ public interface DeviceRepairApplyDetailService extends IService miniPage(DeviceRepairApplyDetailMiniQuery query); } diff --git a/src/main/java/com/glxp/api/service/dev/impl/DeviceCheckDetailServiceImpl.java b/src/main/java/com/glxp/api/service/dev/impl/DeviceCheckDetailServiceImpl.java index af747b341..40d39091d 100644 --- a/src/main/java/com/glxp/api/service/dev/impl/DeviceCheckDetailServiceImpl.java +++ b/src/main/java/com/glxp/api/service/dev/impl/DeviceCheckDetailServiceImpl.java @@ -3,6 +3,8 @@ package com.glxp.api.service.dev.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.github.pagehelper.PageHelper; @@ -12,10 +14,7 @@ import com.glxp.api.entity.dev.DeviceCheckDetailItemEntity; import com.glxp.api.entity.dev.DeviceRepairEntity; import com.glxp.api.enums.dev.DeviceStatusEnum; import com.glxp.api.exception.JsonException; -import com.glxp.api.req.dev.DeviceCheckDetailItemFinishParam; -import com.glxp.api.req.dev.DeviceCheckDetailParam; -import com.glxp.api.req.dev.DeviceCheckDetailQuery; -import com.glxp.api.req.dev.DeviceCheckDetailRepairParam; +import com.glxp.api.req.dev.*; import com.glxp.api.service.dev.*; import com.glxp.api.dao.dev.DeviceCheckDetailMapper; import com.glxp.api.util.IntUtil; @@ -145,6 +144,26 @@ public class DeviceCheckDetailServiceImpl extends ServiceImpl miniPage(DeviceCheckDetailMiniQuery query) { + if (query.getPage() != null) { + PageHelper.startPage(query.getPage(), query.getLimit()); + } + LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(DeviceCheckDetailEntity.class) + .eq(DeviceCheckDetailEntity::getDeptCode, query.getDeptCode()); + if (StrUtil.isNotBlank(query.getDeviceCodeAndUdi())) { + queryWrapper.and(qW -> { + qW.like(DeviceCheckDetailEntity::getDeviceCode, query.getDeviceCodeAndUdi()) + .or().like(DeviceCheckDetailEntity::getUdi, query.getDeviceCodeAndUdi()); + }); + } + if (query.getFinishFlag() != null) { + queryWrapper.eq(DeviceCheckDetailEntity::getFinishFlag, query.getFinishFlag()); + } + List list = super.list(queryWrapper); + return list; + } } diff --git a/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairApplyDetailServiceImpl.java b/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairApplyDetailServiceImpl.java index 919336a5f..13c5762c5 100644 --- a/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairApplyDetailServiceImpl.java +++ b/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairApplyDetailServiceImpl.java @@ -1,6 +1,9 @@ package com.glxp.api.service.dev.impl; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.BeanUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -15,8 +18,10 @@ import com.glxp.api.enums.dev.DeviceRepairApplyStatusEnum; import com.glxp.api.enums.dev.DeviceStatusEnum; import com.glxp.api.exception.JsonException; import com.glxp.api.req.dev.DeviceRepairApplyDetailDiagnosisParam; +import com.glxp.api.req.dev.DeviceRepairApplyDetailMiniQuery; import com.glxp.api.req.dev.DeviceRepairApplyDetailQuery; import com.glxp.api.req.dev.DeviceRepairApplyListByIdAndCodeQuery; +import com.glxp.api.res.dev.DeviceRepairApplyDetailMiniResponse; import com.glxp.api.service.dev.*; import com.glxp.api.dao.dev.DeviceRepairApplyDetailMapper; import com.glxp.api.util.SnowflakeUtil; @@ -44,6 +49,8 @@ public class DeviceRepairApplyDetailServiceImpl extends ServiceImpl list = super.list(Wrappers.lambdaQuery(DeviceRepairApplyDetailEntity.class) + .eq(DeviceRepairApplyDetailEntity::getApplyId, applyId) + .eq(DeviceRepairApplyDetailEntity::getStatus, DeviceRepairApplyDetailStatusEnum.WAIT_DIAGNOSIS)); + if (CollectionUtil.isNotEmpty(list)){ + deviceRepairApplyService.update(Wrappers.lambdaUpdate(DeviceRepairApplyEntity.class) + .set(DeviceRepairApplyEntity::getStatus, DeviceRepairApplyStatusEnum.PROCESSING) + .eq(DeviceRepairApplyEntity::getId, applyId)); + }else { + deviceRepairApplyService.update(Wrappers.lambdaUpdate(DeviceRepairApplyEntity.class) + .set(DeviceRepairApplyEntity::getStatus, DeviceRepairApplyStatusEnum.FINISH) + .eq(DeviceRepairApplyEntity::getId, applyId)); + } } @Override @@ -162,6 +193,14 @@ public class DeviceRepairApplyDetailServiceImpl extends ServiceImpl miniPage(DeviceRepairApplyDetailMiniQuery query) { + if (query.getPage() != null) { + PageHelper.startPage(query.getPage(), query.getLimit()); + } + return super.baseMapper.miniPage(query); + } } diff --git a/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairApplyServiceImpl.java b/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairApplyServiceImpl.java index 0d6f90e14..598633af0 100644 --- a/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairApplyServiceImpl.java +++ b/src/main/java/com/glxp/api/service/dev/impl/DeviceRepairApplyServiceImpl.java @@ -1,5 +1,6 @@ package com.glxp.api.service.dev.impl; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.StringUtils; @@ -28,6 +29,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.time.LocalDateTime; import java.util.List; +import java.util.stream.Collectors; /** * 针对表【device_repair_apply(设备报修单)】的数据库操作Service实现 @@ -49,14 +51,18 @@ public class DeviceRepairApplyServiceImpl extends ServiceImpl pageList(DeviceRepairApplyQuery query) { - String acceptInfo = query.getAcceptInfo(); - String repairInfo = query.getRepairInfo(); if (query.getPage() != null) { PageHelper.startPage(query.getPage(), query.getLimit()); } + List statuss = query.getStatuss(); + DeviceRepairApplyStatusEnum status = query.getStatus(); + if (status != null){ + statuss.add(status); + } + String acceptInfo = query.getAcceptInfo(); + String repairInfo = query.getRepairInfo(); LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(DeviceRepairApplyEntity.class); wrapper.eq(query.getApplyId() != null, DeviceRepairApplyEntity::getId, query.getApplyId()) - .eq(query.getStatus() != null, DeviceRepairApplyEntity::getStatus, query.getStatus()) .eq(query.getConfirmUserId() != null, DeviceRepairApplyEntity::getConfirmUserId, query.getConfirmUserId()) .eq(StrUtil.isNotBlank(query.getApplyDeptCode()), DeviceRepairApplyEntity::getApplyDeptCode, query.getApplyDeptCode()) .orderByDesc(DeviceRepairApplyEntity::getStatus, DeviceRepairApplyEntity::getApplyTime); @@ -84,6 +90,12 @@ public class DeviceRepairApplyServiceImpl extends ServiceImpl statusValues = statuss.stream() + .map(DeviceRepairApplyStatusEnum::getKey) // 假设 getStatusValue() 是获取用于查询的字符串值的方法 + .collect(Collectors.toList()); + wrapper.in(DeviceRepairApplyEntity::getStatus, statusValues); + } List list = super.list(wrapper); return list; diff --git a/src/main/resources/mybatis/mapper/dev/DeviceInfoMapper.xml b/src/main/resources/mybatis/mapper/dev/DeviceInfoMapper.xml index a488af12c..ed3c4393a 100644 --- a/src/main/resources/mybatis/mapper/dev/DeviceInfoMapper.xml +++ b/src/main/resources/mybatis/mapper/dev/DeviceInfoMapper.xml @@ -86,6 +86,13 @@ and info.productName like concat('%',#{param.productName},'%') + + and ( + info.deviceCode like concat('%',#{param.deviceCodeAndUdi},'%') + or + info.udi like concat('%',#{param.deviceCodeAndUdi},'%') + ) + and info.status != 'destroy' and info.deviceCode not in ( select deviceCode from device_plan_detail where planId = #{param.planId} ) diff --git a/src/main/resources/mybatis/mapper/dev/DeviceRepairApplyDetailMapper.xml b/src/main/resources/mybatis/mapper/dev/DeviceRepairApplyDetailMapper.xml index e4a3bc21e..f320e7d3b 100644 --- a/src/main/resources/mybatis/mapper/dev/DeviceRepairApplyDetailMapper.xml +++ b/src/main/resources/mybatis/mapper/dev/DeviceRepairApplyDetailMapper.xml @@ -44,4 +44,68 @@ supName,confirmUserId,confirmUserName, confirmTime,confirmRemark + + +