elkers
7 天以前 256851a621c1f71eaecdfdcb7ef3c3e4fdce21c2
添加启泵记录
已修改3个文件
已添加10个文件
869 ■■■■■ 文件已修改
src/main/java/com/nanjing/water/entity/request/waterpumpoperatingrecord/ReqCreateWaterPumpOperatingRecord.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanjing/water/entity/request/waterpumpoperatingrecord/ReqModifyWaterPumpOperatingRecord.java 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanjing/water/entity/search/SearchWaterPumpOperatingRecord.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanjing/water/host/controller/WaterPumpOperatingRecordController.java 113 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanjing/water/repository/impl/WaterPumpOperatingRecordMapperImpl.java 137 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanjing/water/repository/mapper/WaterPumpOperatingRecordMapper.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanjing/water/repository/po/WaterPumpOperatingRecordPO.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanjing/water/repository/vo/WaterPumpOperatingRecordVO.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanjing/water/service/DataUploadRecordService.java 50 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanjing/water/service/WaterFacilityParameterService.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanjing/water/service/WaterPumpOperatingRecordService.java 244 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanjing/water/service/convert/WaterPumpOperatingRecordConvert.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/test/java/com/nanjing/water/GenCodeGauss.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/nanjing/water/entity/request/waterpumpoperatingrecord/ReqCreateWaterPumpOperatingRecord.java
对比新文件
@@ -0,0 +1,45 @@
/**
#                                                    __----~~~~~~~~~~~------___
#                                   .  .   ~~//====......          __--~ ~~
#                   -.            \_|//     |||\\  ~~~~~~::::... /~
#                ___-==_       _-~o~  \/    |||  \\            _/~~-
#        __---~~~.==~||\=_    -_--~/_-~|-   |\\   \\        _/~
#    _-~~     .=~    |  \\-_    '-~7  /-   /  ||    \      /
#  .~       .~       |   \\ -_    /  /-   /   ||      \   /
# /  ____  /         |     \\ ~-_/  /|- _/   .||       \ /
# |~~    ~~|--~~~~--_ \     ~==-/   | \~--===~~        .\
#          '         ~-|      /|    |-~\~~       __--~~
#                      |-~~-_/ |    |   ~\_   _-~            /\
#                           /  \     \__   \/~                \__
#                       _--~ _/ | .-~~____--~-/                  ~~==.
#                      ((->/~   '.|||' -_|    ~~-/ ,              . _||
#                                 -_     ~\      ~~---l__i__i__i--~~_/
#                                 _-~-__   ~)  \--______________--~~
#                               //.-~~~-~_--~- |-------~~~~~~~~
#                                      //.-~~~--\
#                  神兽保佑
#                  永无BUG!
*/
package com.nanjing.water.entity.request.waterpumpoperatingrecord;
import lombok.Data;
/**
 * 水泵设备操作记录
 * @author lin.liu
 */
@Data
public class ReqCreateWaterPumpOperatingRecord {
    /**
     * 监控点id
     */
    private Long pointId;
    /**
     * 设备id
     */
    private Long facilityId;
    /**
     * 水泵编号
     */
    private String code;
}
src/main/java/com/nanjing/water/entity/request/waterpumpoperatingrecord/ReqModifyWaterPumpOperatingRecord.java
对比新文件
@@ -0,0 +1,53 @@
/**
#                                                    __----~~~~~~~~~~~------___
#                                   .  .   ~~//====......          __--~ ~~
#                   -.            \_|//     |||\\  ~~~~~~::::... /~
#                ___-==_       _-~o~  \/    |||  \\            _/~~-
#        __---~~~.==~||\=_    -_--~/_-~|-   |\\   \\        _/~
#    _-~~     .=~    |  \\-_    '-~7  /-   /  ||    \      /
#  .~       .~       |   \\ -_    /  /-   /   ||      \   /
# /  ____  /         |     \\ ~-_/  /|- _/   .||       \ /
# |~~    ~~|--~~~~--_ \     ~==-/   | \~--===~~        .\
#          '         ~-|      /|    |-~\~~       __--~~
#                      |-~~-_/ |    |   ~\_   _-~            /\
#                           /  \     \__   \/~                \__
#                       _--~ _/ | .-~~____--~-/                  ~~==.
#                      ((->/~   '.|||' -_|    ~~-/ ,              . _||
#                                 -_     ~\      ~~---l__i__i__i--~~_/
#                                 _-~-__   ~)  \--______________--~~
#                               //.-~~~-~_--~- |-------~~~~~~~~
#                                      //.-~~~--\
#                  神兽保佑
#                  永无BUG!
*/
package com.nanjing.water.entity.request.waterpumpoperatingrecord;
import lombok.Data;
/**
 * 水泵设备操作记录
 * @author lin.liu
 */
@Data
public class ReqModifyWaterPumpOperatingRecord {
    /**
     * 主键id
     */
    private Long id;
    /**
     * 监控点id
     */
    private Long pointId;
    /**
     * 设备id
     */
    private Long facilityId;
    /**
     * 水泵编号
     */
    private String code;
    /**
     * 操作状态(0 关,1开)
     */
    private Integer state;
}
src/main/java/com/nanjing/water/entity/search/SearchWaterPumpOperatingRecord.java
对比新文件
@@ -0,0 +1,14 @@
package com.nanjing.water.entity.search;
import lombok.Data;
import com.nanjing.water.entity.dto.SearchBasicDTO;
/**
 * 水泵设备操作记录
 * @author lin.liu
 */
@Data
public class SearchWaterPumpOperatingRecord extends SearchBasicDTO {
}
src/main/java/com/nanjing/water/host/controller/WaterPumpOperatingRecordController.java
对比新文件
@@ -0,0 +1,113 @@
/**
#                                                    __----~~~~~~~~~~~------___
#                                   .  .   ~~//====......          __--~ ~~
#                   -.            \_|//     |||\\  ~~~~~~::::... /~
#                ___-==_       _-~o~  \/    |||  \\            _/~~-
#        __---~~~.==~||\=_    -_--~/_-~|-   |\\   \\        _/~
#    _-~~     .=~    |  \\-_    '-~7  /-   /  ||    \      /
#  .~       .~       |   \\ -_    /  /-   /   ||      \   /
# /  ____  /         |     \\ ~-_/  /|- _/   .||       \ /
# |~~    ~~|--~~~~--_ \     ~==-/   | \~--===~~        .\
#          '         ~-|      /|    |-~\~~       __--~~
#                      |-~~-_/ |    |   ~\_   _-~            /\
#                           /  \     \__   \/~                \__
#                       _--~ _/ | .-~~____--~-/                  ~~==.
#                      ((->/~   '.|||' -_|    ~~-/ ,              . _||
#                                 -_     ~\      ~~---l__i__i__i--~~_/
#                                 _-~-__   ~)  \--______________--~~
#                               //.-~~~-~_--~- |-------~~~~~~~~
#                                      //.-~~~--\
#                  神兽保佑
#                  永无BUG!
*/
package com.nanjing.water.host.controller;
import com.nanjing.water.common.ExecutedResult;
import com.nanjing.water.common.PagerResult;
import com.nanjing.water.common.util.ParameterUtil;
import com.nanjing.water.common.validator.ParameterValidateResult;
import com.nanjing.water.common.validator.ParameterValidator;
import com.nanjing.water.entity.request.ReqListId;
import com.nanjing.water.host.BasicController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import com.nanjing.water.service.WaterPumpOperatingRecordService;
import com.nanjing.water.entity.request.waterpumpoperatingrecord.ReqCreateWaterPumpOperatingRecord;
import com.nanjing.water.entity.request.waterpumpoperatingrecord.ReqModifyWaterPumpOperatingRecord;
import com.nanjing.water.entity.search.SearchWaterPumpOperatingRecord;
import com.nanjing.water.repository.vo.WaterPumpOperatingRecordVO;
/**
 * 9000.水泵设备操作记录
 * @author lin.liu
 * @order 9000
 */
@RestController
@RequestMapping(value = "waterPumpOperatingRecord")
public class WaterPumpOperatingRecordController extends BasicController {
    @Autowired
    private WaterPumpOperatingRecordService service;
    /**
     * 创建[水泵设备操作记录]
     * @author lin.liu
     */
    @PostMapping(value = "create")
    public ExecutedResult<Long> create(@RequestBody ReqCreateWaterPumpOperatingRecord request) {
        //#region 参数验证
        ParameterValidator validator = new ParameterValidator()
                // 非空
                //.addNotNullOrEmpty(ParameterUtil.named("名称"), request.getName())
                // 限制最大长度
                //.addLengthMax(ParameterUtil.named("名称"), request.getName(), ConstantFactory.LENGTH_MAX50)
                ;
        ParameterValidateResult result = validator.validate();
        if (result.getIsFiled()) {
            return failed(result.getErrorMsg());
        }
        //#endregion
        return service.create(request);
    }
    /**
     * 编辑[水泵设备操作记录]
     * @author lin.liu
     */
    @PostMapping(value = "modify")
    public ExecutedResult<String> modify(@RequestBody ReqModifyWaterPumpOperatingRecord request) {
        //#region 参数验证
        ParameterValidator validator = new ParameterValidator()
                // 必须大于0
                .addGreater(ParameterUtil.named("[水泵设备操作记录]id"), request.getId(), 0L)
                // 非空
                //.addNotNullOrEmpty(ParameterUtil.named("名称"), request.getName())
                // 限制最大长度
                //.addLengthMax(ParameterUtil.named("名称"), request.getName(), ConstantFactory.LENGTH_MAX50)
                ;
        ParameterValidateResult result = validator.validate();
        if (result.getIsFiled()) {
            return failed(result.getErrorMsg());
        }
        //#endregion
        return service.modify(request);
    }
    /**
     * 获取[水泵设备操作记录]
     * @author lin.liu
     */
    @GetMapping(value = "get/{id}")
    public ExecutedResult<WaterPumpOperatingRecordVO> get(@PathVariable Long id) {
        return service.get(id);
    }
    /**
     * 查询[水泵设备操作记录]
     * @author lin.liu
     */
    @PostMapping(value = "search")
    public ExecutedResult<PagerResult<WaterPumpOperatingRecordVO>> search(@RequestBody SearchWaterPumpOperatingRecord request) {
        return service.search(request);
    }
}
src/main/java/com/nanjing/water/repository/impl/WaterPumpOperatingRecordMapperImpl.java
对比新文件
@@ -0,0 +1,137 @@
/**
#                                                    __----~~~~~~~~~~~------___
#                                   .  .   ~~//====......          __--~ ~~
#                   -.            \_|//     |||\\  ~~~~~~::::... /~
#                ___-==_       _-~o~  \/    |||  \\            _/~~-
#        __---~~~.==~||\=_    -_--~/_-~|-   |\\   \\        _/~
#    _-~~     .=~    |  \\-_    '-~7  /-   /  ||    \      /
#  .~       .~       |   \\ -_    /  /-   /   ||      \   /
# /  ____  /         |     \\ ~-_/  /|- _/   .||       \ /
# |~~    ~~|--~~~~--_ \     ~==-/   | \~--===~~        .\
#          '         ~-|      /|    |-~\~~       __--~~
#                      |-~~-_/ |    |   ~\_   _-~            /\
#                           /  \     \__   \/~                \__
#                       _--~ _/ | .-~~____--~-/                  ~~==.
#                      ((->/~   '.|||' -_|    ~~-/ ,              . _||
#                                 -_     ~\      ~~---l__i__i__i--~~_/
#                                 _-~-__   ~)  \--______________--~~
#                               //.-~~~-~_--~- |-------~~~~~~~~
#                                      //.-~~~--\
#                  神兽保佑
#                  永无BUG!
*/
package com.nanjing.water.repository.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.nanjing.water.common.PagerResult;
import com.nanjing.water.common.enums.EYesOrNo;
import com.nanjing.water.common.util.*;
import com.nanjing.water.entity.dto.*;
import com.nanjing.water.entity.enums.*;
import com.nanjing.water.repository.BasicMapperImpl;
import org.springframework.stereotype.Repository;
import java.util.List;
import com.nanjing.water.entity.search.SearchWaterPumpOperatingRecord;
import com.nanjing.water.repository.mapper.WaterPumpOperatingRecordMapper;
import com.nanjing.water.repository.po.WaterPumpOperatingRecordPO;
/**
 * 水泵设备操作记录
 * @author lin.liu
 */
@Repository
public class WaterPumpOperatingRecordMapperImpl extends BasicMapperImpl<WaterPumpOperatingRecordPO, WaterPumpOperatingRecordMapper> {
    WaterPumpOperatingRecordMapperImpl(WaterPumpOperatingRecordMapper mapper) {
        super(mapper);
    }
    @Override
    public PagerResult<WaterPumpOperatingRecordPO> search(SearchBasicDTO request) {
        // 还原查询条件真实类型
        SearchWaterPumpOperatingRecord search = (SearchWaterPumpOperatingRecord)request;
        // 查询条件
        LambdaQueryWrapper<WaterPumpOperatingRecordPO> queryWrapper = this.query();
        // 非逻辑删除
        queryWrapper.eq(WaterPumpOperatingRecordPO::getIsDelete, EYesOrNo.NO.getValue());
        // 状态
        //queryWrapper.eq(NumericUtil.tryParseInt(search.getStatus()).compareTo(0) > 0, WaterPumpOperatingRecordPO::getStatus, search.getStatus());
        // 状态列表
        //queryWrapper.in(ListUtil.isNotNullOrEmpty(search.getListStatus()), WaterPumpOperatingRecordPO::getStatus, search.getListStatus());
        // 数据创建时间-起始
        queryWrapper.ge(NumericUtil.tryParseLong(search.getCreateTimeStart()).compareTo(0L) > 0, WaterPumpOperatingRecordPO::getCreateTime, search.getCreateTimeStart());
        // 数据创建时间-截止
        queryWrapper.le(NumericUtil.tryParseLong(search.getCreateTimeEnd()).compareTo(0L) > 0, WaterPumpOperatingRecordPO::getCreateTime, search.getCreateTimeEnd());
        // 关键字
        //if (StringUtil.isNotNullOrEmpty(search.getKeywords())) {
        //    queryWrapper.and(q ->
        //        q.like(WaterPumpOperatingRecordPO::getName, search.getKeywords())
        //        .or().like(WaterPumpOperatingRecordPO::getPhone, search.getKeywords())
        //    );
        //}
        // 排序处理
        if (ListUtil.isNotNullOrEmpty(search.getOrderBy())) {
            for (OrderByDTO item : search.getOrderBy()) {
                EOrderBy orderBy = EOrderBy.getByValue(item.getOrderBy());
                // 顺序排序
                if (item.getIsAsc()) {
                    switch (orderBy) {
                        // 主键
                        case ID:
                            queryWrapper.orderByAsc(WaterPumpOperatingRecordPO::getId);
                            break;
                        // 数据创建时间
                        case CREATE_TIME:
                            queryWrapper.orderByAsc(WaterPumpOperatingRecordPO::getCreateTime);
                            break;
                        // 最后更新时间
                        case UPDATE_TIME:
                            queryWrapper.orderByAsc(WaterPumpOperatingRecordPO::getUpdateTime);
                            break;
                    }
                } else {
                    // 倒叙排序
                    switch (orderBy) {
                        // 主键
                        case ID:
                            queryWrapper.orderByDesc(WaterPumpOperatingRecordPO::getId);
                            break;
                        // 数据创建时间
                        case CREATE_TIME:
                            queryWrapper.orderByDesc(WaterPumpOperatingRecordPO::getCreateTime);
                            break;
                        // 最后更新时间
                        case UPDATE_TIME:
                            queryWrapper.orderByDesc(WaterPumpOperatingRecordPO::getUpdateTime);
                            break;
                    }
                }
            }
        } else {
            queryWrapper.orderByDesc(WaterPumpOperatingRecordPO::getId);
        }
        Page<WaterPumpOperatingRecordPO> pageResult = super.selectPage(new Page<>(search.getPage(), search.getLimit()), queryWrapper);
        return new PagerResult<>(pageResult.getSize(), pageResult.getCurrent(), pageResult.getTotal(), pageResult.getRecords());
    }
    public Boolean add(WaterPumpOperatingRecordPO item) {
        int rowCount = super.insert(item);
        return rowCount == 1;
    }
    public Boolean addNotIncrement(WaterPumpOperatingRecordPO item) {
        int rowCount = super.insert(item);
        return rowCount == 1;
    }
    public WaterPumpOperatingRecordPO getById(Long id) {
        return super.get(id);
    }
    public List<WaterPumpOperatingRecordPO> getListById(List<Long> listId) {
        return super.getList(listId);
    }
}
src/main/java/com/nanjing/water/repository/mapper/WaterPumpOperatingRecordMapper.java
对比新文件
@@ -0,0 +1,10 @@
package com.nanjing.water.repository.mapper;
import com.nanjing.water.repository.BasicMapper;import com.nanjing.water.repository.po.WaterPumpOperatingRecordPO;
/**
 * 水泵设备操作记录 mapper
 * @author lin.liu
 */
public interface WaterPumpOperatingRecordMapper extends BasicMapper<WaterPumpOperatingRecordPO> {
}
src/main/java/com/nanjing/water/repository/po/WaterPumpOperatingRecordPO.java
对比新文件
@@ -0,0 +1,84 @@
/**
#                                                    __----~~~~~~~~~~~------___
#                                   .  .   ~~//====......          __--~ ~~
#                   -.            \_|//     |||\\  ~~~~~~::::... /~
#                ___-==_       _-~o~  \/    |||  \\            _/~~-
#        __---~~~.==~||\=_    -_--~/_-~|-   |\\   \\        _/~
#    _-~~     .=~    |  \\-_    '-~7  /-   /  ||    \      /
#  .~       .~       |   \\ -_    /  /-   /   ||      \   /
# /  ____  /         |     \\ ~-_/  /|- _/   .||       \ /
# |~~    ~~|--~~~~--_ \     ~==-/   | \~--===~~        .\
#          '         ~-|      /|    |-~\~~       __--~~
#                      |-~~-_/ |    |   ~\_   _-~            /\
#                           /  \     \__   \/~                \__
#                       _--~ _/ | .-~~____--~-/                  ~~==.
#                      ((->/~   '.|||' -_|    ~~-/ ,              . _||
#                                 -_     ~\      ~~---l__i__i__i--~~_/
#                                 _-~-__   ~)  \--______________--~~
#                               //.-~~~-~_--~- |-------~~~~~~~~
#                                      //.-~~~--\
#                  神兽保佑
#                  永无BUG!
*/
package com.nanjing.water.repository.po;
import lombok.Data;
import com.baomidou.mybatisplus.annotation.*;
import java.io.Serializable;
import java.sql.Timestamp;
/**
 * 水泵设备操作记录
 * @author lin.liu
 */
@Data
@TableName("water_pump_operating_record")
public class WaterPumpOperatingRecordPO implements Serializable {
    /**
     * 主键id
     */
    private Long id;
    /**
     * 监控点id
     */
    @TableField(value = "point_id")
    private Long pointId;
    /**
     * 设备id
     */
    @TableField(value = "facility_id")
    private Long facilityId;
    /**
     * 水泵编号
     */
    @TableField(value = "code")
    private String code;
    /**
     * 启动次数
     */
    @TableField(value = "start_number")
    private Integer startNumber;
    /**
     * 最后更新时间
     */
    @TableField(value = "last_time")
    private String lastTime;
    /**
     * null
     */
    @TableLogic
    @TableField(value = "is_delete")
    private Integer isDelete;
    /**
     * 操作时间
     */
    @TableField(value = "create_time")
    private Long createTime;
    /**
     * 修改时间
     */
    @TableField(value = "update_time")
    private Timestamp updateTime;
}
src/main/java/com/nanjing/water/repository/vo/WaterPumpOperatingRecordVO.java
对比新文件
@@ -0,0 +1,54 @@
/**
#                                                    __----~~~~~~~~~~~------___
#                                   .  .   ~~//====......          __--~ ~~
#                   -.            \_|//     |||\\  ~~~~~~::::... /~
#                ___-==_       _-~o~  \/    |||  \\            _/~~-
#        __---~~~.==~||\=_    -_--~/_-~|-   |\\   \\        _/~
#    _-~~     .=~    |  \\-_    '-~7  /-   /  ||    \      /
#  .~       .~       |   \\ -_    /  /-   /   ||      \   /
# /  ____  /         |     \\ ~-_/  /|- _/   .||       \ /
# |~~    ~~|--~~~~--_ \     ~==-/   | \~--===~~        .\
#          '         ~-|      /|    |-~\~~       __--~~
#                      |-~~-_/ |    |   ~\_   _-~            /\
#                           /  \     \__   \/~                \__
#                       _--~ _/ | .-~~____--~-/                  ~~==.
#                      ((->/~   '.|||' -_|    ~~-/ ,              . _||
#                                 -_     ~\      ~~---l__i__i__i--~~_/
#                                 _-~-__   ~)  \--______________--~~
#                               //.-~~~-~_--~- |-------~~~~~~~~
#                                      //.-~~~--\
#                  神兽保佑
#                  永无BUG!
*/
package com.nanjing.water.repository.vo;
import lombok.Data;
import com.nanjing.water.common.util.LocalDateTimeUtil;
import com.nanjing.water.common.util.NumericUtil;
import java.util.Objects;
import com.nanjing.water.repository.po.WaterPumpOperatingRecordPO;
/**
 * 水泵设备操作记录
 * @author lin.liu
 */
@Data
public class WaterPumpOperatingRecordVO extends WaterPumpOperatingRecordPO implements BasicVO {
    @Override
    public String getCreateTimeView() {
        if (NumericUtil.tryParseLong(this.getCreateTime()).compareTo(0L) > 0) {
            return LocalDateTimeUtil.toFormatString(this.getCreateTime());
        }
        return "";
    }
    @Override
    public String getUpdateTimeView() {
        if (Objects.isNull(this.getUpdateTime())) {
            return "";
        }
        return LocalDateTimeUtil.toFormatFullString(this.getUpdateTime());
    }
}
src/main/java/com/nanjing/water/service/DataUploadRecordService.java
@@ -86,6 +86,8 @@
    private StringRedisTemplate redisTemplate;
    @Autowired
    private ObjectMapper objectMapper;
    @Autowired
    private WaterPumpOperatingRecordMapperImpl waterPumpOperatingRecordMapper;
    public ExecutedResult<Long> create(ReqCreateDataUploadRecord request) {
        // 转换po
@@ -331,11 +333,12 @@
            List<WaterFacilityPO> facilityPOList = waterFacilityMapper.getList();
            List<WaterFacilityParameterPO> parameterPOList = waterFacilityParameterMapper.getList();
            List<WaterPumpOperatingRecordPO> recordPOList = waterPumpOperatingRecordMapper.getList();
            //获取存入redis每天开始的启泵次数
            List<FacilityParameterDataVO> dataVOList=new ArrayList<>();
            List<WaterPumpOperatingRecordPO>dataVOList=new ArrayList<>();
            String objects = redisTemplate.opsForValue().get("pump_start_number");
            if(StringUtil.isNotNullOrEmpty(objects)){
                dataVOList= SerializeUtil.toListObject(objects, FacilityParameterDataVO.class);
                dataVOList= SerializeUtil.toListObject(objects, WaterPumpOperatingRecordPO.class);
            }
            // List<AlarmHistoryPO> historyPOList = alarmHistoryMapper.getList();
@@ -409,11 +412,17 @@
                            break;
                        case "B001StartNumber":
                            //1号泵启泵次数
                            startNumber(facilityPO,parameterPO1, vo.getValue(),dataVOList);
                            startNumber(facilityPO,parameterPO1, recordPOList,dataVOList);
                            break;
                        case "B002StartNumber":
                            //2号泵启泵次数
                            startNumber(facilityPO,parameterPO1, vo.getValue(),dataVOList);
                            startNumber(facilityPO,parameterPO1, recordPOList,dataVOList);
                            break;
                        case "B001Start":
                            waterPumpStartNumber(recordPOList,facilityPO,"B001StartNumber", vo.getValue());
                            break;
                        case "B002Start":
                            waterPumpStartNumber(recordPOList,facilityPO,"B002StartNumber", vo.getValue());
                            break;
                    }
                }
@@ -423,7 +432,25 @@
        }
    }
      public void waterPumpStartNumber(List<WaterPumpOperatingRecordPO> recordPOList,WaterFacilityPO facility,String key,String value){
           if("true".equals(value)){
               WaterPumpOperatingRecordPO recordPO = recordPOList.stream().filter(item -> item.getFacilityId().equals(facility.getId()) && item.getCode().equals(key)).findFirst().orElse(null);
               if(Objects.nonNull(recordPO)){
                   recordPO.setStartNumber(recordPO.getStartNumber()+1);
                   recordPO.setLastTime(LocalDateTimeUtil.nowDateTimeStr());
                   waterPumpOperatingRecordMapper.updateById(recordPO);
               }else {
                   recordPO=new WaterPumpOperatingRecordPO();
                   recordPO.setPointId(facility.getPointId());
                   recordPO.setFacilityId(facility.getId());
                   recordPO.setCode(key);
                   recordPO.setStartNumber(1);
                   recordPO.setCreateTime(LocalDateTimeUtil.nowTimeStamp());
                   recordPO.setLastTime(LocalDateTimeUtil.nowDateTimeStr());
                   waterPumpOperatingRecordMapper.insert(recordPO);
               }
           }
      }
     public void QFCreateAlarm(WaterFacilityPO facilityPO,WaterFacilityParameterPO parameterPO,String value, Gson gson,BigDecimal delayTime) throws MqttException {
        if(value.equals("false")){
                alarmHistoryMapper.deleteList(parameterPO.getFacilityId(),parameterPO.getColumnsCode());
@@ -483,12 +510,15 @@
        }
    }
    public void startNumber(WaterFacilityPO facilityPO,WaterFacilityParameterPO parameterPO,String value,List<FacilityParameterDataVO> dataVOList){
    public void startNumber(WaterFacilityPO facilityPO,WaterFacilityParameterPO parameterPO,List<WaterPumpOperatingRecordPO> value,List<WaterPumpOperatingRecordPO> dataVOList){
        if(ListUtil.isNotNullOrEmpty(dataVOList)){
            FacilityParameterDataVO facilityParameterDataVO = dataVOList.stream().filter(item -> item.getFacilityCode().equals(facilityPO.getFacilityCode()) && item.getColumnsCode().equals(parameterPO.getColumnsCode())).findFirst().orElse(null);
            if(Objects.nonNull(facilityParameterDataVO)){
                Integer columnsValue = Integer.valueOf(facilityParameterDataVO.getColumnValue());
                Integer value1 = Integer.valueOf(value);
            //获取缓存启泵次数
            WaterPumpOperatingRecordPO WaterPumpOperatingRecordPO = dataVOList.stream().filter(item -> item.getFacilityId().equals(facilityPO.getId()) && item.getCode().equals(parameterPO.getColumnsCode())).findFirst().orElse(null);
            //获取实时启泵次数
           WaterPumpOperatingRecordPO recordPO = value.stream().filter(item -> item.getFacilityId().equals(facilityPO.getId()) && item.getCode().equals(parameterPO.getColumnsCode())).findFirst().orElse(null);
            if(Objects.nonNull(WaterPumpOperatingRecordPO)&&Objects.nonNull(recordPO)){
                Integer columnsValue = Integer.valueOf(WaterPumpOperatingRecordPO.getStartNumber());
                Integer value1 = Integer.valueOf(recordPO.getStartNumber());
                Integer dataNumber=value1-columnsValue;
                alarmHistoryMapper.deleteList(parameterPO.getFacilityId(),parameterPO.getColumnsCode());
                if(dataNumber>5){
src/main/java/com/nanjing/water/service/WaterFacilityParameterService.java
@@ -33,8 +33,10 @@
import com.nanjing.water.repository.impl.WaterFacilityMapperImpl;
import com.nanjing.water.repository.impl.WaterFacilityParameterMapperImpl;
import com.nanjing.water.repository.impl.WaterMonitoryPointMapperImpl;
import com.nanjing.water.repository.impl.WaterPumpOperatingRecordMapperImpl;
import com.nanjing.water.repository.po.WaterFacilityPO;
import com.nanjing.water.repository.po.WaterFacilityParameterPO;
import com.nanjing.water.repository.po.WaterPumpOperatingRecordPO;
import com.nanjing.water.repository.vo.FacilityParameterDataVO;
import com.nanjing.water.repository.vo.WaterFacilityParameterVO;
import com.nanjing.water.repository.vo.WaterFacilityVO;
@@ -65,6 +67,8 @@
    private WaterMonitoryPointMapperImpl waterMonitoryPointMapper;
    @Autowired
    private StringRedisTemplate redisTemplate;
    @Autowired
    private WaterPumpOperatingRecordMapperImpl waterPumpOperatingRecordMapper;
    public ExecutedResult<String> create(ReqAddParameter request) {
        WaterFacilityPO facilityPO = waterFacilityMapper.get(request.getFacilityId());
@@ -134,8 +138,8 @@
     */
    public ExecutedResult<String> getNewDataPump(){
        //获取所有泵房启泵次数
        List<FacilityParameterDataVO> listNewPump = mapper.getListNewPump();
        redisTemplate.opsForValue().set("pump_start_number",SerializeUtil.toJson(listNewPump));
        List<WaterPumpOperatingRecordPO> list = waterPumpOperatingRecordMapper.getList();
        redisTemplate.opsForValue().set("pump_start_number",SerializeUtil.toJson(list));
        redisTemplate.expire("pump_start_number",24,TimeUnit.HOURS);
        return ExecutedResult.success();
    }
@@ -280,6 +284,7 @@
        List<WaterFacilityVO>result=new ArrayList<>();
        //获取泵房数据
        List<WaterFacilityPO> facilityPOList = waterFacilityMapper.getList();
        List<WaterPumpOperatingRecordPO> recordPOList = waterPumpOperatingRecordMapper.getList();
        //获取泵房设备参数
        List<WaterFacilityParameterPO> parameterPOList = mapper.getList();
        if(ListUtil.isNotNullOrEmpty(facilityPOList)){
@@ -317,6 +322,12 @@
                                parameterVO.setColumnValue(timeString);
                            }
                        }
                        if(parameterVO.getColumnsCode().equals("B001StartNumber")||parameterVO.getColumnsCode().equals("B002StartNumber")){
                            WaterPumpOperatingRecordPO recordPO = recordPOList.stream().filter(item -> item.getFacilityId().equals(facilityVO.getId()) && item.getCode().equals(parameterVO.getColumnsCode())).findFirst().orElse(null);
                            if(Objects.nonNull(recordPO)){
                                parameterVO.setColumnValue(recordPO.getStartNumber().toString());
                            }
                        }
                    }
                    facilityVO.setParameterVOList(parameterVOList);
                }
src/main/java/com/nanjing/water/service/WaterPumpOperatingRecordService.java
对比新文件
@@ -0,0 +1,244 @@
/**
#                                                    __----~~~~~~~~~~~------___
#                                   .  .   ~~//====......          __--~ ~~
#                   -.            \_|//     |||\\  ~~~~~~::::... /~
#                ___-==_       _-~o~  \/    |||  \\            _/~~-
#        __---~~~.==~||\=_    -_--~/_-~|-   |\\   \\        _/~
#    _-~~     .=~    |  \\-_    '-~7  /-   /  ||    \      /
#  .~       .~       |   \\ -_    /  /-   /   ||      \   /
# /  ____  /         |     \\ ~-_/  /|- _/   .||       \ /
# |~~    ~~|--~~~~--_ \     ~==-/   | \~--===~~        .\
#          '         ~-|      /|    |-~\~~       __--~~
#                      |-~~-_/ |    |   ~\_   _-~            /\
#                           /  \     \__   \/~                \__
#                       _--~ _/ | .-~~____--~-/                  ~~==.
#                      ((->/~   '.|||' -_|    ~~-/ ,              . _||
#                                 -_     ~\      ~~---l__i__i__i--~~_/
#                                 _-~-__   ~)  \--______________--~~
#                               //.-~~~-~_--~- |-------~~~~~~~~
#                                      //.-~~~--\
#                  神兽保佑
#                  永无BUG!
*/
package com.nanjing.water.service;
import com.nanjing.water.common.*;
import com.nanjing.water.common.enums.*;
import com.nanjing.water.common.model.Tuple;
import com.nanjing.water.common.util.*;
import org.apache.commons.lang3.BooleanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.*;
import java.util.stream.Collectors;
import com.nanjing.water.repository.impl.WaterPumpOperatingRecordMapperImpl;
import com.nanjing.water.repository.po.WaterPumpOperatingRecordPO;
import com.nanjing.water.entity.request.waterpumpoperatingrecord.ReqCreateWaterPumpOperatingRecord;
import com.nanjing.water.entity.request.waterpumpoperatingrecord.ReqModifyWaterPumpOperatingRecord;
import com.nanjing.water.entity.search.SearchWaterPumpOperatingRecord;
import com.nanjing.water.repository.vo.WaterPumpOperatingRecordVO;
import com.nanjing.water.service.convert.WaterPumpOperatingRecordConvert;
/**
 * 水泵设备操作记录
 * @author lin.liu
 */
@Service
public class WaterPumpOperatingRecordService extends BaseService {
    @Autowired
    private WaterPumpOperatingRecordMapperImpl mapper;
    public ExecutedResult<Long> create(ReqCreateWaterPumpOperatingRecord request) {
        // 转换po
        WaterPumpOperatingRecordPO item = WaterPumpOperatingRecordConvert.INSTANCE.toCreate(request);
        // 设置状态
        //item.setStatus(EState.NORMAL.getValue());
        // 设置记录创建时间
        item.setCreateTime(LocalDateTimeUtil.nowTimeStamp());
        // 是否删除(逻辑删除)初始值
        item.setIsDelete(EYesOrNo.NO.getValue());
        int rowCount = mapper.insert(item);
        if (rowCount != 1) {
            return ExecutedResult.failed("创建[水泵设备操作记录]失败。");
        }
        return ExecutedResult.success(item.getId());
    }
    public ExecutedResult<String> modify(ReqModifyWaterPumpOperatingRecord request) {
        // 验证记录是否存在
        ExecutedResult<WaterPumpOperatingRecordPO> checkExists = this.check4Id(request.getId());
        if (checkExists.isFailed()) {
            return ExecutedResult.failed(checkExists.getMsg());
        }
        // 转换po
        WaterPumpOperatingRecordPO item = WaterPumpOperatingRecordConvert.INSTANCE.toModify(request);
        int rowCount = mapper.updateById(item);
        if (rowCount != 1) {
            return ExecutedResult.failed("编辑[水泵设备操作记录]失败。");
        }
        return ExecutedResult.success();
    }
    public ExecutedResult<WaterPumpOperatingRecordVO> get(Long id) {
        WaterPumpOperatingRecordVO result = new WaterPumpOperatingRecordVO();
        WaterPumpOperatingRecordPO find = mapper.get(id);
        if (null != find) {
            // 转换vo
            result = WaterPumpOperatingRecordConvert.INSTANCE.toVo(find);
        }
        return ExecutedResult.success(result);
    }
//    public ExecutedResult<String> stop(Long id) {
//        // 验证记录是否存在
//        ExecutedResult<WaterPumpOperatingRecordPO> checkExists = this.check4Id(id);
//        if (checkExists.isFailed()) {
//            return ExecutedResult.failed(checkExists.getMsg());
//        }
//        WaterPumpOperatingRecordPO item = new WaterPumpOperatingRecordPO();
//        item.setId(id);
//        item.setStatus(EState.DISABLED.getValue());
//
//        int rowCount = mapper.updateById(item);
//        if (rowCount != 1) {
//           return ExecutedResult.failed("停用[水泵设备操作记录]失败。");
//       }
//       return ExecutedResult.success();
//   }
//
//    public ExecutedResult<String> enable(Long id) {
//        // 验证记录是否存在
//        ExecutedResult<WaterPumpOperatingRecordPO> checkExists = this.check4Id(id);
//        if (checkExists.isFailed()) {
//            return ExecutedResult.failed(checkExists.getMsg());
//        }
//        WaterPumpOperatingRecordPO item = new WaterPumpOperatingRecordPO();
//        item.setId(id);
//        item.setStatus(EState.NORMAL.getValue());
//
//        int rowCount = mapper.updateById(item);
//        if (rowCount != 1) {
//            return ExecutedResult.failed("启用[水泵设备操作记录]失败。");
//        }
//        return ExecutedResult.success();
//    }
//
//    public ExecutedResult<String> setSort(ReqSetSort request) {
//        // 验证记录是否存在
//        ExecutedResult<WaterPumpOperatingRecordPO> checkExists = this.check4Id(request.getId());
//        if (checkExists.isFailed()) {
//            return ExecutedResult.failed(checkExists.getMsg());
//        }
//        WaterPumpOperatingRecordPO item = new WaterPumpOperatingRecordPO();
//        item.setId(request.getId());
//        item.setSort(request.getSort());
//
//        int rowCount = mapper.updateById(item);
//        if (rowCount != 1) {
//            return ExecutedResult.failed("设置[水泵设备操作记录]排序值失败。");
//        }
//        return ExecutedResult.success();
//    }
//
//    public ExecutedResult<String> listSetSort(ReqListSetSort request) {
//        // id列表
//        List<Long> listId = request.getList().stream().map(ReqSetSort::getId).collect(Collectors.toList());
//        // 验证记录是否存在
//        ExecutedResult<List<WaterPumpOperatingRecordPO>> checkExists = this.check4Id(listId);
//        if (checkExists.isFailed()) {
//            return ExecutedResult.failed(checkExists.getMsg());
//        }
//
//        List<WaterPumpOperatingRecordPO> listUpdate = request.getList().stream()
//                .map(c -> {
//                    WaterPumpOperatingRecordPO item = new WaterPumpOperatingRecordPO();
//                    item.setId(c.getId());
//                    item.setSort(c.getSort());
//                    return item;
//                })
//                .collect(Collectors.toList());
//        Boolean result = mapper.modifyList(listUpdate);
//        if (result) {
//            return ExecutedResult.success();
//        }
//        return ExecutedResult.failed("[水泵设备操作记录]设置排序值失败");
//    }
//
//    public ExecutedResult<String> remove(Long id) {
//        Boolean result = mapper.deleteLogic(id);
//        if (BooleanUtils.isFalse(result)) {
//            return ExecutedResult.failed("删除[水泵设备操作记录]失败。");
//        }
//        return ExecutedResult.success();
//    }
//
//    public ExecutedResult<String> removeList(List<Long> ids) {
//        Boolean result = mapper.deleteLogic(ids);
//        if (BooleanUtils.isFalse(result)) {
//            return ExecutedResult.failed("删除[水泵设备操作记录]失败。");
//        }
//        return ExecutedResult.success();
//    }
    public ExecutedResult<List<WaterPumpOperatingRecordVO>> getList(List<Long> listId) {
        List<WaterPumpOperatingRecordVO> result = new ArrayList<>();
        List<WaterPumpOperatingRecordPO> list = mapper.getList(listId);
        if (ListUtil.isNotNullOrEmpty(list)) {
            // 转换vo
            result = WaterPumpOperatingRecordConvert.INSTANCE.toVo(list);
        }
        return ExecutedResult.success(result);
    }
    public ExecutedResult<PagerResult<WaterPumpOperatingRecordVO>> search(SearchWaterPumpOperatingRecord search) {
        // 处理创建时间范围-查询参数
        Tuple<String, String> createTimeRange = ParameterUtil.getTimeRange(search.getCreateTimeRange());
        if (StringUtil.isNotNullOrEmpty(createTimeRange.getItem1())) {
            search.setCreateTimeStart(LocalDateTimeUtil.getTimeStamp(createTimeRange.getItem1()).getTime());
        }
        if (StringUtil.isNotNullOrEmpty(createTimeRange.getItem2())) {
            search.setCreateTimeEnd(LocalDateTimeUtil.getTimeStamp(createTimeRange.getItem2()).getTime());
        }
        PagerResult<WaterPumpOperatingRecordPO> pageList = mapper.search(search);
        List<WaterPumpOperatingRecordVO> listVo = new ArrayList<>();
        List<WaterPumpOperatingRecordPO> list = pageList.getList();
        if (ListUtil.isNotNullOrEmpty(list)) {
            pageList.setLastId(list.get(list.size() - 1).getId());
            // 转换vo
            listVo = WaterPumpOperatingRecordConvert.INSTANCE.toVo(list);
        }
        PagerResult<WaterPumpOperatingRecordVO> result = new PagerResult<>(pageList.getLimit(), pageList.getPage(), pageList.getTotal(), listVo);
        result.setLastId(pageList.getLastId());
        return ExecutedResult.success(result);
    }
    protected ExecutedResult<WaterPumpOperatingRecordPO> check4Id(Long id) {
        WaterPumpOperatingRecordPO exists = mapper.get(id);
        if (Objects.isNull(exists)) {
            return ExecutedResult.failed("[水泵设备操作记录]不存在:" + id);
        }
        return ExecutedResult.success(exists);
    }
    protected ExecutedResult<List<WaterPumpOperatingRecordPO>> check4Id(List<Long> listId) {
        // 从数据库查找水泵设备操作记录
        List<WaterPumpOperatingRecordPO> list = mapper.getList(listId);
        if (ListUtil.isNullOrEmpty(list)) {
            return ExecutedResult.failed("[水泵设备操作记录]不存在." + listId);
        }
        // 数据库找到的id列表
        List<Long> listIdFind = list.stream().map(WaterPumpOperatingRecordPO::getId).collect(Collectors.toList());
        // 数量不一致
        if (listId.size() != listIdFind.size()) {
            // 筛选数据库不存在的水泵设备操作记录
            List<Long> listIdNotFound = listId.stream().filter(c -> !listIdFind.contains(c)).collect(Collectors.toList());
            if (ListUtil.isNullOrEmpty(list)) {
                return ExecutedResult.failed("[水泵设备操作记录]不存在." + listIdNotFound);
            }
        }
        return ExecutedResult.success(list);
    }}
src/main/java/com/nanjing/water/service/convert/WaterPumpOperatingRecordConvert.java
对比新文件
@@ -0,0 +1,48 @@
/**
#                                                    __----~~~~~~~~~~~------___
#                                   .  .   ~~//====......          __--~ ~~
#                   -.            \_|//     |||\\  ~~~~~~::::... /~
#                ___-==_       _-~o~  \/    |||  \\            _/~~-
#        __---~~~.==~||\=_    -_--~/_-~|-   |\\   \\        _/~
#    _-~~     .=~    |  \\-_    '-~7  /-   /  ||    \      /
#  .~       .~       |   \\ -_    /  /-   /   ||      \   /
# /  ____  /         |     \\ ~-_/  /|- _/   .||       \ /
# |~~    ~~|--~~~~--_ \     ~==-/   | \~--===~~        .\
#          '         ~-|      /|    |-~\~~       __--~~
#                      |-~~-_/ |    |   ~\_   _-~            /\
#                           /  \     \__   \/~                \__
#                       _--~ _/ | .-~~____--~-/                  ~~==.
#                      ((->/~   '.|||' -_|    ~~-/ ,              . _||
#                                 -_     ~\      ~~---l__i__i__i--~~_/
#                                 _-~-__   ~)  \--______________--~~
#                               //.-~~~-~_--~- |-------~~~~~~~~
#                                      //.-~~~--\
#                  神兽保佑
#                  永无BUG!
*/
package com.nanjing.water.service.convert;
import com.nanjing.water.entity.request.waterpumpoperatingrecord.ReqCreateWaterPumpOperatingRecord;
import com.nanjing.water.entity.request.waterpumpoperatingrecord.ReqModifyWaterPumpOperatingRecord;
import com.nanjing.water.repository.po.WaterPumpOperatingRecordPO;
import com.nanjing.water.repository.vo.WaterPumpOperatingRecordVO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
import java.util.List;
/**
 * 水泵设备操作记录
 * @author {#=author}
 */
@Mapper
public interface WaterPumpOperatingRecordConvert {
    WaterPumpOperatingRecordConvert INSTANCE = Mappers.getMapper(WaterPumpOperatingRecordConvert.class);
    WaterPumpOperatingRecordPO toCreate(ReqCreateWaterPumpOperatingRecord request);
    WaterPumpOperatingRecordPO toModify(ReqModifyWaterPumpOperatingRecord request);
    WaterPumpOperatingRecordVO toVo(WaterPumpOperatingRecordPO item);
    List<WaterPumpOperatingRecordVO> toVo(List<WaterPumpOperatingRecordPO> list);
}
src/test/java/com/nanjing/water/GenCodeGauss.java
@@ -244,7 +244,7 @@
     * 只生成以下配置的表
     */
    private static final List<String> ONLY_TABLES = Arrays.asList(
     "monitor_video_streaming"
     "water_pump_operating_record"
    );
    public static void main(String[] args) {