Browse Source

车辆过户/标签更换

shuiqilin
zhangxin 1 year ago
parent
commit
ce5861a825

+ 108
- 0
src/main/java/com/qtzl/alterSales/dao/entity/second/AflObuChangeInfo.java View File

@@ -0,0 +1,108 @@
package com.qtzl.alterSales.dao.entity.second;

import com.txffp.api.core.dao.entity.AbstractInsertTimeEntity;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;

/**
* 标签更换;
* @author : zhangxin
* @date : 2024-6-14
*/
@Entity
@Table(name="AFL_OBUCHANGE_INFO")
public class AflObuChangeInfo extends AbstractInsertTimeEntity {

/** 用户编号 */
private String openId ;
/** 账户编号 */
private String accountId ;
/** 车辆编号 */
private String vehicleId ;
/** 接口凭证 */
private String accessToken ;
/** 车牌号 */
private String plateNum ;
/** 车牌颜色 */
private Integer plateColor ;
/** 身份证正面照 */
private String userIdImageUrl ;
/** 创建人 */
private String creator ;

/** 用户编号 */
@Column(name ="OPEN_ID")
public String getOpenId() {
return openId;
}

public void setOpenId(String openId) {
this.openId = openId;
}
/** 账户编号 */
@Column(name ="ACCOUNT_ID")
public String getAccountId(){
return this.accountId;
}
/** 账户编号 */
public void setAccountId(String accountId){
this.accountId=accountId;
}
/** 车辆编号 */
@Column(name ="VEHICLE_ID")
public String getVehicleId(){
return this.vehicleId;
}
/** 车辆编号 */
public void setVehicleId(String vehicleId){
this.vehicleId=vehicleId;
}
/** 接口凭证 */
@Column(name ="ACCESS_TOKEN")
public String getAccessToken(){
return this.accessToken;
}
/** 接口凭证 */
public void setAccessToken(String accessToken){
this.accessToken=accessToken;
}
/** 车牌号 */
@Column(name ="PLATE_NUM")
public String getPlateNum(){
return this.plateNum;
}
/** 车牌号 */
public void setPlateNum(String plateNum){
this.plateNum=plateNum;
}
/** 车牌颜色 */
@Column(name ="PLATE_COLOR")
public Integer getPlateColor(){
return this.plateColor;
}
/** 车牌颜色 */
public void setPlateColor(Integer plateColor){
this.plateColor=plateColor;
}
/** 身份证正面照 */
@Column(name ="USER_ID_IMAGE_URL")
public String getUserIdImageUrl(){
return this.userIdImageUrl;
}
/** 身份证正面照 */
public void setUserIdImageUrl(String userIdImageUrl){
this.userIdImageUrl=userIdImageUrl;
}

/** 创建人 */
@Column(name ="CREATOR")
public String getCreator(){
return this.creator;
}
/** 创建人 */
public void setCreator(String creator){
this.creator=creator;
}
}

+ 6
- 6
src/main/java/com/qtzl/alterSales/dao/entity/second/AflVehicleScrapInfo.java View File

@@ -16,7 +16,7 @@ import javax.persistence.Table;
public class AflVehicleScrapInfo extends AbstractInsertTimeEntity {

/** 用户编号 */
private String openNo ;
private String openId ;
/** 账户编号 */
private String accountId ;
/** 车辆编号 */
@@ -34,13 +34,13 @@ public class AflVehicleScrapInfo extends AbstractInsertTimeEntity {
/** 创建人 */
private String creator ;
/** 用户编号 */
@Column(name ="OPEN_NO")
public String getOpenNo(){
return this.openNo;
@Column(name ="OPEN_ID")
public String getOpenId(){
return this.openId;
}
/** 用户编号 */
public void setOpenNo(String openNo){
this.openNo=openNo;
public void setOpenId(String openId){
this.openId=openId;
}
/** 账户编号 */
@Column(name ="ACCOUNT_ID")

+ 118
- 0
src/main/java/com/qtzl/alterSales/dao/entity/second/AflVehicleTransferInfo.java View File

@@ -0,0 +1,118 @@
package com.qtzl.alterSales.dao.entity.second;

import com.txffp.api.core.dao.entity.AbstractInsertTimeEntity;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;

/**
* 车辆过户信息;
* @author : zhangxin
* @date : 2024-6-14
*/
@Entity
@Table(name="AFL_VEHICLE_TRANSFER_INFO")
public class AflVehicleTransferInfo extends AbstractInsertTimeEntity {

/** 用户编号 */
private String openId ;
/** 账户编号 */
private String accountId ;
/** 车辆编号 */
private String vehicleId ;
/** 接口凭证 */
private String accessToken ;
/** 车牌号 */
private String plateNum ;
/** 车牌颜色 */
private Integer plateColor ;
/** 身份证正面照 */
private String userIdImageUrl ;
/** 操作类型(0-新车辆过户;1-老车辆过户) */
private Integer operationType ;
/** 创建人 */
private String creator ;

/** 用户编号 */
@Column(name ="OPEN_ID")
public String getOpenId() {
return openId;
}

public void setOpenId(String openId) {
this.openId = openId;
}
/** 账户编号 */
@Column(name ="ACCOUNT_ID")
public String getAccountId(){
return this.accountId;
}
/** 账户编号 */
public void setAccountId(String accountId){
this.accountId=accountId;
}
/** 车辆编号 */
@Column(name ="VEHICLE_ID")
public String getVehicleId(){
return this.vehicleId;
}
/** 车辆编号 */
public void setVehicleId(String vehicleId){
this.vehicleId=vehicleId;
}
/** 接口凭证 */
@Column(name ="ACCESS_TOKEN")
public String getAccessToken(){
return this.accessToken;
}
/** 接口凭证 */
public void setAccessToken(String accessToken){
this.accessToken=accessToken;
}
/** 车牌号 */
@Column(name ="PLATE_NUM")
public String getPlateNum(){
return this.plateNum;
}
/** 车牌号 */
public void setPlateNum(String plateNum){
this.plateNum=plateNum;
}
/** 车牌颜色 */
@Column(name ="PLATE_COLOR")
public Integer getPlateColor(){
return this.plateColor;
}
/** 车牌颜色 */
public void setPlateColor(Integer plateColor){
this.plateColor=plateColor;
}
/** 身份证正面照 */
@Column(name ="USER_ID_IMAGE_URL")
public String getUserIdImageUrl(){
return this.userIdImageUrl;
}
/** 身份证正面照 */
public void setUserIdImageUrl(String userIdImageUrl){
this.userIdImageUrl=userIdImageUrl;
}
/** 操作类型(0-新车辆过户;1-老车辆过户) */
@Column(name ="OPERATION_TYPE")
public Integer getOperationType(){
return this.operationType;
}
/** 操作类型(0-新车辆过户;1-老车辆过户) */
public void setOperationType(Integer operationType){
this.operationType=operationType;
}
/** 创建人 */
@Column(name ="CREATOR")
public String getCreator(){
return this.creator;
}
/** 创建人 */
public void setCreator(String creator){
this.creator=creator;
}
}

+ 9
- 0
src/main/java/com/qtzl/alterSales/dao/repo/jpa/second/AflObuChangeInfoRepo.java View File

@@ -0,0 +1,9 @@
package com.qtzl.alterSales.dao.repo.jpa.second;

import com.qtzl.alterSales.dao.entity.second.AflObuChangeInfo;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;

public interface AflObuChangeInfoRepo extends JpaRepository<AflObuChangeInfo, String>, JpaSpecificationExecutor<AflObuChangeInfo> {

}

+ 9
- 0
src/main/java/com/qtzl/alterSales/dao/repo/jpa/second/AflVehicleTransferInfoRepo.java View File

@@ -0,0 +1,9 @@
package com.qtzl.alterSales.dao.repo.jpa.second;

import com.qtzl.alterSales.dao.entity.second.AflVehicleTransferInfo;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;

public interface AflVehicleTransferInfoRepo extends JpaRepository<AflVehicleTransferInfo, String>, JpaSpecificationExecutor<AflVehicleTransferInfo> {

}

+ 97
- 0
src/main/java/com/qtzl/alterSales/manager/handler/AflObuChangeInfoFindPageHandler.java View File

@@ -0,0 +1,97 @@
package com.qtzl.alterSales.manager.handler;

import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import com.google.common.collect.Lists;
import com.qtzl.alterSales.dao.entity.second.AflObuChangeInfo;
import com.qtzl.alterSales.dao.repo.jpa.second.AflObuChangeInfoRepo;
import com.qtzl.alterSales.manager.abstracts.AbstractAfterSalesManager;
import com.qtzl.alterSales.manager.model.protocol.UcServiceError;
import com.qtzl.alterSales.manager.model.protocol.sales.AflObuChangeInfoPageRequest;
import com.qtzl.alterSales.manager.model.protocol.sales.AflObuChangeInfoPageResponse;
import com.qtzl.alterSales.manager.service.AfterSalesCmd;
import com.txffp.api.core.manager.comm.annotation.ApiHandler;
import org.apache.commons.lang3.StringUtils;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import javax.persistence.criteria.Predicate;
import java.time.LocalDateTime;
import java.util.List;
import java.util.stream.Collectors;

/**
* 标签更换管理分页查询;
* @author : zhangxin
* @date : 2024-6-12
*/
@Service
@ApiHandler
public class AflObuChangeInfoFindPageHandler extends AbstractAfterSalesManager<AflObuChangeInfoPageRequest> {

@Resource
AflObuChangeInfoRepo aflObuChangeInfoRepo;


public AflObuChangeInfoFindPageHandler() {
super(AfterSalesCmd.FINDPAGEOBUCHANGE, AflObuChangeInfoPageRequest.class);
}

@Override
public String handleInternal(String filename, AflObuChangeInfoPageRequest request) throws ServiceHandleException {
try {
Page<AflObuChangeInfo> page = select(request);
return toResponse(page, request).toJson();
} catch (Exception e) {
if (e instanceof ServiceHandleException) {
throw e;
}
logger.error("选装-查询标签更换管理失败:{}", e.getMessage());
throw UcServiceError.BUSINESS_VALIDATE_ERR.toHandleException("查询标签更换管理失败");
}
}

private AflObuChangeInfoPageResponse toResponse(Page<AflObuChangeInfo> page, AflObuChangeInfoPageRequest request) {
final AflObuChangeInfoPageResponse response = new AflObuChangeInfoPageResponse();
response.setCurrentPage(request.getPageNo());
response.setPageSize(request.getPageSize());
response.setPageCount(page.getTotalPages());
response.setTotalCount(page.getTotalElements());
if (isEmpty(page.getContent())) {
response.setData(Lists.newArrayList());
return response;
}
List<AflObuChangeInfo> formVoList = page.getContent().stream().collect(Collectors.toList());
response.setData(formVoList);
return response;
}

private Page<AflObuChangeInfo> select(AflObuChangeInfoPageRequest request) throws ServiceHandleException {
if (request.getPageSize() > 100) {
throw UcServiceError.BUSINESS_VALIDATE_ERR.toHandleException("请求每页数量过大 " + request.getPageSize());
}
return aflObuChangeInfoRepo.findAll(((root, query, cb) -> {
List<Predicate> list = Lists.newArrayList();
if (!StringUtils.isEmpty(request.getAccountId())) {
list.add(cb.equal(root.<String>get("accountId"), request.getAccountId()));
}
if (!StringUtils.isEmpty(request.getPlateNum())) {
list.add(cb.equal(root.get("plateNum"), request.getPlateNum()));
}
if (request.getPlateColor()!=null) {
list.add(cb.equal(root.<Integer>get("plateColor"), request.getPlateColor()));
}
if (request.getInsertTimeEnd()!=null) {
list.add(cb.lessThanOrEqualTo(root.<LocalDateTime>get("insertTime"), request.getInsertTimeEnd()));
}
if (request.getInsertTimeStart()!=null) {
list.add(cb.greaterThanOrEqualTo(root.<LocalDateTime>get("insertTime"), request.getInsertTimeStart()));
}
Predicate[] p = new Predicate[list.size()];
return cb.and(list.toArray(p));
}), PageRequest.of(request.getPageNo() - 1, request.getPageSize(),
Sort.by(Sort.Direction.DESC, "insertTime")));
}
}

+ 97
- 0
src/main/java/com/qtzl/alterSales/manager/handler/AflVehicleTransferInfoFindPageHandler.java View File

@@ -0,0 +1,97 @@
package com.qtzl.alterSales.manager.handler;

import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import com.google.common.collect.Lists;
import com.qtzl.alterSales.dao.entity.second.AflVehicleTransferInfo;
import com.qtzl.alterSales.dao.repo.jpa.second.AflVehicleTransferInfoRepo;
import com.qtzl.alterSales.manager.abstracts.AbstractAfterSalesManager;
import com.qtzl.alterSales.manager.model.protocol.UcServiceError;
import com.qtzl.alterSales.manager.model.protocol.sales.AflVehicleScrapInfoPageRequest;
import com.qtzl.alterSales.manager.model.protocol.sales.AflVehicleTransferInfoPageResponse;
import com.qtzl.alterSales.manager.service.AfterSalesCmd;
import com.txffp.api.core.manager.comm.annotation.ApiHandler;
import org.apache.commons.lang3.StringUtils;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import javax.persistence.criteria.Predicate;
import java.time.LocalDateTime;
import java.util.List;
import java.util.stream.Collectors;

/**
* 车辆过户管理分页查询;
* @author : zhangxin
* @date : 2024-6-12
*/
@Service
@ApiHandler
public class AflVehicleTransferInfoFindPageHandler extends AbstractAfterSalesManager<AflVehicleScrapInfoPageRequest> {

@Resource
AflVehicleTransferInfoRepo aflVehicleTransferInfoRepo;


public AflVehicleTransferInfoFindPageHandler() {
super(AfterSalesCmd.FINDPAGEVEHICLETRANSFER, AflVehicleScrapInfoPageRequest.class);
}

@Override
public String handleInternal(String filename, AflVehicleScrapInfoPageRequest request) throws ServiceHandleException {
try {
Page<AflVehicleTransferInfo> page = select(request);
return toResponse(page, request).toJson();
} catch (Exception e) {
if (e instanceof ServiceHandleException) {
throw e;
}
logger.error("选装-查询车辆过户管理失败:{}", e.getMessage());
throw UcServiceError.BUSINESS_VALIDATE_ERR.toHandleException("查询车辆过户管理失败");
}
}

private AflVehicleTransferInfoPageResponse toResponse(Page<AflVehicleTransferInfo> page, AflVehicleScrapInfoPageRequest request) {
final AflVehicleTransferInfoPageResponse response = new AflVehicleTransferInfoPageResponse();
response.setCurrentPage(request.getPageNo());
response.setPageSize(request.getPageSize());
response.setPageCount(page.getTotalPages());
response.setTotalCount(page.getTotalElements());
if (isEmpty(page.getContent())) {
response.setData(Lists.newArrayList());
return response;
}
List<AflVehicleTransferInfo> formVoList = page.getContent().stream().collect(Collectors.toList());
response.setData(formVoList);
return response;
}

private Page<AflVehicleTransferInfo> select(AflVehicleScrapInfoPageRequest request) throws ServiceHandleException {
if (request.getPageSize() > 100) {
throw UcServiceError.BUSINESS_VALIDATE_ERR.toHandleException("请求每页数量过大 " + request.getPageSize());
}
return aflVehicleTransferInfoRepo.findAll(((root, query, cb) -> {
List<Predicate> list = Lists.newArrayList();
if (!StringUtils.isEmpty(request.getAccountId())) {
list.add(cb.equal(root.<String>get("accountId"), request.getAccountId()));
}
if (!StringUtils.isEmpty(request.getPlateNum())) {
list.add(cb.equal(root.get("plateNum"), request.getPlateNum()));
}
if (request.getPlateColor()!=null) {
list.add(cb.equal(root.<Integer>get("plateColor"), request.getPlateColor()));
}
if (request.getInsertTimeEnd()!=null) {
list.add(cb.lessThanOrEqualTo(root.<LocalDateTime>get("insertTime"), request.getInsertTimeEnd()));
}
if (request.getInsertTimeStart()!=null) {
list.add(cb.greaterThanOrEqualTo(root.<LocalDateTime>get("insertTime"), request.getInsertTimeStart()));
}
Predicate[] p = new Predicate[list.size()];
return cb.and(list.toArray(p));
}), PageRequest.of(request.getPageNo() - 1, request.getPageSize(),
Sort.by(Sort.Direction.DESC, "insertTime")));
}
}

+ 68
- 0
src/main/java/com/qtzl/alterSales/manager/model/protocol/sales/AflObuChangeInfoPageRequest.java View File

@@ -0,0 +1,68 @@
package com.qtzl.alterSales.manager.model.protocol.sales;

import com.qtzl.alterSales.manager.model.protocol.AbstractAfterSalesPageRequest;
import com.qtzl.alterSales.manager.service.AfterSalesCmd;
import com.txffp.api.core.manager.comm.annotation.Api;

import java.time.LocalDateTime;

/***
* <p>
*
* </p>

**/
@Api(cmdClazz = AfterSalesCmd.class, cmd = "FINDPAGEOBUCHANGE")
public class AflObuChangeInfoPageRequest extends AbstractAfterSalesPageRequest<AflObuChangeInfoPageResponse> {

/*** 账户编号*/
private String accountId;
/*** 车牌号 */
private String plateNum;
/*** 车牌颜色 */
private Integer plateColor;
/** 创建时间开始时间 */
private LocalDateTime insertTimeStart;
/** 创建时间结束时间 */
private LocalDateTime insertTimeEnd;

public String getAccountId() {
return accountId;
}

public void setAccountId(String accountId) {
this.accountId = accountId;
}

public LocalDateTime getInsertTimeStart() {
return insertTimeStart;
}

public void setInsertTimeStart(LocalDateTime insertTimeStart) {
this.insertTimeStart = insertTimeStart;
}

public LocalDateTime getInsertTimeEnd() {
return insertTimeEnd;
}

public void setInsertTimeEnd(LocalDateTime insertTimeEnd) {
this.insertTimeEnd = insertTimeEnd;
}

public String getPlateNum() {
return plateNum;
}

public void setPlateNum(String plateNum) {
this.plateNum = plateNum;
}

public Integer getPlateColor() {
return plateColor;
}

public void setPlateColor(Integer plateColor) {
this.plateColor = plateColor;
}
}

+ 13
- 0
src/main/java/com/qtzl/alterSales/manager/model/protocol/sales/AflObuChangeInfoPageResponse.java View File

@@ -0,0 +1,13 @@
package com.qtzl.alterSales.manager.model.protocol.sales;

import com.qtzl.alterSales.dao.entity.second.AflObuChangeInfo;
import com.qtzl.alterSales.manager.model.protocol.AbstractAfterSalesPageResponse;

/***
* <p>
*
* </p>
**/
public class AflObuChangeInfoPageResponse extends AbstractAfterSalesPageResponse<AflObuChangeInfo> {

}

+ 1
- 1
src/main/java/com/qtzl/alterSales/manager/model/protocol/sales/AflVehicleScrapInfoPageRequest.java View File

@@ -12,7 +12,7 @@ import java.time.LocalDateTime;
* </p>

**/
@Api(cmdClazz = AfterSalesCmd.class, cmd = "")
@Api(cmdClazz = AfterSalesCmd.class, cmd = "FINDPAGEVEHICLESCRAP")
public class AflVehicleScrapInfoPageRequest extends AbstractAfterSalesPageRequest<AflOffOpenInfoPageResponse> {

/*** 账户编号*/

+ 68
- 0
src/main/java/com/qtzl/alterSales/manager/model/protocol/sales/AflVehicleTransferInfoPageRequest.java View File

@@ -0,0 +1,68 @@
package com.qtzl.alterSales.manager.model.protocol.sales;

import com.qtzl.alterSales.manager.model.protocol.AbstractAfterSalesPageRequest;
import com.qtzl.alterSales.manager.service.AfterSalesCmd;
import com.txffp.api.core.manager.comm.annotation.Api;

import java.time.LocalDateTime;

/***
* <p>
*
* </p>

**/
@Api(cmdClazz = AfterSalesCmd.class, cmd = "FINDPAGEVEHICLETRANSFER")
public class AflVehicleTransferInfoPageRequest extends AbstractAfterSalesPageRequest<AflVehicleTransferInfoPageResponse> {

/*** 账户编号*/
private String accountId;
/*** 车牌号 */
private String plateNum;
/*** 车牌颜色 */
private Integer plateColor;
/** 创建时间开始时间 */
private LocalDateTime insertTimeStart;
/** 创建时间结束时间 */
private LocalDateTime insertTimeEnd;

public String getAccountId() {
return accountId;
}

public void setAccountId(String accountId) {
this.accountId = accountId;
}

public LocalDateTime getInsertTimeStart() {
return insertTimeStart;
}

public void setInsertTimeStart(LocalDateTime insertTimeStart) {
this.insertTimeStart = insertTimeStart;
}

public LocalDateTime getInsertTimeEnd() {
return insertTimeEnd;
}

public void setInsertTimeEnd(LocalDateTime insertTimeEnd) {
this.insertTimeEnd = insertTimeEnd;
}

public String getPlateNum() {
return plateNum;
}

public void setPlateNum(String plateNum) {
this.plateNum = plateNum;
}

public Integer getPlateColor() {
return plateColor;
}

public void setPlateColor(Integer plateColor) {
this.plateColor = plateColor;
}
}

+ 14
- 0
src/main/java/com/qtzl/alterSales/manager/model/protocol/sales/AflVehicleTransferInfoPageResponse.java View File

@@ -0,0 +1,14 @@
package com.qtzl.alterSales.manager.model.protocol.sales;

import com.qtzl.alterSales.dao.entity.second.AflVehicleScrapInfo;
import com.qtzl.alterSales.dao.entity.second.AflVehicleTransferInfo;
import com.qtzl.alterSales.manager.model.protocol.AbstractAfterSalesPageResponse;

/***
* <p>
*
* </p>
**/
public class AflVehicleTransferInfoPageResponse extends AbstractAfterSalesPageResponse<AflVehicleTransferInfo> {

}

+ 2
- 0
src/main/java/com/qtzl/alterSales/manager/service/AfterSalesCmd.java View File

@@ -128,6 +128,8 @@ public enum AfterSalesCmd implements ApiCmd {
FINDPAGEOFFOPENINFO("查询-挂失/解挂记录分页查询接口", UcServiceType.AFTERSALES),
DEACTIVATEENABLERECORDPAGE("停用/启用管理分页查询", UcServiceType.AFTERSALES),
FINDPAGEVEHICLESCRAP("查询-车辆报废分页查询接口", UcServiceType.AFTERSALES),
FINDPAGEVEHICLETRANSFER("查询-车辆过户分页查询接口", UcServiceType.AFTERSALES),
FINDPAGEOBUCHANGE("查询-标签更换分页查询接口", UcServiceType.AFTERSALES),
// 部中心用户账户体系相关接口
SENDSMSCODE("业务短信验证码发送", UcServiceType.AFTERSALES),
BIND("用户绑定手机号", UcServiceType.AFTERSALES),

Loading…
Cancel
Save