diff --git a/platform-biz-service/src/main/java/com/lyms/platform/permission/dao/master/MasterOrganizationMapper.java b/platform-biz-service/src/main/java/com/lyms/platform/permission/dao/master/MasterOrganizationMapper.java index 4be1385..975e80e 100644 --- a/platform-biz-service/src/main/java/com/lyms/platform/permission/dao/master/MasterOrganizationMapper.java +++ b/platform-biz-service/src/main/java/com/lyms/platform/permission/dao/master/MasterOrganizationMapper.java @@ -42,4 +42,6 @@ public interface MasterOrganizationMapper { List> findIdByTownOrgId(@Param("townOrgId") String townOrgId); List getOrganizationByHosps(@Param("hospPermissions") List hospPermissions); + + List getOrganizationByHospsHs(@Param("hospPermissions") List hospPermissions); } \ No newline at end of file diff --git a/platform-biz-service/src/main/java/com/lyms/platform/permission/service/OrganizationService.java b/platform-biz-service/src/main/java/com/lyms/platform/permission/service/OrganizationService.java index 03c651b..1edb827 100644 --- a/platform-biz-service/src/main/java/com/lyms/platform/permission/service/OrganizationService.java +++ b/platform-biz-service/src/main/java/com/lyms/platform/permission/service/OrganizationService.java @@ -47,4 +47,5 @@ public interface OrganizationService { List> findIdByTownOrgId(String townOrgId); List getOrganizationByHosps(List hospPermissions); + List getOrganizationByHospsHs(List hospPermissions); } \ No newline at end of file diff --git a/platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/OrganizationServiceImpl.java b/platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/OrganizationServiceImpl.java index 8475fba..b04f33a 100644 --- a/platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/OrganizationServiceImpl.java +++ b/platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/OrganizationServiceImpl.java @@ -328,5 +328,9 @@ public class OrganizationServiceImpl extends DataAccessLayerService implements O public List getOrganizationByHosps(List hospPermissions) { return masterOrganizationMapper.getOrganizationByHosps(hospPermissions); } + @Override + public List getOrganizationByHospsHs(List hospPermissions) { + return masterOrganizationMapper.getOrganizationByHospsHs(hospPermissions); + } } \ No newline at end of file diff --git a/platform-biz-service/src/main/resources/mainOrm/master/BabyDiagnoseMapper.xml b/platform-biz-service/src/main/resources/mainOrm/master/BabyDiagnoseMapper.xml index d514567..4f07044 100644 --- a/platform-biz-service/src/main/resources/mainOrm/master/BabyDiagnoseMapper.xml +++ b/platform-biz-service/src/main/resources/mainOrm/master/BabyDiagnoseMapper.xml @@ -137,7 +137,7 @@ - + \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/pojo/BabyDischargeDiagnosisModel.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/pojo/BabyDischargeDiagnosisModel.java index 120378f..60a90a9 100644 --- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/pojo/BabyDischargeDiagnosisModel.java +++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/pojo/BabyDischargeDiagnosisModel.java @@ -6,6 +6,9 @@ import com.lyms.platform.common.utils.DateUtil; import com.lyms.platform.pojo.BabyDiagnoseModel; public class BabyDischargeDiagnosisModel implements IBasicRequestConvert { + + //1新生儿科 2 产科住院数据 + private String type; //病历号=住院号 private String blh; @@ -74,6 +77,14 @@ public class BabyDischargeDiagnosisModel implements IBasicRequestConvert list = null; - //新生儿科, + //新生儿住院婴儿, if("1".equals(type)){ - // 1 获取基础数据 Connection conn = null; - String sql = "select blh,syxh,hzxm,birth,birthtime,sex,sfzh,lxdh,lxdz,lxr,lxrdh,curraddr,lrrq,ryrq,rqrq,cyrq,cqrq,cyzddm,cyzdmc,ksdm,bqdm,mblh,msyxh from VW_LYMS_XSE_BRSYK where cyrq is not null and mblh is null "; +// String sql = "select blh,syxh,hzxm,birth,birthtime,sex,sfzh,lxdh,lxdz,lxr,lxrdh,curraddr,lrrq,ryrq,rqrq,cyrq,cqrq,cyzddm,cyzdmc,ksdm,bqdm,mblh,msyxh from VW_LYMS_XSE_BRSYK where cyrq is not null and mblh is null "; + String sql = "select type='1',blh,syxh,hzxm,birth,birthtime,sex,sfzh,lxdh,lxdz,lxr,lxrdh,curraddr,lrrq,ryrq,rqrq,cyrq,cqrq,cyzddm,cyzdmc,ksdm,bqdm,mblh,msyxh from VW_LYMS_XSE_BRSYK where cyrq is not null and ksdm ='2545' and bqdm <> '206' "; try { - if (StringUtils.isNotEmpty(lrrqStart) && StringUtils.isNotEmpty(lrrqEnd)) { sql += " and lrrq >= CONVERT(varchar(100),'" + lrrqStart + "', 120) and lrrq <= CONVERT(varchar(100),'" + lrrqEnd + "', 120)"; } - conn = com.lyms.hospitalapi.qhdfy.ConnTools.makeHisConnection(); QueryRunner queryRunner = new QueryRunner(); @@ -1040,22 +1038,17 @@ public class QhdfyHisService { } finally { DbUtils.closeQuietly(conn); } - // 2 获取详情数据,查询80数据库获取详情,在将结果遍历填充到list详情字段 - - - + // 2 获取诊断详情结果遍历填充到list详情字段 + getDetails(list, conn, sql); }//产科住院数据 else if ("2".equals(type)){ - //1 获取基础数据 Connection conn = null; - String sql = "select blh,syxh,hzxm,birth,birthtime,sex,sfzh,lxdh,lxdz,lxr,lxrdh,curraddr,lrrq,ryrq,rqrq,cyrq,cqrq,cyzddm,cyzdmc,ksdm,bqdm,mblh,msyxh from VW_LYMS_XSE_BRSYK where cyrq is not null and mblh is null "; + String sql = "select type='2',blh,syxh,hzxm,birth,birthtime,sex,sfzh,lxdh,lxdz,lxr,lxrdh,curraddr,lrrq,ryrq,rqrq,cyrq,cqrq,cyzddm,cyzdmc,ksdm,bqdm,mblh,msyxh from VW_LYMS_XSE_BRSYK where cyrq is not null and ksdm ='2545' and bqdm <> '206' "; try { - if (StringUtils.isNotEmpty(lrrqStart) && StringUtils.isNotEmpty(lrrqEnd)) { sql += " and lrrq >= CONVERT(varchar(100),'" + lrrqStart + "', 120) and lrrq <= CONVERT(varchar(100),'" + lrrqEnd + "', 120)"; } - conn = com.lyms.hospitalapi.qhdfy.ConnTools.makeHisConnection(); QueryRunner queryRunner = new QueryRunner(); @@ -1065,15 +1058,43 @@ public class QhdfyHisService { } finally { DbUtils.closeQuietly(conn); } - // 2 获取详情数据,查询80数据库获取详情,在将结果遍历填充到list详情字段 + getDetails(list, conn, sql); + } - } + return list; + } + private void getDetails(List list, Connection conn, String sql) { + if(CollectionUtils.isNotEmpty(list)){ + for (int i = 0; i listxq = queryRunner.query(conn, sql, new BeanListHandler(BabyDischargeDiagnosisModel.class)); + String cyzdxq = ""; + for (int j = 0; j < listxq.size(); j++) { + BabyDischargeDiagnosisModel babyDischargeDiagnosisModel1 = listxq.get(i); + if(babyDischargeDiagnosisModel1 !=null && StringUtils.isNotEmpty(babyDischargeDiagnosisModel1.getCyzdmc())){ + cyzdxq = babyDischargeDiagnosisModel1.getCyzdmc()+" "; + } + } + babyDischargeDiagnosisModel.setCyzdmc(cyzdxq);//将诊断详情覆盖以前的主要诊断 + } catch (SQLException e) { + e.printStackTrace(); + }finally { + DbUtils.closeQuietly(conn); + } + } - return list; + } + } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PregnantBuildController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PregnantBuildController.java index 3ad89d9..1f0a739 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PregnantBuildController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PregnantBuildController.java @@ -287,7 +287,27 @@ public class PregnantBuildController extends BaseController { BaseObjectResponse objectResponse = bookbuildingFacade.queryHospitals(keyWord, page, limit); return objectResponse; } - + /** + * 衡水产筛区域统计查询申请医院下拉框,权限限制 + * + * @param request + * @param keyWord + * @param page + * @param limit + * @Author: 武涛涛 + * @Date: 2020/7/17 16:33 + */ + @RequestMapping(value = "/queryHospitalsHs", method = RequestMethod.GET) + @ResponseBody + @TokenRequired + public BaseObjectResponse queryHospitalsHs(HttpServletRequest request, + @RequestParam(required = false) String keyWord, + @RequestParam(required = false) Integer page, + @RequestParam(required = false) Integer limit) { + LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); + BaseObjectResponse objectResponse = bookbuildingFacade.queryHospitalsHs(loginState.getId(),keyWord, page, limit); + return objectResponse; + } public static final String center_statistics_url = PropertiesUtils.getPropertyValue("center_statistics_url"); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java index c63696b..a0c5f99 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabyBookbuildingFacade.java @@ -4348,6 +4348,7 @@ public class BabyBookbuildingFacade { map.put("contactsPhone", info.getLxrdh()); map.put("contactPhone", info.getLxdh()); map.put("contacts", info.getLxr()); + map.put("type", info.getType()); result.add(map); } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BookbuildingFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BookbuildingFacade.java index 1aa2cbd..60a6314 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BookbuildingFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BookbuildingFacade.java @@ -102,6 +102,8 @@ public class BookbuildingFacade { @Autowired private SmsTemplateService smsTemplateService; + @Autowired + private DataPermissionService dataPermissionService; @Autowired private AutoMatchFacade autoMatchFacade; @@ -2203,6 +2205,59 @@ public class BookbuildingFacade { objectResponse.setErrormsg("成功"); return objectResponse; } + /** + * 获取医院列表,授权限限制 + * + * @param keyWord + * @param page + * @param limit + * @Author: 武涛涛 + * @Date: 2020/7/17 16:35 + */ + public BaseObjectResponse queryHospitalsHs( Integer userId,String keyWord, Integer page, Integer limit) { + + String hospitalId = autoMatchFacade.getHospitalId(userId); + List hospitalList = new ArrayList<>(); + if(null!=hospitalId){ + //当前用户本院 + hospitalList.add(hospitalId); + } + //查询用户是否有区域权限 + DataPermissionsModelQuery dataPermissionsModelQuery = new DataPermissionsModelQuery(); + dataPermissionsModelQuery.setUserId(userId); + List permissionsModels = dataPermissionService.queryPermission(dataPermissionsModelQuery); + if (CollectionUtils.isNotEmpty(permissionsModels)) { + Set set = permissionsModels.get(0).getData().keySet(); + Iterator it = set.iterator(); + while (it.hasNext()) { + String id = it.next(); + if (com.lyms.platform.common.utils.StringUtils.isNotEmpty(id) && !hospitalList.contains(id)) { + hospitalList.add(id); + } + } + } + + List> mapList = new ArrayList<>(); + List hospPermissions = new ArrayList<>(); + hospPermissions.addAll(hospitalList); + if (CollectionUtils.isNotEmpty(hospPermissions)) { + List organizations = organizationService.getOrganizationByHospsHs(hospPermissions); + if (CollectionUtils.isNotEmpty(organizations)) { + for (Organization model : organizations) { + Map data = new HashMap(); + data.put("id", model.getId()); + data.put("name", model.getName()); + mapList.add(data); + } + } + } + + BaseObjectResponse objectResponse = new BaseObjectResponse(); + objectResponse.setData(mapList); + objectResponse.setErrorcode(ErrorCodeConstants.SUCCESS); + objectResponse.setErrormsg("成功"); + return objectResponse; + } public BaseListResponse queryChanJianReport(Integer userId, String exDateStart, String exDateEnd, diff --git a/platform-operate-api/src/main/resources/mybatis.xml b/platform-operate-api/src/main/resources/mybatis.xml index 06942b0..7ac7cf4 100644 --- a/platform-operate-api/src/main/resources/mybatis.xml +++ b/platform-operate-api/src/main/resources/mybatis.xml @@ -12,6 +12,8 @@ +