feat(energy): 新增 cooperation_type 和 auto_match 字段,标记旧导入接口废弃
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
39
yudao-module-energy/yudao-module-energy-api/pom.xml
Normal file
39
yudao-module-energy/yudao-module-energy-api/pom.xml
Normal file
@@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<parent>
|
||||
<artifactId>yudao-module-energy</artifactId>
|
||||
<groupId>cn.iocoder.cloud</groupId>
|
||||
<version>${revision}</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>yudao-module-energy-api</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
<name>${project.artifactId}</name>
|
||||
<description>能源账单 API,定义枚举、错误码等</description>
|
||||
<url>https://github.com/YunaiV/yudao-cloud</url>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>cn.iocoder.cloud</groupId>
|
||||
<artifactId>yudao-common</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- Web 相关 -->
|
||||
<dependency>
|
||||
<groupId>cn.iocoder.cloud</groupId>
|
||||
<artifactId>yudao-spring-boot-starter-web</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
|
||||
<!-- 参数校验 -->
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-validation</artifactId>
|
||||
<optional>true</optional>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
</project>
|
||||
@@ -0,0 +1,22 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum AccountStatusEnum {
|
||||
NORMAL(0, "正常"),
|
||||
WARNING(1, "预警"),
|
||||
OVERDUE(2, "欠费");
|
||||
|
||||
private final Integer status;
|
||||
private final String name;
|
||||
|
||||
public static AccountStatusEnum valueOf(Integer status) {
|
||||
return Arrays.stream(values())
|
||||
.filter(item -> item.getStatus().equals(status))
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum AdjustmentTypeEnum {
|
||||
INCREASE(0, "调增"),
|
||||
DECREASE(1, "调减");
|
||||
|
||||
private final Integer type;
|
||||
private final String name;
|
||||
|
||||
public static AdjustmentTypeEnum valueOf(Integer type) {
|
||||
return Arrays.stream(values())
|
||||
.filter(item -> item.getType().equals(type))
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum AuditStatusEnum {
|
||||
PENDING(0, "待审核"),
|
||||
APPROVED(1, "已通过"),
|
||||
REJECTED(2, "已驳回");
|
||||
|
||||
private final Integer status;
|
||||
private final String name;
|
||||
|
||||
public static AuditStatusEnum valueOf(Integer status) {
|
||||
return Arrays.stream(values())
|
||||
.filter(item -> item.getStatus().equals(status))
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum BillAuditStatusEnum {
|
||||
PENDING(0, "待审核"),
|
||||
APPROVED(1, "已通过"),
|
||||
REJECTED(2, "已驳回");
|
||||
|
||||
private final Integer status;
|
||||
private final String name;
|
||||
|
||||
public static BillAuditStatusEnum valueOf(Integer status) {
|
||||
return Arrays.stream(values())
|
||||
.filter(item -> item.getStatus().equals(status))
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum BillStatusEnum {
|
||||
DRAFT(0, "草稿"),
|
||||
GENERATED(1, "已生成"),
|
||||
VOID(2, "已作废");
|
||||
|
||||
private final Integer status;
|
||||
private final String name;
|
||||
|
||||
public static BillStatusEnum valueOf(Integer status) {
|
||||
return Arrays.stream(values())
|
||||
.filter(item -> item.getStatus().equals(status))
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum BillSubmitStatusEnum {
|
||||
NOT_SUBMITTED(0, "未提交"),
|
||||
SUBMITTED(1, "已提交"),
|
||||
REJECTED(2, "已驳回");
|
||||
|
||||
private final Integer status;
|
||||
private final String name;
|
||||
|
||||
public static BillSubmitStatusEnum valueOf(Integer status) {
|
||||
return Arrays.stream(values())
|
||||
.filter(item -> item.getStatus().equals(status))
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum BizTypeEnum {
|
||||
HYDROGEN_DEDUCTION(0, "加氢扣款"),
|
||||
BILL_SETTLEMENT(1, "账单结算"),
|
||||
MANUAL_ADJUST(2, "手动调整"),
|
||||
RECHARGE(3, "充值"),
|
||||
REMIT(4, "汇款");
|
||||
|
||||
private final Integer type;
|
||||
private final String name;
|
||||
|
||||
public static BizTypeEnum valueOf(Integer type) {
|
||||
return Arrays.stream(values())
|
||||
.filter(item -> item.getType().equals(type))
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum CooperationTypeEnum {
|
||||
COOPERATED(0, "合作"),
|
||||
NON_COOPERATED(1, "非合作");
|
||||
|
||||
private final Integer type;
|
||||
private final String name;
|
||||
|
||||
public static CooperationTypeEnum valueOf(Integer type) {
|
||||
return Arrays.stream(values())
|
||||
.filter(item -> item.getType().equals(type))
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum CostBearerEnum {
|
||||
CUSTOMER(0, "客户承担"),
|
||||
COMPANY(1, "羚牛承担"),
|
||||
SELF_SETTLE(2, "自行结算");
|
||||
|
||||
private final Integer type;
|
||||
private final String name;
|
||||
|
||||
public static CostBearerEnum valueOf(Integer type) {
|
||||
return Arrays.stream(values())
|
||||
.filter(item -> item.getType().equals(type))
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum DeductionStatusEnum {
|
||||
NOT_DEDUCTED(0, "未扣款"),
|
||||
DEDUCTED(1, "已扣款");
|
||||
|
||||
private final Integer status;
|
||||
private final String name;
|
||||
|
||||
public static DeductionStatusEnum valueOf(Integer status) {
|
||||
return Arrays.stream(values())
|
||||
.filter(item -> item.getStatus().equals(status))
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum EnergyTypeEnum {
|
||||
HYDROGEN(0, "氢费"),
|
||||
ELECTRIC(1, "电费"),
|
||||
ETC(2, "ETC");
|
||||
|
||||
private final Integer type;
|
||||
private final String name;
|
||||
|
||||
public static EnergyTypeEnum valueOf(Integer type) {
|
||||
return Arrays.stream(values())
|
||||
.filter(item -> item.getType().equals(type))
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.exception.ErrorCode;
|
||||
|
||||
public interface ErrorCodeConstants {
|
||||
// ========== 加氢记录 1-050-000-000 ==========
|
||||
ErrorCode HYDROGEN_RECORD_NOT_EXISTS = new ErrorCode(1_050_000_000, "加氢记录不存在");
|
||||
ErrorCode HYDROGEN_RECORD_IMPORT_EMPTY = new ErrorCode(1_050_000_001, "导入数据为空");
|
||||
ErrorCode HYDROGEN_RECORD_DUPLICATE = new ErrorCode(1_050_000_002, "存在重复导入记录");
|
||||
|
||||
// ========== 加氢明细 1-050-001-000 ==========
|
||||
ErrorCode HYDROGEN_DETAIL_NOT_EXISTS = new ErrorCode(1_050_001_000, "加氢明细不存在");
|
||||
ErrorCode HYDROGEN_DETAIL_ALREADY_AUDITED = new ErrorCode(1_050_001_001, "明细已审核,不可重复审核");
|
||||
|
||||
// ========== 能源账单 1-050-002-000 ==========
|
||||
ErrorCode ENERGY_BILL_NOT_EXISTS = new ErrorCode(1_050_002_000, "能源账单不存在");
|
||||
ErrorCode ENERGY_BILL_NOT_DRAFT = new ErrorCode(1_050_002_001, "账单非草稿状态,不可删除");
|
||||
ErrorCode ENERGY_BILL_ALREADY_AUDITED = new ErrorCode(1_050_002_002, "账单已审核");
|
||||
ErrorCode ENERGY_BILL_NO_DETAILS = new ErrorCode(1_050_002_003, "无可生成账单的明细");
|
||||
|
||||
// ========== 能源账户 1-050-003-000 ==========
|
||||
ErrorCode ENERGY_ACCOUNT_NOT_EXISTS = new ErrorCode(1_050_003_000, "能源账户不存在");
|
||||
ErrorCode ENERGY_ACCOUNT_VERSION_CONFLICT = new ErrorCode(1_050_003_001, "账户余额更新冲突,请重试");
|
||||
|
||||
// ========== 价格管理 1-050-004-000 ==========
|
||||
ErrorCode STATION_PRICE_NOT_EXISTS = new ErrorCode(1_050_004_000, "站点价格不存在");
|
||||
ErrorCode STATION_PRICE_DUPLICATE = new ErrorCode(1_050_004_001, "同一站点同一客户同一生效日期已存在价格");
|
||||
|
||||
// ========== 站点配置 1-050-005-000 ==========
|
||||
ErrorCode STATION_CONFIG_NOT_EXISTS = new ErrorCode(1_050_005_000, "站点配置不存在");
|
||||
ErrorCode STATION_CONFIG_DUPLICATE = new ErrorCode(1_050_005_001, "该站点配置已存在");
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum FlowTypeEnum {
|
||||
RECHARGE(0, "充值"),
|
||||
DEDUCTION(1, "扣款"),
|
||||
REVERSAL(2, "冲正"),
|
||||
REMIT(3, "汇款"),
|
||||
REFUND(4, "退款");
|
||||
|
||||
private final Integer type;
|
||||
private final String name;
|
||||
|
||||
public static FlowTypeEnum valueOf(Integer type) {
|
||||
return Arrays.stream(values())
|
||||
.filter(item -> item.getType().equals(type))
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum MatchStatusEnum {
|
||||
UNMATCHED(0, "未匹配"),
|
||||
MATCHED(1, "已匹配"),
|
||||
UNMATCHABLE(2, "无法匹配");
|
||||
|
||||
private final Integer status;
|
||||
private final String name;
|
||||
|
||||
public static MatchStatusEnum valueOf(Integer status) {
|
||||
return Arrays.stream(values())
|
||||
.filter(item -> item.getStatus().equals(status))
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum PayMethodEnum {
|
||||
PREPAID(0, "预充值"),
|
||||
MONTHLY(1, "月结算");
|
||||
|
||||
private final Integer type;
|
||||
private final String name;
|
||||
|
||||
public static PayMethodEnum valueOf(Integer type) {
|
||||
return Arrays.stream(values())
|
||||
.filter(item -> item.getType().equals(type))
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum PaymentStatusEnum {
|
||||
UNPAID(0, "未支付"),
|
||||
PARTIAL(1, "部分支付"),
|
||||
PAID(2, "已支付");
|
||||
|
||||
private final Integer status;
|
||||
private final String name;
|
||||
|
||||
public static PaymentStatusEnum valueOf(Integer status) {
|
||||
return Arrays.stream(values())
|
||||
.filter(item -> item.getStatus().equals(status))
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum SettlementStatusEnum {
|
||||
NOT_SETTLED(0, "未结算"),
|
||||
SETTLED(1, "已结算");
|
||||
|
||||
private final Integer status;
|
||||
private final String name;
|
||||
|
||||
public static SettlementStatusEnum valueOf(Integer status) {
|
||||
return Arrays.stream(values())
|
||||
.filter(item -> item.getStatus().equals(status))
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package cn.iocoder.yudao.module.energy.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum SourceTypeEnum {
|
||||
EXCEL(0, "Excel导入"),
|
||||
WEB(1, "Web录入"),
|
||||
API(2, "API对接"),
|
||||
OCR(3, "OCR识别");
|
||||
|
||||
private final Integer type;
|
||||
private final String name;
|
||||
|
||||
public static SourceTypeEnum valueOf(Integer type) {
|
||||
return Arrays.stream(values())
|
||||
.filter(item -> item.getType().equals(type))
|
||||
.findFirst().orElse(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
/**
|
||||
* 能源账单 API 模块,定义枚举、错误码等
|
||||
*/
|
||||
package cn.iocoder.yudao.module.energy;
|
||||
Reference in New Issue
Block a user