whyclxw
2025-03-25 a7fef2846505b08e0711345b17902e7381612d23
src/main/java/com/whyc/service/LockRtService.java
@@ -7,6 +7,7 @@
import com.whyc.dto.Response;
import com.whyc.mapper.LockRtMapper;
import com.whyc.pojo.db_lock_ram.LockRt;
import com.whyc.pojo.db_user.UserInf;
import com.whyc.util.ActionUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -39,19 +40,22 @@
            case LockCmd.CMD_RemoveIdCard:
                m_cmd_ack = LockCmd.CMD_RemoveIdCard_Ack;
                break;
            case LockCmd.CMD_SetModel:
                m_cmd_ack = LockCmd.CMD_SetModel_Ack;
                break;
            default:
                return false;
        }
        UpdateWrapper updateWrapper=new UpdateWrapper();
        updateWrapper.set("op_cmd",m_cmd);
        updateWrapper.eq("power_id",lockId);
        updateWrapper.eq("lock_id",lockId);
        int flag=mapper.update((LockRt) ActionUtil.objeNull,updateWrapper);
        boolean res_exe = false;
        if(flag>0)
        {
            PageHelper.startPage(1,1);
            QueryWrapper queryWrapper=new QueryWrapper();
            queryWrapper.eq("lokc_id",lockId);
            queryWrapper.eq("lock_id",lockId);
            for(int n=0; n<40; n++)
            {
@@ -83,24 +87,39 @@
    //查询锁的实时数据
    public Response getLockRt(Integer lockId) {
        QueryWrapper wrapper=new QueryWrapper();
        wrapper.eq("lokc_id",lockId);
        wrapper.eq("lock_id",lockId);
        wrapper.last("limti 1");
        LockRt rt=mapper.selectOne(wrapper);
        return new Response().setII(1,rt!=null,rt,"查询锁的实时数据");
    }
    //清空所有授权ID卡
    public Response cancleIdCard(Integer lockId) {
        UpdateWrapper wrapper=new UpdateWrapper();
        UserInf userInf=ActionUtil.getUser();
        wrapper.set("ctl_uname",userInf.getUname());
        wrapper.eq("lock_id",lockId);
        mapper.update(null,wrapper);
        boolean bl=sendCmdToLock(LockCmd.CMD_ClearIdCard,lockId);
        return new Response().set(1,bl, bl == true ? "清空所有授权ID卡成功!" : "清空所有授权ID卡失败,请检查网络!");
    }
    //远程开锁
    public Response lockOpen(Integer lockId) {
        UpdateWrapper wrapper=new UpdateWrapper();
        UserInf userInf=ActionUtil.getUser();
        wrapper.set("ctl_uname",userInf.getUname());
        wrapper.eq("lock_id",lockId);
        mapper.update(null,wrapper);
        boolean bl=sendCmdToLock(LockCmd.CMD_REMOTE_OPEN_Lock,lockId);
        return new Response().set(1,bl, bl == true ? "远程开锁成功!" : "远程开锁失败,请检查网络!");
    }
    //远程重启
    public Response lockReStart(Integer lockId) {
        UpdateWrapper wrapper=new UpdateWrapper();
        UserInf userInf=ActionUtil.getUser();
        wrapper.set("ctl_uname",userInf.getUname());
        wrapper.eq("lock_id",lockId);
        mapper.update(null,wrapper);
        boolean bl=sendCmdToLock(LockCmd.CMD_REMOTE_ReStart,lockId);
        return new Response().set(1,bl, bl == true ? "远程重启成功!" : "远程重启失败,请检查网络!");
    }
@@ -110,7 +129,9 @@
        String msg = "";
        UpdateWrapper updateWrapper=new UpdateWrapper();
        updateWrapper.set("lock_addr_set",lockAddrSet);
        updateWrapper.eq("lokc_id",lockId);
        UserInf userInf=ActionUtil.getUser();
        updateWrapper.set("ctl_uname",userInf.getUname());
        updateWrapper.eq("lock_id",lockId);
        int flag=mapper.update((LockRt) ActionUtil.objeNull,updateWrapper);
        if (flag>0) {
            bl=sendCmdToLock(LockCmd.CMD_SetLockAddr,lockId);
@@ -133,7 +154,9 @@
        String msg = "";
        UpdateWrapper updateWrapper=new UpdateWrapper();
        updateWrapper.set("id_card_set",idCardSet);
        updateWrapper.eq("lokc_id",lockId);
        UserInf userInf=ActionUtil.getUser();
        updateWrapper.set("ctl_uname",userInf.getUname());
        updateWrapper.eq("lock_id",lockId);
        int flag=mapper.update((LockRt) ActionUtil.objeNull,updateWrapper);
        if (flag>0) {
            bl=sendCmdToLock(LockCmd.CMD_AddIdCard,lockId);
@@ -157,7 +180,9 @@
        String msg = "";
        UpdateWrapper updateWrapper=new UpdateWrapper();
        updateWrapper.set("id_card_set",idCardSet);
        updateWrapper.eq("lokc_id",lockId);
        UserInf userInf=ActionUtil.getUser();
        updateWrapper.set("ctl_uname",userInf.getUname());
        updateWrapper.eq("lock_id",lockId);
        int flag=mapper.update((LockRt) ActionUtil.objeNull,updateWrapper);
        if (flag>0) {
            bl=sendCmdToLock(LockCmd.CMD_RemoveIdCard,lockId);
@@ -174,4 +199,30 @@
        }
        return new Response().set(1,flag>0?true:false,msg);
    }
    //设置工作模式(0:离线模式,1:在线模式)
    public Response controllLockModel(Integer lockId, Integer model) {
        boolean bl = false;
        String msg = "";
        UpdateWrapper updateWrapper=new UpdateWrapper();
        updateWrapper.set("model",model);
        UserInf userInf=ActionUtil.getUser();
        updateWrapper.set("ctl_uname",userInf.getUname());
        updateWrapper.eq("lock_id",lockId);
        int flag=mapper.update((LockRt) ActionUtil.objeNull,updateWrapper);
        if (flag>0) {
            bl=sendCmdToLock(LockCmd.CMD_SetModel,lockId);
            if (bl) {
                flag = 1;
                msg = "设置工作模式成功!";
            } else {
                flag = 0;
                msg = "设置工作模式失败,请检查网络!";
            }
        } else {
            flag = 0;
            msg = "设置工作模式失败!";
        }
        return new Response().set(1,flag>0?true:false,msg);
    }
}