From 422a5676c2d96dd37c1be62935a314d70fef79b5 Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期三, 15 七月 2026 15:28:04 +0800
Subject: [PATCH] 修改不合格管理
---
src/main/java/com/ruoyi/quality/controller/QualityUnqualifiedController.java | 61 +++++++++++++++++++++---------
1 files changed, 43 insertions(+), 18 deletions(-)
diff --git a/src/main/java/com/ruoyi/quality/controller/QualityUnqualifiedController.java b/src/main/java/com/ruoyi/quality/controller/QualityUnqualifiedController.java
index 02c979a..bdc4a9b 100644
--- a/src/main/java/com/ruoyi/quality/controller/QualityUnqualifiedController.java
+++ b/src/main/java/com/ruoyi/quality/controller/QualityUnqualifiedController.java
@@ -38,9 +38,8 @@
@Log(title = "鏂板涓嶅悎鏍肩鐞�", businessType = BusinessType.INSERT)
public R<?> add(@RequestBody QualityUnqualified qualityUnqualified) {
qualityUnqualified.setInspectState(0);
- if (qualityUnqualified.getDealType() != null) {
- qualityUnqualified.setDealResult(resolveDealResult(qualityUnqualified.getDealType()));
- }
+ normalizeDealDecision(qualityUnqualified);
+ applyRegenerateNewOrderDefault(qualityUnqualified);
normalizeRepairWorkHour(qualityUnqualified);
return R.ok(qualityUnqualifiedService.save(qualityUnqualified));
}
@@ -83,9 +82,8 @@
@Operation(summary = "涓嶅悎鏍肩鐞嗕慨鏀�")
@Log(title = "涓嶅悎鏍肩鐞嗕慨鏀�", businessType = BusinessType.UPDATE)
public R<?> update(@RequestBody QualityUnqualified qualityUnqualified) {
- if (qualityUnqualified.getDealType() != null) {
- qualityUnqualified.setDealResult(resolveDealResult(qualityUnqualified.getDealType()));
- }
+ normalizeDealDecision(qualityUnqualified);
+ applyRegenerateNewOrderDefault(qualityUnqualified);
normalizeRepairWorkHour(qualityUnqualified);
return R.ok(qualityUnqualifiedService.updateById(qualityUnqualified));
}
@@ -124,23 +122,50 @@
@Operation(summary = "涓嶅悎鏍肩鐞嗗鐞�")
@Log(title = "涓嶅悎鏍肩鐞嗗鐞�", businessType = BusinessType.OTHER)
public R<?> deal(@RequestBody QualityUnqualified qualityUnqualified) {
- if (qualityUnqualified.getDealType() != null) {
- qualityUnqualified.setDealResult(resolveDealResult(qualityUnqualified.getDealType()));
- }
+ normalizeDealDecision(qualityUnqualified);
+ applyRegenerateNewOrderDefault(qualityUnqualified);
normalizeRepairWorkHour(qualityUnqualified);
return R.ok(qualityUnqualifiedService.deal(qualityUnqualified));
}
- private String resolveDealResult(Integer dealType) {
- if (dealType == null) {
- return null;
+ private void normalizeDealDecision(QualityUnqualified qualityUnqualified) {
+ if (qualityUnqualified == null) {
+ return;
}
- return switch (dealType) {
- case 0 -> "杞诲井杩斿伐";
- case 1 -> "涓ラ噸杩斿伐";
- case 2 -> "鎶ュ簾";
- default -> null;
- };
+ String dealResult = qualityUnqualified.getDealResult();
+ Integer dealType = qualityUnqualified.getDealType();
+ if ("鎶ュ簾".equals(dealResult)) {
+ qualityUnqualified.setDealType(2);
+ return;
+ }
+ if ("鎶ュ伐".equals(dealResult)) {
+ if (dealType == null) {
+ throw new ServiceException("鎶ュ伐鏃跺繀椤婚�夋嫨涓嶅悎鏍肩被鍨�");
+ }
+ if (dealType == 2) {
+ qualityUnqualified.setDealResult("鎶ュ簾");
+ }
+ return;
+ }
+ if (dealType == null) {
+ return;
+ }
+ if (dealType == 2) {
+ qualityUnqualified.setDealResult("鎶ュ簾");
+ } else if (dealType == 0 || dealType == 1) {
+ qualityUnqualified.setDealResult("鎶ュ伐");
+ }
+ }
+
+ private void applyRegenerateNewOrderDefault(QualityUnqualified qualityUnqualified) {
+ if (qualityUnqualified == null || qualityUnqualified.getDealType() == null) {
+ return;
+ }
+ if (qualityUnqualified.getDealType() == 0) {
+ qualityUnqualified.setRegenerateNewOrder(0);
+ } else if (qualityUnqualified.getDealType() == 1 || qualityUnqualified.getDealType() == 2) {
+ qualityUnqualified.setRegenerateNewOrder(1);
+ }
}
private void normalizeRepairWorkHour(QualityUnqualified qualityUnqualified) {
--
Gitblit v1.9.3