1. 功能介绍

    提供通用的方式实现各类数据转化,如编码与名称的转换、参数编码与参数描述的转换,日期转换,金额转换等。

  2. 静态参数转换

    1. 代码写法:
      <span
      	jwcid="@Insert"
      	value="ognl:@com.linkage.component.util.Utility@getStaticValue(page, 'SCHEDULE_SCHESTATUS', info.SCHE_STATUS)"
      	raw="true"
      />
      
    2. 静态参数翻译分两种情况,公用参数表(TD_S_STATIC)和专用参数表(如TD_S_BRAND等)
    3. @表示调用com.linkage.component.util.Utility类中的getStaticValue方法,调用的方法必须是静态方法
      参数一:page为tapestry的内置变量
      参数二:'COM_SCHEDULE_STATUS'为TD_S_STATIC表中定义的TYPE_ID
      参数三:根据该参数值可以得到参数表中对应的DATA_NAME值
    4. 公用参数表直接写TYPE_ID即可,而为了识别专用参数表,需要加上#以示区别,如#td_s_brand
    5. 公用参数表根据TD_S_STATIC表中的TYPE_ID,DATA_ID获取对应的DATA_NAME,公用参数表的TYPE_ID命名规则为表名(去掉下滑线) + ‘_’ + 列名(去掉下滑线),如TF_F_CUSTOMER.CUST_TYPE,对应的TYPE_ID为CUSTOMER_CUSTTYPE
  3. 按表主键获取指定列值(根据表名,主键名,主键值获取指定列名的值)

    1. 代码写法:
      <span
      	jwcid="@Insert"
      	value="ognl:@com.linkage.component.util.Utility@getStaticValue(page, 'TD_M_STAFF', 'STAFF_ID', 'STAFF_NAME', info.SCHE_STAFF)" 
      	raw="true"
      />
      
    2. 静态参数翻译分两种情况,公用参数表(TD_S_STATIC)和专用参数表(如TD_S_BRAND等)
    3. 根据员工表(TD_M_STAFF),主键列名(STAFF_ID),主键值,获取员工名称
      参数一:表名(员工表)
      参数二:列名(员工ID)
      参数三:列名(员工名称)
      参数四:员工ID值
  4. 日期时间格式化

    1. 代码写法:
      <span
      	jwcid="@Insert" value="ognl:@com.linkage.component.util.Utility@decodeTimestamp('yyyy-MM-dd HH:mm', info.SCHE_CRTIME)"
      	raw="true"
      />
      
    2. 格式化时间,yyyy-MM-dd HH:mm是时间格式
  5. 数字格式化

    1. 代码写法:
      <span
      	jwcid="@Insert" value="ognl:@com.linkage.component.util.Utility@formatDecimal ('0.00', info.SCHE_DOUBLE)"
      	raw="true"
      />
      
    2. 将数据格式化成带两位小数的数字,0.00是数字格式
  6. 注意事项

    1. 按表主键获取指定列值时,如果是用在表格或者循环中,翻译的表名必须配置在ehcache.xml中,详情参看缓存配置。