郑永安
2023-09-19 69185134fcfaf913ea45f1255677225a2cc311a4
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
package com.gk.hotwork.Service.ServiceImpl;
 
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.gk.hotwork.Domain.TaskInfo;
import com.gk.hotwork.Domain.Utils.PageInfo;
import com.gk.hotwork.Domain.Utils.PageUtil;
import com.gk.hotwork.Domain.Utils.StringUtils;
import com.gk.hotwork.Domain.WarningInfo;
import com.gk.hotwork.Mapper.WarningInfoMapper;
import com.gk.hotwork.Service.WarningService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
 
import java.util.Calendar;
import java.util.Date;
import java.util.List;
 
/**
 * @author : jingjy
 * @date : 2021/9/9 14:20
 */
@Service("WarningService")
public class WarningServiceImpl extends ServiceImpl<WarningInfoMapper, WarningInfo> implements WarningService {
    @Autowired
    private WarningInfoMapper warningInfoMapper;
    @Override
    public WarningInfo getByContent(String taskCode, String worker, String content) {
        LambdaQueryWrapper<WarningInfo> wrapper = new LambdaQueryWrapper<>();
        String taskType = "动火作业";
        wrapper.eq(WarningInfo::getContent,content);
        wrapper.eq(WarningInfo::getTasktype,taskType);
        wrapper.eq(WarningInfo::getWorker,worker);
        wrapper.eq(WarningInfo::getTaskcode,taskCode);
        return baseMapper.selectOne(wrapper);
    }
 
    @Override
    public List<WarningInfo> getBeforeWarn(String taskCode, String worker, String type, Date now) {
        LambdaQueryWrapper<WarningInfo> wrapper = new LambdaQueryWrapper<>();
        String taskType = "动火作业";
        wrapper.eq(WarningInfo::getTaskcode,taskCode);
        wrapper.eq(WarningInfo::getTasktype,taskType);
        wrapper.eq(WarningInfo::getWorker,worker);
        wrapper.eq(WarningInfo::getType,type);
        wrapper.eq(WarningInfo::getIsdeal,(byte)0);
        wrapper.le(WarningInfo::getCreatedat,now);
        return baseMapper.selectList(wrapper);
    }
 
    @Override
    public void selectDataGrid(PageInfo pageInfo) {
        Page<TaskInfo> page = PageUtil.getPage(pageInfo,"createdat");
        if (StringUtils.isBlank(pageInfo.getSort())){
            pageInfo.setSort("createdat");
        }
        if (StringUtils.isBlank(pageInfo.getOrder())){
            pageInfo.setOrder("desc");
        }
        List<WarningInfo>warningInfos = warningInfoMapper.selectTaskDataGrid(pageInfo.getCondition(),page);
        pageInfo.setResult(warningInfos);
        pageInfo.setTotalCount(page.getTotal());
    }
 
    @Override
    public Integer getCount(Byte type) {
        LambdaQueryWrapper<WarningInfo> wrapper = new LambdaQueryWrapper<>();
        String taskType = "动火作业";
        Calendar instance = Calendar.getInstance();
        instance.set(Calendar.HOUR_OF_DAY, 0);
        instance.set(Calendar.MINUTE, 0);
        instance.set(Calendar.SECOND, 0);
        wrapper.eq(WarningInfo::getTasktype,taskType);
        wrapper.eq(WarningInfo::getIsdeal,(byte)0);
        wrapper.eq(WarningInfo::getType,type);
        wrapper.ge(WarningInfo::getCreatedat, instance.getTime());
        return baseMapper.selectCount(wrapper);
    }
}