package com.usky.agbox.service.listener;

import com.alibaba.fastjson.JSONObject;
import com.usky.agbox.service.job.patrolAgbox;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.core.ExchangeTypes;
import org.springframework.amqp.core.Message;
import org.springframework.amqp.rabbit.annotation.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;

@Slf4j
@Component
public class RabbitMQListener {

//    @Autowired
//    private patrolAgbox PatrolAgbox;
//    @RabbitHandler
//    @RabbitListener(bindings = @QueueBinding(
//            value = @Queue(),
//            exchange = @Exchange(value = "Patrol_EEvent"),
//            key = {"${agBox.routeKey}"}
//    ))
//    public void getData(Message message){
//        try {
//            String str = new String(message.getBody(),"utf-8");
//            JSONObject eventVO1 = JSONObject.parseObject(str);
//            JSONObject eventVO = new JSONObject();
//            if (eventVO1.get("eventType").equals(31)){
//                eventVO1.put("eventCode",1);
//                PatrolAgbox.addEvent(eventVO1.toJSONString());
//            }else if (eventVO1.get("eventType").equals(32)){
//                eventVO1.put("eventCode",2);
//                PatrolAgbox.addEvent(eventVO1.toJSONString());
//            }else {
//                if (eventVO1.get("eventType").equals(33)||eventVO1.get("eventType").equals(34)){
//                    eventVO.put("eventCode",5);
//                }else {
//                    eventVO.put("eventCode",16);
//                }
//                String timeWithT = eventVO1.get("createTime").toString();
//                eventVO.put("deviceId",eventVO1.get("deviceId"));
//                eventVO.put("triggerTime",timeWithT.replace("T", " "));
//                eventVO.put("name",eventVO1.get("createBy"));
//                eventVO.put("certifiedNo","");
//                PatrolAgbox.addEvent(eventVO.toJSONString());
//            }
//            System.out.println("FEventReceiver消费者收到消息： " + str);
//        } catch (Exception e){
//            e.printStackTrace();
//        }
//    }
//
//    @RabbitHandler
//    @RabbitListener(bindings = @QueueBinding(
//            value = @Queue(),
//            exchange = @Exchange(value = "Patrol_EInfo"),
//            key = {"${agBox.routeKey}"}
//    ))
//    public void getDataInfo(Message message){
//        try {
//            String str = new String(message.getBody(),"utf-8");
//            JSONObject eventVO1 = JSONObject.parseObject(str);
//            JSONObject eventVO = new JSONObject();
//            eventVO.put("deviceId",eventVO1.get("deviceId"));
//            PatrolAgbox.updateHeart(eventVO.toJSONString());
//            System.out.println("FInfoReceiver消费者收到消息： " + str);
//        } catch (Exception e){
//            e.printStackTrace();
//        }
//    }
}