CIS-framework之如何运行一个新程序

背景:已经按cis层次结构构建好了一个新的解决方案并且已经成功部署了该服务,如EMR。

疑问:当构建好并部署成功这个新服务后,如何运行新程序呢?

1.首先,将当前程序信息添加到【系统_应用程序表】里,表结构及添加后的数据如下 :

clip_image001

22222

2.配置好程序信息后,添加当前应用程序的权限用户并配置权限,主要操作【系统_权限信息表】、【系统_权限操作员对应表】、【系统_操作员表

clip_image004

3333333

clip_image007

--1.添加应用程序信息
INSERT INTO [EFHISMZ].[dbo].[系统_应用程序表]
([程序ID]
,[程序名称]
,[程序代码]
,[程序类型]
,[开发公司]
,[应用程序主页]
,[输入码]
,[输入码]
,[排序]
,[程序图标]
,[操作员ID]
,[操作时间]
,[状态]
,[权限ID])
VALUES
('C75E5E8F-57FC-4C1B-BF08-269EA147525C'
,'CIS维护'
,'CISWH'
,NULL
,'上海易可思复高数码科技有限公司'
,NULL
,'CISWH'
,NULL
,0
,NULL
,0
,Getdate()
,0
,1000)
--2.添加该应用程序对应的权限信息
INSERT INTO [EFHISMZ].[dbo].[系统_权限信息表]
([权限id]
,[权限类型]
,[权限名称]
,[权限说明]
,[状态]
,[二次认证标志]
,[输入码]
,[相互认证标志]
,[分类]
,[排序])
VALUES
('1000'
,'系统'
,'APPCIS维护'
,'APP CIS维护的使用权限'
,0
,0
,'CISWH'
,0
,'程序'
,NULL)
-3.添加操作员与该应用程序的权限信息
INSERT INTO [EFHISMZ].[dbo].[系统_权限操作员对应]
([权限id]
,[操作员id]
,[有效时间]
,[授权类型]
,[参数])
VALUES
('1000'
,1
,dateadd(year,20,getdate())
,0
,NULL)

 

3.经过这几步设置后,登陆后就能看到当前用户权限内应用程序的轮盘了。

clip_image008

4.选择住院EMR进入程序常驻界面,由于我们没有注册EMR的菜单项,所以菜单栏是空白的。要注册菜单项,需要操作【系统_菜单信息表】,表结构及新增加的数据如下图

clip_image009

4444444

添加菜单信息时,首先添加一个“RibbonPageGroup”的菜单类型用来做子菜单的父容器,添加子菜单时,需要指定该子菜单的父菜单ID、菜单类型(如“BarButtonItem”)等,为了能响应子菜单的点击事件,需要设置命名空间类名,用来反射调用该子菜单关联的主窗体,如下图。

clip_image012

通过代码挂菜单的方法如下:

public List<MenuEntity> GetMenuList() 
        { 
            List<MenuEntity> l_menuEntity = new List<MenuEntity>(); 
            //诊疗 
            l_menuEntity.Add(EFFuncRegister.AddMenu(AppID, HostNamespace, "9958464D-6C57-4CBA-8E12-04E573ADB2A4", "0", "诊疗", EnumRibbon按钮类型.RibbonPageGroup, EnumRibbon按钮风格.Large, 1, 0, "", "", "GFC5KH63", "门诊医生站")); 
            l_menuEntity.Add(EFFuncRegister.AddMenu(AppID, HostNamespace, "5F9A84DD-37F4-4445-8DBB-5789520FCD8E", "9958464D-6C57-4CBA-8E12-04E573ADB2A4", "门诊病人", EnumRibbon按钮类型.BarButtonItem, EnumRibbon按钮风格.Large, 28, 2, "fm选择病人", "A", "A2RW2N8W", "门诊医生站")); 
            l_menuEntity.Add(EFFuncRegister.AddMenu(AppID, HostNamespace, "0609909A-2AC7-4E68-A06A-31C8DC706612", "9958464D-6C57-4CBA-8E12-04E573ADB2A4", "特殊病人", EnumRibbon按钮类型.BarButtonItem, EnumRibbon按钮风格.Large, 31, 3, "fm选择病人", "B", "Q0K3TTNO", "门诊医生站")); 
            l_menuEntity.Add(EFFuncRegister.AddMenu(AppID, HostNamespace, "3091ECC6-27EF-47A1-9D50-BEC5FFC496AD", "9958464D-6C57-4CBA-8E12-04E573ADB2A4", "查询药品", EnumRibbon按钮类型.BarButtonItem, EnumRibbon按钮风格.Large, 203, 4, "fm选择药品", "K", "UN55JKA9", "门诊医生站")); 
            //处方操作 
            l_menuEntity.Add(EFFuncRegister.AddMenu(AppID, HostNamespace, "54791224-5645-4BCD-99E9-61FE6B0A399F", "0", "处方操作", EnumRibbon按钮类型.RibbonPageGroup, EnumRibbon按钮风格.Large, 1, 1, "", "", "TT08TUQQ", "门诊医生站")); 
            l_menuEntity.Add(EFFuncRegister.AddMenu(AppID, HostNamespace, "2C60F1F5-39FB-48E8-A829-D3799041E603", "54791224-5645-4BCD-99E9-61FE6B0A399F", "退药申请", EnumRibbon按钮类型.BarButtonItem, EnumRibbon按钮风格.Large, 179, 4, "fm退药申请", "C", "QSF5SSPT", "门诊医生站")); 
            l_menuEntity.Add(EFFuncRegister.AddMenu(AppID, HostNamespace, "6FA22885-6400-41BC-9EC1-09F46BDAF012", "54791224-5645-4BCD-99E9-61FE6B0A399F", "门诊退方", EnumRibbon按钮类型.BarButtonItem, EnumRibbon按钮风格.Large, 71, 5, "fm门诊退方", "D", "NJQWANDV", "门诊医生站")); 
            l_menuEntity.Add(EFFuncRegister.AddMenu(AppID, HostNamespace, "1FEA1952-FA4C-4B78-8C31-8C8BD3A7C991", "54791224-5645-4BCD-99E9-61FE6B0A399F", "退药审核", EnumRibbon按钮类型.BarButtonItem, EnumRibbon按钮风格.Large, 20, 6, "fm退药审核", "F", "5TME7KG5", "门诊医生站")); 
            //统计 
            l_menuEntity.Add(EFFuncRegister.AddMenu(AppID, HostNamespace, "8D84EA36-752D-48DD-8657-34D491384879", "0", "统计", EnumRibbon按钮类型.RibbonPageGroup, EnumRibbon按钮风格.Large, 1, 2, "", "", "CSHFBIU7", "门诊医生站")); 
            l_menuEntity.Add(EFFuncRegister.AddMenu(AppID, HostNamespace, "9E48A940-BFA1-4CF9-A9A2-903FC6958589", "8D84EA36-752D-48DD-8657-34D491384879", "查询统计", EnumRibbon按钮类型.BarButtonItem, EnumRibbon按钮风格.Large, 26, 7, "fm查询统计", "F", "WMP77STT", "门诊医生站")); 
            l_menuEntity.Add(EFFuncRegister.AddMenu(AppID, HostNamespace, "6C904DC8-7DD3-4C01-BB44-6E1225FCC990", "8D84EA36-752D-48DD-8657-34D491384879", "门诊日志", EnumRibbon按钮类型.BarButtonItem, EnumRibbon按钮风格.Large, 9, 8, "fm门诊日志", "G", "GBA3O6LY", "门诊医生站")); 
            //模板维护 
            l_menuEntity.Add(EFFuncRegister.AddMenu(AppID, HostNamespace, "F89D3968-6595-46B7-92EB-EB6626D627D6", "0", "模板维护", EnumRibbon按钮类型.RibbonPageGroup, EnumRibbon按钮风格.Large, 1, 3, "", "", "V0TFBVAE", "门诊医生站")); 
            l_menuEntity.Add(EFFuncRegister.AddMenu(AppID, HostNamespace, "F8FAA1E2-248F-4204-8C3D-416339469DFC", "F89D3968-6595-46B7-92EB-EB6626D627D6", "诊断别名", EnumRibbon按钮类型.BarButtonItem, EnumRibbon按钮风格.Large, 242, 9, "fm诊断别名", "H", "DI52M94T", "门诊医生站")); 
            return l_menuEntity; 
        }

clip_image013

posted @ 2013-02-22 15:35  CisQA  阅读(270)  评论(0编辑  收藏  举报