wuzeyu
2024-10-11 8bf7bbe0e41f32c905b635fd2e1f0ee7d2f84af3
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
package com.dy.pipIrrProject.intakeController;
 
import cn.hutool.core.date.DateTime;
import com.dy.common.webUtil.QueryResultVo;
import com.dy.pipIrrGlobal.daoPr.PrControllerTrampMapper;
import com.dy.pipIrrGlobal.daoPr.PrIntakeControllerMapper;
import com.dy.pipIrrGlobal.pojoPr.PrControllerTramp;
import com.dy.pipIrrGlobal.pojoPr.PrIntakeController;
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.common.utils.PojoUtils;
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;
import java.util.Map;
 
/**
 * @author ZhuBaoMin
 * @date 2024-01-02 9:19
 * @LastEditTime 2024-01-02 9:19
 * @Description
 */
 
@Slf4j
@Service
public class IntakeControllerSv {
    @Autowired
    private PrIntakeControllerMapper prIntakeControllerMapper;
 
    @Autowired
    private PrControllerTrampMapper prControllerTrampMapper;
 
    /**
     * 根据取水口编号、控制器编号、操作类别获取记录数量
     * 重复绑定、重复解绑都用该方法判断
     * @param intakeId 取水口ID
     * @param controllerId 控制器ID
     * @param operateType 操作类型 1-捆绑,2-解绑
     * @return 如何条件记录数
     */
    Integer getBindRecordCount(Long intakeId, Long controllerId, Byte operateType) {
        return prIntakeControllerMapper.getBindRecordCount(intakeId, controllerId, operateType);
    }
    /**
     * 添加取水口、控制器捆绑记录,1-捆绑,2-解绑
     * @param po 取水口/控制器实体对象
     * @return
     */
    Integer addRecord(PrIntakeController po) {
        return prIntakeControllerMapper.insert(po);
    }
 
    /**
     * 根据取水口编号获取绑定记录列表
     * @param intakeId 取水口编号
     * @return 取水口与控制器绑定列表
     */
    List<Map<String, Object>> getBindsByIntakeId(Long intakeId) {
        return prIntakeControllerMapper.getBindsByIntakeId(intakeId);
    }
 
    /**
     * 根据控制器编号获取绑定记录列表
     * @param controllerId 控制器编号
     * @return 取水口与控制器绑定列表
     */
    List<Map<String, Object>> getBindsByControllerId(Long controllerId) {
        return prIntakeControllerMapper.getBindsByControllerId(controllerId);
    }
 
    /**
     * 根据控制器编号获取流浪控制器地址
     * @param controllerId 流浪控制器编号
     * @return 流浪控制器地址
     */
    //public String getTrampRtuAddr(Long controllerId) {
    //    return prControllerTrampMapper.getTrampRtuAddr(controllerId);
    //}
 
    /**
     * 根据控制器编号获取流浪控制器信息
     * @param controllerId
     * @return
     */
    public PrControllerTramp getTrampControllerInfo(Long controllerId) {
        return prControllerTrampMapper.getTrampControllerInfo(controllerId);
    }
 
    /**
     * 根据流浪控制器编号删除流浪控制器记录
     * @param controllerId
     * @return
     */
    public Integer deleteTrampController(Long controllerId) {
        return prControllerTrampMapper.deleteByPrimaryKey(controllerId);
    }
 
    /**
     * 清空流浪控制器
     * @param
     * @return
     */
    public Integer emptyTrampController() {
        return prControllerTrampMapper.emptyTrampController();
    }
 
    //流浪控制器增
    public Integer addTrampController(PrControllerTramp record){
        return prControllerTrampMapper.insertSelective(record);
    }
 
 
/*流浪控制器查*/
    public QueryResultVo<List<PrControllerTramp>> getTrampControllers(TrampControllerQueryVo queryVo){
        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
 
        Long itemTotal = prControllerTrampMapper.getTrampControllersCount(params);
 
        QueryResultVo<List<PrControllerTramp>> rsVo = new QueryResultVo<>();
        rsVo.pageSize = queryVo.pageSize;
        rsVo.pageCurr = queryVo.pageCurr;
 
        rsVo.calculateAndSet(itemTotal, params);
        rsVo.obj = prControllerTrampMapper.getTrampControllers(params);
 
        return rsVo;
    }
    /**
     * 修改绑定记录通过取水口
     * @param record
     * @return
     */
    public Integer updateBindRecord(PrIntakeController record){
        return prIntakeControllerMapper.updateByIntakeSelective(record);
    }
}