# SDK+web service方式集成
# 确定栏目数据
栏目中的数据由首页应用来确定
需要提供的接口:
1、数据列表抽取接口,该接口用来获取栏目显示的数据;
2、数据总数统计接口,该接口用来显示栏目数据的总数(如果需求显示数据总数)。
# 栏目解析类开发
1.Package:com.seeyon.ctp.portal.section
2.解析类需要继承抽象类:com.seeyon.ctp.portal.section.BaseSectionImpl
3.Demo类示例
public class DemoSection extends BaseSectionImpl {
@Override
public String getId() {
//栏目ID,必须与spring配置文件中的ID相同;如果是原栏目改造,请尽量保持与原栏目ID一致
return "demoSection";
}
@Override
public String getName(Map preference) {
//栏目显示的名字,必须实现国际化,在栏目属性的“columnsName”中存储
String name = preference.get("columnsName");
if(Strings.isBlank(name)){
return "demoSection";
}else{
return name;
}
}
@Override
public Integer getTotal(Map preference) {
//栏目需要展现总数据条数时重写
return null;
}
@Override
public String getIcon() {
// 栏目图标,暂不需要实现
return null;
}
@Override
public BaseSectionTemplete projection(Map preference) {
//栏目解析主方法
HtmlTemplete ht = new HtmlTemplete();
StringBuilder html = new StringBuilder();
html.append("
DemoSection");
ht.setHeight("230");
ht.setHtml(html.toString());
ht.setModel(HtmlTemplete.ModelType.inner);
ht.setShowBottomButton(true);
ht.addBottomButton(BaseSectionTemplete.BOTTOM_BUTTON_LABEL_MORE, "javascript:alert('ok');");
return ht;
}
}
# 栏目解析类配置
1.编写好的栏目类需要在对应的插件Spring配置文件夹进行Spring注册配置。
2.约定栏目的Spring文件命名为spring-xxxx-section.xml xxxx为插件Id。
3.栏目属性对照表
属性名 | 值域 | 描述 |
---|---|---|
sectionType | common, //常用栏目 timeManagement, //时间管理 publicInformation, //公共信息 doc, //文档栏目 formbizconfigs, //表单栏目 forum, //扩展栏目 | 栏目类型,空间选择栏目时栏目的分类由该属性决定 |
sectionCategory | plan | 栏目类型中的分类:常用、计划... |
spaceTypes | Constants.SpaceType中枚举的类型 | 允许添加该栏目的空间类型 |
resourceBundle | 示例:com.seeyon.v3x.main.resources.i18n.MainResources | 国际化绑定来源,已废弃 |
properties | List | 栏目编辑属性 |
4.空间类型
/**
* 空间类型,顺序不可改变
*/
public static enum SpaceType {
/**
* 0 个性化个人空间
*/
personal, //0
/**
* 部门空间
*/
department, //1
/**
* 单位空间
*/
corporation, //2
/**
* 集团空间
*/
group, //3
/**
* 自定义团队空间
*/
custom, //4
//默认的空间
/**
* 默认个人空间
*/
Default_personal, //5
//@Deprecated
/**
* 默认部门空间
*/
Default_department, //6
@Deprecated
Default_custom, //7
/**
* 第三方系统
*/
thirdparty, //8
/**
* 默认领导空间
*/
default_leader,//9
/**
* 个性化领导空间
*/
leader,//10
/**
* 关联系统
*/
related_system,//11
/**
* 关联项目
*/
related_project,//12
/**
* 自定义个人空间
*/
Default_personal_custom,//13
/**
* 默认外部人员空间
*/
Default_out_personal,//14
/**
* 个性化个人自定义空间
*/
personal_custom,//15
/**
* 个性化外部人员空间
*/
outer,//16
/**
* 自定义单位空间
*/
public_custom,//17
/**
* 自定义集团空间
*/
public_custom_group,//18
//二级主页空间
/**
* 协同工作
*/
cooperation_work,//19 协同工作
/**
* 目标管理
*/
objective_manage,//20 目标管理
/**
* 公文管理
*/
edoc_manage,//21 公文管理
/**
* 会议管理
*/
meeting_manage,//22 会议管理
/**
* 协同驾驶舱
*/
performance_analysis,//23 协同驾驶舱
/**
* 空间模板的默认空模板类型,不是空间类型,内部使用
*/
template,//空间模板的默认空模板类型,不作为空间类型使用
/**
* 表单应用
*/
form_application,//25 表单应用
//end
}
5.Demo栏目配置示例
<bean id="demoSection" class="com.seeyon.ctp.portal.section.DemoSection" init-method="init">
<property name="sectionType" value="common" />
<property name="sortId" value="99" />
</bean>
6.栏目模板列表
模板类 | 描述 |
---|---|
CalendarFourColumnTemplete | 日程事件的四列模板:标题 开始时间 结束时间 状态 |
ChessboardTemplete | 棋盘式 * 左边小图标(默认1616)+右边标题 * 上边大图标(默认3232)+下边标题 * 标题可以有浮动菜单 |
ChessMultiRowThreeColumnTemplete | 棋盘式 、3列 |
HtmlTemplete | 直接输出HTML代码片断 |
MonthCalendarTemplate | 月历式栏目 |
MoveMultiRowThreeColumnTemplete | 多行3列滚动式 |
MultiIconCategoryItem | 多行的,图标,分类,文本的展现形式 * 图表是32px * 32px的,在左边,右边的上面是分类(Category),下面是若干个项 |
MultiRowFourColumnTemplete | 多行3列模板,依次是:subject createDate createMemberName category |
MultiRowThreeColumnTemplete | 多行3列模板,依次是:subject createDate category |
MultiRowVariableColumnTemplete | 成倍行,不定列 模板 * 适用于 三或四列标准列表模板满足不了需要的情况下* 可以自定义列数、宽度、单元格样式、链接地址 |
MultiSubjectSummary | 多行的,显示标题和摘要,常用新闻、公告 |
OneImageAndListTemplete | 图片加列表模板 * 第一列为图片居左 右边为标题加摘要 * 下面为列表 * 列表内容为 * 标题 发起时间 所属板块 * 列表参数可配置 |
OneItemUseTwoRowTemplete | 两行展现一项 模板 * 适用于 如集团空间调查栏目 * 第1行 标题,另起一行 发布时间和类型 |
OnePictureTemplete | 图片滚动式 |
OneSummaryAndMultiList | 显示模式:一条显示为“标题+时间+(类别)+摘要”,下面是若干行列表 |
PictureTemplete | 图片基础模板 |
PictureTitleAndBriefTemplete | 标题加摘要的新闻模板 |
创建人:lichaoj