|
|
@@ -11,24 +11,22 @@ import cn.com.taiji.core.entity.basic.QtkVehicleInfo; |
|
|
|
import cn.com.taiji.core.entity.dict.ass.AssOrderStatus; |
|
|
|
import cn.com.taiji.core.entity.dict.ass.AssOrderStep; |
|
|
|
import cn.com.taiji.core.entity.dict.ass.AssOrderType; |
|
|
|
import cn.com.taiji.core.entity.dict.basic.CardStatus; |
|
|
|
import cn.com.taiji.core.entity.dict.basic.CardType; |
|
|
|
import cn.com.taiji.core.entity.dict.basic.SourceType; |
|
|
|
import cn.com.taiji.core.entity.dict.issue.IssueOrderStep; |
|
|
|
import cn.com.taiji.core.entity.dict.issue.OrderPayStatus; |
|
|
|
import cn.com.taiji.core.entity.dict.issue.OrderType; |
|
|
|
import cn.com.taiji.core.entity.dict.issue.ShippingStatus; |
|
|
|
import cn.com.taiji.core.entity.dict.log.OperateType; |
|
|
|
import cn.com.taiji.core.entity.issue.IssueOrderPay; |
|
|
|
import cn.com.taiji.core.entity.issue.IssueOrderPost; |
|
|
|
import cn.com.taiji.core.entity.issue.IssueOrderinfo; |
|
|
|
import cn.com.taiji.core.entity.user.AccountInfo; |
|
|
|
import cn.com.taiji.core.entity.user.Staff; |
|
|
|
import cn.com.taiji.core.manager.tools.issue.QdCallUtil; |
|
|
|
import cn.com.taiji.core.model.comm.protocol.ats.model.AssOrderChannelNoticeModel; |
|
|
|
import cn.com.taiji.core.model.comm.protocol.ats.model.VehicleChangeModel; |
|
|
|
import cn.com.taiji.core.model.comm.protocol.ias.ass.ResignRequest; |
|
|
|
import cn.com.taiji.core.model.comm.protocol.ias.ass.VehicleChangeApllyRequest; |
|
|
|
import cn.com.taiji.core.model.comm.protocol.ias.ass.VehicleChangeAplyResponse; |
|
|
|
import cn.com.taiji.core.model.comm.protocol.ias.order.OrderPayApplyResponse; |
|
|
|
import cn.com.taiji.core.model.comm.protocol.ias.order.OrderPayQueryModel; |
|
|
|
import cn.com.taiji.core.model.comm.protocol.ias.order.SignQueryResponse; |
|
|
|
import cn.com.taiji.core.repo.jpa.ass.AssAgencyConfigRepo; |
|
|
@@ -44,8 +42,6 @@ import cn.com.taiji.iaw.dto.ass.sign.ResignCheckResDTO; |
|
|
|
import cn.com.taiji.iaw.dto.ass.sign.ResignResponseDTO; |
|
|
|
import cn.com.taiji.iaw.dto.ass.vehicleChange.*; |
|
|
|
import cn.com.taiji.iaw.dto.issue.order.OrderCommDTO; |
|
|
|
import cn.com.taiji.iaw.dto.issue.order.PayApplyReqDTO; |
|
|
|
import cn.com.taiji.iaw.dto.issue.order.PayApplyResDTO; |
|
|
|
import cn.com.taiji.iaw.manager.AbstractIawManager; |
|
|
|
import cn.com.taiji.iaw.model.MyFinals; |
|
|
|
import cn.com.taiji.iaw.model.ass.releasePlate.ApplyInfo; |
|
|
@@ -53,7 +49,6 @@ import cn.com.taiji.iaw.model.ass.releasePlate.DrivingInfo; |
|
|
|
import cn.com.taiji.iaw.model.ass.releasePlate.OwnerInfo; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
|
|
|
import java.time.LocalDateTime; |
|
|
|
import java.util.List; |
|
|
|
import java.util.stream.Collectors; |
|
|
@@ -94,17 +89,21 @@ public class VehicleChangeMangerImpl extends AbstractIawManager implements Vehic |
|
|
|
resDTO.setNeedProduct(false); |
|
|
|
QtkVehicleInfo vehicleInfo = qtkVehicleInfoRepo.findByVehicleId(dto.getOldVehicleId()); |
|
|
|
if (vehicleInfo == null) throw new ManagerException("车辆不存在,无法修改"); |
|
|
|
QtkCardInfo cardInfo = qtkCardInfoRepo.findByVehicleIdAndCardStatus(dto.getOldVehicleId()); |
|
|
|
if (cardInfo == null) { |
|
|
|
List<QtkCardInfo> qtkCardInfos = qtkCardInfoRepo.listByVehicleIdInUse(dto.getOldVehicleId(), new CardStatus[]{CardStatus.ZC, CardStatus.KGS}); |
|
|
|
if (isEmpty(qtkCardInfos)) { |
|
|
|
throw new ManagerException("待修改车辆,无正常卡信息,不可修改"); |
|
|
|
} |
|
|
|
if (!dto.getOldVehicleId().equals(dto.getNewVehicleId())){ |
|
|
|
AssAgencyConfig agencyConfig = assAgencyConfigRepo.findByAgencyId(cardInfo.getAgencyId()); |
|
|
|
if (agencyConfig == null) { |
|
|
|
throw new ManagerException("渠道配置信息不存在"); |
|
|
|
} |
|
|
|
if (!agencyConfig.getVehicleChange()) { |
|
|
|
resDTO.setNeedProduct(true); |
|
|
|
QtkCardInfo cardInfo = qtkCardInfos.get(0); |
|
|
|
//只有几张卡才需判断渠道是否支持,其它必须支持(邱说:直接修改) |
|
|
|
if (CardType.CHARGE_CARD == cardInfo.getCardTypeNew()){ |
|
|
|
if (!dto.getOldVehicleId().equals(dto.getNewVehicleId())){ |
|
|
|
AssAgencyConfig agencyConfig = assAgencyConfigRepo.findByAgencyId(cardInfo.getAgencyId()); |
|
|
|
if (agencyConfig == null) { |
|
|
|
throw new ManagerException("渠道配置信息不存在"); |
|
|
|
} |
|
|
|
if (!agencyConfig.getVehicleChange()) { |
|
|
|
resDTO.setNeedProduct(true); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
return resDTO; |
|
|
@@ -112,78 +111,79 @@ public class VehicleChangeMangerImpl extends AbstractIawManager implements Vehic |
|
|
|
|
|
|
|
@Override |
|
|
|
public VehicleChangeApplyResDTO apply(VehicleChangeApplyReqDTO req) throws ManagerException { |
|
|
|
req.validate(); |
|
|
|
VehicleChangeApplyResDTO responseDTO = new VehicleChangeApplyResDTO(); |
|
|
|
if (!req.getVehicleName().equals(req.getName()) && req.getOwnerIdType() == null){ |
|
|
|
responseDTO.setFlag(1); |
|
|
|
return responseDTO; |
|
|
|
} |
|
|
|
VehicleChangeApllyRequest request = copyProperties(req, new VehicleChangeApllyRequest()); |
|
|
|
request.setOrderSource(req.getOrderSource()); |
|
|
|
String openId = findOpenIdByToken(req.getAccessToken()); |
|
|
|
request.setOpenId(openId); |
|
|
|
if (SourceType.ALI == req.getOrderSource() || SourceType.WECHAT == req.getOrderSource()){ |
|
|
|
// 自营工具 和 管理端 |
|
|
|
request.setAgencyId(MyFinals.QTZL_AGENCY_ID);//// 黔通智联(自营) |
|
|
|
request.setChannelId("5201010600401150002");//// 黔通智联售后服务 |
|
|
|
} |
|
|
|
if (SourceType.SERVICE_HALL == req.getOrderSource()){ |
|
|
|
Staff staff = staffRepo.findByStaffId(req.getStaffId()); |
|
|
|
request.setAgencyId(staff.getAgencyId()); |
|
|
|
request.setChannelId(staff.getServiceHallId()); |
|
|
|
} |
|
|
|
VehicleChangeAplyResponse response = jsonPostRepeat(request); |
|
|
|
sysPersistOperateLog(OperateType.CHANGE_VEHICLE_APPLY, response.getId(), req.getOrderSource(), openId,"车辆信息变更申请"); |
|
|
|
responseDTO.setFlag(2); |
|
|
|
return responseDTO; |
|
|
|
// req.validate(); |
|
|
|
// VehicleChangeApplyResDTO responseDTO = new VehicleChangeApplyResDTO(); |
|
|
|
// if (!req.getVehicleName().equals(req.getName()) && req.getOwnerIdType() == null){ |
|
|
|
// responseDTO.setFlag(1); |
|
|
|
// return responseDTO; |
|
|
|
// } |
|
|
|
// VehicleChangeApllyRequest request = copyProperties(req, new VehicleChangeApllyRequest()); |
|
|
|
// request.setOrderSource(req.getOrderSource()); |
|
|
|
// String openId = findOpenIdByToken(req.getAccessToken()); |
|
|
|
// request.setOpenId(openId); |
|
|
|
// if (SourceType.ALI == req.getOrderSource() || SourceType.WECHAT == req.getOrderSource()){ |
|
|
|
// // 自营工具 和 管理端 |
|
|
|
// request.setAgencyId(MyFinals.QTZL_AGENCY_ID);//// 黔通智联(自营) |
|
|
|
// request.setChannelId("5201010600401150002");//// 黔通智联售后服务 |
|
|
|
// } |
|
|
|
// if (SourceType.SERVICE_HALL == req.getOrderSource()){ |
|
|
|
// Staff staff = staffRepo.findByStaffId(req.getStaffId()); |
|
|
|
// request.setAgencyId(staff.getAgencyId()); |
|
|
|
// request.setChannelId(staff.getServiceHallId()); |
|
|
|
// } |
|
|
|
// VehicleChangeAplyResponse response = jsonPostRepeat(request); |
|
|
|
// sysPersistOperateLog(OperateType.CHANGE_VEHICLE_APPLY, response.getId(), req.getOrderSource(), openId,"车辆信息变更申请"); |
|
|
|
// responseDTO.setFlag(2); |
|
|
|
// return responseDTO; |
|
|
|
return null; |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public VehicleChangeViewResDTO beforeReview(VehicleChangeViewReqDTO dto) throws ManagerException { |
|
|
|
AssOrderinfo assOrderinfo = checkAssOrder(dto.getOrderNo()); |
|
|
|
AssVehicleInfoChange vehicleInfoChange = assVehicleInfoChangeRepo.findByOrderNo(dto.getOrderNo()); |
|
|
|
// AssOrderinfo assOrderinfo = checkAssOrder(dto.getOrderNo()); |
|
|
|
// AssVehicleInfoChange vehicleInfoChange = assVehicleInfoChangeRepo.findByOrderNo(dto.getOrderNo()); |
|
|
|
VehicleChangeViewResDTO resDTO = new VehicleChangeViewResDTO(); |
|
|
|
//申请人信息 |
|
|
|
ApplyInfo applyInfo = new ApplyInfo(); |
|
|
|
applyInfo.setUserPosImagesUrl(minioUtil.getOuterUrl(vehicleInfoChange.getUserPosImagesUrl())); |
|
|
|
applyInfo.setUserNegImagesUrl(minioUtil.getOuterUrl(vehicleInfoChange.getUserNegImagesUrl())); |
|
|
|
applyInfo.setMobile(vehicleInfoChange.getUserMobile()); |
|
|
|
applyInfo.setName(vehicleInfoChange.getUserName()); |
|
|
|
applyInfo.setCustomerIdNum(vehicleInfoChange.getUserIdNum()); |
|
|
|
applyInfo.setUserIdType(vehicleInfoChange.getUserIdType().getCode()); |
|
|
|
resDTO.setApplyInfo(applyInfo); |
|
|
|
//新车辆信息 |
|
|
|
DrivingInfo newDrivingInfo = new DrivingInfo(); |
|
|
|
newDrivingInfo.setPlateNum(vehicleInfoChange.getVehiclePlate()); |
|
|
|
newDrivingInfo.setPlateColor(vehicleInfoChange.getVehiclePlateColor()); |
|
|
|
newDrivingInfo.setVehicleOwnerName(vehicleInfoChange.getVehicleName()); |
|
|
|
newDrivingInfo.setVehPosImgUrl(minioUtil.getOuterUrl(vehicleInfoChange.getVehPosImgUrl())); |
|
|
|
newDrivingInfo.setVehNegImgUrl(minioUtil.getOuterUrl(vehicleInfoChange.getVehNegImgUrl())); |
|
|
|
newDrivingInfo.setType(vehicleInfoChange.getType()); |
|
|
|
resDTO.setDrivingInfo(newDrivingInfo); |
|
|
|
//新车主信息 |
|
|
|
if (vehicleInfoChange.getOwnerIdType() != null) { |
|
|
|
OwnerInfo ownerInfo = new OwnerInfo(); |
|
|
|
ownerInfo.setOwnerIdType(vehicleInfoChange.getOwnerIdType().getCode()); |
|
|
|
ownerInfo.setOwnerName(vehicleInfoChange.getOwnerName()); |
|
|
|
ownerInfo.setOwnerIdNum(vehicleInfoChange.getOwnerIdNum()); |
|
|
|
ownerInfo.setOwnerPosImgUrl(minioUtil.getOuterUrl(vehicleInfoChange.getOwnerPosImgUrl())); |
|
|
|
ownerInfo.setOwnerNegImgUrl(minioUtil.getOuterUrl(vehicleInfoChange.getOwnerNegImgUrl())); |
|
|
|
ownerInfo.setProxyUrl(minioUtil.getOuterUrl(vehicleInfoChange.getProxyUrl())); |
|
|
|
resDTO.setOwnerInfo(ownerInfo); |
|
|
|
} |
|
|
|
//旧车辆信息 |
|
|
|
QtkVehicleInfo vehicleInfo = qtkVehicleInfoRepo.findByVehicleId(assOrderinfo.getVehicleId()); |
|
|
|
DrivingInfo oldDrivingInfo = new DrivingInfo(); |
|
|
|
oldDrivingInfo.setPlateNum(assOrderinfo.getVehiclePlate()); |
|
|
|
oldDrivingInfo.setPlateColor(assOrderinfo.getVehiclePlateColor()); |
|
|
|
oldDrivingInfo.setVehicleOwnerName(vehicleInfoChange.getOwnerName()); |
|
|
|
oldDrivingInfo.setVehPosImgUrl(minioUtil.getOuterUrl(vehicleInfo.getVehPosImgUrl())); |
|
|
|
oldDrivingInfo.setVehNegImgUrl(minioUtil.getOuterUrl(vehicleInfo.getVehNegImgUrl())); |
|
|
|
oldDrivingInfo.setType(vehicleInfo.getType()); |
|
|
|
resDTO.setOldDrivingInfo(oldDrivingInfo); |
|
|
|
resDTO.setOrderStep(assOrderinfo.getOrderStep()); |
|
|
|
resDTO.setOrderStatus(assOrderinfo.getOrderStatus()); |
|
|
|
// //申请人信息 |
|
|
|
// ApplyInfo applyInfo = new ApplyInfo(); |
|
|
|
// applyInfo.setUserPosImagesUrl(minioUtil.getOuterUrl(vehicleInfoChange.getUserPosImagesUrl())); |
|
|
|
// applyInfo.setUserNegImagesUrl(minioUtil.getOuterUrl(vehicleInfoChange.getUserNegImagesUrl())); |
|
|
|
// applyInfo.setMobile(vehicleInfoChange.getUserMobile()); |
|
|
|
// applyInfo.setName(vehicleInfoChange.getUserName()); |
|
|
|
// applyInfo.setCustomerIdNum(vehicleInfoChange.getUserIdNum()); |
|
|
|
// applyInfo.setUserIdType(vehicleInfoChange.getUserIdType().getCode()); |
|
|
|
// resDTO.setApplyInfo(applyInfo); |
|
|
|
// //新车辆信息 |
|
|
|
// DrivingInfo newDrivingInfo = new DrivingInfo(); |
|
|
|
// newDrivingInfo.setPlateNum(vehicleInfoChange.getVehiclePlate()); |
|
|
|
// newDrivingInfo.setPlateColor(vehicleInfoChange.getVehiclePlateColor()); |
|
|
|
// newDrivingInfo.setVehicleOwnerName(vehicleInfoChange.getVehicleName()); |
|
|
|
// newDrivingInfo.setVehPosImgUrl(minioUtil.getOuterUrl(vehicleInfoChange.getVehPosImgUrl())); |
|
|
|
// newDrivingInfo.setVehNegImgUrl(minioUtil.getOuterUrl(vehicleInfoChange.getVehNegImgUrl())); |
|
|
|
// newDrivingInfo.setType(vehicleInfoChange.getType()); |
|
|
|
// resDTO.setDrivingInfo(newDrivingInfo); |
|
|
|
// //新车主信息 |
|
|
|
// if (vehicleInfoChange.getOwnerIdType() != null) { |
|
|
|
// OwnerInfo ownerInfo = new OwnerInfo(); |
|
|
|
// ownerInfo.setOwnerIdType(vehicleInfoChange.getOwnerIdType().getCode()); |
|
|
|
// ownerInfo.setOwnerName(vehicleInfoChange.getOwnerName()); |
|
|
|
// ownerInfo.setOwnerIdNum(vehicleInfoChange.getOwnerIdNum()); |
|
|
|
// ownerInfo.setOwnerPosImgUrl(minioUtil.getOuterUrl(vehicleInfoChange.getOwnerPosImgUrl())); |
|
|
|
// ownerInfo.setOwnerNegImgUrl(minioUtil.getOuterUrl(vehicleInfoChange.getOwnerNegImgUrl())); |
|
|
|
// ownerInfo.setProxyUrl(minioUtil.getOuterUrl(vehicleInfoChange.getProxyUrl())); |
|
|
|
// resDTO.setOwnerInfo(ownerInfo); |
|
|
|
// } |
|
|
|
// //旧车辆信息 |
|
|
|
// QtkVehicleInfo vehicleInfo = qtkVehicleInfoRepo.findByVehicleId(assOrderinfo.getVehicleId()); |
|
|
|
// DrivingInfo oldDrivingInfo = new DrivingInfo(); |
|
|
|
// oldDrivingInfo.setPlateNum(assOrderinfo.getVehiclePlate()); |
|
|
|
// oldDrivingInfo.setPlateColor(assOrderinfo.getVehiclePlateColor()); |
|
|
|
// oldDrivingInfo.setVehicleOwnerName(vehicleInfoChange.getOwnerName()); |
|
|
|
// oldDrivingInfo.setVehPosImgUrl(minioUtil.getOuterUrl(vehicleInfo.getVehPosImgUrl())); |
|
|
|
// oldDrivingInfo.setVehNegImgUrl(minioUtil.getOuterUrl(vehicleInfo.getVehNegImgUrl())); |
|
|
|
// oldDrivingInfo.setType(vehicleInfo.getType()); |
|
|
|
// resDTO.setOldDrivingInfo(oldDrivingInfo); |
|
|
|
// resDTO.setOrderStep(assOrderinfo.getOrderStep()); |
|
|
|
// resDTO.setOrderStatus(assOrderinfo.getOrderStatus()); |
|
|
|
return resDTO; |
|
|
|
} |
|
|
|
@Override |
|
|
@@ -218,82 +218,83 @@ public class VehicleChangeMangerImpl extends AbstractIawManager implements Vehic |
|
|
|
|
|
|
|
@Override |
|
|
|
public void orderReceiveGoods(OrderCommDTO reqDto) throws ManagerException { |
|
|
|
AssOrderinfo assOrderinfo = checkAssOrder(reqDto.getOrderNo()); |
|
|
|
if (AssOrderStep.WAITING_RECEIVE != assOrderinfo.getOrderStep()) { |
|
|
|
throw new ManagerException("当前订单阶段{" + assOrderinfo.getOrderStep().getStep() + "}不可收货"); |
|
|
|
} |
|
|
|
List<IssueOrderPost> postList = issueOrderinfoPostRepo.findByOrderNoList(reqDto.getOrderNo(), OrderType.ISSUE); |
|
|
|
if (isEmpty(postList)) { |
|
|
|
throw new ManagerException("当前订单没有发货,无法进行收货"); |
|
|
|
} |
|
|
|
LocalDateTime now = LocalDateTime.now(); |
|
|
|
//更新申请表 |
|
|
|
AssVehicleInfoChange vehicleInfoChange = assVehicleInfoChangeRepo.findByOrderNo(reqDto.getOrderNo()); |
|
|
|
vehicleInfoChange.setShippingStatus(ShippingStatus.RECEIVED); |
|
|
|
vehicleInfoChange.setUpdateTime(now); |
|
|
|
assVehicleInfoChangeRepo.merge(vehicleInfoChange); |
|
|
|
//更新售后表 |
|
|
|
assOrderinfo.setOrderStep(AssOrderStep.WAITING_ACTIVE); |
|
|
|
assOrderinfo.setUpdateTime(now); |
|
|
|
assOrderinfoRepo.merge(assOrderinfo); |
|
|
|
//更新发货表 |
|
|
|
String openId = findOpenIdByToken(reqDto.getAccessToken()); |
|
|
|
IssueOrderPost issueOrderPost = postList.get(0); |
|
|
|
issueOrderPost.setReceivingTime(now); |
|
|
|
issueOrderPost.setReceiveOpId(openId); |
|
|
|
issueOrderinfoPostRepo.merge(issueOrderPost); |
|
|
|
sysPersistOperateLog(OperateType.CHANGE_VEHICLE_RECE,assOrderinfo.getId(),reqDto.getOrderSource(), openId,"车辆信息修改确认收货"); |
|
|
|
// AssOrderinfo assOrderinfo = checkAssOrder(reqDto.getOrderNo()); |
|
|
|
// if (AssOrderStep.WAITING_RECEIVE != assOrderinfo.getOrderStep()) { |
|
|
|
// throw new ManagerException("当前订单阶段{" + assOrderinfo.getOrderStep().getStep() + "}不可收货"); |
|
|
|
// } |
|
|
|
// List<IssueOrderPost> postList = issueOrderinfoPostRepo.findByOrderNoList(reqDto.getOrderNo(), OrderType.ISSUE); |
|
|
|
// if (isEmpty(postList)) { |
|
|
|
// throw new ManagerException("当前订单没有发货,无法进行收货"); |
|
|
|
// } |
|
|
|
// LocalDateTime now = LocalDateTime.now(); |
|
|
|
// //更新申请表 |
|
|
|
// AssVehicleInfoChange vehicleInfoChange = assVehicleInfoChangeRepo.findByOrderNo(reqDto.getOrderNo()); |
|
|
|
// vehicleInfoChange.setShippingStatus(ShippingStatus.RECEIVED); |
|
|
|
// vehicleInfoChange.setUpdateTime(now); |
|
|
|
// assVehicleInfoChangeRepo.merge(vehicleInfoChange); |
|
|
|
// //更新售后表 |
|
|
|
// assOrderinfo.setOrderStep(AssOrderStep.WAITING_ACTIVE); |
|
|
|
// assOrderinfo.setUpdateTime(now); |
|
|
|
// assOrderinfoRepo.merge(assOrderinfo); |
|
|
|
// //更新发货表 |
|
|
|
// String openId = findOpenIdByToken(reqDto.getAccessToken()); |
|
|
|
// IssueOrderPost issueOrderPost = postList.get(0); |
|
|
|
// issueOrderPost.setReceivingTime(now); |
|
|
|
// issueOrderPost.setReceiveOpId(openId); |
|
|
|
// issueOrderinfoPostRepo.merge(issueOrderPost); |
|
|
|
// sysPersistOperateLog(OperateType.CHANGE_VEHICLE_RECE,assOrderinfo.getId(),reqDto.getOrderSource(), openId,"车辆信息修改确认收货"); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public ResignCheckResDTO signCheck(VehicleChangeSignReqDTO dto) throws ManagerException { |
|
|
|
AssOrderinfo assOrderinfo = checkAssOrder(dto.getOrderNo()); |
|
|
|
AssVehicleInfoChange vehicleInfoChange = assVehicleInfoChangeRepo.findByOrderNo(dto.getOrderNo()); |
|
|
|
String productId = vehicleInfoChange.getProductId(); |
|
|
|
if (!hasText(productId)) { |
|
|
|
QtkCardInfo cardInfo = qtkCardInfoRepo.findByVehicleIdAndCardStatus(assOrderinfo.getCardId()); |
|
|
|
//业务进行到这里,一定有正常的卡信息,这里抛异常提示 |
|
|
|
if (cardInfo == null) throw new ManagerException("车辆信息变更无法进行签约"); |
|
|
|
productId = cardInfo.getPackageId(); |
|
|
|
} |
|
|
|
AccountInfo accountInfo = findAccountInfoByToken(dto.getAccessToken()); |
|
|
|
ResignRequest request = new ResignRequest(); |
|
|
|
request.setWxOpenId(dto.getSubOpenId()); |
|
|
|
request.setProductId(productId); |
|
|
|
//校验新车牌 |
|
|
|
request.setVehicleId(vehicleInfoChange.getVehiclePlate()+"_"+vehicleInfoChange.getVehiclePlateColor()); |
|
|
|
request.setName(accountInfo.getUserName()); |
|
|
|
request.setIdNum(accountInfo.getIdNum()); |
|
|
|
request.setFlag(1); |
|
|
|
SignQueryResponse response = jsonPostRepeat(request); |
|
|
|
ResignCheckResDTO resignCheckResDTO = copyProperties(response, new ResignCheckResDTO()); |
|
|
|
//签约成功,检测是否需要升级设备,是订单改带升级,否结束订单 |
|
|
|
if (!resignCheckResDTO.getUserState().equals("UNAUTHORIZED")) { |
|
|
|
//需要升级的,肯定没有选择产品(更换渠道) |
|
|
|
//不需要升级的分两种情况: |
|
|
|
//1、有产品,代表其更换渠道了,需要判断需不需要发货,不需要发货,签约完侯就是待激活 |
|
|
|
//2、没有产品,就结束了 |
|
|
|
AssDeviceUpgrade orderType = assDeviceUpgradeRepo.findByOrderNoAndOrderType(dto.getOrderNo(), AssOrderType.VEHICLE_UPDATE); |
|
|
|
if (orderType != null) { |
|
|
|
assOrderinfo.setOrderStep(AssOrderStep.WAITING_UPGRADE); |
|
|
|
}else { |
|
|
|
if (hasText(vehicleInfoChange.getProductId())) { |
|
|
|
if (ShippingStatus.WAIT_SHIPPING == vehicleInfoChange.getShippingStatus()) { |
|
|
|
assOrderinfo.setOrderStep(AssOrderStep.WAITING_SEND); |
|
|
|
}else { |
|
|
|
assOrderinfo.setOrderStep(AssOrderStep.WAITING_ACTIVE); |
|
|
|
} |
|
|
|
}else { |
|
|
|
assOrderinfo.setOrderStep(AssOrderStep.COMPLETED); |
|
|
|
assOrderinfo.setOrderStatus(AssOrderStatus.FINISHED); |
|
|
|
} |
|
|
|
} |
|
|
|
assOrderinfoRepo.merge(assOrderinfo); |
|
|
|
//通知渠道 |
|
|
|
asyCallBackQd(assOrderinfo.getOrderNo(), vehicleInfoChange.getCallAgencyId(), notifyChannel(assOrderinfo, vehicleInfoChange)); |
|
|
|
|
|
|
|
} |
|
|
|
return resignCheckResDTO; |
|
|
|
// AssOrderinfo assOrderinfo = checkAssOrder(dto.getOrderNo()); |
|
|
|
// AssVehicleInfoChange vehicleInfoChange = assVehicleInfoChangeRepo.findByOrderNo(dto.getOrderNo()); |
|
|
|
// String productId = vehicleInfoChange.getProductId(); |
|
|
|
// if (!hasText(productId)) { |
|
|
|
// QtkCardInfo cardInfo = qtkCardInfoRepo.findByVehicleIdAndCardStatus(assOrderinfo.getCardId()); |
|
|
|
// //业务进行到这里,一定有正常的卡信息,这里抛异常提示 |
|
|
|
// if (cardInfo == null) throw new ManagerException("车辆信息变更无法进行签约"); |
|
|
|
// productId = cardInfo.getPackageId(); |
|
|
|
// } |
|
|
|
// AccountInfo accountInfo = findAccountInfoByToken(dto.getAccessToken()); |
|
|
|
// ResignRequest request = new ResignRequest(); |
|
|
|
// request.setWxOpenId(dto.getSubOpenId()); |
|
|
|
// request.setProductId(productId); |
|
|
|
// //校验新车牌 |
|
|
|
// request.setVehicleId(vehicleInfoChange.getVehiclePlate()+"_"+vehicleInfoChange.getVehiclePlateColor()); |
|
|
|
// request.setName(accountInfo.getUserName()); |
|
|
|
// request.setIdNum(accountInfo.getIdNum()); |
|
|
|
// request.setFlag(1); |
|
|
|
// SignQueryResponse response = jsonPostRepeat(request); |
|
|
|
// ResignCheckResDTO resignCheckResDTO = copyProperties(response, new ResignCheckResDTO()); |
|
|
|
// //签约成功,检测是否需要升级设备,是订单改带升级,否结束订单 |
|
|
|
// if (!resignCheckResDTO.getUserState().equals("UNAUTHORIZED")) { |
|
|
|
// //需要升级的,肯定没有选择产品(更换渠道) |
|
|
|
// //不需要升级的分两种情况: |
|
|
|
// //1、有产品,代表其更换渠道了,需要判断需不需要发货,不需要发货,签约完侯就是待激活 |
|
|
|
// //2、没有产品,就结束了 |
|
|
|
// AssDeviceUpgrade orderType = assDeviceUpgradeRepo.findByOrderNoAndOrderType(dto.getOrderNo(), AssOrderType.VEHICLE_UPDATE); |
|
|
|
// if (orderType != null) { |
|
|
|
// assOrderinfo.setOrderStep(AssOrderStep.WAITING_UPGRADE); |
|
|
|
// }else { |
|
|
|
// if (hasText(vehicleInfoChange.getProductId())) { |
|
|
|
// if (ShippingStatus.WAIT_SHIPPING == vehicleInfoChange.getShippingStatus()) { |
|
|
|
// assOrderinfo.setOrderStep(AssOrderStep.WAITING_SEND); |
|
|
|
// }else { |
|
|
|
// assOrderinfo.setOrderStep(AssOrderStep.WAITING_ACTIVE); |
|
|
|
// } |
|
|
|
// }else { |
|
|
|
// assOrderinfo.setOrderStep(AssOrderStep.COMPLETED); |
|
|
|
// assOrderinfo.setOrderStatus(AssOrderStatus.FINISHED); |
|
|
|
// } |
|
|
|
// } |
|
|
|
// assOrderinfoRepo.merge(assOrderinfo); |
|
|
|
// //通知渠道 |
|
|
|
// asyCallBackQd(assOrderinfo.getOrderNo(), vehicleInfoChange.getCallAgencyId(), notifyChannel(assOrderinfo, vehicleInfoChange)); |
|
|
|
// |
|
|
|
// } |
|
|
|
// return resignCheckResDTO; |
|
|
|
return null; |
|
|
|
} |
|
|
|
|
|
|
|
@Override |