00:01
各位大家好,我们继续来开发医院切换接口,下面呢,咱来开发查询医院的接口,那这个接口我们看一下该怎么开发,我在文档中写到,咱们参考上一通A派接口文档中的4.4查询医院,那咱们把这个技术文档打开,然后找到4.4,就是里边的这个接口查询意愿。然后咱们按照这个接口文档来编写接口,那我们看一下里边有哪些内容,首先第一部分我们提交的地址,这个地址包括里边有启用参数,咱们根据这个就是医院的编号进行查询,最终返回我们的相关的数据,那在下面把这个我们就来写一下相关的接口,咱们来做一个实践。那我们现在先来到我们的这个CTRL里边,在里边写上接口,我给他先加上一个注释,就是查询医院的接口。
01:05
然后在下面加上提交方式,咱们就来一个POS提交,因为咱们之前看到我们在医院那个系统中,我们通过POS调过来啊,所以咱们现在给他就写这么一个调方式。然后咱这里边加上接口的名称,接口名称咱看一下文档中这个地址应该是这个地址hospital受,那咱把它直接就推过来放到这里边去,地址跟文档中保持一致。然后写完之后,下面写方法,Public。Result。咱们给它起个名字。比如这个名字,我就叫这个。盖头,Hospital。这个我们就写出来了,写完之后在里边咱们还是写上,里边这个就是HTP块对象,因为咱是通过POS调过来的,我们用快上把相块内容得到,那写完之后咱下面写一下具体内容,首先第一步跟我们之前写的做法基本上一样,咱们通过request get pre map得到我们的map集合,然后把它转成一个map集合,然后最终做这个操作,那那现在我把这两行就给它直接复制过来,因为跟之前是一样的。
02:28
然后复制之后,咱们继续往下写,下面咱要做的第二部分,咱们来获取一下传递过来的医院的编号,通过这个p map点盖加上里边的key,医院编号的key跟之前相同,是不是这个house code医院的编号,咱把它拿过来,然后在里边给它赋值上一个变量,我们就叫。Code。这个位置做一个强转。现在咱们把这编号得到了,然后得到编号之后,我们继续往下来做,因为现在我们之前说到咱们在请求接口的时候,是不是要做一个签名的一个校验呀,比如说让我们传过来参数的签名,跟咱们数据库查出签名做个比较,看两个是否一样,如果他们一样的话,我们再往下进行,如果他们不一样,那咱们是不是就不往下进行,所以咱们要做个判断,而判断代码跟咱之前写的应该一模一样。
03:29
就这个代码,我把它也是直接复制过来,因为跟之前是一模一样的,做这么一个判断。我把这个是微改一下,这个house code上面有举到了,所以这个过程就是做了这么一个判断,看它们是否一样,这个我们就完成了,然后如果说它不一样,咱给它抛出一个异常,如果它一样的话,那我们往下进行,往下进行的话咱就可以调用。Service里边的方法实现,根据这个医院的编号。
04:04
我们进行这么一个查询,那我们来做一下,咱就调这个hospital service里边这个方法,比如说咱们给它起个名字,我就叫get这个百。耗扣。然后在里边呢,传入咱们那个医院的那个编号,我把编号给他就拿过来,就是咱们刚才这个。耗子扣的。然后这个得到之后,最终它返回的肯定是我们那个相关那个对象。好的,披头底下这个我们就写出来了,然后写完之后最终给它做返回,咱就退造点OK里边传入这个。Hospital,所以这样的话CTRL了我们就快速完成了,完成之后咱们下面来写这个service的方法。在service里边,我把这方法先创建,根据医院编号进行查询,然后来到它的实现类中,在实现类中把这个方法咱们快速做实现,根据医院编号做一个去查询,那在里边我们来写一下。
05:17
而这个查询咱们调的肯定是这个好reporty里边这样的方法,那我们来调一下这个方法,咱们刚才应该写过get hospital by hospital code,然后里边传入这个医院的编号,最终它返回到就是我们这个B项。然后咱们把它做一个蕊退就可以了,所以咱们现在就快速把这个根据医院编号查询医院信息的接口我们就完成了,所以各位把这过程能给它快速做到,然后做到之后咱们下面把这服务器给它重启一下,我们做个测试。因为现在我们就是在这个医院系统中,一点击医院管理,应该就会调这接口把数据查出来,而这数据刚才咱已经加到了猫D里面去,现在这数据应该可以实现一个查询,给咱下面来做一个测试,我们来看一下啊,首先我点击医院管理。
06:21
大家看现在这里边应该会调我们的接口做这个查询,那我们看一下啊,目前他报了一个错,来看他报什么错啊,其实我们说是什么,说这个签名错误,就是你查这个签名有问题,那我们给他排查一下,看这签名到底哪里有问题,我们来检查一下啊。那咱们现在呢,首先来到咱们的医院系统中,应该是在那个service里边,然后service中找到我们刚才调的方法,因为咱们刚开始查询,它应该调的是这个方法,在这个方法中,你看我们传的这个。医院的编号,包括时间戳,包括有一个那个签名,这签名,比如咱们按照我们之前方式给他改一下啊,之前我就写一个最简单方式,我就把这个直接给他改过来。
07:10
咱就不用那个工具类了,用这个直接弄一下就可以了,然后大家看啊,解法就是咱们得到这个签名,然后进行MD5的加密,最终传到咱的接口中去,然后咱们在接口中先得到我们的签名,然后得到之后我们这里边。再调单的方法,通过数据库查出签名。把你查出签名进行MD5加密,最终是不是再做个比较,就咱给他改一下,然后改完之后我们最终给他再来试一下,咱现在把服务器重启一下,包括医院的这个重启一下。那我们再来做测试,刚才问题是签名,它表示就是签名错误,就是签名不一致,那咱给他改一下,最终再试一下哈。我把服务器重启,然后现在我们在做测试,比如现在我再点击医院管理,大家看数据是不是就查出来了,现在在里边就显示出来了,咱们刚才加到猫DB中的数据,这就是医院的查询接口,我们现在完成了开发,所以各位能把这个医院的上传的接口,包括医院查询接口能给他快速完成出来。
08:26
这是关于医院部分,然后医院部分做完之后大家看啊,我们下面要做的大家看是什么,是不是有一个科室列表,还有一个排班列表,而这两操作跟医院管理操作基本上是类似的,在科室里边咱要实现的主要是这么一个功能,我们来看一下啊,大家看包含这个上传,科室查询,科室删除。然后排班里面也包含上传,排班查询,还有删除,所以咱们下面就快速把这个科室和排班的切换接口给他开发出来。
我来说两句