forked from kidgrow-microservices-platform

zhaoxiaohao
2020-05-11 76c53a0f0792a9406259dd78e1b8c20ae55dd546
添加  按钮根据 权限隐藏的功能
2 files modified
98 ■■■■■ changed files
kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java 19 ●●●● patch | view | raw | blame | history
kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctor.html 79 ●●●● patch | view | raw | blame | history
kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysDoctorServiceImpl.java
@@ -201,25 +201,26 @@
                boolean hset = redisUtils.hset(RedisConstant.USER_ORGANIZATION, sysUserOrg.getUserId().toString(), sysUserOrg);
            }else {
                //更新
                redisUtils.hdel(RedisConstant.USER_ORGANIZATION, sysDoctor.getUserId().toString());
//                List<SysUserOrg> sysOrganizations = JSON.parseArray(JSON.toJSONString(redisUtils.hget(RedisConstant.USER_ORGANIZATION, sysDoctor.getUserId().toString())), SysUserOrg.class);
//                sysOrganizations.forEach( e-> {
//                    if(e.getId()==sysDoctor.getId()){
//                        sysOrganizations.set(0,sysDoctor);
//                    }
//                });
                SysDoctor getOne = baseMapper.selectById(sysDoctor.getId());
                Map<String, Object> columnMap=new HashMap<>();
                columnMap.put("user_id",sysDoctor.getUserId());
                boolean b = sysUserOrgService.removeByMap(columnMap);
                //保存将sys_user_org
                SysUserOrg sysUserOrg=new SysUserOrg();
                sysUserOrg.setUserId(sysDoctor.getUserId());
                sysUserOrg.setUserId(getOne.getUserId());
                sysUserOrg.setEnabled(false);
                sysUserOrg.setOrgId(sysDoctor.getDepartmentId());
                sysUserOrg.setCreateTime(new Date());
                sysUserOrgService.saveOrUpdate(sysUserOrg);
                SysUserOrg sysGongsi=new SysUserOrg();
                sysGongsi.setUserId(getOne.getId());
                sysGongsi.setOrgId(sysDoctor.getHospitalId());
                sysUserOrgService.saveOrUpdate(sysGongsi);
                baseMapper.updateById(sysDoctor);
                redisUtils.hset(RedisConstant.USER_ORGANIZATION, sysUserOrg.getUserId().toString(), sysUserOrg);
                if(redisUtils.hHasKey(RedisConstant.USER_ORGANIZATION, getOne.getUserId().toString())){
                    redisUtils.hdel(RedisConstant.USER_ORGANIZATION, getOne.getUserId().toString());
                }
                redisUtils.hset(RedisConstant.USER_ORGANIZATION, getOne.getUserId().toString(), sysUserOrg);
            }
        }
        return true;
kidgrow-web/kidgrow-web-manager/src/main/resources/static/pages/opration/doctor.html
@@ -8,7 +8,8 @@
    </div>
    <div class="layui-card-body">
        <div class="layui-form toolbar">
            <button id="doctor-btn-add" class="layui-btn icon-btn"><i class="layui-icon">&#xe654;</i>添加</button>
            <button id="doctor-btn-add" class="layui-btn icon-btn" value="sysdoctor-edit"><i
                    class="layui-icon">&#xe654;</i>添加</button>
            <select placeholder="选择一个应用" id="doctorState" lay-filter="role_clients">
                <option value="">-请选择-</option>
                <option value="true">正常</option>
@@ -19,7 +20,8 @@
            </select>
            <input id="doctorTel" class="layui-input search-input" type="text" placeholder="按手机号..." />&emsp;
            <input id="doctorName" class="layui-input search-input" type="text" placeholder="按医生..." />&emsp;
            <button id="app-btn-search" class="layui-btn icon-btn"><i class="layui-icon">&#xe615;</i>搜索</button>
            <button id="app-btn-search" class="layui-btn icon-btn" value="sysdoctor-list"><i
                    class="layui-icon">&#xe615;</i>搜索</button>
        </div>
        <!-- 数据表格 -->
@@ -30,17 +32,18 @@
<!-- 表格操作列 -->
<script type="text/html" id="doctor-table-bar">
    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">查看详情</a>
    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="reset">重置密码</a>
    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="edit">修改</a>
    <a class="layui-btn layui-btn-xs" lay-event="del">删除</a>
    <a class="layui-btn layui-btn-primary layui-btn-xs"  lay-event="detail">查看详情</a>
    <button class="layui-btn layui-btn-primary layui-btn-xs" value="users-edit" lay-event="reset">重置密码</button>
    <button class="layui-btn layui-btn-primary layui-btn-xs"  value="sysdoctor-edit" lay-event="edit">修改</button>
    <button class="layui-btn layui-btn-xs"  value="sysdoctor-del" lay-event="del">删除</button>
    <!-- <a class="layui-btn layui-btn-xs" lay-event="enable">停用</a> -->
</script>
<!-- 表格状态列 -->
<script type="text/html" id="doctor-tpl-state">
    <input type="checkbox" lay-filter="doctor-tpl-state" value="{{d.id}}" lay-skin="switch" lay-text="正常|已停用"
    <input  type="checkbox" lay-filter="doctor-tpl-state" value="{{d.id}}" lay-skin="switch" lay-text="正常|已停用"
           {{d.enabled==true?'checked':''}}/>
           <input class="radioChecked" type="hidden" value="sysdoctor-enable"  />
</script>
<!-- 表单弹窗 -->
<script type="text/html" id="app-model">
@@ -337,7 +340,7 @@
        var util = layui.util;
        var admin = layui.admin;
        var upload = layui.upload;
        form.verify({    confirmPass:function(value){        if($('input[name=password]').val() !== value)            return '两次密码输入不一致!';    }});
        form.verify({ confirmPass: function (value) { if ($('input[name=password]').val() !== value) return '两次密码输入不一致!'; } });
        //医院数据绑定在弹框里
        var hospital = "";
@@ -347,6 +350,18 @@
        var user = "";
        //职称
        var doctorRank = "";
        var test = $(".layui-btn");
        var permissions = admin.getTempData("permissions");
        test.each(function () {
            var item = $(this)
            if (permissions.indexOf(item.val()) != -1) {
                item.show();
            } else {
                item.hide();
            }
        })
        // 获取应用列表
        // layer.load(2);
        admin.req('api-user/syshospital/findAllByMap', JSON.stringify({ is_del: 0 }), function (data) {
@@ -363,7 +378,6 @@
                    }
                    //往下拉菜单里添加元素
                    $('#hospitalName-seach').append(new Option(item.hospitalName, item.id, false, selected));
                    // $('#hospitalId').append(new Option(item.hospitalName, item.id, false, selected));
                    form.render('select', 'app-form');
                })
                form.render();
@@ -451,31 +465,51 @@
            page: true,
            cols: [[
                { type: 'numbers' },
                { field: 'hospitalName', width: 180, sort: true, title: '医院名称' },
                { field: 'doctorName', width: 200, sort: true, title: '医生姓名' },
                { field: 'doctorRank', width: 180, sort: true, title: '职称' },
                { field: 'username', width: 300, sort: true, title: '登录帐号' },
                { field: 'doctorTel', width: 300, sort: true, title: '联系方式' },
                { field: 'hospitalName', width: 180, title: '医院名称' },
                { field: 'doctorName', width: 200, title: '医生姓名' },
                { field: 'doctorRank', width: 180, title: '职称' },
                { field: 'username', width: 300, title: '登录帐号' },
                { field: 'doctorTel', width: 300, title: '联系方式' },
                {
                    field: 'doctorState', width: 300, sort: true, title: '状态', templet: function (d) {
                    field: 'doctorState', width: 300, title: '状态', templet: function (d) {
                        return d.doctorState ? "正式" : "试用"
                    }
                },
                {
                    field: 'isAnswer', width: 300, sort: true, title: '医答', templet: function (d) {
                    field: 'isAnswer', width: 300, title: '医答', templet: function (d) {
                        return d.isAnswer ? "是" : "否"
                    }
                },
                {
                    field: 'isSigning', width: 300, sort: true, title: '签约', templet: function (d) {
                    field: 'isSigning', width: 300, title: '签约', templet: function (d) {
                        return d.isSigning ? "是" : "否"
                    }
                },
                { field: 'enabled', width: 250, align: 'center', templet: '#doctor-tpl-state', sort: true, title: '状态' },
                { field: 'createTime', width: 250, sort: true, title: '时间', templet: "<div>{{layui.util.toDateString(d.createTime, 'yyyy年MM月dd日 HH:mm:ss')}}</div>" },
                { field: 'serverUserName', width: 100, sort: true, title: '销售代表' },
                { width: 200, width: 300, align: 'center', toolbar: '#doctor-table-bar', sort: true, title: '操作' },
            ]]
                { field: 'enabled', width: 250, align: 'center', templet: '#doctor-tpl-state', title: '状态' },
                { field: 'createTime', width: 250, title: '时间', templet: "<div>{{layui.util.toDateString(d.createTime, 'yyyy年MM月dd日 HH:mm:ss')}}</div>" },
                { field: 'serverUserName', width: 100, title: '销售代表' },
                { width: 200, width: 300, align: 'center', toolbar: '#doctor-table-bar', title: '操作' },
            ]],
            done: function (res, curr, count) {
                $(".layui-btn-xs").each(function () {
                    var item = $(this)
                    if (permissions.indexOf(item.val()) != -1) {
                        item.show();
                    } else {
                        item.hide();
                    }
                })
                //layui-unselect layui-form-switch layui-form-onswitch <input class="radioChecked" value="sysdoctor-enable"  />
                $(".radioChecked").each(function () {
                    var item = $(this)
                    if (permissions.indexOf(item.val()) != -1) {
                        $(".layui-unselect").show();
                    } else {
                        $(".layui-unselect").hide();
                    }
                })
            }
        });
        // 工具条点击事件
@@ -748,5 +782,6 @@
                }
            }, 'get');
        }
    });
</script>