From a62f204f7b97b940e620596cf1af2b2f740cff3d Mon Sep 17 00:00:00 2001 From: liquanyu Date: Sat, 19 Jun 2021 18:30:44 +0800 Subject: [PATCH] update --- .../com/lyms/platform/common/utils/JsonUtil.java | 11 +++++ .../lyms/platform/pojo/CancerScreeningModel.java | 11 +++++ .../lyms/platform/pojo/CervicalCancerModel.java | 11 +++++ .../com/lyms/platform/pojo/PremaritalCheckup.java | 10 +++++ .../lyms/platform/pojo/ResidentsArchiveModel.java | 3 +- .../lyms/platform/query/CancerScreeningQuery.java | 13 ++++++ .../web/controller/CancerScreeningController.java | 16 ++++++++ .../web/controller/CervicalCancerController.java | 18 ++++++++- .../operate/web/facade/CancerScreeningFacade.java | 47 +++++++++++++++++++++- .../operate/web/facade/ResidentsArchiveFacade.java | 26 +++++++++++- .../operate/web/service/CervicalCancerService.java | 5 +++ .../service/impl/CervicalCancerServiceImpl.java | 41 +++++++++++++++++++ 12 files changed, 206 insertions(+), 6 deletions(-) diff --git a/platform-common/src/main/java/com/lyms/platform/common/utils/JsonUtil.java b/platform-common/src/main/java/com/lyms/platform/common/utils/JsonUtil.java index 0f2b619..9c13ac9 100644 --- a/platform-common/src/main/java/com/lyms/platform/common/utils/JsonUtil.java +++ b/platform-common/src/main/java/com/lyms/platform/common/utils/JsonUtil.java @@ -51,6 +51,17 @@ public class JsonUtil { } return null; } + public static String obj2Str1( + Object cls) { + try { + ObjectMapper objectMapper = new ObjectMapper(); + return objectMapper.writeValueAsString(cls); + } catch (Exception e) { + + } + return null; + } + @SuppressWarnings("unchecked") public static T str2Obj(String content, diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/CancerScreeningModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/CancerScreeningModel.java index ae1fa21..8052195 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/CancerScreeningModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/CancerScreeningModel.java @@ -205,6 +205,17 @@ public class CancerScreeningModel extends BaseModel { //患者签名 private String patientSign; + //1 未同步 2已经同步 + private Integer isSync; + + public Integer getIsSync() { + return isSync; + } + + public void setIsSync(Integer isSync) { + this.isSync = isSync; + } + public String getDoctorSign() { return doctorSign; } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/CervicalCancerModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/CervicalCancerModel.java index cf64a7e..6b19ee3 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/CervicalCancerModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/CervicalCancerModel.java @@ -97,6 +97,17 @@ public class CervicalCancerModel extends BaseModel { //患者签名 private String patientSign; + //1 未同步 2已经同步 + private Integer isSync; + + public Integer getIsSync() { + return isSync; + } + + public void setIsSync(Integer isSync) { + this.isSync = isSync; + } + public String getDoctorSign() { return doctorSign; } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/PremaritalCheckup.java b/platform-dal/src/main/java/com/lyms/platform/pojo/PremaritalCheckup.java index a67c881..7225653 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/PremaritalCheckup.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/PremaritalCheckup.java @@ -458,6 +458,16 @@ public class PremaritalCheckup extends BaseModel { //滦平婚检每个用户分配一个编号20200107-1 20200107-2 private Long numCode; + //1 未同步 2已经同步 + private Integer isSync; + + public Integer getIsSync() { + return isSync; + } + + public void setIsSync(Integer isSync) { + this.isSync = isSync; + } public Long getNumCode() { return numCode; } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java index cb04317..cfc3452 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/ResidentsArchiveModel.java @@ -1,5 +1,6 @@ package com.lyms.platform.pojo; +import com.fasterxml.jackson.annotation.JsonFormat; import com.lyms.platform.beans.SerialIdEnum; import com.lyms.platform.common.enums.TrackDownDateEnums; import com.lyms.platform.common.result.BaseModel; @@ -25,6 +26,7 @@ public class ResidentsArchiveModel extends BaseModel { //性别 private String sex; //出生日期 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date birthday; //国籍 private String countryId; @@ -201,7 +203,6 @@ public class ResidentsArchiveModel extends BaseModel { private FilePathModel filePath; - //1 未同步 2已经同步 private Integer isSync; diff --git a/platform-dal/src/main/java/com/lyms/platform/query/CancerScreeningQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/CancerScreeningQuery.java index 040c445..be299ea 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/CancerScreeningQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/CancerScreeningQuery.java @@ -99,6 +99,9 @@ public class CancerScreeningQuery extends BaseQuery implements IConvertToNativeQ //最终诊断结果 1未见异常 2良性疾病 3不典型增生 4原位癌 5导管内乳头状癌 6微小浸润癌 7浸润癌 8其他恶性肿瘤 private String sfZhzd; + //1 未同步 2已经同步 + private Integer isSync; + /** * @return @@ -114,6 +117,9 @@ public class CancerScreeningQuery extends BaseQuery implements IConvertToNativeQ if(null != yn){ condition=condition.and("yn", yn, MongoOper.IS); } + if(null != isSync){ + condition=condition.and("isSync", isSync, MongoOper.IS); + } if(null != ycRxajc ){ if("sz".equals(ycRxajc)){ @@ -217,6 +223,13 @@ public class CancerScreeningQuery extends BaseQuery implements IConvertToNativeQ return condition.toMongoQuery(); } + public Integer getIsSync() { + return isSync; + } + + public void setIsSync(Integer isSync) { + this.isSync = isSync; + } public Date getSfZlrqStart() { diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CancerScreeningController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CancerScreeningController.java index cb76a37..8cff0b6 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CancerScreeningController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CancerScreeningController.java @@ -8,6 +8,7 @@ import com.lyms.platform.common.utils.StringUtils; import com.lyms.platform.operate.web.facade.CancerScreeningFacade; import com.lyms.platform.operate.web.request.CancerScreeningRequest; import com.lyms.platform.pojo.CancerScreeningModel; +import com.lyms.platform.pojo.ResidentsArchiveModel; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; @@ -120,4 +121,19 @@ public class CancerScreeningController extends BaseController { public BaseResponse getAppInfo(@PathVariable String id) { return cancerScreenService.getCancerScreenInfo(id); } + + + @RequestMapping(method = RequestMethod.POST, value = "/syncCancerScreen") + @ResponseBody + public BaseResponse syncCancerScreen(@RequestBody CancerScreeningModel cancerScr, + HttpServletRequest request) { + return cancerScreenService.syncCancerScreen(cancerScr); + } + + @RequestMapping(method = RequestMethod.GET, value = "/doSyncCancerScreen") + @ResponseBody + public BaseResponse doSyncCancerScreen( + HttpServletRequest request) { + return cancerScreenService.doSyncCancerScreen(); + } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CervicalCancerController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CervicalCancerController.java index ddd02ff..b619ae2 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CervicalCancerController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CervicalCancerController.java @@ -4,6 +4,8 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.lyms.platform.operate.web.service.impl.CervicalCancerServiceImpl; +import com.lyms.platform.pojo.CancerScreeningModel; +import com.lyms.platform.pojo.CervicalCancerModel; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestBody; @@ -86,7 +88,7 @@ public class CervicalCancerController extends BaseController { @ResponseBody @TokenRequired public BaseListResponse listPage(@JsonAlias CervicalCancerListRequest param,HttpServletRequest request) { - return cervicalCancerService.listPage(param,getUserId(request)); + return cervicalCancerService.listPage(param, getUserId(request)); } /** @@ -142,4 +144,18 @@ public class CervicalCancerController extends BaseController { return cervicalCancerService.detail(param); } + + @RequestMapping(method = RequestMethod.POST, value = "/syncCervicalCancer") + @ResponseBody + public BaseResponse syncCervicalCancer(@RequestBody CervicalCancerModel cervicalCancer, + HttpServletRequest request) { + return cervicalCancerService.syncCervicalCancer(cervicalCancer); + } + + @RequestMapping(method = RequestMethod.GET, value = "/doSyncCervicalCancer") + @ResponseBody + public BaseResponse doSyncCancerScreen( + HttpServletRequest request) { + return cervicalCancerService.doSyncCervicalCancer(); + } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/CancerScreeningFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/CancerScreeningFacade.java index 934f516..c3c6e06 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/CancerScreeningFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/CancerScreeningFacade.java @@ -9,8 +9,7 @@ import com.lyms.platform.common.result.BaseListResponse; import com.lyms.platform.common.result.BaseObjectResponse; import com.lyms.platform.common.result.BaseResponse; import com.lyms.platform.common.result.RespBuilder; -import com.lyms.platform.common.utils.DateUtil; -import com.lyms.platform.common.utils.EnumUtil; +import com.lyms.platform.common.utils.*; import com.lyms.platform.operate.web.request.CancerScreeningRequest; import com.lyms.platform.operate.web.utils.CommonsHelper; import com.lyms.platform.operate.web.utils.FunvCommonUtil; @@ -303,6 +302,7 @@ public class CancerScreeningFacade { public BaseResponse updateCancerScreen(CancerScreeningModel cancerScr, Integer id) { try { cancerScr.setOperator(id); + cancerScr.setIsSync(1); cancerScreenService.updateOneCancerScreen(cancerScr, cancerScr.getId()); return new BaseResponse("成功", ErrorCodeConstants.SUCCESS); } catch (Exception e) { @@ -346,6 +346,8 @@ public class CancerScreeningFacade { cancerScr.setOperator(id); //有效 cancerScr.setYn(YnEnums.YES.getId()); + + cancerScr.setIsSync(1); cancerScreenService.addOneCancerScreen(cancerScr); return new BaseResponse("成功", ErrorCodeConstants.SUCCESS); } else { @@ -443,4 +445,45 @@ public class CancerScreeningFacade { } return new BaseResponse("妇女未建档,请前往妇女建档", ErrorCodeConstants.USER_NOT_EXISTS); } + + public BaseResponse syncCancerScreen(CancerScreeningModel cancerScr) { + //查询条件 + CancerScreeningQuery query = new CancerScreeningQuery(); + query.setYn(YnEnums.YES.getId()); + query.setId(cancerScr.getId()); + + cancerScr.setModified(new Date()); + List modelList = cancerScreenService.queryCancerScreList(query); + if (CollectionUtils.isNotEmpty(modelList)) { + cancerScreenService.updateOneCancerScreen(modelList.get(0), modelList.get(0).getId()); + } + else + { + cancerScreenService.addOneCancerScreen(cancerScr); + } + return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); + } + + public BaseResponse doSyncCancerScreen() { + //查询条件 + CancerScreeningQuery query = new CancerScreeningQuery(); + query.setYn(YnEnums.YES.getId()); + query.setIsSync(1); + List modelList = cancerScreenService.queryCancerScreList(query); + if (CollectionUtils.isNotEmpty(modelList)) { + for (CancerScreeningModel model : modelList) + { + model.setIsSync(2); + String json = JsonUtil.obj2Str1(model); + System.out.println(json); + String syncRsult = HttpClientUtil.doPostSSL(AREA_URL + "/cancerScr/syncCancerScreen", json); + cancerScreenService.updateOneCancerScreen(model, model.getId()); + System.out.println("doSyncCancerScreen=" + syncRsult); + } + } + return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); + } + + public static final String AREA_URL = PropertiesUtils.getPropertyValue("area_url"); + } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ResidentsArchiveFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ResidentsArchiveFacade.java index bc6a79d..ce749ae 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ResidentsArchiveFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ResidentsArchiveFacade.java @@ -374,6 +374,7 @@ public class ResidentsArchiveFacade { getTrackHospital(model); model.setId(id); + model.setIsSync(1); residentsArchiveService.updateResident(model, id); @@ -1209,8 +1210,27 @@ public class ResidentsArchiveFacade { } public BaseResponse syncResidentsArchive(ResidentsArchiveModel addRequest) { + addRequest.setModified(new Date()); - residentsArchiveService.addResident(addRequest); + ResidentsArchiveQuery query = new ResidentsArchiveQuery(); + query.setYn(YnEnums.YES.getId()); + query.setId(addRequest.getId()); + List modelList = residentsArchiveService.queryResident(query); + if (CollectionUtils.isNotEmpty(modelList)) { + residentsArchiveService.updateResident(modelList.get(0),modelList.get(0).getId()); + } + else + { + residentsArchiveService.addResident(addRequest); + try { + //新增婚检追访信息,默认进入婚检追访 + addTrackDownInfo(Integer.parseInt(addRequest.getBuildDoctor()), addRequest); + }catch (Exception e) + { + + } + + } return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); } @@ -1224,7 +1244,9 @@ public class ResidentsArchiveFacade { for (ResidentsArchiveModel model : archiveModelList) { model.setIsSync(2); - String syncRsult = HttpClientUtil.doPostSSL(AREA_URL+"/syncResidentsArchive",JsonUtil.obj2Str(model)); + String json = JsonUtil.obj2Str1(model); + System.out.println(json); + String syncRsult = HttpClientUtil.doPostSSL(AREA_URL+"/syncResidentsArchive",json); residentsArchiveService.updateResident(model,model.getId()); System.out.println("doSyncResidentsArchive=" + syncRsult); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/CervicalCancerService.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/CervicalCancerService.java index 4264355..1fb511c 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/CervicalCancerService.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/CervicalCancerService.java @@ -1,8 +1,13 @@ package com.lyms.platform.operate.web.service; +import com.lyms.platform.common.result.BaseResponse; import com.lyms.platform.operate.web.request.CervicalCancerListRequest; import com.lyms.platform.operate.web.request.CervicalCancerRequest; +import com.lyms.platform.pojo.CervicalCancerModel; public interface CervicalCancerService extends IFormReportService { + BaseResponse syncCervicalCancer(CervicalCancerModel cervicalCancer); + + BaseResponse doSyncCervicalCancer(); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/CervicalCancerServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/CervicalCancerServiceImpl.java index d5c16e2..173dd36 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/CervicalCancerServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/CervicalCancerServiceImpl.java @@ -672,4 +672,45 @@ public class CervicalCancerServiceImpl implements CervicalCancerService { } + @Override + public BaseResponse syncCervicalCancer(CervicalCancerModel cervicalCancer) { + CervicalCancerModel model = mongoTemplate.findOne(Query.query(Criteria.where("id").is(cervicalCancer.getId())), CervicalCancerModel.class); + if (model != null) { + Query query = Query.query(Criteria.where("id").is(cervicalCancer.getId())); + Update update = MongoConvertHelper + .convertToNativeUpdate(ReflectionUtils.getUpdateField(cervicalCancer)); + mongoTemplate.updateFirst(query, update, CervicalCancerModel.class); + } + else + { + mongoTemplate.insert(cervicalCancer); + } + return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); + } + + @Override + public BaseResponse doSyncCervicalCancer() { + List cervicalCancerModels = mongoTemplate.find(Query.query(Criteria.where("isSync").is(1)), CervicalCancerModel.class); + if (CollectionUtils.isNotEmpty(cervicalCancerModels)) + { + for (CervicalCancerModel model : cervicalCancerModels) + { + model.setIsSync(2); + String json = JsonUtil.obj2Str1(model); + System.out.println(json); + String syncRsult = HttpClientUtil.doPostSSL(AREA_URL+"/cervicalCancer/syncCervicalCancer",json); + + + Query query = Query.query(Criteria.where("id").is(model.getId())); + Update update = MongoConvertHelper + .convertToNativeUpdate(ReflectionUtils.getUpdateField(model)); + mongoTemplate.updateFirst(query, update, CervicalCancerModel.class); + + System.out.println("doSyncCervicalCancer=" + syncRsult); + } + } + return new BaseResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); + } + + public static final String AREA_URL = PropertiesUtils.getPropertyValue("area_url"); } -- 1.8.3.1