📄 viewgeneric.jsp
字号:
<%ModelRelation relation = entity.getRelation(relIndex);%>
<%ModelEntity relatedEntity = reader.getModelEntity(relation.getRelEntityName());%>
<%if("one".equals(relation.getType()) || "one-nofk".equals(relation.getType())) {%>
<%-- Start ModelRelation for <%=relation.relatedEjbName%>, type: one --%>
<%if (value != null) {%>
<%if (hasAllView || security.hasEntityPermission(relatedEntity.getPlainTableName(), "_VIEW", session)) {%>
<%-- GenericValue valueRelated = delegator.findByPrimaryKey(value.get<%=relation.keyMapUpperString("(), " + GenUtil.lowerFirstChar(entity.getEntityName()) + ".get", "()")%>); --%>
<%Iterator tempIter = UtilMisc.toIterator(value.getRelated(relation.getTitle() + relatedEntity.getEntityName()));%>
<%GenericValue valueRelated = null;%>
<%if (tempIter != null && tempIter.hasNext()) valueRelated = (GenericValue) tempIter.next();%>
<DIV id='area<%=relIndex+3%>' class='topcontainerhidden' width="100%">
<div class='areaheader'>
<b><%=relation.getTitle()%></b> Related Entity: <b><%=relatedEntity.getEntityName()%></b> with PK: <%=valueRelated!=null?valueRelated.getPrimaryKey().toString():"entity not found!"%>
</div>
<%
String findString = "entityName=" + relatedEntity.getEntityName();
for (int knum = 0; knum < relation.getKeyMapsSize(); knum++) {
ModelKeyMap keyMap = relation.getKeyMap(knum);
if (value.get(keyMap.getFieldName()) != null) {
findString += "&" + keyMap.getRelFieldName() + "=" + value.get(keyMap.getFieldName());
}
}
%>
<%if(valueRelated == null){%>
<%if(hasAllCreate || security.hasEntityPermission(relatedEntity.getPlainTableName(), "_CREATE", session)){%>
<a href='<ofbiz:url>/ViewGeneric?<%=findString%></ofbiz:url>' class="buttontext">[Create <%=relatedEntity.getEntityName()%>]</a>
<%}%>
<%}else{%>
<a href='<ofbiz:url>/ViewGeneric?<%=findString%></ofbiz:url>' class="buttontext">[View <%=relatedEntity.getEntityName()%>]</a>
<%}%>
<div style='width: 100%; overflow: visible; border-style: none;'>
<table border="0" cellspacing="2" cellpadding="2">
<%if (valueRelated == null) {%>
<tr class="<%=rowClass1%>"><td><b>Specified <%=relatedEntity.getEntityName()%> entity was not found.</b></td></tr>
<%} else {%>
<%for(int fnum = 0; fnum < relatedEntity.getFieldsSize(); fnum++) {%>
<%ModelField field = relatedEntity.getField(fnum);%>
<%ModelFieldType type = delegator.getEntityFieldType(entity, field.getType());%>
<%rowClass=(rowClass==rowClass1?rowClass2:rowClass1);%><tr class="<%=rowClass%>">
<td valign="top"><div class="tabletext"><b><%=field.getName()%></b></div></td>
<td valign="top">
<div class="tabletext">
<%if(type.getJavaType().equals("Timestamp") || type.getJavaType().equals("java.sql.Timestamp")){%>
<%java.sql.Timestamp dtVal = valueRelated.getTimestamp(field.getName());%>
<%=dtVal==null?"":dtVal.toString()%>
<%} else if(type.getJavaType().equals("Date") || type.getJavaType().equals("java.sql.Date")){%>
<%java.sql.Date dateVal = valueRelated.getDate(field.getName());%>
<%=dateVal==null?"":dateVal.toString()%>
<%} else if(type.getJavaType().equals("Time") || type.getJavaType().equals("java.sql.Time")){%>
<%java.sql.Time timeVal = valueRelated.getTime(field.getName());%>
<%=timeVal==null?"":timeVal.toString()%>
<%}else if(type.getJavaType().indexOf("Integer") >= 0){%>
<%=UtilFormatOut.safeToString((Integer)valueRelated.get(field.getName()))%>
<%}else if(type.getJavaType().indexOf("Long") >= 0){%>
<%=UtilFormatOut.safeToString((Long)valueRelated.get(field.getName()))%>
<%}else if(type.getJavaType().indexOf("Double") >= 0){%>
<%=UtilFormatOut.safeToString((Double)valueRelated.get(field.getName()))%>
<%}else if(type.getJavaType().indexOf("Float") >= 0){%>
<%=UtilFormatOut.safeToString((Float)valueRelated.get(field.getName()))%>
<%}else if(type.getJavaType().indexOf("String") >= 0){%>
<%=UtilFormatOut.checkNull((String)valueRelated.get(field.getName()))%>
<%}%>
</div>
</td>
</tr>
<%}%>
<%} //end if valueRelated == null %>
</table>
</div>
</div>
<%}%>
<%}%>
<%-- End ModelRelation for <%=relation.relatedEjbName%>, type: one --%>
<%}else if(relation.getType().equalsIgnoreCase("many")){%>
<%-- Start ModelRelation for <%=relation.relatedEjbName%>, type: many --%>
<%if(value != null){%>
<%if(hasAllView || security.hasEntityPermission(relatedEntity.getPlainTableName(), "_VIEW", session)){%>
<%-- Iterator relatedIterator = UtilMisc.toIterator(value.getRelated(relation.getTitle() + relatedEntity.getEntityName())); --%>
<DIV id=area<%=relIndex+3%> class='topcontainerhidden' width="100%">
<div class=areaheader>
<b><%=relation.getTitle()%></b> Related Entities: <b><%=relatedEntity.getEntityName()%></b> with
</div>
<%boolean relatedCreatePerm = hasAllCreate || security.hasEntityPermission(relatedEntity.getPlainTableName(), "_CREATE", session);%>
<%boolean relatedUpdatePerm = hasAllUpdate || security.hasEntityPermission(relatedEntity.getPlainTableName(), "_UPDATE", session);%>
<%boolean relatedDeletePerm = hasAllDelete || security.hasEntityPermission(relatedEntity.getPlainTableName(), "_DELETE", session);%>
<%
String rowClassResultHeader = "viewManyHeaderTR";
String rowClassResult1 = "viewManyTR1";
String rowClassResult2 = "viewManyTR2";
String rowClassResult = "";
%>
<%
String findString = "entityName=" + relatedEntity.getEntityName();
for (int knum = 0; knum < relation.getKeyMapsSize(); knum++) {
ModelKeyMap keyMap = relation.getKeyMap(knum);
if(value.get(keyMap.getFieldName()) != null) {
findString += "&" + keyMap.getRelFieldName() + "=" + value.get(keyMap.getFieldName());
}
}
%>
<%if(relatedCreatePerm){%>
<a href='<ofbiz:url>/ViewGeneric?<%=UtilFormatOut.encodeQuery(findString)%></ofbiz:url>' class="buttontext">[Create <%=relatedEntity.getEntityName()%>]</a>
<%}%>
<a href='<ofbiz:url>/FindGeneric?find=true&<%=UtilFormatOut.encodeQuery(findString)%></ofbiz:url>' class="buttontext">[Find <%=relatedEntity.getEntityName()%>]</a>
<%--
<div style='width:100%;overflow:visible;border-style:none;'>
<table width="100%" cellpadding="2" cellspacing="2" border="0">
<tr class="<%=rowClassResultHeader%>">
<%for(i=0;i<relatedEntity.fields.size();i++){%>
<td><div class="tabletext"><b><nobr><%=((ModelField)relatedEntity.fields.elementAt(i)).columnName%></nobr></b></div></td><%}%>
<td> </td>
<%if(relatedDeletePerm){%>
<td> </td>
<%}%>
</tr>
<%
int relatedLoopCount = 0;
if (relatedIterator != null && relatedIterator.hasNext()) {
while (relatedIterator != null && relatedIterator.hasNext()) {
relatedLoopCount++; //if(relatedLoopCount > 10) break;
<%=relatedEntity.getEntityName()%> valueRelated = (<%=relatedEntity.getEntityName()%>)relatedIterator.next();
if(valueRelated != null) {
%>
<%rowClassResult=(rowClassResult==rowClassResult1?rowClassResult2:rowClassResult1);%><tr class="<%=rowClassResult%>">
<%for (i=0;i<relatedEntity.fields.size();i++) {%>
<td>
<div class="tabletext"><%if(((ModelField)relatedEntity.fields.elementAt(i)).javaType.equals("Timestamp") || ((ModelField)relatedEntity.fields.elementAt(i)).javaType.equals("java.sql.Timestamp")){%>
<%{
String dateTimeString = null;
if (valueRelated != null) {
java.sql.Timestamp timeStamp = valueRelated.get<%=GenUtil.upperFirstChar(((ModelField)relatedEntity.fields.elementAt(i)).getFieldName())%>();
if (timeStamp != null) {
dateTimeString = timeStamp.toString();
}
}
%>
<%=UtilFormatOut.checkNull(dateString)%> <%=UtilFormatOut.checkNull(timeString)%>
<%}%><%} else if(((ModelField)relatedEntity.fields.elementAt(i)).javaType.equals("Date") || ((ModelField)relatedEntity.fields.elementAt(i)).javaType.equals("java.util.Date")) {%>
<%{
String dateString = null;
String timeString = null;
if (valueRelated != null) {
java.util.Date date = valueRelated.get<%=GenUtil.upperFirstChar(((ModelField)relatedEntity.fields.elementAt(i)).getFieldName())%>();
if (date != null) {
dateString = UtilDateTime.toDateString(date);
timeString = UtilDateTime.toTimeString(date);
}
}
%>
<%=UtilFormatOut.checkNull(dateString)%> <%=UtilFormatOut.checkNull(timeString)%>
<%}%><%}else if(((ModelField)relatedEntity.fields.elementAt(i)).javaType.indexOf("Integer") >= 0 || ((ModelField)relatedEntity.fields.elementAt(i)).javaType.indexOf("Long") >= 0 || ((ModelField)relatedEntity.fields.elementAt(i)).javaType.indexOf("Double") >= 0 || ((ModelField)relatedEntity.fields.elementAt(i)).javaType.indexOf("Float") >= 0){%>
<%=UtilFormatOut.safeToString(valueRelated.get<%=GenUtil.upperFirstChar(((ModelField)relatedEntity.fields.elementAt(i)).getFieldName())%>())%><%}else{%>
<%=UtilFormatOut.checkNull(valueRelated.get<%=GenUtil.upperFirstChar(((ModelField)relatedEntity.fields.elementAt(i)).getFieldName())%>())%><%}%>
</div>
</td>
<%}%>
<td>
<a href="<%=response.encodeURL(controlPath + "/View<%=relatedEntity.getEntityName()%>?" + <%=relatedEntity.httpArgListFromClass(relatedEntity.pks, "Related")%>)%>" class="buttontext">[View]</a>
</td>
<%if (relatedDeletePerm) {%>
<td>
<a href="<%=response.encodeURL(controlPath + "/Update<%=relatedEntity.getEntityName()%>?" + <%=relatedEntity.httpArgListFromClass(relatedEntity.pks, "Related")%> + "&" + <%=entity.httpArgList(entity.pks)%> + "&UPDATE_MODE=DELETE")%>" class="buttontext">[Delete]</a>
</td>
<%}%>
</tr>
<%}%>
<%}%>
<%} else {%>
<%rowClassResult=(rowClassResult==rowClassResult1?rowClassResult2:rowClassResult1);%><tr class="<%=rowClassResult%>">
<td colspan="<%=relatedEntity.fields.size() + 2%>">
<h3>No <%=relatedEntity.getEntityName()%>s Found.</h3>
</td>
</tr>
<%}%>
</table>
</div>
Displaying <%=relatedLoopCount%> entities.
--%>
</div>
<%}%>
<%}%>
<%-- End ModelRelation for <%=relation.relatedEjbName%>, type: many --%>
<%}%>
<%}%>
</div>
<%if ((hasUpdatePermission || hasCreatePermission) && !useValue) {%>
<SCRIPT language='JavaScript'>
ShowViewTab("edit");
</SCRIPT>
<%}%>
<br>
<%} else {%>
<h3>You do not have permission to view this page (<%=entity.getPlainTableName()%>_ADMIN, or <%=entity.getPlainTableName()%>_VIEW needed).</h3>
<%}%>
<%} catch (Exception e) { Debug.log(e); throw e;%><%}%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -