ext中gridpanel中一列显示多个值(list集合中的值)

这里用具体的一个例子说明:css

效果:java

其中中奖的状况列中,一条记录能够有几种的中奖的状况:数据库

后台的java代码:app

page.setResult(customerMapper.selectCustomerList(page));
        page.setTotalCount(customerMapper.selectCustomerListCount(page));
        for(Customer c:page.getResult()){
            c.setUserName(userMapper.findUserNameById(c.getUserId()));
            List<Lottery> lotteries=lotteryMapper.findDrawByCusId(c.getId());
            if(!CheckUtil.isEmpty(lotteries.size())){
            for (int i=0;i<lotteries.size();i++) {
                Integer level=lotteries.get(i).getLevel();
                Integer drawType=lotteries.get(i).getDrawType();
                if (drawType==1) {
                switch (level){
                    case 1:
                        c.setMonthlyResult("月度一等奖");
                        break;
                    case 2:
                        c.setMonthlyResult("月度二等奖");
                        break;
                    case 3:
                        c.setMonthlyResult("月度三等奖");
                        break;
                }
              } else {
                    switch (level){
                        case 1:
                            c.setQuarterResult("季度一等奖");
                            break;
                        case 2:
                            c.setQuarterResult("季度二等奖");
                            break;
                        case 3:
                            c.setQuarterResult("季度三等奖");
                            break;
                    }
                }
                if (!CheckUtil.isEmpty(c.getMonthlyResult())&&CheckUtil.isEmpty(c.getQuarterResult())) {
                    c.setDrawResult(c.getMonthlyResult());
                } else if (CheckUtil.isEmpty(c.getMonthlyResult())&&!CheckUtil.isEmpty(c.getQuarterResult())) {
                    c.setDrawResult(c.getQuarterResult());
                } else {
                    c.setDrawResult(c.getMonthlyResult()+c.getQuarterResult());
                }
            }
          } else {
                c.setDrawResult("没有中奖");
            }
        }
        return page;

个人想法是这样的,先从数据库中查询list的集合,遍历这个集合,在Customer实体中,加三个属性,定义相应的get和set的方法,这里三个属性是:monthlyResult(月度中奖状况),quarterResult ( 季度中奖状况),drawResult(最终前台展现的中奖状况),这样的话,就能遍历循环出,每条记录的月度和季度状况,最后,字符串拼接一下就成了drawResult.spa

固然另外一种想法是在ext的js中,写js方法判断。code

顺便记录一下,要实现gridpanel中每一列数据自动换行,替换默认css就行:orm

.x-grid3-cell-inner{
    white-space:normal;
    overflow:visible;
}

这样,在gridpanel一列显示一个list数据问题就解决了。开发

后续有不少开发填坑的文章发布,若是对你有帮助,请支持和加关注一下字符串

http://e22a.com/h.05ApkG?cv=AAKHZXVo&sm=339944get

https://shop119727980.taobao.com/?spm=0.0.0.0 

相关文章
相关标签/搜索