From 8acd4fa0fff77a998ba55d411d64d59d1686df81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Fri, 24 Apr 2026 17:49:38 +0800 Subject: [PATCH] =?UTF-8?q?feat(qms):=20=E5=A2=9E=E5=8A=A0=E6=9D=A5?= =?UTF-8?q?=E6=96=99=E6=A3=80=E9=AA=8C=E4=BB=BB=E5=8A=A1=E4=B8=8D=E5=90=88?= =?UTF-8?q?=E6=A0=BC=E7=AE=A1=E7=90=86=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增QmsIncomingInspectionTaskNonconformance实体及数据库映射 - 添加来料检验任务不合格管理分页查询接口及实现 - 引入不合格管理查询条件支持多维度筛选 - 新建不合格管理Mapper及对应XML配置,实现复杂查询 - 扩展VO层,增加不合格管理相关字段展示 - 新增REST Controller,支持不合格管理数据分页查询 - 新增来料检验任务查询功能完善及关联字段扩展 --- ...nspectionTaskNonconformanceController.java | 33 ++++ ...gInspectionTaskNonconformanceSearchQO.java | 104 ++++++++++ .../qo/QmsIncomingInspectionTaskSearchQO.java | 5 + ...ncomingInspectionTaskNonconformanceVO.java | 177 ++++++++++++++++++ ...sIncomingInspectionTaskNonconformance.java | 73 ++++++++ ...ingInspectionTaskNonconformanceMapper.java | 19 ++ ...ngInspectionTaskNonconformanceService.java | 18 ++ ...spectionTaskNonconformanceServiceImpl.java | 23 +++ .../QmsIncomingInspectionTaskMapper.xml | 9 +- ...mingInspectionTaskNonconformanceMapper.xml | 106 +++++++++++ 10 files changed, 565 insertions(+), 2 deletions(-) create mode 100644 nflg-qms-admin/src/main/java/com/nflg/qms/admin/controller/QmsIncomingInspectionTaskNonconformanceController.java create mode 100644 nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/QmsIncomingInspectionTaskNonconformanceSearchQO.java create mode 100644 nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/QmsIncomingInspectionTaskNonconformanceVO.java create mode 100644 nflg-wms-repository/src/main/java/com/nflg/wms/repository/entity/QmsIncomingInspectionTaskNonconformance.java create mode 100644 nflg-wms-repository/src/main/java/com/nflg/wms/repository/mapper/QmsIncomingInspectionTaskNonconformanceMapper.java create mode 100644 nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/IQmsIncomingInspectionTaskNonconformanceService.java create mode 100644 nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsIncomingInspectionTaskNonconformanceServiceImpl.java create mode 100644 nflg-wms-repository/src/main/resources/mapper/QmsIncomingInspectionTaskNonconformanceMapper.xml diff --git a/nflg-qms-admin/src/main/java/com/nflg/qms/admin/controller/QmsIncomingInspectionTaskNonconformanceController.java b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/controller/QmsIncomingInspectionTaskNonconformanceController.java new file mode 100644 index 00000000..f28fc347 --- /dev/null +++ b/nflg-qms-admin/src/main/java/com/nflg/qms/admin/controller/QmsIncomingInspectionTaskNonconformanceController.java @@ -0,0 +1,33 @@ +package com.nflg.qms.admin.controller; + +import com.nflg.wms.common.pojo.ApiResult; +import com.nflg.wms.common.pojo.PageData; +import com.nflg.wms.common.pojo.qo.QmsIncomingInspectionTaskNonconformanceSearchQO; +import com.nflg.wms.common.pojo.vo.QmsIncomingInspectionTaskNonconformanceVO; +import com.nflg.wms.repository.service.IQmsIncomingInspectionTaskNonconformanceService; +import com.nflg.wms.starter.BaseController; +import jakarta.annotation.Resource; +import jakarta.validation.Valid; +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; + +/** + * 来料检验任务不合格管理 + */ +@RestController +@RequestMapping("/incoming-inspection-task-nonconformance") +public class QmsIncomingInspectionTaskNonconformanceController extends BaseController { + + @Resource + private IQmsIncomingInspectionTaskNonconformanceService nonconformanceService; + + /** + * 分页查询来料检验任务不合格管理列表 + */ + @PostMapping("search") + public ApiResult> search(@Valid @RequestBody QmsIncomingInspectionTaskNonconformanceSearchQO request) { + return ApiResult.success(nonconformanceService.search(request)); + } +} diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/QmsIncomingInspectionTaskNonconformanceSearchQO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/QmsIncomingInspectionTaskNonconformanceSearchQO.java new file mode 100644 index 00000000..fd8e7e41 --- /dev/null +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/QmsIncomingInspectionTaskNonconformanceSearchQO.java @@ -0,0 +1,104 @@ +package com.nflg.wms.common.pojo.qo; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.time.LocalDate; + +/** + * 来料检验任务不合格管理 - 分页查询QO + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class QmsIncomingInspectionTaskNonconformanceSearchQO extends PageQO { + + /** + * 类型,0:来料;1:盘库 + */ + private Integer dataType; + + /** + * 物料编码(模糊匹配) + */ + private String materialNo; + + /** + * 采购单号(模糊匹配) + */ + private String purchaseOrderNo; + + /** + * 供应商名称(模糊匹配) + */ + private String supplierName; + + /** + * 检验人姓名(模糊匹配) + */ + private String inspectorName; + + /** + * 检验状态:0=待检,1=检验中,2=已检 + */ + private Short inspectionStatus; + + /** + * 所属工厂 + */ + private String factory; + + /** + * 所属仓库 + */ + private String warehouse; + + /** + * 送货单号(模糊匹配) + */ + private String deliveryOrderNo; + + /** + * 检验结果:true=合格,false=不合格 + */ + private Boolean inspectionResult; + + /** + * 是否超期:true=超期,false=未超期 + */ + private Boolean isOverdue; + + /** + * 送检日期开始 + */ + private LocalDate submitStartDate; + + /** + * 送检日期结束 + */ + private LocalDate submitEndDate; + + /** + * 检验开始日期开始(检验开始时间) + */ + private LocalDate inspectionBeginStartDate; + + /** + * 检验开始日期结束(检验开始时间) + */ + private LocalDate inspectionBeginEndDate; + + /** + * 检测日期开始(检验完成时间) + */ + private LocalDate inspectionStartDate; + + /** + * 检测日期结束(检验完成时间) + */ + private LocalDate inspectionEndDate; + + /** + * 不合格处理状态:0=待办,1=处理中,2=处理完成 + */ + private Short nonconformanceStatus; +} diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/QmsIncomingInspectionTaskSearchQO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/QmsIncomingInspectionTaskSearchQO.java index f8939d73..9e34a0de 100644 --- a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/QmsIncomingInspectionTaskSearchQO.java +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/qo/QmsIncomingInspectionTaskSearchQO.java @@ -47,6 +47,11 @@ public class QmsIncomingInspectionTaskSearchQO extends PageQO { */ private String factory; + /** + * 所属仓库 + */ + private String warehouse; + /** * 送货单号(模糊匹配) */ diff --git a/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/QmsIncomingInspectionTaskNonconformanceVO.java b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/QmsIncomingInspectionTaskNonconformanceVO.java new file mode 100644 index 00000000..27100e78 --- /dev/null +++ b/nflg-wms-common/src/main/java/com/nflg/wms/common/pojo/vo/QmsIncomingInspectionTaskNonconformanceVO.java @@ -0,0 +1,177 @@ +package com.nflg.wms.common.pojo.vo; + +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * 来料检验任务不合格管理 - 查询VO + */ +@Data +public class QmsIncomingInspectionTaskNonconformanceVO { + + /** + * 不合格管理记录ID + */ + private Long id; + + /** + * 来料检验任务ID + */ + private Long taskId; + + /** + * 检测单号 + */ + private String taskNo; + + /** + * 物料id + */ + private Long materialId; + + /** + * 物料编码 + */ + private String materialNo; + + /** + * 物料描述 + */ + private String materialDesc; + + /** + * 图号版本号 + */ + private String drawingNoVer; + + /** + * 供应商编号 + */ + private String supplierCode; + + /** + * 供应商名称 + */ + private String supplierName; + + /** + * 送货单号 + */ + private String deliveryOrderNo; + + /** + * 送货单行号 + */ + private String deliveryOrderLine; + + /** + * 采购单号 + */ + private String purchaseOrderNo; + + /** + * 采购单行号 + */ + private String purchaseOrderLine; + + /** + * 所属工厂 + */ + private String factory; + + /** + * 检测类型,0:来料检测;1:盘库检测 + */ + private Integer inspectionType; + + /** + * 检验数量 + */ + private Integer inspectionQty; + + /** + * 合格数量 + */ + private Integer qualifiedQty; + + /** + * 不合格数量 + */ + private Integer unqualifiedQty; + + /** + * 检验状态:0=待检,1=检验中,2=已检 + */ + private Short inspectionStatus; + + /** + * 检验结果:true=合格,false=不合格 + */ + private Boolean inspectionResult; + + /** + * 检验人id + */ + private Long inspectorId; + + /** + * 检验人姓名 + */ + private String inspectorName; + + /** + * 送检时间 + */ + private LocalDateTime submitTime; + + /** + * 检验开始时间 + */ + private LocalDateTime inspectionStartTime; + + /** + * 检验完成时间 + */ + private LocalDateTime inspectionFinishTime; + + /** + * 要求完成时间 + */ + private LocalDateTime requiredFinishTime; + + /** + * 是否超期:true=超期,false=未超期 + */ + private Boolean isOverdue; + + /** + * 不合格处理状态:0=待办,1=处理中,2=处理完成 + */ + private Short nonconformanceStatus; + + /** + * 不合格处理状态名称 + */ + private String nonconformanceStatusName; + + /** + * 不合格记录创建人ID + */ + private Long nonconformanceCreateUserId; + + /** + * 不合格记录创建人姓名 + */ + private String nonconformanceCreateUserName; + + /** + * 不合格记录创建时间 + */ + private LocalDateTime nonconformanceCreateTime; + + /** + * 不合格记录更新时间 + */ + private LocalDateTime nonconformanceUpdateTime; +} diff --git a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/entity/QmsIncomingInspectionTaskNonconformance.java b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/entity/QmsIncomingInspectionTaskNonconformance.java new file mode 100644 index 00000000..17b1a1c7 --- /dev/null +++ b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/entity/QmsIncomingInspectionTaskNonconformance.java @@ -0,0 +1,73 @@ +package com.nflg.wms.repository.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Getter; +import lombok.Setter; +import lombok.ToString; +import lombok.experimental.Accessors; + +import java.io.Serializable; +import java.time.LocalDateTime; + +/** + *

+ * 来料检验任务不合格管理表 + *

+ * + * @author 代码生成器生成 + * @since 2026 + */ +@Getter +@Setter +@ToString +@Accessors(chain = true) +@TableName("qms_incoming_inspection_task_nonconformance") +public class QmsIncomingInspectionTaskNonconformance implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "id", type = IdType.ASSIGN_ID) + private Long id; + + /** + * 来料检验任务ID,关联 qms_incoming_inspection_task 表 + */ + private Long taskId; + + /** + * 处理状态:0=待办,1=处理中,2=处理完成 + */ + private Short status; + + /** + * 创建人ID + */ + private Long createUserId; + + /** + * 创建人姓名 + */ + private String createUserName; + + /** + * 创建时间 + */ + private LocalDateTime createTime; + + /** + * 更新人ID + */ + private Long updateUserId; + + /** + * 更新人姓名 + */ + private String updateUserName; + + /** + * 更新时间 + */ + private LocalDateTime updateTime; +} diff --git a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/mapper/QmsIncomingInspectionTaskNonconformanceMapper.java b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/mapper/QmsIncomingInspectionTaskNonconformanceMapper.java new file mode 100644 index 00000000..b24b2d6b --- /dev/null +++ b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/mapper/QmsIncomingInspectionTaskNonconformanceMapper.java @@ -0,0 +1,19 @@ +package com.nflg.wms.repository.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.nflg.wms.common.pojo.qo.QmsIncomingInspectionTaskNonconformanceSearchQO; +import com.nflg.wms.common.pojo.vo.QmsIncomingInspectionTaskNonconformanceVO; +import com.nflg.wms.repository.entity.QmsIncomingInspectionTaskNonconformance; + +/** + * 来料检验任务不合格管理 Mapper + */ +public interface QmsIncomingInspectionTaskNonconformanceMapper extends BaseMapper { + + /** + * 分页查询来料检验任务不合格管理列表 + */ + IPage search(QmsIncomingInspectionTaskNonconformanceSearchQO request, Page page); +} diff --git a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/IQmsIncomingInspectionTaskNonconformanceService.java b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/IQmsIncomingInspectionTaskNonconformanceService.java new file mode 100644 index 00000000..bb4f909f --- /dev/null +++ b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/IQmsIncomingInspectionTaskNonconformanceService.java @@ -0,0 +1,18 @@ +package com.nflg.wms.repository.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; +import com.nflg.wms.common.pojo.qo.QmsIncomingInspectionTaskNonconformanceSearchQO; +import com.nflg.wms.common.pojo.vo.QmsIncomingInspectionTaskNonconformanceVO; +import com.nflg.wms.repository.entity.QmsIncomingInspectionTaskNonconformance; + +/** + * 来料检验任务不合格管理 Service 接口 + */ +public interface IQmsIncomingInspectionTaskNonconformanceService extends IService { + + /** + * 分页查询来料检验任务不合格管理列表 + */ + IPage search(QmsIncomingInspectionTaskNonconformanceSearchQO request); +} diff --git a/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsIncomingInspectionTaskNonconformanceServiceImpl.java b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsIncomingInspectionTaskNonconformanceServiceImpl.java new file mode 100644 index 00000000..b2fa905c --- /dev/null +++ b/nflg-wms-repository/src/main/java/com/nflg/wms/repository/service/impl/QmsIncomingInspectionTaskNonconformanceServiceImpl.java @@ -0,0 +1,23 @@ +package com.nflg.wms.repository.service.impl; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.nflg.wms.common.pojo.qo.QmsIncomingInspectionTaskNonconformanceSearchQO; +import com.nflg.wms.common.pojo.vo.QmsIncomingInspectionTaskNonconformanceVO; +import com.nflg.wms.repository.entity.QmsIncomingInspectionTaskNonconformance; +import com.nflg.wms.repository.mapper.QmsIncomingInspectionTaskNonconformanceMapper; +import com.nflg.wms.repository.service.IQmsIncomingInspectionTaskNonconformanceService; +import org.springframework.stereotype.Service; + +/** + * 来料检验任务不合格管理 Service 实现类 + */ +@Service +public class QmsIncomingInspectionTaskNonconformanceServiceImpl extends ServiceImpl implements IQmsIncomingInspectionTaskNonconformanceService { + + @Override + public IPage search(QmsIncomingInspectionTaskNonconformanceSearchQO request) { + return baseMapper.search(request, new Page<>(request.getPage(), request.getPageSize())); + } +} diff --git a/nflg-wms-repository/src/main/resources/mapper/QmsIncomingInspectionTaskMapper.xml b/nflg-wms-repository/src/main/resources/mapper/QmsIncomingInspectionTaskMapper.xml index 3ada2fdd..6b59f803 100644 --- a/nflg-wms-repository/src/main/resources/mapper/QmsIncomingInspectionTaskMapper.xml +++ b/nflg-wms-repository/src/main/resources/mapper/QmsIncomingInspectionTaskMapper.xml @@ -63,6 +63,9 @@ AND t.factory = #{request.factory} + + AND t.warehouse = #{request.warehouse} + AND t.delivery_order_no ilike concat('%', #{request.deliveryOrderNo}, '%') @@ -126,13 +129,14 @@ t.inspection_finish_time, t.required_finish_time, t.is_overdue, - t.related_task_no, + t2.task_no as related_task_no, t.update_user_id, t.update_user_name, t.update_time FROM qms_incoming_inspection_task t LEFT JOIN qms_qc_material m ON t.material_id = m.id LEFT JOIN qms_inspection_standard s ON t.inspection_standard_id = s.id + LEFT JOIN qms_incoming_inspection_task t2 ON t.related_task_id = t2.id @@ -197,13 +201,14 @@ t.inspection_finish_time, t.required_finish_time, t.is_overdue, - t.related_task_no, + t2.task_no as related_task_no, t.update_user_id, t.update_user_name, t.update_time FROM qms_incoming_inspection_task t LEFT JOIN qms_qc_material m ON t.material_id = m.id LEFT JOIN qms_inspection_standard s ON t.inspection_standard_id = s.id + LEFT JOIN qms_incoming_inspection_task t2 ON t.related_task_id = t2.id WHERE t.id = #{id} diff --git a/nflg-wms-repository/src/main/resources/mapper/QmsIncomingInspectionTaskNonconformanceMapper.xml b/nflg-wms-repository/src/main/resources/mapper/QmsIncomingInspectionTaskNonconformanceMapper.xml new file mode 100644 index 00000000..60472d3a --- /dev/null +++ b/nflg-wms-repository/src/main/resources/mapper/QmsIncomingInspectionTaskNonconformanceMapper.xml @@ -0,0 +1,106 @@ + + + + + + +