前言

自接触IRIS以来在医院之中使用最多的是其作为一个ESB集成引擎来使用,作为医院的集成平台+数据中心中的一环。但是其也可以进行CRUD作为前后端分离项目的后端使用:

 

文章目录

前言

文章目录

一、开发技术和工具

二、开发路径和相关代码

       1.数据库

       2.准备工作

       3.开发接口的相关步骤

       4.成果展示

总结

 

本文章将以一个简单的页面展示IRIS的相关CRUD操作:

是的,我计划使用IRIS重构Production页面,先展示一下我开发完的成果吧:

呃の 好像是一毛一样,哈哈


一、开发技术和工具

工欲善其事,比先利其器:

后端:HealthConnect+Global
前端:vue

使用IRIS%CSP.REST开发的Rest API接口,前端使用vue简单的把接口相关内容展示,可以编辑、新增组件,控制production启动、停止、更新检测状态。

二、开发路径和相关代码

1.数据库

首先,我们找到Production的相关表,分别是:Ens_Config.Item Ens_Config.Production 如图所示:

所以代码的思路很明确了对Ens_Config.Item进行新增、删除、修改、查询操作对Ens_Config.Production进行查询操作。

2.准备工作

在正式开发之前我们得先做一些准备工作:比如开放网关

·        新建一个API类,如图所示:

·        进入HealthConnect管理页面:系统管理安全应用程序—Web应用程序,如图:

·        新建web应用程序,我定义的是 /api 代码中api管控的类为 BKIP.Rest.api

·        直接给一个【ALL】的角色

测试一下:

截至目前我们已经开放了第一个api接口,也为我们的程序开放了网关。

3.开发接口的相关步骤

       接口开发我习惯分为四步:定义实体类、组织SQL、编写方法接收结果集、组织返回,提供restful

(1)定义实体类

  • Production实体:Production
  • Production的组件实体:Items
  • (2)组织SQL(仅展示查询组件list

    此处我们需要动态SQL,代码里面是这样写的:

    (3)编写方法返回结果集

  • 对结果处理并返回的这个方法我是写在BO中:
  • BO写好之后测试一下:

    没问题!!!

    (其实执行SQL的这个步骤包括拿到结果集编辑方法可以直接找个REST类直接写,为什么选择此?HealthConnect的【可视化追踪】功能十分的好用,如果我把接口从BS–BO这样转发一下那么是不是调试的时候就很方便呢?当然这个也是因为IRIS使用至今还没找到一个十分合适的DeBUG方式。)

  • 编写一个转发的BS
  • 只把消息转发并不做任何操作,部署到Production中,如图:

    (4)组织返回,提供restful

    在前文中已经提供了如何开放url的方法,这边直接截图略过:

    Rest的接口编写思路:提供restful接口接收JSON,把JSON对象化传给BS–>BO,拿到返回的对象转成JSON返回上游,核心源码如图:

    测试一下:

    成功!!!

    按照此思路,我接着编写了其它相关接口:

    顺手编写了一个简单的前端,在下方展示。

    4.成果展示

    ·        首先肯定是production界面的显示:

    ·        鼠标放到组件上面会浮框显示相关信息

    ·        双击进入编辑页面,可以保存,组件的开关也在编辑进行

    ·        主页点击关闭可以关闭Production

    ·        下拉列表可以展示此命名空间下Production列表

    ·        选择对应的production名称,点击启动可以启动对应的Production


    总结

    以上就是今天要演示的IRISCRUD功能到这里就结束了,主要演示的是后台接口开发的一个思路,当然还有其它更多的方式和方法,这里只做分享。都看到这里了,如果觉得还不错就给我点赞吧!感激不尽