homeTab.jsp 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241
  1. <!-- update-start--Author:jg_renjie Date:20160315 for:配合首页改造,引入portal引入portal组件 -->
  2. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
  3. <%@include file="/context/mytags.jsp"%>
  4. <!DOCTYPE html >
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7. <title>首页</title>
  8. <c:if test="${show == '1'}">
  9. <t:base type="jquery,easyui"></t:base>
  10. <script type="text/javascript" src="plug-in/easyui/portal/jquery.portal.js"></script>
  11. <link rel="stylesheet" type="text/css" href="plug-in/easyui/portal/portal.css">
  12. </c:if>
  13. <!-- add-begin--Author:jg_renjie Date:20150610 for:今天需要提醒的【系统信息】 -->
  14. <script type="text/javascript" src="plug-in/login/js/getMsgs.js"></script>
  15. <!-- add-begin--Author:jg_renjie Date:20150610 for:今天需要提醒的【系统信息】 -->
  16. <script type="text/javascript" src="plug-in/Highcharts-2.2.5/js/highcharts.src.js"></script>
  17. <script type="text/javascript" src="plug-in/Highcharts-2.2.5/js/modules/exporting.src.js"></script>
  18. </head>
  19. <div id="main_portal" style="height:100%;">
  20. <div></div>
  21. <div></div>
  22. </div>
  23. <div style="display: none">
  24. <div id="p1" title="JEECG简介" collapsible="true">
  25. <div title="JEECG简介" collapsible="true" closable="flase" style="height:350px;" >
  26. <div style="margin-top: 14px;">
  27. <h3>简介</h3>
  28. <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JEECG(J2EE Code Generation)是一款基于代码生成器的智能快速开发平台,引领新开发模式(智能开发\在线开发\插件开发), 可以帮助解决Java项目80%的重复工作,让开发更多关注业务逻辑。既能快速提高开发效率,帮助公司节省人力成本,同时又不失灵活性。 <br>
  29. &nbsp;&nbsp;&nbsp;&nbsp;JEECG快速开发宗旨是:简单功能由代码生成器生成使用; 复杂业务采用表单自定义,业务流程使用工作流来实现、扩展出任务接口,供开发编写业务逻辑。 实现了流程任务节点和任务接口的灵活配置,既保证了公司流程的保密性,又减少了开发人员的工作量</p>
  30. <h3>架构说明</h3>
  31. <ul>
  32. <li>JEECG开发平台采用SpringMVC+MiniDao+UI快速开发库+ OnlineCoding开发组件 的基础架构,采用面向声明的开发模式, 基于泛型编写极少代码即可实现复杂的数据展示、数据编辑、<br>
  33. 表单处理等功能,再配合代码生成器的使用,将J2EE的开发效率提高6倍以上,可以将代码减少60%以上。</li>
  34. <li>JEECG_<font color="red">v3.6 </font>最新版十二大技术点: <b>1.代码生成器</b> <b>2.用户权限</b> <b>3.Online在线开发</b> <b>简易Excel导入导出</b> <b>5.查询过滤器</b> <b>6.UI标签库</b> <b>7.国际化</b> <b>8.多数据源</b> <b>9.自定义表单</b> <b>10.在线报表配置</b> <b>11.系统日志监控</b> <b>12.首页风格切换</b></li>
  35. <li>技术点一:代码生成器,支持多种数据模型,根据表生成对应的Entity,Service,Dao,Action,JSP等,增删改查功能生成直接使用</li>
  36. <li>技术点二:基础用户权限,强大数据权限,支持精细化数据权限控制,控制到行级,列表级,表单字段级,实现不同人看不同数据,不同人对同一个页面操作不同字段</li>
  37. <li>技术点三:Online在线开发,通过在线配置实现表模型的增删改查功能,零代码,支持用户自定义表单风格</li>
  38. <li>技术点四:简易Excel导入导出,支持单表导出和一对多表模式导出,生成的代码自带导入导出功能</li>
  39. <li>技术点五:查询过滤器,查询功能自动生成,后台动态拼SQL追加查询条件;支持多种匹配方式(全匹配/模糊查询/包含查询/不匹配查询) </li>
  40. <li>技术点六:UI标签库,针对WEB UI进行标准封装,页面统一采用UI标签实现功能:数据datagrid,表单校验,Popup,Tab等,实现JSP页面零JS,开发维护非常高效</li>
  41. <li>技术点七:国际化,支持多语言,多语言系统切换</li>
  42. <li>技术点八:多数据源,在线配置数据源,数据源工作封装,简易调用其他系统数据</li>
  43. <li>技术点九:自定义表单<font color="red">new</font>,支持表单自定义,个性化布局,独有的设计模式,可以灵活实现复杂表单实现</li>
  44. <li>技术点十:在线报表配置,无需编码,通过在线配置方式,实现曲线图,柱状图,数据等报表</li>
  45. <li>技术点十一:系统日志监控,详细记录操作日志,可支持追查表修改日志</li>
  46. <li>技术点十二:首页风格切换,支持自定义首页风格(经典风格、Shortcut风格、ACE bootstrap风格、云桌面风格)</li>
  47. <li>JEECG 开发平台,经过专业性能压力测试,保证后台数据的准确性和页面访问速度</li>
  48. <li>支持多种浏览器: IE, 火狐, Google 等浏览器访问速度都很快</li>
  49. <li>支持数据库: Mysql,Oracle11g,SqlServer、Postgresql等</li>
  50. <li>基础权限: 用户,角色,菜单权限,按钮权限,数据权限</li>
  51. <li>智能报表集成: 简易的图像报表工具和Excel导入导出</li>
  52. <li>Web容器测试通过的有Jetty和Tomcat6等</li>
  53. <li>微信管家项目,请下载<a href="http://www.jeewx.com" target="_blank" style="color: red">Jeewx</a>,Jeecg 业务产品</li>
  54. <li>要求JDK1.6+</li>
  55. </ul>
  56. </div>
  57. <div style="margin-top: 20px;">
  58. <h3>技术交流</h3>
  59. <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;本系统由JEECG开源社区提供,JEECG智能快速开发平台,永久开源免费,为大家提供最好的<b>企业二次开发平台</b></p>
  60. <ul>
  61. <li>作 者 :JEECG开源社区</li>
  62. <li>邮 箱 :jeecg@sina.com</li>
  63. <li>官 网 :<a href="http://www.jeecg.org" target="_blank">www.jeecg.org</a></li>
  64. <li>QQ 群: 106838471, 106259349, 289782002</li>
  65. <li><a href="http://www.jeecg.org/forum.php?mod=viewthread&tid=1834&extra=page%3D1" target="_blank" style="color: red"> >>更多商业支持,请联系官方</a></li>
  66. </ul>
  67. </div>
  68. </div>
  69. <div id="p2" title="系统提醒">
  70. <div class="easyui-layout" fit="true">
  71. <div region="center" style="padding:0px;border:0px;">
  72. <t:datagrid name="noticeList" title="common.notice" actionUrl="noticeController.do?datagrid" idField="id" fit="true" sortName="createTime" sortOrder="desc">
  73. <t:dgCol title="编号" field="id" hidden="true"></t:dgCol>
  74. <t:dgCol title="状态" field="isRead" width="40" replace="已读_1,未读_0"></t:dgCol>
  75. <t:dgCol title="标题" field="noticeTitle" width="120"></t:dgCol>
  76. <t:dgCol title="时间" field="createTime" formatter="YYYY-MM-dd" width="80"></t:dgCol>
  77. <t:dgCol title="common.operation" field="opt"></t:dgCol>
  78. <t:dgFunOpt funname="doRead(id,isRead)" title="common.read"></t:dgFunOpt>
  79. </t:datagrid>
  80. </div>
  81. </div>
  82. </div>
  83. <div id="p3">
  84. </div>
  85. <div id="p4">
  86. </div>
  87. </div>
  88. <script type="text/javascript">
  89. $("#main_portal").css("height","100%");
  90. var mainPortal;
  91. $(function() {
  92. mainPanels =new Array();
  93. //if($("#p1").length==1){
  94. mainPanels.push({
  95. id : 'p1',
  96. title : 'JEECG简介',
  97. height : 300,
  98. collapsible : true
  99. });
  100. //};
  101. //if($("#p2").length==1){
  102. mainPanels.push({
  103. id : 'p2',
  104. title : '系统提醒',
  105. height : 300,
  106. collapsible : true,
  107. tools:[{
  108. iconCls:'icon-search',
  109. handler:function(){
  110. //MUI.openCenterTab('部门公告','affiche/dept/load/my.do?rel=gtpt_bmgg','gtpt_bmgg',false,true)
  111. }
  112. }
  113. ]
  114. });
  115. //};
  116. //if($("#p3").length==1){
  117. mainPanels.push({
  118. id : 'p3',
  119. title : '用户分析',
  120. height : 290,
  121. collapsible : true,
  122. //href: 'logController.do?userBroswer&reportType=line',
  123. tools:[{
  124. iconCls:'icon-search',
  125. handler:function(){
  126. //MUI.openCenterTab('我的会议','meeting/loadtome.do?rel=ggpt_hygl','ggpt_hygl',false,true)
  127. }
  128. }
  129. ]
  130. });
  131. //};
  132. //if($("#p4").length==1){
  133. mainPanels.push({
  134. id : 'p4',
  135. title : '系统信息',
  136. height : 290,
  137. collapsible : true,
  138. //href: 'tSSmsController.do?getSysInfos',
  139. tools:[{
  140. iconCls:'icon-search',
  141. handler:function(){
  142. // MUI.openCenterTab('新闻','news/load_news.do?rel=grbg_xw','grbg_xw',false,true)
  143. }
  144. }
  145. ]
  146. });
  147. //};
  148. mainPortal = $('#main_portal').portal({
  149. border : false,
  150. fit : true,
  151. onStateChange : function() {
  152. $.cookie('portal-state', getPortalState(),{expires:7});
  153. }
  154. });
  155. var state = $.cookie('portal-state');
  156. if (!state) {
  157. state = 'p1,p3,:p2,p4';/*冒号代表列,逗号代表行*/
  158. }
  159. addPortalPanels(state);
  160. mainPortal.portal('resize');
  161. $.post(
  162. 'logController.do?userBroswer&reportType=line',
  163. function(data){
  164. $("#p3").html(data);
  165. }
  166. );
  167. $.post(
  168. 'tSSmsController.do?getSysInfos',
  169. function(data){
  170. var show = '${show}',html='';
  171. if(show == '0'){
  172. var REG_BODY = /<body[^>]*>([\s\S]*)<\/body>/,content='';
  173. var result = REG_BODY.exec(data);
  174. if(result && result.length === 2){
  175. content = result[1];
  176. }
  177. html = content;
  178. } else {
  179. html = data;
  180. }
  181. $("#p4").html(html);
  182. }
  183. );
  184. });
  185. function getPanelOptions(id) {
  186. for ( var i = 0; i < mainPanels.length; i++) {
  187. if (mainPanels[i].id == id) {
  188. return mainPanels[i];
  189. }
  190. }
  191. return undefined;
  192. }
  193. function getPortalState() {
  194. var aa = [];
  195. for ( var columnIndex = 0; columnIndex < 2; columnIndex++) {
  196. var cc = [];
  197. var panels = mainPortal.portal('getPanels', columnIndex);
  198. for ( var i = 0; i < panels.length; i++) {
  199. cc.push(panels[i].attr('id'));
  200. }
  201. aa.push(cc.join(','));
  202. }
  203. return aa.join(':');
  204. }
  205. function addPortalPanels(portalState) {
  206. var columns = portalState.split(':');
  207. for ( var columnIndex = 0; columnIndex < columns.length; columnIndex++) {
  208. var cc = columns[columnIndex].split(',');
  209. for ( var j = 0; j < cc.length; j++) {
  210. var options = getPanelOptions(cc[j]);
  211. if (options) {
  212. var p=$("#"+options.id);
  213. if(p.length>0){
  214. p.panel(options);
  215. mainPortal.portal('add', {
  216. panel : p,
  217. columnIndex : columnIndex
  218. });
  219. }
  220. }
  221. }
  222. }
  223. }
  224. //-->
  225. </script>
  226. <!-- update-end--Author:jg_renjie Date:20160315 for:配合首页改造,引入portal组件 -->