设置

作者: 紫竹吟风 | 来源:发表于2019-01-28 13:25 被阅读0次

    ps:因为设置模块会涉及到N多蓝牙指令,在每次发送指令时,都要检测相关设备是否连接,若没有连接 提示 : 办公椅未连接蓝牙 或者 办公桌未连接蓝牙,
    需要保持数据同步一致的地方很多,具体如何达到效果自行解决,以下的相关同步方法仅供参考

    • 设置主界面


      01设置.png

      1.进入设置界面 要同步个人信息数据 以及当前所连接硬件的设备数据

    因为获取接口数据 和通过蓝牙协议获取设备数据 所得到的数据的先后不确定,所以原则上是 通过蓝牙获取到的数据可以覆盖更新接口返回的数据 ,而接口返回的数据不能覆盖蓝牙反馈的数据

    1. 接口
      通过接口 listUserInfo 获取个人信息 参阅接口文档
      请求示例:
    http://office.teammax.com.cn/client/office/app.do?method=listUserInfo&requestId=6997&platType=i&msgToken=dfanxL0+k95nP3tJabmt0GwA3ZJfIX2c
    

    结果:

    {
        error = "";
        id = 6997;
        result =     {
            age = 29;
            birthday = "1989-10-16";
            dailySeat = 360;
            department = "\U4f01\U4e1aA";
            gender = "\U7537";
            id = 1705;
            isAdmin = 0;
            isAutoLifting = "\U5f00";
            isOpenHeight = "\U5f00";
            isOpenPanel = "\U5f00";
            isWeixin = 1;
            lastSittingHeight = 777;
            lastStandingHeight = 899;
            maxHeight = 1250;
            minHeight = 600;
            minStandingTime = 0;
            msgToken = "dfanxL0+k94cOo1E4t4cQKi5JCidysTm";
            nickName = ceshi;
            sittingRemindTime = 30;
            userImg = "http://thirdwx.qlogo.cn/mmopen/vi_32/7c8smKMeOplhNLqJAu7ibibOYjGpZBD9jUf6z7rlERuU7lBXXibHe2yTAicCmv5qwpvBVlro3Qxg9lzmib62XdSnPoQ/132";
            username = oQnuS1Hj6rIlYFNO5iyxDo72HomA;
            vibrationIntensity = 9;
        };
    }
    

    3.数据处理与显示
    每日久坐限制 取字段 dailySeat ,数据单位是秒 要对60取整 转为分钟显示
    4.每次进入设置主界面 都可以请求一下接口数据 和蓝牙数据 以此保证个人信息数据的即时性
    5.蓝牙指令
    久坐提醒 通过椅子协议读写久坐时间 指令来读取
    座椅震动强度 通过椅子协议21-设置电机震动等级-读取震动 指令来读取
    最短站立时间 通过椅子协议最短站立时间 指令来读取
    办公桌椅限值 通过桌子协议20 查询上下限标志位 指令来读取
    桌自带手控面板 通过桌子协议1F读取手控器状态 指令来读取
    自动升降模式 通过椅子协议提醒模式设置 指令来读取
    详情参阅蓝牙协议

    1. 退出登录
      清空本地保存数据,跳转到登录页面
      7.右上角 按钮
      点击进入web页展示,标题 谛明
      url :http://www.teammax.com.cn
      8.关于我们
      点击进入web页展示,标题 关于我们
      url :http://www.teammax.com.cn/en/pages/3
    个人信息
    02个人信息.png
    • 接口
      获取个人信息
      通过接口 listUserInfo 获取个人信息(设置页已经请求国,可直接将结果传入,不需重复请求)
      获取部门列表
      接口方法名 listDepartment
      请求示例:
    http://office.teammax.com.cn/client/office/app.do?method=listDepartment&requestId=6693&platType=i&msgToken=dfanxL0+k97vWhhXSquubqoJduIa7rzg
    

    结果:

    {
        error = "";
        id = 6693;
        result =     {
            departments =         (
                            {
                    departments = "<null>";
                    description = test;
                    id = 217;
                    name = tets;
                    pId = 191;
                    target = "<null>";
                    url = "<null>";
                },
                            {
                    departments = "<null>";
                    description = test;
                    id = 192;
                    name = "\U9500\U552e\U90e8";
                    pId = 188;
                    target = "<null>";
                    url = "<null>";
                },
                            {
                    departments = "<null>";
                    description = test;
                    id = 200;
                    name = "\U8d22\U52a1D";
                    pId = 188;
                    target = "<null>";
                    url = "<null>";
                },
                            {
                    departments = "<null>";
                    description = "<null>";
                    id = 201;
                    name = "\U9500\U552eb";
                    pId = 188;
                    target = "<null>";
                    url = "<null>";
                },
                            {
                    departments = "<null>";
                    description = "<null>";
                    id = 202;
                    name = "\U9500\U552eBBB";
                    pId = 188;
                    target = "<null>";
                    url = "<null>";
                },
                            {
                    departments = "<null>";
                    description = "<null>";
                    id = 203;
                    name = "\U8d22\U52a1CC22";
                    pId = 188;
                    target = "<null>";
                    url = "<null>";
                }
            );
            msgToken = "dfanxL0+k97vWhhXSquubqoJduIa7rzg";
        };
    }
    

    保存个人信息
    接口方法名 editUserInfo
    修改头像 上传图片等 均参阅接口文档

    2.个人信息展示有修改 : 微信用户不需要显示邮箱
    根据获取个人信息接口 isWeixin 字段布尔值,接口会给出此用户是不是微信登录用户
    3.部门显示逻辑
    根据获取个人信息接口获取部门department字段值 ,如果为空 则证明没有部门,那么部门这一栏要隐藏

    设备列表
    03设备列表.png
    • 获取设备列表接口
      接口方法名 : listDevice
      请求示例:
    http://office.teammax.com.cn/client/office/app.do?method=listDevice&requestId=6387&platType=i&msgToken=dfanxL0+k952abcrxr5sc3D8dFUL7TZy
    

    结果:

    {
        error = "";
        id = 6387;
        result =     {
            chairDevices =         (
                            {
                    department =                 {
                        departments = "<null>";
                        description = "<null>";
                        id = 188;
                        name = "<null>";
                        pId = 0;
                        target = "<null>";
                        url = "<null>";
                    };
                    deviceMac = "64:CF:D9:17:27:6A";
                    deviceModelId = 1666;
                    id = 1790;
                    name = "T51\U6905\U5b50";
                    titleImg = "http://office.teammax.com.cn/house/u/cms/www/201711/161009164g79.jpg";
                    type = "\U6905";
                }
            );
            deskDevices =         (
                            {
                    department =                 {
    
                        departments = "<null>";
                        description = "<null>";
                        id = 189;
                        name = "<null>";
                        pId = 0;
                        target = "<null>";
                        url = "<null>";
                    };
                    deviceMac = "C4:F3:12:3A:0B:AC";
                    deviceModelId = 1664;
                    id = 1769;
                    name = "T51\U684c\U5b50";
                    titleImg = "http://office.teammax.com.cn/house/u/cms/www/201711/16100846ed0t.jpg";
                    type = "\U684c";
                }
            );
            deviceAndDevices =         (
                            {
                    chair =                 {
                        department =                     {
                            departments = "<null>";
                            description = "<null>";
                            id = 188;
                            name = "<null>";
                            pId = 0;
                            target = "<null>";
                            url = "<null>";
                        };
                        deviceMac = "64:CF:D9:17:27:6A";
                        deviceModelId = 1666;
                        id = 1790;
                        name = "T51\U6905\U5b50";
                        titleImg = "http://office.teammax.com.cn/house/u/cms/www/201711/161009164g79.jpg";
                        type = "\U6905";
                    };
                    desk =                 {
                        department =                     {
                            departments = "<null>";
                            description = "<null>";
                            id = 189;
                            name = "<null>";
                            pId = 0;
                            target = "<null>";
                            url = "<null>";
                        };
                        deviceMac = "C4:F3:12:3A:0B:AC";
                        deviceModelId = 1664;
                        id = 1769;
                        name = "T51\U684c\U5b50";
                        titleImg = "http://office.teammax.com.cn/house/u/cms/www/201711/16100846ed0t.jpg";
                        type = "\U684c";
                    };
                }
            );
            msgToken = "dfanxL0+k952abcrxr5sc3D8dFUL7TZy";
        };
    }
    
    • 取消配对
      消配对的逻辑,删除桌子 或者 删除配对 都要根据蓝牙指令删除配对 删除配对是桌子 74 指令
      取消配对方法名 : removeDevice ,详情参阅接口文档

    • 添加
      点击 添加 跳转 扫码界面 ,进入扫码流程
      进入扫码界面,如果同时成功连接了桌椅,点击完成进入配对界面 ,进入下面设备配对流程,否则 返回设备列表

    • 设备配对
      点击设备配对 判断是否同时连接了桌子和椅子 ,没连接提示:请扫码连接桌子和椅子
      如果都连接,就进入配对界面,配对完成 返回设置页面

    久坐提醒

    默认显示设置页面的数据 例如设置页面久坐提醒显示 30m ,那么进入久坐提醒界面的默认选中也是30m
    添加1分钟测试模式 ,原蓝牙协议中有此指令


    久坐提醒
    • 保存
      设置久坐提醒 : 椅子蓝牙协议 读写久坐时间 中的写入指令
      保存设置成功返回设置页,并调用接口 editUserInfo 同步更新久坐提醒数据
    震动强度

    默认选中数据 同步设置页面的座椅震动强度数据


    05震动强度.png
    • 保存设置指令
      椅子蓝牙协议 椅子命令21-设置电机震动等级-读取震动中的设置指令,保保存设置成功返回设置页,并调用接口 editUserInfo 同步更新震动强度数据
    最短站立时间

    默认选中数据 同步设置页面的最短站立时间数据


    06最短站立时间.png
    • 保存设置指令
      椅子蓝牙协议 最短站立时间中的设置指令
      保存设置成功返回设置页,并调用接口 editUserInfo 同步更新最短站立时间数据
    每日久坐限制

    默认选中数据 同步设置页面的每日久坐限制数据

    此界面 标题改为 每日久坐限制

    07每日久坐目标.png
    • 保存
      不需要蓝牙协议
      调用接口 editUserInfo 同步更新每日久坐限制数据,并返回设置页
    记忆坐姿高度 & 记忆站立高度

    这两个条目没有二级页面,点击不响应,但要注意数据的一致性,在控制会有相关设置,设置后注意调用 editUserInfo 同步到后台数据

    办公桌椅限值

    设置页的开关开启时 点击才能进入子页面


    08办工桌升降限值_最高.png

    默认显示的最高最低限值 同步个人信息数据中的限值, 在设置过程中切换最高最低限值,都会保留上次显示 (最高限值在左边,最低限值在右边 此处和UI设计不一致,请注意)
    例如 个人信息中最高1000 最低800 ,那么进去此界面 默认显示的最高限值为1000 最低为800,然后滚动最高限值到900,切换到最低限制,在切换回最高,此时最高显示的为900。
    图片上传中...(08办工桌升降限值_最高.png-81e6b3-1548920707853-0)]

    • 保存
      执行桌子蓝牙指令 21 设置上限位置22设置下限位置
      保存成功,调用接口 editUserInfo 同步更新相应数据,并返回设置页

    上一页:控制 & 健康数据

    相关文章

      网友评论

          本文标题:设置

          本文链接:https://www.haomeiwen.com/subject/gvfajqtx.html