Преглед на файлове

Merge branch 'dev' of http://192.168.1.220:10080/Amoy/patient-co-management into dev

liuwenbin преди 6 години
родител
ревизия
07e2343ec3
променени са 34 файла, в които са добавени 564 реда и са изтрити 292 реда
  1. 0 2
      patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/controller/common/account/CustomerController.java
  2. 15 1
      patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/controller/synergy/doctor/DoctorSynergyManageController.java
  3. 1 1
      patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/entity/synergy/ManageSynergyWorkorderDO.java
  4. 6 6
      patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/entity/synergy/ManageSynergyWorkorderReserveConsultDO.java
  5. 2 0
      patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/repository/synergy/ManageSynergyWorkOrderDao.java
  6. 2 0
      patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/repository/synergy/ManageSynergyWorkorderReserveConsultDao.java
  7. 185 22
      patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/service/manager/account/CustomerService.java
  8. 19 0
      patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/service/synergy/SynergyManageService.java
  9. 3 0
      patient-co-service/wlyy_device/src/main/java/com/yihu/hos/device/common/dao/PatientHealthIndexDao.java
  10. 5 1
      patient-co-service/wlyy_device/src/main/java/com/yihu/hos/device/service/DeviceService.java
  11. 3 2
      patient-co-service/wlyy_device/src/main/java/com/yihu/hos/device/service/IotDeviceService.java
  12. 1 1
      patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/event/ApplicationEvent.java
  13. 2 2
      patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/job/AlertChildImmuneVaccinJob.java
  14. 4 0
      patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/job/PrescriptionPayQueryJob.java
  15. 2 2
      patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/repository/prescription/PrescriptionPayDao.java
  16. 3 0
      patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/service/app/prescription/PatientPrescriptionPayService.java
  17. 56 49
      patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/service/imm/ChildVaccinImmuneService.java
  18. 12 0
      patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/task/PushMsgTask.java
  19. 50 0
      patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/web/JMController.java
  20. 2 0
      patient-co/patient-co-wlyy-job/src/main/resources/application-dev.yml
  21. 4 1
      patient-co/patient-co-wlyy-job/src/main/resources/application-devtest.yml
  22. 2 0
      patient-co/patient-co-wlyy-job/src/main/resources/application-prod.yml
  23. 4 1
      patient-co/patient-co-wlyy-job/src/main/resources/application-test.yml
  24. 6 6
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/prescription/PrescriptionNoticesService.java
  25. 7 3
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/survey/SurveyScreenResultService.java
  26. 7 157
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/imm/ChildFamilyImmuneService.java
  27. 50 1
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/synergy/SynergyManageService.java
  28. 2 31
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/imm/DoctorImmController.java
  29. 17 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/survey/DoctorSurveyScreenResultController.java
  30. 18 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/survey/ManagerQuestionnaireController.java
  31. 70 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/synergy/SynergyManageController.java
  32. 1 1
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/family/FamilyMemberController.java
  33. 1 1
      patient-co/patient-co-wlyy/src/main/resources/application-devtest.yml
  34. 2 1
      patient-co/patient-co-wlyy/src/main/resources/application-local.yml

+ 0 - 2
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/controller/common/account/CustomerController.java

@ -5,14 +5,12 @@ import com.yihu.wlyy.entity.Doctor;
import com.yihu.wlyy.entity.Patient;
import com.yihu.wlyy.entity.User;
import com.yihu.wlyy.entity.WlyyCustomerLog;
import com.yihu.wlyy.entity.call.CallRecord;
import com.yihu.wlyy.repository.PatientDao;
import com.yihu.wlyy.service.manager.account.CustomerService;
import com.yihu.wlyy.service.manager.hos.HosDoctorService;
import com.yihu.wlyy.service.manager.patient.AdminPatientService;
import com.yihu.wlyy.service.manager.user.UserService;
import com.yihu.wlyy.service.manager.user.WlyyCustomerLogService;
import com.yihu.wlyy.util.DateUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;

+ 15 - 1
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/controller/synergy/doctor/DoctorSynergyManageController.java

@ -91,7 +91,7 @@ public class DoctorSynergyManageController extends BaseController {
    @RequestMapping(value = "createWorkorder", method = RequestMethod.POST)
    @ApiOperation("医生端-创建协同服务")
    public String workorderList(@ApiParam(name = "workorder", value = "工单对象", required = false)
    public String createWorkorder(@ApiParam(name = "workorder", value = "工单对象", required = false)
                                @RequestParam(value = "workorder")String workorder,
                                @ApiParam(name = "servicers", value = "服务对象", required = false)
                                @RequestParam(value = "servicers")String servicers){
@ -111,6 +111,20 @@ public class DoctorSynergyManageController extends BaseController {
        }
    }
    @RequestMapping(value = "updateWorkorder", method = RequestMethod.POST)
    @ApiOperation("医生端-创建协同服务")
    public String updateWorkorder(@ApiParam(name = "workorder", value = "工单对象", required = false)
                                @RequestParam(value = "workorder")String workorder){
        try {
            ManageSynergyWorkorderDO workorderDO = objectMapper.readValue(workorder,ManageSynergyWorkorderDO.class);
            synergyManageService.updateWorkorder(workorderDO);
            return write(200, "获取成功");
        } catch (Exception e) {
            error(e);
            return error(-1, "请求失败");
        }
    }
    @RequestMapping(value = "selectByWorkorderCode", method = RequestMethod.POST)
    @ApiOperation("医生端-居民列表")
    public String selectByWorkorderCode(@ApiParam(name = "workorderCode", value = "工单code", required = false)

+ 1 - 1
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/entity/synergy/ManageSynergyWorkorderDO.java

@ -61,7 +61,7 @@ public class ManageSynergyWorkorderDO extends IdEntity {
    }
    @Column(name = "service_time")
    @JsonFormat(pattern="yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+08:00")
    public Date getServiceTime() {
        return serviceTime;
    }

+ 6 - 6
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/entity/synergy/ManageSynergyWorkorderReserveConsultDO.java

@ -18,7 +18,7 @@ public class ManageSynergyWorkorderReserveConsultDO extends IdEntity {
    private Integer dealType;//处理方式:1.电话回复,2.客服回复
    private Date dealTime;//处理时间
    private Integer dealState;//处理结果:1.完成,2.无法联系居民
    private Integer dealContent;//处理内容
    private String dealContent;//处理内容
    private Integer dealReason;//处理取消原因:0.没有号源、1.病人取消
    private String orderHospital;//预约医院code
    private String orderHospitalName;//预约医院
@ -26,7 +26,7 @@ public class ManageSynergyWorkorderReserveConsultDO extends IdEntity {
    private String orderDeptName;//预约科室名称
    private String orderDoctor;//预约医生code
    private String orderDoctorName;//预约医生名称
    private Date orderTime;//预约时间段
    private String orderTime;//预约时间段
    private Date registerTime;//挂号时间
    private String user;//创建人(客服)code
    private String userName;//客服姓名(创建人)
@ -72,11 +72,11 @@ public class ManageSynergyWorkorderReserveConsultDO extends IdEntity {
    }
    @Column(name = "deal_content")
    public Integer getDealContent() {
    public String getDealContent() {
        return dealContent;
    }
    public void setDealContent(Integer dealContent) {
    public void setDealContent(String dealContent) {
        this.dealContent = dealContent;
    }
@ -144,11 +144,11 @@ public class ManageSynergyWorkorderReserveConsultDO extends IdEntity {
    }
    @Column(name = "order_time")
    public Date getOrderTime() {
    public String getOrderTime() {
        return orderTime;
    }
    public void setOrderTime(Date orderTime) {
    public void setOrderTime(String orderTime) {
        this.orderTime = orderTime;
    }

+ 2 - 0
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/repository/synergy/ManageSynergyWorkOrderDao.java

@ -8,6 +8,8 @@ import org.springframework.data.repository.PagingAndSortingRepository;
public interface ManageSynergyWorkOrderDao extends PagingAndSortingRepository<ManageSynergyWorkorderDO, Long> {
    ManageSynergyWorkorderDO findByCode(String workorderCode);
    
    ManageSynergyWorkorderDO findByRelationCode(String relationCode);
    @Modifying
    @Query("update ManageSynergyWorkorderDO a set a.del=1 where a.code = ?1")

+ 2 - 0
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/repository/synergy/ManageSynergyWorkorderReserveConsultDao.java

@ -11,4 +11,6 @@ import java.util.List;
public interface ManageSynergyWorkorderReserveConsultDao extends PagingAndSortingRepository<ManageSynergyWorkorderReserveConsultDO, Long> {
    List<ManageSynergyWorkorderReserveConsultDO> findByCallCode(String callCode);
    
    ManageSynergyWorkorderReserveConsultDO findByWorkorderCode(String WorkorderCode);
}

+ 185 - 22
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/service/manager/account/CustomerService.java

@ -3,20 +3,17 @@ package com.yihu.wlyy.service.manager.account;
import com.yihu.wlyy.entity.*;
import com.yihu.wlyy.entity.call.CallRecord;
import com.yihu.wlyy.entity.call.CallService;
import com.yihu.wlyy.entity.synergy.ManageSynergyWorkorderCustomerLogDO;
import com.yihu.wlyy.entity.synergy.ManageSynergyWorkorderReserveConsultDO;
import com.yihu.wlyy.entity.synergy.ManageSynergyWorkorderServicerDO;
import com.yihu.wlyy.entity.synergy.*;
import com.yihu.wlyy.repository.*;
import com.yihu.wlyy.repository.call.CallRecordDao;
import com.yihu.wlyy.repository.call.CallServiceDao;
import com.yihu.wlyy.repository.synergy.ManageSynergyWorkorderCustomerLogDao;
import com.yihu.wlyy.repository.synergy.ManageSynergyWorkorderReserveConsultDao;
import com.yihu.wlyy.repository.synergy.ManageSynergyWorkorderServicerDao;
import com.yihu.wlyy.repository.synergy.*;
import com.yihu.wlyy.service.BaseService;
import com.yihu.wlyy.service.manager.family.FamilyMemberService;
import com.yihu.wlyy.service.manager.hos.HosDoctorService;
import com.yihu.wlyy.service.manager.sign.FamilyContractService;
import com.yihu.wlyy.service.manager.sign.SignFamilyService;
import com.yihu.wlyy.service.synergy.SynergyManageService;
import com.yihu.wlyy.util.DateUtil;
import com.yihu.wlyy.util.HttpClientUtil;
import io.swagger.models.auth.In;
@ -66,6 +63,17 @@ public class CustomerService extends BaseService{
	private PatientReservationDao patientReservationDao;
	@Autowired
	private SignFamilyDao signFamilyDao;
	@Autowired
	private ManageSynergyWorkOrderDao manageSynergyWorkOrderDao;
	@Autowired
	private ManageSynergyWorkorderServicerDao manageSynergyWorkorderServicerDao;
	@Autowired
	private ManageSynergyWorkorderExecutorDao manageSynergyWorkorderExecutorDao;
	@Autowired
	private ManageSynergyWorkorderReserveConsultDao manageSynergyWorkorderReserveConsultDao;
	@Autowired
	private SynergyManageService synergyManageService;
	
	@Value(("${doctorAssistant.api}")+"/wlyygc/doctor/message")
	private String messageApi;
@ -571,27 +579,81 @@ public class CustomerService extends BaseService{
		SignFamily sf = familyService.findByPatientCode(callService.getPatient());
		callService.setAdminTeamCode(sf.getAdminTeamId());
		callService.setCreateTime(new Date());
		callServiceDao.save(callService);
		callService = callServiceDao.save(callService);
		//待处理发送消息给医生
		sendCallServiceMes(callService);
		//发送消息
		sendWxMes(callService);
		
		//将旧数据存储到新表---------START
		ManageSynergyWorkorderDO manageSynergyWorkorderDO = new ManageSynergyWorkorderDO();
		// 协同服务工单的服务对象表
		ManageSynergyWorkorderServicerDO manageSynergyWorkorderServicerDO = new ManageSynergyWorkorderServicerDO();
		// 协同服务执行人表
		ManageSynergyWorkorderExecutorDO manageSynergyWorkorderExecutorDO = new ManageSynergyWorkorderExecutorDO();
		// 咨询、预约操作日志表
		ManageSynergyWorkorderReserveConsultDO manageSynergyWorkorderReserveConsultDO = new ManageSynergyWorkorderReserveConsultDO();
		
		manageSynergyWorkorderDO.setDel(1);
		//咨询
		if(0 == callService.getType()){
			manageSynergyWorkorderDO.setType(0);
			manageSynergyWorkorderServicerDO.setWorkorderType(0);
		}else if (1 == callService.getType()){
			manageSynergyWorkorderDO.setType(2);
			manageSynergyWorkorderServicerDO.setWorkorderType(2);
		}
		//服务时间
		manageSynergyWorkorderDO.setServiceTime(callService.getDealTime());
		//工单状态
		if( 0 == callService.getState()){
			manageSynergyWorkorderDO.setStatus(0);
			manageSynergyWorkorderServicerDO.setStatus(0);
		}else if (1 == callService.getState()){
			manageSynergyWorkorderDO.setStatus(2);
			manageSynergyWorkorderServicerDO.setStatus(2);
		}else if(2 == callService.getState()){
			manageSynergyWorkorderDO.setStatus(3);
			manageSynergyWorkorderServicerDO.setStatus(3);
		}
		//优先级
		manageSynergyWorkorderDO.setPriority(0);//默认普通
		manageSynergyWorkorderDO.setCreateTime(new Date());
		manageSynergyWorkorderDO.setCreateUser(callService.getUser());
		manageSynergyWorkorderDO.setCreateUserName(callService.getUserName());
		manageSynergyWorkorderDO.setCreateUserType(2);//默认为客服
		manageSynergyWorkorderDO.setRemark(callService.getRemark());
		manageSynergyWorkorderDO.setContent(callService.getDealContent());
		manageSynergyWorkorderDO.setServicerCount(1);
		manageSynergyWorkorderDO.setReceiverCode(callService.getDoctor());
		manageSynergyWorkorderDO.setReceiverName(callService.getDoctorName());
		manageSynergyWorkorderDO.setReceiverType(1);
		manageSynergyWorkorderDO.setRelationCode(callService.getCode());
		manageSynergyWorkorderDO.setCode(synergyManageService.getWorkorderNo());
		manageSynergyWorkorderDO = manageSynergyWorkOrderDao.save(manageSynergyWorkorderDO);
		
		manageSynergyWorkorderServicerDO.setWorkorderCode(manageSynergyWorkorderDO.getCode());
		manageSynergyWorkorderServicerDO.setCreateTime(new Date());
		manageSynergyWorkorderServicerDO.setCode(UUID.randomUUID().toString());
		manageSynergyWorkorderServicerDao.save(manageSynergyWorkorderServicerDO);
		
		manageSynergyWorkorderExecutorDO.setWorkorderCode(manageSynergyWorkorderDO.getCode());
		manageSynergyWorkorderExecutorDO.setDel(0);
		manageSynergyWorkorderExecutorDO.setExecutorType(3);
		manageSynergyWorkorderExecutorDO.setExecutorCode(callService.getUser());
		manageSynergyWorkorderExecutorDO.setExecutorName(callService.getUserName());
		manageSynergyWorkorderExecutorDO.setCode(UUID.randomUUID().toString());
		manageSynergyWorkorderExecutorDao.save(manageSynergyWorkorderExecutorDO);
		
		manageSynergyWorkorderReserveConsultDO.setCode(UUID.randomUUID().toString());
		manageSynergyWorkorderReserveConsultDO.setWorkorderCode(manageSynergyWorkorderDO.getCode());
		manageSynergyWorkorderReserveConsultDO.setWorkorderServiceCode(manageSynergyWorkorderServicerDO.getCode());
		manageSynergyWorkorderReserveConsultDao.save(manageSynergyWorkorderReserveConsultDO);
		
		return "1";
	}
	public boolean checkCallServiceCount(CallService callService ){
		String sql = "SELECT count(1) AS total FROM manage_call_service s WHERE s.call_code ='"+callService.getCallCode() +"' AND s.type = "+callService.getType();
		List<Map<String,Object>> list = jdbcTemplate.queryForList(sql);
		if(list!=null&&list.size()>0){
			Map<String,Object> map = list.get(0);
			Long total = (Long)map.get("total");
			if(total>=5){
				return false;
			}
		}
		return true;
	}
	public String updateCallService(String callServiceJson,String user){
		net.sf.json.JSONObject jsonObject = net.sf.json.JSONObject.fromObject(callServiceJson);
@ -604,8 +666,104 @@ public class CustomerService extends BaseService{
		sendCallServiceMes(callService);
		//发送消息
		sendWxMes(callService);
		
		//将旧数据存储到新表---------START
		ManageSynergyWorkorderDO manageSynergyWorkorderDO = manageSynergyWorkOrderDao.findByRelationCode(callService.getCode());
		// 协同服务工单的服务对象表
		ManageSynergyWorkorderServicerDO manageSynergyWorkorderServicerDO = manageSynergyWorkorderServicerDao.findByWorkorderCode(manageSynergyWorkorderDO.getCode()).get(0);
		// 协同服务执行人表
		ManageSynergyWorkorderExecutorDO manageSynergyWorkorderExecutorDO = manageSynergyWorkorderExecutorDao.findByWorkorderCode(manageSynergyWorkorderDO.getCode(),3).get(0);
		// 咨询、预约操作日志表
		ManageSynergyWorkorderReserveConsultDO manageSynergyWorkorderReserveConsultDO = manageSynergyWorkorderReserveConsultDao.findByWorkorderCode(manageSynergyWorkorderDO.getCode());
		
		manageSynergyWorkorderDO.setDel(1);
		//咨询
		if(0 == callService.getType()){
			manageSynergyWorkorderDO.setType(0);
			manageSynergyWorkorderServicerDO.setWorkorderType(0);
		}else if (1 == callService.getType()){
			manageSynergyWorkorderDO.setType(2);
			manageSynergyWorkorderServicerDO.setWorkorderType(2);
		}
		//服务时间
		manageSynergyWorkorderDO.setServiceTime(callService.getDealTime());
		//工单状态
		if( 0 == callService.getState()){
			manageSynergyWorkorderDO.setStatus(0);
			manageSynergyWorkorderServicerDO.setStatus(0);
		}else if (1 == callService.getState()){
			manageSynergyWorkorderDO.setStatus(2);
			manageSynergyWorkorderServicerDO.setStatus(2);
		}else if(2 == callService.getState()){
			manageSynergyWorkorderDO.setStatus(3);
			manageSynergyWorkorderServicerDO.setStatus(3);
		}
		//优先级
		manageSynergyWorkorderDO.setPriority(0);//默认普通
		manageSynergyWorkorderDO.setCreateTime(new Date());
		manageSynergyWorkorderDO.setCreateUser(callService.getUser());
		manageSynergyWorkorderDO.setCreateUserName(callService.getUserName());
		manageSynergyWorkorderDO.setCreateUserType(2);//默认为客服
		manageSynergyWorkorderDO.setRemark(callService.getRemark());
		manageSynergyWorkorderDO.setContent(callService.getDealContent());
		manageSynergyWorkorderDO.setServicerCount(1);
		manageSynergyWorkorderDO.setReceiverCode(callService.getDoctor());
		manageSynergyWorkorderDO.setReceiverName(callService.getDoctorName());
		manageSynergyWorkorderDO.setReceiverType(1);
		manageSynergyWorkorderDO.setRelationCode(callService.getCode());
		manageSynergyWorkorderDO = manageSynergyWorkOrderDao.save(manageSynergyWorkorderDO);
		
		
		manageSynergyWorkorderServicerDO.setWorkorderCode(manageSynergyWorkorderDO.getCode());
		manageSynergyWorkorderServicerDO.setCreateTime(new Date());
		manageSynergyWorkorderServicerDao.save(manageSynergyWorkorderServicerDO);
		
		manageSynergyWorkorderExecutorDO.setWorkorderCode(manageSynergyWorkorderDO.getCode());
		manageSynergyWorkorderExecutorDO.setDel(0);
		manageSynergyWorkorderExecutorDO.setExecutorType(3);
		manageSynergyWorkorderExecutorDO.setExecutorCode(callService.getUser());
		manageSynergyWorkorderExecutorDO.setExecutorName(callService.getUserName());
		manageSynergyWorkorderExecutorDao.save(manageSynergyWorkorderExecutorDO);
		
		manageSynergyWorkorderReserveConsultDO.setWorkorderCode(manageSynergyWorkorderDO.getCode());
		manageSynergyWorkorderReserveConsultDO.setWorkorderServiceCode(manageSynergyWorkorderServicerDO.getCode());
		manageSynergyWorkorderReserveConsultDO.setDealType(callService.getDealType());
		manageSynergyWorkorderReserveConsultDO.setDealTime(new Date());
		manageSynergyWorkorderReserveConsultDO.setDealState(callService.getDealState());
		manageSynergyWorkorderReserveConsultDO.setDealContent(callService.getDealContent());
		manageSynergyWorkorderReserveConsultDO.setDealReason(callService.getDealReason());
		manageSynergyWorkorderReserveConsultDO.setOrderHospital(callService.getOrderHospital());
		manageSynergyWorkorderReserveConsultDO.setOrderHospitalName(callService.getOrderHospitalName());
		manageSynergyWorkorderReserveConsultDO.setOrderDept(callService.getOrderDept());
		manageSynergyWorkorderReserveConsultDO.setOrderDeptName(callService.getOrderDeptName());
		manageSynergyWorkorderReserveConsultDO.setOrderDoctor(callService.getOrderDoctor());
		manageSynergyWorkorderReserveConsultDO.setOrderDoctorName(callService.getOrderDoctorName());
		manageSynergyWorkorderReserveConsultDO.setOrderTime(callService.getOrderTime());
		manageSynergyWorkorderReserveConsultDO.setRegisterTime(callService.getRegisterTime());
		manageSynergyWorkorderReserveConsultDO.setUser(callService.getUser());
		manageSynergyWorkorderReserveConsultDO.setUserName(callService.getUserName());
		manageSynergyWorkorderReserveConsultDO.setCreateTime(callService.getCreateTime());
		manageSynergyWorkorderReserveConsultDO.setCallCode(callService.getCallCode());
		manageSynergyWorkorderReserveConsultDao.save(manageSynergyWorkorderReserveConsultDO);
		
		
		return "1";
	}
	
	
	public boolean checkCallServiceCount(CallService callService ){
		String sql = "SELECT count(1) AS total FROM manage_call_service s WHERE s.call_code ='"+callService.getCallCode() +"' AND s.type = "+callService.getType();
		List<Map<String,Object>> list = jdbcTemplate.queryForList(sql);
		if(list!=null&&list.size()>0){
			Map<String,Object> map = list.get(0);
			Long total = (Long)map.get("total");
			if(total>=5){
				return false;
			}
		}
		return true;
		
	}
	public void sendWxMes(CallService callService){
		Doctor d = doctorDao.findByCode(callService.getDoctor());
@ -747,8 +905,13 @@ public class CustomerService extends BaseService{
	}
	public String delCallService(String code){
		CallService c = callServiceDao.findByCode(code);
		callServiceDao.delete(c);
		//旧代码
//		CallService c = callServiceDao.findByCode(code);
//		callServiceDao.delete(c);
		//新代码--根据CODE逻辑删除工单表
		ManageSynergyWorkorderDO manageSynergyWorkorderDO = manageSynergyWorkOrderDao.findByCode(code);
		manageSynergyWorkorderDO.setDel(0);
		manageSynergyWorkOrderDao.save(manageSynergyWorkorderDO);
		return "1";
	}

+ 19 - 0
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/service/synergy/SynergyManageService.java

@ -392,6 +392,7 @@ public class SynergyManageService extends BaseJpaService {
        if(workorderDO.getType() == 3){
            List<ManageSynergyWorkorderServicerDO> workorderServicerDO = workorderServicerDao.findByWorkorderCode(workorderCode);
            map.put("patientName", workorderServicerDO.get(0).getServicePatientName());
            map.put("patient", workorderServicerDO.get(0).getServicePatientCode());
            map.put("idcard", workorderServicerDO.get(0).getIdcard());
            map.put("ssc", workorderServicerDO.get(0).getSsc());
        }else if(workorderDO.getType() == 5) {
@ -955,6 +956,24 @@ public class SynergyManageService extends BaseJpaService {
        }
    }
    /**
     * 更新工单
     *
     * @param manageSynergyWorkorderDO
     */
    public void updateWorkorder(ManageSynergyWorkorderDO manageSynergyWorkorderDO){
        ManageSynergyWorkorderDO  manageSynergyWorkorderDO1 = workOrderDao.findByCode(manageSynergyWorkorderDO.getCode());
        if(StringUtils.isNoneBlank(manageSynergyWorkorderDO.getRelationCodeName())){
            manageSynergyWorkorderDO1.setRelationCodeName(manageSynergyWorkorderDO.getRelationCodeName());
        }
        manageSynergyWorkorderDO1.setPriority(manageSynergyWorkorderDO.getPriority());
        manageSynergyWorkorderDO1.setServiceTime(manageSynergyWorkorderDO.getServiceTime());
        manageSynergyWorkorderDO1.setReturnedRemark(manageSynergyWorkorderDO.getReturnedRemark());
        manageSynergyWorkorderDO.setStatus(1);
        workOrderDao.save(manageSynergyWorkorderDO);
    }
    public String findByPatient(String patient){
        String response = null;
        String url = wlyyUrl + "third/synergy/findByPatient";

+ 3 - 0
patient-co-service/wlyy_device/src/main/java/com/yihu/hos/device/common/dao/PatientHealthIndexDao.java

@ -61,5 +61,8 @@ public interface PatientHealthIndexDao
	@Query(value="select * from device.wlyy_patient_health_index where user = ?1 and type = ?2 ORDER BY record_date desc limit 0 ,5",nativeQuery = true)
	List<PatientHealthIndex> findByPatientAndTypeByPage(String patientCode, int type);
	@Query("select a from PatientHealthIndex a where a.user = ?1 and a.deviceSn = ?2 and a.value1 = ?3 and a.type = ?4 and a.recordDate >= ?5 and a.recordDate<=?6 and a.del = '1' ")
	List<PatientHealthIndex> findByTypeInHalfMinute(String patient, String deviceSn, String value1, Integer type, Date minDate,Date maxDate);
}

+ 5 - 1
patient-co-service/wlyy_device/src/main/java/com/yihu/hos/device/service/DeviceService.java

@ -494,7 +494,11 @@ public class DeviceService extends BaseService{
                }
            }
//            List<PatientHealthIndex> list = patientHealthIndexDao.findByType(device.getUser(),deviceSn,value1,Integer.parseInt(type),time);
            List<PatientHealthIndex> list = iotDeviceService.findByType(device.getUser(),deviceSn,value1,Integer.parseInt(type),time);
            long maxtime = time.getTime()+30*1000;
            long mintime = time.getTime()-30*1000;
            Date minDate = new Date(mintime);
            Date maxDate = new Date(maxtime);
            List<PatientHealthIndex> list = iotDeviceService.findByType(device.getUser(),deviceSn,value1,Integer.parseInt(type),time,minDate,maxDate);
            if(list!=null&&list.size()>0){
                DeviceInfo deviceInfo = new DeviceInfo();
                deviceInfo.setDeviceData(json.toString());

+ 3 - 2
patient-co-service/wlyy_device/src/main/java/com/yihu/hos/device/service/IotDeviceService.java

@ -130,11 +130,12 @@ public class IotDeviceService extends BaseService{
     * @param time
     * @return
     */
    public List<PatientHealthIndex> findByType(String user,String deviceSn,String value1,Integer type,Date time){
    public List<PatientHealthIndex> findByType(String user,String deviceSn,String value1,Integer type,Date time,Date timeMin,Date timeMax){
        if(isUploadIot()){
            return findRepeat(user,deviceSn,value1,type,time);
        }else {
            return  patientHealthIndexDao.findByType(user,deviceSn,value1,type,time);
            //return  patientHealthIndexDao.findByType(user,deviceSn,value1,type,time);
            return  patientHealthIndexDao.findByTypeInHalfMinute(user,deviceSn,value1,type,timeMin,timeMax);
        }
    }

+ 1 - 1
patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/event/ApplicationEvent.java

@ -292,7 +292,7 @@ public class ApplicationEvent implements ApplicationListener<ContextRefreshedEve
                logger.info("child_immune_vaccin_job  job exist");
            }
            //获取儿童可预约疫苗,每天凌晨1点执行一次
            //提醒儿童可预约疫苗,每天9点执行一次
            if (!quartzHelper.isExistJob("alert_child_immune_vaccin_job")) {
                String trigger = SystemConf.getInstance().getSystemProperties().getProperty("alert_child_immune_vaccin_job");
                quartzHelper.addJob(AlertChildImmuneVaccinJob.class, trigger, "alert_child_immune_vaccin_job", new HashMap<String, Object>());

+ 2 - 2
patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/job/AlertChildImmuneVaccinJob.java

@ -18,8 +18,8 @@ public class AlertChildImmuneVaccinJob implements Job {
    public void execute(JobExecutionContext context) throws JobExecutionException {
        logger.info("START========每天九点提醒居民待接种JOB========");
        try {
            childVaccinImmuneService.alertBefore();
            logger.info("END========每天九点提醒居民待接种JOB========");
            int result = childVaccinImmuneService.alertBefore();
            logger.info("END========每天九点提醒居民待接种JOB========"+result);
        }catch (Exception e){
            e.printStackTrace();
            logger.info("END===ERROE===每天九点提醒居民待接种JOB,message:"+e.getMessage());

+ 4 - 0
patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/job/PrescriptionPayQueryJob.java

@ -37,10 +37,14 @@ public class PrescriptionPayQueryJob implements Job {
            String accesstoken =  weiXinAccessTokenUtils.getAccessToken();
            //获取支付完成,院内结算失败的 处方CODE 集合
            List<String> prescriptionCodeList = prescriptionPayDao.findTodayUnpay();
    
            logger.info("PrescriptionPayQueryJob size:"+prescriptionCodeList.size());
            if (!prescriptionCodeList.isEmpty()) {
                for (String code : prescriptionCodeList) {
                    try {
                        logger.info("PrescriptionPayQueryJob code:"+code);
    
                        payService.chargeQuery(code,accesstoken);
                    } catch (Exception e) {
                        logger.info("PrescriptionPayQueryJob error ..........continue this JOB,CODE:" + code + ",message:" + e.getMessage());

+ 2 - 2
patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/repository/prescription/PrescriptionPayDao.java

@ -18,7 +18,7 @@ public interface PrescriptionPayDao extends PagingAndSortingRepository<Prescript
    @Query("from PrescriptionPay p where p.code=?1 ")
    PrescriptionPay findByCode(String code);
    //   查询当天支付,页面回调及异步回调均失败的支付 tradeStatus为空
    @Query(value = "SELECT t.`code` FROM wlyy_prescription_pay t WHERE t.trade_status != '1' AND t.create_time >= date(now()) AND t.create_time < DATE_ADD(date(now()), INTERVAL 1 DAY) ", nativeQuery = true)
    //   查询5天内支付,页面回调及异步回调均失败的支付 tradeStatus为空
    @Query(value = "SELECT t.`code` FROM wlyy_prescription_pay t WHERE (t.trade_status IS NULL OR t.trade_status=0) AND t.create_time>=DATE_ADD(date(now()),INTERVAL-3 DAY) AND t.create_time< DATE_ADD(date(now()),INTERVAL 1 DAY)", nativeQuery = true)
    List<String> findTodayUnpay();
}

+ 3 - 0
patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/service/app/prescription/PatientPrescriptionPayService.java

@ -139,10 +139,13 @@ public class PatientPrescriptionPayService extends BaseService {
            requestParams.setParam(params);
            msgBody = JSON.toJSONString(requestParams);
            System.out.println("查询长处方支付明细入参:"+requestParams.toString());
            //执行支付 返回原生返回值
            ResponseParams<JSONObject> res = onepayClient.execute(requestParams);
            response = JSON.toJSONString(res);
    
            System.out.println("查询长处方支付明细出参:"+response);
            if (OnepayDefaultClient.isSuccessful(res)) {
                //业务处理*******************

+ 56 - 49
patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/service/imm/ChildVaccinImmuneService.java

@ -197,47 +197,53 @@ public class ChildVaccinImmuneService extends BaseService {
		return result;
	}
	public int alertBefore()throws Exception{
		JSONArray jsonArray =  new JSONArray();
		String sql ="SELECT" +
				" v.*, i.birthday" +
				" FROM" +
				" wlyy_child_immune_vaccin v" +
				" LEFT JOIN wlyy_child_info i ON v.child_info_code = i.`code`" +
				" WHERE" +
				" v.del = 0" +
				" AND ymkc = 'true'";
		List<Map<String,Object>> mapList = jdbcTemplate.queryForList(sql);
		String nowDate = DateUtil.dateToStrShort(new Date());
		for (Map<String,Object> map : mapList){
			Calendar calendar=Calendar.getInstance();
			String birthDayStr = String.valueOf(map.get("birthday"));
			if (StringUtils.isNotBlank(birthDayStr)){
				String[] biStr = birthDayStr.split("-");
				int birthdayDate = Integer.valueOf(biStr[biStr.length-1]);
				int nowDayDate = calendar.get(GregorianCalendar.DAY_OF_MONTH);
				int nowMonthDate = calendar.get(GregorianCalendar.MONTH)+1;
				int nowYearDate = calendar.get(GregorianCalendar.YEAR);
				//如果生日在今天的日期之前,则取下个月生日的日期的15天的是否是今天.
				if (birthdayDate<nowDayDate){
					calendar.set(nowYearDate,nowMonthDate+1,birthdayDate);
				}else {
					//如果生日在今天之前后,则看生日的15天之前是否是今天
					calendar.set(nowYearDate,nowMonthDate,birthdayDate);
				}
				String needAlertDate = DateUtil.dateToStrShort(DateUtil.getPreDays(calendar.getTime(),-15));
				if (needAlertDate.equals(nowDate)){
					JSONObject jsonObject = new JSONObject();
					jsonObject.put("vaccinCode",map.get("code"));//待接种疫苗记录code
					jsonObject.put("childName", map.get("name"));//儿童姓名
					jsonObject.put("childCode", map.get("child_info_code"));//儿童code
					jsonObject.put("vaccinName", map.get("ymmc"));//疫苗名称
					jsonArray.put(jsonObject);
				}
			}
		}
		return alertImmVacclinByChildInfoCodes(jsonArray.toString());
	}
    public int alertBefore()throws Exception{
        JSONArray jsonArray =  new JSONArray();
        String sql ="SELECT" +
                " v.*, i.birthday" +
                " FROM" +
                " wlyy_child_immune_vaccin v" +
                " LEFT JOIN wlyy_child_info i ON v.child_info_code = i.`code`" +
                " WHERE" +
                " v.del = 0" +
                " AND ymkc = 'true' and ymsx=1";
        List<Map<String,Object>> mapList = jdbcTemplate.queryForList(sql);
        String nowDate = DateUtil.dateToStrShort(new Date());
        for (Map<String,Object> map : mapList){
            Calendar calendar=Calendar.getInstance();
            String birthDayStr = String.valueOf(map.get("birthday"));
            if (StringUtils.isNotBlank(birthDayStr)){
                String[] biStr = birthDayStr.split("-");
                int birthdayDate = Integer.valueOf(biStr[biStr.length-1]);
                int nowDayDate = calendar.get(GregorianCalendar.DAY_OF_MONTH);
                int nowMonthDate = calendar.get(GregorianCalendar.MONTH)+1;
                int nowYearDate = calendar.get(GregorianCalendar.YEAR);
                //如果生日在今天的日期之前,则取下个月生日的日期的15天的是否是今天.
                if (birthdayDate<nowDayDate){
                    calendar.clear();
                    calendar.set(nowYearDate,nowMonthDate,birthdayDate);
                }else {
                    //如果生日在今天之前后,则看生日的15天之前是否是今天
                    calendar.clear();
                    calendar.set(nowYearDate,nowMonthDate-1,birthdayDate);
                }
                String needAlertDate = DateUtil.dateToStrShort(DateUtil.getPreDays(calendar.getTime(),-15));
                if (needAlertDate.equals(nowDate)){
                    JSONObject jsonObject = new JSONObject();
                    jsonObject.put("vaccinCode",map.get("code"));//待接种疫苗记录code
                    jsonObject.put("childName", map.get("name"));//儿童姓名
                    jsonObject.put("childCode", map.get("child_info_code"));//儿童code
                    jsonObject.put("vaccinName", map.get("ymmc"));//疫苗名称
                    jsonArray.put(jsonObject);
                }
            }
        }
        if (jsonArray.length()>0){
            return alertImmVacclinByChildInfoCodes(jsonArray.toString());
        }else {
            return 0;
        }
    }
	public int alertImmVacclinByChildInfoCodes(String alertDataJsonStr)throws Exception{
		if (StringUtils.isEmpty(alertDataJsonStr)){
@ -271,17 +277,18 @@ public class ChildVaccinImmuneService extends BaseService {
			for (Map<String,Object> map : list){
				//如果父母亲都在就都发
				if (!openIdList.contains(String.valueOf(map.get("openid")))){
					if (("1".equals(String.valueOf(map.get("relation"))) || "2".equals(String.valueOf(map.get("relation")))) && StringUtils.isNotBlank(String.valueOf(map.get("openid")))){
					if (StringUtils.isNotBlank(String.valueOf(map.get("openid")))){
						boolean flag =true;
						try {
							WechatTemplateConfig temp = templateConfigDao.findByScene("template_deal_with_job", "dsymjztx");
							WechatTemplateConfig temp = templateConfigDao.findByScene("template_doctor_survey", "dsymjztx");
							JSONObject json = new JSONObject();
							json.put("toUser",String.valueOf(map.get("code")));
							json.put("keyword1", temp.getKeyword1().replace("key1",DateUtil.dateToStr(new Date(), "yyyy-MM-dd")));
							json.put("keyword2", temp.getKeyword2().replace("key1", vaccinName));
							json.put("remark", temp.getRemark());
							json.put("first", temp.getFirst().replace("key1", childName));
							logger.info("weiTempJOSN:"+json.toString());
                            json.put("toUser",String.valueOf(map.get("code")));
                            json.put("keyword1", temp.getKeyword1());
                            json.put("keyword2", temp.getKeyword2().replace("key1",DateUtil.dateToStr(new Date(), "yyyy-MM-dd")));
                            json.put("remark", temp.getRemark());
                            json.put("first", temp.getFirst().replace("key1",String.valueOf(map.get("name"))).replace("key2", childName));
                            json.put("url",temp.getUrl().replace("key1",childCode));
                            logger.info("weiTempJOSN:"+json.toString());
							pushMsgTask.putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 24,String.valueOf(map.get("openid")) , String.valueOf(map.get("name")), json);
						}catch (Exception e){
							e.printStackTrace();

+ 12 - 0
patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/task/PushMsgTask.java

@ -60,6 +60,8 @@ public class PushMsgTask {
    private String template_doctor_service;//服务结果通知
    @Value("${wechat.message.template_device_measure_notice}")
    private String template_device_measure_notice;//设备测量提醒
    @Value("${wechat.message.template_deal_with}")
    private String template_deal_with;
    @Autowired
    private WechatPushLogDao wechatPushLogDao;
@ -670,6 +672,16 @@ public class PushMsgTask {
                keyword4.setColor("#000000");
                keyword4.setValue(json.getString("keyword4"));
                m.put("keyword4", keyword4);
            }else if (type == 24) {//结果处理通知
                temp.setTemplate_id(template_deal_with);
                WechatTemplateData keyword1 = new WechatTemplateData();
                keyword1.setColor("#000000");
                keyword1.setValue(json.getString("keyword1"));
                m.put("keyword1", keyword1);
                WechatTemplateData keyword2 = new WechatTemplateData();
                keyword2.setColor("#000000");
                keyword2.setValue(json.getString("keyword2"));
                m.put("keyword2", keyword2);
            }
            temp.setData(m);

+ 50 - 0
patient-co/patient-co-wlyy-job/src/main/java/com/yihu/wlyy/web/JMController.java

@ -0,0 +1,50 @@
package com.yihu.wlyy.web;
import com.yihu.wlyy.service.imm.ChildVaccinImmuneService;
import com.yihu.wlyy.service.specialist.SpecialistService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;
/**
 * Created by zhangdan on 2018/10/16.
 */
@RestController
@RequestMapping(value = "/job/imm/", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
@Api(description = "计免免疫")
public class JMController extends BaseController{
    @Autowired
    private ChildVaccinImmuneService childVaccinImmuneService;
    @RequestMapping(value = "getChildImmuneVaccinEveryDay", method = RequestMethod.GET)
    @ResponseBody
    @ApiOperation("每天获取可预约疫苗test")
    public String getChildImmuneVaccinEveryDay (){
        try{
            int res = childVaccinImmuneService.getChildImmuneVaccinEveryDay();
            return write(200,"获取成功!","data",res);
        }catch (Exception e){
            error(e);
            return error(-1, e.getMessage());
        }
    }
    @RequestMapping(value = "alertJobTest", method = RequestMethod.GET)
    @ResponseBody
    @ApiOperation("job提醒居民预约测试.")
    public String alertJobTest (){
        try{
            int res = childVaccinImmuneService.alertBefore();
            return write(200,"获取成功!","data",res);
        }catch (Exception e){
            error(e);
            return error(-1, e.getMessage());
        }
    }
}

+ 2 - 0
patient-co/patient-co-wlyy-job/src/main/resources/application-dev.yml

@ -71,6 +71,8 @@ wechat:
   template_doctor_service:  ezr5RlX0nvh7bGU9aVsGDMJbjKDp1uMKP-AGGYXwI5g
   #设备测量提醒
   template_device_measure_notice: bzwLOFFPSe2vq74IljvVIPmvjP-C4ebEUAFORyq-2dY
   #处理结果通知
    template_deal_with:  q9AiUpG7h2_4MUVE7iIKLV8lVwVaytTrHozqnkPGSes
yihu:
  yihu_OpenPlatform_url: http://ssotest.yihu.cn/OpenPlatform/cgiBin/1.0/

+ 4 - 1
patient-co/patient-co-wlyy-job/src/main/resources/application-devtest.yml

@ -64,13 +64,16 @@ wechat:
    #医生变更
    template_doctor_change:  V5h0F84t972kUzQvWy8qYrgdaYGJVj10pFeFVl19Nb8
    #问卷调查
    template_doctor_survey:  OqQXrb-e43_TJpq_70_K_y6vYJgY5mpjFYY4c5RWFP4
    #template_doctor_survey:  OqQXrb-e43_TJpq_70_K_y6vYJgY5mpjFYY4c5RWFP4
    template_doctor_survey:  q9AiUpG7h2_4MUVE7iIKLV8lVwVaytTrHozqnkPGSes
    #审核结果通知
    template_doctor_audit:  lCtOgJgL1tBJbAytqN7cn-FgCH_Usg99FENEy2TrC08
    #服务结果通知
    template_doctor_service: i34rq3xFLnpf_VN2Jor9n2YlQqJMM7oXyYvuctriISw
    #设备测量提醒
    template_device_measure_notice: bzwLOFFPSe2vq74IljvVIPmvjP-C4ebEUAFORyq-2dY
    #处理结果通知
    template_deal_with:  q9AiUpG7h2_4MUVE7iIKLV8lVwVaytTrHozqnkPGSes
yihu:
  yihu_OpenPlatform_url: http://ssotest.yihu.cn/OpenPlatform/cgiBin/1.0/

+ 2 - 0
patient-co/patient-co-wlyy-job/src/main/resources/application-prod.yml

@ -73,6 +73,8 @@ wechat:
   template_doctor_service:  xhi1LEudiZwJfZylOHuZNo8EiA73GtSshPQv5XOt9Lk
   #设备测量提醒
   template_device_measure_notice: bzwLOFFPSe2vq74IljvVIPmvjP-C4ebEUAFORyq-2dY
   #处理结果通知
   template_deal_with:  GyXCmXVYCD7PXi0IbHdPOD8apa-RQoSrSw-4-0pj9Go
yihu:
  yihu_OpenPlatform_url: http://api.yihu.com.cn/OpenPlatform/cgiBin/1.0/

+ 4 - 1
patient-co/patient-co-wlyy-job/src/main/resources/application-test.yml

@ -65,13 +65,16 @@ wechat:
   #医生变更
   template_doctor_change:  RMKwJ-PLHP-uBwjJlHDgPaVFZhjuXvhSO7V8Dwh7vPc
   #问卷调查
   template_doctor_survey:  OqQXrb-e43_TJpq_70_K_y6vYJgY5mpjFYY4c5RWFP4
   #template_doctor_survey:  OqQXrb-e43_TJpq_70_K_y6vYJgY5mpjFYY4c5RWFP4
   template_doctor_survey: q9AiUpG7h2_4MUVE7iIKLV8lVwVaytTrHozqnkPGSes
   #审核结果通知
   template_doctor_audit:  kyrkan8cWQ22J_NC01e8yGwsn75MeUtfgdCrZKkwSLQ
   #服务结果通知
   template_doctor_service:  2hEhp2bLfmM-7Goc6rJ3EE4a4wvuhyndKufruYTk6A0
   #设备测量提醒
   template_device_measure_notice: 5bzC6o_9zlL24loYnF7hFLskuRzCyX8v48KfWmYOL3c
   #处理结果通知
   template_deal_with:  q9AiUpG7h2_4MUVE7iIKLV8lVwVaytTrHozqnkPGSes
yihu:
  yihu_OpenPlatform_url: http://ssotest.yihu.cn/OpenPlatform/cgiBin/1.0/

+ 6 - 6
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/prescription/PrescriptionNoticesService.java

@ -95,7 +95,7 @@ public class PrescriptionNoticesService extends BaseService {
                            url = url.replace(touser, "&toUser=" + member.getCode());
                            //name患者姓名
                            sendJson.put("first", weiXinOpenIdUtils.getTitleMes(people, (int) j.get("relation"), name) + first);
                            sendJson.put("url", url);
                            sendJson.put("url", url +="&represent="+patient);
                            pushMsgTask.putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 19, member.getOpenid(), name, sendJson);
                        }
                    }
@ -128,7 +128,7 @@ public class PrescriptionNoticesService extends BaseService {
                            url = url.replace(touser, "&toUser=" + member.getCode());
                            //name患者姓名
                            sendJson.put("first", weiXinOpenIdUtils.getTitleMes(people, (int) j.get("relation"), name) + first);
                            sendJson.put("url", url);
                            sendJson.put("url", url +="&represent="+patient);
                            pushMsgTask.putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 19, member.getOpenid(), name, sendJson);
                        }
                    }
@ -161,7 +161,7 @@ public class PrescriptionNoticesService extends BaseService {
                            url = url.replace(touser, "&toUser=" + member.getCode());
                            //name患者姓名
                            sendJson.put("first", weiXinOpenIdUtils.getTitleMes(people, (int) j.get("relation"), name) + first);
                            sendJson.put("url", url);
                            sendJson.put("url", url +="&represent="+patient);
                            pushMsgTask.putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 19, member.getOpenid(), name, sendJson);
                        }
                    }
@ -194,7 +194,7 @@ public class PrescriptionNoticesService extends BaseService {
                    url = url.replace(touser, "&toUser=" + member.getCode());
                    //name患者姓名
                    sendJson.put("first", weiXinOpenIdUtils.getTitleMes(people, (int) j.get("relation"), name) + first);
                    sendJson.put("url", url);
                    sendJson.put("url", url +="&represent="+patient);
                    pushMsgTask.putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 11, member.getOpenid(), name, sendJson);
                }
            }
@ -227,7 +227,7 @@ public class PrescriptionNoticesService extends BaseService {
                    url = url.replace(touser, "&toUser=" + member.getCode());
                    //name患者姓名
                    sendJson.put("first", weiXinOpenIdUtils.getTitleMes(people, (int) j.get("relation"), name) + first);
                    sendJson.put("url", url);
                    sendJson.put("url", url +="&represent="+patient);
                    pushMsgTask.putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 10, member.getOpenid(), name, sendJson);
                }
            }
@ -261,7 +261,7 @@ public class PrescriptionNoticesService extends BaseService {
                    url = url.replace(touser, "&toUser=" + member.getCode());
                    //name患者姓名
                    sendJson.put("first", weiXinOpenIdUtils.getTitleMes(people, (int) j.get("relation"), name) + first);
                    sendJson.put("url", url);
                    sendJson.put("url", url +="&represent="+patient);
                    pushMsgTask.putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 20, member.getOpenid(), name, sendJson);
                }
            }

+ 7 - 3
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/survey/SurveyScreenResultService.java

@ -1109,8 +1109,7 @@ public class SurveyScreenResultService extends BaseService {
                "LEFT JOIN wlyy_sign_patient_label_info t2 on t2.patient = t1.patient and t2.label_type = " + labelType + " and t2.status=1 " +
                "RIGHT JOIN wlyy_sign_family_server s on s.sign_code = t1.code" +
                "LEFT JOIN dm_hospital h on t1.hospital = h.`code` " +
                "WHERE ( t1.doctor = ? OR t1.doctor_health = ?) AND t1. STATUS > 0  and t1.expenses_status = 1 AND t1.admin_team_code = ? " +
                "AND p.openid IS NOT NULL AND p.openid <>'' ";
                "WHERE ( t1.doctor = ? OR t1.doctor_health = ?) AND t1. STATUS > 0  and t1.expenses_status = 1 AND t1.admin_team_code = ? " ;
        if(StringUtils.isNotBlank(serverType)){
            sql = sql.replace("on s.sign_code = t1.code", "on s.sign_code = t1.code and s.server_type in (" + serverType + ") ");
        }
@ -1135,9 +1134,11 @@ public class SurveyScreenResultService extends BaseService {
        if(object.getInt("type") == 4){
            Survey survey = surveyDao.findById(object.getString("relationCode"));
            object.put("relationCodeName", survey.getTitle());
            object.put("createUserRole", 2);
        }else if(object.getInt("type") == 5){
            SurveyTemplates templates = surveyTemplatesDao.findById(object.getString("relationCode"));
            object.put("relationCodeName", templates.getTitle());
            object.put("createUserRole", 1);
        }
        Doctor d = doctorService.findDoctorByCode(doctor);
        object.put("hospital", d.getHospital());
@ -1151,6 +1152,9 @@ public class SurveyScreenResultService extends BaseService {
        HttpResponse response = null;
        response = HttpUtils.doPost(customerUrl + "synergy/questionnaire/createWorkOrder", param);
        JSONObject rs = new JSONObject(response.getContent());
        return rs;
        if(rs.getInt("status") == 200) {
            return rs;
        }
        throw new Exception();
    }
}

+ 7 - 157
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/imm/ChildFamilyImmuneService.java

@ -328,18 +328,19 @@ public class ChildFamilyImmuneService extends BaseService {
		for (Map<String,Object> map : list){
			//如果父母亲都在就都发
			if (!openIdList.contains(String.valueOf(map.get("openid")))){
				if (("1".equals(String.valueOf(map.get("relation"))) || "2".equals(String.valueOf(map.get("relation")))) && StringUtils.isNotBlank(String.valueOf(map.get("openid")))){
				if (StringUtils.isNotBlank(String.valueOf(map.get("openid")))){
					boolean flag =true;
					try {
						WechatTemplateConfig temp = templateConfigDao.findByScene("template_deal_with", "ymjztx");
						WechatTemplateConfig temp = templateConfigDao.findByScene("template_doctor_survey", "ymjztx");
						JSONObject json = new JSONObject();
						json.put("toUser",String.valueOf(map.get("code")));
						json.put("keyword1", temp.getKeyword1().replace("key1",DateUtil.dateToStr(new Date(), "yyyy-MM-dd")));
						json.put("keyword2", temp.getKeyword2().replace("key1", doctorName+"("+doctorLevel+")"));
						json.put("keyword1", temp.getKeyword1());
						json.put("keyword2", temp.getKeyword2().replace("key1",DateUtil.dateToStr(new Date(), "yyyy-MM-dd")));
						json.put("remark", temp.getRemark());
						json.put("first", temp.getFirst().replace("key1",String.valueOf(map.get("name"))).replace("key2", childName).replace("key3",vaccinName));
						json.put("first", temp.getFirst().replace("key1",String.valueOf(map.get("name"))).replace("key2", childName));
						json.put("url",temp.getUrl().replace("key1",childCode));
						logger.info("weiTempJOSN:"+json.toString());
						pushMsgTask.putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 24,String.valueOf(map.get("openid")) , String.valueOf(map.get("name")), json);
						pushMsgTask.putWxMsg(weiXinAccessTokenUtils.getAccessToken(), 11,String.valueOf(map.get("openid")) , String.valueOf(map.get("name")), json);
					}catch (Exception e){
						e.printStackTrace();
						flag = false;
@ -390,115 +391,6 @@ public class ChildFamilyImmuneService extends BaseService {
		return  flag;
	}
	@Transactional(rollbackFor = Exception.class)
	public int getChildImmuneVaccinEveryDay()throws Exception{
		int result = 0;
		try {
			String sql ="SELECT" +
					" DISTINCT ci.`code`," +
					" ci.idcard," +
					" ci.`name`," +
					" ci.ssc," +
					" ci.barcode" +
					" FROM" +
					" wlyy_child_family_immune fi" +
					" LEFT JOIN wlyy_child_info ci ON fi.child_code = ci.`code`" +
					" WHERE" +
					" fi.del = 0";
			List<Map<String,Object>> list = jdbcTemplate.queryForList(sql);
			for (Map<String,Object> map : list){
				String barcode = String.valueOf(map.get("barcode"));
				System.out.println("===============barcode=============="+barcode);
				String deptStr = immuneService.findDept(barcode);
				if (StringUtils.isNotBlank(deptStr)){
					JSONObject jsonObject = new JSONObject(deptStr);
					if (jsonObject.getInt("status")==200) {
						JSONObject json = new JSONObject(jsonObject.getString("data"));
						JSONArray jsonArray = json.getJSONArray("body");
						for (int i = 0;i<jsonArray.length();i++){
							String deptNum  = jsonArray.getJSONObject(i).getString("deptNum");
							String vaccinStr = immuneService.findMyVaccin(barcode,deptNum);
							JSONObject vaccinJson = new JSONObject(vaccinStr);
							if (vaccinJson.getInt("status")==200) {
								JSONObject vaccinJson2 = new JSONObject(vaccinJson.getString("data"));
								JSONArray vaccinJsonJSONArray = vaccinJson2.getJSONArray("body");
								List<ChildImmuneVaccin> vaccinList = childImmuneVaccinDao.findByBarcode(barcode);
								//原来有的则不用新增,原来有的但是在返回回来的数据没有的话删除数据
								for (ChildImmuneVaccin childImmuneVaccin : vaccinList){
									int count = 0;
									for (int j=0;j<vaccinJsonJSONArray.length();j++){
										String ymbm = vaccinJsonJSONArray.getJSONObject(j).getString("ymBm");
										String jzzc = vaccinJsonJSONArray.getJSONObject(j).getString("jzZc");
										if (childImmuneVaccin.getYmbm().equals(ymbm) && childImmuneVaccin.getJzzc().equals(jzzc)){
											count++;
										}
									}
									//原来有的疫苗要判断是否有超过预约时间的7天,并且看提醒是否超过7天,超过7天可以重新提醒
									if (count>0 && childImmuneVaccin.getIsOut()==1){
										if (DateUtil.getPreDays(childImmuneVaccin.getJzrq(),7).before(new Date())){
											//过了预约时间7天,更新为isOut=0,则不能预约了
											childImmuneVaccinDao.updateIsOutByCode(childImmuneVaccin.getCode());
										}else {
											//判断是否过了7天提醒时间
											if (childImmuneVaccin.getAlert_tag()==1 && DateUtil.getPreDays(childImmuneVaccin.getAlert_time(),7).before(new Date())){
												childImmuneVaccinDao.updateAlertTagByCode(childImmuneVaccin.getCode(),0);
											}
										}
									}
									if (count==0){
										result+= childImmuneVaccinDao.updateDelByCode(childImmuneVaccin.getCode());
									}
								}
								//如果本地没有就是新增的
								List<ChildImmuneVaccin> vaccins = new ArrayList<>();
								for (int j=0;j<vaccinJsonJSONArray.length();j++){
									String ymbm = vaccinJsonJSONArray.getJSONObject(j).getString("ymBm");
									String jzzc = vaccinJsonJSONArray.getJSONObject(j).getString("jzZc");
									int count = 0;
									for (ChildImmuneVaccin childImmuneVaccin : vaccinList){
										if (childImmuneVaccin.getYmbm().equals(ymbm) && childImmuneVaccin.getJzzc().equals(jzzc)){
											count++;
										}
									}
									if (count==0){
										ChildImmuneVaccin childImmuneVaccin = new ChildImmuneVaccin();
										childImmuneVaccin.setCode(getUUID());
										childImmuneVaccin.setName(String.valueOf(map.get("name")));
										childImmuneVaccin.setIdcard(String.valueOf(map.get("idcard")));
										childImmuneVaccin.setSsc(String.valueOf(map.get("ssc")));
										childImmuneVaccin.setBarcode(barcode);
										childImmuneVaccin.setChildInfoCode(String.valueOf(map.get("code")));
										childImmuneVaccin.setYmkc(vaccinJsonJSONArray.getJSONObject(j).getString("ymkc"));
										childImmuneVaccin.setYmmc(vaccinJsonJSONArray.getJSONObject(j).getString("ymmc"));
										childImmuneVaccin.setYmkcsm(vaccinJsonJSONArray.getJSONObject(j).getString("ymkcsm"));
										childImmuneVaccin.setYmbm(ymbm);
										childImmuneVaccin.setJzzc(jzzc);
										childImmuneVaccin.setJzrq(DateUtil.strToDate(vaccinJsonJSONArray.getJSONObject(j).getString("jzRq"),DateUtil.YYYY_MM_DD));
										childImmuneVaccin.setAlert_tag(0);
										childImmuneVaccin.setDel(0);
										childImmuneVaccin.setCreate_time(new Date());
										if (DateUtil.getPreDays(DateUtil.strToDate(vaccinJsonJSONArray.getJSONObject(j).getString("jzRq")),7).before(new Date())){
											//过了预约时间7天,更新为isOut=0,则不能预约了
											childImmuneVaccin.setIsOut(0);
										}else {
											childImmuneVaccin.setIsOut(1);
										}
										vaccins.add(childImmuneVaccin);
										result++;
									}
								}
								childImmuneVaccinDao.save(vaccins);
							}
						}
					}
				}
			}
		}catch (Exception e){
			e.printStackTrace();
		}
		return result;
	}
	public int alertImmVacclinByDoctor(String doctor)throws Exception{
		List<Map<String, Object>> immVaccinList = getImmVaccinList(doctor,0,0,0);
		String alertJsonStr="";
@ -516,46 +408,4 @@ public class ChildFamilyImmuneService extends BaseService {
		alertJsonStr = jsonArray.toString();
		return alertImmVacclinByChildInfoCodes(alertJsonStr,doctor);
	}
    public int alertBefore()throws Exception{
        JSONArray jsonArray =  new JSONArray();
        String sql ="SELECT" +
                " v.*, i.birthday" +
                " FROM" +
                " wlyy_child_immune_vaccin v" +
                " LEFT JOIN wlyy_child_info i ON v.child_info_code = i.`code`" +
                " WHERE" +
                " v.del = 0" +
                " AND ymkc = 'true'";
        List<Map<String,Object>> mapList = jdbcTemplate.queryForList(sql);
        String nowDate = DateUtil.dateToStrShort(new Date());
        for (Map<String,Object> map : mapList){
            Calendar calendar=Calendar.getInstance();
            String birthDayStr = String.valueOf(map.get("birthday"));
            if (StringUtils.isNotBlank(birthDayStr)){
                String[] biStr = birthDayStr.split("-");
                int birthdayDate = Integer.valueOf(biStr[biStr.length-1]);
                int nowDayDate = calendar.get(GregorianCalendar.DAY_OF_MONTH);
                int nowMonthDate = calendar.get(GregorianCalendar.MONTH)+1;
                int nowYearDate = calendar.get(GregorianCalendar.YEAR);
                //如果生日在今天的日期之前,则取下个月生日的日期的15天的是否是今天.
                if (birthdayDate<nowDayDate){
                    calendar.set(nowYearDate,nowMonthDate+1,birthdayDate);
                }else {
                    //如果生日在今天之前后,则看生日的15天之前是否是今天
                    calendar.set(nowYearDate,nowMonthDate,birthdayDate);
                }
                String needAlertDate = DateUtil.dateToStrShort(DateUtil.getPreDays(calendar.getTime(),-15));
                if (needAlertDate.equals(nowDate)){
                    JSONObject jsonObject = new JSONObject();
                    jsonObject.put("vaccinCode",map.get("code"));//待接种疫苗记录code
                    jsonObject.put("childName", map.get("name"));//儿童姓名
                    jsonObject.put("childCode", map.get("child_info_code"));//儿童code
                    jsonObject.put("vaccinName", map.get("ymmc"));//疫苗名称
                    jsonArray.put(jsonObject);
                }
            }
        }
        return alertImmVacclinByChildInfoCodes(jsonArray.toString(),"rll201703150222");
    }
}

+ 50 - 1
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/synergy/SynergyManageService.java

@ -67,6 +67,53 @@ public class SynergyManageService extends BaseService {
        return rs;
    }
    public String updateWorkorder(String code,Integer type, String objectId, String serviceDate, Integer priority, String remark, String followupClass, String followupType) throws Exception {
        String response = null;
        JSONObject object = new JSONObject();
        object.put("code",code);
        object.put("serviceTime",serviceDate);
        object.put("priority",priority);
        object.put("remark",remark);
        if (type == 3){
            Followup followup = followUpDao.findOne(Long.parseLong(objectId));
            DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            String a = serviceDate+":00";
            Date date = dateFormat.parse(serviceDate+":00");
            followup.setFollowupDate(date);
            followup.setFollowupType(followupType);
            followup.setFollowupClass(followupClass);
            followup = followUpDao.save(followup);
            if (followupClass.equals("1")){
                object.put("relationCodeName","高血压");
            }else if (followupClass.equals("2")){
                object.put("relationCodeName","糖尿病");
            }else if (followupClass.equals("1,2")){
                object.put("relationCodeName","高血压,糖尿病");
            }
        }
        String url = customerUrl + "synergy/doctor/updateWorkorder";
        Map<String, String> params = new HashMap<>();
        params.put("workorder",object.toString());
        response = httpClientUtil.httpPost(url,params);
        com.alibaba.fastjson.JSONObject object1 = JSON.parseObject(response);
        if (object1.getInteger("status")==200){
            return response;
        }else {
            throw new Exception("请求客服系统服务失败!");
        }
    }
    public String getWorkorById(String code) throws Exception {
        String response = null;
        String url = customerUrl + "synergy/doctor/getWorkorderInfo?workorderCode="+code;
        response = httpClientUtil.get(url,"UTF-8");
        com.alibaba.fastjson.JSONObject object1 = JSON.parseObject(response);
        if (object1.getInteger("status")==200){
            return object1.getJSONObject("data").toString();
        }else {
            throw new Exception("请求客服系统服务失败!");
        }
    }
    public String createWorkorder(String doctor, Set<String> patientSet, Integer type, String objectId, String serviceDate, Integer priority, String remark, String followupClass, String followupType) throws Exception {
        String response = null;
@ -134,8 +181,10 @@ public class SynergyManageService extends BaseService {
            object.put("relationCode",followup.getId());
            if (followupClass.equals("1")){
                object.put("relationCodeName","高血压");
            }else if (followupClass.equals("1")){
            }else if (followupClass.equals("2")){
                object.put("relationCodeName","糖尿病");
            }else if (followupClass.equals("1,2")){
                object.put("relationCodeName","高血压,糖尿病");
            }
            object.put("createUserRole",1);
        }else if (type == 1){

+ 2 - 31
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/imm/DoctorImmController.java

@ -147,7 +147,7 @@ public class DoctorImmController extends BaseController {
	@RequestMapping(value = "/alertImmVacclinByChildInfoCodes", method = RequestMethod.POST)
	@ApiOperation(value = "医生提醒居民疫苗接种")
	@ApiOperation(value = "医生提醒居民疫苗接种(作废)")
	public String alertImmVacclinByChildInfoCodes(@ApiParam(name = "alertDataJsonStr", value = "[{\"childCode\":\"123\",\"childName\":\"张三\",\"vaccinCode\":\"asd123\",\"vaccinName\":\"疫苗名称\"}]", defaultValue = "")
										   @RequestParam(value = "alertDataJsonStr", required = true) String alertDataJsonStr){
		try {
@ -160,7 +160,7 @@ public class DoctorImmController extends BaseController {
	}
	@RequestMapping(value = "/alertImmVacclinByChildInfoCode", method = RequestMethod.POST)
	@ApiOperation(value = "医生提醒居民疫苗接种(作废)")
	@ApiOperation(value = "医生提醒居民疫苗接种")
	public String alertImmVacclinByChildInfoCode(@ApiParam(name = "alertDataJsonStr", value = "{\"childCode\":\"123\",\"childName\":\"张三\",\"vaccinCode\":\"asd123\",\"vaccinName\":\"疫苗名称\"}", defaultValue = "")
												  @RequestParam(value = "alertDataJsonStr", required = true) String alertDataJsonStr){
		try {
@ -212,33 +212,4 @@ public class DoctorImmController extends BaseController {
		}
	}
	@RequestMapping(value = "/imm/getChildImmuneVaccinEveryDay", method = RequestMethod.GET)
	@ResponseBody
	@ObserverRequired
	@ApiOperation("每天获取可预约疫苗test")
	public String getChildImmuneVaccinEveryDay (){
		try{
			int res = childFamilyImmuneService.getChildImmuneVaccinEveryDay();
			return write(200,"获取成功!","data",res);
		}catch (Exception e){
			error(e);
			return error(-1, e.getMessage());
		}
	}
	@RequestMapping(value = "/imm/alertJobTest", method = RequestMethod.GET)
	@ResponseBody
	@ObserverRequired
	@ApiOperation("job提醒居民预约测试")
	public String alertJobTest (){
		try{
			int res = childFamilyImmuneService.alertBefore();
			return write(200,"获取成功!","data",res);
		}catch (Exception e){
			error(e);
			return error(-1, e.getMessage());
		}
	}
}

+ 17 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/survey/DoctorSurveyScreenResultController.java

@ -225,6 +225,23 @@ public class DoctorSurveyScreenResultController extends WeixinBaseController {
        }
    }
    @RequestMapping(value = "/getCount",method = RequestMethod.POST)
    @ApiOperation(value = "确认疾病筛查推送人数")
    public String getCount(@ApiParam(name = "labelType", value = "疾病类型", defaultValue = "3")
                               @RequestParam(value = "labelType", required = false) String labelType,
                           @ApiParam(name = "serverType",value = "服务类型,多个条件以逗号分割")
                               @RequestParam(value = "serverType", required = false) String serverType,
                           @ApiParam(name = "teamCode",value = "行政团队id")
                               @RequestParam(value = "teamCode", required = true) Long teamCode){
        try {
            List<Map<String, Object>> patientInfo = surveyScreenResultService.initPatient(getUID(), labelType, serverType, teamCode);
            return write(200, "查询成功!", "data", patientInfo.size());
        } catch (Exception e) {
            e.printStackTrace();
            return write(-1, "查询失败!");
        }
    }
    @RequestMapping(value = "/createWorkOrder",method = RequestMethod.POST)
    @ApiOperation(value = "创建协同服务")

+ 18 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/survey/ManagerQuestionnaireController.java

@ -583,6 +583,24 @@ public class ManagerQuestionnaireController extends WeixinBaseController {
    }
    @RequestMapping(value = "getCount",method = RequestMethod.GET)
    @ApiOperation("确认调查问卷推送人数")
    public String getCount(@ApiParam(name = "labelUnitType", value = "标签类型  1:下属单位,多个用逗号分隔", required = false) @RequestParam(value = "labelUnitType", required = false, defaultValue = "") String labelUnitType,
                                           @ApiParam(name = "labelSexType", value = "标签类型  2:性别,多个用逗号分隔", required = false) @RequestParam(value = "labelSexType", required = false, defaultValue = "") String labelSexType,
                                           @ApiParam(name = "labelServeType", value = "标签类型  3:服务类型,多个用逗号分隔", required = false) @RequestParam(value = "labelServeType", required = false, defaultValue = "") String labelServerType,
                                           @ApiParam(name = "labelDiseaseType", value = "标签类型  4:疾病类型,多个用逗号分隔", required = false) @RequestParam(value = "labelDiseaseType", required = false, defaultValue = "") String labelDiseaseType,
                                           @ApiParam(name = "labelHealthType", value = "标签类型  5:健康情况,多个用逗号分隔", required = false) @RequestParam(value = "labelHealthType", required = false, defaultValue = "") String labelHealthType,
                                           @ApiParam(name = "currentRoleCode", value = "当前登录的角色code", required = false) @RequestParam(value = "currentRoleCode", required = false) String currentRoleCode,
                                           @ApiParam(name = "currentRoleLevel", value = "当前登录的角色级别", required = false) @RequestParam(value = "currentRoleLevel", required = false) String currentRoleLevel){
        try {
            List<Map<String, Object>> patientInfo = managerQuestionnaireService.initPatient(labelUnitType, labelSexType, labelServerType, labelDiseaseType, labelHealthType, currentRoleCode, currentRoleLevel);
            return write(200,"查询成功!","data", patientInfo.size());
        }catch (Exception e){
            e.printStackTrace();
            return error(-1,"查询失败!");
        }
    }
    @RequestMapping(value = "/createWorkOrder",method = RequestMethod.POST)
    @ApiOperation(value = "创建协同服务")
    public String createWorkOrder(@ApiParam(name = "jsonData",value = "协同服务json字符串")

+ 70 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/synergy/SynergyManageController.java

@ -50,6 +50,76 @@ public class SynergyManageController extends BaseController {
        }
    }
    /**
     * 医生查看协同服务
     *
     * @param code
     * @return
     */
    @RequestMapping(value = "doctorGetSynergy", method = RequestMethod.POST)
    @ApiOperation("医生查看协同服务")
    public String doctorGetSynergy(
            @RequestParam(value = "code",required = true)String code){
        try {
            return  write(200,"请求成功","data",synergyManageService.getWorkorById(code));
        } catch (Exception e) {
            error(e);
            return error(-1,"请求失败");
        }
    }
    /**
     * 医生编辑协同服务
     *
     * @param code
     * @param objectId
     * @param type
     * @param serviceDate
     * @param priority
     * @param remark
     * @param followupClass
     * @param followupType
     * @return
     */
    @RequestMapping(value = "doctorUpdateSynergy", method = RequestMethod.POST)
    @ApiOperation("医生更新协同服务")
    public String doctorUpdateSynergy(
            @RequestParam(value = "code",required = true)String code,
            @RequestParam(value = "objectId", required = false) String objectId,
            @RequestParam(value = "type",required = false)Integer type,
            @RequestParam(value = "serviceDate",required = false)String serviceDate,
            @RequestParam(value = "priority",required = false)Integer priority,
            @RequestParam(value = "remark",required = false)String remark,
            @RequestParam(value = "followupClass",required = false)String followupClass,
            @RequestParam(value = "followupType",required = false)String followupType){
        try {
            synergyManageService.updateWorkorder(code,type,objectId,serviceDate,priority,remark,followupClass,followupType);
            return  write(200,"请求成功");
        } catch (Exception e) {
            error(e);
            return error(-1,"保存失败");
        }
    }
    /**
     * g派发工单
     *
     * @param patient
     * @param group
     * @param labelType
     * @param teamCode
     * @param objectId
     * @param type
     * @param serviceDate
     * @param priority
     * @param remark
     * @param followupClass
     * @param followupType
     * @return
     */
    @RequestMapping(value = "doctorCreateSynergy", method = RequestMethod.POST)
    @ApiOperation("医生派发协同服务")
    public String doctorSendArticleToPatients(

+ 1 - 1
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/family/FamilyMemberController.java

@ -575,7 +575,7 @@ public class FamilyMemberController extends WeixinBaseController {
                JSONObject json = new JSONObject(jsonObject.getString("data"));
                return write(200, "查询成功","data",json.getJSONArray("body"));
            }else {
                return error(-1,jsonObject.getString("error")+"--"+jsonObject.getString("message") );
                return error(-1,jsonObject.getString("msg") );
            }
        }catch (Exception e){
            error(e);

+ 1 - 1
patient-co/patient-co-wlyy/src/main/resources/application-devtest.yml

@ -52,7 +52,7 @@ rehabilitation:
  url: http://localhost:10055/svr-wlyy-rehabilitation/
#集美客服配置
customerService:
  url: http://localhost:8082/
  url: http://localhost:8180/
#小程序
applets:

+ 2 - 1
patient-co/patient-co-wlyy/src/main/resources/application-local.yml

@ -150,7 +150,8 @@ es:
#集美宣教居民端健康文章
jkEdu:
  web:
    articleBaseUrl: http://172.19.103.87:9088/jkeduweb
    articleBaseUrl: http://10.95.22.137:9661
#消息队列
activemq: