一、 H3 BPM部件介绍

H3_V9.0门户功能主要由两部分功能组成:前台展示和后台管理;

1. 前台展示

前台展示参考sharepoint部件管理,用于将用户添加的webpart部件在页面上进行展示;如图1

wKioL1jd9gKyPLJ3AACocNTdyJk576.png-wh_50 

1 门户界面

1.1 展现模式

前台展现模式有两种,当以管理员账号登陆时,模块管理提供浏览和设计两种模式。浏览模式用于展现部件内容;设计模式用于部件设计,此模式下提供部件的增加、删除、属性设置、顺序调整功能。见图2、图3;普通用户只有浏览模式。

wKiom1jd9g-RN_siAADANiA7aBQ531.png-wh_50 

2 浏览模式

wKioL1jd9h_CgyqVAAC1-XT4N8Q402.png-wh_50 

3 设计模式

1.2 设计模式

1.2.1 属性设置

部件属性设置包括两部分,公有属性和私有属性。

公有属性是所有部件都具有的属性,如标题、宽度和高度等,用于控制部件在首页上显示的外观,见图4。公有属性元数据在后台管理系统配置。

wKiom1jd9i2QsRGcAAC98AK4U0U112.png-wh_50 

4 公有属性

私有属性即为各部件所独有的属性,主要用于控制部件在首页上显示的内容,见图5。私有属性元数据来源于XML文件(文件位于portal/webparts/ot/..目录下,..代表具体webpart部件文件夹),同样也可以通过后台管理系统进行设置;

wKiom1jd9juzUfk3AACq3AvDxIU418.png-wh_50 

5 私有属性

1.2.2 部件操作

部件操作主要包括部件的添加、删除、上移、下移(同一部件范围内)。

添加

点击添加按钮后,弹出部件类型选择界面,如图6.目前系统已提供了8种部件类型,后面将详细说明各部件类型用途及设置。

 wKioL1jd9prhtrxEAAEQoUbNUu8720.png-wh_50

6 部件选择

删除

删除叫简单,不叙。

上移

将部件的显示顺序向上调整一位,相应的原先的上一位部件向下移一位。

下移

将部件的显示顺序向下调整一位,相应的原先的下一位部件向上移一位。

1.3 部件说明

1.3.1 HTML部件

公有属性

wKiom1jd9tGygZqOAABf81HzyGc174.png-wh_50 

私有属性

wKioL1jd9t-gEVOGAACyZxRu6o0498.png-wh_50 

效果

wKiom1jd92vDgx8oAAAU_9rtPdY106.png-wh_50 

1.3.2 全文检索

公有属性

wKiom1jd93vhNGgJAABPHZGG3PM468.png-wh_50 

私有属性

wKioL1jd-ETSu1meAAA5Fc-82qc693.png-wh_50 

说明:查询提交页面为查询后台页面;

效果

 

wKioL1jd-IjDcjymAAC4Mu_5BCY705.png-wh_50 

1.3.3 Ascx控件(以待办任务为例)

公共属性

wKiom1jd-JrzFzaTAAAjy0Itxus211.png-wh_50 

私有属性

wKiom1jd-QLyBm8qAAAfsjh-XTs401.png-wh_50 

效果

wKioL1jd-Q6xTARPAADbDruLdLg961.png-wh_50 

1.3.4 菜单(以首页导航栏为例)

公有属性

wKioL1jd-aSD2rFPAABScpuO6XQ874.png-wh_50 

说明:因首页导航栏只显示菜单项,因而未设置标题;

私有属性

wKioL1jd-bOhtpDJAAB-KFiwNvQ727.png-wh_50 

效果

 wKiom1jd-frBlQiWAAAWI91xB4A293.png-wh_50

1.3.5 用户搜索

公有属性

wKiom1jd-oiz43-lAABcIRlDKHI358.png-wh_50 

私有属性

wKiom1jd-r6hHIAUAABfPQbf4Ts751.png-wh_50 

效果

wKioL1jd-tjTTnrqAAB6DHWDSfY540.png-wh_50 

1.3.6 数据模型

公有属性

 wKioL1jd-w_w6e0IAABcjE38OpU045.png-wh_50

私有属性

wKioL1jd-x6iTiApAACWytQ-Ry8757.png-wh_50 

效果

wKiom1jd-zCzO5cZAADr3L_5kMI068.png-wh_50 

1.3.7 文档模型

公有属性

wKiom1jd-0ySI9JXAABPuRzpdC0966.png-wh_50 

私有属性

wKiom1jd-1mSDU7_AACc7akQPW0911.png-wh_50 

效果

wKiom1jd-2WTuyB8AABHwx0yYTc060.png-wh_50 

1.3.8 图片数据模型

公有属性

wKioL1jd-3Gg7dQqAABaHmQnvEw641.png-wh_50 

说明:当动态展示图像时,不需要显示部件标题,因而未设置标题;

私有属性

wKiom1jd-3_B5zVPAACDIknKFgg060.png-wh_50 

效果

wKioL1jd-5KzEd8zAACDIknKFgg777.png-wh_50 

2. 后台管理

后台管理页面内容见下图:

wKioL1jd-5-jr2PFAAFt2Bv6U3k378.png-wh_50 

门户管理下设模板管理、部件管理、部件公共属性、页面管理及新建页面功能。

1.1 模板管理

模板管理主要用于定义门户首页的页面框架;双击模板,对页面模板进行编辑,修改模板结构(现系统初始化时默认提供了一个页面模板,地址为/Portal/PageTemplate/Template.html);

点击添加模板,可以添加一个新的页面模板(可以添加多个模板,在前台以管理员账号登陆,点击“模板管理”-“切换模板”可以切换首页展示的页面模板)

wKioL1jd-6zS9U0hAABaomY6aoA711.png-wh_50 

1.2 部件管理

部件管理页面主要用于系统webpart部件的添加和编辑,系统默认提供了9种部件模板类型(模板类型元数据来源于/Portal/WebParts/OT/../webpart.xml,其中..号代表具体部件模板类型文件夹)。

wKioL1jd_BnB_ORDAABoiVzJSxM527.png-wh_50 

双击一种部件类型,弹出部件编辑界面,见下图

wKiom1jd_CrgQQeXAACPOquSwC4943.png-wh_50 

 

1.3 部件公共属性

部件公共属性页面用于管理所有部件共用的属性的CRUD操作,具体操作方式:

添加:点击“添加行”,列表框最下方产生一新行,填写相关内容后,保存则自动产生ID列值,代表添加已成功。

修改:选中任一待编辑行,点击“修改行”,修改相关值,保存完成修改;

删除:选中人一行,点击“删除行”删除选中行

wKiom1jd_DiQiaQ1AACq4ODEqEI843.png-wh_50 

1.4 页面管理

页面管理页面用于展示系统中已经存在的页面实例;页面的设计原则是每个部门可以拥有自己部门独立页面,当部门页面不存在时,默认采用公司页面,公司页面为系统初始化时自动生成(页面不同于页面模板,多个页面可以共用一个页面模板)

wKioL1jd_EfyD7IMAACaFvTgxHo974.png-wh_50 

1.5 新建页面

新建页面功能用于创建某个组织单位所独有的页面,如下图

wKiom1jd_WrQ6di0AAA_t_xa2nc824.png-wh_50 

 

 

3. 门户功能设计原理

门户功能设计原理如下:

1、 系统初始化时自动生成页面模板和页面的实例,该页面组织单位隶属于CompanyID,此时页面模板的html内容还没有初始化(因为页面模板存放地址为Protal

2、 第一次登录系统时,首先判断默认页面模板的Html内容是否已经初始化,如内容已存在,则跳过初始化工作,直接加在页面内容和页面上已经存在的部件实例;如未初始化则执行以下工作:

读取Template.Html内容,给默认页面模板HtmlContent字段赋值;

初始化部件模板类型,遍历/Portal/WebParts”文件夹下的部件实例子文件夹,根据文件夹下的“webpart.xml”文件内容实例化部件模板类型;

在实例化部件模板类型基础上,初始化若干部件实例,先系统初始化了如下部件实例:首页导航菜单、待办任务及全局检索;

3、 部件实例和页面的关系

系统初始化时初始化了一个页面实例,页面实例OrgIdCompanyId,初始化(或添加)具体部件实例时,需要设置实例关联的页面,初始化时部件实例关联页面PageIdGuid.Empty

4、 部件实例和部件模板实例关系(N:1

5、 部件实例加载原理:部件模板文件夹下一般存在如下两个个文件Setting.aspxView.ascxSetting负责设置部件实例属性值,存入数据库;而View.ascx控件负责控制部件实例的显示内容,具体细节如下

从数据库读取部件实例私有属性值;

通过反射机制,给View.ascx控件的相关属性复制;(后面要改)

View.ascx包装成一个UserControl,然后通过ViewContainer.ascx(存放地址/Portal/WebParts/)容器进行加载;

页面加载ViewContainer.ascx控件

 

二、 简单实例介绍

门户总览:

wKioL1jd_YXAB67hAAA32aV3VaQ974.png-wh_50 

wKiom1jeAWvCKALBAAH_IWVFIE8455.png-wh_50 

 

主要通过ascx部件、图片部件、数据模型部件。
以上效果图中没有使用数据模型部件,而是在这个部件的基础上修改后作为一个用户控件来使用的。

 

图片部件:

详细页面,图片附件自动转换成图片,且可以进行简单评论。

 

 

wKiom1jeAbvCb8u5AAGPG5-8x5A017.png-wh_50 

wKiom1jeAcnSBgDSAAJh3Pjafrk032.png-wh_50 

wKiom1jeAeHTG6biAAH3hMX5Yx4072.png-wh_50 

更多界面:

 

wKioL1jeAe-CggO-AAA5QtTRFzg141.png-wh_50 

 

 

 

 

附上配置的截图:

wKioL1jeAf6SQnuwAABfJn3KAFM228.png-wh_50 

链接:CusPages/ShowDetails.aspx?BizObjectID={ObjectID}&IsAll=true

 

 

wKiom1jeAg3w33o7AABhW4LigOw115.png-wh_50 

 

链接:

CusPages/NewsView.aspx?Type=TZGG&FunctionCode=TZGGView