【仅供内部供应商使用,不提供对外解答和培训】

接口作用

以插件的形式提供二开自定义bi中的日期类型数据的格式化显示方式,以支持除已定义场景(中文,“/”,“-”)外的日期格式

接口内容

主要接口

DateFormatProvider
@Open
public interface DateFormatProvider extends Immutable {

    String XML_TAG = "DateFormatProvider";

    int CURRENT_LEVEL = 1;

    /**
     * 自定义仪表板的日期格式化
     *
     * @param group 日期分组
     * @param value 原始数据
     * @return 格式化后的日期
     */
    Object formatDashboardDate(int group, Object value);

    /**
     * 自定义数据集的日期格式化
     *
     * @param group 日期分组
     * @param value 原始数据
     * @return 格式化后的日期
     */
    Object formatTableDate(int group, Object value);
}

接口中的group类型说明:

// 年月日
YMD(0x5),
// 年
Y(0x6),
// 季度
S(0x7),
// 月份
M(0x8),
// 星期几
W(0x9),
// 每月中的第几天(1-31)
D(0xa),
// 周数 一年中第几周
WEEK_COUNT(0xc),
// 时
HOUR(0xd),
// 分
MINUTE(0xe),
// 秒
SECOND(0xf),
// 年季度 年+第几季度
YS(0x10),
// 年月份
YM(0x11),
// 年周数 年+第几周周数
YW(0x12),
// 年月日时
YMDH(0x13),
// 年月日时分
YMDHM(0x14),
// 年月日时分秒
YMDHMS(0x15),
// 月日
MONTH_DAY(0x30);


接口接入


<extra-core>
        <DateFormatProvider class="继承抽象类的子类路径"/>
</extra-core>


提供给插件的抽象类


AbstractDateFormatProvider
@API(level = DateFormatProvider.CURRENT_LEVEL)
public abstract class AbstractDateFormatProvider implements DateFormatProvider {

    @Override
    public int currentAPILevel() {
        return CURRENT_LEVEL;
    }

    @Override
    public int layerIndex() {
        return 0;
    }

}
  • No labels