package com.fzzy.order; import com.alibaba.fastjson.JSONObject; import com.fzzy.order.data.*; 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; /** * 下发指令接收入口 * * @author czt * @date 2023/8/17 */ @Slf4j @Controller @RequestMapping("service/api") public class OrderServer { @Autowired private OrderManager orderManager; /** * 登录入口 * @param req * @return */ @SuppressWarnings("unchecked") @ResponseBody @RequestMapping("/order") public OrderResp order(@RequestBody OrderReq req){ log.info("接收的指令信息={}", req); //判断参数 if(null == req){ return new OrderResp(OrderResult.ORDER_CODE_500.getCode(), OrderResult.ORDER_CODE_500.getResult()); } //心跳指令,直接返回 if(OrderConstant.ORDER_TYPE_0.equals(req.getType())){ OrderResp resp = new OrderResp(OrderResult.ORDER_CODE_200.getCode(), OrderResult.ORDER_CODE_200.getResult()); log.info("心跳指令返回信息={}", resp); return resp; } try { //异步执行 orderManager.execute(req); return new OrderResp(OrderResult.ORDER_CODE_200.getCode(), OrderResult.ORDER_CODE_200.getResult()); } catch (Exception e) { return new OrderResp(OrderResult.ORDER_CODE_500.getCode(), OrderResult.ORDER_CODE_500.getResult()); } } }