瀏覽代碼

Merge remote-tracking branch 'origin/master'

master
梁超 3 週之前
父節點
當前提交
02f4b66307
共有 29 個文件被更改,包括 710 次插入352 次删除
  1. 16
    0
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/config/AppConfig.java
  2. 21
    0
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/dict/RequestDataType.java
  3. 20
    0
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/dict/RequestStatus.java
  4. 72
    18
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/AbstractCommManager.java
  5. 226
    0
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/AbstractHandleManager.java
  6. 47
    47
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/MyCommHandleManager.java
  7. 19
    0
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/handler/AbstractIasServiceHandler.java
  8. 0
    15
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/handler/AbstractSampleServiceHandler.java
  9. 7
    12
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/handler/ProvinceHandler.java
  10. 61
    61
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/handler/SampleServiceHandler.java
  11. 4
    23
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/refund/GetOriginListManager.java
  12. 8
    25
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/refund/OrderPushManager.java
  13. 7
    25
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/refund/OrderSaveManager.java
  14. 7
    25
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/refund/QueryHandleRefundManager.java
  15. 16
    25
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/refund/QueryNewRefundManager.java
  16. 9
    0
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/PersistException.java
  17. 28
    0
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/RequestEvent.java
  18. 34
    0
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/ServiceLogEvent.java
  19. 1
    1
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/refundHttp/GetHandleRecordsResponse.java
  20. 1
    1
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/refundHttp/OrderPushAsyncRequest.java
  21. 1
    1
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/refundHttp/OrderPushAsyncResponse.java
  22. 1
    1
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/refundHttp/OrderSaveAsyncRequest.java
  23. 1
    1
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/refundHttp/OrderSaveAsyncResponse.java
  24. 1
    1
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/refundHttp/QueryNewRefundAsyncResponse.java
  25. 2
    0
      zhywpt-service-ias/src/main/java/cn/com/taiji/ias/tools/SourceTargetMapper.java
  26. 10
    22
      zhywpt-service-ias/src/main/resources/bootstrap.yml
  27. 4
    4
      zhywpt-service-ias/src/test/java/cn/com/taiji/oqs/client/demo/TestFeignClientRequest.java
  28. 42
    0
      zhywpt-service-ias/src/test/java/cn/com/taiji/oqs/client/province/TestProvinceHandler.java
  29. 44
    44
      zhywpt-service-inss/src/test/java/cn/com/taiji/oqs/client/demo/TestFeignClientRequest.java

+ 16
- 0
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/config/AppConfig.java 查看文件

@@ -10,6 +10,7 @@ import org.springframework.context.annotation.AdviceMode;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import org.springframework.transaction.annotation.EnableTransactionManagement;
import org.springframework.validation.beanvalidation.LocalValidatorFactoryBean;

@@ -18,6 +19,8 @@ import cn.com.taiji.common.manager.AbstractManager;
import cn.com.taiji.common.pub.AppEnv;
import cn.com.taiji.common.repo.jpa.MyJpaRespositoryFactoryBean;

import java.util.concurrent.ThreadPoolExecutor;

@Configuration
@EntityScan(value = {"cn.com.taiji." + AppConfig.APP_NAME + ".entity", "cn.com.taiji.core.entity"})
@EnableJpaRepositories(
@@ -51,4 +54,17 @@ public class AppConfig extends AbstractManager {
public CommonBatchJdbcDao commonJdbcDao() {
return new CommonBatchJdbcDao(dataSource);
}


@Bean(name = "myExecutor")
public ThreadPoolTaskExecutor threadPoolExecutor() {
ThreadPoolTaskExecutor threadPoolTaskExecutor = new ThreadPoolTaskExecutor();
threadPoolTaskExecutor.setCorePoolSize(256);
threadPoolTaskExecutor.setMaxPoolSize(512);
threadPoolTaskExecutor.setKeepAliveSeconds(60);
threadPoolTaskExecutor.setQueueCapacity(100);
threadPoolTaskExecutor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
return threadPoolTaskExecutor;
}

}

+ 21
- 0
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/dict/RequestDataType.java 查看文件

@@ -0,0 +1,21 @@
package cn.com.taiji.ias.dict;

public enum RequestDataType {

VEHICLE_PLATE_CHECK("部中心车牌校验") {},
TOUCH_TOKEN("延长token") {},
UPLOAD_RECHARGE("上传充值交易") {},
UPLOAD_REVERSAL("上传充值冲正交易") {},
VEHICLE_RELEASE("解除车牌占用"),
;

private final String value;

private RequestDataType(String value) {
this.value = value;
}

public String getValue() {
return value;
}
}

+ 20
- 0
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/dict/RequestStatus.java 查看文件

@@ -0,0 +1,20 @@
package cn.com.taiji.ias.dict;

public enum RequestStatus {

RECEIVE("接收") {},
FORMAT_VALID("格式校验") {},
BUSINESS_VALID("业务校验") {},
PERSIST("持久化") {},;

private final String value;

private RequestStatus(String value) {
this.value = value;
}

public String getValue() {
return value;
}

}

+ 72
- 18
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/AbstractCommManager.java 查看文件

@@ -1,8 +1,15 @@
package cn.com.taiji.ias.manager;

import java.io.IOException;
import java.time.LocalDateTime;
import java.time.temporal.ChronoUnit;
import java.util.concurrent.Callable;

import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import cn.com.taiji.common.pub.json.JsonTools;
import cn.com.taiji.core.manager.comm.client.IOFunction;
import cn.com.taiji.core.model.comm.protocol.AbstractOldSystemRequest;
import cn.com.taiji.core.model.comm.protocol.SignJsonResponse;
import org.springframework.beans.factory.annotation.Autowired;

import cn.com.taiji.common.manager.AbstractManager;
@@ -16,18 +23,53 @@ public abstract class AbstractCommManager extends AbstractManager {
@Autowired
protected FeignClientManager feignClientManager;

public <RS extends AbstractSignTypeResponse> RS jsonPostRepeat(AbstractSignTypeRequest<RS> req)
throws ServiceHandleException {
return jsonPostRepeat(req, 3);
}

/**
* <pre>
* 重复提交业务请求
* 1、IO异常重试请求,如果一直IO异常返回null
* 2、ApiRequestException 707返回new 创建的response
* 2、ApiRequestException 707返回通过new创建的response
* 3、ApiRequestException 其它错误抛异常
* </pre>
*/
public <RS extends AbstractSignTypeResponse> RS jsonPostRepeat(AbstractSignTypeRequest<RS> req, int repeat) {
public <RS extends AbstractSignTypeResponse> RS jsonPostRepeat(AbstractSignTypeRequest<RS> req, int repeat)
throws ServiceHandleException {
return jsonPostRepeat(req, repeat, null, null);
}

public <RS> RS jsonPostRepeat(AbstractOldSystemRequest<RS> req, int repeat, String accessToken)
throws ServiceHandleException {
for (int i = 0; i < repeat; i++) {
try {
return jsonPost(req, accessToken);
} catch (IOException e) {
logger.error("第 {} 次执行Exception:{}", i + 1, e.getMessage());
// if (logManager != null) {
// logManager.addConsoleLog(FeeBusinessType.EXCEPTION, req.getFilename(), "error", e.getMessage());
// }
} catch (ApiRequestException e) {
logger.error("接口调用异常", e);
SignJsonResponse jsonRes = toJsonResponse(e);
assert jsonRes != null;
Integer statusCode = jsonRes.getStatusCode();
if (statusCode.equals(801)) {
statusCode = 704;
}
throw new ServiceHandleException(jsonRes.getErrorMsg(), statusCode);
}
}
return null;
}

public <RS extends AbstractSignTypeResponse> RS jsonPostRepeat(AbstractSignTypeRequest<RS> req, int repeat,
String ifCode, String accessToken) throws ServiceHandleException {
for (int i = 0; i < repeat; i++) {
try {
return jsonPost(req);
return jsonPost(req, ifCode, accessToken);
} catch (IOException e) {
logger.error("第 {} 次执行Exception:{}", i + 1, e.getMessage());
// if (logManager != null) {
@@ -42,33 +84,45 @@ public abstract class AbstractCommManager extends AbstractManager {
throw new RuntimeException(ex);
}
}
throw e;
logger.error("接口调用异常", e);
SignJsonResponse jsonRes = toJsonResponse(e);
assert jsonRes != null;
Integer statusCode = jsonRes.getStatusCode();
if (statusCode.equals(801)) {
statusCode = 704;
}
throw new ServiceHandleException(jsonRes.getErrorMsg(), statusCode);
}
}
return null;
}

public <RS extends AbstractSignTypeResponse> RS jsonPost(AbstractSignTypeRequest<RS> req) throws IOException {
/**
* 未做异常处理的接口调用
*/
protected <RS extends AbstractSignTypeResponse> RS jsonPost(AbstractSignTypeRequest<RS> req, String ifCode,
String accessToken) throws IOException {
Class<RS> clazz = req.getResponseType();
return feignClientManager.jsonPost(req, clazz);
return feignClientManager.jsonPost(req, clazz, ifCode, accessToken);
}

/**
* 当不想自己捕获异常时、当你不对异常做什么处理时可调用该方法
*
* @param businessId
* 业务id
* 未做异常处理的接口调用
*/
public <V> V doSafe(Callable<V> call, String businessId) {
protected <RS> RS jsonPost(AbstractOldSystemRequest<RS> req, String accessToken) throws IOException {
return feignClientManager.jsonPost(req, accessToken);
}

private SignJsonResponse toJsonResponse(ApiRequestException e) {
String responseJson = e.getMessage().substring(0, e.getMessage().length() - 4);
try {
return call.call();
} catch (Exception e) {
logger.error("", e);
// if (logManager != null) {
// logManager.addConsoleLog(FeeBusinessType.EXCEPTION, businessId, "error", e.getMessage());
// }
return null;
return JsonTools.json2Object(responseJson, SignJsonResponse.class);
} catch (IOException e1) {
logger.error("转换json出错 json:\n{} \n exception:{}", responseJson, e1.getMessage());
}
return null;
}



}

+ 226
- 0
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/AbstractHandleManager.java 查看文件

@@ -0,0 +1,226 @@
package cn.com.taiji.ias.manager;

import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import cn.com.taiji.common.pub.TimeTools;
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeRequest;
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeResponse;
import cn.com.taiji.core.model.comm.protocol.valid.BusinessValidateTools;
import cn.com.taiji.core.model.comm.protocol.valid.ErrorMsgBuilder;
import cn.com.taiji.core.model.comm.protocol.valid.FormatValidateTools;
import cn.com.taiji.core.model.comm.protocol.valid.GlyServiceError;
import cn.com.taiji.ias.dict.DataType;
import cn.com.taiji.ias.dict.RequestStatus;
import cn.com.taiji.ias.model.PersistException;
import cn.com.taiji.ias.model.ServiceLogEvent;
import com.google.common.collect.Maps;
import com.zgglyun.common.model.AbstractHttpRequestInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.dao.DataIntegrityViolationException;
import org.springframework.dao.DuplicateKeyException;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import org.springframework.transaction.annotation.Transactional;

import java.io.IOException;
import java.lang.reflect.ParameterizedType;
import java.time.LocalDateTime;
import java.time.temporal.ChronoUnit;
import java.util.Map;

public abstract class AbstractHandleManager<T extends AbstractSignTypeRequest<?>> extends AbstractCommManager {
protected static final String RESPONSE_KEY = "response";
public static final String ID_EXITS_KEY = "idExits";
public static LocalDateTime TIME1990 = LocalDateTime.parse("1990-01-01T00:00:00");
protected final Class<T> clazz;
protected final DataType dataType;
// @Autowired
// protected LogManager logManager;
@Autowired
@Qualifier("myExecutor")
protected ThreadPoolTaskExecutor executor;

@SuppressWarnings("unchecked")
public AbstractHandleManager(DataType dataType) {
this.dataType = dataType;
ParameterizedType parameterizedType = (ParameterizedType)getClass().getGenericSuperclass();
this.clazz = (Class<T>)parameterizedType.getActualTypeArguments()[0];
}

public AbstractSignTypeResponse serviceHandle(T req, String ifCode, String reqId, AbstractHttpRequestInfo reqInfo)
throws ServiceHandleException {
LocalDateTime receiveTime = LocalDateTime.now().withNano(0);
ServiceLogEvent event = new ServiceLogEvent(dataType, ifCode, reqId, receiveTime);
String dataId = getDataId(req);
event.setDataId(dataId);
try {
Map<String, Object> dataStream = Maps.newHashMap();
formatValidate(req, event, dataStream);
businessValidate(req, event, dataStream);
doBusiness(req, event, dataStream);
persist(req, event, dataStream);
onSuccess(req, event, dataStream);
return generateRes(req, event, dataStream);
} finally {
// logManager.addServiceLog(event);
}
}

@Deprecated
protected void doBusiness(T req, ServiceLogEvent event, Map<String, Object> dataStream)
throws ServiceHandleException {

}

protected abstract String getDataId(T req);

private void formatValidate(T req, ServiceLogEvent event, Map<String, Object> dataStream)
throws ServiceHandleException {
try {
ErrorMsgBuilder builder = new ErrorMsgBuilder();
FormatValidateTools.validateWithException(builder, req, "formatError");
formatValidateInternal(builder, req, event, dataStream);
FormatValidateTools.checkWithException(builder);

} catch (ServiceHandleException e) {
event.setMsg(e.getMessage());
logger.error("------格式校验失败:" + e.getMessage());
throw e;
} catch (Exception e) {
event.setMsg(e.getMessage());
logger.error("------格式校验失败:", e);
throw GlyServiceError.FORMAT_VALIDATE_ERR.toHandleException("格式校验错误");
} finally {
event.setReqStatus(RequestStatus.FORMAT_VALID);
event.setFormatValidTime(LocalDateTime.now());
}
}

protected abstract void formatValidateInternal(ErrorMsgBuilder builder, T req, ServiceLogEvent event,
Map<String, Object> dataStream) throws ServiceHandleException;

private void businessValidate(T req, ServiceLogEvent event, Map<String, Object> dataStream)
throws ServiceHandleException {
ErrorMsgBuilder builder = new ErrorMsgBuilder();
try {
businessValidateInternal(builder, req, event, dataStream);
BusinessValidateTools.checkWithException(builder);
} catch (ServiceHandleException e) {
event.setMsg(e.getMessage());
logger.error("------业务校验失败:{}", e.getMessage());
onBusinessValidateErr(req, dataStream);
if (builder.getMap().containsKey(ID_EXITS_KEY)) {
throw GlyServiceError.DATA_REPEAT_UPLOAD.toHandleException(builder.toMessageStr());
}
throw e;
} catch (Exception e) {
event.setMsg(e.getMessage());
logger.error("------业务校验失败:", e);
onBusinessValidateErr(req, dataStream);
throw GlyServiceError.BUSINESS_VALIDATE_ERR.toHandleException("业务校验错误"+e.getMessage());
} finally {
event.setReqStatus(RequestStatus.BUSINESS_VALID);
LocalDateTime now = LocalDateTime.now();
event.setBusinessValidTime(now);
event.setBusinessCostTime(ChronoUnit.MILLIS.between(event.getFormatValidTime(), now));
}
}

protected abstract void businessValidateInternal(ErrorMsgBuilder builder, T req, ServiceLogEvent event,
Map<String, Object> dataStream) throws ServiceHandleException;

protected void onBusinessValidateErr(T req, Map<String, Object> dataStream) {

}

protected void persist(T req, ServiceLogEvent event, Map<String, Object> data) throws ServiceHandleException {
try {
persistHandle(req, data, event);
} catch (PersistException e) {
event.setMsg(e.getMessage());
// 此处不打印错误日志,由抛出PersistException的地方打印
throw GlyServiceError.PERSIST_ERR.toHandleException(e.getMessage());
} catch (DataIntegrityViolationException e) {
event.setMsg(e.getMessage());
logger.error("------持久化失败:", e);
throw GlyServiceError.PERSIST_ERR.toHandleException("提交持久化出错:脏数据");
} catch (Exception e) {
event.setMsg(e.getMessage());
logger.error("------持久化失败:", e);
throw GlyServiceError.PERSIST_ERR.toHandleException("提交持久化出错");
} finally {
LocalDateTime persistTime = LocalDateTime.now();
event.setReqStatus(RequestStatus.PERSIST);
event.setPersistTime(persistTime);
event.setPersistCostTime(ChronoUnit.MILLIS.between(event.getBusinessValidTime(), persistTime));
}
}

@Transactional(rollbackFor = {PersistException.class})
public void persistHandle(T req, Map<String, Object> data, ServiceLogEvent event) throws PersistException {
try {
persistInternal(req, event, data);
} catch (DuplicateKeyException e) {
logger.error("------持久化DuplicateKeyException:" + e.getMessage());
throw new PersistException("持久化时发现有重复数据");
} catch (DataIntegrityViolationException e) {
logger.error("------持久化失败:", e);
throw new PersistException("持久化时发现脏数据");
} catch (Exception e) {
logger.error("------持久化时出现异常:", e);
if (e.getMessage().equals("域名映射表未配置")) {//针对渠道回调通知异常特定的报错
throw new PersistException("持久化时异常:" + e.getMessage());
}
throw new PersistException("持久化时异常:" + e.getClass().toString());
}
}

protected void persistInternal(T req, ServiceLogEvent event, Map<String, Object> dataStream)
throws ServiceHandleException {

}

private AbstractSignTypeResponse generateRes(T req, ServiceLogEvent event, Map<String, Object> dataStream)
throws ServiceHandleException {
try {
return getRes(req, event, dataStream);
} catch (Exception e) {
logger.error("------响应失败:", e);
throw GlyServiceError.RESPONSE_ERROR.toHandleException(e.getMessage());
}
}

protected abstract AbstractSignTypeResponse getRes(T req, ServiceLogEvent event, Map<String, Object> dataStream)
throws ServiceHandleException, IOException;

private void onSuccess(T req, ServiceLogEvent event, Map<String, Object> dataStream) {
try {
onSuccessInternal(req, event, dataStream);
} catch (Exception e) {
logger.error("------处理成功后业务时失败:", e);
}
}

protected void onSuccessInternal(T req, ServiceLogEvent event, Map<String, Object> dataStream) {

}

protected void businessCheck(ErrorMsgBuilder builder, String id, String invalidField, String invalidValue,
String msg) throws ServiceHandleException {
builder.append(id, invalidField, invalidValue, msg);
BusinessValidateTools.checkWithException(builder);
}

protected ServiceHandleException newBusinessException(String msg) {
return GlyServiceError.BUSINESS_VALIDATE_ERR.toHandleException(msg);
}

protected void throwBisExceptionOn(boolean condition, String msg) throws ServiceHandleException {
if (condition) {
throw GlyServiceError.BUSINESS_VALIDATE_ERR.toHandleException(msg);
}
}

protected String getReceiveTimeStr(ServiceLogEvent event) {
return event.getReceiveTime().format(TimeTools.ISO_LOCAL_DATE_TIME);
}
}

+ 47
- 47
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/MyCommHandleManager.java 查看文件

@@ -1,47 +1,47 @@
package cn.com.taiji.ias.manager;
import javax.annotation.PostConstruct;
import cn.com.taiji.core.model.comm.protocol.SignJsonRequest;
import cn.com.taiji.core.model.comm.protocol.SignServiceType;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zgglyun.common.model.AbstractCommRequest;
import com.zgglyun.common.model.AbstractHttpRequestInfo;
import cn.com.taiji.core.manager.comm.AbstractCommHandleManager;
import cn.com.taiji.core.model.comm.protocol.sample.SampleServiceSystem;
import cn.com.taiji.core.model.comm.protocol.sample.SampleServiceType;
import cn.com.taiji.ias.manager.handler.SampleServiceHandler;
/**
*
* @author Peream <br>
* Create Time:2019年7月28日 下午3:35:29<br>
* @since 1.0
* @version 1.0
*/
@Service
public class MyCommHandleManager extends AbstractCommHandleManager {
@Autowired
private SampleServiceHandler sampleServiceHandler;
public MyCommHandleManager() {
super(SampleServiceSystem.SAMPLE);
}
@PostConstruct
public void init() {
registerJsonService(sampleServiceHandler);
}
@Override
protected SignServiceType getServiceType(String ifCode) {
return SampleServiceType.fromIfCode(ifCode);
}
}
//package cn.com.taiji.ias.manager;
//
//import javax.annotation.PostConstruct;
//
//import cn.com.taiji.core.model.comm.protocol.SignJsonRequest;
//import cn.com.taiji.core.model.comm.protocol.SignServiceType;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.stereotype.Service;
//
//import com.zgglyun.common.model.AbstractCommRequest;
//import com.zgglyun.common.model.AbstractHttpRequestInfo;
//
//import cn.com.taiji.core.manager.comm.AbstractCommHandleManager;
//import cn.com.taiji.core.model.comm.protocol.sample.SampleServiceSystem;
//import cn.com.taiji.core.model.comm.protocol.sample.SampleServiceType;
//import cn.com.taiji.ias.manager.handler.SampleServiceHandler;
//
///**
// *
// * @author Peream <br>
// * Create Time:2019年7月28日 下午3:35:29<br>
// * @since 1.0
// * @version 1.0
// */
//@Service
//public class MyCommHandleManager extends AbstractCommHandleManager {
// @Autowired
// private SampleServiceHandler sampleServiceHandler;
//
// public MyCommHandleManager() {
// super(SampleServiceSystem.SAMPLE);
// }
//
//
//
//
// @PostConstruct
// public void init() {
// registerJsonService(sampleServiceHandler);
// }
//
// @Override
// protected SignServiceType getServiceType(String ifCode) {
// return SampleServiceType.fromIfCode(ifCode);
// }
//
//}

+ 19
- 0
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/handler/AbstractIasServiceHandler.java 查看文件

@@ -0,0 +1,19 @@
package cn.com.taiji.ias.manager.handler;

import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import cn.com.taiji.core.manager.comm.AbstractCommServiceHandler;
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeRequest;
import cn.com.taiji.core.model.comm.protocol.SignServiceCommand;
import cn.com.taiji.core.model.comm.protocol.ias.IasServiceType;

public abstract class AbstractIasServiceHandler<C extends SignServiceCommand>
extends AbstractCommServiceHandler<IasServiceType> {

protected AbstractIasServiceHandler(IasServiceType serviceType) {
super(serviceType);
}

@Override
public <T extends AbstractSignTypeRequest<?>> void baseValidate(T t) throws ServiceHandleException {
}
}

+ 0
- 15
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/handler/AbstractSampleServiceHandler.java 查看文件

@@ -1,15 +0,0 @@
package cn.com.taiji.ias.manager.handler;

import cn.com.taiji.core.manager.comm.AbstractCommServiceHandler;
import cn.com.taiji.core.model.comm.protocol.SignServiceCommand;
import cn.com.taiji.core.model.comm.protocol.sample.SampleServiceType;

public abstract class AbstractSampleServiceHandler<C extends SignServiceCommand>
extends AbstractCommServiceHandler<SampleServiceType> {

protected AbstractSampleServiceHandler(SampleServiceType serviceType) {
super(serviceType);
}


}

zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/handler/RefundProvinceHandler.java → zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/handler/ProvinceHandler.java 查看文件

@@ -13,7 +13,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class RefundProvinceHandler extends AbstractIasServiceHandler<ProvinceCmd> {
public class ProvinceHandler extends AbstractIasServiceHandler<ProvinceCmd> {

@Autowired
private GetOriginListManager getOriginListManager;
@@ -27,7 +27,7 @@ public class RefundProvinceHandler extends AbstractIasServiceHandler<ProvinceCmd
private OrderSaveManager orderSaveManager;


public RefundProvinceHandler() {
public ProvinceHandler() {
super(IasServiceType.PROVINCE);
}

@@ -37,20 +37,15 @@ public class RefundProvinceHandler extends AbstractIasServiceHandler<ProvinceCmd
ProvinceCmd cmd = ProvinceCmd.fromIfCode(jsonReq.getIfCode());
switch (cmd) {
case GET_ORIGIN_LIST:
return getOriginListManager.serviceHandle((GetOriginListRequest) request, jsonReq.getIfCode(),
jsonReq.getReqId(), reqInfo);
return getOriginListManager.serviceHandle((GetOriginListRequest) request);
case ORDER_PUSH:
return orderPushManager.serviceHandle((OrderPushRequest) request, jsonReq.getIfCode(),
jsonReq.getReqId(), reqInfo);
return orderPushManager.serviceHandle((OrderPushRequest) request);
case QUERY_NEW_REFUND:
return queryNewRefundManager.serviceHandle((QueryNewRefundRequest) request, jsonReq.getIfCode(),
jsonReq.getReqId(), reqInfo);
return queryNewRefundManager.serviceHandle((QueryNewRefundRequest) request);
case QUERY_HANDLE_RECORD:
return queryHandleRefundManager.serviceHandle((QueryHandleRecordsRequest) request, jsonReq.getIfCode(),
jsonReq.getReqId(), reqInfo);
return queryHandleRefundManager.serviceHandle((QueryHandleRecordsRequest) request);
case ORDER_SAVE:
return orderSaveManager.serviceHandle((OrderSaveRequest)request, jsonReq.getIfCode(),
jsonReq.getReqId(), reqInfo);
return orderSaveManager.serviceHandle((OrderSaveRequest)request);
default:
throw FileProtocolSystemError.NOT_SUPPORT.toHandleException(jsonReq.getIfCode());
}

+ 61
- 61
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/handler/SampleServiceHandler.java 查看文件

@@ -1,61 +1,61 @@
package cn.com.taiji.ias.manager.handler;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zgglyun.common.model.AbstractHttpRequestInfo;
import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import cn.com.taiji.common.model.file.FileProtocolSystemError;
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeRequest;
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeResponse;
import cn.com.taiji.core.model.comm.protocol.SignJsonRequest;
import cn.com.taiji.core.model.comm.protocol.sample.DemoServiceCmd;
import cn.com.taiji.core.model.comm.protocol.sample.SampleServiceType;
import cn.com.taiji.core.model.comm.protocol.sample.TypeSampleRequest;
import cn.com.taiji.core.model.comm.protocol.sample.TypeSampleResponse;
import cn.com.taiji.core.model.comm.protocol.sample.valid.demo.CommonResponse;
import cn.com.taiji.core.model.comm.protocol.valid.GlyServiceError;
/**
*
* @author Peream <br>
* Create Time:2019年7月28日 下午4:45:09<br>
* @since 1.0
* @version 1.0
*/
@Service
public class SampleServiceHandler extends AbstractSampleServiceHandler<DemoServiceCmd> {
@Autowired
public SampleServiceHandler() {
super(SampleServiceType.SAMPLE);
}
@Override
protected <T extends AbstractSignTypeRequest<?>> AbstractSignTypeResponse handleInternal(T request,
SignJsonRequest jsonReq, AbstractHttpRequestInfo reqInfo) throws ServiceHandleException {
DemoServiceCmd cmd = DemoServiceCmd.fromIfCode(jsonReq.getIfCode());
switch (cmd) {
case TYPESAMMPLE:
return typeSample((TypeSampleRequest)request, jsonReq, reqInfo);
case ETCTRANS:
return new CommonResponse();
default:
throw FileProtocolSystemError.NOT_SUPPORT.toHandleException(jsonReq.getIfCode());
}
}
private TypeSampleResponse typeSample(TypeSampleRequest req, SignJsonRequest jsonReq,
AbstractHttpRequestInfo reqInfo) throws ServiceHandleException {
logger.info("jsonReq:{}", jsonReq);
// 注意,业务逻辑应该写在manager,handler类似controller
if (req.isValid()) {
throw GlyServiceError.BUSINESS_VALIDATE_ERR.toHandleException("valid为true会抛出异常");
}
TypeSampleResponse res = new TypeSampleResponse();
res.setMsg(req.getCardId() + " success!");
return res;
}
}
//package cn.com.taiji.ias.manager.handler;
//
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.stereotype.Service;
//
//import com.zgglyun.common.model.AbstractHttpRequestInfo;
//
//import cn.com.taiji.common.manager.net.http.ServiceHandleException;
//import cn.com.taiji.common.model.file.FileProtocolSystemError;
//import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeRequest;
//import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeResponse;
//import cn.com.taiji.core.model.comm.protocol.SignJsonRequest;
//import cn.com.taiji.core.model.comm.protocol.sample.DemoServiceCmd;
//import cn.com.taiji.core.model.comm.protocol.sample.SampleServiceType;
//import cn.com.taiji.core.model.comm.protocol.sample.TypeSampleRequest;
//import cn.com.taiji.core.model.comm.protocol.sample.TypeSampleResponse;
//import cn.com.taiji.core.model.comm.protocol.sample.valid.demo.CommonResponse;
//import cn.com.taiji.core.model.comm.protocol.valid.GlyServiceError;
//
///**
// *
// * @author Peream <br>
// * Create Time:2019年7月28日 下午4:45:09<br>
// * @since 1.0
// * @version 1.0
// */
//@Service
//public class SampleServiceHandler extends cn.com.taiji.core.manager.comm.AbstractCommServiceHandler<SampleServiceType> {
//
// @Autowired
// public SampleServiceHandler() {
// super(SampleServiceType.SAMPLE);
// }
//
// @Override
// protected <T extends AbstractSignTypeRequest<?>> AbstractSignTypeResponse handleInternal(T request,
// SignJsonRequest jsonReq, AbstractHttpRequestInfo reqInfo) throws ServiceHandleException {
// DemoServiceCmd cmd = DemoServiceCmd.fromIfCode(jsonReq.getIfCode());
// switch (cmd) {
// case TYPESAMMPLE:
// return typeSample((TypeSampleRequest)request, jsonReq, reqInfo);
// case ETCTRANS:
// return new CommonResponse();
// default:
// throw FileProtocolSystemError.NOT_SUPPORT.toHandleException(jsonReq.getIfCode());
// }
// }
//
// private TypeSampleResponse typeSample(TypeSampleRequest req, SignJsonRequest jsonReq,
// AbstractHttpRequestInfo reqInfo) throws ServiceHandleException {
// logger.info("jsonReq:{}", jsonReq);
// // 注意,业务逻辑应该写在manager,handler类似controller
// if (req.isValid()) {
// throw GlyServiceError.BUSINESS_VALIDATE_ERR.toHandleException("valid为true会抛出异常");
// }
// TypeSampleResponse res = new TypeSampleResponse();
// res.setMsg(req.getCardId() + " success!");
// return res;
// }
//
//}

+ 4
- 23
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/refund/GetOriginListManager.java 查看文件

@@ -1,13 +1,12 @@
package cn.com.taiji.ias.manager.refund;

import cn.com.taiji.common.manager.AbstractManager;
import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeResponse;
import cn.com.taiji.core.model.comm.protocol.ias.province.GetOriginListRequest;
import cn.com.taiji.core.model.comm.protocol.ias.province.GetOriginListResponse;
import cn.com.taiji.core.model.comm.protocol.ias.province.model.GetOriginListResModel;
import cn.com.taiji.core.model.comm.protocol.valid.ErrorMsgBuilder;
import cn.com.taiji.core.model.comm.protocol.valid.GlyServiceError;
import cn.com.taiji.ias.dict.DataType;
import cn.com.taiji.ias.model.refundHttp.GetOriginListAsyncRequest;
import cn.com.taiji.ias.model.refundHttp.GetOriginListAsyncResponse;
import cn.com.taiji.ias.model.refundHttp.model.GetOriginListAsyncModel;
@@ -18,7 +17,6 @@ import org.springframework.stereotype.Service;

import java.io.IOException;
import java.util.List;
import java.util.Map;

/**
* @Auther: humh
@@ -28,30 +26,12 @@ import java.util.Map;
* @version: 1.0
*/
@Service
public class GetOriginListManager extends AbstractHandleManager<GetOriginListRequest> {
public class GetOriginListManager extends AbstractManager {

@Autowired
private RefundHttpManager refundHttpManager;

public GetOriginListManager() {
super(DataType.GET_ORIGIN_LIST);
}

@Override
protected String getDataId(GetOriginListRequest req) {
return null;
}

@Override
protected void formatValidateInternal(ErrorMsgBuilder builder, GetOriginListRequest req, ServiceLogEvent event, Map<String, Object> dataStream) throws ServiceHandleException {
}

@Override
protected void businessValidateInternal(ErrorMsgBuilder builder, GetOriginListRequest req, ServiceLogEvent event, Map<String, Object> dataStream) throws ServiceHandleException {
}

@Override
protected AbstractSignTypeResponse getRes(GetOriginListRequest req, ServiceLogEvent event, Map<String, Object> dataStream) throws ServiceHandleException {
public AbstractSignTypeResponse serviceHandle(GetOriginListRequest req) throws ServiceHandleException {
GetOriginListAsyncRequest request = copyProperties(req, new GetOriginListAsyncRequest());
GetOriginListAsyncResponse response = null;
try {
@@ -69,4 +49,5 @@ public class GetOriginListManager extends AbstractHandleManager<GetOriginListReq
res.setModelList(list);
return res;
}

}

+ 8
- 25
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/refund/OrderPushManager.java 查看文件

@@ -1,9 +1,13 @@
package cn.com.taiji.ias.manager.refund;

import cn.com.taiji.common.manager.AbstractManager;
import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import cn.com.taiji.core.model.comm.protocol.valid.ErrorMsgBuilder;
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeResponse;
import cn.com.taiji.core.model.comm.protocol.ias.province.OrderPushRequest;
import cn.com.taiji.core.model.comm.protocol.ias.province.OrderPushResponse;
import cn.com.taiji.core.model.comm.protocol.ias.province.model.OrderPushReqModel;
import cn.com.taiji.core.model.comm.protocol.ias.province.model.OrderPushResModel;
import cn.com.taiji.core.model.comm.protocol.valid.GlyServiceError;
import cn.com.taiji.ias.dict.DataType;
import cn.com.taiji.ias.model.refundHttp.OrderPushAsyncRequest;
import cn.com.taiji.ias.model.refundHttp.OrderPushAsyncResponse;
import cn.com.taiji.ias.model.refundHttp.model.OrderPushAsyncModel;
@@ -14,7 +18,6 @@ import org.springframework.stereotype.Service;

import java.io.IOException;
import java.util.List;
import java.util.Map;

/**
* @Auther: humh
@@ -24,33 +27,13 @@ import java.util.Map;
* @version: 1.0
*/
@Service
public class OrderPushManager extends AbstractHandleManager<OrderPushRequest> {
public class OrderPushManager extends AbstractManager {

@Autowired
private RefundHttpManager refundHttpManager;

public OrderPushManager() {
super(DataType.ORDER_PUSH);
}


@Override
protected String getDataId(OrderPushRequest req) {
return null;
}

@Override
protected void formatValidateInternal(ErrorMsgBuilder builder, OrderPushRequest req, ServiceLogEvent event, Map<String, Object> dataStream) throws ServiceHandleException {

}

@Override
protected void businessValidateInternal(ErrorMsgBuilder builder, OrderPushRequest req, ServiceLogEvent event, Map<String, Object> dataStream) throws ServiceHandleException {

}

@Override
protected AbstractSignTypeResponse getRes(OrderPushRequest req, ServiceLogEvent event, Map<String, Object> dataStream) throws ServiceHandleException {
public AbstractSignTypeResponse serviceHandle(OrderPushRequest req) throws ServiceHandleException {
//组织请求数据
List<OrderPushAsyncModel> asyncModels = Lists.newArrayList();
for (OrderPushReqModel orderPushReqModel : req.getOrderPushReqModels()) {

+ 7
- 25
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/refund/OrderSaveManager.java 查看文件

@@ -1,12 +1,12 @@
package cn.com.taiji.ias.manager.refund;

import cn.com.taiji.common.manager.AbstractManager;
import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeResponse;
import cn.com.taiji.core.model.comm.protocol.valid.ErrorMsgBuilder;
import cn.com.taiji.ias.dict.DataType;
import cn.com.taiji.core.model.comm.protocol.ias.province.OrderSaveRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.Map;

/**
* @Auther: humh
@@ -16,31 +16,13 @@ import java.util.Map;
* @version: 1.0
*/
@Service
public class OrderSaveManager extends AbstractHandleManager<OrderSaveRequest> {
public class OrderSaveManager extends AbstractManager {

@Autowired
private RefundHttpManager refundHttpManager;

public OrderSaveManager() {
super(DataType.ORDER_PUSH);
}


@Override
protected String getDataId(OrderSaveRequest req) {
return null;
}

@Override
protected void formatValidateInternal(ErrorMsgBuilder builder, OrderSaveRequest req, ServiceLogEvent event, Map<String, Object> dataStream) throws ServiceHandleException {

}

@Override
protected void businessValidateInternal(ErrorMsgBuilder builder, OrderSaveRequest req, ServiceLogEvent event, Map<String, Object> dataStream) throws ServiceHandleException {

}

@Override
protected AbstractSignTypeResponse getRes(OrderSaveRequest req, ServiceLogEvent event, Map<String, Object> dataStream) throws ServiceHandleException {
public AbstractSignTypeResponse serviceHandle(OrderSaveRequest req) throws ServiceHandleException {
return null;
}
}

+ 7
- 25
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/refund/QueryHandleRefundManager.java 查看文件

@@ -1,9 +1,10 @@
package cn.com.taiji.ias.manager.refund;

import cn.com.taiji.common.manager.AbstractManager;
import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeResponse;
import cn.com.taiji.core.model.comm.protocol.valid.ErrorMsgBuilder;
import cn.com.taiji.ias.dict.DataType;
import cn.com.taiji.core.model.comm.protocol.ias.province.QueryHandleRecordsRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.Map;
@@ -16,31 +17,12 @@ import java.util.Map;
* @version: 1.0
*/
@Service
public class QueryHandleRefundManager extends AbstractHandleManager<QueryHandleRecordsRequest> {
public class QueryHandleRefundManager extends AbstractManager {

@Autowired
private RefundHttpManager refundHttpManager;

public QueryHandleRefundManager() {
super(DataType.ORDER_PUSH);
}


@Override
protected String getDataId(QueryHandleRecordsRequest req) {
return null;
}

@Override
protected void formatValidateInternal(ErrorMsgBuilder builder, QueryHandleRecordsRequest req, ServiceLogEvent event, Map<String, Object> dataStream) throws ServiceHandleException {

}

@Override
protected void businessValidateInternal(ErrorMsgBuilder builder, QueryHandleRecordsRequest req, ServiceLogEvent event, Map<String, Object> dataStream) throws ServiceHandleException {

}

@Override
protected AbstractSignTypeResponse getRes(QueryHandleRecordsRequest req, ServiceLogEvent event, Map<String, Object> dataStream) throws ServiceHandleException {
public AbstractSignTypeResponse serviceHandle(QueryHandleRecordsRequest req) throws ServiceHandleException {
return null;
}
}

+ 16
- 25
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/refund/QueryNewRefundManager.java 查看文件

@@ -1,9 +1,16 @@
package cn.com.taiji.ias.manager.refund;

import cn.com.taiji.common.manager.AbstractManager;
import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeResponse;
import cn.com.taiji.core.model.comm.protocol.ias.province.QueryNewRefundRequest;
import cn.com.taiji.core.model.comm.protocol.ias.province.QueryNewRefundResponse;
import cn.com.taiji.core.model.comm.protocol.ias.province.model.QueryNewRefundResModel;
import cn.com.taiji.core.model.comm.protocol.valid.ErrorMsgBuilder;
import cn.com.taiji.core.model.comm.protocol.valid.GlyServiceError;
import cn.com.taiji.ias.dict.DataType;
import cn.com.taiji.ias.manager.AbstractHandleManager;
import cn.com.taiji.ias.model.ServiceLogEvent;
import cn.com.taiji.ias.model.refundHttp.QueryNewRefundAsyncRequest;
import cn.com.taiji.ias.model.refundHttp.QueryNewRefundAsyncResponse;
import cn.com.taiji.ias.model.refundHttp.model.QueryNewRefundAsyncModel;
@@ -24,36 +31,20 @@ import java.util.Map;
* @version: 1.0
*/
@Service
public class QueryNewRefundManager extends AbstractHandleManager<QueryNewRefundRequest> {

public QueryNewRefundManager() {
super(DataType.ORDER_PUSH);
}

public class QueryNewRefundManager extends AbstractManager {

@Autowired
private RefundHttpManager refundHttpManager;


@Override
protected String getDataId(QueryNewRefundRequest req) {
return null;
}

@Override
protected void formatValidateInternal(ErrorMsgBuilder builder, QueryNewRefundRequest req, ServiceLogEvent event, Map<String, Object> dataStream) throws ServiceHandleException {

}

@Override
protected void businessValidateInternal(ErrorMsgBuilder builder, QueryNewRefundRequest req, ServiceLogEvent event, Map<String, Object> dataStream) throws ServiceHandleException {

}

@Override
protected AbstractSignTypeResponse getRes(QueryNewRefundRequest req, ServiceLogEvent event, Map<String, Object> dataStream) throws ServiceHandleException, IOException {
public AbstractSignTypeResponse serviceHandle(QueryNewRefundRequest req) throws ServiceHandleException {
QueryNewRefundAsyncRequest request = copyProperties(req, new QueryNewRefundAsyncRequest());
QueryNewRefundAsyncResponse response = refundHttpManager.queryNewRefundAsync(request);
QueryNewRefundAsyncResponse response = null;
try {
response = refundHttpManager.queryNewRefundAsync(request);
} catch (IOException e) {
logger.error("------响应失败:", e);
throw GlyServiceError.RESPONSE_ERROR.toHandleException(e.getMessage());
}
List<QueryNewRefundResModel> list = Lists.newArrayList();
QueryNewRefundResponse res = new QueryNewRefundResponse();
for (QueryNewRefundAsyncModel asyncModel : response.getList()) {

+ 9
- 0
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/PersistException.java 查看文件

@@ -0,0 +1,9 @@
package cn.com.taiji.ias.model;

public class PersistException extends Exception {

public PersistException(String message) {
super(message);
}

}

+ 28
- 0
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/RequestEvent.java 查看文件

@@ -0,0 +1,28 @@
package cn.com.taiji.ias.model;

import cn.com.taiji.ias.dict.RequestDataType;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.time.LocalDateTime;

@Getter
@Setter
@Accessors(chain = true)
public class RequestEvent {

public RequestEvent(RequestDataType dataType, String businessId) {
this.dataType = dataType;
this.businessId = businessId;
}

private RequestDataType dataType;// 数据类型
private String businessId;// 业务id
private String result;// 返回状态
private String msg;// 返回信息
private LocalDateTime beginTime;// 开始时间
private Long execTime;// 执行时间ms
private String reqName;// 请求名称
private String resName;// 返回名称
}

+ 34
- 0
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/ServiceLogEvent.java 查看文件

@@ -0,0 +1,34 @@
package cn.com.taiji.ias.model;

import cn.com.taiji.ias.dict.DataType;
import cn.com.taiji.ias.dict.RequestStatus;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.time.LocalDateTime;

@Getter
@Setter
@Accessors(chain = true)
public class ServiceLogEvent {
public ServiceLogEvent(DataType dataType, String ifCode, String reqId, LocalDateTime receiveTime) {
this.dataType = dataType;
this.ifCode = ifCode;
this.reqId = reqId;
this.receiveTime = receiveTime;
}

private DataType dataType;// 接口类型
private String dataId;// 业务id
private String ifCode;// 接口文件名
private final String reqId;
private RequestStatus reqStatus = RequestStatus.RECEIVE;// 状态
private LocalDateTime receiveTime;// 服务端接收时间
private LocalDateTime formatValidTime;// 格式校验时间
private LocalDateTime businessValidTime;// 业务校验时间
private LocalDateTime persistTime;// 存入关系数据库时间
private Long businessCostTime = 0L;// 业务校验花费时间
private Long persistCostTime = 0L;// 持久化花费时间
private String msg;// 说明
}

+ 1
- 1
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/refundHttp/GetHandleRecordsResponse.java 查看文件

@@ -1,6 +1,6 @@
package cn.com.taiji.ias.model.refundHttp;

import cn.com.taiji.issues.model.refundHttp.model.GetHandleRecordsModel;
import cn.com.taiji.ias.model.refundHttp.model.GetHandleRecordsModel;
import lombok.Getter;
import lombok.Setter;


+ 1
- 1
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/refundHttp/OrderPushAsyncRequest.java 查看文件

@@ -1,7 +1,7 @@
package cn.com.taiji.ias.model.refundHttp;

import cn.com.taiji.common.entity.BaseEntity;
import cn.com.taiji.issues.model.refundHttp.model.OrderPushAsyncModel;
import cn.com.taiji.ias.model.refundHttp.model.OrderPushAsyncModel;
import lombok.Getter;
import lombok.Setter;


+ 1
- 1
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/refundHttp/OrderPushAsyncResponse.java 查看文件

@@ -1,6 +1,6 @@
package cn.com.taiji.ias.model.refundHttp;

import cn.com.taiji.issues.model.refundHttp.model.OrderPushAsyncResModel;
import cn.com.taiji.ias.model.refundHttp.model.OrderPushAsyncResModel;
import lombok.Getter;
import lombok.Setter;


+ 1
- 1
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/refundHttp/OrderSaveAsyncRequest.java 查看文件

@@ -1,7 +1,7 @@
package cn.com.taiji.ias.model.refundHttp;

import cn.com.taiji.common.entity.BaseEntity;
import cn.com.taiji.issues.model.refundHttp.model.OrderSaveAsyncReqModel;
import cn.com.taiji.ias.model.refundHttp.model.OrderSaveAsyncReqModel;
import lombok.Getter;
import lombok.Setter;


+ 1
- 1
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/refundHttp/OrderSaveAsyncResponse.java 查看文件

@@ -1,6 +1,6 @@
package cn.com.taiji.ias.model.refundHttp;

import cn.com.taiji.issues.model.refundHttp.model.OrderSaveAsyncResModel;
import cn.com.taiji.ias.model.refundHttp.model.OrderSaveAsyncResModel;
import lombok.Getter;
import lombok.Setter;


+ 1
- 1
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/model/refundHttp/QueryNewRefundAsyncResponse.java 查看文件

@@ -1,6 +1,6 @@
package cn.com.taiji.ias.model.refundHttp;

import cn.com.taiji.issues.model.refundHttp.model.QueryNewRefundAsyncModel;
import cn.com.taiji.ias.model.refundHttp.model.QueryNewRefundAsyncModel;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Getter;
import lombok.Setter;

+ 2
- 0
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/tools/SourceTargetMapper.java 查看文件

@@ -1,5 +1,7 @@
package cn.com.taiji.ias.tools;

import cn.com.taiji.core.model.comm.protocol.ias.province.model.GetOriginListResModel;
import cn.com.taiji.core.model.comm.protocol.ias.province.model.QueryNewRefundResModel;
import cn.com.taiji.ias.model.refundHttp.model.GetOriginListAsyncModel;
import cn.com.taiji.ias.model.refundHttp.model.QueryNewRefundAsyncModel;
import org.mapstruct.Mapper;

+ 10
- 22
zhywpt-service-ias/src/main/resources/bootstrap.yml 查看文件

@@ -1,12 +1,12 @@
spring:
application:
name: sample
name: ias-local
mvc:
locale: zh_CN
messages:
basename: ValidationMessages_zh
jpa:
database-platform: org.hibernate.dialect.MySQL8Dialect
database-platform: org.hibernate.dialect.OracleDialect
open-in-view: false
cloud:
nacos:
@@ -20,28 +20,16 @@ spring:
enabled: true
file-extension: yaml # 必须修改成yaml
server-addr: 100.64.2.105:8848
namespace: guizhou-issuer
namespace: zhywpt-new-test
username: nacos
password: '!@#$%qwertASDFG'
extension-configs:
- data-id: db-oracle.yaml
refresh: true
- data-id: comm-client.yaml
refresh: true
redis:
#redis本地启动时候配置
database: 1
# host: 10.207.132.11
host: 127.0.0.1
port: 6379
# port: 443
#redis访问密码(默认为空, 如果没有密码, 这里的password整行不需配置)
# password: Taiji@2023
jedis:
pool:
max-active: 200
max-idle: 50
min-idle: 5
max-wait: 60000
time-between-eviction-runs: 30000
- data-id: redis.yaml
refresh: true
feign:
client:
config:
@@ -51,16 +39,16 @@ feign:
server:
port: 8086
servlet:
context-path: /sample/
context-path: /ias/

#应用相关配置
app:
nodeNum: 001
path: D:/devEnv/sample/ #工程的目录,#sso集成默认读取该目录下的oauth_client.properties
path: D:/devEnv/ias/ #工程的目录,#sso集成默认读取该目录下的oauth_client.properties
comm:
# 自定义服务地址map,key为服务名、value为服务地址。如果配置了服务地址,接口调用时请求到该地址,如果没配置,默认请求到gateway
serviceAddr:
sample: http://127.0.0.1:8086
ias: http://127.0.0.1:8086

# 退费接口相关参数
refund:

+ 4
- 4
zhywpt-service-ias/src/test/java/cn/com/taiji/oqs/client/demo/TestFeignClientRequest.java 查看文件

@@ -18,7 +18,7 @@ public class TestFeignClientRequest extends AbstractCommManager {
TypeSampleRequest req = new TypeSampleRequest();
try {
logger.info("格式校验异常 req:" + req.toJson(true));
jsonPostRepeat(req, 3);
// jsonPostRepeat(req, 3);
} catch (ApiRequestException e) {
logger.error("", e);
}
@@ -28,7 +28,7 @@ public class TestFeignClientRequest extends AbstractCommManager {
req.setValid(true);
try {
logger.info("业务校验异常 req:" + req.toJson(true));
jsonPostRepeat(req, 3);
// jsonPostRepeat(req, 3);
} catch (ApiRequestException e) {
logger.error("", e);
}
@@ -37,8 +37,8 @@ public class TestFeignClientRequest extends AbstractCommManager {
req.setReqStr("hello");
req.setValid(false);
logger.info("成功 req:" + req.toJson(true));
TypeSampleResponse res = jsonPostRepeat(req, 1);
logger.info("res:" + res.toJson(true));
// TypeSampleResponse res = jsonPostRepeat(req, 1);
// logger.info("res:" + res.toJson(true));

}
}

+ 42
- 0
zhywpt-service-ias/src/test/java/cn/com/taiji/oqs/client/province/TestProvinceHandler.java 查看文件

@@ -0,0 +1,42 @@
package cn.com.taiji.oqs.client.province;

import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import cn.com.taiji.core.model.comm.protocol.ias.province.GetOriginListRequest;
import cn.com.taiji.core.model.comm.protocol.ias.province.GetOriginListResponse;
import cn.com.taiji.ias.Application;
import cn.com.taiji.ias.manager.AbstractCommManager;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;

import java.time.LocalDate;

/**
* @Auther: humh
* @Description:
* @Date: 2025/5/12 10:58
* @email: huminghao@mail.taiji.com.cn
* @version: 1.0
*/
@SpringBootTest(classes = Application.class)
public class TestProvinceHandler extends AbstractCommManager {

@Test
public void test() {
logger.info("测试开始。。。");
GetOriginListRequest req = new GetOriginListRequest();
req.setExVehPlate("贵BXE005");
req.setStart(LocalDate.parse("2024-04-02"));
req.setEnd(LocalDate.parse("2024-04-03"));
GetOriginListResponse res = null;
try {
res = jsonPostRepeat(req);
} catch (ServiceHandleException e) {
logger.error(e.getMessage());
throw new RuntimeException(e);
}
res.toJson();
logger.info("测试结束。。。");

}

}

+ 44
- 44
zhywpt-service-inss/src/test/java/cn/com/taiji/oqs/client/demo/TestFeignClientRequest.java 查看文件

@@ -1,44 +1,44 @@
package cn.com.taiji.oqs.client.demo;
import cn.com.taiji.common.manager.net.http.binclient.ApiRequestException;
import cn.com.taiji.core.model.comm.protocol.sample.TypeSampleRequest;
import cn.com.taiji.core.model.comm.protocol.sample.TypeSampleResponse;
import cn.com.taiji.oqs.client.FeignClientApplication;
import cn.com.taiji.inss.manager.AbstractCommManager;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.Random;
@SpringBootTest(classes = FeignClientApplication.class)
public class TestFeignClientRequest extends AbstractCommManager {
@Test
public void testSampleRequest() {
TypeSampleRequest req = new TypeSampleRequest();
try {
logger.info("格式校验异常 req:" + req.toJson(true));
jsonPostRepeat(req, 3);
} catch (ApiRequestException e) {
logger.error("", e);
}
req = new TypeSampleRequest();
req.setCardId("cardId" + new Random().nextInt(1000000));
req.setReqStr("hello");
req.setValid(true);
try {
logger.info("业务校验异常 req:" + req.toJson(true));
jsonPostRepeat(req, 3);
} catch (ApiRequestException e) {
logger.error("", e);
}
req = new TypeSampleRequest();
req.setCardId("cardId" + new Random().nextInt(1000000));
req.setReqStr("hello");
req.setValid(false);
logger.info("成功 req:" + req.toJson(true));
TypeSampleResponse res = jsonPostRepeat(req, 1);
logger.info("res:" + res.toJson(true));
}
}
//package cn.com.taiji.oqs.client.demo;
//
//import cn.com.taiji.common.manager.net.http.binclient.ApiRequestException;
//import cn.com.taiji.core.model.comm.protocol.sample.TypeSampleRequest;
//import cn.com.taiji.core.model.comm.protocol.sample.TypeSampleResponse;
//import cn.com.taiji.oqs.client.FeignClientApplication;
//import cn.com.taiji.inss.manager.AbstractCommManager;
//import org.junit.jupiter.api.Test;
//import org.springframework.boot.test.context.SpringBootTest;
//
//import java.util.Random;
//
//@SpringBootTest(classes = FeignClientApplication.class)
//public class TestFeignClientRequest extends AbstractCommManager {
//
// @Test
// public void testSampleRequest() {
// TypeSampleRequest req = new TypeSampleRequest();
// try {
// logger.info("格式校验异常 req:" + req.toJson(true));
// jsonPostRepeat(req, 3);
// } catch (ApiRequestException e) {
// logger.error("", e);
// }
// req = new TypeSampleRequest();
// req.setCardId("cardId" + new Random().nextInt(1000000));
// req.setReqStr("hello");
// req.setValid(true);
// try {
// logger.info("业务校验异常 req:" + req.toJson(true));
// jsonPostRepeat(req, 3);
// } catch (ApiRequestException e) {
// logger.error("", e);
// }
// req = new TypeSampleRequest();
// req.setCardId("cardId" + new Random().nextInt(1000000));
// req.setReqStr("hello");
// req.setValid(false);
// logger.info("成功 req:" + req.toJson(true));
// TypeSampleResponse res = jsonPostRepeat(req, 1);
// logger.info("res:" + res.toJson(true));
//
// }
//}

Loading…
取消
儲存