diff --git a/service/service_hosp/src/main/java/com/atguigu/yygu/hosp/controller/api/HospApiController.java b/service/service_hosp/src/main/java/com/atguigu/yygu/hosp/controller/api/HospApiController.java index 1456be3be73c5b3869514569c9e58998616af056..492a0edfcee4ca12fcace451bb0068c4d1cfd7cb 100644 --- a/service/service_hosp/src/main/java/com/atguigu/yygu/hosp/controller/api/HospApiController.java +++ b/service/service_hosp/src/main/java/com/atguigu/yygu/hosp/controller/api/HospApiController.java @@ -1,8 +1,10 @@ package com.atguigu.yygu.hosp.controller.api; import com.atguigu.yygh.model.hosp.Hospital; +import com.atguigu.yygh.vo.hosp.DepartmentVo; import com.atguigu.yygh.vo.hosp.HospitalQueryVo; import com.atguigu.yygu.common.result.Result; +import com.atguigu.yygu.hosp.service.DepartmentService; import com.atguigu.yygu.hosp.service.HospitalService; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -13,6 +15,7 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; +import java.util.Map; @RestController @RequestMapping("/api/hosp/hospital") @@ -20,6 +23,8 @@ public class HospApiController { @Autowired private HospitalService hospitalService; + @Autowired + private DepartmentService departmentService; @ApiOperation(value = "查询医院列表") @GetMapping("findHospitalList/{page}/{limit}") @@ -37,4 +42,18 @@ public class HospApiController { return Result.ok(list); } + @ApiOperation(value = "根据医院编号获取科室") + @GetMapping("department/{hoscode}") + public Result index(@PathVariable String hoscode){ + List list = departmentService.findDeptTree(hoscode); + return Result.ok(list); + } + + @ApiOperation(value = "根据医院编号获取预约挂号详情") + @GetMapping("findHospDetail/{hoscode}") + public Result item(@PathVariable String hoscode){ + Map map = hospitalService.item(hoscode); + return Result.ok(map); + } + } diff --git a/service/service_hosp/src/main/java/com/atguigu/yygu/hosp/service/HospitalService.java b/service/service_hosp/src/main/java/com/atguigu/yygu/hosp/service/HospitalService.java index 76a847551a7429ec76a98268af4a6d10bca2a426..c1b176f51af98601b68513323cbac26b13886667 100644 --- a/service/service_hosp/src/main/java/com/atguigu/yygu/hosp/service/HospitalService.java +++ b/service/service_hosp/src/main/java/com/atguigu/yygu/hosp/service/HospitalService.java @@ -28,4 +28,7 @@ public interface HospitalService { //根据医院名称查询 List findByHosname(String hosname); + + //根据医院编号获取预约挂号详情 + Map item(String hoscode); } diff --git a/service/service_hosp/src/main/java/com/atguigu/yygu/hosp/service/impl/HospitalServiceImpl.java b/service/service_hosp/src/main/java/com/atguigu/yygu/hosp/service/impl/HospitalServiceImpl.java index bb25675d023901c89966748749adf19403f67b54..534c30744f56d3677d43ece3a230606b047c6a44 100644 --- a/service/service_hosp/src/main/java/com/atguigu/yygu/hosp/service/impl/HospitalServiceImpl.java +++ b/service/service_hosp/src/main/java/com/atguigu/yygu/hosp/service/impl/HospitalServiceImpl.java @@ -122,6 +122,20 @@ public class HospitalServiceImpl implements HospitalService { return hospitalRepository.findHospitalByHosnameLike(hosname); } + //根据医院编号获取预约挂号详情 + @Override + public Map item(String hoscode) { + Map result = new HashMap<>(); + //医院详情 + Hospital hospital = this.setHospitalHosType(this.getByHoscode(hoscode)); + result.put("hospital", hospital); + //预约规则 + result.put("bookingRule", hospital.getBookingRule()); + //不需要重复返回 + hospital.setBookingRule(null); + return result; + } + //获取查询list集合,遍历进行医院等级封装 private Hospital setHospitalHosType(Hospital hospital) { //根据dictCode和value获取医院等级名称