diff --git a/platform-biz-service/src/main/java/com/lyms/platform/permission/model/BabyDiagnoseQuery.java b/platform-biz-service/src/main/java/com/lyms/platform/permission/model/BabyDiagnoseQuery.java
index a9c2d87..70640bb 100644
--- a/platform-biz-service/src/main/java/com/lyms/platform/permission/model/BabyDiagnoseQuery.java
+++ b/platform-biz-service/src/main/java/com/lyms/platform/permission/model/BabyDiagnoseQuery.java
@@ -9,6 +9,7 @@ public class BabyDiagnoseQuery extends BaseQuery {
private String endBirthDate;
private String hospitalizationNo;
private String babyName;
+ private String type;
private String finalDiagnosis;
//是否建档 1.未建档 2.已建档
private Integer isbuild;
@@ -29,6 +30,14 @@ public class BabyDiagnoseQuery extends BaseQuery {
this.startDischargeDate = startDischargeDate;
}
+ public String getType() {
+ return type;
+ }
+
+ public void setType(String type) {
+ this.type = type;
+ }
+
public String getEndDischargeDate() {
return endDischargeDate;
}
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 a1d118b..d514567 100644
--- a/platform-biz-service/src/main/resources/mainOrm/master/BabyDiagnoseMapper.xml
+++ b/platform-biz-service/src/main/resources/mainOrm/master/BabyDiagnoseMapper.xml
@@ -127,6 +127,9 @@
and isbuild = #{isbuild}
+
+ and type = #{type}
+
@@ -153,4 +156,5 @@
+
\ No newline at end of file
diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/BabyDiagnoseModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/BabyDiagnoseModel.java
index 2351a2e..70029a3 100644
--- a/platform-dal/src/main/java/com/lyms/platform/pojo/BabyDiagnoseModel.java
+++ b/platform-dal/src/main/java/com/lyms/platform/pojo/BabyDiagnoseModel.java
@@ -12,6 +12,8 @@ public class BabyDiagnoseModel {
private String blh;
private String syxh;
+ // 1新生儿科 2 产科住院数据
+ private String type;
//姓名
@@ -67,6 +69,14 @@ public class BabyDiagnoseModel {
//是否建档 1未建档 2已建档
private Integer isbuild;
+ public String getType() {
+ return type;
+ }
+
+ public void setType(String type) {
+ this.type = type;
+ }
+
public Integer getId() {
return id;
}
diff --git a/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdfyHisService.java b/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdfyHisService.java
index cd114d6..33eeafd 100644
--- a/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdfyHisService.java
+++ b/platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdfyHisService.java
@@ -1008,6 +1008,76 @@ public class QhdfyHisService {
/**
+ * 秦皇岛分别获取新生儿科、产科住院数据
+ *
+ * @param lrrqStart
+ * @param lrrqEnd
+ * @param type 1新生儿科 2 产科住院数据
+ * @Author: 武涛涛
+ * @Date: 2020/7/14 9:55
+ */
+ public List queryNewBabyDiagnoseQhd(String lrrqStart, String lrrqEnd, String type) {
+ //新生儿科和产科返回数据字段相同
+ List 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 ";
+ 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();
+
+ list = queryRunner.query(conn, sql, new BeanListHandler(BabyDischargeDiagnosisModel.class));
+ } catch (Exception e) {
+ ExceptionUtils.catchException(e, "queryNewBabyDiagnose error. sql:" + sql);
+ } finally {
+ DbUtils.closeQuietly(conn);
+ }
+ // 2 获取详情数据,查询80数据库获取详情,在将结果遍历填充到list详情字段
+
+
+
+
+ }//产科住院数据
+ 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 ";
+ 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();
+
+ list = queryRunner.query(conn, sql, new BeanListHandler(BabyDischargeDiagnosisModel.class));
+ } catch (Exception e) {
+ ExceptionUtils.catchException(e, "queryNewBabyDiagnose error. sql:" + sql);
+ } finally {
+ DbUtils.closeQuietly(conn);
+ }
+ // 2 获取详情数据,查询80数据库获取详情,在将结果遍历填充到list详情字段
+
+
+
+ }
+
+
+
+ return list;
+ }
+
+
+ /**
*
* 根据病历号(住院号)查询对应人的身份证号码
* @param blNo
diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java
index 3e548a2..60cb53b 100644
--- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java
+++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabyBuildController.java
@@ -571,6 +571,41 @@ public class BabyBuildController extends BaseController {
return babyBookbuildingFacade.getBabyDiacrisisList(babyDiagnoseQuery, page, limit);
}
+ /**
+ * 秦皇岛 (新生儿科诊断,产科病房诊断)list
+ * @param babyDiagnoseQuery
+ * @param page
+ * @param limit
+ * @Author: 武涛涛
+ * @Date: 2020/7/14 10:30
+ */
+ @ResponseBody
+ @RequestMapping(value = "/getBabyLeaveHospitaiacrisisQhd", method = RequestMethod.GET)
+ @TokenRequired
+ public BaseResponse getBabyLeaveHospitaiacrisisQhd(BabyDiagnoseQuery babyDiagnoseQuery,
+ @RequestParam("page") Integer page,
+ @RequestParam("type") String type,
+ @RequestParam("limit") Integer limit) {
+ return babyBookbuildingFacade.getBabyDiacrisisListQhd(babyDiagnoseQuery, page, limit,type);
+ }
+
+
+ /**
+ * 秦皇岛 产科门诊诊断 list
+ *
+
+ * @Author: 武涛涛
+ * @Date: 2020/7/15 9:31
+ */
+ @ResponseBody
+ @RequestMapping(value = "/getObstetricDiagnosisQhd", method = RequestMethod.GET)
+ @TokenRequired
+ public BaseResponse getObstetricDiagnosisQhd(HttpServletRequest httpServletRequest,BabyManageRequest babyManageRequest) {
+ LoginContext loginState = (LoginContext) httpServletRequest.getAttribute("loginContext");
+
+ return babyBookbuildingFacade.getObstetricDiagnosisQhd(babyManageRequest,loginState.getId());
+ }
+
/**
* 处理历史数据 按照时间返回获取保存,格式:lrrqStart=2019062414:41:00&lrrqEnd=2019062418:41:00
@@ -588,6 +623,27 @@ public class BabyBuildController extends BaseController {
return babyBookbuildingFacade.queryNewBabyDiagnose(lrrqStart, lrrqEnd);
}
+ /**
+ * 秦皇岛 处理历史数据 按照时间返回获取保存,格式:lrrqStart=2019062414:41:00&lrrqEnd=2019062418:41:00
+ * 将视图数据存储到本地mysql数据库,提供列表查询使用。
+ *
+ * @param request
+ * @param response
+ * @param lrrqStart
+ * @param type 1 新生儿科、2 产科住院数据
+ * @param lrrqEnd
+ * @Author: 武涛涛
+ * @Date: 2020/7/14 10:14
+ */
+ @ResponseBody
+ @RequestMapping(value = "/queryNewBabyDiagnoseQhd", method = RequestMethod.GET)
+ public BaseResponse queryNewBabyDiagnoseQhd(HttpServletRequest request, HttpServletResponse response,
+ @RequestParam(value = "lrrqStart", required = true) String lrrqStart,
+ @RequestParam(value = "type", required = true) String type,
+ @RequestParam(value = "lrrqEnd", required = true) String lrrqEnd
+ ) {
+ return babyBookbuildingFacade.queryNewBabyDiagnoseQhd(lrrqStart, lrrqEnd, type);
+ }
/**
* 获取可以导出的医院列表
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 8e5482a..c63696b 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
@@ -21,10 +21,7 @@ import com.lyms.platform.operate.web.request.*;
import com.lyms.platform.operate.web.result.*;
import com.lyms.platform.operate.web.service.BabyAfterVisitService;
import com.lyms.platform.operate.web.service.ITrackDownService;
-import com.lyms.platform.operate.web.utils.BabyListTask;
-import com.lyms.platform.operate.web.utils.CommonsHelper;
-import com.lyms.platform.operate.web.utils.GrowthCountTask;
-import com.lyms.platform.operate.web.utils.MongoUtil;
+import com.lyms.platform.operate.web.utils.*;
import com.lyms.platform.permission.model.*;
import com.lyms.platform.permission.service.*;
import com.lyms.platform.pojo.*;
@@ -136,7 +133,10 @@ public class BabyBookbuildingFacade {
@Autowired
private SyncDataService syncDataService;
-
+ @Autowired
+ private AntExRecordService recordService;
+ @Autowired
+ private CommonService commonService;
@Autowired
private AreaCountFacade areaCountFacade;
@@ -2305,6 +2305,119 @@ public class BabyBookbuildingFacade {
objectResponse.setErrormsg("成功");
return objectResponse;
}
+ public BaseListResponse queryObstetricDiagnosisQhdList(BabyManageRequest request, Integer userId) {
+
+ String hospitalName = "";
+ String hospitalId = "";
+ //得到当前登录的医院id
+ List hospitalIdList = new ArrayList<>();
+ List list = null;
+ BabyModelQuery babyQuery = null;
+ List models = null;
+ try {
+ if (userId != null) {
+ Users dbuser = usersService.getUsers(userId);
+ if (dbuser != null) {
+ hospitalId = String.valueOf(dbuser.getOrgId());
+ hospitalIdList.add(hospitalId);
+ hospitalName = organizationService.getOrganization(Integer.valueOf(hospitalId)).getName();
+ }
+ }
+ //获取全部儿童信息
+ list = new ArrayList<>();
+ babyQuery = new BabyModelQuery();
+ babyQuery.setNeed("true");
+ babyQuery.setPage(request.getPage());
+ babyQuery.setLimit(request.getLimit());
+ babyQuery.setQueryNo(request.getQueryNo());
+ babyQuery.setHospitalIdList(hospitalIdList);
+ List buildType = new ArrayList();
+ buildType.add(1);//儿童直接建档
+ buildType.add(2);//产妇分娩建档
+ babyQuery.setBuildTypeList(buildType);
+ babyQuery.setDataStatus(true);//排除自动建档数据
+ babyQuery.setYn(YnEnums.YES.getId());
+ babyQuery.setMphone(request.getMphone());//母亲联系方式
+ if (StringUtils.isNotEmpty(request.getBirth())) {//生日
+ String birthStr = request.getBirth();
+ String[] dates = birthStr.split(" - ");
+ babyQuery.setBirthStart(DateUtil.parseYMD(dates[0]));
+ babyQuery.setBirthEnd(new Date(DateUtil.parseYMD(dates[1]).getTime() + 24 * 60 * 60 * 1000 - 1));
+ }
+ models = babyBookbuildingService.queryBabyBuildByCond(babyQuery, "created", Sort.Direction.DESC);
+ //如果有高危儿多项就加一下
+ if(CollectionUtils.isNotEmpty(request.getHighRiskInfos())){
+ List parentids = new ArrayList<>();
+ for (BabyModel model: models) {
+ if(StringUtils.isNotEmpty(model.getParentId())){
+ parentids.add(model.getParentId());
+ }
+ }
+ AntExRecordQuery antExRecordQuery = new AntExRecordQuery();
+ antExRecordQuery.setNeed("true");
+ antExRecordQuery.setParentIds(parentids);
+ antExRecordQuery.setrFactorList(request.getHighRiskInfos());//高危儿多项
+ List antExRecordModelList = recordService.queryAntExRecords(antExRecordQuery, Sort.Direction.DESC, "created");
+ List antExRecordModelparentids = new ArrayList<>();
+ for (AntExRecordModel antExRecordModel: antExRecordModelList) {
+ if(StringUtils.isNotEmpty(antExRecordModel.getParentId())){
+ antExRecordModelparentids.add(antExRecordModel.getParentId());
+ }
+ }
+ //如果有高危条件,没有查询到高危信息,那就返回null
+ if(CollectionUtils.isEmpty(antExRecordModelparentids)){
+ models = null;
+ babyQuery.mysqlBuild(0);
+ }else {
+ babyQuery.setParentIds(antExRecordModelparentids);
+ models = babyBookbuildingService.queryBabyBuildByCond(babyQuery, "created", Sort.Direction.DESC);
+
+ }
+
+ }
+ } catch (NumberFormatException e) {
+ e.printStackTrace();
+ }
+
+ if (CollectionUtils.isNotEmpty(models)) {
+ int batchSize = 50;
+ int end = 0;
+ List futures = new ArrayList<>();
+ for (int i = 0; i < models.size(); i += batchSize) {
+ end = (end + batchSize);
+ if (end > models.size()) {
+ end = models.size();
+ }
+ List ms = models.subList(i, end);
+ Callable c = new BabyListQhdTask(
+ basicConfigFacade,
+ recordService,
+ commonService,
+ basicConfigService,
+ organizationService,
+ babyCheckFacade,
+ ms, hospitalName);
+ Future f = commonThreadPool.submit(c);
+ futures.add(f);
+ }
+ if (CollectionUtils.isNotEmpty(futures)) {
+ for (Future f : futures) {
+ try {
+ list.addAll((List) f.get());
+ } catch (Exception e) {
+ ExceptionUtils.catchException(e, "baby list error.");
+ }
+ }
+ }
+ }
+
+ BaseListResponse objectResponse = new BaseListResponse();
+ objectResponse.setErrorcode(ErrorCodeConstants.SUCCESS);
+ objectResponse.setData(list);
+ objectResponse.setPageInfo(babyQuery.getPageInfo());
+ objectResponse.setErrormsg("成功");
+ return objectResponse;
+ }
public BaseResponse updateEndCase(BabyCheckRequest request, Integer userId) {
@@ -4190,6 +4303,76 @@ public class BabyBookbuildingFacade {
objectResponse.setErrormsg("成功");
return objectResponse;
}
+ /**
+ * 秦皇岛 诊断(新生儿,产科)管理查询 list
+ *
+ * @param babyDiagnoseQuery
+ * @param page
+ * @param limit
+ * @param type
+ * @Author: 武涛涛
+ * @Date: 2020/7/14 11:31
+ */
+ public BaseListResponse getBabyDiacrisisListQhd(BabyDiagnoseQuery babyDiagnoseQuery, Integer page, Integer limit,String type) {
+ List