Commit 909c14cf authored by 赵啸非's avatar 赵啸非

修改通知去重复

parent 09c189e5
......@@ -18,8 +18,10 @@ import com.mortals.xhx.module.basic.service.BasicSetService;
import com.mortals.xhx.module.metting.model.MettingRecordEntity;
import com.mortals.xhx.module.metting.model.MettingRecordQuery;
import com.mortals.xhx.module.metting.service.MettingRecordService;
import com.mortals.xhx.module.room.model.RoomDeviceEntity;
import com.mortals.xhx.module.room.model.RoomDeviceQuery;
import com.mortals.xhx.module.room.model.RoomEntity;
import com.mortals.xhx.module.room.service.RoomDeviceService;
import com.sun.org.apache.xerces.internal.dom.PSVIAttrNSImpl;
import lombok.extern.slf4j.Slf4j;
import org.checkerframework.checker.units.qual.A;
......@@ -49,6 +51,8 @@ public class MeetSwitchTaskImpl implements ITaskExcuteService {
private IDeviceMessageFeign messageFeign;
@Autowired
private ICacheService cacheService;
@Autowired
private RoomDeviceService roomDeviceService;
@Override
public void excuteTask(ITask task) throws AppException {
......@@ -79,8 +83,13 @@ public class MeetSwitchTaskImpl implements ITaskExcuteService {
//通知设备进行数据更新
boolean setnx = cacheService.setnx(RedisKey.KEY_METTING_START_CACHE, recordEntity.getId(), between * 60);
if (setnx) {
RoomDeviceQuery roomDeviceQuery = new RoomDeviceQuery();
roomDeviceQuery.setRoomId(recordEntity.getRoomId());
RoomDeviceEntity roomDeviceEntity = roomDeviceService.selectOne(roomDeviceQuery);
if(ObjectUtils.isEmpty(roomDeviceEntity)) return;
UploadDeviceReq uploadDeviceReq = new UploadDeviceReq();
uploadDeviceReq.setDeviceCodeList(Arrays.asList(recordEntity.getDeviceCode()));
uploadDeviceReq.setDeviceCodeList(Arrays.asList(roomDeviceEntity.getDeviceCode()));
uploadDeviceReq.setAction("preMeetStart");
uploadDeviceReq.setContent(JSON.toJSONString(recordEntity));
log.info("preMeetStart send msg :{}",recordEntity.getDeviceCode());
......@@ -101,8 +110,13 @@ public class MeetSwitchTaskImpl implements ITaskExcuteService {
long sub = DateUtil.between(pendRecordEntity.getMeetTimeStart(), pendRecordEntity.getMeetTimeEnd(), DateUnit.SECOND, true);
boolean setnx = cacheService.setnx(RedisKey.KEY_METTING_END_CACHE, pendRecordEntity.getId(), sub);
if (setnx) {
RoomDeviceQuery roomDeviceQuery = new RoomDeviceQuery();
roomDeviceQuery.setRoomId(pendRecordEntity.getRoomId());
RoomDeviceEntity roomDeviceEntity = roomDeviceService.selectOne(roomDeviceQuery);
if(ObjectUtils.isEmpty(roomDeviceEntity)) return;
UploadDeviceReq uploadDeviceReq = new UploadDeviceReq();
uploadDeviceReq.setDeviceCodeList(Arrays.asList(pendRecordEntity.getDeviceCode()));
uploadDeviceReq.setDeviceCodeList(Arrays.asList(roomDeviceEntity.getDeviceCode()));
uploadDeviceReq.setAction("postMeet");
messageFeign.downMsg(uploadDeviceReq);
}
......
......@@ -13,6 +13,7 @@ import com.mortals.xhx.feign.device.IDeviceMessageFeign;
import com.mortals.xhx.module.basic.model.BasicSetEntity;
import com.mortals.xhx.module.basic.service.BasicSetService;
import com.mortals.xhx.module.metting.model.MettingRecordQuery;
import com.mortals.xhx.module.room.model.RoomDeviceEntity;
import com.mortals.xhx.module.room.model.RoomDeviceQuery;
import com.mortals.xhx.module.room.model.RoomEntity;
import com.mortals.xhx.module.room.service.RoomDeviceService;
......@@ -128,13 +129,17 @@ public class MettingRecordServiceImpl extends AbstractCRUDServiceImpl<MettingRec
for (MettingRecordEntity recordEntity : recordEntities) {
long between = DateUtil.between(new Date(), recordEntity.getMeetTimeStart(), DateUnit.MINUTE);
if (between <= basicSetEntity.getPreMeetStart()) {
//通知设备进行数据更新
UploadDeviceReq uploadDeviceReq = new UploadDeviceReq();
uploadDeviceReq.setDeviceCodeList(Arrays.asList(recordEntity.getDeviceCode()));
uploadDeviceReq.setAction("preMeetStart");
uploadDeviceReq.setContent(JSON.toJSONString(recordEntity));
log.info("preMeetStart send msg :{}", recordEntity.getDeviceCode());
messageFeign.downMsg(uploadDeviceReq);
RoomDeviceQuery roomDeviceQuery = new RoomDeviceQuery();
roomDeviceQuery.setRoomId(recordEntity.getRoomId());
RoomDeviceEntity roomDeviceEntity = roomDeviceService.selectOne(roomDeviceQuery);
if(!ObjectUtils.isEmpty(roomDeviceEntity)){
UploadDeviceReq uploadDeviceReq = new UploadDeviceReq();
uploadDeviceReq.setDeviceCodeList(Arrays.asList(roomDeviceEntity.getDeviceCode()));
uploadDeviceReq.setAction("preMeetStart");
uploadDeviceReq.setContent(JSON.toJSONString(recordEntity));
log.info("preMeetStart send msg :{}",recordEntity.getDeviceCode());
messageFeign.downMsg(uploadDeviceReq);
}
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment