package com.hxzkmonitor.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.hxzkmonitor.mapper.TbCompanyMapper; import com.hxzkmonitor.mapper.TbUserMapper; import com.hxzkmonitor.pojo.TbAlarmrecord; import com.hxzkmonitor.mapper.TbAlarmrecordMapper; import com.hxzkmonitor.pojo.TbAlarmrecord; import com.hxzkmonitor.pojo.TbCompany; import com.hxzkmonitor.pojo.TbUser; import com.hxzkmonitor.service.TbAlarmrecordService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; import java.util.Objects; /** *

* 服务实现类 *

* * @author wangfei * @since 2024-08-05 */ @Service @RequiredArgsConstructor(onConstructor = @__(@Autowired)) public class TbAlarmrecordServiceImpl extends ServiceImpl implements TbAlarmrecordService { private final TbCompanyMapper tbCompanyMapper; private final TbUserMapper tbUserMapper; @Override public IPage searchAlarmrecord(Page page, String keyword,String username) { QueryWrapper queryWrapperu = new QueryWrapper<>(); queryWrapperu.eq("username",username); TbUser tbUser= tbUserMapper.selectOne(queryWrapperu); if (Objects.equals(tbUser.getRole(), "超级管理员")){ QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("tagid", keyword); queryWrapper.orderByDesc("alarmtime"); QueryWrapper queryWrapper2 = new QueryWrapper<>(); queryWrapper2.eq("anchorname", keyword); queryWrapper.orderByDesc("alarmtime"); List tagid1 = baseMapper.selectList(queryWrapper); List alarmname1 = baseMapper.selectList(queryWrapper2); if (tagid1.size() > 0) { IPage tagid = baseMapper.selectPage(page, queryWrapper); for (int i = 0; i < tagid.getRecords().size(); i++) { QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("id",tagid.getRecords().get(i).getCompanyid()); TbCompany tbCompany = tbCompanyMapper.selectOne(queryWrapper1); if (tbCompany!=null){ tagid.getRecords().get(i).setCompany(tbCompany.getCompanyname()); } // tagid.getRecords().get(i).setCompany(tbCompany.getCompanyname()); } return tagid; } else if (alarmname1.size() > 0) { IPage alarmname = baseMapper.selectPage(page, queryWrapper2); for (int i = 0; i < alarmname.getRecords().size(); i++) { QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("id",alarmname.getRecords().get(i).getCompanyid()); TbCompany tbCompany = tbCompanyMapper.selectOne(queryWrapper1); if (tbCompany!=null){ alarmname.getRecords().get(i).setCompany(tbCompany.getCompanyname()); } // alarmname.getRecords().get(i).setCompany(tbCompany.getCompanyname()); } return alarmname; } else { return null; } }else{ QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("tagid", keyword); queryWrapper.eq("companyid",tbUser.getCsname()); queryWrapper.orderByDesc("alarmtime"); QueryWrapper queryWrapper2 = new QueryWrapper<>(); queryWrapper2.eq("anchorname", keyword); queryWrapper.eq("companyid",tbUser.getCsname()); queryWrapper.orderByDesc("alarmtime"); List tagid1 = baseMapper.selectList(queryWrapper); List alarmname1 = baseMapper.selectList(queryWrapper2); if (tagid1.size() > 0) { IPage tagid = baseMapper.selectPage(page, queryWrapper); for (int i = 0; i < tagid.getRecords().size(); i++) { QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("id",tagid.getRecords().get(i).getCompanyid()); TbCompany tbCompany = tbCompanyMapper.selectOne(queryWrapper1); if (tbCompany!=null){ tagid.getRecords().get(i).setCompany(tbCompany.getCompanyname()); } // tagid.getRecords().get(i).setCompany(tbCompany.getCompanyname()); } return tagid; } else if (alarmname1.size() > 0) { IPage alarmname = baseMapper.selectPage(page, queryWrapper2); for (int i = 0; i < alarmname.getRecords().size(); i++) { QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("id",alarmname.getRecords().get(i).getCompanyid()); TbCompany tbCompany = tbCompanyMapper.selectOne(queryWrapper1); if (tbCompany!=null){ alarmname.getRecords().get(i).setCompany(tbCompany.getCompanyname()); } // alarmname.getRecords().get(i).setCompany(tbCompany.getCompanyname()); } return alarmname; } else { return null; } } } @Override public Integer delAlarmrecord(Integer id) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("id", id); return baseMapper.delete(queryWrapper); } @Override public Integer delAlarmrecordAll() { QueryWrapper queryWrapper = new QueryWrapper<>(); // queryWrapper.eq("id", id); return baseMapper.delete(queryWrapper); } @Override public Integer recordsall(TbAlarmrecord tbAlarmrecord) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("status", "未处理"); List tbAlarmrecords = baseMapper.selectList(queryWrapper); for (int i = 0; i < tbAlarmrecords.size(); i++) { tbAlarmrecords.get(i).setStatus("已处理"); tbAlarmrecords.get(i).setRecords(tbAlarmrecord.getRecords()); baseMapper.updateById(tbAlarmrecords.get(i)); } // queryWrapper.eq("id", id); return 1; // return baseMapper.delete(queryWrapper); } @Override public Integer addorupAlarmrecord(TbAlarmrecord tbAlarmrecord) { Date date = new Date(); SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); tbAlarmrecord.setDelltime(formatter.format(date)); if (tbAlarmrecord.getId() != null) { tbAlarmrecord.setStatus("已处理"); return baseMapper.updateById(tbAlarmrecord); } else { return baseMapper.insert(tbAlarmrecord); } } @Override public IPage getAlarmrecordPage(Page page,String username) { QueryWrapper queryWrapperu = new QueryWrapper<>(); queryWrapperu.eq("username",username); TbUser tbUser= tbUserMapper.selectOne(queryWrapperu); if (Objects.equals(tbUser.getRole(), "超级管理员")){ QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.orderByDesc("alarmtime"); IPage userPage = baseMapper.selectPage(page, queryWrapper); for (int i = 0; i < userPage.getRecords().size(); i++) { QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("id",userPage.getRecords().get(i).getCompanyid()); TbCompany tbCompany = tbCompanyMapper.selectOne(queryWrapper1); if (tbCompany!=null){ userPage.getRecords().get(i).setCompany(tbCompany.getCompanyname()); } } return userPage; }else{ QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("companyid",tbUser.getCsname()); queryWrapper.orderByDesc("alarmtime"); IPage userPage = baseMapper.selectPage(page, queryWrapper); for (int i = 0; i < userPage.getRecords().size(); i++) { QueryWrapper queryWrapper1 = new QueryWrapper<>(); queryWrapper1.eq("id",userPage.getRecords().get(i).getCompanyid()); TbCompany tbCompany = tbCompanyMapper.selectOne(queryWrapper1); if (tbCompany!=null){ userPage.getRecords().get(i).setCompany(tbCompany.getCompanyname()); } } return userPage; } } }