1.口门门禁-优化黑名单管理

koumen
guoyuepeng 2025-11-27 11:07:05 +08:00
parent 1988e09c62
commit 512280c5aa
2 changed files with 26 additions and 3 deletions

View File

@ -1,8 +1,11 @@
package com.zcloud.primeport.command;
import com.alibaba.cola.exception.BizException;
import com.zcloud.primeport.domain.gateway.VehicleBlackGateway;
import com.zcloud.primeport.domain.gateway.VehicleMessageGateway;
import com.zcloud.primeport.domain.model.VehicleBlackE;
import com.zcloud.primeport.domain.model.VehicleMessageE;
import com.zcloud.primeport.dto.VehicleBlackAddCmd;
import com.zcloud.primeport.dto.VehicleMessageForCorpAddCmd;
import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
@ -19,13 +22,26 @@ import org.springframework.transaction.annotation.Transactional;
@AllArgsConstructor
public class VehicleBlackAddExe {
private final VehicleBlackGateway vehicleBlackGateway;
private final VehicleMessageGateway vehicleMessageGateway;
@Transactional(rollbackFor = Exception.class)
public boolean execute(VehicleBlackAddCmd cmd) {
VehicleBlackE vehicleBlackE = new VehicleBlackE();
BeanUtils.copyProperties(cmd, vehicleBlackE);
boolean res = false;
try {
/**
* 1..
* 2..
*/
VehicleBlackE vehicleBlackE = new VehicleBlackE();
VehicleMessageE infoByLicenceNo = vehicleMessageGateway.getInfoByLicenceNo(cmd.getLicenceNo());
if (infoByLicenceNo == null) { //如果车辆不存在.则新增车辆.再存入黑名单中
VehicleMessageE vehicleMessageE = new VehicleMessageE();
BeanUtils.copyProperties(cmd, vehicleMessageE);
vehicleMessageE = vehicleMessageGateway.add(vehicleMessageE);
BeanUtils.copyProperties(vehicleBlackE, vehicleMessageE);
}else{ //如有车辆.则更新车辆信息.再存入黑名单中
BeanUtils.copyProperties(vehicleBlackE, infoByLicenceNo);
}
res = vehicleBlackGateway.add(vehicleBlackE);
} catch (Exception e) {
throw new RuntimeException(e);

View File

@ -23,5 +23,12 @@ public class VehicleBlackAddCmd extends Command {
@NotNull(message = "车辆信息表t_vehicle_message的主键id不能为空")
private Long vehicleId;
@ApiModelProperty(value = "车牌号", name = "licenceNo", required = true)
@NotEmpty(message = "车牌号不能为空")
private String licenceNo;
@ApiModelProperty(value = "车牌类型 0-白牌 1- 蓝牌 2-黄牌 3-绿牌 4-黑牌", name = "licenceType", required = true)
@NotNull(message = "车牌类型 0-白牌 1- 蓝牌 2-黄牌 3-绿牌 4-黑牌不能为空")
private Integer licenceType;
}