From 7c49301ce1a7105a9eb204de3822a85d9798ba58 Mon Sep 17 00:00:00 2001 From: "SGK\\17962" <1796293269@qq.com> Date: Thu, 4 Sep 2025 15:37:21 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=AF=BC=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../excel/validator/IdCardValidator.java | 9 +++ .../vo/MpsImportDianziShebaokaImportVo.java | 3 + .../vo/MpsImportHuinongtongInfoImportVo.java | 7 +- .../vo/MpsImportZhiefuIndvImportVo.java | 4 +- .../vo/MpsImportZhigongShebaokaImportVo.java | 4 +- .../domain/vo/OriginalHntSgsInfoImportVo.java | 2 +- .../vo/OriginalMerchantInfoImportVo.java | 66 ++++++++++++++++++- ...lMerchantTransactionSummary3mImportVo.java | 4 +- ...nalMerchantTransactionSummaryImportVo.java | 28 +++++++- ...iginalMobileBankInactiveMonthImportVo.java | 25 ++++++- ...riginalMobileBankInactiveYearImportVo.java | 25 ++++++- ...iginalMobileBankSignupCompanyImportVo.java | 27 +++++++- ...riginalMobileBankSignupPersonImportVo.java | 27 +++++++- .../vo/OriginalOnlinePaymentImportVo.java | 10 ++- .../domain/vo/OriginalTrafficImportVo.java | 17 ++++- 15 files changed, 238 insertions(+), 20 deletions(-) diff --git a/cds-platform-2025.V1/cds-common/cds-common-excel/src/main/java/org/dromara/common/excel/validator/IdCardValidator.java b/cds-platform-2025.V1/cds-common/cds-common-excel/src/main/java/org/dromara/common/excel/validator/IdCardValidator.java index e8b97ee..5e12fe1 100644 --- a/cds-platform-2025.V1/cds-common/cds-common-excel/src/main/java/org/dromara/common/excel/validator/IdCardValidator.java +++ b/cds-platform-2025.V1/cds-common/cds-common-excel/src/main/java/org/dromara/common/excel/validator/IdCardValidator.java @@ -73,4 +73,13 @@ public class IdCardValidator implements ConstraintValidator { return actualCheckCode == expectedCheckCode; } + + public static void main(String[] args) { + IdCardValidator a = new IdCardValidator(); + System.out.println(a.validate18DigitIdCard("37091119551217161X")); + System.out.println(a.validate18DigitIdCard("37091119760111044X")); + System.out.println(a.validate18DigitIdCard("37091119860913166X")); + System.out.println(a.validate18DigitIdCard("47091119720306041X")); + System.out.println(a.validate18DigitIdCard("37091119730326682X")); + } } diff --git a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/MpsImportDianziShebaokaImportVo.java b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/MpsImportDianziShebaokaImportVo.java index ccac3d5..b8d2431 100644 --- a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/MpsImportDianziShebaokaImportVo.java +++ b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/MpsImportDianziShebaokaImportVo.java @@ -8,6 +8,8 @@ import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import lombok.Data; import lombok.NoArgsConstructor; +import org.dromara.common.excel.validator.IdCard; + import java.io.Serial; import java.io.Serializable; import java.util.Date; @@ -61,6 +63,7 @@ public class MpsImportDianziShebaokaImportVo implements Serializable { * 证件号码 */ @ExcelProperty(value = "证件号码", index = 2) + @IdCard @NotBlank(message = "证件号码不能为空") private String crtNo; diff --git a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/MpsImportHuinongtongInfoImportVo.java b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/MpsImportHuinongtongInfoImportVo.java index 4939761..224f646 100644 --- a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/MpsImportHuinongtongInfoImportVo.java +++ b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/MpsImportHuinongtongInfoImportVo.java @@ -8,6 +8,9 @@ import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import lombok.Data; import lombok.NoArgsConstructor; +import org.dromara.common.excel.validator.IdCard; +import org.dromara.common.excel.validator.PhoneNumber; + import java.io.Serial; import java.io.Serializable; import java.util.Date; @@ -72,7 +75,7 @@ public class MpsImportHuinongtongInfoImportVo implements Serializable { * 身份证号 */ @ExcelProperty(value = "身份证号") - @Pattern(message = "身份证号错误", regexp = "^[1-9]\\d{5}(18|19|20)\\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$") + @IdCard @NotBlank(message = "身份证号不能为空") private String crtNo; @@ -87,7 +90,7 @@ public class MpsImportHuinongtongInfoImportVo implements Serializable { * 手机号 */ @ExcelProperty(value = "手机号") - @Pattern(message = "手机号错误", regexp = "^1[3-9]\\d{9}$") + @PhoneNumber @NotBlank(message = "手机号不能为空") private String phone; diff --git a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/MpsImportZhiefuIndvImportVo.java b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/MpsImportZhiefuIndvImportVo.java index e697894..6b60e05 100644 --- a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/MpsImportZhiefuIndvImportVo.java +++ b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/MpsImportZhiefuIndvImportVo.java @@ -9,6 +9,8 @@ import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import lombok.Data; import lombok.NoArgsConstructor; +import org.dromara.common.excel.validator.IdCard; + import java.io.Serial; import java.io.Serializable; import java.util.Date; @@ -74,7 +76,7 @@ public class MpsImportZhiefuIndvImportVo implements Serializable { * 证件号码 */ @ExcelProperty(value = "身份证号") - @Pattern(message = "身份证号错误", regexp = "^[1-9]\\d{5}(18|19|20)\\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$") + @IdCard @NotBlank(message = "身份证号不能为空") private String crtNo; diff --git a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/MpsImportZhigongShebaokaImportVo.java b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/MpsImportZhigongShebaokaImportVo.java index 17d55b8..04c46f0 100644 --- a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/MpsImportZhigongShebaokaImportVo.java +++ b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/MpsImportZhigongShebaokaImportVo.java @@ -8,6 +8,8 @@ import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import lombok.Data; import lombok.NoArgsConstructor; +import org.dromara.common.excel.validator.IdCard; + import java.io.Serial; import java.io.Serializable; import java.util.Date; @@ -59,7 +61,7 @@ public class MpsImportZhigongShebaokaImportVo implements Serializable { * 证件号码 */ @ExcelProperty(value = "7、身份证号") - @Pattern(message = "证件号码错误", regexp = "^[1-9]\\d{5}(18|19|20)\\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$") + @IdCard @NotBlank(message = "证件号码不能为空") private String crtNo; diff --git a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalHntSgsInfoImportVo.java b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalHntSgsInfoImportVo.java index c9ebc1a..c3e272a 100644 --- a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalHntSgsInfoImportVo.java +++ b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalHntSgsInfoImportVo.java @@ -62,7 +62,7 @@ public class OriginalHntSgsInfoImportVo implements Serializable { * 身份证号 */ @ExcelProperty(value = "身份证号") - @Pattern(message = "证件号码错误", regexp = "^[1-9]\\d{5}(18|19|20)\\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$") + @IdCard @NotBlank(message = "身份证号不能为空") private String idCard; diff --git a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMerchantInfoImportVo.java b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMerchantInfoImportVo.java index 219922d..424677a 100644 --- a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMerchantInfoImportVo.java +++ b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMerchantInfoImportVo.java @@ -2,13 +2,23 @@ package org.dromara.original.domain.vo; import java.math.BigDecimal; import java.util.Date; + +import cn.idev.excel.annotation.ExcelIgnore; import com.fasterxml.jackson.annotation.JsonFormat; import cn.idev.excel.annotation.ExcelIgnoreUnannotated; import cn.idev.excel.annotation.ExcelProperty; +import jakarta.validation.constraints.DecimalMin; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import lombok.Data; import lombok.NoArgsConstructor; +import org.dromara.common.excel.validator.IdCard; +import org.dromara.common.excel.validator.PhoneNumber; +import org.springframework.format.annotation.DateTimeFormat; + import java.io.Serial; import java.io.Serializable; import java.util.Date; @@ -41,30 +51,35 @@ public class OriginalMerchantInfoImportVo implements Serializable { * 机构名称 */ @ExcelProperty(value = "机构名称") + @NotBlank(message = "机构名称不能为空") private String institutionName; /** * 支行名称 */ @ExcelProperty(value = "支行名称") + @NotBlank(message = "支行名称不能为空") private String branchName; /** * 机构编号 */ @ExcelProperty(value = "机构编号") + @NotBlank(message = "机构编号不能为空") private String branchCode; /** * 商户编号 */ @ExcelProperty(value = "商户编号") + @NotBlank(message = "商户编号不能为空") private String merchantId; /** * 商户全称 */ @ExcelProperty(value = "商户全称") + @NotBlank(message = "商户全称不能为空") private String merchantFullName; /** @@ -88,13 +103,15 @@ public class OriginalMerchantInfoImportVo implements Serializable { /** * 商户创建时间 */ - @ExcelProperty(value = "商户创建时间") + @ExcelProperty(value = "创建时间") + @NotNull(message = "创建时间不能为空") private Date merchantCreateTime; /** * 来源 */ @ExcelProperty(value = "来源") + @NotBlank(message = "来源不能为空") private String source; /** @@ -107,78 +124,92 @@ public class OriginalMerchantInfoImportVo implements Serializable { * 拓展员工号 */ @ExcelProperty(value = "拓展员工号") + @NotBlank(message = "拓展员工号不能为空") private String salesmanId; /** * 拓展员工姓名 */ @ExcelProperty(value = "拓展员工姓名") + @NotBlank(message = "拓展员工姓名不能为空") private String salesmanName; /** * 管理员工号 */ @ExcelProperty(value = "管理员工号") + @NotBlank(message = "管理员工号不能为空") private String managerId; /** * 管理员工姓名 */ @ExcelProperty(value = "管理员工姓名") + @NotBlank(message = "管理员工姓名不能为空") private String managerName; /** * 商户类型 */ @ExcelProperty(value = "商户类型") + @NotBlank(message = "商户类型不能为空") private String merchantType; /** * 商户风险等级 */ @ExcelProperty(value = "商户风险等级") + @NotBlank(message = "商户风险等级不能为空") private String riskLevel; /** * 经营范围 */ @ExcelProperty(value = "经营范围") + @NotBlank(message = "经营范围不能为空") private String businessScope; /** * 经营范围(二级) */ - @ExcelProperty(value = "经营范围(二级)") + @ExcelProperty(value = "经营范围(二级)") + @NotBlank(message = "经营范围(二级)不能为空") private String businessScopeDetail; /** * 禁用类型 */ @ExcelProperty(value = "禁用类型") + @NotBlank(message = "禁用类型不能为空") private String disableType; /** * 详细地址 */ @ExcelProperty(value = "详细地址") + @NotBlank(message = "详细地址不能为空") private String address; /** * 法定代表人姓名 */ @ExcelProperty(value = "法定代表人姓名") + @NotBlank(message = "法定代表人姓名不能为空") private String legalName; /** * 法定代表人证件类型 */ @ExcelProperty(value = "法定代表人证件类型") + @NotBlank(message = "法定代表人证件类型不能为空") private String legalIdType; /** * 法定代表人证件号码 */ @ExcelProperty(value = "法定代表人证件号码") + @IdCard + @NotBlank(message = "法定代表人证件号码不能为空") private String legalIdNumber; /** @@ -209,12 +240,14 @@ public class OriginalMerchantInfoImportVo implements Serializable { * 开户证件类型 */ @ExcelProperty(value = "开户证件类型") + @NotBlank(message = "开户证件类型不能为空") private String accountIdType; /** * 开户证件号码 */ @ExcelProperty(value = "开户证件号码") + @NotBlank(message = "开户证件号码不能为空") private String accountIdNumber; /** @@ -239,60 +272,77 @@ public class OriginalMerchantInfoImportVo implements Serializable { * 结算级别 */ @ExcelProperty(value = "结算级别") + @NotBlank(message = "结算级别不能为空") private String settlementLevel; /** * 结算周期 */ @ExcelProperty(value = "结算周期") + @NotBlank(message = "结算周期不能为空") private String settlementCycle; /** * 商户费率模式 */ @ExcelProperty(value = "商户费率模式") + @NotBlank(message = "商户费率模式不能为空") private String feeMode; /** * 支付宝借记卡费率 */ @ExcelProperty(value = "支付宝借记卡费率") + @DecimalMin(value = "0", message = "支付宝借记卡费率必须大于等于0") + @NotNull(message = "支付宝借记卡费率不能为空") private BigDecimal alipayDebitRate; /** * 支付宝贷记卡费率 */ @ExcelProperty(value = "支付宝贷记卡费率") + @DecimalMin(value = "0", message = "支付宝贷记卡费率必须大于等于0") + @NotNull(message = "支付宝贷记卡费率不能为空") private BigDecimal alipayCreditRate; /** * 微信借记卡费率 */ @ExcelProperty(value = "微信借记卡费率") + @DecimalMin(value = "0", message = "微信贷记卡费率必须大于等于0") + @NotNull(message = "微信贷记卡费率不能为空") private BigDecimal wechatDebitRate; /** * 微信贷记卡费率 */ @ExcelProperty(value = "微信贷记卡费率") + @DecimalMin(value = "0", message = "微信贷记卡费率必须大于等于0") + @NotNull(message = "微信贷记卡费率不能为空") private BigDecimal wechatCreditRate; /** * 云闪付借记卡费率 */ @ExcelProperty(value = "云闪付借记卡费率") + @DecimalMin(value = "0", message = "云闪付贷记卡费率必须大于等于0") + @NotNull(message = "云闪付贷记卡费率不能为空") private BigDecimal unionpayDebitRate; /** * 云闪付贷记卡费率 */ @ExcelProperty(value = "云闪付贷记卡费率") + @DecimalMin(value = "0", message = "云闪付贷记卡费率必须大于等于0") + @NotNull(message = "云闪付贷记卡费率不能为空") private BigDecimal unionpayCreditRate; /** * 智e付费率 */ @ExcelProperty(value = "智e付费率") + @DecimalMin(value = "0", message = "智e付费率必须大于等于0") + @NotNull(message = "智e付费率不能为空") private BigDecimal smartPayRate; /** @@ -323,36 +373,42 @@ public class OriginalMerchantInfoImportVo implements Serializable { * 收银台支付类型 */ @ExcelProperty(value = "收银台支付类型") + @NotBlank(message = "收银台支付类型不能为空") private String paymentTypes; /** * 静态码支付类型 */ @ExcelProperty(value = "静态码支付类型") + @NotBlank(message = "静态码支付类型不能为空") private String staticCodeTypes; /** * 结算账号 */ @ExcelProperty(value = "结算账号") + @NotBlank(message = "结算账号不能为空") private String accountNumber; /** * 账户名称 */ @ExcelProperty(value = "账户名称") + @NotBlank(message = "账户名称不能为空") private String accountName; /** * 开户行机构号 */ @ExcelProperty(value = "开户行机构号") + @NotBlank(message = "开户行机构号不能为空") private String bankCode; /** * 开户行名称 */ @ExcelProperty(value = "开户行名称") + @NotBlank(message = "开户行名称不能为空") private String bankName; /** @@ -371,18 +427,22 @@ public class OriginalMerchantInfoImportVo implements Serializable { * 联系人姓名 */ @ExcelProperty(value = "联系人姓名") + @NotBlank(message = "联系人姓名不能为空") private String contactName; /** * 联系人手机号码 */ @ExcelProperty(value = "联系人手机号码") + @PhoneNumber + @NotBlank(message = "联系人手机号码不能为空") private String contactPhone; /** * 导入周期 */ - @ExcelProperty(value = "导入周期") + @ExcelIgnore + @NotBlank(message = "导入周期不能为空") private String importTime; diff --git a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMerchantTransactionSummary3mImportVo.java b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMerchantTransactionSummary3mImportVo.java index 43a7103..caee912 100644 --- a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMerchantTransactionSummary3mImportVo.java +++ b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMerchantTransactionSummary3mImportVo.java @@ -1,6 +1,8 @@ package org.dromara.original.domain.vo; import java.math.BigDecimal; + +import cn.idev.excel.annotation.ExcelIgnore; import cn.idev.excel.annotation.ExcelIgnoreUnannotated; import cn.idev.excel.annotation.ExcelProperty; import jakarta.validation.constraints.*; @@ -55,7 +57,7 @@ public class OriginalMerchantTransactionSummary3mImportVo implements Serializabl /** * 导入周期 */ - @ExcelProperty(value = "导入周期") + @ExcelIgnore @NotBlank(message = "导入周期不能为空") private String importTime; diff --git a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMerchantTransactionSummaryImportVo.java b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMerchantTransactionSummaryImportVo.java index da57195..3811536 100644 --- a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMerchantTransactionSummaryImportVo.java +++ b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMerchantTransactionSummaryImportVo.java @@ -1,14 +1,19 @@ package org.dromara.original.domain.vo; import java.math.BigDecimal; + +import cn.idev.excel.annotation.ExcelIgnore; import cn.idev.excel.annotation.ExcelIgnoreUnannotated; import cn.idev.excel.annotation.ExcelProperty; +import cn.idev.excel.annotation.format.NumberFormat; +import jakarta.validation.constraints.*; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import lombok.Data; import lombok.NoArgsConstructor; import java.io.Serial; import java.io.Serializable; +import java.math.RoundingMode; import java.util.Date; @@ -39,30 +44,35 @@ public class OriginalMerchantTransactionSummaryImportVo implements Serializable * 商户名称 */ @ExcelProperty(value = "商户名称") + @NotBlank(message = "商户名称不能为空") private String merchantName; /** * 商户编号 */ @ExcelProperty(value = "商户编号") + @NotBlank(message = "商户编号不能为空") private String merchantId; /** * 商户结算账号 */ @ExcelProperty(value = "商户结算账号") + @NotBlank(message = "商户结算账号不能为空") private String settlementAccount; /** * 商户入驻方式 */ @ExcelProperty(value = "商户入驻方式") + @NotBlank(message = "商户入驻方式不能为空") private String entryMethod; /** * 商户级别 */ @ExcelProperty(value = "商户级别") + @NotBlank(message = "商户级别不能为空") private String merchantLevel; /** @@ -81,60 +91,76 @@ public class OriginalMerchantTransactionSummaryImportVo implements Serializable * 当日累计交易手续费 */ @ExcelProperty(value = "当日累计交易手续费") + @DecimalMin(value = "0", message = "交易手续费必须大于等于0") + @NotNull(message = "当日累计交易手续费不能为空") private BigDecimal dailyFee; /** * 当日累计结算金额 */ @ExcelProperty(value = "当日累计结算金额") + @DecimalMin(value = "0", message = "结算金额必须大于等于0") + @NotNull(message = "当日累计结算金额不能为空") private BigDecimal dailySettlement; /** * 当日累计交易笔数 */ @ExcelProperty(value = "当日累计交易笔数") + @NotNull(message = "当日累计交易笔数不能为空") private Long dailyTransCount; /** * 自月初累计交易手续费 */ @ExcelProperty(value = "自月初累计交易手续费") + @DecimalMin(value = "0", message = "交易手续费必须大于等于0") + @NotNull(message = "自月初累计交易手续费不能为空") private BigDecimal monthlyFee; /** * 自月初累计结算金额 */ @ExcelProperty(value = "自月初累计结算金额") + @DecimalMin(value = "0", message = "结算金额必须大于等于0") + @NotNull(message = "自月初累计结算金额不能为空") private BigDecimal monthlySettlement; /** * 自月初累计交易笔数 */ @ExcelProperty(value = "自月初累计交易笔数") + @NotNull(message = "自月初累计交易笔数不能为空") private Long monthlyTransCount; /** * 自年初累计交易手续费 */ @ExcelProperty(value = "自年初累计交易手续费") + @DecimalMin(value = "0", message = "结算金额必须大于等于0") + @NotNull(message = "自年初累计交易手续费不能为空") private BigDecimal yearlyFee; /** * 自年初累计结算金额 */ @ExcelProperty(value = "自年初累计结算金额") + @DecimalMin(value = "0", message = "结算金额必须大于等于0") + @NotNull(message = "自年初累计结算金额不能为空") private BigDecimal yearlySettlement; /** * 自年初累计交易笔数 */ @ExcelProperty(value = "自年初累计交易笔数") + @NotNull(message = "自年初累计交易笔数不能为空") private Long yearlyTransCount; /** * 导入周期 */ - @ExcelProperty(value = "导入周期") + @ExcelIgnore + @NotBlank(message = "导入周期不能为空") private String importTime; diff --git a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMobileBankInactiveMonthImportVo.java b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMobileBankInactiveMonthImportVo.java index e02c898..3f98b78 100644 --- a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMobileBankInactiveMonthImportVo.java +++ b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMobileBankInactiveMonthImportVo.java @@ -1,13 +1,20 @@ package org.dromara.original.domain.vo; import java.util.Date; + +import cn.idev.excel.annotation.ExcelIgnore; import com.fasterxml.jackson.annotation.JsonFormat; import cn.idev.excel.annotation.ExcelIgnoreUnannotated; import cn.idev.excel.annotation.ExcelProperty; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import lombok.Data; import lombok.NoArgsConstructor; +import org.dromara.common.excel.validator.IdCard; +import org.dromara.common.excel.validator.PhoneNumber; + import java.io.Serial; import java.io.Serializable; import java.util.Date; @@ -39,37 +46,50 @@ public class OriginalMobileBankInactiveMonthImportVo implements Serializable { /** * 机构名称 */ - @ExcelProperty(value = "机构名称") + @ExcelProperty(value = { + "", + "", + "", + "机构名称" + }, index = 1) + @NotBlank(message = "机构名称不能为空") private String branchName; /** * 客户名称 */ @ExcelProperty(value = "客户名称") + @NotBlank(message = "客户名称不能为空") private String customerName; /** * 证件类型 */ @ExcelProperty(value = "证件类型") + @NotBlank(message = "证件类型不能为空") private String idType; /** * 证件号码 */ @ExcelProperty(value = "证件号码") + @NotBlank(message = "证件号码不能为空") + @IdCard private String idNumber; /** * 签约手机号 */ @ExcelProperty(value = "签约手机号") + @PhoneNumber + @NotBlank(message = "签约手机号不能为空") private String mobile; /** * 签约日期 */ @ExcelProperty(value = "签约日期") + @NotNull(message = "签约日期不能为空") private Date signDate; /** @@ -81,7 +101,8 @@ public class OriginalMobileBankInactiveMonthImportVo implements Serializable { /** * 导入周期 */ - @ExcelProperty(value = "导入周期") + @ExcelIgnore + @NotBlank(message = "导入周期不能为空") private String importTime; diff --git a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMobileBankInactiveYearImportVo.java b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMobileBankInactiveYearImportVo.java index 22ab335..b94b6f9 100644 --- a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMobileBankInactiveYearImportVo.java +++ b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMobileBankInactiveYearImportVo.java @@ -1,13 +1,20 @@ package org.dromara.original.domain.vo; import java.util.Date; + +import cn.idev.excel.annotation.ExcelIgnore; import com.fasterxml.jackson.annotation.JsonFormat; import cn.idev.excel.annotation.ExcelIgnoreUnannotated; import cn.idev.excel.annotation.ExcelProperty; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import lombok.Data; import lombok.NoArgsConstructor; +import org.dromara.common.excel.validator.IdCard; +import org.dromara.common.excel.validator.PhoneNumber; + import java.io.Serial; import java.io.Serializable; import java.util.Date; @@ -39,37 +46,50 @@ public class OriginalMobileBankInactiveYearImportVo implements Serializable { /** * 机构名称 */ - @ExcelProperty(value = "机构名称") + @ExcelProperty(value = { + "", + "", + "", + "机构名称" + }, index = 0) + @NotBlank(message = "机构名称不能为空") private String branchName; /** * 客户名称 */ @ExcelProperty(value = "客户名称") + @NotBlank(message = "客户名称不能为空") private String customerName; /** * 证件类型 */ @ExcelProperty(value = "证件类型") + @NotBlank(message = "证件类型不能为空") private String idType; /** * 证件号码 */ @ExcelProperty(value = "证件号码") + @NotBlank(message = "证件号码不能为空") + @IdCard private String idNumber; /** * 签约手机号 */ @ExcelProperty(value = "签约手机号") + @PhoneNumber + @NotBlank(message = "签约手机号不能为空") private String mobile; /** * 签约日期 */ @ExcelProperty(value = "签约日期") + @NotNull(message = "签约日期不能为空") private Date signDate; /** @@ -81,7 +101,8 @@ public class OriginalMobileBankInactiveYearImportVo implements Serializable { /** * 导入周期 */ - @ExcelProperty(value = "导入周期") + @ExcelIgnore + @NotBlank(message = "导入周期不能为空") private String importTime; diff --git a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMobileBankSignupCompanyImportVo.java b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMobileBankSignupCompanyImportVo.java index 87e6b2f..2ae21c9 100644 --- a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMobileBankSignupCompanyImportVo.java +++ b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMobileBankSignupCompanyImportVo.java @@ -1,13 +1,19 @@ package org.dromara.original.domain.vo; import java.util.Date; + +import cn.idev.excel.annotation.ExcelIgnore; import com.fasterxml.jackson.annotation.JsonFormat; import cn.idev.excel.annotation.ExcelIgnoreUnannotated; import cn.idev.excel.annotation.ExcelProperty; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import lombok.Data; import lombok.NoArgsConstructor; +import org.dromara.common.excel.validator.IdCard; + import java.io.Serial; import java.io.Serializable; import java.util.Date; @@ -39,67 +45,84 @@ public class OriginalMobileBankSignupCompanyImportVo implements Serializable { /** * 机构名称 */ - @ExcelProperty(value = "机构名称") + @ExcelProperty(value = { + "", + "", + "", + "机构名称" + }, index = 0) + @NotBlank(message = "机构名称不能为空") private String branchName; /** * 机构号 */ @ExcelProperty(value = "机构号") + @NotBlank(message = "机构号不能为空") private String branchCode; /** * 客户名称 */ @ExcelProperty(value = "客户名称") + @NotBlank(message = "客户名称不能为空") private String customerName; /** * 证件类型 */ @ExcelProperty(value = "证件类型") + @NotBlank(message = "证件类型不能为空") private String idType; /** * 证件号码 */ @ExcelProperty(value = "证件号码") + @NotBlank(message = "证件号码不能为空") + @IdCard private String idNumber; /** * 签约主账户 */ @ExcelProperty(value = "签约主账户") + @NotBlank(message = "签约主账户不能为空") private String mainAccount; /** * 签约日期 */ @ExcelProperty(value = "签约日期") + @NotNull(message = "签约日期不能为空") private Date signupDate; /** * 认证方式 */ @ExcelProperty(value = "认证方式") + @NotBlank(message = "认证方式不能为空") private String authMethod; /** * 流水号 */ @ExcelProperty(value = "流水号") + @NotBlank(message = "流水号不能为空") private String serialNumber; /** * 柜员 */ @ExcelProperty(value = "柜员") + @NotBlank(message = "柜员不能为空") private String teller; /** * 导入周期 */ - @ExcelProperty(value = "导入周期") + @ExcelIgnore + @NotBlank(message = "导入周期不能为空") private String importTime; diff --git a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMobileBankSignupPersonImportVo.java b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMobileBankSignupPersonImportVo.java index 0568459..a5f1849 100644 --- a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMobileBankSignupPersonImportVo.java +++ b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalMobileBankSignupPersonImportVo.java @@ -1,13 +1,19 @@ package org.dromara.original.domain.vo; import java.util.Date; + +import cn.idev.excel.annotation.ExcelIgnore; import com.fasterxml.jackson.annotation.JsonFormat; import cn.idev.excel.annotation.ExcelIgnoreUnannotated; import cn.idev.excel.annotation.ExcelProperty; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import lombok.Data; import lombok.NoArgsConstructor; +import org.dromara.common.excel.validator.IdCard; + import java.io.Serial; import java.io.Serializable; import java.util.Date; @@ -39,67 +45,84 @@ public class OriginalMobileBankSignupPersonImportVo implements Serializable { /** * 机构名称 */ - @ExcelProperty(value = "机构名称") + @ExcelProperty(value = { + "", + "", + "", + "机构名称" + }, index = 0) + @NotBlank(message = "机构名称不能为空") private String branchName; /** * 机构号 */ @ExcelProperty(value = "机构号") + @NotBlank(message = "机构号不能为空") private String branchCode; /** * 客户名称 */ @ExcelProperty(value = "客户名称") + @NotBlank(message = "客户名称不能为空") private String customerName; /** * 证件类型 */ @ExcelProperty(value = "证件类型") + @NotBlank(message = "证件类型不能为空") private String idType; /** * 证件号码 */ @ExcelProperty(value = "证件号码") + @NotBlank(message = "证件号码不能为空") + @IdCard private String idNumber; /** * 签约主账户 */ @ExcelProperty(value = "签约主账户") + @NotBlank(message = "签约主账户不能为空") private String mainAccount; /** * 签约日期 */ @ExcelProperty(value = "签约日期") + @NotNull(message = "签约日期不能为空") private Date signupDate; /** * 认证方式 */ @ExcelProperty(value = "认证方式") + @NotBlank(message = "认证方式不能为空") private String authMethod; /** * 流水号 */ @ExcelProperty(value = "流水号") + @NotBlank(message = "流水号不能为空") private String serialNumber; /** * 柜员 */ @ExcelProperty(value = "柜员") + @NotBlank(message = "柜员不能为空") private String teller; /** * 导入周期 */ - @ExcelProperty(value = "导入周期") + @ExcelIgnore + @NotBlank(message = "导入周期不能为空") private String importTime; diff --git a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalOnlinePaymentImportVo.java b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalOnlinePaymentImportVo.java index e4c4983..0b1dee8 100644 --- a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalOnlinePaymentImportVo.java +++ b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalOnlinePaymentImportVo.java @@ -1,7 +1,11 @@ package org.dromara.original.domain.vo; +import cn.idev.excel.annotation.ExcelIgnore; import cn.idev.excel.annotation.ExcelIgnoreUnannotated; import cn.idev.excel.annotation.ExcelProperty; +import jakarta.validation.constraints.Min; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import lombok.Data; @@ -44,18 +48,22 @@ public class OriginalOnlinePaymentImportVo implements Serializable { * 支行名称 */ @ExcelProperty(value = "支行名称") + @NotBlank(message = "支行名称不能为空") private String branchName; /** * 数量 */ @ExcelProperty(value = "数量") + @NotNull(message = "数量不能为空") + @Min(value = 0, message = "数量不能小于0") private Long quantity; /** * 计价月份 */ - @ExcelProperty(value = "计价月份") + @ExcelIgnore + @NotBlank(message = "计价月份不能为空") private String importTime; diff --git a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalTrafficImportVo.java b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalTrafficImportVo.java index cfafed7..63b5f69 100644 --- a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalTrafficImportVo.java +++ b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalTrafficImportVo.java @@ -1,7 +1,12 @@ package org.dromara.original.domain.vo; +import cn.idev.excel.annotation.ExcelIgnore; import cn.idev.excel.annotation.ExcelIgnoreUnannotated; import cn.idev.excel.annotation.ExcelProperty; +import jakarta.validation.constraints.Min; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Pattern; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; import lombok.Data; @@ -44,48 +49,58 @@ public class OriginalTrafficImportVo implements Serializable { "机构名称", "代收交警罚没款明细表", "机构支行"}, index = 0) + @NotBlank(message = "机构名称不能为空") private String branchName; /** * 缴费人名称 */ @ExcelProperty(value = {"代收交警罚没款明细表", "缴费人名称"}, index = 1) + @NotBlank(message = "缴费人名称不能为空") private String payerName; /** * 缴费账号 */ @ExcelProperty(value = {"代收交警罚没款明细表", "缴费账号"}, index = 2) + @NotBlank(message = "缴费账号不能为空") + @Pattern( regexp = "^[0-9]{16}$", message = "缴费账号错误") private String payerAccount; /** * 处罚决定书编号 */ @ExcelProperty(value = {"代收交警罚没款明细表", "处罚决定书编号"}, index = 3) + @NotBlank(message = "处罚决定书编号不能为空") private String penaltyDecisionNo; /** * 缴费方式 */ @ExcelProperty(value = {"代收交警罚没款明细表", "缴费方式"}, index = 4) + @NotBlank(message = "缴费方式不能为空") private String paymentMethod; /** * 缴费金额 */ @ExcelProperty(value = {"代收交警罚没款明细表", "缴费金额"}, index = 5) + @NotNull(message = "缴费金额不能为空") + @Min(value = 0, message = "缴费金额不能小于0") private String paymentAmount; /** * 缴费渠道 */ @ExcelProperty(value = {"代收交警罚没款明细表", "缴费渠道"}, index = 6) + @NotBlank(message = "缴费渠道不能为空") private String paymentChannel; /** * 计价月份 */ - @ExcelProperty(value = "计价月份") + @ExcelIgnore + @NotBlank(message = "计价月份不能为空") private String importTime; From 9a3041ed124e831223b081a7318b26af960f6292 Mon Sep 17 00:00:00 2001 From: zhuangdashia Date: Thu, 4 Sep 2025 23:36:52 +0800 Subject: [PATCH 2/2] =?UTF-8?q?bug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../views/mps/detail-entry/modules/detail-entry-search.vue | 2 +- .../dromara/original/domain/vo/OriginalWaterImportVo.java | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/cds-fontend-2025.V1/src/views/mps/detail-entry/modules/detail-entry-search.vue b/cds-fontend-2025.V1/src/views/mps/detail-entry/modules/detail-entry-search.vue index bc4c957..584676e 100644 --- a/cds-fontend-2025.V1/src/views/mps/detail-entry/modules/detail-entry-search.vue +++ b/cds-fontend-2025.V1/src/views/mps/detail-entry/modules/detail-entry-search.vue @@ -35,7 +35,7 @@ async function getSubcategoryOptions() { if (!error) { subcategoryIdOptions.value = data.map(item => ({ label: item.name, - value: item.id + value: item.typeId })); } } diff --git a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalWaterImportVo.java b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalWaterImportVo.java index d7431ba..7b1c69a 100644 --- a/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalWaterImportVo.java +++ b/cds-platform-2025.V1/cds-modules/cds-system/src/main/java/org/dromara/original/domain/vo/OriginalWaterImportVo.java @@ -4,6 +4,7 @@ import cn.idev.excel.annotation.ExcelIgnoreUnannotated; import cn.idev.excel.annotation.ExcelProperty; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotEmpty; +import jakarta.validation.constraints.NotNull; import jakarta.validation.constraints.Pattern; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.annotation.ExcelRequired; @@ -168,7 +169,8 @@ public class OriginalWaterImportVo implements Serializable { * 缴费日期 */ @ExcelProperty(value = "缴费日期") - @Pattern(message = "缴费日期错误", regexp = "^\\d{4}(-?)(0[1-9]|1[0-2])\\1(0[1-9]|[12][0-9]|3[01])$") +// @Pattern(message = "缴费日期错误", regexp = "^\\d{4}(-?)(0[1-9]|1[0-2])\\1(0[1-9]|[12][0-9]|3[01])$") + @NotNull(message = "缴费日期不能为空") private String paymentDate; /** @@ -189,6 +191,7 @@ public class OriginalWaterImportVo implements Serializable { * 计价月份 */ @ExcelProperty(value = "计价月份") + @NotBlank(message = "计价月份不能为空") private String importTime;