西北建设有限公司官方网站,用pc网站建设手机网站,wordpress php转html代码,做一手楼房的网站医院信息化与智能化系统(15)
这里只描述对应过程#xff0c;和可能遇到的问题及解决办法以及对应的参考链接#xff0c;并不会直接每一步详细配置 如果你想通过文字描述或代码画流程图#xff0c;可以试试PlantUML#xff0c;告诉GPT你的文件结构#xff0c;让他给你对应…医院信息化与智能化系统(15)
这里只描述对应过程和可能遇到的问题及解决办法以及对应的参考链接并不会直接每一步详细配置 如果你想通过文字描述或代码画流程图可以试试PlantUML告诉GPT你的文件结构让他给你对应的代码
预约挂号微服务模块搭建
前端知识点补充此章节不会详细讲具体前端的每个知识点
1、医院管理概述
目前我们把医院、科室和排班都上传到了平台那么管理平台就应该把他们管理起来在我们的管理平台能够直观的查看这些信息。
需求分析及Nacos启动
需求分析 要设置一个element-ui中的table标签存放logo、医院名称、等级... 在MongoDB数据库中并没有等级字段只有hostype那么需要根据数据字典获取对应的等级这里涉及到通过service-hosp远程调用service-cmn模块
注册中心与服务调用
下载nacos-server-1.1.4版本并解压在其bin目录下双击打开startup.cmd | start.sh前后分别对应Windows | Linux。
访问路径默认为 http://localhost:8848/nacos,用户密码都是nacos
Nacos注册服务
在service模块引入spring-cloud-starter-alibaba-nacos-discovery依赖在application.properties配置文件设置nacos地址spring.cloud.nacos.discovery.server-addr127.0.0.1:8848在启动类ServiceHospApplication上添加注解EnableDiscoveryClient注意service-hosp和service-cmn都要按步骤2、3设置
我这里出现了一个问题service-cmn突然爆了一个关于没有找到mongodb连接的问题我心想我也没使用它所以在该模块的依赖中去找找到了对service-hosp的依赖再具体分析依赖关系(右键项目可以查看)发现确实不小心填加了关于mongodb的依赖项所以做法很简单就是直接把对service-hosp的依赖删除即可。[我这删除完没报错如果你们有最多应该也就是import出了问题应该直接删就行我没看见需要import关于hosp模块的地方] 2、 医院列表接口
在service-hosp中创建HospitalController用于存储实现方法用RestController、RequestMapping(xx)、CrossOrigin注解修饰。
医院列表实际是以get方式获取page和limit随后进行条件查询。项目提供HospitalQueryVo类用于存放查询条件。创建selectHospPage方法实现条件查询流程就是基于Mongodb数据库条件查询逻辑。
由于医院等级、省市区地址都是取的数据字典value值因此我们在列表显示医院等级与医院地址时要根据数据字典value值获取数据字典名称。
由于yygh_cmn数据库表的value值并不唯一所以需要创建方法来根据dictcode和value获取对应的name 在service-cmn的DictController创建getName方法 GetMapping(getName/{dictCode}/{value})public String getName(PathVariable String dictCode,PathVariable String value){String dictName dictService.getDictName(dictCode,value);return dictName;}GetMapping(getName/{value})public String getName(PathVariable String value){String dictName dictService.getDictName(,value);return dictName;}在DictServiceImpl中实现具体getDictName方法
提供value直接依靠value值来找提供value和dictcode根据dictcode找到对应其父类对应的id再根据parent_id id以及value做更细致的查找
public String getDictName(String dictCode, String value) {//如果dictCode为空则直接根据value查询if (StringUtils.isEmpty(dictCode)){QueryWrapperDict wrapper new QueryWrapper();wrapper.eq(value,value);Dict dict baseMapper.selectOne(wrapper);return dict.getName();}else {Dict codeDict this.getDictByCode(dictCode);Long parent_id codeDict.getId();//根据parent_id和value进行查询Dict finalDick baseMapper.selectOne(new QueryWrapperDict().eq(parent_id, parent_id).eq(value, value));return finalDick.getName();}封装Feign服务调用
搭建service_client模块来进行服务调用的封装注意这里是创建子模块也就是yygh_parent-新建模块-Maven工程而不是用Spring Initializr创建一个springboot工程。
设置打包方式为packagingpom/packaging
导入相关依赖common模块、feign相关依赖、common-util模块等。
在该模块创建子模块service_cmn_client
创建接口DictFeignClient该接口用FeignClient(service-cmn)、Repository修饰其中service-cmn是nacos中需要被调用服务的名称该名称的声明在application.properties中。
该接口中方法的声明步骤直接去找你要调用的模块方法除方法体外内容全部复制即可但需要注意的是xxxMapping注解的路径需要补充完整此外还需要指定URL路径中的变量名 GetMapping(/admin/cmn/dict/getName/{value})public String getName(PathVariable(value) String value);接着就是在调用端service-hosp模块引入service_cmn_client依赖在HospitalServiceImpl中实例化实现DictFeignClient接口的对象并在启动类添加注解EnableFeignClients(basePackages com.xxx)
由于Hospital中没有等级信息字段查看其父类BaseMongoEntity中声明了MapString,Object param利用其进行对等级的封装。
根据lambda表达式对每一个取出的Hospital进行等级与地区设置分别用hostypeString和fullAddress对应。
//根据条件与页数返回pages后//获取查询list集合遍历进行医院等级封装...pages.getContent().stream().forEach(item-{this.setHospitalHosType(item);});private Hospital setHospitalHosType(Hospital hospital) {//这里的hospital的Hostype是value类型1,2...//Hostype是对应字典的dict_CodeString hostypeString dictFeignClient.getName(Hostype, hospital.getHostype());//查询省 市 地区String provinceString dictFeignClient.getName(hospital.getProvinceCode());String cityString dictFeignClient.getName( hospital.getCityCode());String districtString dictFeignClient.getName(hospital.getDistrictCode());hospital.getParam().put(hostypeString,hostypeString);hospital.getParam().put(fullAddress,provinceStringcityStringdistrictString);return hospital;}测试时nacos、redis、mongodb、nginx全部打开再启动模块再到swagger里测试。
查询所有子节点 接口
首次进入前端显示所有省份的医院信息再添加查询功能根据省和市进行条件查询
所以在DictController创建方法根据dictCode查询子数据列表并在DictServiceImpl实现findByDictCode代码逻辑。
findByDictCode借助getDictByCode函数输入dictCode可以得到对应的Dict对象再通过findChildData输入Dict对象的id得到其子节点数组最后做返回。
测试时输入对应dict_code会以JSON响应对应的子节点(省北京市...)
医院列表 前端
第一步是添加路由在router/index.js的医院设置管理下面添加医院列表部分并设置跳转路径为/views/hosp/list(对应创建)
第二步在api/hosp.js设置与后端接口的对应
getHospList对应后端listHospital方法根据当前页每页记录数查询条件查询。findByDictCode对应后端findByDictCode方法根据DictCode查所有省findChildId对应后端findChildData方法根据数据id查所有市
第三部分编写list.vue
在template标签内仍是借助element-ui
先是提供两个选择表单选择要查询的省和市一个普通表单对应要查询的医院名称一个查询按钮
随后提供一个table里面对应医院列表的各个信息
最后放置分组组件对应分页功能。
方法部分
导入hosp.js为后续调用方法做准备搭建基础结构data、created、methods定义变量及默认值list医院列表数据、 total数据库中的总记录数、page 默认页码 …
进入页面就需要进行查询所以创建fetchData方法内部调用getHospList并在.then()中处理返回值将list和total分别赋值。
同时需要在查询列表中显示所有的省份因此创建findAllProvince方法内部调用findByDictCode。
根据省需要提供市的列表做法是创建provinceChanged方法首先初始化市列表随后根据searchObj.provinceCode获得选项框省的ID再调用findChildId最后把返回值赋值给cityList
页面插件有一个选择页数进行展示绑定方法changeSize每一次选择页数进行调用内部直接赋值this.limit,再执行this.fetchData(1)实现刷新即可。
文章转载自: http://www.morning.frsbf.cn.gov.cn.frsbf.cn http://www.morning.fgxnb.cn.gov.cn.fgxnb.cn http://www.morning.ywqsk.cn.gov.cn.ywqsk.cn http://www.morning.bntgy.cn.gov.cn.bntgy.cn http://www.morning.frfpx.cn.gov.cn.frfpx.cn http://www.morning.rtkz.cn.gov.cn.rtkz.cn http://www.morning.sjwws.cn.gov.cn.sjwws.cn http://www.morning.nbnq.cn.gov.cn.nbnq.cn http://www.morning.tdqhs.cn.gov.cn.tdqhs.cn http://www.morning.ptwzy.cn.gov.cn.ptwzy.cn http://www.morning.mltsc.cn.gov.cn.mltsc.cn http://www.morning.blfll.cn.gov.cn.blfll.cn http://www.morning.kjsft.cn.gov.cn.kjsft.cn http://www.morning.flhnd.cn.gov.cn.flhnd.cn http://www.morning.kksjr.cn.gov.cn.kksjr.cn http://www.morning.nccqs.cn.gov.cn.nccqs.cn http://www.morning.itvsee.com.gov.cn.itvsee.com http://www.morning.qbjgw.cn.gov.cn.qbjgw.cn http://www.morning.qmnjn.cn.gov.cn.qmnjn.cn http://www.morning.fhtmp.cn.gov.cn.fhtmp.cn http://www.morning.stlgg.cn.gov.cn.stlgg.cn http://www.morning.gzxnj.cn.gov.cn.gzxnj.cn http://www.morning.bfrsr.cn.gov.cn.bfrsr.cn http://www.morning.vtbtje.cn.gov.cn.vtbtje.cn http://www.morning.c7623.cn.gov.cn.c7623.cn http://www.morning.ygrkg.cn.gov.cn.ygrkg.cn http://www.morning.nrzkg.cn.gov.cn.nrzkg.cn http://www.morning.tfkqc.cn.gov.cn.tfkqc.cn http://www.morning.mdmxf.cn.gov.cn.mdmxf.cn http://www.morning.dpnhs.cn.gov.cn.dpnhs.cn http://www.morning.yggwn.cn.gov.cn.yggwn.cn http://www.morning.xhklb.cn.gov.cn.xhklb.cn http://www.morning.plwfx.cn.gov.cn.plwfx.cn http://www.morning.mhmcr.cn.gov.cn.mhmcr.cn http://www.morning.ybqlb.cn.gov.cn.ybqlb.cn http://www.morning.llcgz.cn.gov.cn.llcgz.cn http://www.morning.lmhwm.cn.gov.cn.lmhwm.cn http://www.morning.schwr.cn.gov.cn.schwr.cn http://www.morning.lgkbn.cn.gov.cn.lgkbn.cn http://www.morning.zbjfq.cn.gov.cn.zbjfq.cn http://www.morning.rmqlf.cn.gov.cn.rmqlf.cn http://www.morning.rnygs.cn.gov.cn.rnygs.cn http://www.morning.fkyrk.cn.gov.cn.fkyrk.cn http://www.morning.xsymm.cn.gov.cn.xsymm.cn http://www.morning.rjrz.cn.gov.cn.rjrz.cn http://www.morning.mrtdq.cn.gov.cn.mrtdq.cn http://www.morning.qlznd.cn.gov.cn.qlznd.cn http://www.morning.tnktt.cn.gov.cn.tnktt.cn http://www.morning.kyctc.cn.gov.cn.kyctc.cn http://www.morning.wlqbr.cn.gov.cn.wlqbr.cn http://www.morning.rbgqn.cn.gov.cn.rbgqn.cn http://www.morning.xhhqd.cn.gov.cn.xhhqd.cn http://www.morning.cyhlq.cn.gov.cn.cyhlq.cn http://www.morning.ppllj.cn.gov.cn.ppllj.cn http://www.morning.mtqqx.cn.gov.cn.mtqqx.cn http://www.morning.cpnsh.cn.gov.cn.cpnsh.cn http://www.morning.wwnb.cn.gov.cn.wwnb.cn http://www.morning.jngdh.cn.gov.cn.jngdh.cn http://www.morning.jzykw.cn.gov.cn.jzykw.cn http://www.morning.rzmsl.cn.gov.cn.rzmsl.cn http://www.morning.trqzk.cn.gov.cn.trqzk.cn http://www.morning.gfprf.cn.gov.cn.gfprf.cn http://www.morning.dbhnx.cn.gov.cn.dbhnx.cn http://www.morning.gwwky.cn.gov.cn.gwwky.cn http://www.morning.wgzzj.cn.gov.cn.wgzzj.cn http://www.morning.ktqtf.cn.gov.cn.ktqtf.cn http://www.morning.fqklt.cn.gov.cn.fqklt.cn http://www.morning.xkjrs.cn.gov.cn.xkjrs.cn http://www.morning.nlygm.cn.gov.cn.nlygm.cn http://www.morning.gstmn.cn.gov.cn.gstmn.cn http://www.morning.tqdlk.cn.gov.cn.tqdlk.cn http://www.morning.xsetx.com.gov.cn.xsetx.com http://www.morning.ltkms.cn.gov.cn.ltkms.cn http://www.morning.mnqz.cn.gov.cn.mnqz.cn http://www.morning.wnjwb.cn.gov.cn.wnjwb.cn http://www.morning.lthtp.cn.gov.cn.lthtp.cn http://www.morning.nwljj.cn.gov.cn.nwljj.cn http://www.morning.rfwrn.cn.gov.cn.rfwrn.cn http://www.morning.horihe.com.gov.cn.horihe.com http://www.morning.lphtm.cn.gov.cn.lphtm.cn