pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoSe/SeManagementCard.java
@@ -20,7 +20,7 @@ * @Description 充值机用管理卡 */ @TableName(value="se_management_card", autoResultMap = true) @TableName(value = "se_management_card", autoResultMap = true) @Data @Builder @ToString @@ -30,76 +30,88 @@ public static final long serialVersionUID = 202506240651001L; /** * 主键 */ @JSONField(serializeUsing= ObjectWriterImplToString.class) * 主键 */ @JSONField(serializeUsing = ObjectWriterImplToString.class) @TableId(type = IdType.INPUT) private Long id; /** * 通讯协议 */ * 通讯协议 */ @NotBlank(message = "通讯协议不能为空") private String protocol; /** * 卡片地址 */ * 卡片地址 */ @NotBlank(message = "卡片地址不能为空") private String cardAddr; /** * 识别码 */ * 识别码 */ @NotBlank(message = "识别码不能为空") private String securityCode; /** * 卡片类型;2-设置区域表号卡,3-取数卡,4-检查卡,5-测试卡,6-清零卡,7-IP设置卡,8-域名设置卡,9-GPS卡,10-时间配置卡 */ * 卡片类型;2-设置区域表号卡,3-取数卡,4-检查卡,5-测试卡,6-清零卡,7-IP设置卡,8-域名设置卡,9-GPS卡,10-时间配置卡 */ @NotNull(message = "卡片类型不能为空") private Byte cardType; /** * 开卡时间 */ * 开卡时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @NotNull(message = "开卡时间不能为空") private Date createTime; /** * 订单号 */ * 订单号 */ private String orderNo; /** * 5级行政区划编码 */ * 5级行政区划编码 */ private String districtCode; /** * 项目编码 */ * 项目编码 */ private Integer projectNo; /** * IP地址 */ * IP地址 */ private String ip; /** * 域名 */ * 域名 */ private String domain; /** * 开关阀时间 */ * 开关阀时间 */ private Integer openClostTime; /** * 备注信息 */ * 备注信息 */ private String remarks; /** * 注销时间 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date cancelDt; /** * 卡片状态;1-正常,2-已注销,3-已挂失 */ @NotNull(message = "卡片状态不能为空") private Byte state; } pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeClientCardMapper.xml
@@ -868,9 +868,10 @@ <!--检查卡地址是否已存在(管理卡表 + 农户水卡表)--> <select id="checkCardAddrExists" resultType="java.lang.Long"> SELECT COUNT(*) AS totalCount FROM ( -- 检查管理卡表中的所有记录 -- 检查管理卡表中正常(1)和挂失(3)状态的记录 SELECT card_addr FROM se_management_card WHERE card_addr = #{cardAddr} AND state IN (1, 3) UNION ALL pipIrr-platform/pipIrr-web/pipIrr-web-terminal/src/main/java/com/dy/pipIrrTerminal/card/CardSv.java
@@ -14,6 +14,7 @@ import com.dy.pipIrrTerminal.card.qo.QoLostCards; import com.dy.pipIrrTerminal.card.enums.CardStateENUM; import com.dy.pipIrrTerminal.card.enums.LastOperateENUM; import com.dy.pipIrrTerminal.card.enums.ManagementCardStateENUM; import com.dy.pipIrrTerminal.card.enums.OperateTypeENUM; import com.dy.pipIrrTerminal.card.enums.RechargeTypeENUM; import lombok.extern.slf4j.Slf4j; @@ -22,6 +23,7 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.dy.common.util.IDLongGenerator; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; @@ -57,6 +59,9 @@ @Autowired private SeManagementCardMapper seManagementCardMapper; @Autowired private IDLongGenerator idLongGenerator; @Value("${project.projectNo}") private Integer projectNo; @@ -1306,8 +1311,8 @@ // 参考termActiveCard逻辑:生成订单号 String orderNo = generateOrderNo(); // 参考termActiveCard逻辑:生成唯一ID,使用时间戳 Long id = System.currentTimeMillis(); // 使用IDLongGenerator生成唯一ID Long id = idLongGenerator.generate(); Date createTime = new Date(); // 构建管理卡对象 @@ -1325,6 +1330,7 @@ .domain(dto.getDomain()) .openClostTime(dto.getOpenClostTime()) .remarks(dto.getRemarks()) .state(ManagementCardStateENUM.NORMAL.getCode()) // 默认状态为正常 .build(); // 插入数据库 pipIrr-platform/pipIrr-web/pipIrr-web-terminal/src/main/java/com/dy/pipIrrTerminal/card/enums/ManagementCardStateENUM.java
New file @@ -0,0 +1,22 @@ package com.dy.pipIrrTerminal.card.enums; import lombok.AllArgsConstructor; import lombok.Getter; /** * @author ZhuBaoMin * @date 2025-01-20 * @LastEditTime 2025-01-20 * @Description 管理卡状态枚举 */ @Getter @AllArgsConstructor public enum ManagementCardStateENUM { NORMAL((byte) 1, "正常"), CANCELLED((byte) 2, "已注销"), LOSS((byte) 3, "已挂失"); private final Byte code; private final String message; }