Commit a526a0a5d88c330de2b58d2fded66fd9c3c4416e

Authored by gengxiaokai
1 parent 15fe4e8799

威海分娩记录修改,新筛接口

Showing 9 changed files with 213 additions and 33 deletions

platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/BabySieveService.java View file @ a526a0a
... ... @@ -35,6 +35,14 @@
35 35 return babySieveDao.queryBabySieve(query.addOrder(Sort.Direction.DESC, "created"));
36 36 }
37 37  
  38 + public List<BabySieveModel> getBabySieveQuery1(BabySieveQuery babySieveQuery){
  39 + MongoQuery query = babySieveQuery.convertToQuery();
  40 + //babySieveQuery.mysqlBuild(babySieveDao.queryBabySieveCount(query));
  41 + query.start(1).end(1);
  42 +
  43 + return babySieveDao.queryBabySieve(query.addOrder(Sort.Direction.DESC, "testNumber"));
  44 + }
  45 +
38 46 public BabySieveModel getBabySieveQueryBybabyId(String id){
39 47 BabySieveQuery babySieveQuery = new BabySieveQuery();
40 48 babySieveQuery.setBabyId(id);
platform-dal/src/main/java/com/lyms/platform/pojo/MaternalDeliverModel.java View file @ a526a0a
... ... @@ -1753,6 +1753,10 @@
1753 1753 private String ssRecord;//手术记录
1754 1754 private Map<String,Object> ssCount;//手术清点
1755 1755 private String ssProcedure;//所施手术
  1756 + private String pgcCxl;//剖宫产出血量
  1757 + private String totalTwoCxl;//阴道分娩产后2小时总出血量
  1758 + private String gongjing;//宫颈(0:无破;1:撕裂;2:其他)
  1759 + private String gjOther;//宫颈其它;
1756 1760  
1757 1761 public Integer getParity() {
1758 1762 return parity;
... ... @@ -1928,6 +1932,38 @@
1928 1932  
1929 1933 public void setSsProcedure(String ssProcedure) {
1930 1934 this.ssProcedure = ssProcedure;
  1935 + }
  1936 +
  1937 + public String getPgcCxl() {
  1938 + return pgcCxl;
  1939 + }
  1940 +
  1941 + public void setPgcCxl(String pgcCxl) {
  1942 + this.pgcCxl = pgcCxl;
  1943 + }
  1944 +
  1945 + public String getTotalTwoCxl() {
  1946 + return totalTwoCxl;
  1947 + }
  1948 +
  1949 + public void setTotalTwoCxl(String totalTwoCxl) {
  1950 + this.totalTwoCxl = totalTwoCxl;
  1951 + }
  1952 +
  1953 + public String getGongjing() {
  1954 + return gongjing;
  1955 + }
  1956 +
  1957 + public void setGongjing(String gongjing) {
  1958 + this.gongjing = gongjing;
  1959 + }
  1960 +
  1961 + public String getGjOther() {
  1962 + return gjOther;
  1963 + }
  1964 +
  1965 + public void setGjOther(String gjOther) {
  1966 + this.gjOther = gjOther;
1931 1967 }
1932 1968 }
platform-dal/src/main/java/com/lyms/platform/query/BabySieveQuery.java View file @ a526a0a
... ... @@ -23,7 +23,7 @@
23 23 private List<String> listBabyId;//儿童建档ID集合
24 24 private Date applyDateStrat;//申请开始时间
25 25 private Date applyDateEnd;//申请结束时间
26   - private String testNumber;//血样码
  26 + private String testNumber;//血卡编号
27 27 private String collectHospitalId;//申请医院(采血单位)
28 28 private String sendCheckHospitalId;//送检医院
29 29 private String order;//排序
... ... @@ -153,7 +153,7 @@
153 153 condition = condition.and("babyId", listBabyId, MongoOper.IN);
154 154 }
155 155 if(testNumber != null){
156   - condition = condition.and("testNumber", testNumber, MongoOper.IS);
  156 + condition = condition.and("xkNo", testNumber, MongoOper.IS);
157 157 }
158 158 if(collectHospitalId != null){
159 159 condition = condition.and("collectHospitalId", collectHospitalId, MongoOper.IS);
platform-operate-api/src/main/java/com/lyms/hospitalapi/Cdfy/CdGwInterface.java View file @ a526a0a
... ... @@ -102,7 +102,7 @@
102 102 String qhId = "";
103 103  
104 104 try {
105   - conn.setAutoCommit(false);
  105 + //conn.setAutoCommit(false);
106 106 //医疗机构编码
107 107 String code = "";
108 108 //民族代码
... ... @@ -346,7 +346,7 @@
346 346  
347 347 int adress07 = ps.executeUpdate();
348 348 if (adress07 > 0) {
349   - conn.commit();//提交事务
  349 + //conn.commit();//提交事务
350 350 br.setErrorcode(ErrorCodeConstants.SUCCESS);
351 351 br.setErrormsg(ErrorCodeConstants.SUCCESS_DESCRIPTION);
352 352 return br;
353 353  
... ... @@ -371,11 +371,11 @@
371 371  
372 372 } catch (Exception e) {
373 373  
374   - try{
  374 + /*try{
375 375 conn.rollback();//出现错误回滚事务
376 376 }catch (SQLException exc){
377 377 exc.printStackTrace();
378   - }
  378 + }*/
379 379  
380 380 e.printStackTrace();
381 381  
... ... @@ -429,7 +429,7 @@
429 429 String qhId = "";
430 430  
431 431 try{
432   - conn.setAutoCommit(false);
  432 + //conn.setAutoCommit(false);
433 433 Patients patients = patientsService.findOnePatientById(antExChuModel.getParentId());
434 434  
435 435 //查询智业民族代码
... ... @@ -519,7 +519,7 @@
519 519 ps = conn.prepareStatement(delSql);
520 520 int delCount = ps.executeUpdate();
521 521 if (delCount > 0) {
522   - conn.commit();//提交事务
  522 + //conn.commit();//提交事务
523 523 System.out.print("初诊数据删除成功,请重新插入!");
524 524 }
525 525  
526 526  
527 527  
... ... @@ -1088,18 +1088,18 @@
1088 1088  
1089 1089 }
1090 1090  
1091   - conn.commit();//提交事务
  1091 + //conn.commit();//提交事务
1092 1092 return br;
1093 1093 }
1094 1094  
1095 1095 }
1096 1096  
1097 1097 }catch (Exception e){
1098   - try{
  1098 + /*try{
1099 1099 conn.rollback();//出现错误回滚事务
1100 1100 }catch (SQLException exc){
1101 1101 exc.printStackTrace();
1102   - }
  1102 + }*/
1103 1103  
1104 1104 e.printStackTrace();
1105 1105 }finally {
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/BabySieveController.java View file @ a526a0a
... ... @@ -11,6 +11,7 @@
11 11 import com.lyms.platform.operate.web.request.SieveAddRequest;
12 12 import com.lyms.platform.operate.web.result.BabySieveResult;
13 13 import org.apache.commons.lang.StringUtils;
  14 +import org.apache.ibatis.annotations.Param;
14 15 import org.springframework.beans.factory.annotation.Autowired;
15 16 import org.springframework.stereotype.Controller;
16 17 import org.springframework.web.bind.annotation.*;
... ... @@ -155,6 +156,21 @@
155 156 @RequestMapping(value = "/newSieveLab",method = RequestMethod.GET)
156 157 public BaseResponse newSieveLabResult(String testNum) {
157 158 return babySieveFacede.newSieveLabResult(testNum);
  159 + }
  160 +
  161 + /**
  162 + * 新生儿实验室
  163 + * @param xkNo 血卡编号
  164 + * @param request
  165 + * @return
  166 + */
  167 + @TokenRequired
  168 + @ResponseBody
  169 + @RequestMapping(value = "/generate",method = RequestMethod.GET)
  170 + public BaseResponse generate(@RequestParam("xkNo") String xkNo,HttpServletRequest request) {
  171 + Integer userId = ((LoginContext) request.getAttribute("loginContext")).getId();
  172 + //babySieveAddRequest.setOperatorId(1000000185);
  173 + return babySieveFacede.generate(xkNo,userId);
158 174 }
159 175  
160 176 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BabySieveFacede.java View file @ a526a0a
... ... @@ -920,24 +920,14 @@
920 920 if("NTSHS".equals(name)){
921 921 if(list != null && list.size()>0){
922 922 for(int j = 2;j<list.size();j++){
923   - String[] array = list.get(j).split(" ");
  923 + String buff = list.get(j).replaceAll(" {2,}", " ");
  924 + System.out.print(buff);
  925 + String[] array = buff.split(" ");
924 926 NewSieveLabModel newSieveLabModel = new NewSieveLabModel();
925   - if(j>=11){
926   - newSieveLabModel.setTestNumber(array[6]);
927   - newSieveLabModel.setNtshsyingguang(array[11]);
928   - newSieveLabModel.setNtshsnongdu(array[16]);
929   - babySieveService.addNewSieveLab(newSieveLabModel);
930   - }else if(j>=101){
931   - newSieveLabModel.setTestNumber(array[5]);
932   - newSieveLabModel.setNtshsyingguang(array[10]);
933   - newSieveLabModel.setNtshsnongdu(array[15]);
934   - babySieveService.addNewSieveLab(newSieveLabModel);
935   - }else{
936   - newSieveLabModel.setTestNumber(array[7]);
937   - newSieveLabModel.setNtshsyingguang(array[12]);
938   - newSieveLabModel.setNtshsnongdu(array[17]);
939   - babySieveService.addNewSieveLab(newSieveLabModel);
940   - }
  927 + newSieveLabModel.setTestNumber(array[3]);
  928 + newSieveLabModel.setNtshsyingguang(array[4]);
  929 + newSieveLabModel.setNtshsnongdu(array[5]);
  930 + babySieveService.addNewSieveLab(newSieveLabModel);
941 931  
942 932 }
943 933  
944 934  
... ... @@ -945,11 +935,13 @@
945 935 }else{
946 936 if(list != null && list.size()>0){
947 937 for(int j = 2;j<list.size();j++){
948   - String[] array = list.get(j).split(" ");
  938 + String buff = list.get(j).replaceAll(" {2,}", " ");
  939 + System.out.print(buff);
  940 + String[] array = buff.split(" ");
949 941 NewSieveLabModel newSieveLabModel = new NewSieveLabModel();
950   - newSieveLabModel.setTestNumber(array[7]);
951   - newSieveLabModel.setNtshsyingguang(array[13]);
952   - newSieveLabModel.setNtshsnongdu(array[17]);
  942 + newSieveLabModel.setTestNumber(array[3]);
  943 + newSieveLabModel.setNtshsyingguang(array[4]);
  944 + newSieveLabModel.setNtshsnongdu(array[5]);
953 945 babySieveService.addNewSieveLab(newSieveLabModel);
954 946 }
955 947 }
... ... @@ -984,6 +976,51 @@
984 976 }
985 977 return br;
986 978 }
  979 + return br;
  980 + }
  981 +
  982 + /**
  983 + *自动生成新筛卡片上的初筛试验号(用来与新筛结果匹配查询字段)
  984 + * @param xkNo(血卡编号)
  985 + * @return
  986 + */
  987 + public BaseResponse generate(String xkNo,Integer userId){
  988 + BaseObjectResponse br = new BaseObjectResponse();
  989 + BabySieveModel babySieveModel = null;
  990 + BabySieveQuery babySieveQuery = new BabySieveQuery();
  991 + babySieveQuery.setTestNumber(xkNo);
  992 + //先查询是否存在这个儿童申请单
  993 + List<BabySieveModel> list1 = babySieveService.getBabySieveQuery(babySieveQuery);
  994 + if(list1 != null && list1.size() > 0){
  995 + babySieveModel = list1.get(0);
  996 + //倒序查询最大的初筛试验号
  997 + List<BabySieveModel> list = babySieveService.getBabySieveQuery1(babySieveQuery);
  998 + if(list != null && list.size() > 0){
  999 + String today = DateUtil.getymd();
  1000 + //判断初筛试验号是否有值(确定第一次使用系统的时间,来编号)
  1001 + if(StringUtils.isNotEmpty(list.get(0).getTestNumber())){
  1002 + String num = list.get(0).getTestNumber();
  1003 + //比较今天是否有新生儿做过新筛检查
  1004 + if(today.equals(num.substring(0,8))){
  1005 + String shu = num.substring(8);
  1006 + int can = Integer.parseInt(shu);
  1007 + babySieveModel.setTestNumber((num.substring(0, 8)) + String.valueOf(can + 1));
  1008 + }else{
  1009 + babySieveModel.setTestNumber(today+"0001");
  1010 + }
  1011 + }else{
  1012 + babySieveModel.setTestNumber(today+"0001");
  1013 + }
  1014 + }
  1015 + String hospital = autoMatchFacade.getHospitalId(userId);
  1016 + babySieveService.updateBabySieveById(babySieveModel,babySieveModel.getId());
  1017 + //添加记录
  1018 + operateLogFacade.addModifyOptLog(userId, Integer.parseInt(hospital), list1.get(0), babySieveModel, OptActionEnums.UPDATE.getId(), "修改新生儿筛查申请记录中的初筛实验号");
  1019 + }else{
  1020 + return br.setErrorcode(ErrorCodeConstants.USER_NOT_EXISTS).setErrormsg("未找到申请儿童信息!");
  1021 + }
  1022 + br.setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setData(babySieveModel);
  1023 +
987 1024 return br;
988 1025 }
989 1026  
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java View file @ a526a0a
... ... @@ -2775,7 +2775,10 @@
2775 2775 map.put("ssRecord",data.getSsRecord());
2776 2776 map.put("ssCount",data.getSsCount());
2777 2777 map.put("ssProcedure",data.getSsProcedure());
2778   -
  2778 + map.put("pgcCxl",data.getPgcCxl());
  2779 + map.put("totalTwoCxl",data.getTotalTwoCxl());
  2780 + map.put("gongjing", data.getGongjing());
  2781 + map.put("gjOther",data.getGjOther());
2779 2782  
2780 2783 /* 产后生理 */
2781 2784 map.put("maternalInfo", data.getMaternalInfo() == null ? "" : CfEnums.getTitle(data.getMaternalInfo()));
platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/MatDeliverAddRequest.java View file @ a526a0a
... ... @@ -277,6 +277,38 @@
277 277 this.ssProcedure = ssProcedure;
278 278 }
279 279  
  280 + public String getPgcCxl() {
  281 + return pgcCxl;
  282 + }
  283 +
  284 + public void setPgcCxl(String pgcCxl) {
  285 + this.pgcCxl = pgcCxl;
  286 + }
  287 +
  288 + public String getTotalTwoCxl() {
  289 + return totalTwoCxl;
  290 + }
  291 +
  292 + public void setTotalTwoCxl(String totalTwoCxl) {
  293 + this.totalTwoCxl = totalTwoCxl;
  294 + }
  295 +
  296 + public String getGongjing() {
  297 + return gongjing;
  298 + }
  299 +
  300 + public void setGongjing(String gongjing) {
  301 + this.gongjing = gongjing;
  302 + }
  303 +
  304 + public String getGjOther() {
  305 + return gjOther;
  306 + }
  307 +
  308 + public void setGjOther(String gjOther) {
  309 + this.gjOther = gjOther;
  310 + }
  311 +
280 312 /******威海妇幼新增分娩记录字段******/
281 313 private Integer parity;//胎次
282 314 private String gsqsDate;//宫缩起始时间
... ... @@ -303,6 +335,10 @@
303 335 private String ssRecord;//手术记录
304 336 private Map<String,Object> ssCount;//手术清点
305 337 private String ssProcedure;//所施手术
  338 + private String pgcCxl;//剖宫产出血量
  339 + private String totalTwoCxl;//阴道分娩产后2小时总出血量
  340 + private String gongjing;//宫颈(0:无破;1:撕裂;2:其他)
  341 + private String gjOther;//宫颈其它;
306 342  
307 343  
308 344 @Override
... ... @@ -376,6 +412,10 @@
376 412 maternalDeliverModel.setSsRecord(ssRecord);
377 413 maternalDeliverModel.setSsCount(ssCount);
378 414 maternalDeliverModel.setSsProcedure(ssProcedure);
  415 + maternalDeliverModel.setPgcCxl(pgcCxl);
  416 + maternalDeliverModel.setTotalTwoCxl(totalTwoCxl);
  417 + maternalDeliverModel.setGongjing(gongjing);
  418 + maternalDeliverModel.setGjOther(gjOther);
379 419  
380 420 return maternalDeliverModel;
381 421 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/MaternalDeliverResult.java View file @ a526a0a
... ... @@ -134,7 +134,43 @@
134 134 private String ssRecord;//手术记录
135 135 private Map<String,Object> ssCount;//手术清点
136 136 private String ssProcedure;//所施手术
  137 + private String pgcCxl;//剖宫产出血量
  138 + private String totalTwoCxl;//阴道分娩产后2小时总出血量
  139 + private String gongjing;//宫颈(0:无破;1:撕裂;2:其他)
  140 + private String gjOther;//宫颈其它;
137 141  
  142 + public String getPgcCxl() {
  143 + return pgcCxl;
  144 + }
  145 +
  146 + public void setPgcCxl(String pgcCxl) {
  147 + this.pgcCxl = pgcCxl;
  148 + }
  149 +
  150 + public String getTotalTwoCxl() {
  151 + return totalTwoCxl;
  152 + }
  153 +
  154 + public void setTotalTwoCxl(String totalTwoCxl) {
  155 + this.totalTwoCxl = totalTwoCxl;
  156 + }
  157 +
  158 + public String getGongjing() {
  159 + return gongjing;
  160 + }
  161 +
  162 + public void setGongjing(String gongjing) {
  163 + this.gongjing = gongjing;
  164 + }
  165 +
  166 + public String getGjOther() {
  167 + return gjOther;
  168 + }
  169 +
  170 + public void setGjOther(String gjOther) {
  171 + this.gjOther = gjOther;
  172 + }
  173 +
138 174 public String getSsProcedure() {
139 175 return ssProcedure;
140 176 }
... ... @@ -369,6 +405,10 @@
369 405 setSsRecord(destModel.getSsRecord());
370 406 setSsCount(destModel.getSsCount());
371 407 setSsProcedure(destModel.getSsProcedure());
  408 + setPgcCxl(destModel.getPgcCxl());
  409 + setTotalTwoCxl(destModel.getTotalTwoCxl());
  410 + setGongjing(destModel.getGongjing());
  411 + setGjOther(destModel.getGjOther());
372 412  
373 413 return this;
374 414 }