staff.php 8.84 KB
<?php $this->load->view('common/header'); ?>

<body>
<?php $this->load->view('perm/header'); ?>
<div class="page-container">
    <form class="" onreset="resetHandler()">
        <div class="row cl mb-20">
            <div class="col-xs-2">
                <span class="select-box">
                    <select class="select table_search" size="1" column="1">
                        <option value="" selected>网点</option>
                        <?php foreach ($this->session->departments as $k=>$v):?>
                            <option value="<?=$v->id?>"><?=$v->name?></option>
                        <?php endforeach;?>
                    </select>
                </span>
            </div>
            <div class="col-xs-2">
                <span class="select-box">
                    <select class="select table_search" size="1" column="2">
                        <option value="" selected>角色</option>
                        <?php foreach ($this->session->role as $k=>$v):?>
                            <option value="<?=$v->id?>"><?=$v->name?></option>
                        <?php endforeach;?>
                    </select>
                </span>
            </div>
        </div>
        <div>
            <input class="btn btn-warning radius" type="reset" value="重置搜索">
            <button class="btn btn-primary radius" type="button" onclick="add()">添加角色</button>
        </div>
    </form>

    <div class="body mt-20">
        <table class="table table-border table-bordered table-bg" id="table">
            <thead class="text-c">
            <tr>
                <th width="68px">操作</th>
                <th>用户名</th>
                <th>真实姓名</th>
                <th>手机号</th>
                <th>身份证号码</th>
                <th>角色</th>
                <th>所属网点</th>
                <th>状态</th>
                <th>备注</th>
            </tr>
            </thead>
            <tbody class="text-c">
            </tbody>
        </table>
    </div>
</div>
<?php $this->load->view('common/footer'); ?>

<script>
    var table = $('#table').dataTable({
        aaSorting: [[1, "desc"]],
        serverSide: true,
        processing: true,
        bSort: false,
        searching: false,//是否显示搜索
        iDisplayLength: 6,
        bLengthChange: false,
        ajax: {
            url: apiBaseUrl + 'system/user/getAllHr',
            dataFilter: function (json) {
                var ret = {}, json = jQuery.parseJSON(json);
                ret.data = json.data || [];
                var draw = getUrlParam('draw');
                if(draw) {
                    ret.draw = draw;
                }
                ret.recordsTotal = 0;
                ret.recordsFiltered = 0;
                if (json.page) {
                    ret.recordsTotal = parseInt(json.page.totalNumber);
                    ret.recordsFiltered = parseInt(json.page.totalNumber);
                }
                return JSON.stringify(ret);
            },
            data: function (data) {
                data.pageSize = data.length;
                data.currentPage = parseFloat(data.start / data.length) + 1;
                return data;
            }
        },
        columns: [
            {
                data: "id", render: function (data, type, full) {
                    var str = '';
                    if(full.status == 1){
                        str = '<li><a href="javascript:freeze('+data+');">冻结</a></li>';
                    } else {
                        str = '<li><a href="javascript:unfreeze('+data+');">正常</a></li>';
                    }
                    return '<span class="dropDown dropDown_hover">\
                        <button class="btn radius size-M">请选择 <i class="Hui-iconfont">&#xe6d5;</i></button>\
                        <ul class="dropDown-menu menu radius box-shadow">\
                            '+str+'\
                            <li><a href="javascript:reset('+data+');">重置密码</a></li>\
                        </ul></span>';
                }
            },
            {data: "username"},//用户名
            {data: "name"},//真实姓名
            {data: "phone"},//手机号码
            {data: "id"},//身份证号码
            {data: "roles"},//角色
            {data: "departmentId"},//所属网点
            {data: "status"},//状态
            {data: "remark"},//备注
        ]
    });

    $.fn.dataTableExt.afnFiltering.push(
        function (oSettings, aData, iDataIndex) {
            var min = document.getElementById('min').value;
            var max = document.getElementById('max').value;
            var iDateCol = 12;

            var dateMin = new Date(aData[iDateCol]);
            var dateMax = new Date(aData[iDateCol]);

            if (min === '' && max === '')
                return true;
            else if (new Date(min).getTime() <= dateMin.getTime() && max === '')
                return true;
            else if (new Date(min).getTime() <= dateMin.getTime() && new Date(max).getTime() >= dateMax.getTime())
                return true;
            return false;
        }
    );

    $('.table_search').on('change', function () {
        search = $(this).val();
        column = $(this).attr('column');

        $('#table').DataTable().column(column).search(search).draw();
    });

    $('#min, #max').on('keyup', function () {
        $('#table').DataTable().draw();
    });

    function resetHandler() {
        $('#table').DataTable().columns().search("").draw();
    }

    function add() {
        layer_show('添加员工', '<?=site_url('perm/staffAdd');?>');
    }

    function edit(id) {
        layer_show('添加员工', '<?=site_url('perm/staffEdit');?>/'+id);
    }

    function reset(id) {
        //layer_show('重置密码', '<?=site_url('perm/reset');?>');
        layer.confirm('您确定要将密码重置为 123456 ?', {
            btn: ['确认','取消'],
            title: '重置密码',
            icon: 3
        }, function(){
            $.ajax({
                type: 'put',
                url: apiBaseUrl + 'system/user/resetPassword/'+id+'?newPassword=' + 123456,
                cache: false,
                dataType: 'json',
                contentType: "application/json; charset=UTF-8",
                success: function (data) {
                    if (data.msg) {
                        layer.alert(data.msg);
                    } else if (data.code != 0) {
                        layer.alert('操作失败');
                    } else {
                        layer.msg('重置成功');
                    }
                },
                error: function () {
                    layer.alert("请求失败")
                }
            })
        });
    }

    function freeze(id) {
        layer.confirm('您确定要冻结这个员工账号吗?', {
            btn: ['确认','取消'],
            title: '冻结',
            icon: 3
        }, function(){
            $.ajax({
                type: 'put',
                url: apiBaseUrl + 'system/user/freeze/' + id,
                cache: false,
                dataType: 'json',
                contentType: "application/json; charset=UTF-8",
                success: function (data) {
                    if (data.msg) {
                        layer.alert(data.msg);
                    } else if (data.code != 0) {
                        layer.alert('操作失败');
                    } else {
                        layer.msg('冻结成功');
                    }
                },
                error: function () {
                    layer.alert("请求失败")
                }
            })
        });
    }

    function unfreeze(id) {
        layer.confirm('您确定要解冻这个员工账号吗?', {
            btn: ['确认','取消'],
            title: '解冻',
            icon: 3
        }, function(){
            $.ajax({
                type: 'put',
                url: apiBaseUrl + 'manage/financial/confirm/' + id + '?realRepaymentDate=' + Date.now(),
                cache: false,
                dataType: 'json',
                contentType: "application/json; charset=UTF-8",
                success: function (data) {
                    if (data.msg) {
                        layer.alert(data.msg);
                    } else if (data.code != 0) {
                        layer.alert('操作失败');
                    } else {
                        layer.msg('解冻成功');
                    }
                },
                error: function () {
                    layer.alert("请求失败")
                }
            })
        });
    }

    function del(id) {
        layer.confirm('一旦删除员工账号将无法恢复, 请谨慎操作!', {
            btn: ['确认注销','取消'],
            title: '注销账号',
            icon: 3
        }, function(){
            layer.msg('注销成功');
        });
    }
</script>
</body>
<html>