From dde6b22ac257f6d432d9e38f80a0df77f9eb157a Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期二, 26 五月 2026 16:18:10 +0800
Subject: [PATCH] 军歌化工不合格台账

---
 src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedOrderServiceImpl.java |   31 +++++
 src/main/java/com/ruoyi/quality/mapper/QualityUnqualifiedOrderMapper.java            |   24 ++++
 src/main/java/com/ruoyi/quality/service/QualityUnqualifiedOrderService.java          |   21 +++
 src/main/resources/mapper/quality/QualityUnqualifiedOrderMapper.xml                  |   58 +++++++++
 src/main/java/com/ruoyi/quality/dto/QualityUnqualifiedOrderDto.java                  |    8 +
 src/main/java/com/ruoyi/quality/pojo/QualityUnqualifiedOrder.java                    |  142 +++++++++++++++++++++++
 src/main/java/com/ruoyi/quality/controller/QualityUnqualifiedOrderController.java    |   54 +++++++++
 7 files changed, 338 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/ruoyi/quality/controller/QualityUnqualifiedOrderController.java b/src/main/java/com/ruoyi/quality/controller/QualityUnqualifiedOrderController.java
new file mode 100644
index 0000000..7db5273
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/controller/QualityUnqualifiedOrderController.java
@@ -0,0 +1,54 @@
+package com.ruoyi.quality.controller;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.framework.web.domain.R;
+import com.ruoyi.quality.dto.QualityUnqualifiedOrderDto;
+import com.ruoyi.quality.service.QualityUnqualifiedOrderService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 鍐涙瓕鍖栧伐涓嶅悎鏍煎搧澶勭悊鍗� 鍓嶇鎺у埗鍣�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-05-26 11:42:49
+ */
+@RestController
+@RequestMapping("/qualityUnqualifiedOrder")
+@Api(tags = "鍐涙瓕鍖栧伐涓嶅悎鏍煎搧澶勭悊鍗�")
+@AllArgsConstructor
+public class QualityUnqualifiedOrderController {
+
+    private final QualityUnqualifiedOrderService qualityUnqualifiedOrderService;
+
+
+    @GetMapping("/listPage")
+    @ApiOperation(value = "鍒嗛〉鏌ヨ涓嶅悎鏍煎搧澶勭悊鍗曞垪琛�")
+    public R listPage(Page page, QualityUnqualifiedOrderDto qualityUnqualifiedOrder) {
+        return R.ok(qualityUnqualifiedOrderService.listPage(page, qualityUnqualifiedOrder));
+    }
+
+    @PostMapping("/save")
+    @ApiOperation(value = "淇濆瓨涓嶅悎鏍煎搧澶勭悊鍗�")
+    public R save(@RequestBody QualityUnqualifiedOrderDto qualityUnqualifiedOrder) {
+        return R.ok(qualityUnqualifiedOrderService.save(qualityUnqualifiedOrder));
+    }
+
+    @PutMapping("/update")
+    @ApiOperation(value = "鏇存柊涓嶅悎鏍煎搧澶勭悊鍗�")
+    public R update(@RequestBody QualityUnqualifiedOrderDto qualityUnqualifiedOrder) {
+        return R.ok(qualityUnqualifiedOrderService.updateById(qualityUnqualifiedOrder));
+    }
+
+    @DeleteMapping("/delete")
+    @ApiOperation(value = "鍒犻櫎涓嶅悎鏍煎搧澶勭悊鍗�")
+    public R delete (@RequestBody List<Long> ids) {
+        return R.ok(qualityUnqualifiedOrderService.removeByIds(ids));
+    }
+}
diff --git a/src/main/java/com/ruoyi/quality/dto/QualityUnqualifiedOrderDto.java b/src/main/java/com/ruoyi/quality/dto/QualityUnqualifiedOrderDto.java
new file mode 100644
index 0000000..99f1eae
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/dto/QualityUnqualifiedOrderDto.java
@@ -0,0 +1,8 @@
+package com.ruoyi.quality.dto;
+
+import com.ruoyi.quality.pojo.QualityUnqualifiedOrder;
+import lombok.Data;
+
+@Data
+public class QualityUnqualifiedOrderDto extends QualityUnqualifiedOrder {
+}
diff --git a/src/main/java/com/ruoyi/quality/mapper/QualityUnqualifiedOrderMapper.java b/src/main/java/com/ruoyi/quality/mapper/QualityUnqualifiedOrderMapper.java
new file mode 100644
index 0000000..41c19a7
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/mapper/QualityUnqualifiedOrderMapper.java
@@ -0,0 +1,24 @@
+package com.ruoyi.quality.mapper;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.quality.dto.QualityUnqualifiedOrderDto;
+import com.ruoyi.quality.pojo.QualityUnqualifiedOrder;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * <p>
+ * 鍐涙瓕鍖栧伐涓嶅悎鏍煎搧澶勭悊鍗� Mapper 鎺ュ彛
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-05-26 11:42:49
+ */
+@Mapper
+public interface QualityUnqualifiedOrderMapper extends BaseMapper<QualityUnqualifiedOrder> {
+
+    IPage<QualityUnqualifiedOrderDto> listPage(Page page,@Param("ew") QualityUnqualifiedOrderDto qualityUnqualifiedOrder);
+
+}
diff --git a/src/main/java/com/ruoyi/quality/pojo/QualityUnqualifiedOrder.java b/src/main/java/com/ruoyi/quality/pojo/QualityUnqualifiedOrder.java
new file mode 100644
index 0000000..722471e
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/pojo/QualityUnqualifiedOrder.java
@@ -0,0 +1,142 @@
+package com.ruoyi.quality.pojo;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 鍐涙瓕鍖栧伐涓嶅悎鏍煎搧澶勭悊鍗�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-05-26 11:42:49
+ */
+@Getter
+@Setter
+@TableName("quality_unqualified_order")
+@ApiModel(value = "QualityUnqualifiedOrder瀵硅薄", description = "鍐涙瓕鍖栧伐涓嶅悎鏍煎搧澶勭悊鍗�")
+public class QualityUnqualifiedOrder implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty("涓婚敭ID")
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    @ApiModelProperty("澶勭悊鍗曠紪鍙�")
+    private String orderNo;
+
+    @ApiModelProperty("鍏宠仈涓嶅悎鏍艰褰旾D")
+    private Long unqualifiedId;
+
+    @ApiModelProperty("椤圭洰鍚嶇О")
+    private String projectName;
+
+    @ApiModelProperty("椤圭洰缂栧彿")
+    private String projectNo;
+
+    @ApiModelProperty("鍏宠仈璁惧ID")
+    private Long equipmentId;
+
+    @ApiModelProperty("璁惧鍚嶇О")
+    private String equipmentName;
+
+    @ApiModelProperty("璁惧鍥惧彿")
+    private String equipmentDrawingNo;
+
+    @ApiModelProperty("鐗╂枡/閮ㄤ欢鍚嶇О")
+    private String materialName;
+
+    @ApiModelProperty("鐗╂枡鍥惧彿")
+    private String materialDrawingNo;
+
+    @ApiModelProperty("鍨嬪彿瑙勬牸")
+    private String specificationModel;
+
+    @ApiModelProperty("鏉愯川")
+    private String materialQuality;
+
+    @ApiModelProperty("鏁伴噺")
+    private BigDecimal quantity;
+
+    @ApiModelProperty("涓嶅悎鏍兼暟閲�")
+    private BigDecimal unqualifiedQuantity;
+
+    @ApiModelProperty("涓嶅悎鏍煎伐搴�:1鏉ユ枡 2鍒剁▼ 3鎴愬搧")
+    private Byte unqualifiedProcess;
+
+    @ApiModelProperty("渚涘簲鍟嗗悕绉�")
+    private String supplierName;
+
+    @ApiModelProperty("妫�楠屽憳")
+    private String inspectorName;
+
+    @ApiModelProperty("妫�楠屾棩鏈�")
+    private LocalDate inspectDate;
+
+    @ApiModelProperty("璐d换浜�")
+    private String responsiblePerson;
+
+    @ApiModelProperty("璐d换閮ㄩ棬")
+    private String responsibleDept;
+
+    @ApiModelProperty("闂鎻忚堪")
+    private String problemDescription;
+
+    @ApiModelProperty("鍘熷洜鍒嗘瀽鍙婂缓璁�")
+    private String reasonAnalysis;
+
+    @ApiModelProperty("绾犳鎺柦")
+    private String correctionAction;
+
+    @ApiModelProperty("澶勭疆鏂瑰紡:1璁╂鎺ユ敹 2鍘傚唴缁翠慨 3杩斿巶缁翠慨 4鎹㈣揣 5閫�璐� 6鎶ュ簾")
+    private Byte disposalMethod;
+
+    @ApiModelProperty("鍘傚唴/杩斿巶缁翠慨璇勪及")
+    private String repairEvaluation;
+
+    @ApiModelProperty("棰勯槻鎺柦")
+    private String preventiveAction;
+
+    @ApiModelProperty("鐘舵��:0鑽夌 1寰呭鎵� 2瀹℃壒涓� 3宸插畬鎴� 4宸查┏鍥�")
+    private Byte status;
+
+    @ApiModelProperty("澶囨敞")
+    private String remark;
+
+    @ApiModelProperty("绉熸埛ID")
+    @TableField(fill = FieldFill.INSERT)
+    private Long tenantId;
+
+    @ApiModelProperty("閮ㄩ棬ID")
+    private Long deptId;
+
+    @ApiModelProperty("鍒涘缓浜�")
+    private Long createBy;
+
+    @ApiModelProperty("鍒涘缓鏃堕棿")
+    @TableField(fill = FieldFill.INSERT)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private LocalDateTime createTime;
+
+    @ApiModelProperty("鏇存柊浜�")
+    private Long updateBy;
+
+    @ApiModelProperty("鏇存柊鏃堕棿")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private LocalDateTime updateTime;
+
+    @ApiModelProperty("閫昏緫鍒犻櫎:0鍚� 1鏄�")
+    private Byte deleted;
+}
diff --git a/src/main/java/com/ruoyi/quality/service/QualityUnqualifiedOrderService.java b/src/main/java/com/ruoyi/quality/service/QualityUnqualifiedOrderService.java
new file mode 100644
index 0000000..4416107
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/service/QualityUnqualifiedOrderService.java
@@ -0,0 +1,21 @@
+package com.ruoyi.quality.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.quality.dto.QualityUnqualifiedOrderDto;
+import com.ruoyi.quality.pojo.QualityUnqualifiedOrder;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 鍐涙瓕鍖栧伐涓嶅悎鏍煎搧澶勭悊鍗� 鏈嶅姟绫�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-05-26 11:42:49
+ */
+public interface QualityUnqualifiedOrderService extends IService<QualityUnqualifiedOrder> {
+
+    IPage<QualityUnqualifiedOrderDto> listPage(Page page, QualityUnqualifiedOrderDto qualityUnqualifiedOrder);
+
+}
diff --git a/src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedOrderServiceImpl.java b/src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedOrderServiceImpl.java
new file mode 100644
index 0000000..0ca1c3b
--- /dev/null
+++ b/src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedOrderServiceImpl.java
@@ -0,0 +1,31 @@
+package com.ruoyi.quality.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.quality.dto.QualityUnqualifiedOrderDto;
+import com.ruoyi.quality.pojo.QualityUnqualifiedOrder;
+import com.ruoyi.quality.mapper.QualityUnqualifiedOrderMapper;
+import com.ruoyi.quality.service.QualityUnqualifiedOrderService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 鍐涙瓕鍖栧伐涓嶅悎鏍煎搧澶勭悊鍗� 鏈嶅姟瀹炵幇绫�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-05-26 11:42:49
+ */
+@Service
+@RequiredArgsConstructor
+public class QualityUnqualifiedOrderServiceImpl extends ServiceImpl<QualityUnqualifiedOrderMapper, QualityUnqualifiedOrder> implements QualityUnqualifiedOrderService {
+
+    private final QualityUnqualifiedOrderMapper qualityUnqualifiedOrderMapper;
+
+    @Override
+    public IPage<QualityUnqualifiedOrderDto> listPage(Page page, QualityUnqualifiedOrderDto qualityUnqualifiedOrder) {
+        return qualityUnqualifiedOrderMapper.listPage(page,qualityUnqualifiedOrder);
+    }
+}
diff --git a/src/main/resources/mapper/quality/QualityUnqualifiedOrderMapper.xml b/src/main/resources/mapper/quality/QualityUnqualifiedOrderMapper.xml
new file mode 100644
index 0000000..269bf03
--- /dev/null
+++ b/src/main/resources/mapper/quality/QualityUnqualifiedOrderMapper.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.quality.mapper.QualityUnqualifiedOrderMapper">
+
+    <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+    <resultMap id="BaseResultMap" type="com.ruoyi.quality.pojo.QualityUnqualifiedOrder">
+        <id column="id" property="id" />
+        <result column="order_no" property="orderNo" />
+        <result column="unqualified_id" property="unqualifiedId" />
+        <result column="project_name" property="projectName" />
+        <result column="project_no" property="projectNo" />
+        <result column="equipment_name" property="equipmentName" />
+        <result column="equipment_drawing_no" property="equipmentDrawingNo" />
+        <result column="material_name" property="materialName" />
+        <result column="material_drawing_no" property="materialDrawingNo" />
+        <result column="specification_model" property="specificationModel" />
+        <result column="material_quality" property="materialQuality" />
+        <result column="quantity" property="quantity" />
+        <result column="unqualified_quantity" property="unqualifiedQuantity" />
+        <result column="unqualified_process" property="unqualifiedProcess" />
+        <result column="supplier_name" property="supplierName" />
+        <result column="inspector_name" property="inspectorName" />
+        <result column="inspect_date" property="inspectDate" />
+        <result column="responsible_person" property="responsiblePerson" />
+        <result column="responsible_dept" property="responsibleDept" />
+        <result column="problem_description" property="problemDescription" />
+        <result column="reason_analysis" property="reasonAnalysis" />
+        <result column="correction_action" property="correctionAction" />
+        <result column="disposal_method" property="disposalMethod" />
+        <result column="repair_evaluation" property="repairEvaluation" />
+        <result column="preventive_action" property="preventiveAction" />
+        <result column="status" property="status" />
+        <result column="remark" property="remark" />
+        <result column="tenant_id" property="tenantId" />
+        <result column="dept_id" property="deptId" />
+        <result column="create_by" property="createBy" />
+        <result column="create_time" property="createTime" />
+        <result column="update_by" property="updateBy" />
+        <result column="update_time" property="updateTime" />
+        <result column="deleted" property="deleted" />
+    </resultMap>
+    <select id="listPage" resultType="com.ruoyi.quality.dto.QualityUnqualifiedOrderDto">
+        select * from
+            quality_unqualified_order
+        <where>
+            <if test="ew.status != null">
+                status = #{ew.status}
+            </if>
+            <if test="ew.projectName != null">
+                project_name = #{ew.projectName}
+            </if>
+            <if test="ew.orderNo != null">
+                tenant_id = #{ew.orderNo}
+            </if>
+        </where>
+    </select>
+
+</mapper>

--
Gitblit v1.9.3