| 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); | 
|     } | 
| } |