From a39dc5b34f8d49d6a3b40e9dd9e71faa2fac12d8 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Mon, 26 Jan 2026 16:03:19 +0800
Subject: [PATCH] 工单优化
---
drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/enums/WorkOrderStatusEnum.java | 93 ++++++++++++++++++++++++++++++++++++----------
1 files changed, 72 insertions(+), 21 deletions(-)
diff --git a/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/enums/WorkOrderStatusEnum.java b/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/enums/WorkOrderStatusEnum.java
index 6558745..6c4ce21 100644
--- a/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/enums/WorkOrderStatusEnum.java
+++ b/drone-service/drone-gd/src/main/java/org/sxkj/gd/workorder/enums/WorkOrderStatusEnum.java
@@ -42,64 +42,74 @@
/**
* 草稿
*/
- DRAFT(0, "草稿", null),
+ DRAFT("0", "草稿", null),
/**
* 发布中_接单中
*/
- PUBLISHING_ACCEPTING(10, "发布中_接单中", "工单发布"),
+ PUBLISHING_ACCEPTING("10", "发布中_接单中", "工单发布"),
/**
* 发布中_拒绝接单
*/
- PUBLISHING_REJECTING(11, "发布中_拒绝接单", "工单发布"),
+ PUBLISHING_REJECTING("11", "发布中_拒绝接单", "拒绝接单"),
/**
* 响应中_待拆分
*/
- RESPONDING_TO_BE_SPLIT(20, "响应中_待拆分", "接单响应"),
+ RESPONDING_TO_BE_SPLIT("20", "响应中_待拆分", "接单响应"),
/**
* 响应中_申请取消
*/
- RESPONDING_APPLY_CANCEL(21, "响应中_申请取消", "接单响应"),
+ RESPONDING_APPLY_CANCEL("21", "响应中_申请取消", "申请取消"),
/**
* 响应中_申请修改
*/
- RESPONDING_APPLY_MODIFY(22, "响应中_申请修改", "接单响应"),
+ RESPONDING_APPLY_MODIFY("22", "响应中_申请修改", "申请修改"),
/**
* 响应中_已取消
*/
- RESPONDING_CANCELED(23, "响应中_已取消", "接单响应"),
+ RESPONDING_CANCELED("23", "响应中_已取消", "已取消"),
+
+ /**
+ * 响应中_拒绝取消
+ */
+ RESPONDING_REJECT_CANCEL("24", "响应中_拒绝取消", "拒绝取消"),
+
+ /**
+ * 响应中_拒绝修改
+ */
+ RESPONDING_REJECT_MODIFY("25", "响应中_拒绝修改", "拒绝修改"),
/**
* 执行中_待全部完成
*/
- EXECUTING_TO_BE_COMPLETED(30, "执行中_待全部完成", "执行中"),
+ EXECUTING_TO_BE_COMPLETED("30", "执行中_待全部完成", "执行中"),
/**
* 执行中_协商修改
*/
- EXECUTING_NEGOTIATE_MODIFY(31, "执行中_协商修改", "执行中"),
+ EXECUTING_NEGOTIATE_MODIFY("31", "执行中_协商修改", "执行中"),
/**
* 完成待验_待全部验收
*/
- COMPLETED_TO_BE_INSPECTED(40, "完成待验_待全部验收", "完成待验"),
+ COMPLETED_TO_BE_INSPECTED("40", "完成待验_待全部验收", "完成待验"),
/**
* 验收通过_待结算
*/
- ACCEPTED_TO_BE_SETTLED(50, "验收通过_待结算", "验收通过"),
+ ACCEPTED_TO_BE_SETTLED("50", "验收通过_待结算", "验收通过"),
/**
* 结算完成_已结算
*/
- SETTLEMENT_COMPLETED(60, "结算完成_已结算", "结算完成");
+ SETTLEMENT_COMPLETED("60", "结算完成_已结算", "结算完成");
- private final Byte code;
+ private final String code;
private final String desc;
private final String stageDesc;
private final boolean isStage;
@@ -117,8 +127,8 @@
/**
* 工单状态构造函数
*/
- WorkOrderStatusEnum(int code, String desc, String stageDesc) {
- this.code = (byte) code;
+ WorkOrderStatusEnum(String code, String desc, String stageDesc) {
+ this.code = code;
this.desc = desc;
this.stageDesc = stageDesc;
this.isStage = false;
@@ -128,7 +138,7 @@
* 获取状态码
* @return 状态码
*/
- public Byte getCode() {
+ public String getCode() {
return code;
}
@@ -169,12 +179,12 @@
* @param code 状态码
* @return 枚举对象
*/
- public static WorkOrderStatusEnum getByCode(Byte code) {
+ public static WorkOrderStatusEnum getByCode(String code) {
if (code == null) {
return null;
}
for (WorkOrderStatusEnum status : values()) {
- if (status.getCode().equals(code)) {
+ if (code.equals(status.getCode())) {
return status;
}
}
@@ -186,7 +196,7 @@
* @param code 状态码
* @return 状态描述
*/
- public static String getDescByCode(Byte code) {
+ public static String getDescByCode(String code) {
WorkOrderStatusEnum status = getByCode(code);
return status != null ? status.getDesc() : null;
}
@@ -196,7 +206,48 @@
* @param code 状态码
* @return 是否有效
*/
- public static boolean isValid(Byte code) {
+ public static boolean isValid(String code) {
return getByCode(code) != null;
}
-}
\ No newline at end of file
+
+ /**
+ * 检查当前状态是否允许指定的操作类型
+ * @param operationType 操作类型:1接单,2拒接接单,3申请取消,4申请修改, 5同意取消 6不同意取消 7.同意修改 8.不同意修改 9.协商修改 10.同意修改 11.结算
+ * @return 是否允许操作
+ */
+ public boolean isAllowedOperation(Integer operationType) {
+ if (operationType == null) {
+ return false;
+ }
+
+ switch (this) {
+ case PUBLISHING_ACCEPTING:
+ // 发布中_接单中状态允许:1接单,2拒接接单
+ return operationType == 1 || operationType == 2;
+ case RESPONDING_TO_BE_SPLIT:
+ // 响应中_待拆分状态允许:3申请取消,4申请修改
+ return operationType == 3 || operationType == 4 ;
+ case RESPONDING_APPLY_CANCEL:
+ // 响应中_申请取消状态允许:5同意取消,6不同意取消
+ return operationType == 5 || operationType == 6;
+ case RESPONDING_APPLY_MODIFY:
+ // 响应中_申请修改状态允许:7同意修改,8不同意修改
+ return operationType ==7 || operationType == 8 ;
+ case RESPONDING_REJECT_CANCEL:
+ // 响应中_拒绝取消状态允许:3申请取消
+ return operationType == 3;
+ case RESPONDING_REJECT_MODIFY:
+ // 响应中_拒绝修改状态允许:4申请修改
+ return operationType == 4 || operationType == 3;
+ case ACCEPTED_TO_BE_SETTLED:
+ // 验收通过_待结算状态允许:11结算完成
+ return operationType == 11;
+ case EXECUTING_TO_BE_COMPLETED:
+ // 执行中_待全部完成状态允许:9.协商修改
+ return operationType == 9;
+ default:
+ // 其他状态不允许操作
+ return false;
+ }
+ }
+}
--
Gitblit v1.9.3