首页 > 代码库 > 选择用户-保存已选用户

选择用户-保存已选用户

1介绍

功能要求:

1 选择用户界面以弹出框方式显示

2 页面选项动态加载(部门及用户)

3 保存勾选的用户

实现分析:

保存已选用户逻辑:

  1. 删除原来已选择的用户记录列表(相当于清空操作)
  2. 添加新选择用户记录列表

页面

 1 保存共享文件
// 保存共享文件
    function shareFile(){
        // 参数
        var signid = chooseObj.id;
        var objtype = chooseObj.type;
        var userlist = "";
        $("input[name=shareUserId]").each(function(){
             // 此时的this 就是那个 html中的 那个checkbox对象。所以通过
             // this.checked 直接访问属性都是可以的 
             if($(this).attr('checked')){
                 userlist = userlist+$(this).val()+","
             }
        });
        if(userlist.length>0){
            userlist = userlist.substring(0, userlist.length-1)
        }
        $.ajax({
            url : '../share/shareFile.do',
            //url:'${ctx}/index.jsp',
            cache : false,
            type : 'post',
            dataType : 'html',
            async : false,
            contentType : "application/x-www-form-urlencoded;charset=utf-8",
            data : {
                'signid' : signid,
                'objtype' : objtype,
                'userlist':userlist
            },
            success : function(ret) {
                // 异常处理
                if(ret==3){
                    handleWarm("目标文件夹是自己"); 
                    return;
                }else if(ret==2){
                    handleWarm("不能移动至子目录"); 
                    return;
                } 
                // closeflowcontent('fxcontentflow');
                refreshThisContent();
            }
        })
    }

页面选项内容html参考(仅供参考,无需实现)
div class="fxtitle">院领导</div>
    <ul class="fxxz">
        <li><input type="checkbox" name="shareUserId" value=http://www.mamicode.com/"xiaolin">肖林 >

后台代码

controller层
public void shareFile(HttpServletRequest request,HttpServletResponse response) {
     
        String signid = request.getParameter("signid") == null? "": request.getParameter("signid");
        String objtype = request.getParameter("objtype") == null? "": request.getParameter("objtype");
        String userlist = request.getParameter("userlist") == null?"": request.getParameter("userlist");
        User user = (User)request.getSession().getAttribute("user");
         
        int result = fileShareManager.shareFile(signid, objtype, userlist, user.getUserid().getValue());
        try{
            request.setCharacterEncoding("UTF-8");
            PrintWriter pw = response.getWriter(); 
            pw.write("" + result);
            pw.flush();
            pw.close();
        }catch (Exception e) {
            // TODO: handle exception
            e.printStackTrace();
        }
         
    }
service
/**
     * 指定共享文件、文件夹
     * 
     * @param signid 文件夹id/文件id          
     * @param objtype 操作对象类型(1:file、2:folder)
     * @param userlist 分享用户范围
     * @return 0表示操作失败/1表示操作成功
     * 
     */
    public int shareFile(String signid, String objtype, String userlist, String sharer) {
        // 删除共享记录
        fileShareDao.deleteFileshare(signid, objtype);      
        // 新建共享记录
        String users[] = userlist.split(",");
     
        // 保存每一个共享用户
        for (int i = 0; i < users.length && !users[0].equals(""); i++) {
                WpFileshare wpFileshare = new WpFileshare();            
                wpFileshare.setSharer(sharer);
                wpFileshare.setShareuser(users[i]); 
                wpFileshare.setSharetime(new Date());
                fileShareDao.saveFileshare(wpFileshare);
        }
    }