package com.primeton.eos.fbframe.fbmetadata.metadata;
import java.util.*;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import com.primeton.tp.common.xml.XmlUtil;
/**
*@author wkq
* @version 1.0
* @date 2006-5-2
* @class_displayName FieldBean
* 这个类用于维护实体字段的元数据信息
*/
public class FieldBean implements Comparable {
public FieldBean()
{
}
/**
* 把字段元数据定义转换为XML节点对象
* @param e
*/
public void toXmlNode(Element e)
{
Document doc = e.getOwnerDocument();
Node n = doc.createElement("FIELDNAME");
XmlUtil.setNodeValue(n, FIELDNAME);
e.appendChild(n);
n = doc.createElement("ENTITYNAME");
XmlUtil.setNodeValue(n, ENTITYNAME);
e.appendChild(n);
n = doc.createElement("FK_TABLENAME");
XmlUtil.setNodeValue(n, FK_TABLENAME);
e.appendChild(n);
n = doc.createElement("FK_COLUMNNAME");
XmlUtil.setNodeValue(n, FK_COLUMNNAME);
e.appendChild(n);
n = doc.createElement("FK_FIELDDESC");
XmlUtil.setNodeValue(n, FK_FIELDDESC);
e.appendChild(n);
n = doc.createElement("COLUMNNAME");
XmlUtil.setNodeValue(n, COLUMNNAME);
e.appendChild(n);
n = doc.createElement("FIELDDESC");
XmlUtil.setNodeValue(n, FIELDDESC);
e.appendChild(n);
n = doc.createElement("DISPLAYORDER");
XmlUtil.setNodeValue(n, String.valueOf(DISPLAYORDER));
e.appendChild(n);
n = doc.createElement("FIELDTYPE");
XmlUtil.setNodeValue(n, FIELDTYPE);
e.appendChild(n);
n = doc.createElement("REFTYPE");
XmlUtil.setNodeValue(n, REFTYPE);
e.appendChild(n);
n = doc.createElement("CHECKBOXVALUE");
XmlUtil.setNodeValue(n, CHECKBOXVALUE);
e.appendChild(n);
n = doc.createElement("DOCLISTCODE");
XmlUtil.setNodeValue(n, DOCLISTCODE);
e.appendChild(n);
n = doc.createElement("DISPLAYFORMAT");
XmlUtil.setNodeValue(n, DISPLAYFORMAT);
e.appendChild(n);
n = doc.createElement("WIDTH");
XmlUtil.setNodeValue(n, String.valueOf(WIDTH));
e.appendChild(n);
n = doc.createElement("DEFAULTVALUE");
XmlUtil.setNodeValue(n, DEFAULTVALUE);
e.appendChild(n);
n = doc.createElement("MINVALUE");
if (MINVALUE != null)
XmlUtil.setNodeValue(n, MINVALUE.toString());
e.appendChild(n);
n = doc.createElement("MAXVALUE");
if (MAXVALUE != null)
XmlUtil.setNodeValue(n, MAXVALUE.toString());
e.appendChild(n);
n = doc.createElement("LENGTH");
XmlUtil.setNodeValue(n, String.valueOf(LENGTH));
e.appendChild(n);
n = doc.createElement("PRECISION");
XmlUtil.setNodeValue(n, String.valueOf(PRECISION));
e.appendChild(n);
n = doc.createElement("VALIDATETYPE");
XmlUtil.setNodeValue(n, VALIDATETYPE);
e.appendChild(n);
n = doc.createElement("ISMODIFY");
XmlUtil.setNodeValue(n, ISMODIFY);
e.appendChild(n);
n = doc.createElement("ISDISPLAY");
XmlUtil.setNodeValue(n, ISDISPLAY);
e.appendChild(n);
n = doc.createElement("ISPK");
XmlUtil.setNodeValue(n, ISPK);
e.appendChild(n);
n = doc.createElement("ISAUTOKEY");
XmlUtil.setNodeValue(n, ISAUTOKEY);
e.appendChild(n);
n = doc.createElement("ISLOCK");
XmlUtil.setNodeValue(n, ISLOCK);
e.appendChild(n);
n = doc.createElement("FK_INPUTURL");
XmlUtil.setNodeValue(n, FK_INPUTURL);
e.appendChild(n);
}
String FIELDNAME;
String ENTITYNAME;
String FK_TABLENAME;
String FK_COLUMNNAME;
String FK_FIELDDESC;
String FK_INPUTURL;
String DESC_FIELDNAME;
String COLUMNNAME;
String FIELDDESC;
int DISPLAYORDER;
String FIELDTYPE;
String REFTYPE;
String CHECKBOXVALUE;
String DOCLISTCODE;
String DISPLAYFORMAT;
int WIDTH;
String DEFAULTVALUE;
String MINVALUE;
String MAXVALUE;
int LENGTH;
int PRECISION;
String VALIDATETYPE;
String ISMODIFY;
String ISDISPLAY;
String ISINPUT;
String ISPK;
String ISAUTOKEY;
String ISLOCK;
FieldBean descField = null;
boolean isDesc = false;
public String getDataCellEditor() {
return getDataCellEditor(null, false);
}
/**
* 根据元数据定义输出字段对应的编辑器datacell的html文本,产生的数据形如:
* <td eos_displayname="生日" width="80" name="BIRTH" eos_isnull="true" format="yyyyMMdd" editor="calendarEditor"></td>
* <td eos_displayname="性别" width="80" name="SEX" eos_isnull="true" editor="CUST_SEX_select"></td>
* <td eos_displayname="地址" width="80" eos_maxsize="100" name="ADDRESS" eos_isnull="true" editor="textEditor"></td>
* 0 字符串
* 1 整数
* 2 小数
* 3 日期
* 4 日期时间
* 5 CHECKBOX
* 6 引用
* @param session sessionEntity
* @param isLock 是否为固定字段通常为表格最左边的标识列如编号,姓名等
* @return
*/
public String getDataCellEditor(Node session, boolean isLock)
{
StringBuffer buff = new StringBuffer("");
String lock = "";
if (isLock)
lock = "background:buttonface; border-bottom:1px solid buttonshadow; LEFT: expression(this.parentElement.offsetParent.parentElement.scrollLeft); POSITION: relative;";
int type = 0;
if (FIELDTYPE != null && !FIELDTYPE.equals(""))
type = Integer.parseInt(FIELDTYPE.trim());
buff.append("<td nowrap style=\"white-space: nowrap;").append(lock).append("\" name=\"").append(FIELDNAME).append("\"");
buff.append(" eos_displayname=\"").append(FIELDDESC).append("\"");
buff.append(" width=\"").append(WIDTH).append("\"");
if (notNull())
buff.append(" eos_isnull=\"false\"");
else
buff.append(" eos_isnull=\"true\"");
switch (type) {
case 3:
case 4:
buff.append(" editor=\"calendarEditor\"");
buff.append(" format=\"").append(DISPLAYFORMAT).append("\"");
break;
case 1:
buff.append(" editor=\"textEditor\"");
if (MAXVALUE == null || MAXVALUE.equals("") || MINVALUE == null || MINVALUE.equals(""))
buff.append(" eos_datatype=\"integer\"");
else {
buff.append(" eos_datatype=\"interval(");
if (MINVALUE == null || MINVALUE.equals(""))
buff.append("-");
else
buff.append(MINVALUE);
buff.append(",");
if (MAXVALUE == null || MAXVALUE.equals(""))
buff.append("+");
else
buff.append(MAXVALUE);
buff.append(")\"");
}
break;
case 5:
buff.append(" editor=\"checkBoxEditor(").append(CHECKBOXVALUE).append(")\"");
break;
case 2:
buff.append(" editor=\"textEditor\"");
buff.append(" eos_datatype=\"double(").append(LENGTH).append(",").append(PRECISION).append(")\"");
break;
case 6:
if (REFTYPE != null && REFTYPE.equals("0")) { // 引用类型是业务字典
buff.append(" editor=\"").append(FIELDNAME).append("_dict_select\"");
break;
}
default:
buff.append(" editor=\"textEditor\"");
buff.append(" eos_datatype=\"").append(VALIDATETYPE).append("\"");
buff.append(" eos_maxsize=\"").append(LENGTH).append("\"");
break;
}
if (DEFAULTVALUE != null && !DEFAULTVALUE.equals(""))
buff.append(" defaultValue=\"").append(DEFAULTVALUE).append("\"");
if (session != null) {
if (!isModify(session))
buff.append(" modify=\"false\"");
} else {
if (!isModify())
buff.append(" modify=\"false\"");
}
buff.append("></td>\n");
return buff.toString();
}
/**
* 输出字段对应的datacell的html文本
* @param session
* @param isLock
* @return
*/
public String getDataCellTableCell(Node session, boolean isLock)
{
StringBuffer td = new StringBuffer("");
String lock = "";
if (isLock)
lock = "background:buttonface; border-bottom:1px solid buttonshadow; LEFT: expression(this.parentElement.offsetParent.parentElement.scrollLeft); POSITION: relative;";
if (isFK()) { // 如果是外键引用的字段
if (hasDescField()) { //表中包含了当前字段的描述字段
td.append(getDescField().getDataCellEditor(session, isLock));
if (isModify(session)
没有合适的资源?快使用搜索试试~ 我知道了~
MES项目实例
共2000个文件
xml:1020个
jsp:990个
bzg:962个
2星 需积分: 50 68 下载量 146 浏览量
2011-11-17
20:48:04
上传
评论 3
收藏 13.87MB RAR 举报
温馨提示
MES项目,基于制造业信息化的MES项目实例
资源详情
资源评论
资源推荐
收起资源包目录
MES项目实例 (2000个子文件)
main.css 6KB
main.css 6KB
main.css 6KB
main.css 6KB
ListView.css 5KB
ListView.css 5KB
ListView.css 5KB
ListView.css 5KB
style.css 4KB
style.css 4KB
dropmenu.css 3KB
dropmenu.css 3KB
tab.css 1KB
tab.css 1KB
dl_frmTabPageTitle.htm 2KB
dl_frmTabPageTitle.htm 2KB
hd_main.htm 402B
hd_main.htm 402B
tool_mid.html 1KB
tool_mid.html 1KB
tool_mid.html 1KB
tool_mid.html 1KB
Copyright.html 971B
Copyright.html 971B
Copyright.html 831B
Copyright.html 831B
FieldBean.java 24KB
OMServiceImpl2.java 20KB
MetaDataBizlet.java 17KB
EntityBean.java 14KB
orgManager.java 14KB
MetaDataSet.java 13KB
MenuManager.java 10KB
DAOUtility.java 10KB
GetTheConfigTime.java 8KB
UploadLayoutServlet.java 8KB
BL_getWeekInfo.java 8KB
FbFrameConfig.java 7KB
GlobalCheckedResourceManager.java 6KB
SessionCheckedResourceManager.java 5KB
EOSRequest.java 5KB
RoleManager.java 4KB
SecurityManager.java 3KB
DropUserTableViewServlet.java 2KB
getDateOfMonth.java 2KB
ListOperation.java 2KB
RoleEntity.java 2KB
DatabaseUtil.java 2KB
BaseOperation.java 2KB
FbMenuItem.java 2KB
RoleField.java 2KB
FbConfigManager.java 1KB
EOSDefaultPasswordCryptImpl.java 1KB
BaseOperation.java 1KB
GlobalCheckedBizsManager.java 1KB
GlobalCheckedJspsManager.java 1KB
GlobalCheckedPrsManager.java 1KB
PasswordCrypt.java 929B
LDAPAuthFactory.java 925B
PasswordCryptFactory.java 850B
EOSDefaultOpenLDAPImpl.java 641B
Util.java 574B
LDAPAuth.java 434B
ddd.js 36KB
ddd.js 36KB
rtree.js 36KB
rtree.js 36KB
TabControl.js 22KB
TabControl.js 22KB
dropmenu.js 18KB
dropmenu.js 18KB
hiddensubmit.js 9KB
hiddensubmit.js 9KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
AC_RunActiveContent.js 8KB
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
qikunpengandbianyuan
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论3