[jeeplus] 使用笔记 (gridSelect、datetimepicker etc.)

本贴最后更新于 2009 天前,其中的信息可能已经时过境迁

1.创建表单时,grid 选择框中给对应的字段做设置

image.png

image.png

2.生成代码后的 jsp 页面中查看检查。

image.png

image.png

3.最终展示:

image.png

image.png

1 操作
PeterChu 在 2019-05-24 14:59:26 更新了该帖

相关帖子

优质回帖
  • 88250 1

    现在回帖还没有纳入搜索系统,过段时间会把回帖也纳入进去,这样就好找了 🙏

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • PeterChu 2 评论
    作者

    问题:jeeplus 中想实现下拉多选功能要怎么实现?

    从字典取数据:

     <td class="active"><label class="pull-right">类型:</label></td>  
     <td>  
     <form:select path="employee.employeeType" class="form-control">  
         <form:options items="${fns:getDictList('employee_type')}" itemLabel="label"  itemValue="value" htmlEscape="false"/>  
         </form:select>  
    </td>
    

    这个是字典多选。
    这个是查询数据库的
    QQ 图片 20190626151006.png

    要在多选框中搜索的话 可以使用 select2 插件。

    大佬的回答,做下笔记。
    PeterChu
  • 其他回帖
  • PeterChu 1 评论
    作者

    Mysql 中对一个表中的字段进行汇总计算后 赋值给 其中一个字段

    如:招生计划表中,按照年份、省份、批次、文理科、学校 分组汇总后,将各专业招生计划数汇总后,赋值给该校该年度该批次该省份该文理科中的 招生计划总数。

    查询语句:

    
    SELECT
    	COUNT(zhaoshengjihua) AS jihuazongshu,
    	zhaoshengjihuazongshu,
    	shengfen,
    	nianfen,
    	wenlike,
    	pici,
    	daxuedaima,
    	daxuemingcheng
    FROM
    	d_zhaoshengjihuabiao
    GROUP BY
    	shengfen,
    	nianfen,
    	wenlike,
    	pici,
    	daxuedaima;
    
    

    image.png
    *zhaoshengjihuazongshu 字段中已经被赋值了,原来该字段中的值为空

    最开始写出的 sql 如下,但是完全不正确。

    
    
    UPDATE d_zhaoshengjihuabiao a
    SET a.zhaoshengjihuazongshu = (
    	SELECT
    		COUNT(b.zhaoshengjihua) AS b.cou,
    		b.shengfen,
    		b.nianfen,
    		b.wenlike,
    		b.pici,
    		b.daxuedaima
    	FROM
    		d_zhaoshengjihuabiao b
    	GROUP BY
    		b.shengfen,
    		b.nianfen,
    		b.wenlike,
    		b.pici,
    		b.daxuedaima
    )
    WHERE
    	b.shengfen = a.shengfen
    AND b.nianfen = a.nianfen
    AND b.wenlike = a.wenlike
    AND b.pici = a.pici
    AND b.daxuedaima = a.daxuedaima
    

    在网上搜索后,看到如下 2 条 sql 做为参考:

    -- 1
    UPDATE au_window_re_project aw
    SET aw.project_name = (
    	SELECT
    		ap.SERVICENAME
    	FROM
    		apas_service ap
    	WHERE
    		ap.unid = aw.PROJECT_ID
    )
    
    -- 2
    UPDATE test_user_points AS a
    LEFT JOIN (
    	SELECT
    		user_id,
    		sum(point) AS point_count
    	FROM
    		test_point_log
    	GROUP BY
    		user_id
    ) AS b ON a.user_id = b.user_id
    SET a.point_count = b.point_count
    

    最终参考第 2 条 SQL 写出如下语句,可以实现要求:

    
    UPDATE d_zhaoshengjihuabiao AS a
    LEFT JOIN (
    	SELECT
    		COUNT(zhaoshengjihua) AS cou,
    		shengfen,
    		nianfen,
    		wenlike,
    		pici,
    		daxuedaima
    	FROM
    		d_zhaoshengjihuabiao
    	GROUP BY
    		shengfen,
    		nianfen,
    		wenlike,
    		pici,
    		daxuedaima
    ) AS b ON (
    	a.shengfen = b.shengfen
    	AND a.wenlike = b.wenlike
    	AND a.nianfen = b.nianfen
    	AND a.pici = b.pici
    	AND a.daxuedaima = b.daxuedaima
    )
    SET a.zhaoshengjihuazongshu = b.cou ;
    
    最开始的 SQL 还不知道错在了哪里,应该是用子查询实现的呀
    PeterChu
  • PeterChu
    作者

    QQ 图片 20190514154645.png

    主附表的页面中的如果某个字段用了字典,那么页面上该怎么显示该字段呢。
    自动生成的页面的 Js 代码这块直接是 {{dict.name}},dict 没见到哪里定义、或者调用了字典,数据库中当然存的是字典的 value,而不是 name ;
    我之前的解决办法都是,存储的时候,直接存字典的 name 到数据库表中,这里显示的时候,就用 {row.name},怎么用其他方法呢


    2019-6-13 15:50:51
    找到解决办法:

    原因:js 中未对使用了字典的字段做处理。在 2.41 新版本中发现此处 js 中有处理方法。

    function detailFormatter(index, row) {
    	  var htmltpl =  $("#volunteerChildrenTpl").html().replace(/(\/\/\<!\-\-)|(\/\/\-\->)/g,"");
    	  var html = Mustache.render(htmltpl, {
    			idx:row.id
    		});
    	  $.get("${ctx}/volunteer/volunteerconfig/volunteer/detail?id="+row.id, function(volunteer){
        	  var volunteerChild1RowIdx = 0, volunteerChild1Tpl = $("#volunteerChild1Tpl").html().replace(/(\/\/\<!\-\-)|(\/\/\-\->)/g,"");
    		var data1 =  volunteer.volunteerConfigList;
    		for (var i=0; i<data1.length; i++){
    
                data1[i].dict = {};
                data1[i].dict.name = jp.getDictLabel(${fns:toJson(fns:getDictList('school_batches'))}, data1[i].name, "-");
    
    			addRow('#volunteerChild-'+row.id+'-1-List', volunteerChild1RowIdx, volunteerChild1Tpl, data1[i]);
    			volunteerChild1RowIdx = volunteerChild1RowIdx + 1;
    		}
    	
          })
            return html;
        }
    

    这样之后,下面

    <script type="text/template" id="volunteerChild1Tpl">
    				<tr>
    
    					<td>
                                                     {{row.dict.name}}
    					</td>
    					<td>
    						{{row.vindex}}
    					</td>
    					<td>
    						{{row.isArt}}
    					</td>
    					<td>
    						{{row.isAdvance}}
    					</td>
    					<td>
    						{{row.reportedStart}}
    					</td>
    					<td>
    						{{row.reportedEnd}}
    					</td>
    					<td>
    						{{row.raiseStart}}
    					</td>
    					<td>
    						{{row.raiseEnd}}
    					</td>
    					<td>
    						{{row.enrollStart}}
    					</td>
    					<td>
    						{{row.enrollEnd}}
    					</td>
    				</tr>
    	</script>
    

    中就可以直接使用 {{row.dict.name}},这样,页面中主附表的附表内该字段就会正常显示了。

    1 操作
    PeterChu 在 2019-06-13 15:55:15 更新了该回帖
  • PeterChu
    作者

    为 jp 工具添加自定义方法,实现 js 的 unicode 编码

    在 jeeplus.js 中的添加方法

    (function(){
    	jp = {
    
    	        /** 实现 unicode 编码 */
    	        toUnicode : function (s) {
    	            var str = "";
    	            for (var i = 0; i < s.length; i++) {
    	                str +="\\u"+('0000' + s.charCodeAt(i).toString(16)).slice(-4)+"";
    	            }
    	            return str;
    	        },	
    	}
    })(jQuery);
    

    实现效果:
    image.png

    需要注意的是:"\u0061\u0062\u0063" 中间需要转义字符:
    "\\u0061\\u0062\\u0063"

  • 查看全部回帖