package com.hxzkappboot.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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.hxzkappboot.mapper.TbFenceMapper;
import com.hxzkappboot.mapper.TbPersonMapper;
import com.hxzkappboot.pojo.TbFence;
import com.hxzkappboot.pojo.TbPerson;
import com.hxzkappboot.pojo.TbTag;
import com.hxzkappboot.pojo.TbWarning;
import com.hxzkappboot.service.TbFenceService;
import com.hxzkappboot.udp.Udp_Out;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
/**
*
* 服务实现类
*
*
* @author wangfei
* @since 2024-03-08
*/
@Service
public class TbFenceServiceImpl extends ServiceImpl implements TbFenceService {
@Autowired
TbPersonMapper tbPersonMapper;
@Override
public List findAllFence(String company) {
QueryWrapper queryWrapper = new QueryWrapper<>();
queryWrapper.eq("company",company);
return baseMapper.selectList(queryWrapper);
}
public List earlyWarning() throws ParseException {
//查当前时间是否<=预警时间
Date date = new Date();
SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");
System.out.println(formatter.format(date));
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.ge("baoliu1", formatter.format(date));
List fenceList = ((TbFenceMapper)this.baseMapper).selectList(queryWrapper);
for (int i = 0; i < fenceList.size(); i++) {
QueryWrapper qw = new QueryWrapper();
queryWrapper.eq("p_fencename", fenceList.get(i).getName());
List people1 = tbPersonMapper.selectList(qw);
fenceList.get(i).setPersonList(people1);
SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
//1.string->date
Date parse = dateFormat.parse(fenceList.get(i).getBaoliu1());
fenceList.get(i).setWarntime(parse);
//person绑定的fence是一对一还是一对多
// String xieyi = "BSTOCS1,TOMESSAGE," + people1.get(0).getPTagid() + "," + fenceList.get(i).getBaoliu1() + ",系统,END";
// Udp_Out.udp_to_cs(xieyi);
}
return fenceList;
}
@Override
public IPage findFence(Page page, String objectid,String company) {
QueryWrapper queryWrapper = new QueryWrapper<>();
// queryWrapper.eq("status","未处理");
if (objectid!=null){
queryWrapper.eq("name",objectid);
}
queryWrapper.eq("company",company);
queryWrapper.orderByDesc("addtime");
IPage CompanyPage = baseMapper.selectPage(page, queryWrapper);
return CompanyPage;
}
@Override
public TbFence updateFence(TbFence tbFence) {
QueryWrapper queryWrapper = new QueryWrapper<>();
queryWrapper.eq("name",tbFence.getName());
baseMapper.update(tbFence,queryWrapper);
return baseMapper.selectOne(queryWrapper);
}
}