refactor(energy): 简化事件驱动系统(7个→3个)

- 删除旧事件:BillApprovedEvent, BillCreatedEvent, DeductionCompletedEvent, DetailAuditedEvent, DetailCreatedEvent, RecordMatchedEvent
- 新增事件:BillAuditPassedEvent, DetailAuditPassedEvent
- 保留事件:RecordImportedEvent
- 更新监听器:AccountEventListener, BillEventListener, DetailEventListener
- 清理代码中的旧事件引用和注释

优化原则:前端简单,后端健壮
事件流程:导入→匹配→生成明细→审核→扣款→生成账单→结算
This commit is contained in:
kkfluous
2026-03-16 12:53:14 +08:00
parent f5062cec22
commit 2f38a703f9
167 changed files with 9876 additions and 824 deletions

View File

@@ -0,0 +1,39 @@
package cn.iocoder.yudao.module.asset.enums.contract;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
/**
* 合同审批状态枚举
*
* @author 芋道源码
*/
@Getter
@AllArgsConstructor
public enum ContractApprovalStatusEnum {
DRAFT(0, "草稿"),
APPROVING(1, "审批中"),
APPROVED(2, "审批通过"),
REJECTED(3, "审批拒绝"),
WITHDRAWN(4, "已撤回");
/**
* 状态
*/
private final Integer status;
/**
* 名称
*/
private final String name;
public static ContractApprovalStatusEnum valueOf(Integer status) {
return Arrays.stream(values())
.filter(item -> item.getStatus().equals(status))
.findFirst()
.orElse(null);
}
}

View File

@@ -0,0 +1,40 @@
package cn.iocoder.yudao.module.asset.enums.contract;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
/**
* 合同状态枚举
*
* @author 芋道源码
*/
@Getter
@AllArgsConstructor
public enum ContractStatusEnum {
DRAFT(0, "草稿"),
PENDING(1, "待生效"),
IN_PROGRESS(2, "进行中"),
EXPIRED(3, "已到期"),
TERMINATED(4, "已终止"),
RENEWED(5, "已续签");
/**
* 状态
*/
private final Integer status;
/**
* 名称
*/
private final String name;
public static ContractStatusEnum valueOf(Integer status) {
return Arrays.stream(values())
.filter(item -> item.getStatus().equals(status))
.findFirst()
.orElse(null);
}
}

View File

@@ -0,0 +1,36 @@
package cn.iocoder.yudao.module.asset.enums.contract;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
/**
* 合同类型枚举
*
* @author 芋道源码
*/
@Getter
@AllArgsConstructor
public enum ContractTypeEnum {
TRIAL(1, "试用合同"),
FORMAL(2, "正式合同");
/**
* 类型
*/
private final Integer type;
/**
* 名称
*/
private final String name;
public static ContractTypeEnum valueOf(Integer type) {
return Arrays.stream(values())
.filter(item -> item.getType().equals(type))
.findFirst()
.orElse(null);
}
}

View File

@@ -0,0 +1,28 @@
package cn.iocoder.yudao.module.asset.enums.delivery;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
/**
* 交车单状态枚举
*/
@Getter
@AllArgsConstructor
public enum DeliveryOrderStatusEnum {
PENDING(0, "待完成"),
COMPLETED(1, "已完成");
private final Integer status;
private final String name;
public static DeliveryOrderStatusEnum valueOf(Integer status) {
return Arrays.stream(values())
.filter(item -> item.getStatus().equals(status))
.findFirst()
.orElse(null);
}
}

View File

@@ -0,0 +1,28 @@
package cn.iocoder.yudao.module.asset.enums.delivery;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
/**
* 交车状态枚举
*/
@Getter
@AllArgsConstructor
public enum DeliveryStatusEnum {
NOT_DELIVERED(0, "未交车"),
DELIVERED(1, "已交车");
private final Integer status;
private final String name;
public static DeliveryStatusEnum valueOf(Integer status) {
return Arrays.stream(values())
.filter(item -> item.getStatus().equals(status))
.findFirst()
.orElse(null);
}
}

View File

@@ -0,0 +1,28 @@
package cn.iocoder.yudao.module.asset.enums.delivery;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
/**
* 交车任务状态枚举
*/
@Getter
@AllArgsConstructor
public enum DeliveryTaskStatusEnum {
ACTIVE(0, "激活"),
SUSPENDED(1, "挂起");
private final Integer status;
private final String name;
public static DeliveryTaskStatusEnum valueOf(Integer status) {
return Arrays.stream(values())
.filter(item -> item.getStatus().equals(status))
.findFirst()
.orElse(null);
}
}

View File

@@ -0,0 +1,28 @@
package cn.iocoder.yudao.module.asset.enums.prepare;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
/**
* 备车状态枚举
*/
@Getter
@AllArgsConstructor
public enum VehiclePrepareStatusEnum {
DRAFT(0, "待提交"),
COMPLETED(1, "已完成");
private final Integer status;
private final String name;
public static VehiclePrepareStatusEnum valueOf(Integer status) {
return Arrays.stream(values())
.filter(item -> item.getStatus().equals(status))
.findFirst()
.orElse(null);
}
}

View File

@@ -0,0 +1,29 @@
package cn.iocoder.yudao.module.asset.enums.returnorder;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
/**
* 还车单状态枚举
*/
@Getter
@AllArgsConstructor
public enum ReturnOrderStatusEnum {
PENDING_INSPECTION(0, "待验车"),
INSPECTION_COMPLETED(1, "验车完成"),
SETTLED(2, "已结算");
private final Integer status;
private final String name;
public static ReturnOrderStatusEnum valueOf(Integer status) {
return Arrays.stream(values())
.filter(item -> item.getStatus().equals(status))
.findFirst()
.orElse(null);
}
}

View File

@@ -0,0 +1,29 @@
package cn.iocoder.yudao.module.asset.enums.returnorder;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
/**
* 还车原因枚举
*/
@Getter
@AllArgsConstructor
public enum ReturnReasonEnum {
CONTRACT_EXPIRED("CONTRACT_EXPIRED", "合同到期"),
CUSTOMER_REQUEST("CUSTOMER_REQUEST", "客户申请"),
CONTRACT_TERMINATED("CONTRACT_TERMINATED", "合同终止");
private final String code;
private final String name;
public static ReturnReasonEnum valueOfCode(String code) {
return Arrays.stream(values())
.filter(item -> item.getCode().equals(code))
.findFirst()
.orElse(null);
}
}