package com.vci.ubcs.code.controller;
|
|
import com.vci.ubcs.code.service.CodeMdmInfaceI;
|
import com.vci.ubcs.code.service.UniversalInterfaceI;
|
import com.vci.ubcs.code.vo.webserviceModel.mdm.MDMData;
|
import com.vci.ubcs.code.vo.webserviceModel.mdm.MDMParamData;
|
import com.vci.ubcs.code.vo.webserviceModel.mdm.MdmResultData;
|
import com.vci.ubcs.code.vo.webserviceModel.person.PersonData;
|
import com.vci.ubcs.code.vo.webserviceModel.person.ResultOrgData;
|
import org.apache.tools.ant.taskdefs.condition.Http;
|
import org.slf4j.Logger;
|
import org.slf4j.LoggerFactory;
|
import org.springblade.core.tool.api.R;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.servlet.ServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
import javax.ws.rs.core.Context;
|
import java.util.concurrent.ConcurrentHashMap;
|
|
/**
|
* 主题库分类控制器
|
*
|
* @author xiejun
|
* @date 2022-01-20
|
*/
|
@RestController
|
@RequestMapping("/codeSyncUniversalController")
|
public class CodeSyncUniversalController {
|
|
/**
|
* 日志
|
*/
|
private Logger logger = LoggerFactory.getLogger(getClass());
|
|
/**
|
* 接口集成服务
|
*/
|
@Autowired
|
private UniversalInterfaceI universalInterfaceI;
|
|
/**
|
* 接口集成服务
|
*/
|
@Autowired
|
private CodeMdmInfaceI codeMdmInfaceI;
|
|
/****
|
* 申请接口
|
* @param dataString 数据信息
|
* @param dataType 数据格式类型
|
* @return
|
* @throws Throwable
|
*/
|
@PostMapping("/applyCode")
|
public String applyCode(@RequestParam("dataString")String dataString, @RequestParam("dataType")String dataType, HttpServletRequest request) {
|
String result="";
|
try {
|
this.setHttpToThreadLocal(request);
|
result = universalInterfaceI.applyCode(dataString, dataType);
|
}catch (Throwable e){
|
e.printStackTrace();
|
logger.error("applyCode->"+e.getMessage());
|
}
|
return result;
|
}
|
|
/****
|
* 更新/删除/状态接口
|
* @param dataString 数据信息
|
* @param dataType 数据格式类型
|
* @return
|
* @throws Throwable
|
*/
|
@PostMapping("/syncData")
|
public String syncData(@RequestParam("dataString")String dataString,@RequestParam("dataType")String dataType, HttpServletRequest request) {
|
String result="";
|
try {
|
this.setHttpToThreadLocal(request);
|
result= universalInterfaceI.syncEditData(dataString,dataType);
|
}catch (Throwable e){
|
e.printStackTrace();
|
logger.error("syncData->"+e.getMessage());
|
}
|
return result;
|
}
|
|
/****
|
* 查询分类口
|
* @param dataString 数据信息
|
* @param dataType 数据格式类型
|
* @return
|
* @throws Throwable
|
*/
|
@PostMapping("/queryClassify")
|
public String queryClassify(@RequestParam("dataString")String dataString,@RequestParam("dataType")String dataType, HttpServletRequest request) throws Throwable {
|
String result="";
|
try {
|
this.setHttpToThreadLocal(request);
|
result = universalInterfaceI.queryClassify(dataString, dataType);
|
}catch (Throwable e){
|
e.printStackTrace();
|
logger.error("queryClassify->"+e.getMessage());
|
}
|
return result;
|
}
|
|
/****
|
* 查询分类口
|
* @param dataString 数据信息
|
* @param dataType 数据格式类型
|
* @return
|
* @throws Throwable
|
*/
|
@PostMapping("/queryData")
|
public String queryData(@RequestParam("dataString")String dataString,@RequestParam("dataType")String dataType, HttpServletRequest request) throws Throwable {
|
String result="";
|
try {
|
this.setHttpToThreadLocal(request);
|
result= universalInterfaceI.queryData(dataString,dataType);
|
}catch (Throwable e){
|
e.printStackTrace();
|
logger.error("queryData->"+e.getMessage());
|
}
|
return result;
|
}
|
|
/****
|
* 查询规则
|
* @param dataString 数据信息
|
* @param dataType 数据格式类型
|
* @return
|
* @throws Throwable
|
*/
|
@PostMapping("/queryClassifyRule")
|
public String queryClassifyRule(@RequestParam("dataString")String dataString,@RequestParam("dataType")String dataType, HttpServletRequest request) throws Throwable {
|
String result="";
|
try {
|
this.setHttpToThreadLocal(request);
|
result= universalInterfaceI.queryClassifyRule(dataString,dataType);
|
}catch (Throwable e){
|
e.printStackTrace();
|
logger.error("queryData->"+e.getMessage());
|
}
|
return result;
|
}
|
|
/****
|
* 标准化申请接口
|
* @param dataString 数据信息
|
* @param dataType 数据格式类型
|
* @return
|
* @throws Throwable
|
*/
|
@PostMapping("/applyCodeForBZ")
|
public String applyCodeForBZ(@RequestParam("dataString")String dataString,@RequestParam("dataType")String dataType, HttpServletRequest request){
|
String result="";
|
try {
|
this.setHttpToThreadLocal(request);
|
result= universalInterfaceI.applyCodeForBZ(dataString,dataType);
|
}catch (Throwable e){
|
e.printStackTrace();
|
logger.error("queryData->"+e.getMessage());
|
}
|
return result;
|
}
|
|
/****
|
* 人员集成接口
|
* @param personData 数据信息
|
* @return
|
* @throws Throwable
|
*/
|
@PostMapping("/syncDataForPerson")
|
public ResultOrgData syncDataForPerson(@RequestBody PersonData personData,HttpServletRequest request){
|
this.setHttpToThreadLocal(request);
|
ResultOrgData result = new ResultOrgData();
|
try {
|
result= universalInterfaceI.syncDataForPerson(personData);
|
}catch (Throwable e){
|
e.printStackTrace();
|
logger.error("ResultOrgData->"+e.getMessage());
|
}
|
return result;
|
|
}
|
|
/**
|
* 接受MDM产品分发数据
|
* @param mdmParamData
|
* @param request
|
* @return
|
*/
|
@PostMapping("/syncDataForProduct")
|
public MdmResultData syncDataForProduct(@RequestBody MDMParamData mdmParamData,HttpServletRequest request){
|
|
//this.setHttpToThreadLocal(request);
|
ThreadLocal<HttpServletRequest> threadLocal = new ThreadLocal<>();
|
threadLocal.set(request);
|
codeMdmInfaceI.setThreadLocal(threadLocal);
|
MdmResultData result = new MdmResultData();
|
try {
|
result= codeMdmInfaceI.syncDataForMDM(mdmParamData,"CPXH","CPXH");
|
}catch (Throwable e){
|
e.printStackTrace();
|
logger.error("ResultOrgData->"+e.getMessage());
|
}
|
return result;
|
}
|
|
/**
|
* 设置request,到ThreadLocal中
|
* @param request
|
*/
|
public void setHttpToThreadLocal(HttpServletRequest request){
|
ThreadLocal<HttpServletRequest> threadLocal = new ThreadLocal<>();
|
threadLocal.set(request);
|
universalInterfaceI.setThreadLocal(threadLocal);
|
//codeMdmInfaceI.setThreadLocal(threadLocal);
|
}
|
|
|
|
/***
|
*
|
* @param mdmData
|
* @param request
|
* @return
|
*/
|
@PostMapping("/test")
|
public String test(@RequestBody MDMData mdmData, HttpServletRequest request){
|
System.out.println("");
|
return "";
|
}
|
}
|