主数据导入完善
parent
ad1db37d71
commit
c8e30f1f34
@ -0,0 +1,21 @@
|
||||
package com.foreverwin.mesnac.integration.service;
|
||||
|
||||
import com.foreverwin.mesnac.integration.dto.BomSyncRequest;
|
||||
import com.foreverwin.mesnac.integration.dto.WebServiceResponse;
|
||||
|
||||
import javax.jws.WebMethod;
|
||||
import javax.jws.WebParam;
|
||||
import javax.jws.WebService;
|
||||
|
||||
@WebService(targetNamespace="http://service.integration.mesnac.com")
|
||||
public interface CAPPAPIWebService {
|
||||
|
||||
/**
|
||||
* 物料清单同步
|
||||
*
|
||||
* @param bomSyncRequest
|
||||
* @return
|
||||
*/
|
||||
@WebMethod(action = "http://service.integration.mesnac.com/itemSync")
|
||||
WebServiceResponse itemSync(@WebParam(name = "itemSyncRequest") BomSyncRequest bomSyncRequest);
|
||||
}
|
@ -0,0 +1,85 @@
|
||||
package com.foreverwin.mesnac.integration.service.impl;
|
||||
|
||||
import com.foreverwin.mesnac.common.constant.IntegrationTypeConstant;
|
||||
import com.foreverwin.mesnac.common.util.ExceptionUtil;
|
||||
import com.foreverwin.mesnac.common.util.StringUtil;
|
||||
import com.foreverwin.mesnac.integration.dto.BomSyncRequest;
|
||||
import com.foreverwin.mesnac.integration.dto.WebServiceResponse;
|
||||
import com.foreverwin.mesnac.integration.model.IntegrationLog;
|
||||
import com.foreverwin.mesnac.integration.service.CAPPAPIWebService;
|
||||
import com.foreverwin.mesnac.integration.service.IntegrationLogService;
|
||||
import com.foreverwin.mesnac.integration.service.InterfaceService;
|
||||
import com.foreverwin.modular.core.exception.BusinessException;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.jws.WebService;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.UUID;
|
||||
|
||||
@Component
|
||||
@WebService(serviceName = "CAPPAPIWebService",
|
||||
targetNamespace = "http://service.integration.mesnac.com",
|
||||
endpointInterface = "com.foreverwin.mesnac.integration.service.CAPPAPIWebService")
|
||||
public class CAPPAPIWebServiceImpl implements CAPPAPIWebService {
|
||||
|
||||
@Autowired
|
||||
private InterfaceService interfaceService;
|
||||
@Autowired
|
||||
private IntegrationLogService integrationLogService;
|
||||
|
||||
@Override
|
||||
public WebServiceResponse itemSync(BomSyncRequest bomSyncRequest) {
|
||||
WebServiceResponse response = new WebServiceResponse();
|
||||
|
||||
String site = null;
|
||||
try {
|
||||
if (bomSyncRequest == null) {
|
||||
throw BusinessException.build("传递的参数格式不正确,或者为空");
|
||||
}
|
||||
if (StringUtil.isBlank(bomSyncRequest.getTRANID())) {
|
||||
throw BusinessException.build("参数【TRANID】不能为空");
|
||||
}
|
||||
if (StringUtil.isBlank(bomSyncRequest.getDATE_TIME())) {
|
||||
throw BusinessException.build("参数【DATE_TIME】不能为空");
|
||||
}
|
||||
response.setHANDLE(bomSyncRequest.getTRANID());
|
||||
response.setSTATUS("S");
|
||||
|
||||
site = bomSyncRequest.getSITE();
|
||||
String shopOrder = bomSyncRequest.getSHOP_ORDER();
|
||||
if (StringUtil.isBlank(site)) {
|
||||
throw BusinessException.build("参数【SITE】不能为空");
|
||||
}
|
||||
|
||||
//调用业务接口
|
||||
interfaceService.bomSync(site, bomSyncRequest);
|
||||
response.setMESSAGE("工单【" + shopOrder + "】BOM数据同步成功");
|
||||
|
||||
} catch (Exception e) {
|
||||
response.setSTATUS("E");
|
||||
response.setMESSAGE(ExceptionUtil.getExceptionMsg(e));
|
||||
} finally {
|
||||
|
||||
//记录接口日志
|
||||
IntegrationLog log = new IntegrationLog();
|
||||
log.setHandle(UUID.randomUUID().toString());
|
||||
log.setSite(site);
|
||||
log.setIntegrationType(IntegrationTypeConstant.BOM);
|
||||
log.setCategory("RESPONSE");
|
||||
log.setIntegrationWay("ERP");
|
||||
log.setIntegrationMethod("InterfaceService.shopOrderSync");
|
||||
log.setParam(bomSyncRequest.toString());
|
||||
log.setStatus(response.getSTATUS());
|
||||
log.setResultMessage(response.getMESSAGE());
|
||||
log.setTransactionId(bomSyncRequest.getTRANID());
|
||||
log.setRequestDateTime(LocalDateTime.parse(bomSyncRequest.getDATE_TIME(), DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
|
||||
log.setCreatedDateTime(LocalDateTime.now());
|
||||
integrationLogService.saveIntegrationLog(log);
|
||||
}
|
||||
|
||||
//接口返回
|
||||
return response;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue