Selaa lähdekoodia

车辆报废

shuiqilin
zhangxin 1 vuosi sitten
vanhempi
commit
16ee297f06

+ 118
- 0
src/main/java/com/qtzl/alterSales/dao/entity/second/AflVehicleScrapInfo.java Näytä tiedosto

@@ -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-13
*/
@Entity
@Table(name="AFL_VEHICLE_SCRAP_INFO")
public class AflVehicleScrapInfo extends AbstractInsertTimeEntity {

/** 用户编号 */
private String openNo ;
/** 账户编号 */
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_NO")
public String getOpenNo(){
return this.openNo;
}
/** 用户编号 */
public void setOpenNo(String openNo){
this.openNo=openNo;
}
/** 账户编号 */
@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;
}
}

+ 11
- 0
src/main/java/com/qtzl/alterSales/dao/repo/jpa/second/AflVehicleScrapInfoRepo.java Näytä tiedosto

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

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

public interface AflVehicleScrapInfoRepo extends JpaRepository<AflVehicleScrapInfo, String>, JpaSpecificationExecutor<AflVehicleScrapInfo> {



}

+ 97
- 0
src/main/java/com/qtzl/alterSales/manager/handler/AflVehicleScrapInfoFindPageHandler.java Näytä tiedosto

@@ -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.AflVehicleScrapInfo;
import com.qtzl.alterSales.dao.repo.jpa.second.AflVehicleScrapInfoRepo;
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.AflVehicleScrapInfoPageResponse;
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 AflVehicleScrapInfoFindPageHandler extends AbstractAfterSalesManager<AflVehicleScrapInfoPageRequest> {

@Resource
AflVehicleScrapInfoRepo aflVehicleScrapInfoRepo;


public AflVehicleScrapInfoFindPageHandler() {
super(AfterSalesCmd.FINDPAGEVEHICLESCRAP, AflVehicleScrapInfoPageRequest.class);
}

@Override
public String handleInternal(String filename, AflVehicleScrapInfoPageRequest request) throws ServiceHandleException {
try {
Page<AflVehicleScrapInfo> 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 AflVehicleScrapInfoPageResponse toResponse(Page<AflVehicleScrapInfo> page, AflVehicleScrapInfoPageRequest request) {
final AflVehicleScrapInfoPageResponse response = new AflVehicleScrapInfoPageResponse();
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<AflVehicleScrapInfo> formVoList = page.getContent().stream().collect(Collectors.toList());
response.setData(formVoList);
return response;
}

private Page<AflVehicleScrapInfo> select(AflVehicleScrapInfoPageRequest request) throws ServiceHandleException {
if (request.getPageSize() > 100) {
throw UcServiceError.BUSINESS_VALIDATE_ERR.toHandleException("请求每页数量过大 " + request.getPageSize());
}
return aflVehicleScrapInfoRepo.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/AflVehicleScrapInfoPageRequest.java Näytä tiedosto

@@ -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 = "")
public class AflVehicleScrapInfoPageRequest extends AbstractAfterSalesPageRequest<AflOffOpenInfoPageResponse> {

/*** 账户编号*/
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/AflVehicleScrapInfoPageResponse.java Näytä tiedosto

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

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

/***
* <p>
*
* </p>
**/
public class AflVehicleScrapInfoPageResponse extends AbstractAfterSalesPageResponse<AflVehicleScrapInfo> {

}

+ 1
- 0
src/main/java/com/qtzl/alterSales/manager/service/AfterSalesCmd.java Näytä tiedosto

@@ -127,6 +127,7 @@ public enum AfterSalesCmd implements ApiCmd {
UPDATESTATUSAPPLICATIONFUNCTION("修改-应用功能管理配置状态修改接口", UcServiceType.AFTERSALES),
FINDPAGEOFFOPENINFO("查询-挂失/解挂记录分页查询接口", UcServiceType.AFTERSALES),
DEACTIVATEENABLERECORDPAGE("停用/启用管理分页查询", UcServiceType.AFTERSALES),
FINDPAGEVEHICLESCRAP("查询-车辆报废分页查询接口", UcServiceType.AFTERSALES),
// 部中心用户账户体系相关接口
SENDSMSCODE("业务短信验证码发送", UcServiceType.AFTERSALES),
BIND("用户绑定手机号", UcServiceType.AFTERSALES),

Loading…
Peruuta
Tallenna