G2ResponseController.java 1.4 KB
package com.sy.controller;

import com.sy.handle.G2FeedBackHandel;
import com.sy.response.ResultJson;
import com.sy.service.X82Service;
import com.sy.service.router.MessageRouterG2;
import com.sy.utils.G2ThreadPoolFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.concurrent.ThreadPoolExecutor;

@RestController
@RequestMapping("/g2")
@Slf4j
public class G2ResponseController {

    @Autowired
    X82Service x82Service;

    @Autowired
    MessageRouterG2 messageRouterG2;


    @PostMapping("/response")
    public ResultJson response(@RequestParam("response") String response){
        try {
            //初始化线程池
            ThreadPoolExecutor threadPool = G2ThreadPoolFactory.instance("G2FeedBack");
            log.info("接收到金二验放回执报文,{},开始解密", response);
            G2FeedBackHandel g2FeedBackHandel = new G2FeedBackHandel();
            g2FeedBackHandel.setFeedBack(response);
            g2FeedBackHandel.setX82Service(x82Service);
            g2FeedBackHandel.setMessageRouterG2(messageRouterG2);

            threadPool.execute(g2FeedBackHandel);
        }catch (Exception e){
            return  new ResultJson("200","接收回执成功",e.getMessage());
        }
        return  new ResultJson("200","接收回执成功");
    }
}