00:01
各位大家好,下面呢,我们来开发查询科室接口以及删除科室接口,首先我们先完成查询课时接口,那这个接口怎么做?咱们首先看一下我们的医院系统中我们是怎么实现的,那我们找到里边的查询。科室的接口我们往下来找一下,大家看应该就是里边的这个方法,Find底盘,然后在里边有两参数,第一个参数,第二个参数,各位应该能猜到是不是咱们做分页的参数,第一个参数是我们的当前页。第二个参数就是每页显示的技术数,然后下面我们来传这个数据,包含你的医院的编号,当前页每页技术数,还有你的签名,以及我们最终调用方法,最终请求我们的接口,然后接口路径就是咱们的这个路径department list,那咱们下面就开始完成这么一个,就是查询科室的接口,我们在里边来写一下。
01:08
现在我来写到这个位置。查询科室的借口。然后在里边呢,首先我们写一下它的提交的这么一个方法,咱们来一个post提交,在里边加上接口的名称,这个名称我们到文档中看一下,这里写到对应的是4.5查询,这个应该是科室。那咱们来找到4.5是在这个位置。参与科室,然后它的接口名字叫做department list,咱们把它就直接复制过来。然后复制之后,下面写上它的方法,Public result,我们给它起个名字,比如说我叫这个。Find department。在里边呢,咱们还是传入这个HTP。
02:04
Request把这个拿回来,然后出来之后得到它那个相关的参数,然后把它转成ma集合,跟咱之前写法应该都是一样的,那我现在把这段内容直接复制过来,然后复制之后咱们继续往下来做,因为咱们传到数据中,刚才看到还有这个医院的编号,有当前页,有每页记录数,所以咱们需要把这几个值给它来得到一下。脑袋里边写着。这里边我来实践,首先第一个我们先获取这个医院的。编号,咱们通过p map,点上这个钙的方法,里边加上它传的名字,这名字叫。Has cold。把这个拿回来,然后咱给他直接返回一个子值类型。这是我们的,就是第一个需要的值,医院的编号,然后除了医院编号之外,咱们里边还需要我们的当前页,以及每页的记录数,那咱给他分别得到,我在里边给各位就直接写下。
03:17
然后咱们先得到当前页应该是这个配置,这里边我们给它返回一个。Int类型,这个咱们就叫配置。这里边把它做一个当转变成我们的类型。在这个我们写的这么一个值。然后除了它之外,下面还有一个值,应该就是里边那个每页显示记录数,然后咱们现在呢,把这个当前页还有每页显示记录数给它做个判断,判断是什么呢?如果这个值,如果它等于空,那咱们给它来一个默认值,如果不等于空,就是咱们实际的这个值,所以下面咱可以给它做一个简单的这么一个判断,然后完成这个操作。
04:05
那下面在里边给各位把这个咱就快速给他写一下,写法当然说有多种方式,那我们就给他写这么一个,就是三元表达式的方式,给他快速完成下来。做一个实现,首先这里边,比如说我现在就直接这么来写了,咱们第一个是这个就是当前页,那我在里边呢,就用这么一个方法,String u里边这个方法叫意思按体,这表示它的值是不是等于空了,所以咱们把这个直接拿过来就判断它是否等于空。如果说它等于空的话,那这个值咱默认当前E就写成一,然后再一个冒号,如果它不等于空,那这值咱是不是就取到我们具体这个值,把这值我们给它就直接取下。这里边我加上一个string,然后给它转成咱们那个int类型,那我加上一个in t点这个pass,给他做这么一个。
05:11
转换,我把这个代码给它拿到下边来。就是我们的。这么一个结构,给它拉过来。所以现在我们就完成了第一个方法,然后它最终返回的可能是咱们这个。配置就是我们的当前页,这这是第一个转换,这个写法各位同学应该能看懂,并不复杂,是咱们一个最基础写法,这个写法中就是我们现在判断这个值是否等于空,如果说它等于空,默认值我们就写成一,如果它不等于空,那咱们就直接取到这个值,直接给它变成一个另类型。然后下面那个每页显示记录数跟它写法应该说是一样的,那能给他快速就来写一下,那我们来实现一下啊,我们往下给大再写一下这个啊,应该是一个配置啊,这写的是配置,然后第二个是一个叫。
06:09
一米。这个是。Limit米,然后这个值就是limit米,医院编号给他还是重新给它写一下?我写到上面啊,这个还是扣的。医院编号。然后里边给他直接拿过来。所以这样的话呢,咱们把传外的几个值都给它取到了,包含医院编号,当前页,还有每页的记住数,这是我们取到这几个值,然后这几个值取到之后,下面咱是不要做那个签名的校验哟,那这个代码我就不在这里写了,因为咱之前写过很多次,我就给各位价构注释,大家按照我们之前写的把它自己做完善,做这个签名的一个。就业。
07:01
这各位也都知道,然后这个做到之后,下面咱是不是就要调用service中的方法,然后最终做这查询,而查询中大家注意,因为咱们做的是一个分页查询,并且里边是不是可以带条件,比如根据医院编号做查询,所以这个条件咱可以直接传入字符串,或者说把条件是不是可以放到一个对象中,或者一个内中就传递,而这个对象咱们看一下啊,在我这个model里边已经写好一个VO类,就是这个类。叫做department quality为那咱用它做封装,然后通过对象做传递,那我在里边写一下。Department。Query VO。等于谬上一个department,快,然后向里边来set它的这个值,咱们set就是这个医院的编号,把它放进去,然后放完之后下面就调用。
08:03
Service里边的方法实验操作,那我们来调一下啊,Department service。这个方法,比如这个方法我就叫find的配置。比帕问道。在里边传入三个参数,第一个当前页,第二个每个计数数,第三个咱们条件的对象,然后最终各位应该知道啊,咱们分页查询,最终返回的是不是有一个配置这个对象,咱们之前讲这个。MT中应该提到过,那我们给它做个返回,就返回这个。配置对象,然后里边放在那个泛型,就是department,给它起个名字,比如叫这个配置。Model,所以这样的话,咱们现在把这个就是相关的方法就写完了,写完之后最终咱用蕊做返回蕊造的点,OK,加上这个配置model。
09:04
这样的话咱就完成了CTRL部分的编写,就是里边一个过程,咱们再看一遍,然后咱们来编写这个S部分,在CTRL中第一步得到传回来的数据,用request得到,得到之后取到咱需要几个值,包含医院编号。当前页还用米的技数,然后咱把条件值放到VO调项中,最终调S方法做实验,那咱下面写下这个three中的方法,我在里边写下。查询科室的接口,这是service的接口,来到实现类中,在实现类中把这方法咱们给他最终实现一下。那咱们下面给他快速写一下,这写法之前我们应该都做过,那下面我就给他快速实验一下,那怎么实现呢?咱是不是肯定还是调用我们这个department department里边的方法是不是最后实现。
10:02
然后这里边我们看看这个方法。这个方法咱之前讲到过,是不是有一个叫泛的O这个方法呀。而在范的欧中,大家看咱们现在其实我们用这个方法是不可以了,就是用这个里边传一个example这个条件,或者说你直接用它,然后包括在我们这个操作,然后这里边其实除了条件之外,是不还需要这个配置这个对象,所以咱们现在因为咱们一有又有条件,又有咱们的分页,所以我用这个方法反一个配对项,用它做个实验。咱们来调理方法,然后方法中刚才说到要传这么几个参数,那我把这几个参数给各位写一下,首先咱往上写第一部分。咱是不是先要创建这么一个叫配置这个able这个对象,我写一下啊配置。Able。这个对象里边设置你那个当前页。
11:04
还有每页的记录数。这个我们需要做到,然后这个做到之后,我们的第二部分呢,需要咱们就是创建里面这个叫一个example这个对象,当然一个example中可以加上它相关的条件,我写一下啊,创建example。这么一对项,然后在对象中要传递,就是咱们这个配置A6对项,最终实验我们的切换操作,那咱们下面给到快速写下,应该都是我们当时讲那个猫DB中应该都用过的,那我们来实现啊,首先第一个我来创建。这个就叫page。然后在里边把这依赖先引入,就是我们的这个依赖。然后包括起个名字,我就叫这个配置able,等于它是配置这个。Request。
12:00
然后里边有一个方法,我们写一下啊,配置的点,这个叫off方法,然后里边传入参数,再用这个传入我们的当前页,还有每个技入数,就是配置limit米,但是当前页咱们当时讲到过,当前页的第一页是不是从零开始,就是零是你的第一页。所以我们在里边让配置是不是要减一啊,因为咱们传的是从一开始传,所以让配置减一,这是我们的相关的参数,所以现在把配置able就做了一个创建,然后创建之后我们再继续往下来做,下面做什么呢?给各位来写一下,就是下面做的话,咱之前讲一个那个模糊查询,或者说条件查询,所以咱们把这个对象做构建,我们用一个对象应该叫这个example。它叫做ma map,然后里边我们来直接就是用这个一个example。
13:04
点上这个方法叫me,这里边构建你那个就是条件查询的对象,然后构建之后呢,里边可以设置它相应的规则,那比如说我们可以设置一下,比如咱们点上里面一个叫位。啊,位置。缀这个我还记得啊,当时咱们讲那个模糊查询,然后里边我们用一个example。Metro。点上一个叫spring metro,然后点上里边一个常量,这个content是不是用它做窝查询,然后做完之后,这里边咱们做查询中可以忽略它那个大小写,那我们就可以点上一个叫with。一个case里边这值写成一个处,这样的话就可以忽略大小,写这个都位给到知道就可以了,不需要你能写出来,你知道这个含义就足够了,所以咱们现在把这部分就写出来了,然后写出来之后,下面呢,咱就可以用那个example把这个结果给它构建出来。
14:13
然后写一下啊,Example。里边加上这个泛型,我们是这个department,然后在里边起个名字叫example,等于就是example。Off,然后里边传入两参数,第一个参数就是我们那个底帕他们的这个B项。然后第二个参数就是咱们这个metro。这样的话我们就传进来了,然后传完之后,最终在find o方法中,咱们把example传进来,还有这个配置able传进来,这样的话最终它就会返回咱们那个配置对象,然后咱们把这配置对象给他,最终做一个退就可以了。
15:03
所以咱们现在把这个结构,咱应该给他初步做到了,把这个最终做返回。所以各位把这过程一定要特别熟练,是咱们这个猫DB中一个基本操作,但是这个操作中啊,大家看到啊,这一个咱对象咱目前是没有啊,因为我这里边的对象是不是这个view啊,所以咱需要把这个view对象是不是要变成这个department这个对象啊,就这里边要给它做一个转换,那我写一下啊,首先我就先new一个。底盘问的这个对象再扭一下。然后扭完之后呢,其实我们可以直接用过工具类叫这个BU里边这个叫copy pro,把这个department query view中的值复制到这个department对象中去就可以了。当然在department里边,咱也可以设置里边的这个值,就是这个删除这标志等于零。
16:02
然后最终把对象传进来,就能实现出咱们最终的这么一个效果,所以现在咱们把这个应该就初步做到了,就是这么一个基本的一个结构。所以各位把这过程给他要知道。好,现在我们完成了,但是大家发现啊,这里边是报了一个错,咱看这错误是什么,首先各位看到,比如这里边我给他重新写一下,咱们看目前的问题是什么,比如给他来个返回值,大家看这个配置它是不是引了这个包。而我们当前这个配置,咱引的是不是这个MP中这配置包,所以这个包引的不对,我们应该用这个three date中这个配置这个包,那咱给他就快速来改一下,因为这个包目前引的是不对的,我们给它去掉,咱给它重新写下。当然这里边咱需要把这个controller service里边的这个包都给它重新换一下。
17:04
那我们给它都来换一下。那我们现在比如说把这包咱换成这个spring date中这个配置,然后这里边也换成spring date中这个配置,都给它来换一下。就换成这个。然后包括在我们这里边的包给它也是换成这个。所以现在我们看最终这个结果是不是就返回了,这样的话我们就完成了查询科室这个接口开发,最终咱在CTRL中得到数据,把它做个返回就可以了,最终反应之后,在页面中咱们把数据就可以完成这么一显示,所以这就是关于查询科室接口开发。各位能给他快速做到,而过程中,特别是我们刚才写的这个部分,咱们用Mo DB做这个查询,也是咱们之前演示过的,大家把这过程能给它熟练的写出来。
18:04
这是查询接口,然后查询接口写完之后,下面呢,我们再来快速完成一个删除的接口,这个接口应该就比较简单了,那下面给各位就快速写一下删除接口,删除接口呢,咱也可以看一下医院里边那个传的参数。那没找到。删除是不是这个瑞木department问大家看里边串什么医院编号,科室编号,是不是还有签名,还有时间戳,所以咱们根据这两值是做删除,那下面来到咱们的API的CTRL中,把这个咱们给它最终做开发,关于咱们的删除课室接口。我写一下。然后删除,首先我在里边写个提方式,我们用这个用这个了啊,然后在里边我们加上这个接口那个名字,这个名字我们到里边来找一下,就是咱们的API,这里边找到删除应该在这个4.7里边,咱们找到4.7。
19:09
这位置删除用的是department,咱们把这个名字给它就说过来。然后复制之后下面写方法,Public。加上这个名字,比如说我叫这个remove department。在里边同样还是传入这个。块的这个参数,然后通过蕊块得到值,最终转换成咱的map进口,这几步都是固定的。然后这个得到之后,咱们得到里边需要的那两个参数,一个是元编号。还有一个是。科室编号,因为咱们要做删除,然后医院编号应该就是这段代码直接得到科室编号,咱们把名字改一下,这个名字咱看一下叫DP扣,就是department扣。
20:06
所以这样的话,两值得到了下面同样也要做一个签名的校验,这个代码我就不写了,各位自己给它完善一下,跟之前应该一样,然后都选之后,咱们下面就来调用serve中的方法做实现,然后里面写个方法,比如说我叫。然后里边传两个参数,一个是医院编号,一个是科室编号,最终做返回造的点OK。这样的话C部分完成了,完成之后下面我们来写这个service部分。在里边实现一下。先创建interface接口。然后来到实现内中,把它的方法最终做个实现。删除意元接口,然后再删除这个所里边咱就把它的方法最终做一个实现。
21:06
那这个怎么实现呢?首先呢,咱先把这个就是根据医院编号,还有科室编号,把这个科室信息先查出来,然后查出来之后判断有没有,如果数据库中不存在,咱是不是不需要删了,如果存在的话,咱们得到它的ID,根据ID调方法是不是做过删除,那我们下面来做一下,首先第一个。先根据这个医院编号和科室编号查询出这个科室的信息,那我们直接调用department。Reportery里边的方法,这些方法按照咱们spring date的规范,我来写一下,就是get这个。Department,然后里边加上里边这个讲的内容,包括这个。啊系code还code,还有这个department code,然后根据它做查询,咱们在这个department report里边需要加上这个方法,这个方法刚才我们写那个上传课程时候应该写过,按照这种规范做命名,然后咱们在里边就做这个调用,那咱给它完善出来。
22:16
我来写一下啊。这位置咱们传入两参数,第一个就是这个hospital Co,第二个department Co,最终返回就是比department这么一个对项。来写一下这个对象,然后这个对象反映之后,下面咱做判断,如果说这个对象不等于空,咱们是不是在做插叙,再做删除,如果等于空,那我们就不需要删了。不等于呢,那我们再删除。删除的话,我们调用department report里边这个方法,这方法叫delete摆地,咱们根据这个里边的ID做删除,那把它ID得到,然后最终这个功能我们就现出来了,所以这样的话呢,咱们通过这个接口就完成了删除科室的接口开发。
23:11
这样的话,咱就把两接口都写完了,第一个接口查询科室接口,第二个接口删除科室接口,然后都写完之后,下面咱就可以把这两个接口最终做个测试,看一下咱们的最终效果到底是什么样的,那下面我们就开始做一个测试。首先咱们先把这个服务给它启动一下,我们来启动,启动之后咱们通过医院这个模拟系统来完成查询科室以及删除科室的测试,我们现在启动。然后各位看,现在已经提起来了,那咱们进入到系统中,比如说咱们之前做过这个医院管理,我们看到数据能显示,现在我点击这个科室列表,大家看科室是不是都列出来了,包括你看下面有分页,比如说我们现在这个是。
24:06
门诊部核酸检测门诊,咱们点第二页。是换了数据,我点第三页是不是也换了数据,所以现在这分页是正确的,然后咱下面再测个删除,大家看这里边是23248869,比如现在我把这个八八这个数据删掉,咱们点删除确定。各位看数据是不是就没了,我们现在就完成了科室列表以及删除科室功能,这个我们就做到了,也就说到这里,咱就把这里边的医院的新闻接口,还有科室的新闻接口都完成了,然后最后还缺少就是排班的接口,而排班接口中咱们实现的也是跟刚才这个科室类似,接口也是包含三个,第一个添加,第二个查询,第三个删除,所以咱们一会儿把最后这个排班借口给他快速完成一下。
我来说两句