zoukankan      html  css  js  c++  java
  • SSH——增删改的实现二

    二、批量删除

    逻辑删除取派员,将取派员的deltag改为“1

    1. 为“作废”按钮绑定事件

    //批量删除取派员
        function doDelete(){
            //获得选中的行
            var rows = $("#grid").datagrid("getSelections");
            if(rows.length == 0){
                //没有选中,提示
                $.messager.alert("提示信息","请选择需要删除的记录!","warning");
            }else{
                var array = new Array();
                //选中了记录,获取选中行的id
                for(var i=0;i<rows.length;i++){
                    var id = rows[i].id;
                    array.push(id);
                }
                var ids = array.join(",");//1,2,3,4
                //发送请求,传递ids参数
                window.location.href = '${pageContext.request.contextPath}/staffAction_delete.action?ids='+ids;
            }
        }

    2. StaffAction中提供ids属性和set方法,delete方法批量删除

    //接收ids参数
        private String ids;
        public void setIds(String ids) {
            this.ids = ids;
        }
        
        /**
         * 批量删除功能(逻辑删除)
         * @return
         */
        public String delete(){
            staffService.deleteBatch(ids);
            return "list";
        }

    3. 在service中提供批量删除方法

    /**
         * 批量删除
         */
        public void deleteBatch(String ids) {
            String[] staffIds = ids.split(",");
            for (String id : staffIds) {
                staffDao.executeUpdate("staff.delete", id);
            }
        }

    4. Staff.hbm.xml中定义更新语句

     <query name="staff.delete">
            UPDATE Staff SET deltag = '1' WHERE id = ?
        </query>

     

    三、 取派员信息修改功能(双击弹出与提交相同的窗口,直接在原数据基础上进行修改)

    1. 复制添加取派员窗口,获得修改的窗口

        <!-- 修改窗口 -->
        <div class="easyui-window" title="对收派员进行添加或者修改" id="editStaffWindow" collapsible="false" 
                minimizable="false" maximizable="false" style="top:20px;left:200px">
            <div region="north" style="height:31px;overflow:hidden;" split="false" border="false" >
                <div class="datagrid-toolbar">
                    <a id="edit" icon="icon-save" href="#" class="easyui-linkbutton" plain="true" >保存</a>
                    <script type="text/javascript">
                        $(function(){
                            //绑定事件
                            $("#edit").click(function(){
                                //校验表单输入项
                                var v = $("#editStaffForm").form("validate");
                                if(v){
                                    //校验通过,提交表单
                                    $("#editStaffForm").submit();
                                }
                            });
                        });
                    </script>
                </div>
            </div>
            
            <div region="center" style="overflow:auto;padding:5px;" border="false">
                <form id="editStaffForm" action="${pageContext.request.contextPath }/staffAction_edit.action"
                         method="post">
                         <input type="hidden" name="id">
                    <table class="table-edit" width="80%" align="center">
                        <tr class="title">
                            <td colspan="2">收派员信息</td>
                        </tr>
                                    
                        <tr>
                            <td>姓名</td>
                            <td><input type="text" name="name" class="easyui-validatebox" required="true"/></td>
                        </tr>
                        <tr>
                            <td>手机</td>
                            <td><input type="text" name="telephone" class="easyui-validatebox" required="true"
                                data-options="validType:'phonenumber'"
                            /></td>
                        </tr>
                        <tr>
                            <td>单位</td>
                            <td><input type="text" name="station" class="easyui-validatebox" required="true"/></td>
                        </tr>
                        <tr>
                            <td colspan="2">
                            <input type="checkbox" name="haspda" value="1" />
                            是否有PDA</td>
                        </tr>
                        <tr>
                            <td>取派标准</td>
                            <td>
                                <input type="text" name="standard" class="easyui-validatebox" required="true"/>  
                            </td>
                        </tr>
                        </table>
                </form>
            </div>
        </div>

    2. 修改datagrid的双击行事件的处理函数

    //双击事件处理函数
        function doDblClickRow(rowIndex, rowData){//{id:xxx,name:xx,}
            $('#editStaffWindow').window("open");//打开修改窗口
            $("#editStaffForm").form("load",rowData);  //将表单数据显示在框中
        }

    3. 在StaffAction中提供edit方法,修改取派员信息(将提交表单数据封装到model,然后再覆盖staff)

          /**
         * 修改取派员信息
         */
        public String edit(){
            //显查询数据库中原始数据
            Staff staff = staffService.findById(model.getId());
    //再按照页面提交的参数进行覆盖 staff.setName(model.getName()); staff.setTelephone(model.getTelephone()); staff.setStation(model.getStation()); staff.setHaspda(model.getHaspda()); staff.setStandard(model.getStandard());
    staffService.update(staff);
    return "list"; }

    点击提交之后,调用edit方法,将数据封装到model并覆盖staff

  • 相关阅读:
    C++ 数字、string 简便互转
    【C语言】递归函数DigitSum(n)
    UVALIVE 4287 Proving Equivalences (强连通分量+缩点)
    【linux驱动分析】misc设备驱动
    C++ auto 与 register、static keyword 浅析
    spring 计时器
    Spring注解配置定时任务<task:annotation-driven/>
    去除ckeditor上传图片预览中的英文字母
    编码规范
    git 手动操作
  • 原文地址:https://www.cnblogs.com/zjfjava/p/7031662.html
Copyright © 2011-2022 走看看