package com.ld.igds.protocol.inoutplug;
|
|
import com.alibaba.fastjson.JSONObject;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Controller;
|
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.ResponseBody;
|
import java.util.concurrent.Callable;
|
import java.util.concurrent.ExecutorService;
|
import java.util.concurrent.Executors;
|
|
/**
|
* 本地插件--出入库数据接收入口
|
*
|
* @author chen
|
*/
|
@Slf4j
|
@Controller
|
@RequestMapping("inout")
|
public class InoutPlugServer {
|
|
|
@Autowired
|
private InoutPlugAnalysis inoutPlugAnalysis;
|
|
/**
|
* 奥特威出入库系统数据对接
|
* @param request
|
* @return
|
*/
|
@ResponseBody
|
@RequestMapping("/v1")
|
public String inoutReceive(@RequestBody JSONObject request){
|
|
log.info("出入库数据插件----->>>平台:报文信息={}", request);
|
|
try{
|
|
//异步处理,子线程解析事件
|
final ExecutorService exec = Executors.newFixedThreadPool(1);
|
Callable<String> call = new Callable<String>() {
|
public String call() throws Exception {
|
|
//解析出入库数据
|
return inoutPlugAnalysis.analysisInout(request);
|
}
|
};
|
exec.submit(call);
|
exec.shutdown();
|
return "SUCCESS";
|
|
}catch (Exception e){
|
|
log.error("----出入库数据解析失败,原因={}-----", e.getLocalizedMessage());
|
return "SUCCESS";
|
}
|
}
|
|
}
|