jeesite框架使用

                     以下都是本人使用jeesite框架随手记录的笔记,有错误的地方欢迎大家指出来,共同进步!!!

1.字典工具  DictUtils.java
  1.1:根据类型和值获取字典标签(列表取值)
          ${@DictUtils.getDictLabel('字典类型',jiaAoSaleClientInfo.clientType,'未知')}
          js.getDictLabel(${@DictUtils.getDictListJson('jia_ao_client_blacklist_status')}, val, '${text("未设置")}', true);
2.前端提示用js.showMessage();

3.详情界面时间转换使用${jiaAoSaleSample.createDate,dateFormat="yyyy-MM-dd HH:mm"}

4.添加btnTool样式  即可返回先前界面  比如列表界面:class="btn btn-default btn-sm btnTool"

5.进入列表页面直接显示查询框可以去除hide样式实现,如下
    之前:<#form:form id="searchForm" model="${jiaAoSaleClientBlacklist}" action="${ctx}/blacklist/jiaAoSaleClientBlacklist/listData" method="post" class="form-inline hide"
    修改后:<#form:form id="searchForm" model="${jiaAoSaleClientBlacklist}" action="${ctx}/blacklist/jiaAoSaleClientBlacklist/listData" method="post" class="form-inline"

6.给下拉框默认第一个添加空值可以通过设置属性
    blankOption="true"

7.列表时间转换{header:'${text("创建时间")}', name:'createDate', index:'a.create_date', width:80, align:"center", frozen:true 

8.jeesite列表分页查询可以不设置临时自定义字段  只要数据库查询字段起别名和bean类字段属性一样就可以映射上 例如:
    private JiaAoSaleClientInfo clientInfo;    //客户信息实体类
    sql起别名:     ci.client_name 'clientInfo.client_name'    //这样就能拿到客户名称自动映射进客户实体类

9.jeesite接收前端传过来的json数组进行转换成对应实体类(jar包:com.alibaba.fastjson.JSONArray)
    //用json数组保存前端json字符串
    JSONArray array= JSONObject.parseArray("这里接收一个字符串数组");
    //遍历数组进行转换
    for (int i=0;i<array.size();i++){
        JSONObject jsonObject=array.getJSONObject(i);
        JiaAoSalePlanDetail detail=jsonObject.toJavaObject(JiaAoSalePlanDetail.class);
    }
10.jeesite添加class="btnList"样式自带默认跳转  属于a标签专用样式(需注意)

11.传json数组给后台 前端ajax请求为POST  为GET报错400(待验证求解)
    
12.前端写ajax时添加contentType: "application/json; charset=utf-8", 属性会导致值注入不到实体类  目前仅限于传json数组使用

13.java中的增强for循环和迭代器在遍历时不允许对该遍历的对象进行添加和删除操作  否则将抛出ConcurrentModificationException异常

14.layer.open方式不能传json格式数据给后台解析,可以通过主界面设置隐藏域,子界面获取主界面隐藏域值发起ajax请求解析,(注意:如果单纯是一个json字符串不需要通过JSON.stringify方法保存到隐藏域)

15.return  js.formatNumber(val, 2, false, ''); // 数值类型格式化 (原始数值, 小数位数, 是否千分位, 默认值,金额情况下设置0.00);

16.子表列表格式化日期
    {header:'${text("创建时间")}', name:'createDate', index:'a.create_date', width:80, align:"center", frozen:true,formatter:'date', formatoptions:{srcformat:'Y-m-d',newformat:'Y-m-d'}},

17.dataGrid数据可以通过以下方式加载
    <#form:form id="searchForm" model="${buyPlanStore}" action="${ctx}/warehouse/planin/buyPlanStore/listData" method="post" class="form-inline"
            data-page-no="${parameter.pageNo}" data-page-size="${parameter.pageSize}" data-order-by="${parameter.orderBy}">

18.dataGrid里的字段如果设置为hidden  后台是获取不到值的  只能通过只读显示后台方可获取到值

19.dataGrid添加复选框给 dataGrid 组件设置属性 showCheckbox: true 显示复选框
    2、调用 getSelectRow 获取选中行    var planClearingIds = $('#dkpDataGrid').dataGrid('getSelectRows').join(",");

20.layer弹窗获取弹窗对象 var childPage = layero.find("iframe")[0].contentWindow;//子页面对象

21.FastJson将字符串转换未java数组对象
    //将键值对方式排列的字符串形式的json数组解析为java数组对象。
        List<JiaAoQcReservedSample> reservedSampleList=JSONArray.parseArray(reservedSampleStr,JiaAoQcReservedSample.class);

22.mybatis字符串拼接写法
    <if test="startTime != null and startTime != ''">
            <![CDATA[ and a.create_date  >=  #{startTime}  ]]>
        </if>

23.input提示信息  输入时消失
    <input placeholder="提示语..."></input>  

25. jeesite表连接注解写法
    joinTable = {    
        @JoinTable(type = JoinTable.Type.LEFT_JOIN, entity = User.class, attrName = "itsSalesUser", alias = "su",
                on = "a.its_sales = su.user_code", columns = {
                @Column(name = "user_code", label = "用户编码", isPK = true),
                @Column(name = "user_name", label = "用户名称", isQuery = false),
                @Column(name = "ref_name", label = "用户类型引用姓名"),
        })},

26.页面获取当前登录人信息
    var userCode="${@UserUtils.getUser().getUserCode()}";

27.dataGrid去除排序
    sortable:false,

28.单选框默认选中
    $(document).ready(function () {
        $("#testRadio1").parent().addClass("checked");
    });

29.mybatis in查询写法
    <foreach collection="orderId.orderCodeList" index="index" item="item" open="(" separator="," close=")">
        '${item}'        
    </foreach>

30.jQuery判断元素是否存在class
    var flag=$("#approvalPending").hasClass("bottom");

31.获取dataGrid列表复选框选中的行 (排除全选之外)
    //获取子表复选框选中的值
        var trs=$("input[type=checkbox]:checked").not("#cb_financeConfirmationDetailsDataGrid").parent().parent();

32.导出列表
//导出
    1.导出事件
    $('#btnExport').click(function(){
        js.ajaxSubmitForm($('#searchForm'), {
            url:'${ctx}/confirmation/financeReceivableConfirmation/exportData',
            downloadFile:true
        });
    });
    
    2.controller
        /**
     * 导出
     * @param storeProductInDetail
     * @param isAll
     * @param ctrlPermi
     * @param response
     */
    @RequiresPermissions({"confirmation:financeReceivableConfirmation:edit"})
    @RequestMapping({"exportData"})
    public void exportData(FinanceConfirmationDetails financeConfirmationDetails, Boolean isAll, String ctrlPermi, HttpServletResponse response) {
        List<FinanceConfirmationDetails> list = this.financeReceivableConfirmationService.findListPage(financeConfirmationDetails).getList();
        String fileName = "应收款询证函列表" + DateUtils.getDate("yyyyMMddHHmmss") + ".xlsx";
        ExcelExport ee = new ExcelExport("应收款询证函列表", FinanceCompanyBank.class);
        Throwable var8 = null;
        try {
            ee.setDataList(list).write(response, fileName);
        } catch (Throwable var17) {
            var8 = var17;
            throw var17;
        } finally {
            if (ee != null) {
                if (var8 != null) {
                    try {
                        ee.close();
                    } catch (Throwable var16) {
                        var8.addSuppressed(var16);
                    }
                } else {
                    ee.close();
                }
            }

        }

    }


    
    3.bean类
    @ExcelFields({@ExcelField(
            title = "客户名称",
            attrName = "clientId.clientName",
            align = ExcelField.Align.CENTER,
            sort = 10
    ), @ExcelField(
            title = "联系人",
            attrName = "user.refName",
            align = ExcelField.Align.CENTER,
            sort = 30
    )

33.dataGrid去除默认的行点击事件
    beforeSelectRow: function (rowid, e) {//去除列点击事件
        var $myGrid = $(this),
                i = $.jgrid.getCellIndex($(e.target).closest('td')[0]),
                cm = $myGrid.jqGrid('getGridParam', 'colModel');
        return (cm[i].name === 'cb');
    } ,

34.jeesite标签页的使用
    
    <div class="tab-content" style="margin-top: 50px">
                    <div class="tab-pane active" id="tab-1">
                        <table id="ysFinancePaymentReceiptDetailDataGrid"></table>
                        <a href="#" id="ysFinancePaymentReceiptDetailDataGridAddRowBtn"  style="display: none;" class="btn btn-primary btn-sm mt10 mb10"><i class="fa fa-plus"></i> ${text('增行')}</a>
                    </div>
                    <div class="tab-pane" id="tab-2">
                        <div class="row">
                            <div class="col-xs-12">
                                <div class="form-group">
                                    <label class="control-label col-sm-2" title="">
                                        <span class="required hide">*</span>增加预收<i class="fa icon-question hide"></i></label>
                                    <div class="col-sm-4">
                                        <input id="advanceReceiptAmount" class="form-control" name="advanceReceiptAmount">
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>

35.dataGrid绑定事件
,dataEvents:[//绑定change事件
                        {
                            type:'change',
                            fn:function(){
                                setReceiptAmount();//设置应收金额
                            }
                        }
                    ]

36.获取dataGrid下的所有行,排除标题行
var trs=$("#jiaAoFinanceBadDebtDetailsDataGrid tbody tr").not("tr:first");


37.dataGrid列表input name属性变成dataGridlist[0]时   删除掉digits样式就可以了
 

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
众所周知,人工智能是当前最热门的话题之一, 计算机技术与互联网技术的快速发展更是将对人工智能的研究推向一个新的高潮。 人工智能是研究模拟和扩展人类智能的理论与方法及其应用的一门新兴技术科学。 作为人工智能核心研究领域之一的机器学习, 其研究动机是为了使计算机系统具有人的学习能力以实现人工智能。 那么, 什么是机器学习呢? 机器学习 (Machine Learning) 是对研究问题进行模型假设,利用计算机从训练数据中学习得到模型参数,并最终对数据进行预测和分析的一门学科。 机器学习的用途 机器学习是一种通用的数据处理技术,其包含了大量的学习算法。不同的学习算法在不同的行业及应用中能够表现出不同的性能和优势。目前,机器学习已成功地应用于下列领域: 互联网领域----语音识别、搜索引擎、语言翻译、垃圾邮件过滤、自然语言处理等 生物领域----基因序列分析、DNA 序列预测、蛋白质结构预测等 自动化领域----人脸识别、无人驾驶技术、图像处理、信号处理等 金融领域----证券市场分析、信用卡欺诈检测等 医学领域----疾病鉴别/诊断、流行病爆发预测等 刑侦领域----潜在犯罪识别与预测、模拟人工智能侦探等 新闻领域----新闻推荐系统等 游戏领域----游戏战略规划等 从上述所列举的应用可知,机器学习正在成为各行各业都会经常使用到的分析工具,尤其是在各领域数据量爆炸的今天,各行业都希望通过数据处理与分析手段,得到数据中有价值的信息,以便明确客户的需求和指引企业的发展。
众所周知,人工智能是当前最热门的话题之一, 计算机技术与互联网技术的快速发展更是将对人工智能的研究推向一个新的高潮。 人工智能是研究模拟和扩展人类智能的理论与方法及其应用的一门新兴技术科学。 作为人工智能核心研究领域之一的机器学习, 其研究动机是为了使计算机系统具有人的学习能力以实现人工智能。 那么, 什么是机器学习呢? 机器学习 (Machine Learning) 是对研究问题进行模型假设,利用计算机从训练数据中学习得到模型参数,并最终对数据进行预测和分析的一门学科。 机器学习的用途 机器学习是一种通用的数据处理技术,其包含了大量的学习算法。不同的学习算法在不同的行业及应用中能够表现出不同的性能和优势。目前,机器学习已成功地应用于下列领域: 互联网领域----语音识别、搜索引擎、语言翻译、垃圾邮件过滤、自然语言处理等 生物领域----基因序列分析、DNA 序列预测、蛋白质结构预测等 自动化领域----人脸识别、无人驾驶技术、图像处理、信号处理等 金融领域----证券市场分析、信用卡欺诈检测等 医学领域----疾病鉴别/诊断、流行病爆发预测等 刑侦领域----潜在犯罪识别与预测、模拟人工智能侦探等 新闻领域----新闻推荐系统等 游戏领域----游戏战略规划等 从上述所列举的应用可知,机器学习正在成为各行各业都会经常使用到的分析工具,尤其是在各领域数据量爆炸的今天,各行业都希望通过数据处理与分析手段,得到数据中有价值的信息,以便明确客户的需求和指引企业的发展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值