|
@@ -1,15 +1,29 @@
|
|
|
package com.ozs.service.service.impl;
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.ozs.common.utils.AppendUtils;
|
|
|
+import com.ozs.common.utils.PageUtils;
|
|
|
+import com.ozs.common.utils.StringUtils;
|
|
|
+import com.ozs.service.entity.BaseCameraManagement;
|
|
|
+import com.ozs.service.entity.BaseRailwayManagement;
|
|
|
+import com.ozs.service.entity.MsgAlarm;
|
|
|
import com.ozs.service.entity.MsgWebPush;
|
|
|
+import com.ozs.service.entity.vo.MsgAlarmVo;
|
|
|
import com.ozs.service.mapper.MsgWebPushMapper;
|
|
|
+import com.ozs.service.service.BaseCameraManagementService;
|
|
|
+import com.ozs.service.service.BaseRailwayManagementService;
|
|
|
+import com.ozs.service.service.MsgAlarmFrequencyService;
|
|
|
import com.ozs.service.service.MsgWebPushService;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
+import org.springframework.util.ObjectUtils;
|
|
|
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
+import javax.annotation.Resource;
|
|
|
+import java.util.*;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* @Author : sunhh
|
|
@@ -19,6 +33,10 @@ import java.util.Map;
|
|
|
public class MsgWebPushServiceImpl extends ServiceImpl<MsgWebPushMapper, MsgWebPush> implements MsgWebPushService {
|
|
|
@Autowired
|
|
|
private MsgWebPushMapper msgWebPushMapper;
|
|
|
+ @Autowired
|
|
|
+ private BaseCameraManagementService baseCameraManagementService;
|
|
|
+ @Autowired
|
|
|
+ private BaseRailwayManagementService baseRailwayManagementService;
|
|
|
|
|
|
@Override
|
|
|
public int read(MsgWebPush msgWebPush) {
|
|
@@ -29,11 +47,50 @@ public class MsgWebPushServiceImpl extends ServiceImpl<MsgWebPushMapper, MsgWebP
|
|
|
|
|
|
@Override
|
|
|
public Map webAlarm(String userId) {
|
|
|
+ List<String> userIds = baseCameraManagementService.getUserIds(userId);
|
|
|
Map<String, Object> webAlarmMap = new HashMap<>();
|
|
|
- Integer webAlarmNum = msgWebPushMapper.webAlarmNum(userId);
|
|
|
- List<MsgWebPush> webAlarm = msgWebPushMapper.webAlarm(userId);
|
|
|
+ Integer webAlarmNum = msgWebPushMapper.webAlarmNum(userIds);
|
|
|
+ List<MsgWebPush> webAlarm = msgWebPushMapper.webAlarm(userIds);
|
|
|
webAlarmMap.put("webAlarmNum", webAlarmNum);
|
|
|
webAlarmMap.put("webAlarm", webAlarm);
|
|
|
return webAlarmMap;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public IPage messageMore(String userId, MsgAlarmVo msgAlarmVo) {
|
|
|
+ List<String> userIds = baseCameraManagementService.getUserIds(userId);
|
|
|
+ msgAlarmVo.setUserIds(userIds);
|
|
|
+ List<MsgAlarm> webAlarm = msgWebPushMapper.messageMore(msgAlarmVo);
|
|
|
+ Page<MsgAlarm> page = PageUtils.getPages(msgAlarmVo.getPageNum().intValue(), msgAlarmVo.getPageSize().intValue(), webAlarm);
|
|
|
+ // IPage<MsgAlarm> page = listToPage(webAlarm, msgAlarmVo.getPageNum().intValue(), msgAlarmVo.getPageSize().intValue());
|
|
|
+ if(!ObjectUtils.isEmpty(page) && !ObjectUtils.isEmpty(page.getRecords())){
|
|
|
+ List<MsgAlarm> dto1 = page.getRecords().stream().map(o -> {
|
|
|
+ String[] split = o.getImageUrl().split(";");
|
|
|
+ ArrayList<String> objects = new ArrayList<>(Arrays.asList(split));
|
|
|
+ o.setImageUrls(objects);
|
|
|
+ LambdaQueryWrapper<BaseCameraManagement> cameraManagementLambdaQueryWrapper = new LambdaQueryWrapper<BaseCameraManagement>();
|
|
|
+ if (!ObjectUtils.isEmpty(o.getCameraCode())) {
|
|
|
+ cameraManagementLambdaQueryWrapper.eq(BaseCameraManagement::getCameraCode, o.getCameraCode());
|
|
|
+ }
|
|
|
+ BaseCameraManagement cameraManagement = baseCameraManagementService.getOne(cameraManagementLambdaQueryWrapper);
|
|
|
+ LambdaQueryWrapper<BaseRailwayManagement> queryWrapper = new LambdaQueryWrapper<BaseRailwayManagement>();
|
|
|
+ if (!ObjectUtils.isEmpty(cameraManagement.getRailwayCode())) {
|
|
|
+ queryWrapper.eq(BaseRailwayManagement::getRailwayCode, cameraManagement.getRailwayCode());
|
|
|
+ }
|
|
|
+ BaseRailwayManagement baseRailwayManagement = baseRailwayManagementService.getOne(queryWrapper);
|
|
|
+
|
|
|
+ o.setRailwayName(baseRailwayManagement.getRailwayName());
|
|
|
+ String mils = AppendUtils.stringAppend(cameraManagement.getInstallMile());
|
|
|
+ o.setAlarmMiles(mils);
|
|
|
+ String end = AppendUtils.stringAppend(cameraManagement.getEndMile());
|
|
|
+ o.setEndMile(end);
|
|
|
+ String begin = AppendUtils.stringAppend(cameraManagement.getBeginMile());
|
|
|
+ o.setBeginMile(begin);
|
|
|
+ // o.setAlarmCount((int) msgAlarmFrequencyService.count()+1);
|
|
|
+ return o;
|
|
|
+ }).collect(Collectors.toList());
|
|
|
+ page.setRecords(dto1);
|
|
|
+ }
|
|
|
+ return page;
|
|
|
+ }
|
|
|
}
|