package com.ld.igds.sh; import com.ld.igds.sh.dto.ApiResponse; import com.ld.igds.sh.param.ApiRequest; import com.ld.igds.sh.util.RespCodeEnum; import com.ld.igds.sh.util.RespUtil; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; 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; /** * 接口服务入口 * * @author chen */ @Slf4j @Controller @RequestMapping("api/sh/v1") public class ApiShServer { @Autowired private ApiShManager apiShManager; /** * 接口业务分发入口 * @param request * @return */ @SuppressWarnings("unchecked") @ResponseBody @RequestMapping("/gateway") public ApiResponse gateway(@RequestBody ApiRequest request) { ApiResponse result = RespUtil.error(RespCodeEnum.CODE_9999.getCode(), request.getOrderId()); //判断请求参数 if(request == null){ log.warn("-----上海佑卓接口,请求参数为空-----"); return result; } //判断接口编码是否为空,为空则直接返回 if(StringUtils.isEmpty(request.getInterfaceId())){ log.warn("-----上海佑卓接口,请求参数异常:接口编码或库区编码为空={}-----", request.toString()); return result; } log.info("-----上海佑卓接口,请求参数={}-----", request.toString()); try{ result = apiShManager.execute(request); }catch (Exception e){ log.error("-----上海佑卓接口,后端服务异常,原因={}-----", e); result = RespUtil.error(RespCodeEnum.CODE_9999.getCode(), e.getMessage()); } return result; } }