|
@@ -1,21 +1,29 @@
|
|
|
package com.jkcredit.invoice.hub.service.apiCarFree;
|
|
|
|
|
|
+import cn.com.taiji.common.manager.net.http.binclient.ApiRequestException;
|
|
|
import cn.com.taiji.sdk.comm.ETCCommHelper;
|
|
|
-import cn.com.taiji.sdk.model.comm.protocol.eoms.company.CompanyQueryRequest;
|
|
|
-import cn.com.taiji.sdk.model.comm.protocol.eoms.company.CompanyQueryResponse;
|
|
|
import cn.com.taiji.sdk.model.comm.protocol.tts.vehicle.VehicleQueryRequest;
|
|
|
import cn.com.taiji.sdk.model.comm.protocol.tts.vehicle.VehicleQueryResponse;
|
|
|
import cn.com.taiji.sdk.model.comm.protocol.tts.vehicle.VehicleRegisterRequest;
|
|
|
import cn.com.taiji.sdk.model.comm.protocol.tts.vehicle.VehicleRegisterResponse;
|
|
|
import cn.com.taiji.sdk.model.comm.protocol.tts.waybill.*;
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.jkcredit.invoice.hub.constant.CommonConstant;
|
|
|
+import com.jkcredit.invoice.hub.enums.ApiResponseCodeEnum;
|
|
|
+import com.jkcredit.invoice.hub.model.dto.carFreeCarrierBillEnd.CarFreeCarrierBillEndDto;
|
|
|
+import com.jkcredit.invoice.hub.model.dto.carFreeCarrierBillStart.CarFreeCarrierBillStartDto;
|
|
|
+import com.jkcredit.invoice.hub.model.dto.vehicleRegister.VehicleRegisterDto;
|
|
|
import com.jkcredit.invoice.hub.service.base.BaseService;
|
|
|
+import com.jkcredit.invoice.hub.service.carFreeCarrierBillEnd.CarFreeCarrierBillEndService;
|
|
|
+import com.jkcredit.invoice.hub.service.carFreeCarrierBillStart.CarFreeCarrierBillStartService;
|
|
|
import com.jkcredit.invoice.hub.spi.lang.exception.ServiceException;
|
|
|
import com.jkcredit.invoice.hub.spi.rest.data.ApiResponseData;
|
|
|
import io.netty.util.internal.StringUtil;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.io.IOException;
|
|
|
|
|
@@ -28,19 +36,27 @@ import java.io.IOException;
|
|
|
@Service
|
|
|
@Slf4j
|
|
|
public class ApiCarFreeServiceImpl extends BaseService implements ApiCarFreeService {
|
|
|
+ @Autowired
|
|
|
+ CarFreeCarrierBillStartService wayBillStartService;
|
|
|
+ @Autowired
|
|
|
+ CarFreeCarrierBillEndService wayBillEndService;
|
|
|
+
|
|
|
@Override
|
|
|
public ApiResponseData vehicleRegisterQuery(JSONObject param) {
|
|
|
long costTimeStart = System.currentTimeMillis();
|
|
|
String result;
|
|
|
|
|
|
- VehicleQueryRequest request = new VehicleQueryRequest();
|
|
|
- request.setPlateNum(param.getString("plateNumber").trim());
|
|
|
- request.setPlateColor(param.getInteger("PlateColor"));
|
|
|
- request.setCompanyNum(CommonConstant.COMPANY_NUMBER);
|
|
|
- request.setWaybillSource(CommonConstant.WAYBILL_SOURCE_1);
|
|
|
- String fileName = request.getFilename();
|
|
|
-
|
|
|
try {
|
|
|
+ VehicleRegisterDto dto = JSON.toJavaObject(param, VehicleRegisterDto.class);
|
|
|
+ validate(dto);
|
|
|
+
|
|
|
+ VehicleQueryRequest request = new VehicleQueryRequest();
|
|
|
+ request.setPlateNum(dto.getPlateNumber());
|
|
|
+ request.setPlateColor(dto.getPlateColor());
|
|
|
+ request.setCompanyNum(CommonConstant.COMPANY_NUMBER);
|
|
|
+ request.setWaybillSource(CommonConstant.WAYBILL_SOURCE_1);
|
|
|
+ String fileName = request.getFilename();
|
|
|
+
|
|
|
// 调用upload 发送数据
|
|
|
VehicleQueryResponse response = ETCCommHelper.upload(fileName, request, VehicleQueryResponse.class);
|
|
|
|
|
@@ -52,9 +68,12 @@ public class ApiCarFreeServiceImpl extends BaseService implements ApiCarFreeServ
|
|
|
} catch (IOException e) {
|
|
|
log.error("[-vehicleRegisterQuery-] 网络异常 " + e);
|
|
|
throw new ServiceException(CommonConstant.QUERY_FAILED);
|
|
|
- } catch (Exception apie) {
|
|
|
+ } catch (ApiRequestException apie) {
|
|
|
log.error("[-vehicleRegisterQuery-] 错误信息:" + apie.getMessage());
|
|
|
- throw new ServiceException(CommonConstant.QUERY_FAILED);
|
|
|
+ throw new ApiRequestException(apie.getMessage(), ApiResponseCodeEnum.CODE_200.getValue());
|
|
|
+ } catch (ServiceException se) {
|
|
|
+ log.error("[-vehicleRegisterQuery-] 错误信息:" + se.getMessage());
|
|
|
+ throw new ServiceException(se.getMessage());
|
|
|
}
|
|
|
return analyzeApiResult(result);
|
|
|
}
|
|
@@ -64,13 +83,16 @@ public class ApiCarFreeServiceImpl extends BaseService implements ApiCarFreeServ
|
|
|
long costTimeStart = System.currentTimeMillis();
|
|
|
String result;
|
|
|
|
|
|
- VehicleRegisterRequest request = new VehicleRegisterRequest();
|
|
|
- request.setPlateNum(param.getString("plateNumber").trim());
|
|
|
- request.setPlateColor(param.getInteger("PlateColor"));
|
|
|
- request.setCompanyNum(CommonConstant.COMPANY_NUMBER);
|
|
|
- String fileName = request.getFilename();
|
|
|
-
|
|
|
try {
|
|
|
+ VehicleRegisterDto dto = JSON.toJavaObject(param, VehicleRegisterDto.class);
|
|
|
+ validate(dto);
|
|
|
+
|
|
|
+ VehicleRegisterRequest request = new VehicleRegisterRequest();
|
|
|
+ request.setPlateNum(dto.getPlateNumber());
|
|
|
+ request.setPlateColor(dto.getPlateColor());
|
|
|
+ request.setCompanyNum(CommonConstant.COMPANY_NUMBER);
|
|
|
+ String fileName = request.getFilename();
|
|
|
+
|
|
|
// 调用upload 发送数据
|
|
|
VehicleRegisterResponse response = ETCCommHelper.upload(fileName, request, VehicleRegisterResponse.class);
|
|
|
|
|
@@ -82,9 +104,12 @@ public class ApiCarFreeServiceImpl extends BaseService implements ApiCarFreeServ
|
|
|
} catch (IOException e) {
|
|
|
log.error("[-vehicleRegister-] 网络异常 " + e);
|
|
|
throw new ServiceException(CommonConstant.QUERY_FAILED);
|
|
|
- } catch (Exception apie) {
|
|
|
+ } catch (ApiRequestException apie) {
|
|
|
log.error("[-vehicleRegister-] 错误信息:" + apie.getMessage());
|
|
|
- throw new ServiceException(CommonConstant.QUERY_FAILED);
|
|
|
+ throw new ApiRequestException(apie.getMessage(), ApiResponseCodeEnum.CODE_200.getValue());
|
|
|
+ } catch (ServiceException se) {
|
|
|
+ log.error("[-vehicleRegister-] 错误信息:" + se.getMessage());
|
|
|
+ throw new ServiceException(se.getMessage());
|
|
|
}
|
|
|
return analyzeApiResult(result);
|
|
|
}
|
|
@@ -92,30 +117,35 @@ public class ApiCarFreeServiceImpl extends BaseService implements ApiCarFreeServ
|
|
|
@Override
|
|
|
public ApiResponseData wayBillStart(JSONObject param) {
|
|
|
long costTimeStart = System.currentTimeMillis();
|
|
|
- // todo 入库 入库失败则返回失败,不调接口
|
|
|
String result;
|
|
|
|
|
|
- WaybillStartRequest request = new WaybillStartRequest();
|
|
|
- request.setCompanyNum(CommonConstant.COMPANY_NUMBER);
|
|
|
- request.setNum(param.getString("num").trim());
|
|
|
- request.setPlateNum(param.getString("plateNumber").trim());
|
|
|
- request.setPlateColor(param.getInteger("PlateColor"));
|
|
|
- request.setStartTime(param.getString("startTime").trim());
|
|
|
- request.setSourceAddr(param.getString("sourceAddr").trim());
|
|
|
- request.setDestAddr(param.getString("destAddr").trim());
|
|
|
- request.setPredictEndTime(param.getString("predictEndTime").trim());
|
|
|
- request.setFee(param.getLong("fee"));
|
|
|
- request.setTitleType(param.getInteger("titleType"));
|
|
|
-
|
|
|
- if (!StringUtil.isNullOrEmpty(param.getString("taxplayerCode"))) {
|
|
|
- request.setTaxplayerCode(param.getString("taxplayerCode").trim());
|
|
|
- }
|
|
|
- String fileName = request.getFilename();
|
|
|
-
|
|
|
try {
|
|
|
+ CarFreeCarrierBillStartDto dto = JSONObject.toJavaObject(param, CarFreeCarrierBillStartDto.class);
|
|
|
+ validate(dto);
|
|
|
+
|
|
|
+ WaybillStartRequest request = new WaybillStartRequest();
|
|
|
+ request.setCompanyNum(CommonConstant.COMPANY_NUMBER);
|
|
|
+ request.setNum(dto.getNum());
|
|
|
+ request.setPlateNum(dto.getPlateNumber());
|
|
|
+ request.setPlateColor(dto.getPlateColor());
|
|
|
+ request.setStartTime(dto.getStartTime());
|
|
|
+ request.setSourceAddr(dto.getSourceAddr());
|
|
|
+ request.setDestAddr(dto.getDestAddr());
|
|
|
+ request.setPredictEndTime(dto.getPredictEndTime());
|
|
|
+ request.setFee(dto.getFee());
|
|
|
+ request.setTitleType(dto.getTitleType());
|
|
|
+
|
|
|
+ if (!StringUtil.isNullOrEmpty(dto.getTaxPlayerCode())) {
|
|
|
+ request.setTaxplayerCode(dto.getTaxPlayerCode());
|
|
|
+ }
|
|
|
+ String fileName = request.getFilename();
|
|
|
+
|
|
|
// 调用upload 发送数据
|
|
|
WaybillStartResponse response = ETCCommHelper.upload(fileName, request, WaybillStartResponse.class);
|
|
|
|
|
|
+ dto.setIsHistory(CommonConstant.REALTIME_WAY_BILL);
|
|
|
+ wayBillStartService.saveBillStart(dto);
|
|
|
+
|
|
|
result = response.toJson();
|
|
|
long costTimeEnd = System.currentTimeMillis();
|
|
|
log.info("[-wayBillStart-] result is " + result.replaceAll("\r|\n", "") + " , request is "
|
|
@@ -124,41 +154,54 @@ public class ApiCarFreeServiceImpl extends BaseService implements ApiCarFreeServ
|
|
|
} catch (IOException e) {
|
|
|
log.error("[-wayBillStart-] 网络异常 " + e);
|
|
|
throw new ServiceException(CommonConstant.QUERY_FAILED);
|
|
|
- } catch (Exception apie) {
|
|
|
+ } catch (ApiRequestException apie) {
|
|
|
log.error("[-wayBillStart-] 错误信息:" + apie.getMessage());
|
|
|
- throw new ServiceException(CommonConstant.QUERY_FAILED);
|
|
|
+ throw new ApiRequestException(apie.getMessage(), ApiResponseCodeEnum.CODE_200.getValue());
|
|
|
+ } catch (ServiceException se) {
|
|
|
+ log.error("[-wayBillStart-] 错误信息:" + se.getMessage());
|
|
|
+ throw new ServiceException(se.getMessage());
|
|
|
}
|
|
|
return analyzeApiResult(result);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
+ @Transactional(rollbackFor = ServiceException.class)
|
|
|
public ApiResponseData wayBillEnd(JSONObject param) {
|
|
|
long costTimeStart = System.currentTimeMillis();
|
|
|
- // todo 入库 入库失败则返回失败,不调接口
|
|
|
String result;
|
|
|
|
|
|
- WaybillEndRequest request = new WaybillEndRequest();
|
|
|
- request.setCompanyNum(CommonConstant.COMPANY_NUMBER);
|
|
|
- request.setNum(param.getString("num").trim());
|
|
|
- request.setRealDestAddr(param.getString("realDestAddr").trim());
|
|
|
- request.setEndTime(param.getString("endTime").trim());
|
|
|
- String fileName = request.getFilename();
|
|
|
-
|
|
|
try {
|
|
|
+ CarFreeCarrierBillEndDto dto = JSONObject.toJavaObject(param, CarFreeCarrierBillEndDto.class);
|
|
|
+ validate(dto);
|
|
|
+
|
|
|
+ WaybillEndRequest request = new WaybillEndRequest();
|
|
|
+ request.setCompanyNum(CommonConstant.COMPANY_NUMBER);
|
|
|
+ request.setNum(dto.getNum());
|
|
|
+ request.setRealDestAddr(dto.getRealDestAddr());
|
|
|
+ request.setEndTime(dto.getEndTime());
|
|
|
+ String fileName = request.getFilename();
|
|
|
+
|
|
|
// 调用upload 发送数据
|
|
|
WaybillEndResponse response = ETCCommHelper.upload(fileName, request, WaybillEndResponse.class);
|
|
|
|
|
|
+ dto.setIsHistory(CommonConstant.REALTIME_WAY_BILL);
|
|
|
+ wayBillEndService.saveBillEnd(dto);
|
|
|
+ wayBillStartService.updateBillStartStatus(dto.getNum(), CommonConstant.STATUS_OVER);
|
|
|
+
|
|
|
result = response.toJson();
|
|
|
long costTimeEnd = System.currentTimeMillis();
|
|
|
log.info("[-waybillEnd-] result is " + result.replaceAll("\r|\n", "") + " , request is "
|
|
|
+ param + ",costtime=" + (costTimeEnd - costTimeStart) + ",startTime=" + costTimeStart
|
|
|
+ ",endTime=" + costTimeEnd);
|
|
|
} catch (IOException e) {
|
|
|
- log.error("[-waybillEnd-] 网络异常 " + e);
|
|
|
- throw new ServiceException(CommonConstant.QUERY_FAILED);
|
|
|
- } catch (Exception apie) {
|
|
|
- log.error("[-waybillEnd-] 错误信息:" + apie.getMessage());
|
|
|
+ log.error("[-wayBillEnd-] 网络异常 " + e);
|
|
|
throw new ServiceException(CommonConstant.QUERY_FAILED);
|
|
|
+ } catch (ApiRequestException apie) {
|
|
|
+ log.error("[-wayBillEnd-] 错误信息:" + apie.getMessage());
|
|
|
+ throw new ApiRequestException(apie.getMessage(), ApiResponseCodeEnum.CODE_200.getValue());
|
|
|
+ } catch (ServiceException se) {
|
|
|
+ log.error("[-wayBillEnd-] 错误信息:" + se.getMessage());
|
|
|
+ throw new ServiceException(se.getMessage());
|
|
|
}
|
|
|
return analyzeApiResult(result);
|
|
|
}
|
|
@@ -166,30 +209,35 @@ public class ApiCarFreeServiceImpl extends BaseService implements ApiCarFreeServ
|
|
|
@Override
|
|
|
public ApiResponseData wayBillHistoryStart(JSONObject param) {
|
|
|
long costTimeStart = System.currentTimeMillis();
|
|
|
- // todo 入库 入库失败则返回失败,不调接口
|
|
|
String result;
|
|
|
|
|
|
- WaybillHistoryStartRequest request = new WaybillHistoryStartRequest();
|
|
|
- request.setCompanyNum(CommonConstant.COMPANY_NUMBER);
|
|
|
- request.setNum(param.getString("num").trim());
|
|
|
- request.setPlateNum(param.getString("plateNumber").trim());
|
|
|
- request.setPlateColor(param.getInteger("PlateColor"));
|
|
|
- request.setStartTime(param.getString("startTime").trim());
|
|
|
- request.setSourceAddr(param.getString("sourceAddr").trim());
|
|
|
- request.setDestAddr(param.getString("destAddr").trim());
|
|
|
- request.setPredictEndTime(param.getString("predictEndTime").trim());
|
|
|
- request.setFee(param.getLong("fee"));
|
|
|
- request.setTitleType(param.getInteger("titleType"));
|
|
|
-
|
|
|
- if (!StringUtil.isNullOrEmpty(param.getString("taxplayerCode"))) {
|
|
|
- request.setTaxplayerCode(param.getString("taxplayerCode").trim());
|
|
|
- }
|
|
|
- String fileName = request.getFilename();
|
|
|
-
|
|
|
try {
|
|
|
+ CarFreeCarrierBillStartDto dto = JSONObject.toJavaObject(param, CarFreeCarrierBillStartDto.class);
|
|
|
+ validate(dto);
|
|
|
+
|
|
|
+ WaybillHistoryStartRequest request = new WaybillHistoryStartRequest();
|
|
|
+ request.setCompanyNum(CommonConstant.COMPANY_NUMBER);
|
|
|
+ request.setNum(dto.getNum());
|
|
|
+ request.setPlateNum(dto.getPlateNumber());
|
|
|
+ request.setPlateColor(dto.getPlateColor());
|
|
|
+ request.setStartTime(dto.getStartTime());
|
|
|
+ request.setSourceAddr(dto.getSourceAddr());
|
|
|
+ request.setDestAddr(dto.getDestAddr());
|
|
|
+ request.setPredictEndTime(dto.getPredictEndTime());
|
|
|
+ request.setFee(dto.getFee());
|
|
|
+ request.setTitleType(dto.getTitleType());
|
|
|
+
|
|
|
+ if (!StringUtil.isNullOrEmpty(dto.getTaxPlayerCode())) {
|
|
|
+ request.setTaxplayerCode(dto.getTaxPlayerCode());
|
|
|
+ }
|
|
|
+ String fileName = request.getFilename();
|
|
|
+
|
|
|
// 调用upload 发送数据
|
|
|
WaybillHistoryStartResponse response = ETCCommHelper.upload(fileName, request, WaybillHistoryStartResponse.class);
|
|
|
|
|
|
+ dto.setIsHistory(CommonConstant.HISTORY_WAY_BILL);
|
|
|
+ wayBillStartService.saveBillStart(dto);
|
|
|
+
|
|
|
result = response.toJson();
|
|
|
long costTimeEnd = System.currentTimeMillis();
|
|
|
log.info("[-wayBillHistoryStart-] result is " + result.replaceAll("\r|\n", "") + " , request is "
|
|
@@ -198,9 +246,12 @@ public class ApiCarFreeServiceImpl extends BaseService implements ApiCarFreeServ
|
|
|
} catch (IOException e) {
|
|
|
log.error("[-wayBillHistoryStart-] 网络异常 " + e);
|
|
|
throw new ServiceException(CommonConstant.QUERY_FAILED);
|
|
|
- } catch (Exception apie) {
|
|
|
+ } catch (ApiRequestException apie) {
|
|
|
log.error("[-wayBillHistoryStart-] 错误信息:" + apie.getMessage());
|
|
|
- throw new ServiceException(CommonConstant.QUERY_FAILED);
|
|
|
+ throw new ApiRequestException(apie.getMessage(), ApiResponseCodeEnum.CODE_200.getValue());
|
|
|
+ } catch (ServiceException se) {
|
|
|
+ log.error("[-wayBillHistoryStart-] 错误信息:" + se.getMessage());
|
|
|
+ throw new ServiceException(se.getMessage());
|
|
|
}
|
|
|
return analyzeApiResult(result);
|
|
|
}
|
|
@@ -208,20 +259,26 @@ public class ApiCarFreeServiceImpl extends BaseService implements ApiCarFreeServ
|
|
|
@Override
|
|
|
public ApiResponseData wayBillHistoryEnd(JSONObject param) {
|
|
|
long costTimeStart = System.currentTimeMillis();
|
|
|
- // todo 入库 入库失败则返回失败,不调接口
|
|
|
String result;
|
|
|
|
|
|
- WaybillHistoryEndRequest request = new WaybillHistoryEndRequest();
|
|
|
- request.setCompanyNum(CommonConstant.COMPANY_NUMBER);
|
|
|
- request.setNum(param.getString("num").trim());
|
|
|
- request.setRealDestAddr(param.getString("realDestAddr").trim());
|
|
|
- request.setEndTime(param.getString("endTime").trim());
|
|
|
- String fileName = request.getFilename();
|
|
|
-
|
|
|
try {
|
|
|
+ CarFreeCarrierBillEndDto dto = JSONObject.toJavaObject(param, CarFreeCarrierBillEndDto.class);
|
|
|
+ validate(dto);
|
|
|
+
|
|
|
+ WaybillHistoryEndRequest request = new WaybillHistoryEndRequest();
|
|
|
+ request.setCompanyNum(CommonConstant.COMPANY_NUMBER);
|
|
|
+ request.setNum(dto.getNum());
|
|
|
+ request.setRealDestAddr(dto.getRealDestAddr());
|
|
|
+ request.setEndTime(dto.getEndTime());
|
|
|
+ String fileName = request.getFilename();
|
|
|
+
|
|
|
// 调用upload 发送数据
|
|
|
WaybillHistoryEndResponse response = ETCCommHelper.upload(fileName, request, WaybillHistoryEndResponse.class);
|
|
|
|
|
|
+ dto.setIsHistory(CommonConstant.HISTORY_WAY_BILL);
|
|
|
+ wayBillEndService.saveBillEnd(dto);
|
|
|
+ wayBillStartService.updateBillStartStatus(dto.getNum(), CommonConstant.STATUS_OVER);
|
|
|
+
|
|
|
result = response.toJson();
|
|
|
long costTimeEnd = System.currentTimeMillis();
|
|
|
log.info("[-wayBillHistoryEnd-] result is " + result.replaceAll("\r|\n", "") + " , request is "
|
|
@@ -230,9 +287,12 @@ public class ApiCarFreeServiceImpl extends BaseService implements ApiCarFreeServ
|
|
|
} catch (IOException e) {
|
|
|
log.error("[-wayBillHistoryEnd-] 网络异常 " + e);
|
|
|
throw new ServiceException(CommonConstant.QUERY_FAILED);
|
|
|
- } catch (Exception apie) {
|
|
|
+ } catch (ApiRequestException apie) {
|
|
|
log.error("[-wayBillHistoryEnd-] 错误信息:" + apie.getMessage());
|
|
|
- throw new ServiceException(CommonConstant.QUERY_FAILED);
|
|
|
+ throw new ApiRequestException(apie.getMessage(), ApiResponseCodeEnum.CODE_200.getValue());
|
|
|
+ } catch (ServiceException se) {
|
|
|
+ log.error("[-wayBillHistoryEnd-] 错误信息:" + se.getMessage());
|
|
|
+ throw new ServiceException(se.getMessage());
|
|
|
}
|
|
|
return analyzeApiResult(result);
|
|
|
}
|