|
@ -0,0 +1,152 @@
|
|
|
package com.yihu.jw.hospital.ykyy.service;
|
|
|
|
|
|
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.yihu.jw.entity.base.patient.BasePatientDO;
|
|
|
import com.yihu.jw.patient.dao.BasePatientDao;
|
|
|
import com.yihu.jw.util.http.HttpClientUtil;
|
|
|
import org.apache.commons.collections.map.HashedMap;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.util.Map;
|
|
|
|
|
|
/**
|
|
|
*
|
|
|
* 眼科通接口
|
|
|
*
|
|
|
* Created by wangzhinan on 2020/4/11.
|
|
|
*/
|
|
|
@Service
|
|
|
public class YkyyService {
|
|
|
|
|
|
@Autowired
|
|
|
private HttpClientUtil httpClientUtil;
|
|
|
@Autowired
|
|
|
private BasePatientDao patientDao;
|
|
|
|
|
|
private static String yktUrl = "http://www.yanketong.com:133/api/";
|
|
|
|
|
|
|
|
|
|
|
|
public String selectCards(String patient) throws Exception {
|
|
|
String response = null;
|
|
|
BasePatientDO basePatientDO = patientDao.findById(patient);
|
|
|
if (basePatientDO!=null){
|
|
|
String userId = basePatientDO.getUserId();
|
|
|
if (StringUtils.isNoneBlank(userId)){
|
|
|
response = selectCardList(userId);
|
|
|
}else {
|
|
|
String response1 = getShortMessage("1",basePatientDO.getMobile());
|
|
|
JSONObject jsonObject = JSONObject.parseObject(response1);
|
|
|
if (jsonObject.getString("code").equalsIgnoreCase("10000")){
|
|
|
String code = jsonObject.getString("value");
|
|
|
String r =getRegisterUser(basePatientDO.getMobile(),"123456",code,"a01522","xmijk","xmijk");
|
|
|
JSONObject object = JSONObject.parseObject(r);
|
|
|
if (object.getString("code").equalsIgnoreCase("200")){
|
|
|
JSONObject object1 = object.getJSONObject("data");
|
|
|
if (object1!=null){
|
|
|
userId = object1.getString("ID");
|
|
|
basePatientDO.setUserId(userId);
|
|
|
patientDao.save(basePatientDO);
|
|
|
response = selectCardList(userId);
|
|
|
}
|
|
|
}else {
|
|
|
throw new Exception("用户注册失败");
|
|
|
}
|
|
|
}else {
|
|
|
throw new Exception("获取验证码失败");
|
|
|
}
|
|
|
|
|
|
}
|
|
|
}
|
|
|
return response;
|
|
|
}
|
|
|
|
|
|
|
|
|
/**
|
|
|
* 互联网-添加就诊卡
|
|
|
* @param patient
|
|
|
* @param card
|
|
|
* @param userId
|
|
|
* @param type
|
|
|
* @return
|
|
|
*/
|
|
|
public String addYkCard(String patient,String card,String userId,String type){
|
|
|
String response = null;
|
|
|
BasePatientDO patientDO = patientDao.findById(patient);
|
|
|
String user_id=null;
|
|
|
if (StringUtils.isNoneBlank(userId)){
|
|
|
user_id=userId;
|
|
|
}else {
|
|
|
user_id=patientDO.getUserId();
|
|
|
}
|
|
|
response = addCard(user_id,patientDO.getName(),card,"7A585AB3-ED33-B40D-C3E3-A8BB0A1195D8","厦门大学附属厦门眼科中心思北院区",type,"1");
|
|
|
return response;
|
|
|
}
|
|
|
|
|
|
|
|
|
/**
|
|
|
* 眼科通验证码
|
|
|
* @param type
|
|
|
* @param phone
|
|
|
* @return
|
|
|
*/
|
|
|
public String getShortMessage(String type,String phone){
|
|
|
String response="";
|
|
|
String url = yktUrl+"verification_code/short_message?type="+type+"&telephone="+phone;
|
|
|
response = httpClientUtil.get(url,"GBK");
|
|
|
return response;
|
|
|
}
|
|
|
|
|
|
|
|
|
/**
|
|
|
* telephone=15578008051&patient_pwd=123456&code=513970&invite_code=a01522&equipment_type=ios&equipment_guid=12312321
|
|
|
* 眼科通用户注册
|
|
|
*
|
|
|
* @param telephone
|
|
|
* @param patientPwd
|
|
|
* @param code
|
|
|
* @return
|
|
|
*/
|
|
|
public String getRegisterUser(String telephone,String patientPwd,String code,String inviteCode,String equipmentType,String equipmentGuid){
|
|
|
String response="";
|
|
|
String url = yktUrl+"user_center/patient_register01?telephone="+telephone+"&patient_pwd="+patientPwd+"&code="+code+"&invite_code="+inviteCode+"&equipment_type="+equipmentType+
|
|
|
"&equipment_guid="+equipmentGuid;
|
|
|
response = httpClientUtil.get(url,"GBK");
|
|
|
return response;
|
|
|
}
|
|
|
|
|
|
|
|
|
/**
|
|
|
* 获取就诊卡数据接口
|
|
|
* @param userId
|
|
|
* @return
|
|
|
*/
|
|
|
public String selectCardList(String userId){
|
|
|
String response="";
|
|
|
Map<String,Object> param = new HashedMap();
|
|
|
param.put("user_id",userId);
|
|
|
String url = yktUrl+"patient/get_patient_card_list?user_id="+userId;
|
|
|
response = httpClientUtil.get(url,"GBK");
|
|
|
return response;
|
|
|
}
|
|
|
|
|
|
|
|
|
/**
|
|
|
* user_id=1a6a0016-a788-3c84-82e0-f1283e891ccc&patient_name=wangzhinan&card=12345678901&hospital_id=7A585AB3-ED33-B40D-C3E3-A8BB0A1195D8&hospital_name=厦门大学附属厦门眼科中心思北院区&type=0&hos_num=1
|
|
|
*
|
|
|
* 添加就诊卡接口
|
|
|
*
|
|
|
*
|
|
|
*/
|
|
|
public String addCard(String userId,String patientName,String card,String hospitalId,String hospitalName,String type,String hosNum){
|
|
|
String response="";
|
|
|
String url = yktUrl+"patient/add_card?user_id="+userId+"&patient_name="+patientName+"&card="+card+"&hospital_id="+hospitalId+
|
|
|
"&hospital_name="+hospitalName+"&type="+type+"&hos_num="+hosNum;
|
|
|
response = httpClientUtil.get(url,"GBK");
|
|
|
return response;
|
|
|
}
|
|
|
|
|
|
}
|