郑永安
2023-06-19 7a6abd05683528032687c75e80e0bd2030a3e46c
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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
package com.gkhy.safePlatform.safeCheck.service.baseService.impl;
 
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.gkhy.safePlatform.commons.enums.E;
import com.gkhy.safePlatform.commons.exception.AusinessException;
import com.gkhy.safePlatform.safeCheck.entity.SafeCheckTask;
import com.gkhy.safePlatform.safeCheck.entity.SafeCheckTaskAndQuota;
import com.gkhy.safePlatform.safeCheck.entity.WorkOrderRelatedDataDO;
import com.gkhy.safePlatform.safeCheck.enums.TaskResultEnum;
import com.gkhy.safePlatform.safeCheck.repository.SafeCheckTaskAndQuotaRepository;
import com.gkhy.safePlatform.safeCheck.service.baseService.SafeCheckTaskAndQuotaService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
 
import java.util.Date;
import java.util.List;
 
 
@Service("SafeCheckTaskAndQuotaService")
public class SafeCheckTaskAndQuotaServiceImpl extends ServiceImpl<SafeCheckTaskAndQuotaRepository, SafeCheckTaskAndQuota> implements SafeCheckTaskAndQuotaService {
 
    @Autowired
    private SafeCheckTaskAndQuotaRepository safeCheckTaskAndQuotaRepository;
    /**
     * @description 将任务关联的指标插入到任务指标关联表中
     */
    @Override
    public int saveTaskAndQuotas(List<SafeCheckTaskAndQuota> taskAndQuotas) {
        int insertResult = safeCheckTaskAndQuotaRepository.saveTaskAndQuotas(taskAndQuotas);
        return insertResult;
    }
 
    /**
     * @description 根据任务id查询该任务下所有的巡检点检查结果
     */
    @Override
    public Page listTaskAndQuotaByPage(Page pageInfo, Long taskId) {
        LambdaQueryWrapper<SafeCheckTaskAndQuota> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(taskId != null,SafeCheckTaskAndQuota::getTaskId,taskId);
        Page page = safeCheckTaskAndQuotaRepository.selectPage(pageInfo,queryWrapper);
        return page;
    }
 
    /**
     * @description 根据任务与巡检点关联表查询数据
     */
    @Override
    public SafeCheckTaskAndQuota getTaskAndQuotaById(int taskAndQuotaId) {
        SafeCheckTaskAndQuota safeCheckTaskAndQuota = safeCheckTaskAndQuotaRepository.getTaskAndQuotaById(taskAndQuotaId);
        return safeCheckTaskAndQuota;
    }
 
    /**
     * @description 将任务关联的巡检点rfid相同的数据rfid定位状态都改为已定位
     */
    @Override
    public int updateRfidPositionStatusByTaskIdAndRfid(Long taskId, String rfid,Byte rifdPositionStatus) {
        int updateResult = safeCheckTaskAndQuotaRepository.updateRfidPositionStatusByTaskIdAndRfid(taskId,rfid,rifdPositionStatus);
        if (updateResult == 0){
            throw new AusinessException(E.UPDATE_FAIL,"任务关联巡检点定位状态更新失败");
        }
        return updateResult;
    }
 
    /**
     * @description 统计同一个任务的巡检点rfid相同的数量
     */
    @Override
    public int countRfidSameByTaskId(Long taskId, String rfid) {
        int countResult = safeCheckTaskAndQuotaRepository.countRfidSameByTaskId(taskId,rfid);
        return countResult;
    }
 
    /**
     * @description 将巡检点检查结果信息进行修改
     */
    @Override
    public void updatePointCheckResultByIdAndTaskId(SafeCheckTaskAndQuota safeCheckTaskAndQuota) {
        int updateResult = safeCheckTaskAndQuotaRepository.updatePointCheckResultByIdAndTaskId(safeCheckTaskAndQuota);
        if (updateResult == 0){
            throw new AusinessException(E.UPDATE_FAIL,"巡检点巡检结果更新失败");
        }
 
    }
 
    /**
     * @description 查询该任务下巡检点是否还有没有定位的
     */
    @Override
    public List<String> selectNoRfidPositionByTaskId(Long taskId) {
        List<String> points = safeCheckTaskAndQuotaRepository.selectNoRfidPositionByTaskId(taskId);
        return points;
    }
 
    /**
     * @description 查询该任务下巡检点是否还有没提交的
     */
    @Override
    public List<String> selectRfidNoReportByTaskId(Long taskId) {
        List<String> points = safeCheckTaskAndQuotaRepository.selectRfidNoReportByTaskId(taskId);
        return points;
    }
 
    /**
     * @description 统计巡检点中是否存在巡检异常的数据
     */
    @Override
    public int countRfidReportIsAbnormalByTaskId(Long taskId,Byte reportResult) {
        int countResult = safeCheckTaskAndQuotaRepository.countRfidReportIsAbnormalByTaskId(taskId,reportResult);
        return countResult;
    }
 
    /**
     * @description 根据任务id查询所有的巡检链数据
     */
    @Override
    public List<SafeCheckTaskAndQuota> listTaskAndQuotaByTaskId(Long taskId) {
        List<SafeCheckTaskAndQuota> taskAndQuotas = safeCheckTaskAndQuotaRepository.listTaskAndQuotaByTaskId(taskId);
        return taskAndQuotas;
    }
 
    /**
     * @description 根据任务id和巡检点对应的id查询巡检记录
     */
    @Override
    public SafeCheckTaskAndQuota getTaskAndQuotaByIdAndTaskId(int id, Long taskId) {
        SafeCheckTaskAndQuota safeCheckTaskAndQuota = safeCheckTaskAndQuotaRepository.getTaskAndQuotaByIdAndTaskId(id,taskId);
        return safeCheckTaskAndQuota;
    }
 
    /**
     * 根据巡检指标id查询所有相关的数据rifd、region、point
     */
    @Override
    public WorkOrderRelatedDataDO getWorkOrderRelatedData(int id) {
        return safeCheckTaskAndQuotaRepository.getWorkOrderRelatedData(id);
    }
}