一 统一返回结果定义

1 枚举类

package com.baiyee.sdgt.common.result;import lombok.Getter;/**
* @className: ResultCodeEnum
* @description: 统一返回结果状态信息类
* @date: 2021/10/5
* @author: cakin
*/
@Getter
public enum ResultCodeEnum {SUCCESS(200, "成功"),FAIL(201, "失败"),PARAM_ERROR(202, "参数不正确"),SERVICE_ERROR(203, "服务异常"),DATA_ERROR(204, "数据异常"),DATA_UPDATE_ERROR(205, "数据版本异常"),LOGIN_AUTH(208, "未登陆"),PERMISSION(209, "没有权限"),CODE_ERROR(210, "验证码错误"),LOGIN_MOBLE_ERROR(211, "账号不正确"),LOGIN_DISABLED_ERROR(212, "改用户已被禁用"),REGISTER_MOBLE_ERROR(213, "手机号已被使用"),LOGIN_AURH(214, "需要登录"),LOGIN_ACL(215, "没有权限"),URL_ENCODE_ERROR(216, "URL编码失败"),ILLEGAL_CALLBACK_REQUEST_ERROR(217, "非法回调请求"),FETCH_ACCESSTOKEN_FAILD(218, "获取accessToken失败"),FETCH_USERINFO_ERROR(219, "获取用户信息失败"),LOGIN_ERROR(23005, "登录失败"),;private Integer code;private String message;private ResultCodeEnum(Integer code, String message) {this.code = code;this.message = message;}
}

2 统计返回结果

package com.baiyee.sdgt.common.result;import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;/**
* @className: Result
* @description: 全局统一返回结果类
* @date: 2021/10/5
* @author: 贝医
*/
@Data
@ApiModel(value = "全局统一返回结果")
public class Result<T> {@ApiModelProperty(value = "返回码")private Integer code;@ApiModelProperty(value = "返回消息")private String message;@ApiModelProperty(value = "返回数据")private T data;public Result() {}protected static <T> Result<T> build(T data) {Result<T> result = new Result<T>();if (data != null)result.setData(data);return result;}public static <T> Result<T> build(T body, ResultCodeEnum resultCodeEnum) {Result<T> result = build(body);result.setCode(resultCodeEnum.getCode());result.setMessage(resultCodeEnum.getMessage());return result;}public static <T> Result<T> build(Integer code, String message) {Result<T> result = build(null);result.setCode(code);result.setMessage(message);return result;}public static <T> Result<T> ok() {return Result.ok(null);}/*** 操作成功** @param data 数据* @param <T> 数据类型* @return 返回结果*/public static <T> Result<T> ok(T data) {Result<T> result = build(data);return build(data, ResultCodeEnum.SUCCESS);}public static <T> Result<T> fail() {return Result.fail(null);}/*** 操作成功** @param data 数据* @param <T> 数据类型* @return 返回结果*/public static <T> Result<T> fail(T data) {Result<T> result = build(data);return build(data, ResultCodeEnum.FAIL);}public Result<T> message(String msg) {this.setMessage(msg);return this;}public Result<T> code(Integer code) {this.setCode(code);return this;}public boolean isOk() {if (this.getCode().intValue() == ResultCodeEnum.SUCCESS.getCode().intValue()) {return true;}return false;}
}

二 条件查询带分页中的条件封装

@Data
public class HospitalQueryVo {@ApiModelProperty(value = "医院名称")private String name;@ApiModelProperty(value = "所在省")private String province;@ApiModelProperty(value = "所在市")private String city;@ApiModelProperty(value = "所在区")private String district;@ApiModelProperty(value = "状态")private Integer status;
}

三 医院接口

@Api(tags = "医院管理")
@RestController
@RequestMapping("/admin/hospital")
public class HospitalController {// 注入service@Autowiredprivate HospitalService hospitalService;// 查询医院所有信息@ApiOperation(value = "获取所有医院")@GetMapping("findAll")public Result findAllHospitalSet() {// 调用 service 的方法List<Hospital> list = hospitalService.list();return Result.ok(list);}// 逻辑删除医院@ApiOperation(value = "逻辑删除医院")@DeleteMapping("{id}")public Result removeHospSet(@PathVariable String id) {boolean flag = hospitalService.removeById(id);if (flag) {return Result.ok();} else {return Result.fail();}}// 条件查询带分页@PostMapping("findPageHospital/{current}/{limit}")public Result findPageHospSet(@PathVariable long current,@PathVariable long limit,@RequestBody(required = false) HospitalQueryVo hospitalQueryVo) {//创建page对象,传递当前页,每页记录数Page<Hospital> page = new Page<>(current, limit);//构建条件QueryWrapper<Hospital> wrapper = new QueryWrapper<>();String name = hospitalQueryVo.getName(); // 医院名称String province = hospitalQueryVo.getProvince(); // 省String city = hospitalQueryVo.getCity(); // 市String district = hospitalQueryVo.getDistrict(); // 区Integer status = hospitalQueryVo.getStatus(); // 启用状态if (!StringUtils.isEmpty(name)) {wrapper.like("NAME", name);}if (!StringUtils.isEmpty(province)) {wrapper.eq("PROVINCE", province);}if (!StringUtils.isEmpty(city)) {wrapper.eq("CITY", city);}if (!StringUtils.isEmpty(district)) {wrapper.eq("DISTRICT", district);}if (status != null) {wrapper.eq("STATUS", status);}// 调用方法实现分页查询IPage<Hospital> pageHospitalSet = hospitalService.page(page, wrapper);// 返回结果return Result.ok(pageHospitalSet);}// 4 添加医院@PostMapping("saveHospital")public Result saveHospitalSet(@RequestBody Hospital hospital) {// 设置状态 1 启用 0 禁用hospital.setStatus(1);boolean save = hospitalService.save(hospital);if (save) {return Result.ok();} else {return Result.fail();}}// 5 根据 id 获取医院@GetMapping("getHospSet/{id}")public Result getHospSet(@PathVariable Long id) {Hospital hospital = hospitalService.getById(id);return Result.ok(hospital);}// 6 修改医院@PostMapping("updateHospital")public Result updateHospital(@RequestBody Hospital hospital) {boolean flag = hospitalService.updateById(hospital);if (flag) {return Result.ok();} else {return Result.fail();}}// 7 批量删除医院@DeleteMapping("batchRemove")public Result batchRemoveHospital(@RequestBody List<String> idList) {hospitalService.removeByIds(idList);return Result.ok();}// 8 医院启动和禁用@PutMapping("lockHospital/{id}/{status}")public Result lockHospitalSet(@PathVariable Long id,@PathVariable Integer status) {// 根据 id 查询医院设置信息Hospital hospitalSet = hospitalService.getById(id);// 设置状态hospitalSet.setStatus(status);// 调用方法hospitalService.updateById(hospitalSet);return Result.ok();}
}

任务分配问题关于医院接口开发相关推荐

  1. 后台系统-医院设置信息接口开发

    后台系统-医院设置接口-需求和准备 1.需求 2.表结构 3.医院模块开发 3.1. 搭建医院模块service-hosp 3.2.引入依赖 3.3.添加配置文件application.propert ...

  2. 尚医通-预约下单接口开发-整合RabbitMQ(三十六)

    目录: (1)预约挂号-预约下单功能接口开发1 (2)预约挂号-预约下单功能接口开发2 (3)预约挂号-预约下单-整合RabbitMQ1 (4)预约挂号-预约下单-整合RabbitMQ2 (1)预约挂 ...

  3. Day228229.上传查询医院接口、上传查询删除科室接口、上传查询删除排班接口 -尚医通

    尚医通 一.上传医院接口 参考<尚医通API接口文档.docx>业务接口4.1上传医院 参考<医院接口模拟系统.docx>进行接口测试与数据上传 这里要整合hospital-m ...

  4. php接口 汉字出错 空,php接口开发时,数据解析失败问题,字符转义,编码问题(示例代码)...

    php接口开发时,数据解析失败问题,字符转义,编码问题 情景: A平台--->向接口请求数据---->接口向B平台请求数据---->B平台返回数据给接口---->接口返回数据给 ...

  5. 《Web接口开发与自动化测试 -- 基于Python语言》 ---前言

    前    言 本书的原型是我整理一份Django学习文档,从事软件测试工作的这六.七年来,一直有整理学习资料的习惯,这种学习理解再输出的方式对我非常受用,博客和文档是我主要的输出形式,这些输出同时也帮 ...

  6. 一周的微信公众平台接口开发总结

    2019独角兽企业重金招聘Python工程师标准>>> 在公司弄了一个星期的微信公众平台的接口开发,由于之前没弄过,开发的过程遇到了很多的小问题.下面我就总结一下我在开发过程中遇到了 ...

  7. php限制接口访问次数_PhalApi专业版 v2.4 版本发布!接口开发,快人一步

    dogstar 小白开放平台 今天 PhalApi专业版介绍 PhalApi Pro 是PhalApi开源接口框架的专业版, 基于主流的PHP+MySQL,是一款开发和管理接口的超级框架. 从接口设计 ...

  8. php 接口 2.0,YII 2.0 API接口开发

    YII2.0 API接口开发 首先先安装 YII2.0 高级模板(安装请参考其他教程) 准备 添加数据库配置 common/config/main-local.php image 把backend目录 ...

  9. php 动态彩码辨色 接口的调用_好用的云函数!后端低代码接口开发,零基础编写API接口...

    前言 在开发项目过程中,经常需要用到API接口,实现对数据库的CURD等操作. 不管你是专业的PHP开发工程师,还是客户端开发工程师,或者是不懂编程但懂得数据库SQL查询,又或者是完全不太懂技术的人, ...

最新文章

  1. css实现超出文本溢出用省略号代替
  2. ERP text object hard code
  3. iOS中的多线程一般使用场景
  4. angular中的cookies与cookieStore区别
  5. 《第二章:深入了解超文本》
  6. 【转】const int *p和int * const p的区别(常量指针与指向常量的指针)
  7. Qt|C++工作笔记-对虚函数的进一步认识(关键是Qt中如何正确使用,达到想要的效果)
  8. 异常来自 hresult:0x800a03ec_肺癌早期不是悄无声息,一旦出现这3个“异常”,十有八九是肺癌...
  9. 《剑指Offer》 调整数组顺序使奇数位于偶数前面
  10. android从一点展开动画,Android自定义View——从零开始实现可展开收起的水平菜单栏...
  11. KETTLE调度第三篇:Windows下调度Dos脚本编写和遇到的一些问题解决
  12. 保送清华成博士,华为 12 年搞通信,他为何如此看待 5G ?| 人物志
  13. Exception:A generic error occurred in GDI+
  14. Android 科大讯飞离线语音识别
  15. Cause: java.io.IOException: Could not find resource com/itheima/po/CustomerMapper.xml
  16. 密码的输入问题(do while()和st1.equals(st2)的使用)
  17. L18-python语法基础-数据类型的基本操作(d5)
  18. 英语语法总结--特殊词精讲
  19. 射频:TD-LTE与FDD-LTE区别
  20. JVM-SandBox使用入门

热门文章

  1. c++模板函数声明定义分离编译错误详解
  2. 一对一直播系统源码开发,礼物打赏中追加、连击等功能的实现
  3. MEM/MBA 写作-论说文(05)练习及范文
  4. STM32单片机初学者编程之常用小程序--GPIO配置延时函数
  5. 20_clickhouse,硬件管理与优化(cpu,内存,网络,存储,操作系统配置),profile管理,Quotas设置,约束管理,查询权限,用户管理配置等
  6. php彩蛋是什么,php彩蛋
  7. 华为比赛遇到的问题自己的解决办法
  8. SiT9366:0.23ps超低抖动1-220MHz差分晶振,LVPECL/LVDS/HCSL
  9. CAD二次开发清除选择集
  10. Docker实用技巧之更改软件包源提升构建速度