page.jsp
3.89 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="com.weaver.formmodel.mobile.ui.model.AppHomepage"%>
<%@ page import="com.weaver.formmodel.mobile.ui.manager.MobileAppHomepageManager"%>
<%@ page import="com.weaver.formmodel.mobile.ui.manager.MobiledeviceManager"%>
<%@ page import="com.weaver.formmodel.mobile.types.ClientType"%>
<%@ page import="com.weaver.formmodel.mobile.utils.MobileCommonUtil"%>
<%@ page import="net.sf.json.JSONObject"%>
<%@ page import="com.weaver.formmodel.mobile.mec.MECManager"%>
<%@ page import="com.api.mobilemode.constant.LayoutRightType" %>
<%@ include file="./base.jsp"%>
<%
int appid = Util.getIntValue(request.getParameter("appid"), -1);
int appHomepageId = Util.getIntValue(request.getParameter("appHomepageId"), -1);
int istab = Util.getIntValue(request.getParameter("istab"), -1);
ClientType clienttype = MobileCommonUtil.getClientType(request);
int mobiledeviceid = MobiledeviceManager.getInstance().getDeviceByClienttype(clienttype);
AppHomepage appHomepage;
if(appHomepageId != -1){
appHomepage = MobileAppHomepageManager.getInstance().getAppHomepage(appHomepageId, mobiledeviceid);
appid = appHomepage.getAppid();
}else if(appid != -1){
appHomepage = MobileAppHomepageManager.getInstance().getAppHomepageByAppid(appid, mobiledeviceid);
appHomepageId = appHomepage.getId();
}else{
out.println("没有指定页面id");
return;
}
//判断是否有权限
int right = 0;
int uitype = Util.getIntValue(appHomepage.getUitype(), -1);
int modeid = Util.getIntValue(Util.null2String(appHomepage.getModelid()), -1);
String billid = Util.null2String(request.getParameter("billid"));
boolean hasPermission = true;
if(uitype != -1 && !MobileCommonUtil.isBillidForThumbnail(billid)){
right = MobileAppHomepageManager.getInstance().getAppHomepageRightInfo(uitype, modeid, billid, user);
hasPermission = right > LayoutRightType.NO_RIGHT.getLevel();
}
String noPermissionLabel = MobileCommonUtil.getHtmlLabelName(388918, user.getLanguage(), "无权限访问");
String pageName = Util.null2String(appHomepage.getPagename());
String pageContent = Util.null2String(appHomepage.getPageContent());
String pageid = "page_" + new Date().getTime() + "_" + appid + "_" + appHomepageId;
String pageContentId = pageid + "_content";
String pageScrollId = pageid + "_scroller";
String pageKey = UUID.randomUUID().toString().replaceAll("-", "");
//页面插件列表
List<Map<String, Object>> components = MECManager.getComponentsWithContent(pageContent, true);
Map<String, String> pageParam = new HashMap<String, String>();
Enumeration<String> pNames = request.getParameterNames();
while(pNames.hasMoreElements()){
String pName = pNames.nextElement();
String pValue = request.getParameter(pName);
pageParam.put(pName, pValue);
}
pageParam.put("pageKey", pageKey);
String pageclass = istab == 1 ? "tabpanel" : "page";
String dataform = istab == 1 ? "show_hide" : "";
%>
<% if(hasPermission){%>
<div id="<%=pageid %>" data-title="<%=pageName %>" class="<%=pageclass %> out" data-onpagefirstinto="pageInit" data-form="<%=dataform%>">
<script type="text/javascript">__meta__.pageParams["<%=pageid %>"] = <%=JSONObject.fromObject(pageParam)%>;</script>
<div class="page-header"></div>
<div class="page-content" id="<%=pageContentId %>">
<div class="page-scroller" id="<%=pageScrollId %>">
<%for(Map<String, Object> c : components){%>
<abbr id="<%=c.get("id") %>" data-type="<%=c.get("type") %>"></abbr>
<%}%>
</div>
</div>
<div class="page-footer"></div>
</div>
<% } else { %>
<div id="<%=pageid %>" data-title="<%=pageName %>" class="<%=pageclass %> out" data-onpagefirstinto="pageInit" data-form="<%=dataform%>">
<script type="text/javascript">__meta__.pageParams["<%=pageid %>"] = <%=JSONObject.fromObject(pageParam)%>;</script>
<div class="page-tip page-tip-show page-forbidden" data-title="<%=noPermissionLabel%>"></div>
<div class="page-header"></div>
<div class="page-footer"></div>
</div>
<% }%>