Commit 3c1a738a8edcd18d6a58a925d93de06aa3b85874

Authored by hanshaofeng
1 parent a37c8fd7ff

fuck ture and false

Showing 4 changed files with 127 additions and 1 deletions

platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/LisReportService.java View file @ 3c1a738
1 1 package com.lyms.platform.biz.service;
2 2  
3 3 import com.lyms.platform.biz.dal.LisReportDao;
  4 +import com.lyms.platform.common.dao.operator.MongoQuery;
4 5 import com.lyms.platform.pojo.LisReport;
5 6 import com.lyms.platform.query.LisReportQuery;
6 7 import org.springframework.beans.factory.annotation.Autowired;
7 8 import org.springframework.stereotype.Service;
8 9  
  10 +import java.util.List;
  11 +
9 12 /**
10 13 * Created by Administrator on 2016/10/19 0019.
11 14 */
... ... @@ -17,6 +20,10 @@
17 20  
18 21 public int queryLisReportCount(LisReportQuery query) {
19 22 return lisReportDao.queryLisReportCount(query.convertToQuery());
  23 + }
  24 +
  25 + public List<LisReport> queryLisReport(LisReportQuery query) {
  26 + return lisReportDao.queryLisReport(query.convertToQuery());
20 27 }
21 28  
22 29 public void addLisReport(LisReport report) {
platform-operate-api/src/main/java/com/lyms/hospitalapi/qhdfy/QhdfyHisService.java View file @ 3c1a738
... ... @@ -73,7 +73,7 @@
73 73 referValueMap.put(referValue.getCode(), referValue);
74 74 }
75 75 PatientsQuery patientsQuery = new PatientsQuery();
76   - String sql = "select top 100000 shenqinghao as hospitalId,bingrenid as patientFid,zhuyuanhao as patientHid,kahao as vcCardNo,phone,huanzhexingming as name,xingbie as sex,nianling as age,shenqingkeshidaima as deptCode,shenqingkeshimingcheng as deptName,shenqingyishengdaima as applyDoctorCode,shenqingyishengmingcheng as applyDoctorName,jianchayishengdaima as checkDoctorCode,jianchayishengxingming as checkDoctorName,baogaofabushijian as publishTime from valllist_ex_en where phone is not null and phone !='' and shenqinghao is not null order by shenqinghao desc";
  76 + String sql = "select top 10000 shenqinghao as hospitalId,bingrenid as patientFid,zhuyuanhao as patientHid,kahao as vcCardNo,phone,huanzhexingming as name,xingbie as sex,nianling as age,shenqingkeshidaima as deptCode,shenqingkeshimingcheng as deptName,shenqingyishengdaima as applyDoctorCode,shenqingyishengmingcheng as applyDoctorName,jianchayishengdaima as checkDoctorCode,jianchayishengxingming as checkDoctorName,baogaofabushijian as publishTime from valllist_ex_en where phone is not null and phone !='' and shenqinghao is not null order by shenqinghao desc";
77 77 String subSql = "select top 1000 sheqingdanhao as id,xiangmudaima as code,xiangmumingcheng as name,xiangmujieguo as result,zifujieguo as charResult,shuzijieguo as numberResult,gaodibiaozhi as flag,cankaozhi as ref,danwei as unit,jieguoleixing as result from valresult_ex_en where sheqingdanhao='";
78 78 Object[] params = {startDate};
79 79 List<LisReport> list = queryRunner.query(conn, sql, new BeanListHandler<LisReport>(LisReport.class));
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TestController.java View file @ 3c1a738
... ... @@ -210,5 +210,19 @@
210 210 return "finish";
211 211 }
212 212  
  213 + @RequestMapping(value = "/orderSieve", method = RequestMethod.GET)
  214 + @ResponseBody
  215 + public String orderSieve() {
  216 + syncDataTaskService.orderSieve();
  217 + return "orderSieve finish";
  218 + }
  219 +
  220 + @RequestMapping(value = "/sieveResult", method = RequestMethod.GET)
  221 + @ResponseBody
  222 + public String sieveResult() {
  223 + syncDataTaskService.sieveResult();
  224 + return "sieveResult finish";
  225 + }
  226 +
213 227 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/SyncDataTaskService.java View file @ 3c1a738
... ... @@ -53,6 +53,15 @@
53 53 private PersonService personService;
54 54  
55 55 @Autowired
  56 + private SieveService sieveService;
  57 +
  58 + @Autowired
  59 + private ApplyOrderService applyOrderService;
  60 +
  61 + @Autowired
  62 + private LisReportService lisReportService;
  63 +
  64 + @Autowired
56 65 private AntenatalExaminationService antenatalExaminationService;
57 66  
58 67 public void syncData() {
... ... @@ -104,6 +113,102 @@
104 113 }
105 114 } catch (Exception e) {
106 115 ExceptionUtils.catchException(e,"qhdfySyncData Error.");
  116 + }
  117 + }
  118 +
  119 + private String buildFX(String charResult) {
  120 + if (StringUtils.isNotBlank(charResult)) {
  121 + if (charResult.indexOf("้ซ˜้ฃŽ้™ฉ")>=0) {
  122 + return "2";
  123 + } else if (charResult.indexOf("ไฝŽ้ฃŽ้™ฉ")>=0) {
  124 + return "0";
  125 + } else if (charResult.indexOf("ไธด็•Œๅ€ผ")>=0) {
  126 + return "1";
  127 + }
  128 + }
  129 + return null;
  130 + }
  131 +
  132 + public void sieveResult() {
  133 + SieveQuery sieveQuery = new SieveQuery();
  134 + sieveQuery.setYn(1);
  135 + sieveQuery.setHospitalId("216");
  136 + sieveQuery.setStatus(2);
  137 + List<SieveModel> sieveModelList = sieveService.queryList(sieveQuery);
  138 + for (SieveModel model:sieveModelList) {
  139 + LisReportQuery lisReportQuery = new LisReportQuery();
  140 + lisReportQuery.setPhone(model.getPhone());
  141 + List<LisReport> lisReportList = lisReportService.queryLisReport(lisReportQuery);
  142 + SieveResultModel resultModel = new SieveResultModel();
  143 + if (lisReportList != null && lisReportList.size() > 0) {
  144 + for (LisReport lisReport:lisReportList) {
  145 + if (lisReport.getItemList() != null) {
  146 + for (LisReportItem item:lisReport.getItemList()) {
  147 + if ("18-FX:".equals(item.getCode())) {
  148 + resultModel.setSbst(buildFX(item.getCharResult()));
  149 + } else if ("21-FX:".equals(item.getCode())) {
  150 + resultModel.setTszhz(buildFX(item.getCharResult()));
  151 + } else if ("NTD-FX:".equals(item.getCode())) {
  152 + resultModel.setSjgjx(buildFX(item.getCharResult()));
  153 + }
  154 + }
  155 + }
  156 + }
  157 + }
  158 + if (resultModel.getTszhz() != null || resultModel.getSbst() != null || resultModel.getSjgjx() != null) {
  159 + resultModel.setPublishName("1000000000");
  160 + resultModel.setParentId(model.getParentId());
  161 + resultModel.setYn(1);
  162 + resultModel.setModified(new Date());
  163 + resultModel.setCreated(resultModel.getModified());
  164 + sieveService.addSieve(resultModel);
  165 + SieveApplyOrderQuery orderQuery = new SieveApplyOrderQuery();
  166 + orderQuery.setParentId(model.getParentId());
  167 + List<SieveApplyOrderModel> orderModelList = applyOrderService.querySieveApplyOrderWithQuery(orderQuery);
  168 + for (SieveApplyOrderModel orderModel:orderModelList) {
  169 + orderModel.setStatus(0);
  170 + applyOrderService.updateSieve(orderModel);
  171 + }
  172 + model.setStatus(3);
  173 + Integer ztfx = 0;
  174 + if (resultModel.getTszhz() != null && Integer.valueOf(resultModel.getTszhz()) > ztfx) {
  175 + ztfx = Integer.valueOf(resultModel.getTszhz());
  176 + }
  177 + if (resultModel.getSbst() != null && Integer.valueOf(resultModel.getSbst()) > ztfx) {
  178 + ztfx = Integer.valueOf(resultModel.getSbst());
  179 + }
  180 + if (resultModel.getSjgjx() != null && Integer.valueOf(resultModel.getSjgjx()) > ztfx) {
  181 + ztfx = Integer.valueOf(resultModel.getSjgjx());
  182 + }
  183 + model.setZtfx(ztfx);
  184 + sieveService.updateOneChanQianDiaSieve(model);
  185 + }
  186 + }
  187 + }
  188 +
  189 + public void orderSieve() {
  190 + SieveQuery sieveQuery = new SieveQuery();
  191 + sieveQuery.setYn(1);
  192 + sieveQuery.setHospitalId("216");
  193 + sieveQuery.setStatus(1);
  194 + List<SieveModel> sieveModelList = sieveService.queryList(sieveQuery);
  195 + for (SieveModel model:sieveModelList) {
  196 + SieveApplyOrderModel orderModel = new SieveApplyOrderModel();
  197 + orderModel.setHospitalId(model.getHospitalId());
  198 + orderModel.setStatus(1);
  199 + orderModel.setParentId(model.getParentId());
  200 + orderModel.setCheckItem("[true,true,true,false]");
  201 + orderModel.setApplyDoctor("1000000000");
  202 + orderModel.setCheckDate("2016-11-09");
  203 + orderModel.setYn(1);
  204 + orderModel.setModified(new Date());
  205 + orderModel.setCreated(orderModel.getModified());
  206 + applyOrderService.addOneSieveApplyOrder(orderModel);
  207 + model.setStatus(2);
  208 + int days = DateUtil.daysBetween(model.getLastMenses(), new Date());
  209 + model.setDueWeek(days);
  210 + model.setApplyDate(orderModel.getModified());
  211 + sieveService.updateOneChanQianDiaSieve(model);
107 212 }
108 213 }
109 214