zoukankan      html  css  js  c++  java
  • voucer

    <style type="text/css">
     .fieldset_s{border: 1px #dedede solid;padding: 19px; color: #0E2D5F;}
     .fieldset_s legend {color: #000;}
     </style>
     <div id="acc_toolbar">
       <div style="padding:13px 6px 16px 6px;">
            <!--<fieldset class="fieldset_s">
                <legend>信息查询</legend>
                 <label for="acc_date_begin">发生日期:</label>
                     <input id="acc_date_begin" type="text" class="easyui-datebox"  style="100px;"> 至 
                     <input id="acc_date_end" type="text" class="easyui-datebox"  style="100px;">
                 <label for="acc_client"> 客户/学员名称:</label> 
                     <input id="acc_client" type="text"   style="100px;">
                <label for="acc_staff"> 业务员:</label> 
                    <input id="acc_staff" type="text" style="100px;">
                <label for="acc_project"> 项目课程:</label> 
                    <input id="acc_project" class="easyui-textbox" style="100px;">
                    <a href="javascript:void(0)" onclick="javascript:getquerydata();" onkeydown="return enterSubmit(this,event);" class="easyui-linkbutton c4" data-options="iconCls:'icon-search'" iconCls="icon-search" style="90px">搜 索</a>
                  <div id="dialogs" style="display:none;">
                      暂未启用
                  </div>
              </fieldset>-->
    
        <div style="text-align:center;padding:9px 6px;">录入凭证</div>
        <div>
                凭证:<input class="easyui-textbox" type="text" name="voucher_no" value='记' data-options="40,required:true"> 字  
                          <input class="easyui-textbox" type="text" name="voucher_no" value='001' data-options="50,required:true"> 号
                日 期: <input class="easyui-datebox" type="text" name="voucher_date" data-options="required:true">
        </div>
        <br>
    
    
       </div>
          <a href="javascript:void(0);" onclick="javascript:accounts_add();" class="easyui-linkbutton" data-options="plain:true,iconCls:'icon-add'" >添加分录</a>
          <a href="javascript:void(0);" onclick="javascript:accounts_save();" class="easyui-linkbutton" data-options="plain:true,iconCls:'icon-save'">保存凭证</a>
          <a href="javascript:void(0);" class="easyui-linkbutton" data-options="plain:true,iconCls:'icon-remove'">删除</a>
          <a href="javascript:void(0);" onclick="javascript:accounts_redo();" class="easyui-linkbutton" data-options="plain:true,iconCls:'icon-redo'">撤销</a>
          <a href="javascript:void(0);" onclick="javascript:accounts_edit();" class="easyui-linkbutton" data-options="plain:true,iconCls:'icon-edit'">修改</a>
          <a href="javascript:void(0);" onclick="javascript:MoveUp();" class="easyui-linkbutton" data-options="plain:true">上移</a>
          <a href="javascript:void(0);" onclick="javascript:MoveDown();"  class="easyui-linkbutton" data-options="plain:true">下移</a>
     </div>
       <div class="easyui-panel" title=""  style="99%;height:99%;padding:3px;border:0px;">
            <table id="dgacount" class="easyui-datagrid"></table>
       </div>
       <div id="combogrid_bar">
            <a href="#" class="easyui-linkbutton" data-options="plain:true,iconCls:'icon-add'"></a>
       </div>
    <script type="text/javascript">
        $(function(){
            /*datagrid应收款管理*/
    
            editRow=undefined; //定义全局变量
            get_account_Datas();
            textbox_staff();
    
            //监听浏览器宽度变化,调整datagrid尺寸和布局
             /* $(window).resize(function(){
                $('#dgacount').datagrid('resize');
                });
    */
            //$("#search_toolbar").appendTo(".datagrid-toolbar");添加标签
            //
            
            textbox_acc_client();
        });
            
            //键盘事件 暂未启用
            function enterSubmit(src,e)
                {
                    if (window.event) {keyPress = window.event.keyCode;}else{keyPress = e.which;};
                        if (keyPress==13) {alert('sdf');};
                }
            // datagrid重新加载数据acc_client:$("#acc_client").val
            function getquerydata()
            {
                //获取 要查询的参数
                var acc_date_begin = $("#acc_date_end").datebox("getValue");//注意日期的取值方式
                var acc_date_end = $("#acc_date_end").datebox("getValue");
                var acc_client = $("#acc_client").val();
                var acc_staff = $("#acc_staff").val();
                var acc_project = $("#acc_project").val();
    
                alert(acc_date_begin);
                $('#dgacount').datagrid('load',{
                    acc_date_begin:acc_date_begin //向后台传递的参数
                    
                });
            }
    
            //
            function textbox_acc_client()
            {
                $("#acc_client").textbox({
                    /*buttonText:'click',
                    iconCls:'icon-search',
                    onClickButton:function(e){
                        
                           alertdialog();
                    },*/
    
                    icons:[{
                       iconCls:'icon-search',
                       handler:function(e){
                           var v=$(e.data.target).textbox('getValue');
                           var v=$(e.data.target).textbox('setText','小兵');
                           //alert(v?v:'空');
                           alertdialog();
                       }
                   }]
    
    
                })
            }
    
            //
            function textbox_staff()
            {
                $("#acc_staff").textbox({
    
                   icons:[{
                       iconCls:'icon-search',
                       handler:function(e){
                           var v=$(e.data.target).textbox('getValue');
                           alert(v?v:'空');
                           alertdialog();
                       }
                   }]
                         }
                     )
            }
    
    
            function alertdialog()
            {
                $('#dialogs').dialog({
                   title: 'My Dialog',
                    400,
                   height: 200,
                   closed: false,
                   cache: false,
                   modal: true
                });
            }
    
    
         //初始化datagrid的数据
         
        function get_account_Datas(){
            /*<?php //base_url()?>/static/data/test.json
            <?php echo site_url();?>/bankinfo/selectAll
            */
            
            $('#dgacount').datagrid({   
                title: '凭证信息管理',
                collapsible: true,
                url:'<?php //base_url()?>/static/data/vouher.json',//php文件中使用echo返回json数据 翻页的同时传递了page  和rows;
                loadMsg:'数据加载中,请稍后......',
                //pagination:true,
                pageNumber:1,
                pageSize:10,
                pageList:[6,10,16,26],
                rownumbers:true,
                singleSelect:true,
                //pagePosition:top,
                fit:true,//datagrid的适应父窗口
                fitColumns:false,//自动扩大或缩小列的尺寸以适应表格的宽度并且防止水平滚动
                striped:true,
                //method:'post',
                toolbar:'#acc_toolbar',
                //onClickCell: onClickCell,
    
                onAfterEdit: function (rowIndex, rowData, changes) {
                    editRow = undefined;
                },
                onDblClickRow:function (rowIndex, rowData) {
    
                    if (editRow != undefined) {
                        $("#dgacount").datagrid('endEdit', editRow);
                    }
         
                    if (editRow == undefined) {
                        $("#dgacount").datagrid('beginEdit', rowIndex);
                        editRow = rowIndex;
                    }
                },
                onClickRow:function(rowIndex,rowData){
                    
                    if (editRow != undefined) {
                        $("#dgacount").datagrid('endEdit', editRow);
         
                    }
                    
                },
    
                columns:[[
                        {field:'summary',title:'<br><span style="font-weight:bold;font-size:15px;">摘 要</span><br>',200,align:'center',
                            editor:{
                                 type:'combobox',options:{
                                     valueField:'month',
                                     textField:'month',
                                     method:'get',
                                     url:'<?php base_url()?>/static/data/month.json',
                                     height:60,
    
                                     }
                               },
                            styler: function(value,rowData,rowIndex){
                                   return {style:'height:50px'}
                                   },
                        },
    
                        {field:'inout_date',title:'<br>发生日期<br>',100,align:'center',hidden:true,
                            editor:{
                                     type:'datebox',options:{
                                         //required:true,
    
                                         },
                                   },
                        },
                        {field:'subjects',title:'<span style="font-weight:bold;font-size:15px;">会计科目   </span>',200,align:'right',
                            editor:{
                                 type:'combobox',options:{
                                     valueField:'month',
                                     textField:'month',
                                     method:'get',
                                     url:'<?php base_url()?>/static/data/month.json',
                                     height:60,
                                     }
                               },
                            styler: function(value,rowData,rowIndex){
                                   return {style:'height:50px;font-weight:bold;font-size:36pt;letter-spacing:2px;'}
                                   },
                            
                        },{field:'ought_money',title:'<span style="font-weight:bold;font-size:15px;">借方金额   </span>',200,align:'right',
                            editor:{type:'numberbox',options:{
                                precision:2,
                                height:60,
                                }},
                            styler: function(value,rowData,rowIndex){
                                   return {style:'height:50px;font-weight:bold;font-size:36pt;letter-spacing:2px;'}
                                   },
                            
                        },
                        {field:'inout_money',title:'<span style="font-weight:bold;font-size:15px;">贷方金额   </span>',200,align:'right',
                            editor:{type:'numberbox',options:{
                                precision:2,
                                height:60,
                            }},
                            styler: function(value,rowData,rowIndex){
                                   return {style:'height:50px;font-weight:bold;font-size:36pt;letter-spacing:2px;'}
                                   },
    
                        },
    
                        {field:'client_name',title:'客户/学员名称',100,align:'center',
                            editor:{
                                 type:'combogrid',options:{
                                     panelWidth:200,
                                     idField:'related_id',
                                     textField:'related_name',
                                     mode:'remote',//远程获取数据
                                     method:'get',
                                     fitColumns:true,
                                     //toolbar:'#combogrid_bar',
                                     url:'<?php echo site_url();?>/relatedcompay/getcombogirdjson',
                                     columns:[[
                                       {field:'related_name',title:'客户/学员姓名',80},
                                       {field:'related_programe',title:'项目课程',120}
                                      ]],
                                     }
                               }
                            },
                        {field:'staff_id',title:'所属业务员/职员',100,align:'center',
                            editor:{
                                 type:'combogrid',options:{
                                     panelWidth:200,
                                     idField:'staff_id',
                                     textField:'name',
                                     mode:'remote',//远程获取数据
                                     method:'get',
                                     fitColumns:true,
                                     toolbar:'#combogrid_bar',
                                     url:'<?php echo site_url();?>/departstaff/getStaffCombogridJson',
                                     columns:[[
                                       {field:'name',title:'姓名',80},
                                       {field:'job_role',title:'项目课程',190}
                                      ]],
                                     }
                               }
                        },
                        {field:'dept_id',title:'所属业务核算部门',160,align:'center',
                             editor:{
                                  type:'text',options:{//required:true,
                                      
                                      }
                               }
                        },
                        {field:'sys_id',title:'预设核算项目课程',160,align:'center',
                             editor:{
                                  type:'combotree',options:{
                                      url:'<?php echo site_url();?>/systemcode/getcomTreeJson',
                                      }
                               }
                        },
                        
                        
                        {field:'account_id',title:'凭证ID',100,},
                  ]]   
           });
    
    
    
        }
    
        //添加应收款
        function accounts_add(){
                        var dataB=$("#dgacount").datagrid('getData');
                        //alert('当前页数据量:'+data.rows.length);
                        var rowIndexs = dataB.rows.length;
                        if (editRow != undefined) {
                            $("#dgacount").datagrid('endEdit', editRow);
                            editRow=undefined;
                        }
                        if (editRow == undefined) {
                            $("#dgacount").datagrid('insertRow', {
                                index:rowIndexs,
                                row: {}
                            });
         
                            $("#dgacount").datagrid('beginEdit', rowIndexs);
                             editRow = rowIndexs;
                        }
                    }
    
        //撤销编辑操作
        function accounts_redo() {
                        editRow = undefined;
                        $("#dgacount").datagrid('rejectChanges');
                        $("#dgacount").datagrid('unselectAll');
                    }
    
        
        //修改数据
        function accounts_edit(){
                        var row = $("#dgacount").datagrid('getSelected');
                        //console.info(row);
                        if (row !=null) {
                            if (editRow != undefined) {
                                $("#dgacount").datagrid('endEdit', editRow);
                            }
                            if (editRow == undefined) {
                                var index = $("#dgacount").datagrid('getRowIndex', row);
                                $("#dgacount").datagrid('beginEdit', index);
                                    editRow = index;
                                $("#dgacount").datagrid('unselectAll');
                            }
                        } else {
                            
                        }
                    }
    
        //保存数据
        function accounts_save() {
    
                            var $dg = $("#dgacount");
                            var rows = $dg.datagrid('getRows');
                            for ( var i = 0; i < rows.length; i++) {
                                    $dg.datagrid('endEdit', i);
                                }
                            // $("#dgacount").datagrid('endEdit', 0);//结束编辑状态
                            //如果调用acceptChanges(),使用getChanges()则获取不到编辑和新增的数据。
                            //使用JSON序列化datarow对象,发送到后台。
                            //判断列值 是否为空
                            var mesg = '';
                            var rows = $("#dgacount").datagrid('getChanges');
                            console.info(rows);
                            if(rows.length<=0)
                                { 
                                    $.messager.alert('友情提示','  无添加或修改的内容!<br><br>','warning');
                                    return false;
                                }
                            if(rows)
                            {
                                $.each(rows,function(key,val){
                                       if($.trim(rows[key]["client_name"])=='' || $.trim(rows[key]["client_name"])==undefined || $.trim(rows[key]["client_name"]) ==null)
                                       {
                                           mesg += '客户名称不能为空!<br><br>';
                                        }
                                       if($.trim(rows[key]["dept_id"])=='' || $.trim(rows[key]["dept_id"])==undefined || $.trim(rows[key]["dept_id"]) ==null)
                                       {
                                           mesg += '预设核算项目课程不能为空!<br><br>';
                                        }
                                    });
    
                                
                                }
                            //alert(rows[0]["bank_name"]);
                            if(mesg!='')        
                              {        
                                $.messager.alert('友情提示',mesg,'warning');               
                                return false;
                              }
    
                            var rowstr = JSON.stringify(rows);
                            console.info(rowstr);
                            //alert(rowstr[bank_name]);//可获取到json数据
                            $.post('<?php echo site_url();?>/accounts/addaccounts', {adata:rowstr}, function (data) {
                                 //alert(typeof(data)); //返回的是string类型
                                 
                                 if(data)
                                 {
                                     $.messager.alert('友情提示',data,'info');
                                 }else{
                                      $.messager.alert('友情提示','数据格式填写错误!','error');
                                     }
                                 //$('#zijin').html(data);      // 数据测试
                                 $("#dgacount").datagrid('reload'); //执行成功后刷新当前页数据
                                 
                            });
                        }
    
    
    
        function onClickRow(index){
                    if (editIndex != index){
                        if (endEditing()){
                            $('#dgacount').datagrid('selectRow', index)
                                    .datagrid('beginEdit', index);
                            editIndex = index;
                        } else {
                            $('#dgacount').datagrid('selectRow', editIndex);
                        }
                    }
                }
    
           //上移
        function MoveUp() {
            var row = $("#dgacount").datagrid('getSelected'); 
            var index = $("#dgacount").datagrid('getRowIndex', row);
            mysort(index, 'up', 'dgacount');
             
        }
        //下移
        function MoveDown() {
            
            var row = $("#dgacount").datagrid('getSelected');
            var index = $("#dgacount").datagrid('getRowIndex', row);
            mysort(index, 'down', 'dgacount');
             
        }
        function mysort(index, type, gridname) {
            if ("up" == type) {
                if (index != 0) {
                    var toup = $('#' + gridname).datagrid('getData').rows[index];
                    var todown = $('#' + gridname).datagrid('getData').rows[index - 1];
                    $('#' + gridname).datagrid('getData').rows[index] = todown;
                    $('#' + gridname).datagrid('getData').rows[index - 1] = toup;
                    $('#' + gridname).datagrid('refreshRow', index);
                    $('#' + gridname).datagrid('refreshRow', index - 1);
                    $('#' + gridname).datagrid('selectRow', index - 1);
                }
            } else if ("down" == type) {
                var rows = $('#' + gridname).datagrid('getRows').length;
                if (index != rows - 1) {
    
                    var todown = $('#' + gridname).datagrid('getData').rows[index];
                    var toup = $('#' + gridname).datagrid('getData').rows[index + 1];
                    $('#' + gridname).datagrid('getData').rows[index + 1] = todown;
                    $('#' + gridname).datagrid('getData').rows[index] = toup;
                    $('#' + gridname).datagrid('refreshRow', index);
                    $('#' + gridname).datagrid('refreshRow', index + 1);
                    $('#' + gridname).datagrid('selectRow', index + 1);
                }
            }
         
        }
        //分页
        function getpages()
        {
    
               $("#dgacount").datagrid().datagrid("getPager").pagination({
                           displayMsg:'当前显示从sdf第{from}条到{total}条记录',
                           buttons:[{
                            iconCls:'icon-search',
                            handler:function(){
                                alert('search');
                            }
                        },{
                            iconCls:'icon-add',
                            handler:function(){
                                alert('add');
                            }
                        },{
                            iconCls:'icon-edit',
                            handler:function(){
                                alert('edit');
                            }
                        }
                       ]
                        })
                 
        }
        function reload_combogrid(targetgrid)
        {
            targetgrid.combogrid('reload');    
        }
    
    $.extend($.fn.datagrid.methods, {
                editCell: function(jq,param){
                    return jq.each(function(){
                        var opts = $(this).datagrid('options');
                        var fields = $(this).datagrid('getColumnFields',true).concat($(this).datagrid('getColumnFields'));
                        for(var i=0; i<fields.length; i++){
                            var col = $(this).datagrid('getColumnOption', fields[i]);
                            col.editor1 = col.editor;
                            if (fields[i] != param.field){
                                col.editor = null;
                            }
                        }
                        $(this).datagrid('beginEdit', param.index);
                        for(var i=0; i<fields.length; i++){
                            var col = $(this).datagrid('getColumnOption', fields[i]);
                            col.editor = col.editor1;
                        }
                    });
                }
            });
            
            var editIndex = undefined;
            function endEditing(){
                if (editIndex == undefined){return true}
                if ($('#dgacount').datagrid('validateRow', editIndex)){
                    $('#dgacount').datagrid('endEdit', editIndex);
                    editIndex = undefined;
                    return true;
                } else {
                    return false;
                }
            }
            function onClickCell(index, field){
                if (endEditing()){
                    $('#dgacount').datagrid('selectRow', index)
                            .datagrid('editCell', {index:index,field:field});
                    editIndex = index;
                }
            }
    </script>
  • 相关阅读:
    MySql学习20----数据库范式
    MySql学习17----数据库事务(01)
    MySql学习19-----用户管理
    MySql学习18----数据库事务---命令使用(02)
    MySql学习16----查看mysql库大小、表大小、索引大小
    MySql学习13----触发器
    MySql学习15----MySql日志
    java公开课-04-log4j
    java公开课-04-异常
    java公开课-03-内部类
  • 原文地址:https://www.cnblogs.com/hubing/p/4008900.html
Copyright © 2011-2022 走看看