From 37673a98f90f87407254c836e9a3eda053b69801 Mon Sep 17 00:00:00 2001 From: yangfei Date: Fri, 13 Oct 2017 17:18:52 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=80=BC=E6=9C=8D=E5=8A=A1=E5=BC=80?= =?UTF-8?q?=E9=80=9A=E6=9C=8D=E5=8A=A1=E5=90=8C=E6=AD=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../operate/web/controller/SyncDataController.java | 1 + .../web/facade/PatientServiceSysFacade.java | 103 ++++++++++++++++++++- 2 files changed, 102 insertions(+), 2 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/SyncDataController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/SyncDataController.java index 695c98b..9d4625a 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/SyncDataController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/SyncDataController.java @@ -53,6 +53,7 @@ public class SyncDataController extends BaseController { @RequestParam(value = "synForm", required = true) String synForm ){ try{ + System.out.println("数据同步开始:action:"+action+",synForm:"+synForm); WebApplicationContext webApplicationContext = ContextLoader.getCurrentWebApplicationContext(); SysBaseFacade sysBaseFacade = (SysBaseFacade)webApplicationContext.getBean(action); return sysBaseFacade.sysData(synForm); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientServiceSysFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientServiceSysFacade.java index 11138c8..dfaa07c 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientServiceSysFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientServiceSysFacade.java @@ -1,10 +1,20 @@ package com.lyms.platform.operate.web.facade; +import com.lyms.platform.common.constants.ErrorCodeConstants; import com.lyms.platform.common.result.BaseResponse; +import com.lyms.platform.common.utils.StringUtils; import com.lyms.platform.permission.model.PatientService; +import com.lyms.platform.permission.model.PatientServiceQuery; +import com.lyms.platform.permission.service.PatientServiceService; import net.sf.json.JSONObject; +import org.apache.commons.collections.CollectionUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; +import java.util.Date; +import java.util.List; +import java.util.UUID; + /** * @auther yangfei * @createTime 2017年10月12日 17时09分 @@ -12,17 +22,106 @@ import org.springframework.stereotype.Component; */ @Component public class PatientServiceSysFacade implements SysBaseFacade{ + @Autowired + private PatientServiceService patientServiceService; @Override public BaseResponse sysData(String synForm) { JSONObject jsonObject = JSONObject.fromObject(synForm); PatientService patientService = (PatientService)JSONObject.toBean(jsonObject, PatientService.class); + BaseResponse baseResponse = validate(patientService); + if(baseResponse.getErrorcode()!=ErrorCodeConstants.SUCCESS){ + return baseResponse; + } + //先根据孕妇id和开通服务类型、开通医生进行查询,如果已经开通过则开通失败 + PatientServiceQuery patientQuery = new PatientServiceQuery(); + //开通医院 + patientQuery.setHospitalId(patientService.getHospitalId()); + //孕妇Id + patientQuery.setParentid(patientService.getParentid()); + //开通服务 + patientQuery.setSerType(patientService.getSerType()); + //指定医生 + patientQuery.setSerDoct(patientService.getSerDoct()); - System.out.println("同步数据方法"); - BaseResponse baseResponse = new BaseResponse(); + List patientServices = patientServiceService.queryPatientService(patientQuery); + if (CollectionUtils.isNotEmpty(patientServices)) {//修改 + PatientService ps = patientServices.get(0); + ps.setSerStatus(patientService.getSerStatus()); + ps.setSerCode(patientService.getSerCode()); + ps.setOrderId(patientService.getOrderId()); + ps.setUpdateDate(new Date()); + patientServiceService.updatePatientService(ps); + }else{//新增 + patientService.setId(UUID.randomUUID().toString().replace("-", "")); + //默认待领取 + patientService.setStatus(1); + patientServiceService.addPatientService(patientService); + } + System.out.println("同步数据方法结束"); baseResponse.setErrorcode(0); baseResponse.setObject(synForm); baseResponse.setErrormsg("成功"); return baseResponse; } + + /** + * 数据同步数据验证 + * @param ps + * @return + */ + public BaseResponse validate(PatientService ps){ + BaseResponse baseResponse = new BaseResponse(); + //孕妇id + if(StringUtils.isEmpty(ps.getParentid())){ + baseResponse.setErrormsg("请传入parentid"); + baseResponse.setErrorcode(ErrorCodeConstants.PARAMETER_ERROR); + return baseResponse; + } + //孕妇id + if(StringUtils.isEmpty(ps.getPid())){ + baseResponse.setErrormsg("请传入pid"); + baseResponse.setErrorcode(ErrorCodeConstants.PARAMETER_ERROR); + return baseResponse; + } + //serType服务类型(1-高危精准指导、2-体重、3-血糖、4-血压、5-专家咨询) + if(ps.getSerTypes()==null){ + baseResponse.setErrormsg("请传入serTypes"); + baseResponse.setErrorcode(ErrorCodeConstants.PARAMETER_ERROR); + return baseResponse; + } + //指定医生 + if(ps.getSerDoct()==null){ + baseResponse.setErrormsg("请传入serDoct"); + baseResponse.setErrorcode(ErrorCodeConstants.PARAMETER_ERROR); + return baseResponse; + } + //验证码 + if(ps.getSerCode()==null){ + baseResponse.setErrormsg("请传入serCode"); + baseResponse.setErrorcode(ErrorCodeConstants.PARAMETER_ERROR); + return baseResponse; + } + //订单号 + if(ps.getOrderId()==null){ + baseResponse.setErrormsg("请传入orderId"); + baseResponse.setErrorcode(ErrorCodeConstants.PARAMETER_ERROR); + return baseResponse; + } + //开通时间 + if(ps.getCreateDate()==null){ + baseResponse.setErrormsg("请传入createDate"); + baseResponse.setErrorcode(ErrorCodeConstants.PARAMETER_ERROR); + return baseResponse; + } + //服务状态 + if(ps.getSerStatus()==null){ + baseResponse.setErrormsg("请传入serStatus"); + baseResponse.setErrorcode(ErrorCodeConstants.PARAMETER_ERROR); + return baseResponse; + } + baseResponse.setErrorcode(ErrorCodeConstants.SUCCESS); + return baseResponse; + } + } -- 1.8.3.1