王飞
2025-01-23 2de56e472a41b7feb90be29a54a2d6f5a6c8762e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
package com.hxzkappboot.service.impl;
 
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 
import com.hxzkappboot.mapper.*;
import com.hxzkappboot.pojo.*;
import com.hxzkappboot.service.TbTaskSchedulingService;
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.ArrayList;
import java.util.Date;
import java.util.List;
 
/**
 * <p>
 *  服务实现类
 * </p>
 *
 * @author wangfei
 * @since 2024-11-26
 */
@Service
public class TbTaskSchedulingServiceImpl extends ServiceImpl<TbTaskSchedulingMapper, TbTaskScheduling> implements TbTaskSchedulingService {
 
 
    @Autowired
    TbTaskSchedulingMapper tbTaskSchedulingMapper;
 
    @Autowired
    TbWarningRecordMapper tbWarningRecordMapper;
 
    @Autowired
    TbPersonMapper tbPersonMapper;
 
    @Autowired
    TbSendMessageHistoryMapper tbSendMessageHistoryMapper;
 
 
 
 
    public List<TbTaskScheduling> earlyWarning() throws ParseException {
        List<TbTaskScheduling> tbTaskSchedulings = new ArrayList<>();
        //查当前时间是否<=预警时间
        //存数据
        //查询有没有数据是否预警
        Date date = new Date();
        SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");
        SimpleDateFormat date2 = new SimpleDateFormat("yyyy-MM-dd");
 
        String s = date2.format(date);
        System.out.println(formatter.format(date));
        QueryWrapper queryWrapper = new QueryWrapper();
 
        queryWrapper.le("begtime", formatter.format(date));
        List<TbTaskScheduling> fenceList = ((TbTaskSchedulingMapper)this.baseMapper).selectList(queryWrapper);
        for (int i = 0; i < fenceList.size(); i++) {
            QueryWrapper queryWrapper1 = new QueryWrapper();
            queryWrapper1.eq("addtime", s);
            queryWrapper1.eq("fencename", fenceList.get(i).getFencename());
            List<TbWarningRecord> tbWarningRecords = tbWarningRecordMapper.selectList(queryWrapper1);
            System.out.println(tbWarningRecords);
            if (tbWarningRecords.size()==0){
 
                QueryWrapper qw = new QueryWrapper();
                queryWrapper.eq("p_fencename", fenceList.get(i).getFencename());
                List<TbPerson> people1 = tbPersonMapper.selectList(qw);
                fenceList.get(i).setPersonList(people1);
                tbTaskSchedulings.add(fenceList.get(i));
                //person绑定的fence是一对一还是一对多
 
            String xieyi = "BSTOCS1,TOMESSAGE," + people1.get(0).getPTagid() + "," + fenceList.get(i).getYjcontent() + ",系统,END";
            Udp_Out.udp_to_cs(xieyi);
//                SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                TbWarningRecord tbWarningRecord = new TbWarningRecord();
                tbWarningRecord.setFencename(fenceList.get(i).getFencename());
                tbWarningRecord.setYjcontent(fenceList.get(i).getYjcontent());
                tbWarningRecord.setYjtime(fenceList.get(i).getBegtime());
                tbWarningRecord.setTaskname(fenceList.get(i).getTaskname());
                tbWarningRecord.setAddtime(s);
                tbWarningRecordMapper.insert(tbWarningRecord);
 
                TbSendMessageHistory  tbSendMessageHistory = new TbSendMessageHistory();
                tbSendMessageHistory.setUser(people1.get(0).getPName());
                tbSendMessageHistory.setTagid("系统");
                tbSendMessageHistory.setNeirong(fenceList.get(i).getYjcontent());
                tbSendMessageHistory.setTime(s);
                tbSendMessageHistoryMapper.insert(tbSendMessageHistory);
            }
 
 
        }
        return tbTaskSchedulings;
    }
}