operationLog.html 12.9 KB
<!doctype html>
<html>

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0" />
    <meta name="format-detection" content="telephone=no,email=no,date=no,address=no">
    <title>操作日志</title>
    <link rel="stylesheet" type="text/css" href="../css/api.css" />
    <link rel="stylesheet" type="text/css" href="../css/aui.css" />
    <link rel="stylesheet" type="text/css" href="../css/style.css" />
</head>

<body class="operation-log-view warning-view">
    <div class="aui-content aui-margin-b-15">
        <header class="aui-bar aui-bar-nav" id="header">
            <a class="aui-btn aui-pull-left" tapmode onclick="closeWin()">
                <span class="aui-iconfont aui-icon-left"></span>
            </a>
            <div class="aui-title">操作日志</div>
        </header>
        <p class="thing-small-title aui-margin-b-10" id="equiment-no"></p>
        <!-- <div class="search-view-inline">
            <div class="select-list aui-ellipsis-1" tapmode onclick="selectNumber( this )">
                <span>请选择操作指令</span>
                <i></i>
            </div>
            <label></label>
            <div class="select-list aui-ellipsis-1" tapmode onclick="selectStatus( this )">
                <span>请选择</span>
                <i></i>
            </div>
        </div> -->
        <ul id="log-list">
          <!-- <li>
            <p><label>1</label><span>1234567890abc</span><abbr>2019.03.06 12:00</abbr></p>
            <p class="aui-hr"></p>
            <p><b>操作命令:</b><b>设置超温报警动作值</b></p><p class="lod-sets"><b>参数:55</b></p>
            <p class="aui-hr"></p>
            <p><small class="aui-pull-right">结果:<samp class="tytx-color-b">失败</samp></small></p>
            <div class="aui-clearfix"></div>
          </li>
          <li>
            <p><label>1</label><span>32131231333fsa</span><abbr>2019.03.06 12:00</abbr></p>
            <p class="aui-hr"></p>
            <p><b>操作命令:</b><b>过载时间动作值</b></p>
            <p class="aui-hr"></p>
            <p><small class="aui-pull-right">结果:<samp>失败</samp></small></p>
            <div class="aui-clearfix"></div>
          </li> -->
        </ul>
        <div id="loading-data-view"></div>
    </div>
</body>

</html>
<script type="text/javascript" src="../script/api.js"></script>
<script type="text/javascript" src="../script/common.js"></script>
<script type="text/javascript" src="../script/jquery-3.3.1.min.js"></script>
<script type="text/javascript">
    var header = $api.byId('header');
    fixStatusBar_API(header);
    // var selectorStyle = {
    //     mask: 'rgba(0,0,0,0.3)',
    //     title: {
    //         bg: '#f5f5f5',
    //         color: 'rgb(0,0,0)',
    //         size: 14,
    //         h: 44
    //     },
    //     leftButton: {
    //         w: 80,
    //         h: 35,
    //         marginT: 5,
    //         marginL: 8,
    //         color: 'rgb(0,0,0)',
    //         bg: 'rgb(200,200,200)',
    //         size: 14,
    //     },
    //     rightButton: {
    //         w: 80,
    //         h: 35,
    //         marginT: 5,
    //         marginR: 8,
    //         color: 'rgb(255,255,255)',
    //         bg: '#5D93E4',
    //         size: 14,
    //     },
    //     item: {
    //         h: 40,
    //         bg: '#fff',
    //         bgActive: '#57A0EC',
    //         bgHighlight: '#57A0EC',
    //         color: '#666',
    //         active: '#FFF',
    //         highlight: '#FFF',
    //         size: 14,
    //         lineColor: '#ccc',
    //         textAlign: 'center',
    //     },
    // };
    var page = 1,
        limit = 10,
        //status = '',
        imei = $api.getStorage('defaultDevice'),
        //command = '',
        nextDataFlag = true,
        loadDataFlag = true;
    var token = $api.getStorage('userToken');
    var user_id = $api.getStorage('userID');
    $api.html($api.byId("equiment-no"),"<s></s>设备编号:"+imei);
    apiready = function() {
        api.setStatusBarStyle({
            style: 'dark',
            color: 'rgba(0,0,0,0)'
        });
        api.parseTapmode();
        fnInitData();
        /**上拉加载 */
        api.addEventListener({
            name: 'scrolltobottom',
            extra: {
                threshold: 0
            }
        }, function(ret, err) {
            if(!loadDataFlag)return false;
            if (nextDataFlag) {
                //页码+1,继续请求数据
                page += 1;
                fnInitData();
            } else {
                api.toast({
                    msg: "暂无更多数据",
                    duration: 2000,
                    location: 'bottom'
                });
            }
        });
    }
    // function selectNumber(obj) {
    //     var devices = [{
    //
    //     }];
    //     if (devices && devices.length > 0) {
    //         var selectNum = api.require('UIMultiSelector');
    //         var deviceIDs = [];
    //         for (var i in devices) {
    //             deviceIDs[i] = {
    //                 text: devices[i].imei,
    //                 status: imei == devices[i].imei ? 'selected' : 'normal'
    //             }
    //         }
    //         selectNum.open({
    //             rect: {
    //                 h: 244
    //             },
    //             text: {
    //                 title: '设备编号',
    //                 leftBtn: '取消',
    //                 rightBtn: '确定',
    //                 selectAll: '全选'
    //             },
    //             max: 1,
    //             singleSelection: true,
    //             maskClose: false,
    //             styles: selectorStyle,
    //             animation: true,
    //             maskClose: true,
    //             items: deviceIDs
    //         }, function(ret, err) {
    //             if (ret.eventType == 'clickLeft') {
    //                 command = "";
    //                 $api.html($api.dom(obj, 'span'), "请选择设备编号");
    //                 page = 1;
    //                 nextDataFlag = true;
    //                 $api.html($api.byId("log-list"), '');
    //                 fnInitData();
    //                 selectNum.close();
    //             }
    //             if (ret.eventType == 'clickRight') {
    //                 //console.log(JSON.stringify(ret))
    //                 if (ret.items.length > 0) {
    //                     command = ret.items[0].text;
    //                     $api.html($api.dom(obj, 'span'), command);
    //                     page = 1;
    //                     nextDataFlag = true;
    //                     $api.html($api.byId("log-list"), '');
    //                     fnInitData();
    //                     selectNum.close();
    //                 } else {
    //                     api.toast({
    //                         msg: '请选择设备',
    //                         duration: 2000,
    //                         location: 'bottom'
    //                     });
    //                 }
    //             }
    //         });
    //     }
    // }
    //
    // function selectStatus(obj) {
    //     var statusList = [{
    //         text: '全部',
    //         status: status==''?'selected':'normal'
    //     }, {
    //         text: '已处理',
    //         status: status=='已处理'?'selected':'normal'
    //     }, {
    //         text: '未解决',
    //         status: status=='未解决'?'selected':'normal'
    //     }];
    //     var selectSta = api.require('UIMultiSelector');
    //     selectSta.open({
    //         rect: {
    //             h: 244
    //         },
    //         text: {
    //             title: '处理状态',
    //             leftBtn: '取消',
    //             rightBtn: '确定',
    //             selectAll: '全选'
    //         },
    //         max: 1,
    //         singleSelection: true,
    //         maskClose: false,
    //         styles: selectorStyle,
    //         animation: true,
    //         maskClose: true,
    //         items: statusList
    //     }, function(ret, err) {
    //         if (ret.eventType == 'clickLeft') {
    //             api.toast({
    //                 msg: '请选择处理状态',
    //                 duration: 2000,
    //                 location: 'bottom'
    //             });
    //         }
    //         if (ret.eventType == 'clickRight') {
    //             //console.log(JSON.stringify(ret))
    //             if (ret.items.length > 0) {
    //                 status = ret.items[0].text;
    //                 $api.html($api.dom(obj, 'span'), status);
    //                 if (status == '全部') {
    //                     status = '';
    //                 }
    //
    //                 page = 1;
    //                 nextDataFlag = true;
    //                 $api.html($api.byId("log-list"), '');
    //                 fnInitData();
    //                 selectSta.close();
    //             } else {
    //                 api.toast({
    //                     msg: '请选择处理状态',
    //                     duration: 2000,
    //                     location: 'bottom'
    //                 });
    //             }
    //         }
    //     });
    // }
    function fnInitData() {
        loadDataFlag = false;
        loadingData($api.byId("loading-data-view"));
        //console.log(HOST + '/iot_api/v1/app/get_log_list?page=' + page + '&limit=' + limit + '&imei=' + imei);
        $.ajax({
            url: HOST + '/iot_api/v1/app/get_log_list?page=' + page + '&limit=' + limit + '&imei=' + imei,
            type: 'GET',
            dataType: 'json',
            headers: {
                'Content-Type': 'application/json;charset=utf-8',
                'token': token
            },
            success: function(ret) {
                //console.log(JSON.stringify(ret));
                if (ret) {
                    if (ret.code == 0) {
                        if (!ret.data.next) {
                            nextDataFlag = false;
                        }
                        if (ret.data.count==0) {
                            noData($api.byId("log-list"));
                        }
                        for (var i = 0; i < ret.data.rows.length; i++) {
                            var targetItem = '<li><p class="aui-ellipsis-1"><label>' + (((page - 1) * limit) + (i + 1)) + '</label><span>操作者:' + ret.data.rows[i].userName + '</span><abbr>' + parseTime(ret.data.rows[i].updatedAt,'{y}-{m}-{d} {h}:{i}:{s}') + '</abbr></p>' +
                                '<p class="aui-hr"></p><p><b>操作命令:</b><b>';
                            //targetItem += operationList(ret.data.rows[i].command) + '</samp>';
                            //targetItem += '</p><p><b>参数:';
                            if(ret.data.rows[i].command=='&S9+'){
                              //targetItem += ret.data.rows[i].params;
                              if(ret.data.rows[i].params==2){
                                targetItem += '静音';
                              }else if(ret.data.rows[i].params==4){
                                targetItem += '分闸';
                              }else if(ret.data.rows[i].params==8){
                                targetItem += '自检';
                              }else if(ret.data.rows[i].params==16){
                                targetItem += '复位';
                              }
                              targetItem += '</b></p><p><b></b></p>';
                            }else{
                              //targetItem += ret.data.rows[i].params+'</b></p><p><b>'
                              targetItem += operationList(ret.data.rows[i].command) + '</b>';
                              targetItem += '</p><p><b>&nbsp;&nbsp;&nbsp;参数:';
                              targetItem += ret.data.rows[i].params+'</b></p>'
                            }
                            targetItem += '<p class="aui-hr"></p>';
                            targetItem += '<p><small class="aui-pull-right">结果:<samp>'+ret.data.rows[i].ret+'</samp></small></p><div class="aui-clearfix"></div></li>';
                            $api.append($api.byId("log-list"), targetItem);
                        }
                    } else {
                        api.toast({
                            msg: ret.msg,
                            duration: 2000,
                            location: 'bottom'
                        });
                    }
                }
                $api.html($api.byId('loading-data-view'),'');
                loadDataFlag = true;
            },
            error: function() {
                $api.html($api.byId('loading-data-view'),'');
                api.toast({
                    msg: '获取数据失败',
                    duration: 2000,
                    location: 'bottom'
                });
                loadDataFlag = true;
            }
        });
    }
</script>