153 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			PHP
		
	
	
	
			
		
		
	
	
			153 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			PHP
		
	
	
	
| <div class="padder">
 | |
| 
 | |
|     <div class="m-t-sm m-b-sm">
 | |
|         <form id="search-form" name="mysearch" class="form-inline" method="get">
 | |
|             @include('searchForm')
 | |
|         </form>
 | |
|     </div>
 | |
| 
 | |
|     <table id="logistics-dialog">
 | |
|         <thead>
 | |
|         <tr>
 | |
|             <th data-field="state" data-checkbox="true"></th>
 | |
|             <th data-field="name" data-sortable="true" data-align="left">公司名称</th>
 | |
|             <th data-field="legal" data-width="200" data-sortable="true" data-align="center">法人代表</th>
 | |
|             <th data-field="id" data-width="60" data-sortable="true" data-align="center">ID</th>
 | |
|         </tr>
 | |
|         </thead>
 | |
|     </table>
 | |
| </div>
 | |
| 
 | |
| <script>
 | |
| 
 | |
| function statusFormatter(value) {
 | |
|     if(value == 0) {
 | |
|         return '<span style="color:red">停用</span>';
 | |
|     }
 | |
|     if(value == 1) {
 | |
|         return '正常';
 | |
|     }
 | |
| }
 | |
| 
 | |
| (function($) {
 | |
| 
 | |
|     var $table = $('#logistics-dialog');
 | |
|     var params = {{json_encode($query)}};
 | |
|     var sid    = params.prefix == 1 ? 'sid' : 'id';
 | |
| 
 | |
|     var selected = {};
 | |
| 
 | |
|     function getSelected()
 | |
|     {
 | |
|         selected = {};
 | |
| 
 | |
|         var id   = $('#'+params.id).val();
 | |
|         var text = $('#'+params.id+'_text').val();
 | |
| 
 | |
|         if(id == '') {
 | |
|             return;
 | |
|         }
 | |
| 
 | |
|         id   = id.split(',');
 | |
|         text = text.split(',');
 | |
|         for (var i = 0; i < id.length; i++) {
 | |
|             selected[id[i]] = text[i];
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     function setSelected() {
 | |
| 
 | |
|         var id   = [];
 | |
|         var text = [];
 | |
| 
 | |
|         $.each(selected, function(k, v) {
 | |
|             id.push(k);
 | |
|             text.push(v);
 | |
|         })
 | |
| 
 | |
|         $('#'+params.id).val(id.join(','));
 | |
|         $('#'+params.id+'_text').val(text.join(','));
 | |
|     }
 | |
| 
 | |
|     function setRow(row)
 | |
|     {
 | |
|         if(params.multi == 0) {
 | |
|             selected = {};
 | |
|         }
 | |
|         selected[row[sid]] = row.name;
 | |
|         setSelected();
 | |
|     }
 | |
| 
 | |
|     function unsetRow(row)
 | |
|     {
 | |
|         $.each(selected, function(id) {
 | |
|             if(id == row[sid]) {
 | |
|                 delete selected[id];
 | |
|             }
 | |
|         });
 | |
|         setSelected();
 | |
|     }
 | |
| 
 | |
|     $table.bootstrapTable({
 | |
|         iconSize: 'sm',
 | |
|         singleSelect: params.multi == 1 ? 0 : 1,
 | |
|         clickToSelect: true,
 | |
|         method: 'post',
 | |
|         url: '{{url()}}',
 | |
|         height: 380,
 | |
|         sidePagination: 'server',
 | |
|         pagination: true,
 | |
|         onLoadSuccess: function(res) {
 | |
| 
 | |
|             getSelected();
 | |
| 
 | |
|             $.each(selected, function(j) {
 | |
|                 for (var i = 0; i < res.data.length; i++) {
 | |
|                     if(res.data[i][sid] == j) {
 | |
|                         $table.bootstrapTable('check', i);
 | |
|                    }
 | |
|                 }
 | |
|             });
 | |
|         },
 | |
|         onDblClickRow: function(row) {
 | |
|             setRow(row);
 | |
|             $('#modal-dialog-user').dialog('close');
 | |
|         },
 | |
|         onCheck: function(row) {
 | |
|             setRow(row);
 | |
|         },
 | |
|         onUncheck: function(row) {
 | |
|             unsetRow(row);
 | |
|         },
 | |
|         onCheckAll: function(rows) {
 | |
|             for (var i = 0; i < rows.length; i++) {
 | |
|                 setRow(rows[i]);
 | |
|             }
 | |
|         },
 | |
|         onUncheckAll: function(rows) {
 | |
|             for (var i = 0; i < rows.length; i++) {
 | |
|                 unsetRow(rows[i]);
 | |
|             }
 | |
|         }
 | |
|     });
 | |
|     
 | |
|     var data = {{json_encode($search['forms'])}};
 | |
|     var search = $('#search-form').searchForm({
 | |
|         data: data,
 | |
|         init: function(e) {
 | |
|             var self = this;
 | |
|         }
 | |
|     });
 | |
| 
 | |
|     search.find('#search-submit').on('click', function() {
 | |
|         var params = search.serializeArray();
 | |
|         $.map(params, function(row) {
 | |
|             data[row.name] = row.value;
 | |
|         });
 | |
|         $table.bootstrapTable('refresh', {
 | |
|             url:app.url('order/logistics/dialog', data)
 | |
|         });
 | |
|         return false;
 | |
|     });
 | |
| })(jQuery);
 | |
| </script> |