Browse Source

模拟第三方报警页面分页接口

gao.qiang 1 năm trước cách đây
mục cha
commit
ea27364b21

+ 50 - 0
vehicle-admin/src/main/java/com/ozs/web/controller/accountmanagment/MsgAlarmTemporaryController.java

@@ -2,10 +2,14 @@ package com.ozs.web.controller.accountmanagment;
 
 import com.alibaba.fastjson2.JSONObject;
 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.ozs.common.annotation.Log;
 import com.ozs.common.core.controller.BaseController;
 import com.ozs.common.core.domain.AjaxResult;
+import com.ozs.common.core.domain.entity.SysDictData;
 import com.ozs.common.enums.BusinessType;
+import com.ozs.common.utils.AppendUtils;
 import com.ozs.common.utils.IdempotenceUtils;
 import com.ozs.common.utils.StringUtils;
 import com.ozs.common.utils.http.HttpUtils;
@@ -13,11 +17,13 @@ import com.ozs.common.utils.stateSecrets.SM4Utils;
 import com.ozs.entity.BaseCameraManagement;
 import com.ozs.entity.BaseRailwayManagement;
 import com.ozs.entity.BaseUser;
+import com.ozs.entity.MonitorSystem;
 import com.ozs.entity.MsgAlarm;
 import com.ozs.entity.MsgAlarmExt;
 import com.ozs.entity.MsgAlarmFrequency;
 import com.ozs.entity.vo.Files;
 import com.ozs.entity.vo.MsgAlarmTemporary;
+import com.ozs.entity.vo.MsgAlarmVo;
 import com.ozs.entity.vo.ReqMsgAlarmVo;
 import com.ozs.service.BaseCameraManagementService;
 import com.ozs.service.BaseRailwayManagementService;
@@ -27,6 +33,7 @@ import com.ozs.service.MsgAlarmFrequencyService;
 import com.ozs.service.MsgAlarmService;
 import com.ozs.service.MsgAlarmTemporaryService;
 import com.ozs.service.SvcAddressService;
+import com.ozs.system.service.ISysDictTypeService;
 import com.ozs.web.controller.monitor.SysUserOnlineController;
 import com.ozs.web.controller.websocket.WebSocketCommon;
 import com.ozs.web.core.util.CameraUtil;
@@ -44,6 +51,7 @@ import org.springframework.web.bind.annotation.RestController;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 
 /**
@@ -81,6 +89,48 @@ public class MsgAlarmTemporaryController extends BaseController {
     private MsgAlarmService msgAlarmService;
     @Autowired
     private MsgAlarmFrequencyService msgAlarmFrequencyService;
+    @Autowired
+    private ISysDictTypeService dictTypeService;
+
+
+
+    /**
+     * 报警信息临时表分页
+     *
+     * @param msgAlarmVo
+     * @return
+     */
+    @ApiOperation(value = "报警信息临时表分页")
+    @PostMapping("/list")
+    @Log(title = "报警信息管理", businessType = BusinessType.SELECT)
+    public AjaxResult selectMsgAlarm(@RequestBody MsgAlarmVo msgAlarmVo) {
+        IPage<MsgAlarmTemporary> page = msgAlarmTemporaryService.page(new Page<>(msgAlarmVo.getPageNum(), msgAlarmVo.getPageSize()), null);
+        if (!ObjectUtils.isEmpty(page) && page.getRecords().size() > 0) {
+            List<MsgAlarmTemporary> dto1 = page.getRecords().stream().map(o -> {
+                LambdaQueryWrapper<BaseRailwayManagement> queryWrapper = new LambdaQueryWrapper<BaseRailwayManagement>();
+                if (!ObjectUtils.isEmpty(o.getRailwayCode())) {
+                    queryWrapper.eq(BaseRailwayManagement::getRailwayCode, o.getRailwayCode());
+                }
+                BaseRailwayManagement baseRailwayManagement = baseRailwayManagementService.getOne(queryWrapper);
+                if (!StringUtils.isEmptySunhh(baseRailwayManagement) && !StringUtils.isEmptySunhh(baseRailwayManagement.getRailwayName())) {
+                    o.setRailwayName(baseRailwayManagement.getRailwayName());
+                }
+                String mils = AppendUtils.stringAppend(o.getAlarmMile());
+                o.setAlarmMiles(mils);
+                o.setLineDirName(o.getLineDir() == 1 ? "上行" : "下行");
+                o.setAlarmTypeStr(o.getAlarmType() == 1 ? "泥石流" : (o.getAlarmType() == 2 ? "异物侵线" : (o.getAlarmType() == 3 ? "断轨监测" : "未知")));
+                List<SysDictData> data = dictTypeService.selectDictDataByType("sys_alarm_type");
+                data.stream().forEach(sysDictData -> {
+                    if (sysDictData.getDictValue().equals(o.getAlarmType().toString())) {
+                        o.setAlarmTypeName(sysDictData.getDictLabel());
+                    }
+                });
+                return o;
+            }).collect(Collectors.toList());
+            page.setRecords(dto1);
+        }
+        return AjaxResult.success(page);
+    }
 
 
     @PostMapping("/saveMsgAlarmTemporary")