package com.xiaopeng.pushMessage.webSocket.handler;
|
|
import com.fasterxml.jackson.core.JsonProcessingException;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.xiaopeng.api.vo.TaskVO;
|
import com.xiaopeng.pushMessage.webSocket.service.WebSocketUserService;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.data.mongodb.core.MongoTemplate;
|
import org.springframework.stereotype.Component;
|
|
import java.math.BigDecimal;
|
import java.util.HashMap;
|
|
@Component
|
@Slf4j
|
public class TestMsgHandler implements BusinessMsgHandler{
|
|
@Override
|
public String getMessageType() {
|
return "test";
|
}
|
@Autowired
|
private WebSocketUserService webSocketUserService;
|
@Override
|
public void handle(String uid, String msg) {
|
TaskVO vo = new TaskVO();
|
|
vo.setHandleUserId("1");
|
vo.setId(1L);
|
vo.setStatus(1);
|
vo.setTaskCode("1");
|
vo.setTaskTypeId("1");
|
vo.setTaskTypeName("1");
|
vo.setTaskUrgencyLevel(1);
|
vo.setVehicleId(1L);
|
vo.setVehicleLocation("1");
|
vo.setPlateNumber("1");
|
vo.setVehicleLat(BigDecimal.ZERO);
|
vo.setVehicleLon(BigDecimal.ZERO);
|
vo.setCanArriveRange(1D);
|
vo.setEndTime(null);
|
vo.setHandleUserId("1");
|
vo.setVehicleLocation("1");
|
vo.setPlateNumber("1");
|
vo.setVehicleId(1L);
|
vo.setCanArriveRange(1D);
|
vo.setEndTime(null);
|
vo.setHandleUserId("1");
|
vo.setVehicleLocation("1");
|
vo.setPlateNumber("1");
|
vo.setVehicleId(1L);
|
vo.setHandleUserId("1341243234");
|
HashMap<String, Object> ret = new HashMap<>();
|
ret.put("type", "task");
|
ret.put("data", vo);
|
try {
|
msg = om.writeValueAsString(ret);
|
} catch (JsonProcessingException e) {
|
log.error("Failed to serialize message for uid: {}", uid, e);
|
throw new RuntimeException("Message serialization failed", e);
|
}
|
webSocketUserService.sendMessageToUser(uid, msg);
|
}
|
@Autowired ObjectMapper om;
|
@Autowired MongoTemplate mongoTemplate;
|
|
|
}
|