whyclxw
2025-03-24 6fb2c7199bf50c524cdf0b8d3ec8b2644eb116d8
查询锁的蓝牙开启时间段记录
4个文件已修改
1个文件已添加
84 ■■■■ 已修改文件
src/main/java/com/whyc/controller/LockBlController.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/mapper/LockBlMapper.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/pojo/db_area/LockBl.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/LockBlService.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/LockBlMapper.xml 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/controller/LockBlController.java
@@ -23,4 +23,11 @@
    public Response setLockBl(@RequestBody List<LockBl> list){
        return service.setLockBl(list);
    }
    @ApiOperation(value = "查询锁的蓝牙开启时间段记录")
    @GetMapping("getLockBl")
    public Response getLockBl(@RequestParam  Integer areaId, @RequestParam(required = false)  String lockName, @RequestParam(required = false)  Integer type, @RequestParam(required = false)  Integer pageNum, @RequestParam(required = false)  Integer pageSize ){
        return service.getLockBl(areaId,lockName,type,pageNum,pageSize);
    }
}
src/main/java/com/whyc/mapper/LockBlMapper.java
@@ -2,5 +2,11 @@
import com.whyc.pojo.db_area.LockBl;
import java.util.List;
public interface LockBlMapper extends CustomMapper<LockBl>{
    //查询锁的蓝牙开启时间段记录
    List<LockBl> getLockBl(String lockName, Integer type, List<Integer> areaList);
}
src/main/java/com/whyc/pojo/db_area/LockBl.java
@@ -1,6 +1,7 @@
package com.whyc.pojo.db_area;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
@@ -46,4 +47,12 @@
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    @ApiModelProperty(value = "锁名称")
    @TableField(exist = false)
    private String lockName;
    @ApiModelProperty(value = "区域名称")
    @TableField(exist = false)
    private String areaName;
}
src/main/java/com/whyc/service/LockBlService.java
@@ -2,13 +2,17 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.whyc.dto.Response;
import com.whyc.mapper.LockBlMapper;
import com.whyc.pojo.db_area.LockBl;
import com.whyc.pojo.db_area.LockInf;
import com.whyc.util.ActionUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -17,26 +21,26 @@
    @Autowired(required = false)
    private LockBlMapper mapper;
    @Autowired(required = false)
    private AreaInfService areaInfService;
    //设定锁的蓝牙开启时间段
    public Response setLockBl( List<LockBl> list) {
        for (LockBl lockBl : list) {
            lockBl.setCreateTime(new Date());
            //判断是否存在:存在修改,不存在添加
            QueryWrapper wrapper = new QueryWrapper();
            wrapper.eq("lock_id", lockBl.getLockId());
            wrapper.last("limit 1");
            LockBl bl = mapper.selectOne(wrapper);
            if (bl == null) {
                mapper.insert(lockBl);
            } else {
                UpdateWrapper wrapper1=new UpdateWrapper();
                wrapper1.set("start_time",lockBl.getStartTime());
                wrapper1.set("stop_time",lockBl.getStopTime());
                wrapper1.set("create_time",new Date());
                wrapper1.eq("lock_id",lockBl.getLockId());
                mapper.update((LockBl) ActionUtil.objeNull,wrapper1);
            }
            lockBl.setType(1);//默认开启
            mapper.insert(lockBl);
        }
        return new Response().set(1,true,"设定锁的蓝牙开启时间段");
    }
   //查询锁的蓝牙开启时间段记录
    public Response getLockBl(Integer areaId, String lockName, Integer type, Integer pageNum, Integer pageSize) {
        List<Integer> areaList=new ArrayList();
        areaList.add(areaId);
        areaInfService.getAllAreaId(areaId,areaList);
        PageHelper.startPage(pageNum,pageSize);
        List<LockBl> list=mapper.getLockBl(lockName,type,areaList);
        PageInfo pageInfo=new PageInfo(list);
        return new Response().setII(1,list!=null,pageInfo,"查询锁的蓝牙开启时间段记录");
    }
}
src/main/resources/mapper/LockBlMapper.xml
New file
@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.whyc.mapper.LockBlMapper">
    <select id="getLockBl" resultType="com.whyc.pojo.db_area.LockBl">
        select tb_lock_bl.*,
               tb_lock_inf.lock_name,
               tb_area_inf.area_name
        from db_area.tb_lock_inf,db_area.tb_lock_bl,db_area.tb_area_inf
        <where>
            tb_lock_inf.area_id=tb_area_inf.id
            and tb_lock_inf.lock_id=tb_lock_bl.lock_id
            <if test="lockName!=null">
                and tb_lock_inf.lock_name  LIKE CONCAT('%',#{lockName},'%')
            </if>
            <if test="type!=null">
                and tb_lock_bl.type=#{type}
            </if>
            <if test="areaList!=null">
                and area_id in
                <foreach collection="areaList" item="id" open="(" separator="," close=")">
                    #{id}
                </foreach>
            </if>
        </where>
        order by tb_lock_bl.start_time desc
    </select>
</mapper>