easyui datagrid 列排序


1.js設置

//=====================數據加載=====================
/**
 * grid加載數據
 * 
 * @returns
 */
function gridLoad() {
    $('#t_goods').datagrid({
        idField : 'id', // 只要創建數據表格 就必須要加 ifField
        title : '標的列表',
        fit : true,
        url : parent.baseUrl+'goods',
//        url : '../file/uploadImg',
        method : 'GET',
        fitColumns : true,
        striped : true, // 隔行變色特性
        nowrap : false,
        loadMsg : '數據正在加載,請耐心的等待...',
        rownumbers : true,
        sortName : 'crtTime',
        sortOrder : 'desc',
        rowStyler : function(index, record) {
        },
        frozenColumns : [ [ // 凍結列特性 ,不要與fitColumns 特性一起使用
        {
            field : 'ck',
            width : 50,
            checkbox : true
        } ] ],
        columns : [ [ {
            field : 'goodsNo',
            title : '內部代碼',
            width : 80,
            sortable :true,
            align : 'center'
        }, {
            field : 'name',
            title : '標的名稱',
            width : 80,
            sortable :true,
            align : 'center'
        }, {
            field : 'plateNum',
            title : '車牌號',
            width : 80,
            sortable :true,
            align : 'center'
        },{
            field : 'firstTypeName',
            title : '標的類型',
            width : 50,
            sortable :true,
            align : 'center'
        }, {
            field : 'secondTypeName',
            title : '標的小類',
            width : 50,
            sortable :true,
            align : 'center'
        },{
            field : 'provinceItemName',
            title : '標的所在省',
            width : 50,
            sortable :true,
            align : 'center'
        }, {
            field : 'cityItemName',
            title : '標的所在市',
            width : 50,
            sortable :true,
            align : 'center'
        }, {
            field : 'qtyFact',
            title : '實收數量',
            width : 30,
            align : 'center'
        }, {
            field : 'unit',
            title : '計量單位',
            width : 25,
            align : 'center'
        }, {
            field : 'storage',
            title : '庫存',
            width : 50,
            align : 'center',
            formatter : storageFtt
        }, /*{
            field : 'announcement',
            title : '公告',
            width : 50,
            align : 'center',
            formatter : announcementFtt
        }, */{
            field : 'auction',
            title : '拍賣/變賣日志',
            width : 50,
            align : 'center',
            formatter : auctionFtt
        }, {
            field : 'crtTime',
            title : '創建時間',
            width : 60,
            sortable :true,
            align : 'center'
        }, {
            field : 'action',
            title : '操作',
            width : 80,
            align : 'center',
            formatter : actionFtt
        } ] ],
        onLoadSuccess:function(data){    
            if(top.checkHiddenSet("plateNumFlag")){    
                $("#t_goods").datagrid("hideColumn", "plateNum"); // 設置隱藏列    
            }    
        } ,  
        pagination : true,
        pageSize : 10,
        pageList : [ 5, 10, 15, 20, 50 ],
        toolbar : toolbarFtt()
    });
};

 

 

2.controller控制器代碼


    @RequestMapping(method = RequestMethod.GET, produces = { "application/json" })
    @ResponseBody
    public ListWithTotalCount<GoodsDTO> auctionGoodsQuery(@ModelAttribute("selectedAgency") SysAgencyDto selectedAgency,
            String goodsNo, String name, String goodsType, int page, int rows, String order, String sort) {
        Pageable pageable;
        String agencyId = selectedAgency.getId().toString();

        if (sort != null && !sort.isEmpty()) {
            pageable = new PageRequest(page - 1, rows, Direction.fromStringOrNull(order), sort);
        } else {
            pageable = new PageRequest(page - 1, rows);
        }

        if (logger.isDebugEnabled()) {
            logger.debug("auctionGoodsQuery, goodsNo: {}, name: {}, goodsType: {}", goodsNo, name, goodsType);
        }

        Specification<Goods> spec = (root, query, cb) -> {
            List<Predicate> predicates = new ArrayList<Predicate>();

            if (goodsNo != null && !goodsNo.isEmpty()) {
                Predicate predicate = cb.like(root.get(Goods_.goodsNo), "%" + goodsNo + "%");
                predicates.add(predicate);
            }

            if (name != null && !name.isEmpty()) {
                Predicate predicate = cb.like(root.get(Goods_.name), "%" + name + "%");
                predicates.add(predicate);
            }

            if (agencyId != null && !agencyId.isEmpty() && !"0".equals(agencyId)) {
                Predicate predicate = cb.equal(root.get(Goods_.agencyId), agencyId);
                predicates.add(predicate);
            }

            if (goodsType != null && !goodsType.isEmpty()) {
                Predicate predicateAuctionType = cb.like(root.get(Goods_.firstType).get(GoodsType_.name),
                        "%" + goodsType + "%");
                Predicate predicateAuctionSmlType = cb.like(root.get(Goods_.secondType).get(GoodsType_.name),
                        "%" + goodsType + "%");
                Predicate predicate = cb.or(new Predicate[] { predicateAuctionType, predicateAuctionSmlType });
                predicates.add(predicate);
            }

            if (!predicates.isEmpty()) {
                return cb.and(predicates.toArray(new Predicate[0]));
            } else {
                return null;
            }
        };

        Page<Goods> pageresult = goodsRepository.findAll(spec, pageable);
        List<GoodsDTO> dtoList = (new GoodsDTOAssembler()).toDTOList(pageresult.getContent());

        return new ListWithTotalCount<GoodsDTO>(dtoList, (int) pageresult.getTotalElements());
    }

 

3.頁面展示效果

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM