新增设备链接, 刷新按钮

This commit is contained in:
andy 2025-05-08 10:43:43 +08:00
parent 7dd42131c0
commit fe7c87816a
3 changed files with 41 additions and 1 deletions

View File

@ -2,6 +2,7 @@ package com.evo.equipment.service;
import com.evo.common.core.domain.AjaxResult;
import com.evo.equipment.domain.EqButton;
import com.evo.equipment.domain.EqSnDetail;
import java.util.List;
@ -60,4 +61,7 @@ public interface IEqButtonService
* @return 按钮信息
*/
public EqButton selectEqButtonByName(String name);
public void sendButton(EqSnDetail snDetail);
}

View File

@ -205,4 +205,34 @@ public class EqButtonServiceImpl implements IEqButtonService
return eqButtonMapper.selectEqButtonByName(name);
}
@Override
public void sendButton(EqSnDetail snDetail) {
//获取所有打卡按钮
List<EqButton> bt_list = eqButtonMapper.selectEqButtonList(null);
CwButtonVo cbv = new CwButtonVo();
CwButtonData cbd = new CwButtonData();
//该接口固定为to_device发送给设备用于识别对应哪个指令
cbv.setCmd("to_device");
//无用值空串
cbv.setForm("");
//设备号
cbv.setTo(snDetail.getSn());
//发送的数据
cbd.setCmd("setButtons");
//按钮对象
CwBottonDto cwBottonDto = null;
//按钮集合
List<CwBottonDto> list2 = new ArrayList<CwBottonDto>();
for (EqButton button : bt_list) {
cwBottonDto = new CwBottonDto();
cwBottonDto.setIcon(button.getImage());
list2.add(cwBottonDto);
}
cbd.setValue(list2);
cbv.setData(cbd);
//调用websocket推送给设备
WebSocketUsers.sendMessageToUsersByText(JSONObject.toJSONString(cbv));
}
}

View File

@ -3,6 +3,7 @@ package com.evo.framework.websocket;
import com.alibaba.fastjson2.JSONObject;
import com.evo.common.constant.Constants;
import com.evo.equipment.domain.EqSnDetail;
import com.evo.equipment.service.IEqButtonService;
import com.evo.equipment.service.IEqSnDetailService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -26,9 +27,12 @@ public class WebSocketServer{
private static IEqSnDetailService snDetailService;
private static IEqButtonService qButtonService;
@Autowired
public void setBrandService(IEqSnDetailService snDetailService) {
public void setBrandService(IEqSnDetailService snDetailService, IEqButtonService qButtonService) {
WebSocketServer.snDetailService = snDetailService;
WebSocketServer.qButtonService = qButtonService;
}
/**
@ -158,6 +162,8 @@ public class WebSocketServer{
//添加
snDetailService.insertEqSnDetail(snDetail);
}
//更新按钮
qButtonService.sendButton(snDetail);
}else{
//接受设备端返回的数据先不做处理
System.out.println("设备返回信息:"+message);