



在service父工程的pom中增加nacos依赖:
com.alibaba.cloud
spring-cloud-starter-alibaba-nacos-discovery

修改service_hosp的配置文件:
nacos服务地址
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848

service_hosp服务的启动类增加nacos注解:
@EnableDiscoveryClient //nacos注册使

service_hosp服务编写controller:





impl实现类中分页的逻辑:


1.2 service-cmn模块提供接口
这里是提供查询的接口:
由于我们的医院等级、省市区地址都是取的数据字典value值,因此我们在列表显示医院等级与医院地址时要根据数据字典value值获取数据字典名称
通过学习数据字典我们知道,根据上级编码与value值可以获取对应的数据字典名称,如果value值能够保持唯一(不一定唯一),我们也可以直接通过value值获取数据字典名称,目前省市区三级数据我们使用的是国家统计局的数据,数据编码我们就是数据字典的id与value,所以value能够唯一确定一条数据字典,如图:








在yygh_parent下搭建子模块:









复制controller接口:





、


启动数据字典模块和service_hosp模块:


打开这个注释:





测试成功;

前端的页面:

省市联动的接口:





前端页面开始:

效果:





页面:




this. fetchData(this.page);



页面的省份在这里显示:



测试遇到问题:




问题总结:前端在这里卡住了:
市选择不显示的在数据那边给searchObj里面写上provinceCode:‘’,cityCode:''或者使用强制渲染
选择了市不显示 的可以修改@change为$forceUpdate()
cityChange()自己加一下吧 和provinceChange()差不多的
不显示市的,去实现cityChanged方法,里面调用查所有医院的方法




//更新医院上线状态
@ApiOperation("更新医院上线状态")
@GetMapping("updateHospStatus/{id}/{status}")
public Result updateHospStatus(@PathVariable String id,
@PathVariable Integer status){
hospitalService.updateStatus(id,status);
return Result.ok();
}

@Override // //更新医院上线状态
public void updateStatus(String id, Integer status) {
//根据id查询医院信息
Hospital hospital = hospitalRepository.findById(id).get();
//设置修改的值,本质就是修改医院status
hospital.setStatus(status);
hospital.setUpdateTime(new Date());
hospitalRepository.save(hospital);
}





医院详情接口:



后台接口测试:

查看详情的按钮:




复制页面show组件






根据医院编号就可以查出此医院的所有科室信息:



科室结构:








