本系列文章介绍从0开始搭建一个基于分布式的医疗挂号系统。本次四篇文章完成了医院设置微服务模块的后端接口,为了方便开发,对接口的返回结果、全局异常、全局日志进行了统一处理。 同时,为了方便进行访问测试,还整合了Swagger2工具,这些通用的模块中,除了全局日志被放在医院设置微服务模块的配置资源中,其余都统一被抽取在common模块中。具体实现可参考下面文章:
医院设置微服务 | 模块搭建
通用模块 | 整合Swagger2
通用模块 | 统一返回结果、统一异常处理、统一日志处理
项目已开源至 https://github.com/Guoqianliang/yygh_parent
一、框架调用流程 从Controller层到Service层Controller层需要调用Service层的方法,我们在其中使用依赖注入(@Autowired注解)将Service的接口装进Spring容器。
从Service层到Mapper层Service层需要调用Mapper层,MyBatis-Plus框架已经将Mapper依赖注入进了Service层,我们只需要分别继承IService接口和ServiceImpl实现类即可。
二、医院设置表接口开发 1.增(1)增加记录
具体代码说明:
参数中使用@RequestBody注解表示使用JSON格式传递参数,默认是required=true,表示不能为空。代码中首先将记录的状态设置为1表示该记录可用,然后使用MD5加密算法设置签名密钥,关于MD5加密算法会在接下来的文章中详细介绍。 2.删 (1)逻辑删除记录 (2)批量删除记录 3.改 (1)修改记录 4.查 (1)查询所有记录 (2)条件查询带分页查询时需要传递参数作为查询条件,可以使用vo对象将查询条件进行封装。然后在Controller中获取条件对象,由于带有条件查询带有分页,还需获取分页数据(当前页current、每页记录数limit)
医院设置表的分页查询vo对象:
具体代码说明:
findPageHospSet方法传入三个参数,①当前页current ②每页大小limit ③条件查询的vo对象分页步骤是:①创建page对象、②创建QueryWrapper对象、③调用方法执行分页查询条件是医院名称或医院编号,对医院名称进行模糊查询,对医院编号进行等值查询,需要注意对这两个值进行判空处理。@RequestBody(required = false)注解表示使用JSON格式传递参数,然后把JSON数据的值放到对象中去,required = false表示这个值可以为空。使用此参数要将提交方式改为POST,因为GET方式得不到值。 (3)根据id获取记录 5.锁定和解锁表针对表中的status字段:
status=1时表示解锁status=0时表示锁定只有医院设置表的状态为解锁状态时,才能进行和医院系统的对接,从而进行数据的操作。
6.发送签名密钥发送签名密钥,即短信接口,由于调用短信接口较为复杂,后面会有专门的文章进行介绍,这里暂时只写好框架。具体开发流程可参考后续文章。
至此,医院设置微服务后端接口开发已经完成了,通过swagger可以查看到我们开发的所有方法:
以上就是实战分布式医疗挂号系统之接口开发医院设置微服务模块的详细内容,更多关于分布式医疗挂号接口开发设置微服务模块的资料请关注七叶笔记其它相关文章!