|
@ -528,4 +528,310 @@ public class ImmuneService {
|
|
|
throw new Exception("获取免疫接种机构列表息失败!");
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 获取免疫接种排班信息(7天排班)
|
|
|
* @param orgCode
|
|
|
* @return
|
|
|
* @throws Exception
|
|
|
*/
|
|
|
public JSONObject GetOrgScheduleList(String orgCode) throws Exception{
|
|
|
// String url = jwUrl + "/third/guahao/imm/GetOrgScheduleList";
|
|
|
// List<NameValuePair> params = new ArrayList<>();
|
|
|
// params.add(new BasicNameValuePair("OrgCode", orgCode));
|
|
|
// params.add(new BasicNameValuePair("StartTime", DateUtil.getStringDateShort()));//现在的时间
|
|
|
//
|
|
|
// Date endDate = DateUtil.getPreDays(new Date(),7);
|
|
|
// params.add(new BasicNameValuePair("EndTime", DateUtil.dateToStrShort(endDate)));//现在的时间往后延7天
|
|
|
//
|
|
|
// String response = httpClientUtil.post(url, params, "UTF-8");
|
|
|
// JSONObject data = JSONObject.parseObject(response);
|
|
|
// int status = data.getInteger("status");
|
|
|
// String xml = data.getString("data");
|
|
|
|
|
|
int status = 200;
|
|
|
String xml = "<?xml version=\"1.0\" encoding=\"utf-16\"?>\n" +
|
|
|
"<ArrayOfViewImmuneModel xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">" +
|
|
|
"\t<ViewImmuneModel>\n" +
|
|
|
"\t\t<Org>\n" +
|
|
|
"\t\t\t<ORG_ID>106</ORG_ID>\n" +
|
|
|
"\t\t\t<CODE>350211B1009</CODE>\n" +
|
|
|
"\t\t\t<NAME>思明区鹭江街道社区卫生服务中心</NAME>\n" +
|
|
|
"\t\t\t<ADDRESS /><REMARK />\n" +
|
|
|
"\t\t\t<SHORT_NAME>思明区鹭江街道社区卫生服务中心</SHORT_NAME>\n" +
|
|
|
"\t\t\t<RESERVATION_TELEPHONE />\n" +
|
|
|
"\t\t\t<NUMBER_RELEASE_TIME xsi:nil=\"true\" />\n" +
|
|
|
"\t\t\t<NUMBER_RELEASE_DAY xsi:nil=\"true\" />\n" +
|
|
|
"\t\t\t<AVG_SCORE>10</AVG_SCORE>\n" +
|
|
|
"\t\t\t<PHONE_INTRODUCTION />\n" +
|
|
|
"\t\t\t<STATUS xsi:nil=\"true\" />\n" +
|
|
|
"\t\t\t<SORT>0</SORT>\n" +
|
|
|
"\t\t\t<ORG_TYPE xsi:nil=\"true\" />\n" +
|
|
|
"\t\t\t<ZONE_CODE>350203</ZONE_CODE>\n" +
|
|
|
"\t\t\t<UPDATE_DATE xsi:nil=\"true\" />\n" +
|
|
|
"\t\t\t<ORG_IMMUNE xsi:nil=\"true\" />\n" +
|
|
|
"\t\t</Org>\n" +
|
|
|
"\t\t<DateNumbers>\n" +
|
|
|
"\t\t\t<DateNumber>\n" +
|
|
|
"\t\t\t\t<SECTIONLIST />\n" +
|
|
|
"\t\t\t\t<ID>8adf96c561193b5e0161196985600086</ID>\n" +
|
|
|
"\t\t\t\t<DATE>2018-01-29T00:00:00</DATE>\n" +
|
|
|
"\t\t\t\t<TIME>AM</TIME>\n" +
|
|
|
"\t\t\t\t<MAX>43</MAX>\n" +
|
|
|
"\t\t\t\t<USED>1</USED>\n" +
|
|
|
"\t\t\t\t<FEE>0</FEE>\n" +
|
|
|
"\t\t\t\t<STATUS>1</STATUS>\n" +
|
|
|
"\t\t\t</DateNumber>\n" +
|
|
|
"\t\t\t<DateNumber>\n" +
|
|
|
"\t\t\t\t<SECTIONLIST />\n" +
|
|
|
"\t\t\t\t<ID>8adf96c561193b5e01611969856a0101</ID>\n" +
|
|
|
"\t\t\t\t<DATE>2018-01-29T00:00:00</DATE>\n" +
|
|
|
"\t\t\t\t<TIME>PM</TIME>\n" +
|
|
|
"\t\t\t\t<MAX>41</MAX>\n" +
|
|
|
"\t\t\t\t<USED>1</USED>\n" +
|
|
|
"\t\t\t\t<FEE>0</FEE>\n" +
|
|
|
"\t\t\t\t<STATUS>1</STATUS>\n" +
|
|
|
"\t\t\t</DateNumber>\n" +
|
|
|
"\t\t\t<DateNumber>\n" +
|
|
|
"\t\t\t\t<SECTIONLIST />\n" +
|
|
|
"\t\t\t\t<ID>8adf96c5611b73ac01611e8fd97c0e82</ID>\n" +
|
|
|
"\t\t\t\t<DATE>2018-01-30T00:00:00</DATE>\n" +
|
|
|
"\t\t\t\t<TIME>AM</TIME>\n" +
|
|
|
"\t\t\t\t<MAX>43</MAX>\n" +
|
|
|
"\t\t\t\t<USED>1</USED>\n" +
|
|
|
"\t\t\t\t<FEE>0</FEE>\n" +
|
|
|
"\t\t\t\t<STATUS>1</STATUS>\n" +
|
|
|
"\t\t\t</DateNumber>\n" +
|
|
|
"\t\t\t<DateNumber>\n" +
|
|
|
"\t\t\t\t<SECTIONLIST />\n" +
|
|
|
"\t\t\t\t<ID>8adf96c5611b73ac01611e8fd9830efd</ID>\n" +
|
|
|
"\t\t\t\t<DATE>2018-01-30T00:00:00</DATE>\n" +
|
|
|
"\t\t\t\t<TIME>PM</TIME>\n" +
|
|
|
"\t\t\t\t<MAX>41</MAX>\n" +
|
|
|
"\t\t\t\t<USED>1</USED>\n" +
|
|
|
"\t\t\t\t<FEE>0</FEE>\n" +
|
|
|
"\t\t\t\t<STATUS>1</STATUS>\n" +
|
|
|
"\t\t\t</DateNumber>\n" +
|
|
|
"\t\t\t<DateNumber>\n" +
|
|
|
"\t\t\t\t<SECTIONLIST />\n" +
|
|
|
"\t\t\t\t<ID>8adf96c5611b73ac01611e8fd97c0e82</ID>\n" +
|
|
|
"\t\t\t\t<DATE>2018-01-31T00:00:00</DATE>\n" +
|
|
|
"\t\t\t\t<TIME>AM</TIME>\n" +
|
|
|
"\t\t\t\t<MAX>43</MAX>\n" +
|
|
|
"\t\t\t\t<USED>1</USED>\n" +
|
|
|
"\t\t\t\t<FEE>0</FEE>\n" +
|
|
|
"\t\t\t\t<STATUS>1</STATUS>\n" +
|
|
|
"\t\t\t</DateNumber>\n" +
|
|
|
"\t\t\t<DateNumber>\n" +
|
|
|
"\t\t\t\t<SECTIONLIST />\n" +
|
|
|
"\t\t\t\t<ID>8adf96c5611b73ac01611e8fd9830efd</ID>\n" +
|
|
|
"\t\t\t\t<DATE>2018-01-31T00:00:00</DATE>\n" +
|
|
|
"\t\t\t\t<TIME>PM</TIME>\n" +
|
|
|
"\t\t\t\t<MAX>41</MAX>\n" +
|
|
|
"\t\t\t\t<USED>1</USED>\n" +
|
|
|
"\t\t\t\t<FEE>0</FEE>\n" +
|
|
|
"\t\t\t\t<STATUS>1</STATUS>\n" +
|
|
|
"\t\t\t</DateNumber>\n" +
|
|
|
"\t\t</DateNumbers>\n" +
|
|
|
"\t</ViewImmuneModel>\n" +
|
|
|
"</ArrayOfViewImmuneModel>";
|
|
|
|
|
|
|
|
|
|
|
|
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
|
|
|
|
|
|
JSONObject result = new JSONObject();
|
|
|
|
|
|
if(200 == status && StringUtils.isNotBlank(xml)){
|
|
|
Document document = DocumentHelper.parseText(xml);
|
|
|
|
|
|
|
|
|
Element ArrayOfImmuneSchudleModel = document.getRootElement();
|
|
|
Element ViewImmuneModel = ArrayOfImmuneSchudleModel.element("ViewImmuneModel");
|
|
|
Element Org = ViewImmuneModel.element("Org");
|
|
|
|
|
|
//机构信息
|
|
|
Element ORG_ID = Org.element("ORG_ID");
|
|
|
Element CODE = Org.element("CODE");
|
|
|
Element NAME = Org.element("NAME");
|
|
|
Element SHORT_NAME = Org.element("SHORT_NAME");
|
|
|
Element SORT = Org.element("SORT");
|
|
|
Element ZONE_CODE = Org.element("ZONE_CODE");
|
|
|
Element AVG_SCORE = Org.element("AVG_SCORE");
|
|
|
|
|
|
result.put("ORG_CODE",CODE.getTextTrim());//机构编码
|
|
|
result.put("ORG_ID",ORG_ID.getTextTrim());//机构ID
|
|
|
result.put("ORG_NAME",NAME.getTextTrim());//机构名称
|
|
|
result.put("ORG_SHORT_NAME",SHORT_NAME.getTextTrim());//机构简称
|
|
|
String hospitalcode = hospitalMappingDao.getCodeByMapping(CODE.getTextTrim(), "1");
|
|
|
Hospital hospital = hospitalDao.findByCode(hospitalcode);
|
|
|
result.put("ORG_PHOTO",hospital.getPhoto());//机构图片
|
|
|
result.put("ORG_PHONE",hospital.getPhone());//机构电话
|
|
|
result.put("ORG_ADDRESS",hospital.getAddress());//机构地址
|
|
|
result.put("ORG_INFO",hospital.getIntro());//机构简介
|
|
|
result.put("AVG_SCORE",AVG_SCORE.getTextTrim());
|
|
|
result.put("SORT",SORT.getTextTrim());
|
|
|
result.put("ZONE_CODE",ZONE_CODE.getTextTrim());//机构区域编码
|
|
|
|
|
|
//排班列表
|
|
|
Element DateNumbers = ViewImmuneModel.element("DateNumbers");
|
|
|
Iterator<Element> iterator = DateNumbers.elementIterator();
|
|
|
JSONArray DateNumbersJSON = new JSONArray();
|
|
|
while(iterator.hasNext()){
|
|
|
JSONObject DateNumberJSON = new JSONObject();
|
|
|
Element e = iterator.next();
|
|
|
Element ID = e.element("ID");
|
|
|
Element DATE = e.element("DATE");
|
|
|
Element TIME = e.element("TIME");
|
|
|
Element MAX = e.element("MAX");
|
|
|
Element USED = e.element("USED");
|
|
|
Element FEE = e.element("FEE");
|
|
|
Element STATUS = e.element("STATUS");
|
|
|
DateNumberJSON.put("ID",ID.getTextTrim());//排班ID
|
|
|
DateNumberJSON.put("DATE",DATE.getTextTrim());//排班日期
|
|
|
DateNumberJSON.put("TIME",TIME.getTextTrim());//上午或者下去
|
|
|
DateNumberJSON.put("MAX",MAX.getTextTrim());//号源数量
|
|
|
DateNumberJSON.put("USED",USED.getTextTrim());//已使用
|
|
|
DateNumberJSON.put("FEE",FEE.getTextTrim());//费用
|
|
|
DateNumberJSON.put("STATUS",STATUS.getTextTrim());//排班状态:1可用,0不可用
|
|
|
|
|
|
Date datevo = dateFormat.parse(DATE.getTextTrim());
|
|
|
DateNumberJSON.put("DATEVO", DateUtil.dateToStrShort(datevo));
|
|
|
DateNumberJSON.put("WEEK",DateUtil.getWeekByDate(datevo));
|
|
|
DateNumbersJSON.add(DateNumberJSON);
|
|
|
}
|
|
|
|
|
|
result.put("DateNumbers",DateNumbersJSON);
|
|
|
return result;
|
|
|
}else{
|
|
|
throw new Exception("获取免疫接种机构列表息失败!");
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* 获取免疫接种号源
|
|
|
* @param orgId
|
|
|
* @param scheduleId
|
|
|
* @param amorpm
|
|
|
* @return
|
|
|
* @throws Exception
|
|
|
*/
|
|
|
public JSONArray GetOrgNumberList(String orgId, String scheduleId,String amorpm) throws Exception{
|
|
|
// String url = jwUrl + "/third/guahao/imm/GetOrgNumberList";
|
|
|
// List<NameValuePair> params = new ArrayList<>();
|
|
|
// params.add(new BasicNameValuePair("orgId", orgId));
|
|
|
// params.add(new BasicNameValuePair("ScheduleId", scheduleId);//现在的时间
|
|
|
//
|
|
|
// String response = httpClientUtil.post(url, params, "UTF-8");
|
|
|
// JSONObject data = JSONObject.parseObject(response);
|
|
|
// int status = data.getInteger("status");
|
|
|
// String xml = data.getString("data");
|
|
|
|
|
|
int status = 200;
|
|
|
String xml = "<?xml version=\"1.0\" encoding=\"utf-16\"?>\n" +
|
|
|
"<ArrayOfV_NUMBER_IMMUNE\n" +
|
|
|
" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n" +
|
|
|
" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">\n" +
|
|
|
" <V_NUMBER_IMMUNE>\n" +
|
|
|
" <ORG_ID>501</ORG_ID>\n" +
|
|
|
" <START_TIME>2017-08-24T08:00:00</START_TIME>\n" +
|
|
|
" <END_TIME>2017-08-24T08:08:00</END_TIME>\n" +
|
|
|
" <SCHEDULE_ID>350211B10392017082401</SCHEDULE_ID>\n" +
|
|
|
" <NUMBER_ID>081000</NUMBER_ID>\n" +
|
|
|
" <UPDATE_TIME>2017-08-14T10:04:41</UPDATE_TIME>\n" +
|
|
|
" <LIMIT>1</LIMIT>\n" +
|
|
|
" <USED>0</USED>\n" +
|
|
|
" <CREATE_TIME>2017-08-14T10:04:41</CREATE_TIME>\n" +
|
|
|
" <UPLOAD_STATUS>0</UPLOAD_STATUS>\n" +
|
|
|
" <DATA_STATUS>1</DATA_STATUS>\n" +
|
|
|
" <IS_CORRECT>0</IS_CORRECT>\n" +
|
|
|
" <DELAY>0</DELAY>\n" +
|
|
|
" <CANCEL_DATE xsi:nil=\"true\" />\n" +
|
|
|
" <PLATFORM_FLAG>0</PLATFORM_FLAG>\n" +
|
|
|
" </V_NUMBER_IMMUNE>\n" +
|
|
|
" <V_NUMBER_IMMUNE>\n" +
|
|
|
" <ORG_ID>501</ORG_ID>\n" +
|
|
|
" <START_TIME>2017-08-24T09:00:00</START_TIME>\n" +
|
|
|
" <END_TIME>2017-08-24T09:08:00</END_TIME>\n" +
|
|
|
" <SCHEDULE_ID>350211B10392017082401</SCHEDULE_ID>\n" +
|
|
|
" <NUMBER_ID>081000</NUMBER_ID>\n" +
|
|
|
" <UPDATE_TIME>2017-08-14T10:04:41</UPDATE_TIME>\n" +
|
|
|
" <LIMIT>1</LIMIT>\n" +
|
|
|
" <USED>0</USED>\n" +
|
|
|
" <CREATE_TIME>2017-08-14T10:04:41</CREATE_TIME>\n" +
|
|
|
" <UPLOAD_STATUS>0</UPLOAD_STATUS>\n" +
|
|
|
" <DATA_STATUS>1</DATA_STATUS>\n" +
|
|
|
" <IS_CORRECT>0</IS_CORRECT>\n" +
|
|
|
" <DELAY>0</DELAY>\n" +
|
|
|
" <CANCEL_DATE xsi:nil=\"true\" />\n" +
|
|
|
" <PLATFORM_FLAG>0</PLATFORM_FLAG>\n" +
|
|
|
" </V_NUMBER_IMMUNE>\n" +
|
|
|
" <V_NUMBER_IMMUNE>\n" +
|
|
|
" <ORG_ID>501</ORG_ID>\n" +
|
|
|
" <START_TIME>2017-08-24T10:00:00</START_TIME>\n" +
|
|
|
" <END_TIME>2017-08-24T10:08:00</END_TIME>\n" +
|
|
|
" <SCHEDULE_ID>350211B10392017082401</SCHEDULE_ID>\n" +
|
|
|
" <NUMBER_ID>081000</NUMBER_ID>\n" +
|
|
|
" <UPDATE_TIME>2017-08-14T10:04:41</UPDATE_TIME>\n" +
|
|
|
" <LIMIT>1</LIMIT>\n" +
|
|
|
" <USED>0</USED>\n" +
|
|
|
" <CREATE_TIME>2017-08-14T10:04:41</CREATE_TIME>\n" +
|
|
|
" <UPLOAD_STATUS>0</UPLOAD_STATUS>\n" +
|
|
|
" <DATA_STATUS>1</DATA_STATUS>\n" +
|
|
|
" <IS_CORRECT>0</IS_CORRECT>\n" +
|
|
|
" <DELAY>0</DELAY>\n" +
|
|
|
" <CANCEL_DATE xsi:nil=\"true\" />\n" +
|
|
|
" <PLATFORM_FLAG>0</PLATFORM_FLAG>\n" +
|
|
|
" </V_NUMBER_IMMUNE>\n" +
|
|
|
"</ArrayOfV_NUMBER_IMMUNE>";
|
|
|
|
|
|
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
|
|
|
JSONArray result = new JSONArray();
|
|
|
if(200 == status && StringUtils.isNotBlank(xml)){
|
|
|
Document document = DocumentHelper.parseText(xml);
|
|
|
Element ArrayOfV_NUMBER_IMMUNE = document.getRootElement();
|
|
|
Iterator<Element> iterator = ArrayOfV_NUMBER_IMMUNE.elementIterator();
|
|
|
while(iterator.hasNext()){
|
|
|
JSONObject DateNumberJSON = new JSONObject();
|
|
|
Element e = iterator.next();
|
|
|
Element ORG_ID = e.element("ORG_ID");
|
|
|
Element START_TIME = e.element("START_TIME");
|
|
|
Date START_TIME_VO = dateFormat.parse(START_TIME.getTextTrim());
|
|
|
Element END_TIME = e.element("END_TIME");
|
|
|
Date END_TIME_VO = dateFormat.parse(END_TIME.getTextTrim());
|
|
|
Element SCHEDULE_ID = e.element("SCHEDULE_ID");
|
|
|
Element NUMBER_ID = e.element("NUMBER_ID");
|
|
|
Element UPDATE_TIME = e.element("UPDATE_TIME");
|
|
|
Element LIMIT = e.element("LIMIT");
|
|
|
Element USED = e.element("USED");
|
|
|
Element CREATE_TIME = e.element("CREATE_TIME");
|
|
|
Element UPLOAD_STATUS = e.element("UPLOAD_STATUS");
|
|
|
Element DATA_STATUS = e.element("DATA_STATUS");
|
|
|
Element IS_CORRECT = e.element("IS_CORRECT");
|
|
|
Element DELAY = e.element("DELAY");
|
|
|
Element PLATFORM_FLAG = e.element("PLATFORM_FLAG");
|
|
|
DateNumberJSON.put("ORG_ID",ORG_ID.getTextTrim());//机构ID
|
|
|
DateNumberJSON.put("ID",NUMBER_ID.getTextTrim());//排班ID
|
|
|
DateNumberJSON.put("START_TIME",START_TIME.getTextTrim());//号源开始时间
|
|
|
DateNumberJSON.put("START_TIME_VO",DateUtil.dateToStrLong(START_TIME_VO));//号源开始时间--前端展示和预约用
|
|
|
DateNumberJSON.put("END_TIME",END_TIME.getTextTrim());//号源结束时间
|
|
|
DateNumberJSON.put("END_TIME_VO",DateUtil.dateToStrLong(END_TIME_VO));//号源结束时间--前端展示用
|
|
|
DateNumberJSON.put("UPDATE_TIME",UPDATE_TIME.getTextTrim());//号源更新时间
|
|
|
DateNumberJSON.put("CREATE_TIME",CREATE_TIME.getTextTrim());//号源创建
|
|
|
DateNumberJSON.put("TIME",amorpm);//上午或者下去
|
|
|
DateNumberJSON.put("LIMIT",LIMIT.getTextTrim());//号源数量
|
|
|
DateNumberJSON.put("USED",USED.getTextTrim());//已使用
|
|
|
DateNumberJSON.put("DATA_STATUS",DATA_STATUS.getTextTrim());//号源状态:1可用,0不可用
|
|
|
DateNumberJSON.put("UPLOAD_STATUS",UPLOAD_STATUS.getTextTrim());//上传状态:1可用,0不可用
|
|
|
DateNumberJSON.put("IS_CORRECT",IS_CORRECT.getTextTrim());//是否可修改:1可以,0不可以
|
|
|
DateNumberJSON.put("DELAY",DELAY.getTextTrim());//是否延迟:1可以,0不可以
|
|
|
DateNumberJSON.put("PLATFORM_FLAG",PLATFORM_FLAG.getTextTrim());//平台标志
|
|
|
DateNumberJSON.put("SCHEDULE_ID",SCHEDULE_ID.getTextTrim());//排班ID
|
|
|
result.add(DateNumberJSON);
|
|
|
}
|
|
|
return result;
|
|
|
}else{
|
|
|
throw new Exception("获取免疫接种机构列表息失败!");
|
|
|
}
|
|
|
}
|
|
|
}
|