瀏覽代碼

解除车牌占用

master
chenchaod 1 周之前
父節點
當前提交
e92d5ef45e

+ 66
- 50
zhywpt-app-managew/src/main/java/cn/com/taiji/managew/dto/ass/ReleasePlateViewResponseDTO.java 查看文件

@@ -6,8 +6,7 @@ import cn.com.taiji.core.entity.basic.QtkBlackObu;
import cn.com.taiji.core.entity.basic.QtkCardInfo;
import cn.com.taiji.core.entity.basic.QtkObuInfo;
import cn.com.taiji.core.entity.dict.ass.AssVehicleRealseStep;
import cn.com.taiji.core.entity.dict.ass.RelieveStatus;
import cn.com.taiji.core.entity.dict.basic.IdType;
import cn.com.taiji.managew.model.ass.releasePlate.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -19,56 +18,73 @@ import java.util.List;
@ApiModel(description = "售后订单-解除车牌占用审核查询")
public class ReleasePlateViewResponseDTO {

@ApiModelProperty(value = "售后订单信息")
private AssOrderInfoResponseDTO assOrderInfo;
@ApiModelProperty(value = "售后表订单编号")
private String orderNo;//售后表订单编号
@ApiModelProperty(value = "解除卡所属用户编码")
private String customerId;//解除卡所属用户编码
@ApiModelProperty(value = "解除的卡号;被解除的ETC卡号")
private String relieveCardId;//解除的卡号;被解除的ETC卡号
@ApiModelProperty(value = "解除的签号;被解除的OBU签号")
private String relieveObuId;//解除的签号;被解除的OBU签号
@ApiModelProperty(value = "解除时间")
private LocalDateTime relieveTime;//解除时间
@ApiModelProperty(value = "解除状态;未处理、已处理成功、已处理失败")
private RelieveStatus relieveStatus;//解除状态;未处理、已处理成功、已处理失败
@ApiModelProperty(value = "身份证人像图片地址(申请人)")
private String userPosImagesUrl;//身份证人像图片地址(申请人)
@ApiModelProperty(value = "身份证国徽图片地址(申请人)")
private String userNegImagesUrl;//身份证国徽图片地址(申请人)
@ApiModelProperty(value = "证件类型;身份证、")
private IdType userType;//证件类型;身份证、
@ApiModelProperty(value = "行驶证正面照片")
private String vehPosImgUrl;//行驶证正面照片
@ApiModelProperty(value = "行驶证反面 照片")
private String vehNegImgUrl;//行驶证反面 照片
@ApiModelProperty(value = "营业执照图片地址")
private String unitImagesUrl;//营业执照图片地址
@ApiModelProperty(value = "授权书图片地址")
private String proxyUrl;//授权书图片地址
@ApiModelProperty(value = "单位证件类型")
private IdType unitIdType;//单位证件类型
@ApiModelProperty(value = "单位名称车辆所有人")
private String unitName;//单位名称车辆所有人
@ApiModelProperty(value = "单位证件编号")
private String unitId;//单位证件编号
@ApiModelProperty(value = "备注")
private String remark;//备注
@ApiModelProperty(value = "创建时间")
private LocalDateTime insertTime;//创建时间
@ApiModelProperty(value = "更新时间")
private LocalDateTime updateTime;//更新时间
@ApiModelProperty(value = "车主证件正面图片")
private String ownerPosImgUrl;//车主证件正面图片
@ApiModelProperty(value = "车主证件反面图片")
private String ownerNegImgUrl;//车主证件反面图片
@ApiModelProperty(value = "车主身份证上名")
private String ownerName;//车主身份证上名
@ApiModelProperty(value = "车主身份证证件号")
private String ownerIdNum;//车主身份证证件号
// @ApiModelProperty(value = "售后订单信息")
// private AssOrderInfoResponseDTO assOrderInfo;
// @ApiModelProperty(value = "售后表订单编号")
// private String orderNo;//售后表订单编号
// @ApiModelProperty(value = "解除卡所属用户编码")
// private String customerId;//解除卡所属用户编码
// @ApiModelProperty(value = "解除的卡号;被解除的ETC卡号")
// private String relieveCardId;//解除的卡号;被解除的ETC卡号
// @ApiModelProperty(value = "解除的签号;被解除的OBU签号")
// private String relieveObuId;//解除的签号;被解除的OBU签号
// @ApiModelProperty(value = "解除时间")
// private LocalDateTime relieveTime;//解除时间
// @ApiModelProperty(value = "解除状态;未处理、已处理成功、已处理失败")
// private RelieveStatus relieveStatus;//解除状态;未处理、已处理成功、已处理失败
// @ApiModelProperty(value = "身份证人像图片地址(申请人)")
// private String userPosImagesUrl;//身份证人像图片地址(申请人)
// @ApiModelProperty(value = "身份证国徽图片地址(申请人)")
// private String userNegImagesUrl;//身份证国徽图片地址(申请人)
// @ApiModelProperty(value = "证件类型;身份证、")
// private IdType userType;//证件类型;身份证、
// @ApiModelProperty(value = "行驶证正面照片")
// private String vehPosImgUrl;//行驶证正面照片
// @ApiModelProperty(value = "行驶证反面 照片")
// private String vehNegImgUrl;//行驶证反面 照片
// @ApiModelProperty(value = "营业执照图片地址")
// private String unitImagesUrl;//营业执照图片地址
// @ApiModelProperty(value = "授权书图片地址")
// private String proxyUrl;//授权书图片地址
// @ApiModelProperty(value = "单位证件类型")
// private IdType unitIdType;//单位证件类型
// @ApiModelProperty(value = "单位名称车辆所有人")
// private String unitName;//单位名称车辆所有人
// @ApiModelProperty(value = "单位证件编号")
// private String unitId;//单位证件编号
// @ApiModelProperty(value = "备注")
// private String remark;//备注
// @ApiModelProperty(value = "创建时间")
// private LocalDateTime insertTime;//创建时间
// @ApiModelProperty(value = "更新时间")
// private LocalDateTime updateTime;//更新时间
// @ApiModelProperty(value = "车主证件正面图片")
// private String ownerPosImgUrl;//车主证件正面图片
// @ApiModelProperty(value = "车主证件反面图片")
// private String ownerNegImgUrl;//车主证件反面图片
// @ApiModelProperty(value = "车主身份证上名")
// private String ownerName;//车主身份证上名
// @ApiModelProperty(value = "车主身份证证件号")
// private String ownerIdNum;//车主身份证证件号

@ApiModelProperty(value = "下单申请时间")
private LocalDateTime applyTime;//下单申请时间
@ApiModelProperty(value = "售后订单编号")
private String orderNo;
@ApiModelProperty(value = "审核步骤")
private AssVehicleRealseStep step;

@ApiModelProperty(value = "身份证信息")
private ApplyInfo applyInfo;
@ApiModelProperty(value = "行驶证信息")
private DrivingInfo drivingInfo;
@ApiModelProperty(value = "车主信息")
private OwnerInfo ownerInfo;
@ApiModelProperty(value = "单位资料信息")
private UnitInfo unitInfo;
@ApiModelProperty(value = "占用用户信息")
private CustomerInfo customerInfo;

@ApiModelProperty(value = "卡信息")
private QtkCardInfo cardInfo;
@ApiModelProperty(value = "签信息")

+ 67
- 4
zhywpt-app-managew/src/main/java/cn/com/taiji/managew/manager/ass/ReleasePlateManagerImpl.java 查看文件

@@ -1,13 +1,18 @@
package cn.com.taiji.managew.manager.ass;

import cn.com.taiji.common.manager.ManagerException;
import cn.com.taiji.core.entity.ass.AssOrderinfo;
import cn.com.taiji.core.entity.ass.AssVehicleRelieve;
import cn.com.taiji.core.entity.dict.log.OperateType;
import cn.com.taiji.core.manager.tools.minio.MinioUtil;
import cn.com.taiji.core.model.comm.protocol.ias.ass.*;
import cn.com.taiji.managew.dto.ass.AssOrderInfoResponseDTO;
import cn.com.taiji.managew.dto.ass.ReleasePlateReviewRequestDTO;
import cn.com.taiji.managew.dto.ass.ReleasePlateViewRequestDTO;
import cn.com.taiji.managew.dto.ass.ReleasePlateViewResponseDTO;
import cn.com.taiji.managew.manager.AbstractManagewManager;
import cn.com.taiji.managew.model.ass.releasePlate.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
@@ -19,6 +24,9 @@ import org.springframework.stereotype.Service;
@Service
public class ReleasePlateManagerImpl extends AbstractManagewManager implements ReleasePlateManager{

@Autowired
protected MinioUtil minioUtil;

@Override
public void review(ReleasePlateReviewRequestDTO req) throws ManagerException {

@@ -39,9 +47,64 @@ public class ReleasePlateManagerImpl extends AbstractManagewManager implements R

ReleasePlateViewRequest request = copyProperties(req, new ReleasePlateViewRequest());
ReleasePlateViewResponse response = jsonPostRepeat(request);
ReleasePlateViewResponseDTO viewResponseDTO = copyProperties(response, new ReleasePlateViewResponseDTO());
AssOrderInfoResponseDTO assOrderInfo = copyProperties(response.getAssOrderinfo(), new AssOrderInfoResponseDTO());
viewResponseDTO.setAssOrderInfo(assOrderInfo);
return viewResponseDTO;

ReleasePlateViewResponseDTO responseDTO = new ReleasePlateViewResponseDTO();
copyProperties(response, responseDTO);//复制卡签信息及黑名单信息
AssOrderinfo assOrderinfo = response.getAssOrderinfo();
AssVehicleRelieve vehicleRelieve = response.getVehicleRelieve();

responseDTO.setApplyTime(assOrderinfo.getApplyTime());
responseDTO.setOrderNo(assOrderinfo.getOrderNo());
responseDTO.setStep(vehicleRelieve.getStep());
//申请信息
ApplyInfo applyInfo = new ApplyInfo();
applyInfo.setCustomerIdNum(vehicleRelieve.getUserIdNum());
applyInfo.setName(vehicleRelieve.getUserName());
applyInfo.setMobile(vehicleRelieve.getUserMobile());
applyInfo.setUserIdType(vehicleRelieve.getUserIdType());
applyInfo.setUserPosImagesUrl(minioUtil.getOuterUrl(vehicleRelieve.getUserPosImagesUrl()));
applyInfo.setUserNegImagesUrl(minioUtil.getOuterUrl(vehicleRelieve.getUserNegImagesUrl()));
responseDTO.setApplyInfo(applyInfo);

//行驶证信息
DrivingInfo drivingInfo = new DrivingInfo();
String[] split = assOrderinfo.getVehicleId().split("_");
drivingInfo.setPlateColor(split[1]);
drivingInfo.setPlateNum(split[0]);
drivingInfo.setVehicleOwnerName(vehicleRelieve.getVehicleOwnerName());
drivingInfo.setVehPosImgUrl(minioUtil.getOuterUrl(vehicleRelieve.getVehPosImgUrl()));
drivingInfo.setVehNegImgUrl(minioUtil.getOuterUrl(vehicleRelieve.getVehNegImgUrl()));
responseDTO.setDrivingInfo(drivingInfo);

//车主信息
if (hasText(vehicleRelieve.getOwnerName())) {
OwnerInfo ownerInfo = new OwnerInfo();
ownerInfo.setOwnerName(vehicleRelieve.getOwnerName());
ownerInfo.setOwnerIdNum(vehicleRelieve.getOwnerIdNum());
ownerInfo.setOwnerPosImgUrl(minioUtil.getOuterUrl(vehicleRelieve.getOwnerPosImgUrl()));
ownerInfo.setOwnerNegImgUrl(minioUtil.getOuterUrl(vehicleRelieve.getOwnerNegImgUrl()));
ownerInfo.setProxyUrl(minioUtil.getOuterUrl(vehicleRelieve.getProxyUrl()));
responseDTO.setOwnerInfo(ownerInfo);
}

//单位信息
if (hasText(vehicleRelieve.getUnitName())) {
UnitInfo unitInfo = new UnitInfo();
unitInfo.setUnitName(vehicleRelieve.getUnitName());
unitInfo.setUnitId(vehicleRelieve.getUnitId());
unitInfo.setUnitImagesUrl(minioUtil.getOuterUrl(vehicleRelieve.getUnitImagesUrl()));
unitInfo.setProxyUrl(minioUtil.getOuterUrl(vehicleRelieve.getProxyUrl()));
unitInfo.setUnitIdType(vehicleRelieve.getUnitIdType());
responseDTO.setUnitInfo(unitInfo);
}
//占用用户信息
CustomerInfo customerInfo = new CustomerInfo();
customerInfo.setCustomerName(assOrderinfo.getCustomerName());
customerInfo.setCustomerIdNum(assOrderinfo.getCustomerIdNum());
customerInfo.setCustomerIdType(assOrderinfo.getCustomerIdType());
customerInfo.setCustomerTel(assOrderinfo.getCustomerTel());
responseDTO.setCustomerInfo(customerInfo);

return responseDTO;
}
}

+ 30
- 0
zhywpt-app-managew/src/main/java/cn/com/taiji/managew/model/ass/releasePlate/ApplyInfo.java 查看文件

@@ -0,0 +1,30 @@
package cn.com.taiji.managew.model.ass.releasePlate;

import cn.com.taiji.core.entity.dict.basic.IdType;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
* @Author:ChenChao
* @Date:2025/8/27 17:22
* @Filename:ApplyInfo
* @description:
*/
@ApiModel(description = "申请信息")
@Data
public class ApplyInfo {

@ApiModelProperty(value = "身份证人像图片地址(申请人)")
private String userPosImagesUrl;//身份证人像图片地址(申请人)
@ApiModelProperty(value = "身份证国徽图片地址(申请人)")
private String userNegImagesUrl;//身份证国徽图片地址(申请人)
@ApiModelProperty(value = "手机号", required = true)
private String mobile;//手机号
@ApiModelProperty(value = "身份证姓名", required = true)
private String name;//身份证姓名
@ApiModelProperty(value = "证件号码",required = true)
private String customerIdNum;//证件号码
@ApiModelProperty(value = "证件类型",required = true)
private IdType userIdType;//证件类型;身份证
}

+ 26
- 0
zhywpt-app-managew/src/main/java/cn/com/taiji/managew/model/ass/releasePlate/CustomerInfo.java 查看文件

@@ -0,0 +1,26 @@
package cn.com.taiji.managew.model.ass.releasePlate;

import cn.com.taiji.core.entity.dict.basic.IdType;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
* @Author:ChenChao
* @Date:2025/8/28 11:26
* @Filename:CustomerInfo
* @description:
*/
@ApiModel(description = "占用信息")
@Data
public class CustomerInfo {

@ApiModelProperty(value = "占用用户手机号")
private String customerTel;//客户手机号
@ApiModelProperty(value = "占用客户名称")
private String customerName;//客户名称
@ApiModelProperty(value = "占用客户名称")
private IdType customerIdType;//客户证件类型
@ApiModelProperty(value = "占用客户证件号")
private String customerIdNum;//客户证件号
}

+ 26
- 0
zhywpt-app-managew/src/main/java/cn/com/taiji/managew/model/ass/releasePlate/DrivingInfo.java 查看文件

@@ -0,0 +1,26 @@
package cn.com.taiji.managew.model.ass.releasePlate;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
* @Author:ChenChao
* @Date:2025/8/27 17:06
* @Filename:DrivingInfo
* @description:
*/
@ApiModel(description = "行驶证信息")
@Data
public class DrivingInfo {
@ApiModelProperty(value = "车牌号")
private String plateNum;
@ApiModelProperty(value = "车牌颜色")
private String plateColor;
@ApiModelProperty(value = "车辆所有人")
private String vehicleOwnerName;//行驶证上所有人
@ApiModelProperty(value = "行驶证正面照片")
private String vehPosImgUrl;//行驶证正面照片
@ApiModelProperty(value = "行驶证反面照片")
private String vehNegImgUrl;//行驶证反面 照片
}

+ 26
- 0
zhywpt-app-managew/src/main/java/cn/com/taiji/managew/model/ass/releasePlate/OwnerInfo.java 查看文件

@@ -0,0 +1,26 @@
package cn.com.taiji.managew.model.ass.releasePlate;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
* @Author:ChenChao
* @Date:2025/8/27 16:59
* @Filename:OwnerInfo
* @description:
*/
@Data
@ApiModel(description = "车主信息")
public class OwnerInfo {
@ApiModelProperty(value = "车主证件正面图片")
private String ownerPosImgUrl;//车主证件正面图片
@ApiModelProperty(value = "车主证件反面图片")
private String ownerNegImgUrl;//车主证件反面图片
@ApiModelProperty(value = "车主身份证上名")
private String ownerName;//车主身份证上名
@ApiModelProperty(value = "车主身份证证件号")
private String ownerIdNum;//车主身份证证件号
@ApiModelProperty(value = "授权书")
private String proxyUrl;
}

+ 27
- 0
zhywpt-app-managew/src/main/java/cn/com/taiji/managew/model/ass/releasePlate/UnitInfo.java 查看文件

@@ -0,0 +1,27 @@
package cn.com.taiji.managew.model.ass.releasePlate;

import cn.com.taiji.core.entity.dict.basic.IdType;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
* @Author:ChenChao
* @Date:2025/8/27 17:04
* @Filename:UnitInfo
* @description:
*/
@Data
@ApiModel(description = "单位资料信息")
public class UnitInfo {

private String unitImagesUrl;//营业执照图片地址
@ApiModelProperty(value = "授权书图片地址")
private String proxyUrl;//授权书图片地址
@ApiModelProperty(value = "单位证件类型")
private IdType unitIdType;//单位证件类型
@ApiModelProperty(value = "单位名称车辆所有人")
private String unitName;//单位名称车辆所有人
@ApiModelProperty(value = "单位证件编号")
private String unitId;//单位证件编号
}

Loading…
取消
儲存