package com.hxzk.gps.service.impl.WarnTongJi; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.hxzk.gps.controller.System.SystemLogUtil; import com.hxzk.gps.controller.Warning.dto.TableSearchResult.TableSearchResult; import com.hxzk.gps.entity.WarnTongJi.WarnTongjiCompany; import com.hxzk.gps.entity.Warning.TbWarning; import com.hxzk.gps.mapper.WarnTongJi.WarnTongjiCompanyMapper; import com.hxzk.gps.result.ListDataResult; import com.hxzk.gps.result.ResultTable; import com.hxzk.gps.result.table; import com.hxzk.gps.service.WarnTongJi.WarnTongjiCompanyService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hxzk.gps.util.GetUser.UserInfoUtil; import com.hxzk.gps.util.MessageUtils.MessageUtils; import com.hxzk.gps.util.Result.ReturnMessage; import com.hxzk.gps.util.Time.TimeUtil; import org.springframework.stereotype.Service; import java.util.List; /** *

* 服务实现类 *

* * @author YuZhiTong * @since 2025-06-09 */ @Service public class WarnTongjiCompanyServiceImpl extends ServiceImpl implements WarnTongjiCompanyService { @Override public ResultTable FindWarningTongJiInfo(TableSearchResult TableSearchResult) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("company",UserInfoUtil.getUserCompany()); PageHelper.startPage(TableSearchResult.getTableList().getPageNum(),TableSearchResult.getTableList().getPageSize()); PageInfo info = new PageInfo<>(baseMapper.selectList(queryWrapper)); table achortable = new table<>(info.getList(),TableSearchResult.getTableList().getPageNum(),TableSearchResult.getTableList().getPageSize(),info.getTotal()); return ListDataResult.resultTableSuccess(achortable, MessageUtils.getMessage("Success")); } @Override public Integer InsertWarnTongJi(String company) { Integer count = 0; for (WarnType warnType : WarnType.values()) { WarnTongjiCompany warnTongjiCompany = new WarnTongjiCompany(); warnTongjiCompany.setCompany(company); warnTongjiCompany.setTitle(warnType.getTitle()); switch (warnType.getTitle()){ case "SOS报警": warnTongjiCompany.setIsshow(1); break; case "聚集报警": warnTongjiCompany.setIsshow(1); break; case "越界报警": warnTongjiCompany.setIsshow(1); break; case "进入报警": warnTongjiCompany.setIsshow(1); break; case "离线人员": warnTongjiCompany.setIsshow(1); break; case "在线人员": warnTongjiCompany.setIsshow(1); break; case "在线车辆": warnTongjiCompany.setIsshow(1); break; } warnTongjiCompany.setDanwei(warnType.getDanwei()); warnTongjiCompany.setAddtime(warnType.getAddtime()); warnTongjiCompany.setIcon(warnType.getIcon()); baseMapper.insert(warnTongjiCompany); count++; } return count; } @Override public ReturnMessage update(WarnTongjiCompany warnTongjiCompany) { /* 声明操作状态 * */ boolean isSuccess = false; QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("id",warnTongjiCompany.getId()); try { isSuccess= true; baseMapper.update(warnTongjiCompany,queryWrapper); }catch (Exception e){ } return SystemLogUtil.handleUpdateResult(isSuccess,"WarnTongJiUpdate",warnTongjiCompany.getTitle()); } @Override public List FindDayCountInfo() { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("company",UserInfoUtil.getUserCompany()); queryWrapper.eq("isshow",1); List warnTongjis = baseMapper.selectList(queryWrapper); return warnTongjis; } enum WarnType { STATIC_ALARM("静止报警", "条", TimeUtil.GetTime(),"jingzhibudong.png"), SOS_ALARM("SOS报警", "人",TimeUtil.GetTime(),"sosimage.png"), FALL_ALARM("跌落报警", "个",TimeUtil.GetTime(),"dieluo.png"), PERSONNEL_SHORTAGE_ALARM("缺员报警", "条",TimeUtil.GetTime(),"queyuan.png"), OVERCROWDED_ALARM("超员报警", "条",TimeUtil.GetTime(),"chaoyuan.png"), GATHERING_ALARM("聚集报警", "条",TimeUtil.GetTime(),"jujiimage.png"), BOUNDARY_ALARM("越界报警", "条",TimeUtil.GetTime(),"yujie.png"), ENTER_ALARM("进入报警", "条",TimeUtil.GetTime(),"jinruimage.png"), LOW_BATTERY_ALARM("低电报警", "条",TimeUtil.GetTime(),"lowpoer.png"), OFFLINE_BASE_STATION("离线基站", "条",TimeUtil.GetTime(),"lixianjizhan.png"), OFFLINE_PERSONNEL("离线人员", "人",TimeUtil.GetTime(),"lixianimage.png"), OFFLINE_SUPPLIES("离线物资", "个",TimeUtil.GetTime(),"wuzilixian.png"), OFFLINE_VEHICLE("离线车辆", "辆",TimeUtil.GetTime(),"lixiancheliang.png"), ONLINE_PERSONNEL("在线人员", "人",TimeUtil.GetTime(),"zaixian.png"), ONLINE_BASE_STATION("在线基站", "条",TimeUtil.GetTime(),"zaixianjizhan.png"), MESSAGE_STATISTICS("报文统计", "条",TimeUtil.GetTime(),"baowentongji.png"), ONLINE_VEHICLE("在线车辆", "辆",TimeUtil.GetTime(),"zaixiancar.png"); private final String title; private final String danwei; private final String addtime; private final String icon; WarnType(String title, String danwei, String addtime, String icon) { this.title = title; this.danwei = danwei; this.addtime = addtime; this.icon = icon; } public String getTitle() { return title; } public String getDanwei() { return danwei; } public String getAddtime() { return addtime; } public String getIcon() { return icon; } } }